svetljo wrote:
Hi
i'd like to ask you to CC me because i'm not subscribed to the lists
i'm having some interesting troubles
i have lvm over soft RAID-0 with LV's formated with XFS and JFS
i can work with the JFS LV's,
but i can not with the XFS one's, i can not mount them ( no troubles
with XFS normal partitions)
so
i'd like to ask is this problem with XFS or with raid or lvm
and is there a way to fix it
thanks for your help
here is what i found in dmesg
XFS mounting filesystem lvm(58,2)
raid0_make_request bug: can't convert block across chunks or bigger than
16k 8323317 64
raid0_make_request bug: can't convert block across chunks or bigger than
16k 8323445 64
I/O error in filesystem ("lvm(58,2)") meta-data dev 0xc0223a02 block
0x601f7d
("xlog_bread") error 5 buf count 131072
raid0_make_request bug: can't convert block across chunks or bigger than
16k 8324829 29
I/O error in filesystem ("lvm(58,2)") meta-data dev 0xc0223a02 block
0x602565
("xlog_bread") error 5 buf count 30208
This is your problem, in the 2.5 code base, the bio infrastructure and the
raid code do not work well together. It is being worked on - slowly.
If you want to dumb down xfs to make it function then I suspect you
can do it by editing
fs/xfs/pagebuf/page_buf.c
looking for the line which uses BIO_MAX_SECTORS and replace
nr_pages = BIO_MAX_SECTORS >> (PAGE_SHIFT - 9);
with
nr_pages = 1;
And for extra bonus points, only do it when pb->pb_dev is on the
MD_MAJOR device.
This will make xfs send smaller bio structures down to the block
layer and hopefully avoid the problem.
I have not tested this - don't have any time right now, on a plane
in 6 hours and way too much to do.
Steve
|