[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: jbd count incremented *even* if volume is mounted RO?



I think I've narrowed it down . .  please see steps
below and if you can comment I would appreciate!



1) dd if=/dev/zero bs=1024 count=2048 of=ext3virgin

2) md5sum ext3virgin
-------> my value is 'XXX'

3) losetup /dev/loop0 ext3virgin

4) mkfs -j /dev/loop0

5) cp -v ext3virgin ext3whore

6) md5sum ext3virgin
-------> my value is again 'XXX' (has not changed)

7) md5sum ext3whore
-------> my value is again 'XXX' (equal to ext3virgin)

8) debugfs ext3virgin
-------> logdump  (returns 'Journal starts at block 0,
transaction 1')
-------> stats (just to view statistics)
-------> quit

9) debugfs ext3whore
-------> logdump (returns 'Journal starts at block 0,
transaction 1')
-------> stats (just to view statistics)
-------> quit

*******
At this point we see the original md5 value is equal
to the two copies, the journal entries are equivalent,
etc.)
*******

10) md5sum ext3virgin
-------> produces 'XXX' (has *not* changed)

11) md5sum ext3whore
-------> produces 'XXX' (has *not* changed)


*******
SO let's play with losetup, mounting, and loop.  I
couldn't figure out why folks were using losetup and
then mounting via loop instead of just mounting the
image via loop, so I ear marked that as a possible
point of conflict
*******


12) cp -v ext3* ../
(I copied these up one directory in their 'virgin'
states to be able to test them again with SMART later)

13) mount ext3virgin -o ro,nodev,noexec,noatime,loop
/mnt/punkd0
-------> at this point it's mounted via 'loop' at the
punkd0 directory read only

14) md5sum ext3virgin
-------> produces 'XXX' (*same* value as original, it
has not changed)

15) umount /mnt/punkd0

16) md5sum ext3virgin
-------> produces 'XXX' (*same* original value)

17) losetup /dev/loop1 ext3whore

18) md5sum ext3whore
-------> produces 'XXX' (*same* original value)

19) mount ext3whore -o ro,loop /mnt/punkd1

20) md5sum ext3whore
-------> produces 'XXX' (*same* original value)

21) cmp -l ext3virgin ext3whore
(note, no return, there is no difference between two
yet)

22) umount /mnt/punkd1

23) losetup /dev/loop2 ext3whore

24) mount -t ext3 -o ro /dev/loop2 /mnt/punkd1
-------> again, I can't figure out why you'd mount it
this way, but I wanted to try John's procedure and I
was thinking this might be the culprit?  (If I'm
mounting via loop I specifiy the file itself, not the
associated loop device file)

25) md5sum ext3whore
-------> produces 'YYY' (*BINGO* - CHANGE ! ! ! ! !)

26) umount /mnt/punkd1

27) losetup /dev/loop3 ext3virgin

28) mount ext3virgin -o ro,loop /mnt/punkd0

29) md5sum ext3virgin
-------> produces 'XXX' (same original value)

30)cmp -l ext3virgin ext3whore
-------> produces '51228 1 2'

31) umount /mnt/punkd0



So my findings?  Mounting the image file (volume) via
the associated loop device file (#24 above) is where
the change occurred.

But as I mentioned earlier, my testing is 50% done.

Why only 50% done?  Because I tested this using files,
not real logical volumes.  I would highly recommend
testing same methodology using logical volumes to
support these findings. (I.E., validate using a boot
cd, or by having an ext3 volume on your system you can
test with)

__________________________________
Do you Yahoo!?
Yahoo! Calendar - Free online calendar with sync to Outlook(TM).
http://calendar.yahoo.com




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]