On Wed, 8 Feb 2006 14:11:24 -0800 Chris Wright wrote: > * Bernd Schubert ([email protected]) wrote: > > Er, you mean /proc/fs/reiserfs/{partition}/on-disk-super? > > Yup. > > > bernd@bathl ~>grep attrs_cleared /proc/fs/reiserfs/hda6/on-disk-super > > flags: 1[attrs_cleared] > > > > 2) does mount -o attrs ... make a difference? > > > > Yes, 2.6.13 now makes the same trouble. No difference with 2.6.15.3. > > I played with mount -o noattrs, this makes no difference with 2.6.13, but has > > some effects to 2.6.15.3. Creating files in /var/run is possible again, > > lsattr gives "lsattr: Inappropriate ioctl for device While reading flags > > on /var/run", but deleting files in /var/run is still impossible (still > > rather bad for the init-scripts). Is the filesystem in question old - could it be created initially in the reiserfs v3.5 format (used with 2.2.x kernels) and later converted to v3.6 (by mounting with the "conv" option)? > Yes, that's what I thought. There's still some backward logic in there. > noattrs vs. attrs triggers whether the code path that's patched in > 2.6.15.3 is taken. I'll dig a bit more, but hopefully the reiserfs folks > can fix this for us. Here is a simple test case which reproduces the problem with a filesystem converted from v3.5: # dd if=/dev/zero of=tmp.img bs=1M count=100 # mkreiserfs --format 3.5 -f tmp.img # mount -t reiserfs -o loop,conv tmp.img /mnt/disk/ # umount /mnt/disk/ # reiserfsck --clean-attributes tmp.img # mount -t reiserfs -o loop tmp.img /mnt/disk/ At this point, I get obviously wrong attributes on /mnt/disk: # lsattr -d /mnt/disk/ -----a--c---- /mnt/disk/ BTW, this breaks even with kernels earlier than 2.6.15.2, if you also add the "attrs" options to the last mount command. Apparently the reiserfs attrs code has been broken for such converted filesystems for some time, but it could be enabled only with the "attrs" option, so people were not hitting this. However, the following patch: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2949ccf9379678df66ecf2ca70ed4656159eacdd changed the logic to enable the "attrs" option on all filesystems which have the reiserfs_attrs_cleared flag. But that patch was broken - it did not really set the option properly, so the attrs-related breakage did not became visible until yet another patch: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d35c602870ece3166cff3d25fbc687a7f707acf3 which later made into 2.6.15.2, and caused problems for some people. I have noticed that fs/reiserfs/inode.c:init_inode() does not initialize REISERFS_I(inode)->i_attrs and inode->i_flags (as done by sd_attrs_to_i_attrs()) in the branch for v1 stat data; maybe this causes the problem?
Attachment:
pgpn53DYPtUNQ.pgp
Description: PGP signature
- Follow-Ups:
- Re: 2.6.15 Bug? New security model?
- From: Hans Reiser <[email protected]>
- Re: 2.6.15 Bug? New security model?
- From: Jeff Mahoney <[email protected]>
- Re: 2.6.15 Bug? New security model?
- From: Bernd Schubert <[email protected]>
- Re: 2.6.15 Bug? New security model?
- References:
- 2.6.15 Bug? New security model?
- From: Bernd Schubert <[email protected]>
- Re: 2.6.15 Bug? New security model?
- From: Bernd Schubert <[email protected]>
- Re: 2.6.15 Bug? New security model?
- From: Chris Wright <[email protected]>
- Re: 2.6.15 Bug? New security model?
- From: Bernd Schubert <[email protected]>
- Re: 2.6.15 Bug? New security model?
- From: Chris Wright <[email protected]>
- 2.6.15 Bug? New security model?
- Prev by Date: NCR 53c700-66 MCA(EISA) doesn't want to work(2.4.x)
- Next by Date: Re: kernel-2.6.16-rc2-git8 - reiserfs 3.6 - write problem !!!
- Previous by thread: Re: 2.6.15 Bug? New security model?
- Next by thread: Re: 2.6.15 Bug? New security model?
- Index(es):