Eric Sandeen <sandeen@xxxxxxx> writes:
> Hi guys -
> We treat MD and LVM somewhat specially, and I wonder if in this case MD
> is masking the fact that you're using LVM, and that might be where the
> problem starts.
> Can you try this patch, which will cause LVM & MD to be treated the
> same, to see if it helps? It's probably not the final solution, but it
> might offer some hints.
> --- linux/fs/xfs/pagebuf/page_buf_locking.c_1.24 Tue Aug 13 14:05:18 2002
> +++ linux/fs/xfs/pagebuf/page_buf_locking.c Tue Aug 13 13:59:37 2002
> @@ -198,7 +196,7 @@
> pagebuf_target_blocksize(target, PAGE_CACHE_SIZE);
> if ((MAJOR(dev) == MD_MAJOR) || (MAJOR(dev) == EVMS_MAJOR))
> - target->pbr_flags = PBR_ALIGNED_ONLY;
> + target->pbr_flags = PBR_SECTOR_ONLY;
> else if (MAJOR(dev) == LVM_BLK_MAJOR)
> target->pbr_flags = PBR_SECTOR_ONLY;
> On Mon, 2002-08-12 at 01:40, James Lee wrote:
>> I'm also having the exactly same problem.
>> Tested with 2.4.19-xfs(checked out from SGI's CVS on Aug 10) on Redhat 7.2.
>> Kernel and userland tools are compiled with gcc 2.91.66
>> The following is the result of some tests:
>> scsidisks -> xfs: OK
>> scsidisks -> raid5 -> xfs: OK
>> scsidisks -> lvm -> xfs: OK
>> scsidisks -> raid0 -> lvm -> xfs: OK
>> scsidisks -> raid1 -> lvm -> xfs: OK
>> scsidisks -> raid5 -> lvm -> xfs: kernel BUG at filemap.c:843!
>> This problem is always reproducible with the following shell script:
>> mkraid /dev/md0
>> vgcreate VolumeGroup /dev/md0
>> lvcreate -L1G -nTestVolume VolumeGroup
>> mkfs.xfs -f -d size=32m /dev/VolumeGroup/TestVolume
>> mount -t xfs /dev/VolumeGroup/TestVolume
>> /mnt -onoatime,nodiratime,usrquota,grpquota
>> Whenever I run the above script, mount command always generates kernel oops.
>> But, if I insert some delay as of the following, then mount goes well: