Package: acpi-call-dkms
Version: 1.1.0-5
Severity: serious
Tags: patch ftbfs
Justification: fails to build from source
Dear Maintainer,
Building modules for kernel 5.6.0-1-amd64 fails with
error: passing argument 4 of ‘proc_create’ from incompatible pointer type
[...]
expected ‘const struct proc_ops *’ but argument is of type ‘struct
file_operations *’
This seems to be due to a kernel change from earlier this year:
https://github.com/torvalds/linux/commit/97a32539b9568bb653683349e5a76d02ff3c3e2c
It can be naively be fixed by applying the changes suggested in that commit,
in acpi_call.c:321 changing :
static struct file_operations proc_acpi_operations = {
.owner = THIS_MODULE,
.read = acpi_proc_read,
.write = acpi_proc_write,
};
to
static struct proc_ops proc_acpi_operations={
.proc_read = acpi_proc_read,
.proc_write = acpi_proc_write,
};
Which seems to fix the build for 5.6. It probably breaks it for kernels older
than 5.6,
so it would need some conditionals.
-- System Information:
Debian Release: bullseye/sid
APT prefers testing
APT policy: (900, 'testing'), (500, 'stable-updates'), (500,
'oldstable-updates'), (500, 'stable'), (500, 'oldstable'), (50,
'experimental'), (50, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.6.0-1-amd64 (SMP w/2 CPU cores)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8),
LANGUAGE=en_IE:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages acpi-call-dkms depends on:
ii dkms 2.8.1-5
acpi-call-dkms recommends no packages.
acpi-call-dkms suggests no packages.
-- no debconf information
-- debsums errors found:
debsums: changed file /usr/src/acpi-call-1.1.0/acpi_call.c (from acpi-call-dkms
package)