[Bug 858840] New: Kernel update complexity (excess use of mkinitrd); extended "unsafe" period
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c0 Summary: Kernel update complexity (excess use of mkinitrd); extended "unsafe" period Classification: openSUSE Product: openSUSE 12.3 Version: Final Platform: All OS/Version: openSUSE 12.3 Status: NEW Severity: Normal Priority: P5 - None Component: Update Problems AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: Ulrich.Windl@rz.uni-regensburg.de QAContact: jsrain@suse.com Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux i686; rv:26.0) Gecko/20100101 Firefox/26.0 For systems where more than one kernel (n kernels) is installed (e.g. multiple versions or flavors), mkinitrd creates an initrd for each. So far, so good. Unfortunately a single "kernel" consists of two or more packages which are installed in a somewhat loose order. Each %post script of a kernel package calls mkinitrd, which in turn, re-creates the initrds for each kernel found. Despite the fact that the "useless temporary" initrd updates waste time and CPU cycles, there is a danger associated with this: If you update your kernel (say from 2.6.x to 3.0.y), the first mkinitrd of the first kernel package created an initrd that does not fit to the rest of the kernel. If the system crashes or the power goes out (or a cluster node fences the server), the system may be unbootable (modules in initrd not matching the kernel image). Reproducible: Always Steps to Reproduce: 1. Watch kernel updates Actual Results: Multiple mkinitd calls are observerd Expected Results: mkinitrd should be deferred until all the kernel-related updates are on disk. For example: I installed updates for kernel and multipath. multipath-update alone built the initrd several times: 2014-01-15 10:41:51 <1> pc(10330) [zypp] RpmDb.cc(doInstallPackage):1849 RpmDb::installPackage(/var/cache/zypp/packages/repo-update/i586/multipath-tools-0.4.9-7.5.1.i586.rpm,0x0000000c) [...] 2014-01-15 10:52:46 <1> pc(10330) [zypp] RpmDb.cc(doInstallPackage):1849 RpmDb::installPackage(/var/cache/zypp/packages/repo-update/i586/parted-2.4-30.4.1.i586.rpm,0x0000000c) That is 11 minutes to wait just for the update of multipath-tools! Each of my 3 kernels got its initrd build at least two times during that. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c Xiyuan Liu <xyliu@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |xyliu@suse.com AssignedTo|bnc-team-screening@forge.pr |kernel-maintainers@forge.pr |ovo.novell.com |ovo.novell.com -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c1 Takashi Iwai <tiwai@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |tiwai@suse.com --- Comment #1 from Takashi Iwai <tiwai@suse.com> 2014-03-17 09:52:12 UTC --- Nowadays multiple kernels are installed as default, so "no bootable" won't happen by this scenario, at least. If we consider only a single kernel on system, deferring the initrd creation is also risky when the operation is aborted after the removal of old package contents (but before initrd creation). Though, I think the new %posttrans would fit better for such a task, too. But this doesn't reduce the potential risk of breakage. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c2 Felix Miata <mrmazda@earthlink.net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mrmazda@earthlink.net --- Comment #2 from Felix Miata <mrmazda@earthlink.net> 2014-03-17 12:43:42 EDT --- Is this materially different from bug 786318? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c3 --- Comment #3 from Takashi Iwai <tiwai@suse.com> 2014-03-17 16:50:16 UTC --- Looks same. The zypper part should have been already fixed in 13.1, so the rest is rather the implementation in the kernel package side. I can close as DUP, but the bug 786318 subject looks also confusing (which was already fixed, per se). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c4 --- Comment #4 from Felix Miata <mrmazda@earthlink.net> 2014-03-17 13:09:24 EDT --- Nothing WRT bug 786318's original summary and comment 0 has changed, other than post-13.1 the problem is dracut called instead of mkinitrd. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c5 Takashi Iwai <tiwai@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |DUPLICATE --- Comment #5 from Takashi Iwai <tiwai@suse.com> 2014-03-18 14:37:26 UTC --- Let's track in a single bug. *** This bug has been marked as a duplicate of bug 786318 *** http://bugzilla.novell.com/show_bug.cgi?id=786318 -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c6 --- Comment #6 from Michael Andres <ma@suse.com> 2014-03-18 16:26:52 CET ---
Looks same.
Note that like rpm, libzypp does not unify %posttrans scripts. The fix in bug #786318 delays execution of %posttrans scripts until all packages are actually installed (as it should be). The total number of script invocations does not change. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c7 --- Comment #7 from Takashi Iwai <tiwai@suse.com> 2014-03-18 15:40:02 UTC --- Yes, but we can limit the execution, e.g. by executing only when some file is present. A similar trick was found in the recent font configuration, IIRC. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c8 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |786318 --- Comment #8 from Michael Andres <ma@suse.com> 2014-03-19 09:37:20 CET --- So this (excess use of mkinitrd) is actually not a duplicate of bug#786318 (which covers the zypp aspect) but may have been blocked by it. If the kernel %posttrans scripts are not yet fixed, we should consider reopening this, so it does not get lost. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c Bug 858840 depends on bug 786318, which changed state. Bug 786318 Summary: libzypp does not handle %posttrans scriptlets (was: mkinitrd inefficiently called multiple times per updates session) http://bugzilla.novell.com/show_bug.cgi?id=786318 What |Old Value |New Value ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=858840 https://bugzilla.novell.com/show_bug.cgi?id=858840#c Bug 858840 depends on bug 786318, which changed state. Bug 786318 Summary: libzypp does not handle %posttrans scriptlets (was: mkinitrd inefficiently called multiple times per updates session) http://bugzilla.novell.com/show_bug.cgi?id=786318 What |Old Value |New Value ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution| |FIXED -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com