dpkg problem related to emulab-ipod-dkms with Ubuntu 24

105 views
Skip to first unread message

john.ou...@gmail.com

unread,
Apr 1, 2025, 12:20:25 PM4/1/25
to cloudlab-users
I am starting to use the new Ubuntu 24 image for  Homa development and am getting errors from dpkg that seem to be related to Emulab software. The way I work is to start with a CloudLab official image but then upgrade the kernel to a more recent release and use the newer kernel with the rest of the image. Starting with the official Ubuntu 24 image, I compiled a newer version of the kernel (6.13.9) and then invoked dpkg to install the built kernel package. However, dpkg is getting errors related to the directory /var/lib/dkms/emulab-ipod-dkms, which I'm guessing is Emulab software. The command I'm running, and its output, are listed below, and I ran them on node0 of the following experiment:


Can you help me understand what's going on and whether there is an easy fix?

By the way, in spite of the dpkg error, nodes do seem to boot into the new kernel and seem to be usable.

-John-

---------------------------- Command and error output follow below -----------------------------------

ouster@node0:/ouster$ sudo dpkg -i linux-image-6.13.9+_6.13.9-00001-g765763177633-109_amd64.deb
Selecting previously unselected package linux-image-6.13.9+.
(Reading database ... 171222 files and directories currently installed.)
Preparing to unpack linux-image-6.13.9+_6.13.9-00001-g765763177633-109_amd64.deb ...
Unpacking linux-image-6.13.9+ (6.13.9-00001-g765763177633-109) ...
Setting up linux-image-6.13.9+ (6.13.9-00001-g765763177633-109) ...
 * dkms: running auto installation service for kernel 6.13.9+
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/emulab-ipod-dkms/3.4.0/source/dkms.conf)
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/emulab-ipod-dkms/3.4.0/source/dkms.conf)
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/emulab-ipod-dkms/3.4.0/source/dkms.conf)
Kernel config /lib/modules/6.13.9+/build/.config not found, modules won't be signed
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/emulab-ipod-dkms/3.4.0/source/dkms.conf)

Building module:
Cleaning build area...
make -j20 KERNELRELEASE=6.13.9+ -C /lib/modules/6.13.9+/build M=/var/lib/dkms/emulab-ipod-dkms/3.4.0/build...(bad exit status: 2)
ERROR (dkms apport): kernel package linux-headers-6.13.9+ is not supported
Error! Bad return status for module build on kernel: 6.13.9+ (x86_64)
Consult /var/lib/dkms/emulab-ipod-dkms/3.4.0/build/make.log for more information.
dkms autoinstall on 6.13.9+/x86_64 failed for emulab-ipod-dkms(10)
Error! One or more modules failed to install during autoinstall.
Refer to previous errors for more information.
 * dkms: autoinstall for kernel 6.13.9+                                                                                   [fail]
