ndiswrapper has issues working under kernels 2.6.33 or greater

Bug #582555 reported by Scott Testerman
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Medium
Tim Gardner

Bug Description

This is just a heads-up for the Maverick kernel; please feel free to mark Invalid if the fix is already implemented in the kernel config.

In short, ndiswrapper will require some specific configuration options in order to work properly for kernels 2.6.33 or greater. Full details on the fix are here: http://sourceforge.net/projects/ndiswrapper/forums/forum/323168/topic/3567976

Tags: maverick
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Hi Scott,

Thanks for the heads up. I've examined the details of the fix on the sourceforge forum you linked to. It appears the Maverick kernel already has the kernel config options enabled that are required:

ogasawara@emiko:~/ubuntu-maverick/debian.master/config$ grep -rn "CONFIG_MAC80211=" *
config.common.ports:1810:CONFIG_MAC80211=m
config.common.ubuntu:2207:CONFIG_MAC80211=m

ogasawara@emiko:~/ubuntu-maverick/debian.master/config$ grep -rn "WIRELESS_EXT=" *
config.common.ports:4085:CONFIG_WIRELESS_EXT=y
config.common.ubuntu:4651:CONFIG_WIRELESS_EXT=y

And we also enable a variety of Intel wireless drivers.

So, based on the above information I'm going to go ahead and close this bug as Fix Released for Maverick. However, please be sure to test and verify with the Maverick kernel if and when you are able to. Thanks.

Changed in linux (Ubuntu):
status: New → Fix Released
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Actually re-opening this to track updating to ndiswrapper 1.56

Changed in linux (Ubuntu):
assignee: nobody → Tim Gardner (timg-tpi)
importance: Undecided → Medium
status: Fix Released → In Progress
Revision history for this message
Scott Testerman (scott-testerman) wrote :

Everybody say it with me: Ogasawara rocks.

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Have applied Tim's patch to pull us up to ndiswrapper version 1.56

Changed in linux (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.1 KiB)

This bug was fixed in the package linux - 2.6.34-4.11

---------------
linux (2.6.34-4.11) maverick; urgency=low

  [ Amit Kucheria ]

  * SAUCE: omap: remove calls to usb_nop_xceiv_register from board files
  * [Config] Add support for OMAP-mainline flavour

  [ Andy Whitcroft ]

  * SAUCE: powerpc: fix compile error when ptrace.h is included from
    userspace
    - LP: #583733

  [ Chase Douglas ]

  * Revert "SAUCE: Don't register vga16fb framebuffer if other framebuffers
    are present"
  * Revert "SAUCE: Disable function tracing after hitting __schedule_bug"
  * Revert "SAUCE: drm/i915: don't change DRM configuration when releasing
    load detect pipe"

  [ Kees Cook ]

  * SAUCE: fs: block cross-uid sticky symlinks
  * SAUCE: fs: block hardlinks to non-accessible sources

  [ Koen Kooi ]

  * SAUCE: board-omap3-beagle: add DSS2 support

  [ Leann Ogasawara ]

  * Revert "staging/go7007 -- disable"
  * Revert "[Config] staging/winbond -- disable"
  * Revert "Disable 4MB page tables for Atom, work around errata AAE44"
  * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount"
  * Revert "SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit
    controller"
  * Revert "SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT"
  * Revert "SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros"
  * Revert "SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps"
  * Revert "SAUCE: r8169: disable TSO by default for RTL8111/8168B
    chipsets."
  * Revert "[Upstream] b43: Declare all possible firmware files."
  * Revert "add Breaks: against hardy lvm2"
  * Revert "SAUCE: Guest OS does not recognize a lun with non zero target
    id on Vmware ESX Server"
  * Revert "SAUCE: Catch nonsense keycodes and silently ignore"
  * [Config] Enable CONFIG_ECRYPT_FS=y for ports
  * [Config] Enable CONFIG_USB=y for armel and sparc
  * [Config] Enable CONFIG_SCSI=y for ia64 and sparc
  * [Config] Enable CONFIG_RFKILL=y for ports
  * [Config] Enable CONFIG_ATH9K_DEBUGFS=y
  * [Config] Enable CONFIG_IWMC3200TOP_DEBUGFS=y
  * [Config] Enable CONFIG_RCU_FAST_NO_HZ=y
  * [Config] Enable CONFIG_IWLWIFI_DEVICE_TRACING=y
  * [Config] Enable CONFIG_LIBERTAS_MESH=y
  * [Config] Enable CONFIG_MMC_RICOH_MMC=y
  * [Config] CONFIG_RT2800USB_UNKNOWN=y
  * [Config] Enable CONFIG_VGA_SWITCHEROO=y
  * [Config] Enable CONFIG_CEPH_FS=m
  * [Config] Enable CONFIG_CRYPTO_PCRYPT=m
  * [Config] Enable CONFIG_EEEPC_WMI=m
  * [Config] Enable CONFIG_RT2800PCI=m
  * [Config] Enable CONFIG_SCSI_HPSA=m
  * [Config] Enable CONFIG_VHOST_NET=m
  * [Config] Disable CONFIG_SND_HDA_INPUT_BEEP_MODE by default
    - LP: #582350
  * [Config] Disable CONFIG_SOUND_OSS* and CONFIG_SND_*OSS
    - LP: #579300
  * [Config] Enable CONFIG_PCIEASPM=y
    - LP: #333990
  * [Config] updateconfigs for OMAP flavour

  [ Loïc Minier ]

  * Enable perf tools on armel

  [ Tim Gardner ]

  * SAUCE: Updated ndiswrapper to 1.56
    - LP: #582555
  * [Config] Added virtual flavour
  * [Config] Remove support for sub-flavours
  * [Config] Removed amd64 preempt flavour
  * [Config] updateconfigs, updateportsconfigs after flavour munging
 -- Leann Ogasawara <email address hidden> Tue, 25 May 2010 09:34:5...

