Hi, At Sun, 14 Mar 2010 13:32:46 +0100, Vladimir 'φ-coder/phcoder' Serbinenko wrote: > > [1 <multipart/signed (7bit)>] > [1.1 <text/plain; UTF-8 (quoted-printable)>] > Jiro SEKIBA wrote: > >> Filesystem modules are often size-constrained. So we skip the > >> consistency checks unless they are inherent part of filesystem operation. > >> If filesystem is corrupted there isn't much we can do other than hope > >> that boot-related files aren't affected. GRUB itself never writes to fs > >> metadata so it won't lead to any additional corruption > >> > > > > Ah, I see. Ok, then we may skip checking super block crc. > > > Skipping only part of crc checks doesn't bring anything. > > > However, becuase of nature of nilfs2, a log file system, > > I need to roll forward the logs to find the latest log > > in case that super block does not point appropriate latest log > > on unclean unmounting. > > > > In the forwarding process, log is verified by crc. > > > > > In this case ok. Can you make tests and compare the size with either > using lib/crc.c or CRC32 from crypto framework? This is something that > would justify keeping lib/crc.c despite my previous plans on its removal > if the difference is significant.
OK, I'll try to compare. > >>> I added lib/crc.c in SOURCES in common.rmk for the fs module. > >>> It looks OK to compile the target fs module. > >>> However I got following link error for grub-setup and grub-probe. > >>> > >>> grub_setup-fs_nilfs2.o: In function `grub_nilfs2_valid_sb': > >>> nilfs2.c:(.text+0xe29): undefined reference to `grub_getcrc32' > >>> nilfs2.c:(.text+0xe47): undefined reference to `grub_getcrc32' > >>> nilfs2.c:(.text+0xe7e): undefined reference to `grub_getcrc32' > >>> collect2: ld returned 1 exit status > >>> > >>> I was trying to specify lib/crc.c in grub_setup_SOURCES, but got same > >>> result. > >>> > >>> > >>> > >> Stupid question: have you rerun ./autogen.sh ? > >> > > > > Yes, I did. I should have mentioned. > > What I did is > > > > sh autogen.sh > > make clean;./configure;make > > > > > May I have a look at this part of the patch? Sure, that I did the following in common.rmk. And I see that added line is in a common.mk after rerun autogen.sh. -------8<-------8<-------8<-------8<-------8<------- === modified file 'conf/common.rmk' --- conf/common.rmk 2010-03-10 14:05:15 +0000 +++ conf/common.rmk 2010-03-10 19:57:34 +0000 @@ -132,6 +132,7 @@ DISTCLEANFILES += grub_probe_init.c # For grub-setup. +grub_setup_SOURCES = lib/crc.c grub_setup_init.lst: geninit.sh $(filter-out grub_setup_init.c,$(grub_setup_SOURCES)) rm -f $@; grep GRUB_MOD_INIT $(filter %.c,$^) /dev/null > $@ DISTCLEANFILES += grub_setup_init.lst -------8<-------8<-------8<-------8<-------8<------- thanks, regards, > > -- > Regards > Vladimir 'φ-coder/phcoder' Serbinenko > > > [1.2 OpenPGP digital signature <application/pgp-signature (7bit)>] > > [2 <text/plain; us-ascii (7bit)>] > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Jiro SEKIBA <j...@unicus.jp> _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel