Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=wipv.git;a=commitdiff;h=e5b6ec60aea4f77e6f1905b19d5fc9a3253f55b5

commit e5b6ec60aea4f77e6f1905b19d5fc9a3253f55b5
Author: Miklos Vajna <vmik...@frugalware.org>
Date:   Tue Aug 3 00:24:32 2010 +0200

r8168-8.018.00-3-i686

- add kernel-2.6.35.patch

diff --git a/source/network-extra/r8168/FrugalBuild 
b/source/network-extra/r8168/FrugalBuild
index a7ea9da..a3257944 100644
--- a/source/network-extra/r8168/FrugalBuild
+++ b/source/network-extra/r8168/FrugalBuild
@@ -4,16 +4,18 @@

pkgname=r8168
pkgver=8.018.00
-pkgrel=2
+pkgrel=3
Finclude kernel-module
pkgdesc="Realtek driver for RTL8111/RTL8168 cards."
url="http://www.realtek.com.tw";
groups=('network-extra')
archs=('i686' 'x86_64')
up2date="Flasttar http://code.google.com/p/arcon/downloads/list";
-source=(http://arcon.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2 
README.Frugalware)
+source=(http://arcon.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2 
README.Frugalware \
+       kernel-2.6.35.patch)
sha1sums=('9bd1502cf45bf9646511705d55f8824e4a0b26e2' \
-          'e13c36b76076d097a2dc9696a24024f816e8b3e2')
+          'e13c36b76076d097a2dc9696a24024f816e8b3e2' \
+          'f2edd5c54d7fa707de21718c9638f934054cb685')

build() {
unset MAKEFLAGS
diff --git a/source/network-extra/r8168/kernel-2.6.35.patch 
b/source/network-extra/r8168/kernel-2.6.35.patch
new file mode 100644
index 0000000..51226d3
--- /dev/null
+++ b/source/network-extra/r8168/kernel-2.6.35.patch
@@ -0,0 +1,31 @@
+diff --git a/src/r8168_n.c b/src/r8168_n.c
+index e300257..03e5990 100644
+--- a/src/r8168_n.c
++++ b/src/r8168_n.c
+@@ -8916,20 +8916,21 @@ rtl8168_set_rx_mode(struct net_device *dev)
+                   AcceptBroadcast | AcceptMulticast | AcceptMyPhys |
+                   AcceptAllPhys;
+               mc_filter[1] = mc_filter[0] = 0xffffffff;
+-      } else if ((dev->mc_count > multicast_filter_limit)
++      } else if ((netdev_mc_count(dev) > multicast_filter_limit)
+                  || (dev->flags & IFF_ALLMULTI)) {
+               /* Too many to filter perfectly -- accept all multicasts. */
+               rx_mode = AcceptBroadcast | AcceptMulticast | AcceptMyPhys;
+               mc_filter[1] = mc_filter[0] = 0xffffffff;
+       } else {
+-              struct dev_mc_list *mclist;
++              struct netdev_hw_addr *ha;
+               rx_mode = AcceptBroadcast | AcceptMyPhys;
+               mc_filter[1] = mc_filter[0] = 0;
+-              for (i = 0, mclist = dev->mc_list; mclist && i < dev->mc_count;
+-                   i++, mclist = mclist->next) {
+-                      int bit_nr = ether_crc(ETH_ALEN, mclist->dmi_addr) >> 
26;
++              i = 0;
++              netdev_for_each_mc_addr(ha, dev) {
++                      int bit_nr = ether_crc(ETH_ALEN, ha->addr) >> 26;
+                       mc_filter[bit_nr >> 5] |= 1 << (bit_nr & 31);
+                       rx_mode |= AcceptMulticast;
++                      i++;
+               }
+       }
+
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to