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

Re: Reiser4: Format 4.0.1: Meta(data) checksums



On 2015-09-17 at 23:51 +0200, Ben Hutchings wrote:
> On Thu, 2015-09-17 at 18:56 +0300, Ivan Shapovalov wrote:
> > On 2015-09-17 at 05:10 -0700, Jose R R wrote:
> > > On Sun, Sep 13, 2015 at 6:06 AM, Ivan Shapovalov <
> > > intelfx100@gmail.com> wrote:
> > > > On 2015-09-13 at 05:57 -0700, Jose R R wrote:
> > > > > Here is some additional info:
> > > > > 
> > > > > A while back, I installed Debian Jessie AMD64 into a KVM
> > > > > virtual
> > > > > machine and also included the initial non-systemd boot
> > > > > argument:
> > > > > preseed/late_command="in-target apt-get install -y sysvinit
> > > > > -core"
> > > > > < https://wiki.debian.org/systemd#Installing_without_systemd 
> > > > > >
> > > > > 
> > > > > Afterwards a previous reiser4-patched Linux kernel 4.0.x was
> > > > > installed
> > > > > into the virtual machine and its root fs was subsequently
> > > > > formatted
> > > > > to
> > > > > reiser4.. The virtual machine was working fine:
> > > > > < https://pbs.twimg.com/media/CKIKgoZUAAIFx12.png:large >
> > > > > 
> > > > > Yesterday, I installed into the vm a newer 4.1.6 kernel built
> > > > > "the
> > > > > debian way" except that it was customized with the newer
> > > > > 4.0.1
> > > > > Reiser4
> > > > > patch. Upon rebooting the VM, I captured a sequence of 4
> > > > > snapshots
> > > > > (by
> > > > > paging down) that basically recreate the fail that I
> > > > > experienced
> > > > > priorly in the physical machine:
> > > > > 
> > > > > < https://metztli.it/blog/index.php/ixiptli/non-systemd-debia
> > > > > n-si
> > > > > d-re
> > > > > iser4 >
> > > > > 
> > > > > Accordingly, seems the *lack of systemd* is enough for a
> > > > > Debian
> > > > > Sid
> > > > > instance to create a bad initrd.img. I have no idea if issue
> > > > > only
> > > > > appears with Reiser4 root fs or if it includes other file
> > > > > systems
> > > > > as
> > > > > root. Work in progress...
> > > > 
> > > > It's presence/absence of crc32c module that matters. Reiser4
> > > > does
> > > > not
> > > > specify that it needs one.
> > > > 
> > > Applied your 3 patches
> > > 1/3 < http://marc.info/?l=reiserfs-devel&m=144218573602435&w=2 >
> > > 2/3 < http://marc.info/?l=reiserfs-devel&m=144218573602436&w=2 >
> > > 3/3 < http://marc.info/?l=reiserfs-devel&m=144218573702437&w=2 >
> > > 
> > > into kernel.org Linux Kernel 4.1.7, but Non-systemd Debian still
> > > boots
> > > into an emergency shell
> > > [...]
> > > mount: mounting /dev/sdaX on /root failed: no such file or
> > > directory
> > > Target fileystem doesn't have requested /sbin/init
> > > mount: mounting /dev on /root/dev failed: no such file or
> > > directory
> > > No init found. Try passing init= bootarg.
> > > [...]
> > 
> > Correct; it's now a "cleanly" reported error instead of an oops.
> > You will have to manually add crc32c or crc32c_intel module to the
> > initramfs, though. I could not find a way to express an explicit
> > intermodule dependency in the code (to make module reiser4 depend
> > on
> > module crc32c).
> > 
> > Edward's patch selects module crc32c when reiser4 is selected in
> > the
> > build config, but it does not make sure that crc32c will end up in
> > the
> > initramfs if reiser4 is there (that is, modules.dep will not be
> > altered). I'm still wondering how to do that properly.
> 
> In initramfs-tools, hook-functions has some code to handle these
> hidden
> dependencies.  But it doesn't make a lot of sense to embed this
> information there rather than in the modules themselves.
> 
> The proper way to put extra dependencies in modules is:
> 
> /* Soft module dependencies. See man modprobe.d for details.
>  * Example: MODULE_SOFTDEP("pre: module-foo module-bar post: module
> -baz")
>  */
> #define MODULE_SOFTDEP(_softdep) MODULE_INFO(softdep, _softdep)
> 
> However initramfs-tools still needs to be fixed to follow these
> dependencies.
> 
> Ben.
> 

Hi Ben,

yeah, I've considered softdeps, but at least in arch linux the
mkinitcpio tool doesn't look at softdeps at all.

So, there is no way to append something to the "depends" field in the
module info (i. e. "hard" dependencies). Correct?

Thanks,
-- 
Ivan Shapovalov / intelfx /

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: