[Bug 1993274] Re: [SRU] Fix compilation errors on 5.19

Lukas Märdian 1993274 at bugs.launchpad.net
Thu Nov 17 15:23:48 UTC 2022


** Also affects: licheerv-rtl8723ds-dkms (Ubuntu Jammy)
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to licheerv-rtl8723ds-dkms in
Ubuntu.
https://bugs.launchpad.net/bugs/1993274

Title:
  [SRU] Fix compilation errors on 5.19

Status in licheerv-rtl8723ds-dkms package in Ubuntu:
  Fix Released
Status in licheerv-rtl8723ds-dkms source package in Jammy:
  New
Status in licheerv-rtl8723ds-dkms source package in Kinetic:
  Fix Committed
Status in licheerv-rtl8723ds-dkms source package in Lunar:
  Fix Released

Bug description:
  [ Impact ]

  This dkms package builds the driver on the host and it fails to
  compile on 5.19 kernels with the following errors:

  /home/itrue/host/git/riscv/sipeed-lichee-kernel-snap/parts/wlan-driver/build/rtl8723ds-dkms/5.1.1.5/build/8723ds/os_dep/linux/ioctl_cfg80211.c:6821:20: error: initialization of ‘int (*)(struct wiphy *, struct net_device *, unsigned int)’ from incompatible pointer type ‘int (*)(struct wiphy *, struct net_device *)’ [-Werror=incompatible-pointer-types]
   6821 |         .stop_ap = cfg80211_rtw_stop_ap,
        |                    ^~~~~~~~~~~~~~~~~~~~
  /home/itrue/host/git/riscv/sipeed-lichee-kernel-snap/parts/wlan-driver/build/rtl8723ds-dkms/5.1.1.5/build/8723ds/os_dep/linux/ioctl_cfg80211.c:6821:20: note: (near initialization for ‘rtw_cfg80211_ops.stop_ap’)
  /home/itrue/host/git/riscv/sipeed-lichee-kernel-snap/parts/wlan-driver/build/rtl8723ds-dkms/5.1.1.5/build/8723ds/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_wdev_unregister’:
  /home/itrue/host/git/riscv/sipeed-lichee-kernel-snap/parts/wlan-driver/build/rtl8723ds-dkms/5.1.1.5/build/8723ds/os_dep/linux/ioctl_cfg80211.c:7052:17: error: ‘struct wireless_dev’ has no member named ‘current_bss’
   7052 |         if (wdev->current_bss) {
        |                 ^~

  We need to backport this fix as the 5.19 linux kernel for this board
  is in proposed and will finally migrate after the release.

  
  [ Test Plan ]

  $ sudo apt install licheerv-rtl8723ds-dkms
  Selecting previously unselected package licheerv-rtl8723ds-dkms.
  (Reading database ... 112897 files and directories currently installed.)
  Preparing to unpack licheerv-rtl8723ds-dkms_1.0-0ubuntu2~ppa0_riscv64.deb ...
  Unpacking licheerv-rtl8723ds-dkms (1.0-0ubuntu2~ppa0) ...
  Setting up licheerv-rtl8723ds-dkms (1.0-0ubuntu2~ppa0) ...
  Loading new licheerv-rtl8723ds-1.0 DKMS files...
  Building for 5.19.0-1003-allwinner
  Building initial module for 5.19.0-1003-allwinner

  Done.

  8723ds.ko:
  Running module version sanity check.
   - Original module
     - No original module exists within this kernel
   - Installation
     - Installing to /lib/modules/5.19.0-1003-allwinner/updates/dkms/
  depmod...........................

  The build of the module will take quite some time (more than 1hour..).

  $ sudo ip link set dev wlan0 up

  And finally use the following netplan configuration to connect to your
  AP (to store at /etc/netplan/wifi.yaml for example):

  network:
   version: 2
   renderer: networkd
   wifis:
     wlan0:
       dhcp4: yes
       dhcp6: yes
       access-points:
         "YOUR_SSID":
           password: "YOUR_PASSWORD"

  $ sudo netplan apply

  Finally, we should be connected to the AP:

  $ ip a
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group defaul0
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
      inet6 ::1/128 scope host
         valid_lft forever preferred_lft forever
  2: usb0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOW0
      link/ether ae:12:05:64:8e:2c brd ff:ff:ff:ff:ff:ff
  3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group def0
      link/ether 34:20:03:2a:0d:0c brd ff:ff:ff:ff:ff:ff
      inet 192.168.1.28/24 metric 600 brd 192.168.1.255 scope global dynamic wlan0
         valid_lft 86393sec preferred_lft 86393sec
      inet6 fe80::3620:3ff:fe2a:d0c/64 scope link
         valid_lft forever preferred_lft forever

  [ Where problems could occur ]

  One part of the fix is straightforward: it is the addition of a new parameter in a callback.
  The other part is based on the upstream commit that removed "current_bss" field, there may be an oversight/misunderstanding in how to fix this and then the behaviour of the driver might in that particular case that I don't know how to trigger.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/licheerv-rtl8723ds-dkms/+bug/1993274/+subscriptions




More information about the foundations-bugs mailing list