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)

Reply via email to