Read more...

Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Eric Appleman (erappleman) wrote :

DKMS compilation fails on 2.6.35

DKMS make.log for ndiswrapper-1.56 for kernel 2.6.35-6-generic (i686)
Sun Jun 27 18:28:21 EDT 2010
make: Entering directory `/usr/src/linux-headers-2.6.35-6-generic'
  LD /var/lib/dkms/ndiswrapper/1.56/build/built-in.o
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/crt_exports.h
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/hal_exports.h
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/ndis_exports.h
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/ntoskernel_exports.h
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/ntoskernel_io_exports.h
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/rtl_exports.h
  MKEXPORT /var/lib/dkms/ndiswrapper/1.56/build/usb_exports.h
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/crt.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/hal.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/iw_ndis.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/loader.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/ndis.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/ntoskernel.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/ntoskernel_io.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/pe_linker.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/pnp.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/proc.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/rtl.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/wrapmem.o
  CC [M] /var/lib/dkms/ndiswrapper/1.56/build/wrapndis.o
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c: In function ‘set_multicast_list’:
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:953: error: ‘struct net_device’ has no member named ‘mc_count’
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:956: error: ‘struct net_device’ has no member named ‘mc_count’
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:960: error: ‘struct net_device’ has no member named ‘mc_count’
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:960: warning: type defaults to ‘int’ in declaration of ‘_min2’
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:960: error: ‘struct net_device’ has no member named ‘mc_count’
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:967: error: ‘struct net_device’ has no member named ‘mc_list’
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:968: error: dereferencing pointer to incomplete type
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:969: error: dereferencing pointer to incomplete type
/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.c:971: error: dereferencing pointer to incomplete type
make[1]: *** [/var/lib/dkms/ndiswrapper/1.56/build/wrapndis.o] Error 1
make: *** [_module_/var/lib/dkms/ndiswrapper/1.56/build] Error 2
make: Leaving directory `/usr/src/linux-headers-2.6.35-6-generic'

Revision history for this message
judmeister (henders101) wrote :

Looks like this is a dup of 590090, Bug #592443 & Bug #592612 and not fixed.

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

@Eric Appleman,

The issue you are seeing is a completely separate issue than what was reported here. You should track bug 590090 instead. The issue you are seeing is with the ndiswrapper dkms package (which I actually wasn't aware even existed). That package maintainer needs to apply a patch to fix up the code as the following upstream commit removed mc_count from struct net_device and converts multicast lists to list_head:

  commit 22bedad3ce112d5ca1eaf043d4990fa2ed698c87
  Author: Jiri Pirko <email address hidden>
  Date: Thu Apr 1 21:22:57 2010 +0000

    net: convert multicast list to list_head

However, I'm curious as to why you'd want to install the DKMS package anyways as ndiswrapper is currently provided in the Ubuntu kernel.

Revision history for this message
Neil Cooper (neilcoo) wrote :

This issue affects more than just installation of DKMS.
I can't compile orinoco_usb after upgrading to Ubuntu 10.10 because mc_count and mc_list are now missing in struct net_device.
I need this driver for the built-in 802.11b wi-fi on my Compaq N610i laptop.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.