LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   mkinitrd_command_generator.sh: broken with 3.17.3 kernel (https://www.linuxquestions.org/questions/slackware-14/mkinitrd_command_generator-sh-broken-with-3-17-3-kernel-4175525631/)

lems 11-17-2014 05:21 AM

mkinitrd_command_generator.sh: broken with 3.17.3 kernel
 
Hello,

today I've compiled a 3.17.3 kernel with the newly added generic config in -current.

What I noticed was that it did not find the modules directory, complaining that on line 417 a binary operator was expected or so.

This command:
Code:

strings /boot/vmlinuz-huge-3.14.24 | grep '(.*@.*) #'
creates the following output:
Code:

3.14.24 (root@hive64) #2 SMP Fri Nov 14 13:08:43 CST 2014
But this is what happens with my shiny new generic kernel (I only changed a few options like enabling PREEMPT and CONFIG_SCHED_AUTOGROUP):
Code:

3.17.3 (root@aristipp) #1 SMP PREEMPT Mon Nov 17 11:37:31 CET 2014
3.17.3 (root@aristipp) (gcc version 4.8.3 (GCC) ) #1 SMP PREEMPT Mon Nov 17 11:37:31 CET 2014

So the command
Code:

strings /boot/vmlinuz-generic-3.17.3 | grep '(.*@.*) #' | cut -f1 -d' '
will output 3.17.3 two times. I added a `sed 1q' and the script worked like it should. No idea if this is a local problem, thought I'd inform someone about this.

Nh3xus 11-17-2014 05:45 AM

Hi,

I've done the same kernel building as you for my brand new laptop.

Except that I've used the .config that Pat made for the huge kernel. (Yeah, I know... but it works)

Perhaps appending a custom string to the kernel name would have prevented mkinitrd_command_generator.sh to fail.

Also, if you don't use some specific configuration like LUKS and/or LVM on your /boot and /root partitions, then you can use the mkinird command manually.

Here the command I've used : mkinitrd -c -k 3.17.3 -m ext4

That's my first kernel compile so far. :D

I had to do it in order to have the following recognized :

- Proper Pstate CPU governor driver for my Haswell CPU
- Recognition of my ALPS touchpad
- Recognition of my Logitech Unifying dongle

willysr 11-17-2014 07:11 AM

If you use huge config, then you don't need initrd anymore

xflow7 11-17-2014 08:02 AM

Is that strictly true? I seem to recall that when I've used huge in the past I still needed an initrd if I used LVM. Maybe that's no longer the case, but I'm pretty sure it was as of 13 or so.

lems 11-17-2014 09:58 AM

It seemed to be a problem just on my machine, at least the 32 bit kernel I compiled on my T60 (generic-smp 3.17.3) didn't have this problem. As for the example (kernel huge): I don't have kernel-generic installed, instead I always build a newer generic and leave kernel-huge installed just in case. However, I use UUIDs with lilo, and I couldn't boot the huge kernel without an initrd.

mostlyharmless 11-17-2014 01:24 PM

Quote:

Also, if you don't use some specific configuration like LUKS and/or LVM on your /boot and /root partitions, then you can use the mkinird command manually.
You can always use it manually. If you don't like typing in something really long, just write it to a file and execute it with sh. I have found the script is a bit hit and miss anyway.


All times are GMT -5. The time now is 07:29 AM.