After attempting to build the r8168 module against kernel 3.3.0, the build fails with the following errors: make[1]: Entering directory `/usr/src/linux-3.3.0-gentoo' CC [M] /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.o CC [M] /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_asf.o CC [M] /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/rtl_eeprom.o CC [M] /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/rtltool.o /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2235:2: error: unknown field ���get_rx_csum��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2235:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2236:2: error: unknown field ���set_rx_csum��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2236:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2237:2: error: unknown field ���get_tx_csum��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2237:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2238:2: error: unknown field ���set_tx_csum��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2238:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2239:2: error: unknown field ���get_sg��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2239:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2240:2: error: unknown field ���set_sg��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2240:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2242:2: error: unknown field ���get_tso��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2242:14: error: ���ethtool_op_get_tso��� undeclared here (not in a function) /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2243:2: error: unknown field ���set_tso��� specified in initializer /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:2243:14: error: ���ethtool_op_set_tso��� undeclared here (not in a function) /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:12811:2: warning: initialization from incompatible pointer type /var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.c:12812:2: warning: initialization from incompatible pointer type make[2]: *** [/var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src/r8168_n.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [_module_/var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00/src] Error 2 make[1]: Leaving directory `/usr/src/linux-3.3.0-gentoo' make: *** [modules] Error 2 * ERROR: net-misc/r8168-8.028.00 failed (compile phase): * emake failed * * If you need support, post the output of 'emerge --info =net-misc/r8168-8.028.00', * the complete build log and the output of 'emerge -pqv =net-misc/r8168-8.028.00'. * The complete build log is located at '/var/log/portage/net-misc:r8168-8.028.00:20120331-012753.log'. * The ebuild environment file is located at '/var/tmp/portage/net-misc/r8168-8.028.00/temp/environment'. * S: '/var/tmp/portage/net-misc/r8168-8.028.00/work/r8168-8.028.00' Reproducible: Always Steps to Reproduce: 1. Install gentoo-sources-3.3.0 2. Emerge r8168 3. Watch it fail :) http://code.google.com/p/r8168/issues/detail?id=9 describes the issue and a fix here. As the fix appears to be with the package and not ebuild or Gentoo, potentially it's not viable to fix it via Gentoo's bug process. Lack of this module = no network on my box unfortunately.
The ebuild could still do a kernel version check and bail out early.
(In reply to comment #1) > The ebuild could still do a kernel version check and bail out early. The issue is that some callbacks that were part of a depreciated kernel interface that Linux 3.3 removed. Reimplementing them with the new interface would require more work than simply commenting them out (or using preprocessor directives). It is fairly easy to patch the module to build against Linux 3.3.0, although doing that will disable some functionality. I did it manually on my system, although I did not have time then to file a bug report with a proper patch. I also don't recall exactly what functionality this disabled, but at the time, I concluded that I did not need it. Please ping me in IRC if you have any questions. I am changing the status of this issue to confirmed.
Created attachment 307579 [details, diff] Disable use of deprecated interface that was removed in Linux 3.3.0 This was enough of an annoyance that I decided to revisit it and write a patch. This disables netdev functionality that used an older interface that had been removed from Linux 3.3.0. Note that this is only a partial patch. A proper patch would reimplement this functionality using the same interface. I don't use this functionality, so I do not plan to be the one that does that.
> Note that this is only a partial patch. A proper patch would reimplement > this functionality using the same interface. I don't use this functionality, > so I do not plan to be the one that does that. To be clear, I mean using the new interface.
Added to CVS