Neil Brown wrote:
On Sun, 21 Feb 2010 19:16:40 +1100
Neil Brown <neilb@xxxxxxx> wrote:
On Sun, 21 Feb 2010 02:26:42 -0500
chris <tknchris@xxxxxxxxx> wrote:
That is exactly what I didn't want to hear :( I am running
2.6.26-2-xen-amd64. Are you sure its a kernel problem and nothing to
do with my chunk/block sizes? If this is a bug what versions are
affected, I'll build a new domU kernel and see if I can get it working
there.
- chris
I'm absolutely sure it is a kernel bug.
And I think I now know what the bug is.
A patch was recently posted to dm-devel which I think addresses exactly this
problem.
I reproduce it below.
NeilBrown
-------------------
If the lower device exposes a merge_bvec_fn,
dm_set_device_limits() restricts max_sectors
to PAGE_SIZE "just to be safe".
This is not sufficient, however.
If someone uses bio_add_page() to add 8 disjunct 512 byte partial
pages to a bio, it would succeed, but could still cross a border
of whatever restrictions are below us (e.g. raid10 stripe boundary).
An attempted bio_split() would not succeed, because bi_vcnt is 8.
One example that triggered this frequently is the xen io layer.
And I bet this hasn't been fix in RHEL yet... I believe we saw this a
while ago.
--
Bill Davidsen <davidsen@xxxxxxx>
"We can't solve today's problems by using the same thinking we
used in creating them." - Einstein
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html