LinuxQuestions.org
Go Job Hunting at the LQ Job Marketplace
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking > Linux - Wireless Networking
User Name
Password
Linux - Wireless Networking This forum is for the discussion of wireless networking in Linux.

Notices



Reply
 
Search this Thread
Old 01-11-2007, 06:33 AM   #1
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Rep: Reputation: 15
Linux hangs after having installed WMP54GX Linksys driver in NdisWrapper


Hello!

I'm using OpenSuSE 10.2 on a PC with an WMP54GX Linksys WLAN card. The card won't work so far and the system almost hangs (computer is extremely slow).
First I installed NDisWrapper via YAST2 and then followed up the instructions on the OpenSuse Site. I downloaded and installed the NDIS driver ("netani") from the Linksys Site. "ndiswrapper -l" showed that the driver was installed properly with a PCI ID of 17cb:0001 (as mentioned here (see 16.)). Via YAST2 I configured the WLAN card, but got no access the the AP. I made a reboot and during startup (which took ca. 10mins.!) I got lots of messages like the following:

ndiswrapper (NdisWriteErrorLogEntry:248): log: C000138A, count: 8, return_address: [hex value]
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX
ndiswrapper (NdisWriteErrorLogEntry:240): code: XXXXXXXXXX

(XXXXXXXXXX are several varying decimal (?) numbers, [hex value] is only one hex code).

This messages are repeated several times for at least 8mins., Then the rest of the Linux startup and KDE startup is proceeded, but the computer works really slow. I installed the driver from the "Drivers" folder of the Zip package, which include the files aninet.cat, netani.inf, wni6000.bin, wnihdd50.sys and wnihdd51.sys.
When disabling the WLAN card (ndiswrapper -r netani), removing the configuration via YAST2 and rebooting, the system starts up normally (without the card driver loaded).
"A little bit funny" is the fact that I cannot reinstall the card driver with the same configuration (no "Static-0" in YAST2 WLAN configuration is possible). It seems that the driver and its configuration is not removed completely.

Do you have any idea how to solve this? What does the error messages (NdisWriteErrorLogEntry) mean?

I goggled a lot and searched through LQ, but I found no solution...

Thanks

Maladjez
 
Old 01-12-2007, 05:38 AM   #2
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
It seems that there is something like a "kernel crash" when "modprobe ndiswrapper" is executed. Allthough WMP54GX is listed in the "NdisWrapper List", I have only found one hint, that WMP54GX is really running under linux (see here).

I'd bee glad for any ideas of how to get it run...
 
Old 01-12-2007, 07:41 AM   #3
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,791
Blog Entries: 1

Rep: Reputation: 414Reputation: 414Reputation: 414Reputation: 414Reputation: 414
I'm going to guess that the version of ndiswrapper you're using was compiled against a different kernel. Those errors you posted are definitely NOT normal.

To be honest, using pre-compiled versions of ndiswrapper is usually a poor idea, particularly given how easy it is to compile from source. If I were in your shoes, I'd make sure the kernel source code was installed, then download the ndiswrapper source code and compile it. There are excellent instructions for doing this on the ndiswrapper wiki site.
 
Old 01-12-2007, 08:51 AM   #4
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
Thanks, Hangdog42, for your answer.

The kernel sources are installed (/usr/src/linux is present). It's true that I used an older version of NdisWrapper (1.25, the version shipped with OpenSuse 10.2, installed with YAST2).
My next steps are:
- Deinstalling ndiswrapper 1.25 & installing ndiswrapper 1.34 (last stable version)
- Installing a kernel patch which increeses the Linux kernel stack size from 8 kB to 16 kB (linux-2.6.x-ykstacks.patch from Linuxant)
- Installing a newer kernel (maybe I use the last version: 2.6.20-rc4)
 
Old 01-12-2007, 12:40 PM   #5
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,791
Blog Entries: 1

Rep: Reputation: 414Reputation: 414Reputation: 414Reputation: 414Reputation: 414
I'm not so sure it is the version of ndsiwrapper that is the problem, so much as it might not have been compiled against your running kernel. Even if you're running a stock Suse kernel, compiling ndiswrapper rather than using the binary might do the trick.
 
Old 01-12-2007, 04:40 PM   #6
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
I have installed ndiswrapper 1.34 = no result, problem is the same as described
 
