Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 780048

Summary: net-misc/ena-driver-2.2.3-r1 - /.../ena_netdev.c: error: implicit declaration of function convert_to_xdp_frame
Product: Gentoo Linux Reporter: Toralf Förster <toralf>
Component: Current packagesAssignee: Andreas K. Hüttel <dilfridge>
Status: CONFIRMED ---    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge-info.txt
emerge-history.txt
environment
etc.portage.tar.bz2
net-misc:ena-driver-2.2.3-r1:20210404-185425.log
updated ebuild to 2.5.0-r1 with dodoc adjusted.

Description Toralf Förster gentoo-dev 2021-04-04 18:55:32 UTC
      | 
/var/tmp/portage/net-misc/ena-driver-2.2.3-r1/work/amzn-drivers-ena_linux_2.2.3/kernel/linux/ena/ena_netdev.c: In function ‘ena_xdp_tx_map_buff’:
/var/tmp/portage/net-misc/ena-driver-2.2.3-r1/work/amzn-drivers-ena_linux_2.2.3/kernel/linux/ena/ena_netdev.c:303:18: error: implicit declaration of function ‘convert_to_xdp_frame’; did you mean ‘xdp_convert_zc_to_xdp_frame’? [-Werror=implicit-function-declaration]
  303 |  tx_info->xdpf = convert_to_xdp_frame(xdp);
      |                  ^~~~~~~~~~~~~~~~~~~~
      |                  xdp_convert_zc_to_xdp_frame

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1_desktop_systemd-20210327-175744

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-7.3.1
 [2] x86_64-pc-linux-gnu-10.2.0 *
clang version 11.1.0
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/11/bin
/usr/lib/llvm/11
11.1.0
Python 3.8.9
Available Ruby profiles:
  [1]   ruby26 (with Rubygems)
  [2]   ruby30 (with Rubygems) *
Available Rust versions:
  [1]   rust-bin-1.50.0
  [2]   rust-1.51.0 *
The following VMs are available for generation-2:
1)	IcedTea JDK 3.18.0 [icedtea-8]
*)	AdoptOpenJDK 8.282_p08 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   icedtea-8 
  [2]   openjdk-bin-8  system-vm

The Glorious Glasgow Haskell Compilation System, version 8.10.4

  timestamp(s) of HEAD at this tinderbox image:
/var/db/repos/gentoo	Sun Apr  4 18:05:56 UTC 2021

emerge -qpvO net-misc/ena-driver
[ebuild  N    ] net-misc/ena-driver-2.2.3-r1  USE="-dist-kernel"
Comment 1 Toralf Förster gentoo-dev 2021-04-04 18:55:33 UTC
Created attachment 697368 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2021-04-04 18:55:35 UTC
Created attachment 697371 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2021-04-04 18:55:36 UTC
Created attachment 697374 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2021-04-04 18:55:37 UTC
Created attachment 697377 [details]
etc.portage.tar.bz2
Comment 5 Toralf Förster gentoo-dev 2021-04-04 18:55:38 UTC
Created attachment 697380 [details]
net-misc:ena-driver-2.2.3-r1:20210404-185425.log
Comment 6 Benjamin Southall 2021-06-04 04:03:24 UTC
Created attachment 713496 [details]
updated ebuild to 2.5.0-r1 with dodoc adjusted.

I can confirm this issue, and found it was fixed upstream by https://github.com/amzn/amzn-drivers/blob/a803fb53d6333af52305de9576364ee01ce298a2/kernel/linux/ena/ena_netdev.c#L280, and more generally https://github.com/amzn/amzn-drivers/commit/a803fb53d6333af52305de9576364ee01ce298a2, which adds support for kernel 5.8 and greater as per https://github.com/amzn/amzn-drivers/commit/a803fb53d6333af52305de9576364ee01ce298a2#diff-d9eb99f5b7fb107c8833511246eabc99c68269e01ba3f67b7ae9348342589250R46 

Giving the Kernel version in Toralf's emerge-info is 5.11, this is why it occurs.

The simple fix would to be bump the ebuild to at least 2.2.11, the other fix is to add a check to existing ebuild warning that this version isn't compatible with 5.8 or greater.

The fix I am testing locally is to bump this ebuild to the latest version 2.5.0 but that also requires adjusting the relevant dodoc line for the README as they named the README.RST instead of README.

Attached is the ebuild I am using.