Created attachment 472480 [details] net-misc/r8168-8.044.02: add support for kernel 4.11 see also: https://bugs.gentoo.org/show_bug.cgi?id=617196 https://github.com/maurossi/linux/commit/f131eaf5b1af426b5f8ad3deec15bba7697b42e5 linux-4.11.patch diff --git linux-4.11.0-gentoo.orig/lib/refcount.c linux-4.11.0-gentoo/lib/refcount.c --- linux-4.11.0-gentoo.orig/lib/refcount.c +++ linux-4.11.0-gentoo/lib/refcount.c @@ -62,13 +62,13 @@ return true; } -EXPORT_SYMBOL_GPL(refcount_add_not_zero); +EXPORT_SYMBOL(refcount_add_not_zero); void refcount_add(unsigned int i, refcount_t *r) { WARN_ONCE(!refcount_add_not_zero(i, r), "refcount_t: addition on 0; use-after-free.\n"); } -EXPORT_SYMBOL_GPL(refcount_add); +EXPORT_SYMBOL(refcount_add); /* * Similar to atomic_inc_not_zero(), will saturate at UINT_MAX and WARN. @@ -101,7 +101,7 @@ return true; } -EXPORT_SYMBOL_GPL(refcount_inc_not_zero); +EXPORT_SYMBOL(refcount_inc_not_zero); /* * Similar to atomic_inc(), will saturate at UINT_MAX and WARN. @@ -113,7 +113,7 @@ { WARN_ONCE(!refcount_inc_not_zero(r), "refcount_t: increment on 0; use-after-free.\n"); } -EXPORT_SYMBOL_GPL(refcount_inc); +EXPORT_SYMBOL(refcount_inc); bool refcount_sub_and_test(unsigned int i, refcount_t *r) { @@ -138,7 +138,7 @@ return !new; } -EXPORT_SYMBOL_GPL(refcount_sub_and_test); +EXPORT_SYMBOL(refcount_sub_and_test); /* * Similar to atomic_dec_and_test(), it will WARN on underflow and fail to @@ -152,7 +152,7 @@ { return refcount_sub_and_test(1, r); } -EXPORT_SYMBOL_GPL(refcount_dec_and_test); +EXPORT_SYMBOL(refcount_dec_and_test); /* * Similar to atomic_dec(), it will WARN on underflow and fail to decrement @@ -166,7 +166,7 @@ { WARN_ONCE(refcount_dec_and_test(r), "refcount_t: decrement hit 0; leaking memory.\n"); } -EXPORT_SYMBOL_GPL(refcount_dec); +EXPORT_SYMBOL(refcount_dec); /* * No atomic_t counterpart, it attempts a 1 -> 0 transition and returns the @@ -183,7 +183,7 @@ { return atomic_cmpxchg_release(&r->refs, 1, 0) == 1; } -EXPORT_SYMBOL_GPL(refcount_dec_if_one); +EXPORT_SYMBOL(refcount_dec_if_one); /* * No atomic_t counterpart, it decrements unless the value is 1, in which case @@ -217,7 +217,7 @@ return true; } -EXPORT_SYMBOL_GPL(refcount_dec_not_one); +EXPORT_SYMBOL(refcount_dec_not_one); /* * Similar to atomic_dec_and_mutex_lock(), it will WARN on underflow and fail @@ -240,7 +240,7 @@ return true; } -EXPORT_SYMBOL_GPL(refcount_dec_and_mutex_lock); +EXPORT_SYMBOL(refcount_dec_and_mutex_lock); /* * Similar to atomic_dec_and_lock(), it will WARN on underflow and fail to @@ -263,5 +263,5 @@ return true; } -EXPORT_SYMBOL_GPL(refcount_dec_and_lock); +EXPORT_SYMBOL(refcount_dec_and_lock);
Created attachment 472482 [details, diff] Sorry for firs, correct is this one. diff a/src/r8168.h b/src/r8168.h --- a/src/r8168.h 2017-01-11 14:19:18.000000000 +0800 +++ b/src/r8168.h 2017-05-02 21:18:54.541652414 +0800 @@ -36,6 +36,10 @@ #include "r8168_realwow.h" #include "r8168_fiber.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)) +#include <linux/sched/signal.h> +#endif + #if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0) #if defined(skb_vlan_tag_present) && !defined(vlan_tx_tag_present) #define vlan_tx_tag_present skb_vlan_tag_present diff a/src/r8168_n.c b/src/r8168_n.c --- a/src/r8168_n.c 2017-01-11 14:18:43.000000000 +0800 +++ b/src/r8168_n.c 2017-05-02 21:20:57.488644205 +0800 @@ -25732,7 +25732,9 @@ if (rtl8168_rx_vlan_skb(tp, desc, skb) < 0) rtl8168_rx_skb(tp, skb); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(4, 10, 0)) dev->last_rx = jiffies; +#endif RTLDEV->stats.rx_bytes += pkt_size; RTLDEV->stats.rx_packets++; }
Comment on attachment 472480 [details] net-misc/r8168-8.044.02: add support for kernel 4.11 diff a/src/r8168.h b/src/r8168.h --- a/src/r8168.h 2017-01-11 14:19:18.000000000 +0800 +++ b/src/r8168.h 2017-05-02 21:18:54.541652414 +0800 @@ -36,6 +36,10 @@ #include "r8168_realwow.h" #include "r8168_fiber.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)) +#include <linux/sched/signal.h> +#endif + #if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0) #if defined(skb_vlan_tag_present) && !defined(vlan_tx_tag_present) #define vlan_tx_tag_present skb_vlan_tag_present diff a/src/r8168_n.c b/src/r8168_n.c --- a/src/r8168_n.c 2017-01-11 14:18:43.000000000 +0800 +++ b/src/r8168_n.c 2017-05-02 21:20:57.488644205 +0800 @@ -25732,7 +25732,9 @@ if (rtl8168_rx_vlan_skb(tp, desc, skb) < 0) rtl8168_rx_skb(tp, skb); +#if (LINUX_VERSION_CODE <= KERNEL_VERSION(4, 10, 0)) dev->last_rx = jiffies; +#endif RTLDEV->stats.rx_bytes += pkt_size; RTLDEV->stats.rx_packets++; }
That's great, thanks!