run-parts: /etc/kernel/postinst.d/dkms exited with return code 11
update-initramfs: Generating /boot/initrd.img-6.13.9+
Sourcing file `/etc/default/grub'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.13.9+
Found initrd image: /boot/initrd.img-6.13.9+
Found linux image: /boot/vmlinuz-6.8.0-57-generic
Found initrd image: /boot/initrd.img-6.8.0-57-generic
Found linux image: /boot/vmlinuz-6.8.0-53-generic
Found initrd image: /boot/initrd.img-6.8.0-53-generic
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
dpkg: error processing package linux-image-6.13.9+ (--install):
 installed linux-image-6.13.9+ package post-installation script subprocess returned error exit status 11
Errors were encountered while processing:
 linux-image-6.13.9+

David M Johnson

unread,
Apr 1, 2025, 2:49:31 PM4/1/25
to cloudla...@googlegroups.com
On 4/1/25 10:20, john.ou...@gmail.com wrote:
> I am starting to use the new Ubuntu 24 image for  Homa development and
> am getting errors from dpkg that seem to be related to Emulab software.
> The way I work is to start with a CloudLab official image but then
> upgrade the kernel to a more recent release and use the newer kernel
> with the rest of the image. Starting with the official Ubuntu 24 image,
> I compiled a newer version of the kernel (6.13.9) and then invoked dpkg
> to install the built kernel package. However, dpkg is getting errors
> related to the directory /var/lib/dkms/emulab-ipod-dkms, which I'm
> guessing is Emulab software. The command I'm running, and its output,
> are listed below, and I ran them on node0 of the following experiment:
>
> https://www.cloudlab.us/status.php?uuid=bb68fd32-0eaf-11f0-af1a-e4434b2381fc#
>
> Can you help me understand what's going on and whether there is an easy fix?

Hi John,

`ipod` (and the `emulab-ipod-dkms` package that provides it) is our ICMP
ping of death kernel module that can sometimes save a hard power cycle
of a partly-responsive machine that will no longer accept an explicit
CLI reboot or IPMI soft-power trigger.

We package it as a DKMS module, so each time a kernel is installed, DKMS
attempts to build the module (in this case the ipod module) against the
new kernel.

If you type `sudo dkms install -v 3.4.0 -k 6.13.9+ emulab-ipod-dkms`,
wait for failure, and look at
`/var/lib/dkms/emulab-ipod-dkms/3.4.0/build/make.log` (which is the same
output you included below), you can see that the module build is
failing; looks like the kernel sysctl API has changed again, so the ipod
module needs an upgrade to build on kernels > 6.8 . (Not sure where
exactly yet; you have a 6.13 kernel; I'll have to see where things
changed.). So, the module is failing to build, but these are non-fatal
errors (albeit noisy). The only issue is that if you are running your
6.13 kernel, and your node enters a "mostly unresponsive but can still
receive an ICMP packet and run the kernel's emergency_restart routines",
it will need a power cycle, because ipod will not be available.

I will put this on my list; thanks for reminding me!

> -John-

David
> --
> You received this message because you are subscribed to the Google
> Groups "cloudlab-users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cloudlab-user...@googlegroups.com
> <mailto:cloudlab-user...@googlegroups.com>.
> To view this discussion visit
> https://groups.google.com/d/msgid/cloudlab-users/867a4b84-acdf-440e-826c-aef4834560cfn%40googlegroups.com <https://groups.google.com/d/msgid/cloudlab-users/867a4b84-acdf-440e-826c-aef4834560cfn%40googlegroups.com?utm_medium=email&utm_source=footer>.

John Ousterhout

unread,
Apr 1, 2025, 4:24:36 PM4/1/25
to cloudla...@googlegroups.com
Thanks for the info; I'll just ignore the errors, then.

-John-

To unsubscribe from this group and stop receiving emails from it, send an email to cloudlab-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/cloudlab-users/030a4088-6557-4441-a68e-474a74d30c98%40flux.utah.edu.

Zile Huang

unread,
Jul 20, 2025, 5:20:07 PM7/20/25
to cloudlab-users
Hi

Just want to comment to leave a solution for later comers. A very small fix of ipod.c can solve the problem.

Also met the same problem with compiling ipod module when installing new kernel. However, the problem seems to be more fatal to me and prohibited the kernel from installing.

Note that the error message says: Consult /var/lib/dkms/emulab-ipod-dkms/3.4.0/build/make.log for more information.

A shallow dig into the aforementioned file shows the error message:

ipod.c:158:29: error: initialization of ‘int (*)(const struct ctl_table *, int,  void *, size_t *, loff_t *)’ {aka ‘int (*)(const struct ctl_table *, int,  void *, long unsigned int *, long long int *)’} from incompatible pointer type ‘int (*)(struct ctl_table *, int,  void *, size_t *, loff_t *)’ {aka ‘int (*)(struct ctl_table *, int,  void *, long unsigned int *, long long int *)’} [-Wincompatible-pointer-types]
  158 |       .proc_handler = __PHP ipod_wq_proc,
      |                             ^~~~~~~~~~~~
ipod.c:158:29: note: (near initialization for ‘ipod_table[5].proc_handler’)

So it seems like the particular ipod_wq_proc function pointer is incompatiable with the proc_handler field.

A quick comparison shows that, in the function declaration of ipod_wq_proc, the first parameter is struct ctl_table *, instead of const struct ctl_table *. The new compiler prohibits this from compiling.

Therefore, modifying line 96 of /var/lib/dkms/emulab-ipod-dkms/3.4.0/source/ipod.c to:

static int ipod_wq_proc(const struct ctl_table *table, int write,

solved the problem.

Best
Leo

David M Johnson

unread,
Jul 20, 2025, 8:25:02 PM7/20/25
to cloudla...@googlegroups.com
Also, this was fixed a couple weeks back; see
https://groups.google.com/g/cloudlab-users/c/V19YwrmESFI/m/U2-Wd0aWBgAJ
. Just run `sudo apt-get update && sudo apt-get install
emulab-ipod-dkms` on your nodes.

Thanks,

David
> https://www.cloudlab.us/status.php?uuid=bb68fd32-0eaf-11f0-af1a-e4434b2381fc# <https://www.cloudlab.us/status.php?uuid=bb68fd32-0eaf-11f0-af1a-e4434b2381fc#>
> https://groups.google.com/d/msgid/cloudlab-users/867a4b84-acdf-440e-826c-aef4834560cfn%40googlegroups.com <https://groups.google.com/d/msgid/cloudlab-users/867a4b84-acdf-440e-826c-aef4834560cfn%40googlegroups.com> <https://groups.google.com/d/msgid/cloudlab-users/867a4b84-acdf-440e-826c-aef4834560cfn%40googlegroups.com?utm_medium=email&utm_source=footer <https://groups.google.com/d/msgid/cloudlab-users/867a4b84-acdf-440e-826c-aef4834560cfn%40googlegroups.com?utm_medium=email&utm_source=footer>>.
>
> --
> You received this message because you are subscribed to the
> Google Groups "cloudlab-users" group.
>
> To unsubscribe from this group and stop receiving emails from
> it, send an email to cloudlab-user...@googlegroups.com.
> To view this discussion visit
> https://groups.google.com/d/msgid/cloudlab-users/030a4088-6557-4441-a68e-474a74d30c98%40flux.utah.edu <https://groups.google.com/d/msgid/cloudlab-users/030a4088-6557-4441-a68e-474a74d30c98%40flux.utah.edu>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "cloudlab-users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to cloudlab-user...@googlegroups.com
> <mailto:cloudlab-user...@googlegroups.com>.
> To view this discussion visit
> https://groups.google.com/d/msgid/cloudlab-users/667f344d-ed6f-4b3e-bab2-a921572280a4n%40googlegroups.com <https://groups.google.com/d/msgid/cloudlab-users/667f344d-ed6f-4b3e-bab2-a921572280a4n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Reply all
Reply to author
Forward
0 new messages