from: Steve Russo <svrusso1@gmail.com> Compiling iwlwifi or alx against 3.4.47 kernel gives redefinition error. Tried using compat-drivers-3.9-rc4-2-su, compat-drivers-3.9-rc2-2-su, and compat-drivers-3.8.3-2-snpu. Does not work from any of them. Patch against compat-drivers-3.9-rc4-2-su follows body. Error: auser@mycomputer:/path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su# make make -C /lib/modules/3.4.47/build M=/path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su modules make[1]: Entering directory `/path/to/home/Dev/Kernel/generic/linux-3.4.47' CC [M] /path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/compat/main.o In file included from /path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/include/linux/compat-2.6.h:71:0, from <command-line>:0: /path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/include/linux/compat-3.8.h:49:32: error: redefinition of ‘kref_get_unless_zero’ In file included from include/linux/kobject.h:24:0, from include/linux/device.h:17, from include/linux/dmaengine.h:24, from include/linux/skbuff.h:31, from include/linux/if_ether.h:134, from include/linux/netdevice.h:29, from /path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/include/linux/compat-2.6.29.h:5, from /path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/include/linux/compat-2.6.h:52, from <command-line>:0: include/linux/kref.h:113:32: note: previous definition of ‘kref_get_unless_zero’ was here make[3]: *** [/path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/compat/main.o] Error 1 make[2]: *** [/path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su/compat] Error 2 make[1]: *** [_module_/path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su] Error 2 make[1]: Leaving directory `/path/to/home/Dev/Kernel/generic/linux-3.4.47' make: *** [modules] Error 2 auser@mycomputer:/path/to/home/Dev/Wired/compat-drivers-3.9-rc4-2-su# Signed-off-by: Steve Russo <svrusso1@gmail.com> --- The following patch against compat-drivers-3.9-rc4-2-su allowed compilation to complete. --- compat-3.8.h.0 2013-05-30 15:57:51.333132738 -0400 +++ compat-3.8.h 2013-05-30 15:59:12.689517900 -0400 @@ -22,6 +22,7 @@ extern void netdev_set_default_ethtool_o extern bool hid_ignore(struct hid_device *); +#ifndef _KREF_H_ /* This backports: * * commit 4b20db3de8dab005b07c74161cb041db8c5ff3a7 @@ -50,6 +51,7 @@ static inline int __must_check kref_get_ { return atomic_add_unless(&kref->refcount, 1, 0); } +#endif /* This backports: *
Please try the new backports releases, compat-drivers is deprecated.
I've tried 3.10.4-1 as well as the latest development release (20130802), and had this issue with kernel 3.6.10 in Fedora 18. I did not have this issue however in Fedora 19 with kernel 3.9.5
(In reply to CSS from comment #3) > I've tried 3.10.4-1 as well as the latest development release (20130802), > and had this issue with kernel 3.6.10 in Fedora 18. I did not have this > issue however in Fedora 19 with kernel 3.9.5 Specifically, I've tried backports 3.10.4-1.
kref_get_unless_zero() was removed in backports-20131122-2, please try that version, that should fix your problem.
This should be fixed in the latest releases.