GoogleCloudPlatform / compute-virtual-ethernet-linux

Compute Engine Virtual Ethernet Linux driver.
Other
71 stars 32 forks source link

v1.4.0 manual installation fails for Azure kernel #51

Closed abhijit-hota closed 5 months ago

abhijit-hota commented 5 months ago

I tried to manually install the gVNIC module on an Azure VM but couldn't install it.

$ curl -fL -o gve_dkms.deb https://github.com/GoogleCloudPlatform/compute-virtual-ethernet-linux/releases/download/v1.4.0/gve-dkms_1.4.0_all.deb

$ sudo apt install ./gve_dkms.deb

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'gve-dkms' instead of './gve_dkms.deb'
gve-dkms is already the newest version (1.4.0).
0 upgraded, 0 newly installed, 0 to remove and 58 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up gve-dkms (1.4.0) ...
Removing old gve-1.4.0 DKMS files...
Deleting module gve-1.4.0 completely from the DKMS tree.
Loading new gve-1.4.0 DKMS files...
Building for 6.5.0-1018-azure
Building for architecture x86_64
Building initial module for 6.5.0-1018-azure
Error! Bad return status for module build on kernel: 6.5.0-1018-azure (x86_64)
Consult /var/lib/dkms/gve/1.4.0/build/make.log for more information.
dpkg: error processing package gve-dkms (--configure):
 installed gve-dkms package post-installation script subprocess returned error exit status 10
Errors were encountered while processing:
 gve-dkms
needrestart is being skipped since dpkg has failed
E: Sub-process /usr/bin/dpkg returned an error code (1)

The output for make.log:

$ cat /var/lib/dkms/gve/1.4.0/build/make.log 

DKMS make.log for gve-1.4.0 for kernel 6.5.0-1018-azure (x86_64)
Sun Apr 14 09:44:13 AM UTC 2024
make -C /lib/modules/6.5.0-1018-azure/build M=$PWD
make[1]: Entering directory '/usr/src/linux-headers-6.5.0-1018-azure'
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: x86_64-linux-gnu-gcc-11 (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
  You are using:           gcc-11 (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
  CC [M]  /var/lib/dkms/gve/1.4.0/build/gve_main.o
/var/lib/dkms/gve/1.4.0/build/gve_main.c: In function ‘gve_napi_poll’:
/var/lib/dkms/gve/1.4.0/build/gve_main.c:301:35: error: void value not ignored as it ought to be
  301 |                 if (reschedule && napi_schedule(napi))
      |                                   ^~~~~~~~~~~~~~~~~~~
/var/lib/dkms/gve/1.4.0/build/gve_main.c: In function ‘gve_drain_page_cache’:
/var/lib/dkms/gve/1.4.0/build/gve_main.c:1287:17: error: implicit declaration of function ‘page_frag_cache_drain’ [-Werror=implicit-function-declaration]
 1287 |                 page_frag_cache_drain(&priv->rx[i].page_cache);
      |                 ^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:251: /var/lib/dkms/gve/1.4.0/build/gve_main.o] Error 1
make[2]: *** [/usr/src/linux-headers-6.5.0-1018-azure/Makefile:2039: /var/lib/dkms/gve/1.4.0/build] Error 2
make[1]: *** [Makefile:234: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.5.0-1018-azure'
make: *** [Makefile:20: default] Error 2

v1.3.4 works fine.

jfraker commented 5 months ago

Thanks for the report! It looks like our release script didn't apply backport patches correctly, I'll re-package and update this issue when I have a new driver drop.

In the mean time, if you need a working driver the installation instructions for installing from source should work.

jfraker commented 5 months ago

Thanks again for the report Abhijit, the .deb has been updated and this issue should be resolved. Feel free to re-open if you run into any issues.

abhijit-hota commented 5 months ago

Thanks @jfraker! Could install it successfully.