I think the issue isn't with the WireGuard code but with something unique to Debian or to dkms. I am able to build the module on Arch Linux using 4.20-rc4 (linux-mainline package from the AUR) with issue. I haven't tried dkms (not a fan).
Here is a PKGBUILD for wireguard tools and module without using DKMS: https://gist.github.com/graysky2/c9b3a44576f498e002fd1a255dab1c44 make -C src module make: Entering directory '/build/wireguard/src/WireGuard-0.0.20181119/src' CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/main.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/noise.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/peer.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/device.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/timers.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/queueing.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/send.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/receive.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/socket.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/hashtables.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/allowedips.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/ratelimiter.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/cookie.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/netlink.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/chacha20/chacha20.o PERLASM /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/chacha20/chacha20-x86_64.S CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/poly1305/poly1305.o PERLASM /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/poly1305/poly1305-x86_64.S CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/chacha20poly1305.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/blake2s/blake2s.o AS [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/blake2s/blake2s-x86_64.o CC [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/curve25519/curve25519.o AS [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/chacha20/chacha20-x86_64.o AS [M] /build/wireguard/src/WireGuard-0.0.20181119/src/crypto/zinc/poly1305/poly1305-x86_64.o LD [M] /build/wireguard/src/WireGuard-0.0.20181119/src/wireguard.o Building modules, stage 2. MODPOST 1 modules CC /build/wireguard/src/WireGuard-0.0.20181119/src/wireguard.mod.o LD [M] /build/wireguard/src/WireGuard-0.0.20181119/src/wireguard.ko make: Leaving directory '/build/wireguard/src/WireGuard-0.0.20181119/src' On Sat, Dec 1, 2018 at 4:00 PM Laszlo KERTESZ <laszlo.kert...@gmail.com> wrote: > > Hi, > The wireguard module (0.0.20181119 from Debian Unstable) fails to build on my > machine using kernel 4.20 rc4. > > I get the following errors: > >> # cat /var/lib/dkms/wireguard/0.0.20181119/build/make.log >> DKMS make.log for wireguard-0.0.20181119 for kernel 4.20.0-rc4 (x86_64) >> Sat Dec 1 22:51:18 EET 2018 >> make: Entering directory '/usr/src/linux-headers-4.20.0-rc4' >> CC [M] /var/lib/dkms/wireguard/0.0.20181119/build/main.o >> CC [M] /var/lib/dkms/wireguard/0.0.20181119/build/noise.o >> CC [M] /var/lib/dkms/wireguard/0.0.20181119/build/device.o >> CC [M] /var/lib/dkms/wireguard/0.0.20181119/build/peer.o >> Assembler messages: >> Error: can't open arch/x86/kernel/macros.s for reading: No such file or >> directory >> make[1]: *** [scripts/Makefile.build:293: >> /var/lib/dkms/wireguard/0.0.20181119/build/main.o] Error 1 >> make[1]: *** Waiting for unfinished jobs.... >> Assembler messages: >> Error: can't open arch/x86/kernel/macros.s for reading: No such file or >> directory >> ./arch/x86/include/asm/atomic64_64.h:160: Error: no such instruction: >> `lock_prefix xaddq %rax,peer_counter(%rip)' >> ./arch/x86/include/asm/bitops.h:76: Error: no such instruction: `lock_prefix >> orb $32,1592(%rbx)' >> ./arch/x86/include/asm/bitops.h:114: Error: no such instruction: >> `lock_prefix andb $-2,1592(%rbx)' >> ./arch/x86/include/asm/bitops.h:114: Error: no such instruction: >> `lock_prefix andb $-9,1592(%rbx)' >> ./arch/x86/include/asm/jump_label.h:23: Error: no such instruction: >> `static_branch_nop l_yes=".L15"key="descriptor.66338+40"branch="0"' >> ./include/linux/netdevice.h:515: Error: no such instruction: `asm_bug >> ins=".byte 0x0f, 0x0b"file=.LC0 line=515 flags=0 size=12' >> ./include/linux/netdevice.h:515: Error: no such instruction: >> `annotate_unreachable counter=80' >> ./arch/x86/include/asm/atomic.h:200: Error: no such instruction: >> `lock_prefix cmpxchgl %ecx,(%rdx)' >> ./arch/x86/include/asm/refcount.h:109: Error: no such instruction: >> `refcount_error counter="(%rdx)"' >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 1528(%rbx)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="1528(%rbx)"' >> ./arch/x86/include/asm/jump_label.h:23: Error: no such instruction: >> `static_branch_nop l_yes=".L61"key="descriptor.66372+40"branch="0"' >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 1528(%rdi)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="1528(%rdi)"' >> ./arch/x86/include/asm/jump_label.h:23: Error: no such instruction: >> `static_branch_nop l_yes=".L80"key="descriptor.66372+40"branch="0"' >> Assembler messages: >> Error: can't open arch/x86/kernel/macros.s for reading: No such file or >> directory >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 4(%rdi)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="4(%rdi)"' >> ./arch/x86/include/asm/jump_label.h:23: Error: no such instruction: >> `static_branch_nop l_yes=".L6"key="descriptor.67356+40"branch="0"' >> ./arch/x86/include/asm/jump_label.h:23: Error: no such instruction: >> `static_branch_nop l_yes=".L32"key="descriptor.67420+40"branch="0"' >> ./arch/x86/include/asm/refcount.h:65: Error: no such instruction: >> `lock_prefix incl 4(%rdi)' >> ./arch/x86/include/asm/refcount.h:66: Error: no such instruction: >> `refcount_check_lt_zero counter="4(%rdi)"' >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 4(%rdi)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="4(%rdi)"' >> /var/lib/dkms/wireguard/0.0.20181119/build/device.c:404: Error: no such >> instruction: `asm_bug ins=".byte 0x0f, 0x0b"file=.LC7 line=404 flags=2305 >> size=12' >> /var/lib/dkms/wireguard/0.0.20181119/build/device.c:404: Error: no such >> instruction: `annotate_reachable counter=163' >> ./arch/x86/include/asm/bitops.h:76: Error: no such instruction: `lock_prefix >> orb $32,328(%rax)' >> make[1]: *** [scripts/Makefile.build:293: >> /var/lib/dkms/wireguard/0.0.20181119/build/peer.o] Error 1 >> make[1]: *** [scripts/Makefile.build:293: >> /var/lib/dkms/wireguard/0.0.20181119/build/device.o] Error 1 >> Assembler messages: >> Error: can't open arch/x86/kernel/macros.s for reading: No such file or >> directory >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 680(%rbx)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="680(%rbx)"' >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 680(%rbx)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="680(%rbx)"' >> ./arch/x86/include/asm/atomic.h:200: Error: no such instruction: >> `lock_prefix cmpxchgl %ecx,(%rdx)' >> ./arch/x86/include/asm/refcount.h:109: Error: no such instruction: >> `refcount_error counter="(%rdx)"' >> ./arch/x86/include/asm/refcount.h:90: Error: no such instruction: >> `lock_prefix decl 680(%rbx)' >> ./arch/x86/include/asm/refcount.h:91: Error: no such instruction: >> `refcount_check_lt_zero counter="680(%rbx)"' >> ./arch/x86/include/asm/atomic64_64.h:160: Error: no such instruction: >> `lock_prefix xaddq %rax,keypair_counter(%rip)' >> make[1]: *** [scripts/Makefile.build:293: >> /var/lib/dkms/wireguard/0.0.20181119/build/noise.o] Error 1 >> make: *** [Makefile:1565: >> _module_/var/lib/dkms/wireguard/0.0.20181119/build] Error 2 >> make: Leaving directory '/usr/src/linux-headers-4.20.0-rc4' >> > > > _______________________________________________ > WireGuard mailing list > WireGuard@lists.zx2c4.com > https://lists.zx2c4.com/mailman/listinfo/wireguard _______________________________________________ WireGuard mailing list WireGuard@lists.zx2c4.com https://lists.zx2c4.com/mailman/listinfo/wireguard