Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1344330 > unrolled thread

[PATCH] kbuild/mkspec: fix grub2 installkernel issue

Started byJiri Kosina <jikos@kernel.org>
First post2016-02-26 16:20 +0100
Last post2016-02-26 16:30 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] kbuild/mkspec: fix grub2 installkernel issue Jiri Kosina <jikos@kernel.org> - 2016-02-26 16:20 +0100
    Re: [PATCH] kbuild/mkspec: fix grub2 installkernel issue Michal Marek <mmarek@suse.com> - 2016-02-26 16:30 +0100

#1344330 — [PATCH] kbuild/mkspec: fix grub2 installkernel issue

FromJiri Kosina <jikos@kernel.org>
Date2016-02-26 16:20 +0100
Subject[PATCH] kbuild/mkspec: fix grub2 installkernel issue
Message-ID<r6sls-5aU-19@gated-at.bofh.it>
mkspec is copying built kernel to temporrary location

	/boot/vmlinuz-$KERNELRELEASE-rpm

and runs installkernel on it. This however directly leads to grub2 
menuentry for this suffixed binary being generated as well during the run 
of installkernel script.

Later in the process the temporary -rpm suffixed files are removed, and 
therefore we end up with spurious (and non-functional) grub2 menu entries 
for each installed kernel RPM.

Fix that by using a different temporary name (prefixed by '.'), so that 
the binary is not recognized as an actual kernel binary and no menuentry 
is created for it.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
---
 scripts/package/mkspec | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/scripts/package/mkspec b/scripts/package/mkspec
index 71004da..fe44d68 100755
--- a/scripts/package/mkspec
+++ b/scripts/package/mkspec
@@ -131,11 +131,11 @@ echo 'rm -rf $RPM_BUILD_ROOT'
 echo ""
 echo "%post"
 echo "if [ -x /sbin/installkernel -a -r /boot/vmlinuz-$KERNELRELEASE -a -r /boot/System.map-$KERNELRELEASE ]; then"
-echo "cp /boot/vmlinuz-$KERNELRELEASE /boot/vmlinuz-$KERNELRELEASE-rpm"
-echo "cp /boot/System.map-$KERNELRELEASE /boot/System.map-$KERNELRELEASE-rpm"
+echo "cp /boot/vmlinuz-$KERNELRELEASE /boot/.vmlinuz-$KERNELRELEASE-rpm"
+echo "cp /boot/System.map-$KERNELRELEASE /boot/.System.map-$KERNELRELEASE-rpm"
 echo "rm -f /boot/vmlinuz-$KERNELRELEASE /boot/System.map-$KERNELRELEASE"
-echo "/sbin/installkernel $KERNELRELEASE /boot/vmlinuz-$KERNELRELEASE-rpm /boot/System.map-$KERNELRELEASE-rpm"
-echo "rm -f /boot/vmlinuz-$KERNELRELEASE-rpm /boot/System.map-$KERNELRELEASE-rpm"
+echo "/sbin/installkernel $KERNELRELEASE /boot/.vmlinuz-$KERNELRELEASE-rpm /boot/.System.map-$KERNELRELEASE-rpm"
+echo "rm -f /boot/.vmlinuz-$KERNELRELEASE-rpm /boot/.System.map-$KERNELRELEASE-rpm"
 echo "fi"
 echo ""
 echo "%files"

-- 
Jiri Kosina
SUSE Labs

[toc] | [next] | [standalone]


#1344344

FromMichal Marek <mmarek@suse.com>
Date2016-02-26 16:30 +0100
Message-ID<r6sv9-5gy-29@gated-at.bofh.it>
In reply to#1344330
On 2016-02-26 16:15, Jiri Kosina wrote:
> mkspec is copying built kernel to temporrary location
> 
> 	/boot/vmlinuz-$KERNELRELEASE-rpm
> 
> and runs installkernel on it. This however directly leads to grub2 
> menuentry for this suffixed binary being generated as well during the run 
> of installkernel script.
> 
> Later in the process the temporary -rpm suffixed files are removed, and 
> therefore we end up with spurious (and non-functional) grub2 menu entries 
> for each installed kernel RPM.
> 
> Fix that by using a different temporary name (prefixed by '.'), so that 
> the binary is not recognized as an actual kernel binary and no menuentry 
> is created for it.
> 
> Signed-off-by: Jiri Kosina <jkosina@suse.cz>

Fixes: 3c9c7a14b627 ("rpm-pkg: add %post section to create initramfs and
grub hooks")

Applied to kbuild.git#misc.

Michal

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web