Old 01-13-2007, 08:14 AM   #7
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,791
Blog Entries: 1

Rep: Reputation: 414Reputation: 414Reputation: 414Reputation: 414Reputation: 414
I hate to say it, but I've done a fair bit of googling and I have yet to find a single instance of anyone getting this card to work in Linux. I'm starting to think that these sort of MIMO cards require things that ndiswrapper doesn't support.

As a longshot, do you know what chipset is in this thing? Try looking at the output of lspci and see if it is listed. If it uses a chipset with a native linux driver, that might be an approach.
 
Old 01-13-2007, 04:49 PM   #8
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
Meanwhile I have patched the Kernel -> also no result.

The chipset on the card is "Airgo Networks Inc AGN100 802.11 a/b/g True MIMO Wireless Card (rev 03)"
 
Old 01-14-2007, 09:00 AM   #9
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,791
Blog Entries: 1

Rep: Reputation: 414Reputation: 414Reputation: 414Reputation: 414Reputation: 414
Well, I found one instance (here) of someone getting that chipset to work. Unfortunately, I don't think any of their problems apply to you. They did it on Fedora with ndiswrapper and ran into the infamous 4K stack problems. I suppose you could try to compile a custom kernel to make sure that you don't have any stack issues.

Quote:
Meanwhile I have patched the Kernel -> also no result.
Can I ask what you used to patch the kernel?
 
Old 01-15-2007, 09:20 AM   #10
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by Hangdog42
Can I ask what you used to patch the kernel?
I used the tool 'dldrconfig' from Driverloader (tar Version) to patch the Kernel ("dldrconfig --patch"). The problem is, that I do not know how to control, weather the patch was applied successfully or not. There was no (error) message after having installed the patch. In "Make xconfig" no change of the stack size was mentioned.

Next I'll try the new 2.6.20-rc5 kernel from kernel.org. If this also fails, I'll try Fedora Core 6...
 
Old 01-15-2007, 10:06 AM   #11
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,791
Blog Entries: 1

Rep: Reputation: 414Reputation: 414Reputation: 414Reputation: 414Reputation: 414
Quote:
In "Make xconfig" no change of the stack size was mentioned.
It used to be in Kernel Hacking. They may have moved it again however.
Quote:
Next I'll try the new 2.6.20-rc5 kernel from kernel.org.
To be honest, I don't think will get you anything. If this is a stack problem, I don't think they've been changing it (other than seriously hiding it in the configuration parameters).

You know, you might give linuxant a try. It will sometimes work where ndiswrapper has failed. They do give a free trial period to try it, and given the problems so far, it can't hurt.
 
Old 01-15-2007, 10:38 AM   #12
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
Red face

Quote:
Originally Posted by Hangdog42
You know, you might give linuxant a try. It will sometimes work where ndiswrapper has failed. They do give a free trial period to try it, and given the problems so far, it can't hurt.
Sure, I have allready tried Driverloader. My attempts with that tools lead into a total desaster: I had to copy several XP dlls into the Driverloader folder (just like HAL.dll), because the kernel log showed them missing. After that, Linux crashed completely - I had to reinstall OpenSuse...
 
Old 01-15-2007, 11:31 AM   #13
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,791
Blog Entries: 1

Rep: Reputation: 414Reputation: 414Reputation: 414Reputation: 414Reputation: 414
Quote:
Originally Posted by Maladjez
Sure, I have allready tried Driverloader. My attempts with that tools lead into a total desaster: I had to copy several XP dlls into the Driverloader folder (just like HAL.dll), because the kernel log showed them missing. After that, Linux crashed completely - I had to reinstall OpenSuse...
Um, no offense intended, but if you were copying dll's into the driveloader folder, you were doing something very wrong. Like ndiswrapper, linuxant driverloader is a kernel module that allows a Windows driver to function in Linux. Windows dll files are completely irrelevant, particularly since they can't run. The only things you should have been doing is running make && make install, and then pointing to your Windows driver .inf and .sys files.

So at the risk of being more offensive (and I'm not trying to insult you here, I'm just trying to understand what is going on), I think it would be a good idea if you posted details about your procedure for compiling and installing ndiswrapper. I just want to make sure that something basic isn't going wrong here. Also, if compiling ndiswrapper throws any error messages, post those as well.
 
