tomaspinho / rtl8821ce

Other
1.58k stars 412 forks source link

Compilation against kernel 5.15 fails #244

Closed IvarWithoutBones closed 2 years ago

IvarWithoutBones commented 2 years ago

Kernel 5.15 removes net/ipx.h, which breaks compilation:

/build/source/core/rtw_br_ext.c:20:11: fatal error: net/ipx.h: No such file or directory
   20 |  #include <net/ipx.h> // https://github.com/tomaspinho/rtl8821ce/blob/897e7c4c15dd5a0a569745dc223d969a26ff5bfc/core/rtw_br_ext.c#L20
      |           ^~~~~~~~~~~

Replacing it with <netipx/ipx.h> from glibc results in the following error:

In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:42:18: error: conflicting types for 'loff_t'
   42 | typedef __loff_t loff_t;
      |                  ^~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:46:26: note: previous declaration of 'loff_t' was here
   46 | typedef __kernel_loff_t  loff_t;
      |                          ^~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:59:17: error: conflicting types for 'dev_t'
   59 | typedef __dev_t dev_t;
      |                 ^~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:16:25: note: previous declaration of 'dev_t' was here
   16 | typedef __kernel_dev_t  dev_t;
      |                         ^~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:74:19: error: conflicting types for 'nlink_t'
   74 | typedef __nlink_t nlink_t;
      |                   ^~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:20:15: note: previous declaration of 'nlink_t' was here
   20 | typedef u32   nlink_t;
      |               ^~~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:130,
                 from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/bits/types/timer_t.h:7:19: error: conflicting types for 'timer_t'
    7 | typedef __timer_t timer_t;
      |                   ^~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:26:26: note: previous declaration of 'timer_t' was here
   26 | typedef __kernel_timer_t timer_t;
      |                          ^~~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:155,
                 from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/bits/stdint-intn.h:27:19: error: conflicting types for 'int64_t'
   27 | typedef __int64_t int64_t;
      |                   ^~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:109:15: note: previous declaration of 'int64_t' was here
  109 | typedef s64   int64_t;
      |               ^~~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:161:20: error: conflicting types for 'u_int64_t'
  161 | typedef __uint64_t u_int64_t;
      |                    ^~~~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:108:15: note: previous declaration of 'u_int64_t' was here
  108 | typedef u64   u_int64_t;
      |               ^~~~~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/select.h:33,
                 from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:179,
                 from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/bits/types/sigset_t.h:7:20: error: conflicting types for 'sigset_t'
    7 | typedef __sigset_t sigset_t;
      |                    ^~~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/uapi/linux/signal.h:5,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/signal_types.h:10,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/signal.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/sched/signal.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/rcuwait.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/percpu-rwsem.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/fs.h:33,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/highmem.h:5,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/bvec.h:10,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:17,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/arch/x86/include/asm/signal.h:25:3: note: previous declaration of 'sigset_t' was here
   25 | } sigset_t;
      |   ^~~~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:179,
                 from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/select.h:70:5: error: conflicting types for 'fd_set'
   70 |   } fd_set;
      |     ^~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:15:26: note: previous declaration of 'fd_set' was here
   15 | typedef __kernel_fd_set  fd_set;
      |                          ^~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:21,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/sys/types.h:192:20: error: conflicting types for 'blkcnt_t'
  192 | typedef __blkcnt_t blkcnt_t;  /* Type to count number of disk blocks.  */
      |                    ^~~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:126:13: note: previous declaration of 'blkcnt_t' was here
  126 | typedef u64 blkcnt_t;
      |             ^~~~~~~~
In file included from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/stdint.h:37,
                 from /nix/store/a2w3l1m75908yd05a0h40vnrzvxfd0gd-gcc-10.3.0/lib/gcc/x86_64-unknown-linux-gnu/10.3.0/include/stdint.h:9,
                 from /nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/netipx/ipx.h:22,
                 from /build/source/core/rtw_br_ext.c:20:
/nix/store/f1r94qx7a8m8iz7fxvlq655gbawql7xf-glibc-2.33-50-dev/include/bits/stdint-uintn.h:27:20: error: conflicting types for 'uint64_t'
   27 | typedef __uint64_t uint64_t;
      |                    ^~~~~~~~
In file included from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/limits.h:6,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/kernel.h:7,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/skbuff.h:13,
                 from /nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/if_arp.h:22,
                 from /build/source/core/rtw_br_ext.c:18:
/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/include/linux/types.h:107:15: note: previous declaration of 'uint64_t' was here
  107 | typedef u64   uint64_t;
      |               ^~~~~~~~
/build/source/core/rtw_br_ext.c: In function 'nat25_db_handle':
/build/source/core/rtw_br_ext.c:956:42: error: invalid use of undefined type 'struct ipxhdr'
  956 |     if (!memcmp(skb->data + ETH_ALEN, ipx->ipx_source.node, ETH_ALEN)) {
      |                                          ^~
/build/source/core/rtw_br_ext.c:981:42: error: invalid use of undefined type 'struct ipxhdr'
  981 |     if (!memcmp(skb->data + ETH_ALEN, ipx->ipx_source.node, ETH_ALEN)) {
      |                                          ^~
/build/source/core/rtw_br_ext.c:984:69: error: invalid use of undefined type 'struct ipxhdr'
  984 |      __nat25_generate_ipx_network_addr_with_socket(networkAddr, &ipx->ipx_source.net, &ipx->ipx_source.sock);
      |                                                                     ^~
/build/source/core/rtw_br_ext.c:984:91: error: invalid use of undefined type 'struct ipxhdr'
  984 |      __nat25_generate_ipx_network_addr_with_socket(networkAddr, &ipx->ipx_source.net, &ipx->ipx_source.sock);
      |                                                                                           ^~
/build/source/core/rtw_br_ext.c:987:16: error: invalid use of undefined type 'struct ipxhdr'
  987 |      memcpy(ipx->ipx_source.node, GET_MY_HWADDR(priv), ETH_ALEN);
      |                ^~
/build/source/core/rtw_br_ext.c:989:67: error: invalid use of undefined type 'struct ipxhdr'
  989 |      __nat25_generate_ipx_network_addr_with_node(networkAddr, &ipx->ipx_source.net, ipx->ipx_source.node);
      |                                                                   ^~
/build/source/core/rtw_br_ext.c:989:88: error: invalid use of undefined type 'struct ipxhdr'
  989 |      __nat25_generate_ipx_network_addr_with_node(networkAddr, &ipx->ipx_source.net, ipx->ipx_source.node);
      |                                                                                        ^~
/build/source/core/rtw_br_ext.c:998:41: error: invalid use of undefined type 'struct ipxhdr'
  998 |     if (!memcmp(GET_MY_HWADDR(priv), ipx->ipx_dest.node, ETH_ALEN)) {
      |                                         ^~
/build/source/core/rtw_br_ext.c:1001:69: error: invalid use of undefined type 'struct ipxhdr'
 1001 |      __nat25_generate_ipx_network_addr_with_socket(networkAddr, &ipx->ipx_dest.net, &ipx->ipx_dest.sock);
      |                                                                     ^~
/build/source/core/rtw_br_ext.c:1001:89: error: invalid use of undefined type 'struct ipxhdr'
 1001 |      __nat25_generate_ipx_network_addr_with_socket(networkAddr, &ipx->ipx_dest.net, &ipx->ipx_dest.sock);
      |                                                                                         ^~
/build/source/core/rtw_br_ext.c:1006:16: error: invalid use of undefined type 'struct ipxhdr'
 1006 |      memcpy(ipx->ipx_dest.node, skb->data, ETH_ALEN);
      |                ^~
/build/source/core/rtw_br_ext.c:1008:67: error: invalid use of undefined type 'struct ipxhdr'
 1008 |      __nat25_generate_ipx_network_addr_with_node(networkAddr, &ipx->ipx_dest.net, ipx->ipx_dest.node);
      |                                                                   ^~
/build/source/core/rtw_br_ext.c:1008:86: error: invalid use of undefined type 'struct ipxhdr'
 1008 |      __nat25_generate_ipx_network_addr_with_node(networkAddr, &ipx->ipx_dest.net, ipx->ipx_dest.node);
      |                                                                                      ^~
make[2]: *** [/nix/store/k224cw1j25k962r32di7ilyv3g9n81aj-linux-5.15-dev/lib/modules/5.15.0/source/scripts/Makefile.build:277: /build/source/core/rtw_br_ext.o] Error 1

Kernel 5.14 seems to be the latest one without this issue.

buboleck commented 2 years ago

Same on Gentoo with 5.15.

egnappahz commented 2 years ago

I (dirty) fixed this here: https://github.com/egnappahz/rtl8821ce.git

I already submitted a merge request to notice the maintainer

Spixmaster commented 2 years ago

I (dirty) fixed this here: https://github.com/egnappahz/rtl8821ce.git

I already submitted a merge request to notice the maintainer

This works for me without apparent issues so far.

liberodark commented 2 years ago

Me too is fail for kernel 5.15

../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_rf.c: In function ‘dump_txpwr_lmt’:
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_rf.c:765:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
  765 |         if (IS_HARDWARE_TYPE_JAGUAR_AND_JAGUAR2(adapter))
      |         ^~
In file included from /.//build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./include/drv_types.h:60,
                 from ../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_rf.c:17:
/.//build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./include/rtw_debug.h:220:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
  220 |         do {\
      |         ^~
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_rf.c:767:17: note: in expansion of macro ‘RTW_PRINT_SEL’
  767 |                 RTW_PRINT_SEL(sel, "txpwr_lmt_5g_20_40_ref:0x%02x\n", rfctl->txpwr_lmt_5g_20_40_ref);
      |                 ^~~~~~~~~~~~~
  CC [M]  /build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./core/rtw_odm.o
  CC [M]  /build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./core/rtw_rm.o
  CC [M]  /build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./core/rtw_rm_fsm.o
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_mlme.c: In function ‘rtw_drv_scan_by_self’:
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_mlme.c:3161:17: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
 3161 |                 else
      |                 ^~~~
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/rtw_mlme.c:3164:25: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
 3164 |                         goto exit;
      |                         ^~~~
  CC [M]  /build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./core/efuse/rtw_efuse.o
  CC [M]  /build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./os_dep/osdep_service.o
/build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./core/rtw_br_ext.c:20:18: fatal error: net/ipx.h: No such file or directory
   20 |         #include <net/ipx.h>
      |                  ^~~~~~~~~~~
compilation terminated.
make[3]: *** [scripts/Makefile.build:277: /build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./core/rtw_br_ext.o] Error 1
make[3]: *** Waiting for unfinished jobs....
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/efuse/rtw_efuse.c: In function ‘rtw_efuse_analyze’:
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/efuse/rtw_efuse.c:781:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
  781 |                 if (i % 16 == 0)
      |                 ^~
In file included from /.//build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./include/drv_types.h:60,
                 from ../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/efuse/rtw_efuse.c:17:
/.//build/batocera.linux/output/x86_64/build/rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/./include/rtw_debug.h:231:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
  231 |         do {\
      |         ^~
../rtl8821ce-f93db734666f75ebf65e44ceb943c19b598b1647/core/efuse/rtw_efuse.c:783:25: note: in expansion of macro ‘_RTW_PRINT_SEL’
  783 |                         _RTW_PRINT_SEL(RTW_DBGDUMP, "%02X%s"
      |                         ^~~~~~~~~~~~~~
GendryC commented 2 years ago

log file /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/make.log

DKMS make.log for rtl8821ce-v5.5.2_34066.20200325 for kernel 5.15.2-arch1-1 (x86_64) dom 14 nov 2021 15:56:18 CST make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/5.15.2-arch1-1/build M=/var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build modules make[1]: se entra en el directorio '/usr/lib/modules/5.15.2-arch1-1/build' CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_cmd.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_security.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_debug.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_io.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_ioctl_query.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_ioctl_set.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_ieee80211.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_mlme.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_mlme_ext.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_mi.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_wlan_util.o /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_mlme.c: En la función ‘rtw_drv_scan_by_self’: /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_mlme.c:3161:17: aviso: this ‘else’ clause does not guard... [-Wmisleading-indentation] 3161 | else | ^~~~ /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_mlme.c:3164:25: nota: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’ 3164 | goto exit; | ^~~~ CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_vht.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_pwrctrl.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_rf.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_chplan.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_recv.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_sta_mgt.o /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_rf.c: En la función ‘dump_txpwr_lmt’: /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_rf.c:765:9: aviso: this ‘if’ clause does not guard... [-Wmisleading-indentation] 765 | if (IS_HARDWARE_TYPE_JAGUAR_AND_JAGUAR2(adapter)) | ^~ En el fichero incluido desde /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/include/drv_types.h:60, desde /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_rf.c:17: /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/include/rtw_debug.h:220:9: nota: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 220 | do {\ | ^~ /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_rf.c:767:17: nota: en expansión de macro ‘RTW_PRINT_SEL’ 767 | RTW_PRINT_SEL(sel, "txpwr_lmt_5g_20_40_ref:0x%02x\n", rfctl->txpwr_lmt_5g_20_40_ref); | ^~~~~ CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_ap.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/mesh/rtw_mesh.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/mesh/rtw_mesh_pathtbl.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/mesh/rtw_mesh_hwmp.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_xmit.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_p2p.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_rson.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_tdls.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_br_ext.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_iol.o CC [M] /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_sreset.o /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_br_ext.c:20:18: error fatal: net/ipx.h: No existe el fichero o el directorio 20 | #include <net/ipx.h> | ^~~ compilación terminada. make[2]: [scripts/Makefile.build:277: /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build/core/rtw_br_ext.o] Error 1 make[2]: Se espera a que terminen otras tareas.... make[1]: [Makefile:1868: /var/lib/dkms/rtl8821ce/v5.5.2_34066.20200325/build] Error 2 make[1]: se sale del directorio '/usr/lib/modules/5.15.2-arch1-1/build' make: [Makefile:2244: modules] Error 2

vini-fda commented 2 years ago

I (dirty) fixed this here: https://github.com/egnappahz/rtl8821ce.git

I already submitted a merge request to notice the maintainer

I can also confirm this works for me, without any issues AFAIK. I'm on 5.15.2-arch1-1.

archkatze commented 2 years ago

This patch should work: https://www.spinics.net/lists/kernel/msg4044646.html

tomaspinho commented 2 years ago

Fix is now in master.

IvarWithoutBones commented 2 years ago

Can confirm this work perfectly, thanks!