grub-devel
[Top][All Lists]
Advanced

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

Re: How can I use grub_getcrc32 in fs module


From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: How can I use grub_getcrc32 in fs module
Date: Sun, 14 Mar 2010 13:32:46 +0100
User-agent: Mozilla-Thunderbird 2.0.0.22 (X11/20091109)

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.
>>> 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?


-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko


Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]