Не собирается vhci_hcd на ядре 5.4.103

Выдает ошибку

root@pve:~/git/vhci_hcd# make
make -C /lib/modules/5.4.103-1-pve/build M=/root/git/vhci_hcd PWD=/root/git/vhci_hcd BUILD_PREFIX= KDIR=/lib/modules/5.4.103-1-pve/build KVERSION=5.4.103-1-pve modules
make[1]: Entering directory '/usr/src/linux-headers-5.4.103-1-pve'
CC [M] /root/git/vhci_hcd/usb-vhci-iocifc.o
In file included from ./include/linux/uaccess.h:11,
from /root/git/vhci_hcd/usb-vhci-iocifc.c:36:
/root/git/vhci_hcd/usb-vhci-iocifc.c: In function ‘ioc_register’:
./arch/x86/include/asm/uaccess.h:433:29: error: invalid initializer
__typeof__(ptr) __pu_ptr = (ptr); \
^
./arch/x86/include/asm/uaccess.h:553:2: note: in expansion of macro ‘__put_user_nocheck’
__put_user_nocheck((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)))
^~~~~~~~~~~~~~~~~~
/root/git/vhci_hcd/usb-vhci-iocifc.c:223:3: note: in expansion of macro ‘__put_user’
__put_user('\0', arg->bus_id);
^~~~~~~~~~
/root/git/vhci_hcd/usb-vhci-iocifc.c: In function ‘ioc_giveback_common’:
/root/git/vhci_hcd/usb-vhci-iocifc.c:602:103: error: macro "access_ok" passed 3 arguments, but takes just 2
cess_ok(VERIFY_READ, (void *)iso, iso_count * sizeof(struct usb_vhci_ioc_iso_packet_giveback)))
^

/root/git/vhci_hcd/usb-vhci-iocifc.c:602:8: error: ‘access_ok’ undeclared (first use in this function)
if(!access_ok(VERIFY_READ, (void *)iso, iso_count * sizeof(struct usb_vhci_ioc_iso_packet_giveback)))
^~~~~~~~~
/root/git/vhci_hcd/usb-vhci-iocifc.c:602:8: note: each undeclared identifier is reported only once for each function it appears in
/root/git/vhci_hcd/usb-vhci-iocifc.c: In function ‘device_do_ioctl’:
/root/git/vhci_hcd/usb-vhci-iocifc.c:940:90: error: macro "access_ok" passed 3 arguments, but takes just 2
if(unlikely((_IOC_DIR(cmd) & _IOC_READ) && !access_ok(VERIFY_WRITE, arg, _IOC_SIZE(cmd))))
^
In file included from ./include/linux/export.h:42,
from ./include/linux/linkage.h:7,
from ./include/linux/kernel.h:8,
from ./include/linux/list.h:9,
from ./include/linux/module.h:9,
from /root/git/vhci_hcd/usb-vhci-iocifc.c:23:
/root/git/vhci_hcd/usb-vhci-iocifc.c:940:46: error: ‘access_ok’ undeclared (first use in this function)
if(unlikely((_IOC_DIR(cmd) & _IOC_READ) && !access_ok(VERIFY_WRITE, arg, _IOC_SIZE(cmd))))
^~~~~~~~~
./include/linux/compiler.h:78:42: note: in definition of macro ‘unlikely’
# define unlikely(x) __builtin_expect(!!(x), 0)
^
/root/git/vhci_hcd/usb-vhci-iocifc.c:942:90: error: macro "access_ok" passed 3 arguments, but takes just 2
if(unlikely((_IOC_DIR(cmd) & _IOC_WRITE) && !access_ok(VERIFY_READ, arg, _IOC_SIZE(cmd))))
^
make[2]: *** [scripts/Makefile.build:271: /root/git/vhci_hcd/usb-vhci-iocifc.o] Error 1
make[1]: *** [Makefile:1754: /root/git/vhci_hcd] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.4.103-1-pve'
make: *** [Makefile:35: default] Error 2