Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 242185 Details for
Bug 331961
net-wireless/ndiswrapper-1.56 doesn't compile with kernel 2.6.35
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
compatibility patch for 2.6.35
ndiswrapper-1.56-2.6.35.patch (text/plain), 3.29 KB, created by
Bartosz Brachaczek
on 2010-08-09 23:29:25 UTC
(
hide
)
Description:
compatibility patch for 2.6.35
Filename:
MIME Type:
Creator:
Bartosz Brachaczek
Created:
2010-08-09 23:29:25 UTC
Size:
3.29 KB
patch
obsolete
>Index: driver/wrapndis.c >=================================================================== >--- driver/wrapndis.c (revision 2723) >+++ driver/wrapndis.c (working copy) >@@ -950,20 +950,34 @@ static void set_multicast_list(struct nd > packet_filter |= NDIS_PACKET_TYPE_PROMISCUOUS | > NDIS_PACKET_TYPE_ALL_LOCAL; > } else if (net_dev->flags & IFF_ALLMULTI || >- net_dev->mc_count > wnd->multicast_size) { >+ netdev_mc_count(net_dev) > wnd->multicast_size) { > packet_filter |= NDIS_PACKET_TYPE_ALL_MULTICAST; > TRACE2("0x%08x", packet_filter); >- } else if (net_dev->mc_count > 0) { >+ } else if (netdev_mc_count(net_dev) > 0) { > int i, size; > char *buf; >+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) >+ struct netdev_hw_addr *ha; >+#else > struct dev_mc_list *mclist; >- size = min(wnd->multicast_size, net_dev->mc_count); >- TRACE2("%d, %d", wnd->multicast_size, net_dev->mc_count); >+#endif >+ size = min(wnd->multicast_size, netdev_mc_count(net_dev)); >+ TRACE2("%d, %d", wnd->multicast_size, netdev_mc_count(net_dev)); > buf = kmalloc(size * ETH_ALEN, GFP_KERNEL); > if (!buf) { > WARNING("couldn't allocate memory"); > EXIT2(return); > } >+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) >+ i = 0; >+ netdev_for_each_mc_addr(ha, net_dev) { >+ if (i >= size) >+ break; >+ memcpy(buf + i * ETH_ALEN, ha->addr, ETH_ALEN); >+ TRACE2(MACSTRSEP, MAC2STR(ha->addr)); >+ i++; >+ } >+#else > mclist = net_dev->mc_list; > for (i = 0; i < size && mclist; mclist = mclist->next) { > if (mclist->dmi_addrlen != ETH_ALEN) >@@ -972,6 +986,7 @@ static void set_multicast_list(struct nd > TRACE2(MACSTRSEP, MAC2STR(mclist->dmi_addr)); > i++; > } >+#endif > res = mp_set(wnd, OID_802_3_MULTICAST_LIST, buf, i * ETH_ALEN); > if (res == NDIS_STATUS_SUCCESS && i > 0) > packet_filter |= NDIS_PACKET_TYPE_MULTICAST; >Index: driver/usb.c >=================================================================== >--- driver/usb.c (revision 2723) >+++ driver/usb.c (working copy) >@@ -191,7 +191,7 @@ static void wrap_free_urb(struct urb *ur > if (wrap_urb->flags & WRAP_URB_COPY_BUFFER) { > USBTRACE("freeing DMA buffer for URB: %p %p", > urb, urb->transfer_buffer); >- usb_buffer_free(IRP_WRAP_DEVICE(irp)->usb.udev, >+ usb_free_coherent(IRP_WRAP_DEVICE(irp)->usb.udev, > urb->transfer_buffer_length, > urb->transfer_buffer, urb->transfer_dma); > } >@@ -304,7 +304,7 @@ static struct urb *wrap_alloc_urb(struct > #endif > )) { > urb->transfer_buffer = >- usb_buffer_alloc(wd->usb.udev, buf_len, alloc_flags, >+ usb_alloc_coherent(wd->usb.udev, buf_len, alloc_flags, > &urb->transfer_dma); > if (!urb->transfer_buffer) { > WARNING("couldn't allocate dma buf"); >Index: driver/ntoskernel.h >=================================================================== >--- driver/ntoskernel.h (revision 2723) >+++ driver/ntoskernel.h (working copy) >@@ -324,6 +324,12 @@ typedef u32 pm_message_t; > kmem_cache_create(name, size, align, flags, NULL) > #endif > >+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,34) >+#define netdev_mc_count(dev) ((dev)->mc_count) >+#define usb_alloc_coherent(dev, size, mem_flags, dma) (usb_buffer_alloc((dev), (size), (mem_flags), (dma))) >+#define usb_free_coherent(dev, size, addr, dma) (usb_buffer_free((dev), (size), (addr), (dma))) >+#endif >+ > #include "winnt_types.h" > #include "ndiswrapper.h" > #include "pe_linker.h"
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 331961
: 242185