Old 01-15-2007, 05:40 PM   #14
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
@Hangdog42

No problem! It's a bit crazy to use M$ DLLs here - it was only an attempt to look for a result after that kernel log messages. I was planning to install the OS again to get a "fresh" system again.
I did the following: install OpenSuSE 10.2 with almost all development tools & sources and all patches, download driverloader-2.35.tar.gz*, ndiswrapper-1.34.tar.gz** and WMP54GX_v10.zip**.

1.) Driverloader
a.) I extracted the package with "tar -xzf driverloader-2.35.tar.gz"
b.) I changed to the package directory /tmp/downloads/driverloader-2.35
c.) I ran "make install" from the top of the package directory, and
d.) "dldrconfig" to complete the installation and configure the device.
e.) I ran "dldrconfig --patch" to download & install the patch dldr-2.35-2.6.19.patch, followed by a
f.) reboot

2.) NdisWrapper
a.) I extracted the package with "tar zxvf ndiswrapper-1.34.tar.gz"
b.) I changed to the package directory with "cd ndiswrapper-1.34"
c.) I ran "make distclean", then "make" and finally "make install" from the top of the package directory /tmp/downloads/ndiswrapper-1.34
d.) I rebooted the system

3.) Device driver
a.) I extracted the content of the zip archive to /tmp/downloads/WMP54GX_v10 with KDE konqueror

4.) Installation
a.) I changed to /tmp/downloads/WMP54GX_v10/Drivers directory***
b.) "ndiswrapper -i netani.inf", output: "installing netani..."
c.) "ndiswrapper -l", output: "netani : driver installed, device (17CB:0001) present"
d.) "ndiswrapper -m", output: "adding 'alias wlan0 ndiswrapper' to /etc/modprobe.d/ndiswrapper ..., couldn't add module alias: at /usr/sbin/ndiswrapper line 720"

At this point I stopped installation for further investigation. I haven't seen that erorr message before. I'm gonna proceed tomorrow...

* from http://www.linuxant.com/driverloader.../downloads.php
** from http://ndiswrapper.sourceforge.net
*** files in that directory: aninet.cat, netani.inf, wni6000.bin, wnihdd50.sys and wnihdd51.sys

Last edited by Maladjez; 01-16-2007 at 09:46 AM.
 
Old 01-16-2007, 07:21 AM   #15
Maladjez
LQ Newbie
 
Registered: Nov 2006
Location: Germany
Distribution: OpenSuSE 10.2
Posts: 26

Original Poster
Rep: Reputation: 15
Here's a code snippet (Perl) from the file "ndiswrapper":

Code:
sub add_module_alias {
    my $alias = 0;

    open(MODPROBE, "modprobe -c|") or die "couldn't run modprobe: $!";
    while (my $line = <MODPROBE>) {
	if ($line =~ /^alias\s.+\sndiswrapper/) {
	    printf "module configuration already contains alias directive\n\n";
	    $alias = 1;
	} elsif ($line =~ /^install\s.*ndiswrapper/) {
	    warn "module configuration contains directive $line;" .
	      "you should delete that";
	} elsif ($line =~ /^post-install\s+ndiswrapper/) {
	    warn "module configuration contains directive $line;" .
	      "you should delete that";
	}
    }
    close(MODPROBE);

    if ($alias) {
	return 0;
    }

    printf "adding \"alias wlan0 ndiswrapper\" to $modconf ...\n";
    system("echo \"alias wlan0 ndiswrapper\" >>$modconf") or
      die "couldn't add module alias: $!";
    if (-x "/sbin/update-modules") {
	system("/sbin/update-modules");
    }
    return 0;
}
Line 720 is bold printed
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Ndiswrapper installed driver installed, hardware present, but modprobe doesn't likeit Flukey Linux - Hardware 1 04-14-2007 12:22 PM
Is there any way for my Linksys WMP54GX wireless adapter to work on Fedora Core 5? jsedgwick Linux - Wireless Networking 2 07-09-2006 11:06 PM
ndiswrapper installed, driver installed. No device appears... kurtwisener Fedora 5 03-25-2006 04:10 PM
Linksys Wireless-G PCI Card WMP54GX with SRX darkangel29 Linux - Hardware 3 03-19-2006 02:49 PM


All times are GMT -5. The time now is 11:28 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration