Mailinglist Archive: opensuse-factory (266 mails)

< Previous Next >
Re: [opensuse-factory] initrd -> initramfs
On Mon, 04 May 2020 16:30:02 +0200,
Michal Suchánek wrote:

On Mon, 04 May 2020 13:25:04 +0200
Takashi Iwai <tiwai@xxxxxxx> wrote:

On Mon, 04 May 2020 13:18:02 +0200,
Neal Gompa wrote:

On Mon, May 4, 2020 at 7:17 AM Takashi Iwai <tiwai@xxxxxxx> wrote:

On Mon, 04 May 2020 12:37:01 +0200,
Daniel Molkentin wrote:

Hi,

In an effort to get the naming right. I would like to propose renaming
the /boot/initrd-$(uname -r) images to /boot/initramfs-$(uname
-r).img.

Rationale: We are not using initrd's (that is: actual block devices)
for
a long time now. Instead, an initramfs is a cpio archive that gets
deflated to a tmpfs. And, this would allow me to drop some more of our
vendor patches off dracut.

I am currently collecting affected packages. So far I found:

- aaa_base (refresh_initrd script)

- YaST

- grub

- kdump

- perl-Bootloader

Anything I am missing?

The kernel-default and co who own those initrd files.

And that'll be tricky -- if we rename it, which file name to be
packaged would depend on dracut package, but dracut isn't included in
the build requirement for the kernel binary package. So we can't know
whether dracut prefers initramfs or initrd at the package build time.


Just make the kernel Conflict with dracut package version prior to the
change, and that should be enough.

Well, not really that simple, I'm afraid, unless dracut is smart
enough.

Will dracut detect whether it already uses initrd and keep using
initrd instead of initramfs? Otherwise it won't work because we keep
multi-version kernels and the old kernel package will insist initrd
instead of initramfs while only the new kernel will use initramfs.

Won't work in what manner? dracut will create something, that something
will be added to menu by update-grub or what the script is named, and
loaded on boot. Only broken case is both initrd and initramfs exist and
grub picks the wrong one. For that the dracut package needs to detect
update from initrd to initramfs and rename the ramdisks or something.

The other potential problem is that the old ramdisks will not go away
when the kernel is removed because the package owns the initrd and not
initramfs. If we want to address this dracut can query the kernel
package content and decide according to that.

It's certainly possible to work around such problems. But, it means
that we'd need to add even more messy changes on top of the upstream
dracut, which is pretty against the goal of this proposal...


Takashi
--
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-factory+owner@xxxxxxxxxxxx

< Previous Next >