Skip to contentSkip to conversation

Move wlan-ng out of staging?

DISCUSSION Xose Vazquez Perez 3 participants 4 messages Jan 29, 2016

lore
Share & tools
lore
#0 lore raw
Quoted 3 lines · Ksenija

I'm helping Greg do a bit of cleanup in the staging tree, I noticed that wlan-ng driver is maybe ready to be moved out of staging. Are there any TODO tasks left to do beside checkpatch.pl clean-up?

Its FAQ was very clear: ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/FAQ [archived at http://puppylinux.dreamhosters.com/wireless/linux-wlan-org_FAQ.txt ]

--cut--
Q: When will linux-wlan-ng be merged into the mainline kernel?

Short answer: Never.

First, the linux-netdev people will soundly reject this driver. I don't begrudge them for this; indeed in their position I'd do exactly the same. It's a sound engineering decision.

linux-wlan-ng is obselete, and effort spent fixing it is better spent elsewhere. You can't even buy the hardware any longer.

The original design for linux-wlan-ng was to separate the 802.11 stack from the actual hardware driver. This added a lot of complexity, but would greatly ease the pain of supporitng multiple hardware types. Unfortunately, the implementation was turned out to be somewhat flawed, and hardware manufaturers went away from the thick-mac model, leaving linux-wlan-ng overly complex for what it did.

(Ironically, the linux kernel is adopting a similar
separation model, but it is a long way off from being ready)

So why not rewrite linux-wlan-ng to be more suitable, the enterprising reader may ask?

The kernel already has two drivers for prism2 (cs/pci/plx) hardware -- hostap and orinoco. linux-wlan-ng basically has three features not present in kernel drivers:

1) USB support
2) nearly complete implemettion of the 802.11 MIB/MLME
3) Firmware-based AP support

(3) requires an expensive license that isn't even available any longer, as the hostap mode works far better -- and is already supported by in-kernel drivers.

(2) would need to be removed or completely rewritten in order to be merged, as it does not fit within existing kernel APIs, and it would be effectively merging new kernel APIs.

(1) Is the only truly unique thing that linux-wlan-ng does that is generally needed any more.

To merge it into the kernel, we'd need to strip out (2), which would necessitate a complete rewrite -- to the point where writing a new driver from scratch is easier.

Basically, it would take far less effort to add USB support to the in-kernel drivers than it would to make linux-wlan-ng acceptable to be merged.

In other words, the short answer is: Never.
--end--

#1 lore raw
Quoted 58 lines · Xose Vazquez Perez
Quoted 3 lines · Ksenija

I'm helping Greg do a bit of cleanup in the staging tree, I noticed that wlan-ng driver is maybe ready to be moved out of staging. Are there any TODO tasks left to do beside checkpatch.pl clean-up?

Its FAQ was very clear: ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/FAQ [archived at http://puppylinux.dreamhosters.com/wireless/linux-wlan-org_FAQ.txt ]

--cut--
Q: When will linux-wlan-ng be merged into the mainline kernel?

Short answer: Never.

First, the linux-netdev people will soundly reject this driver. I don't begrudge them for this; indeed in their position I'd do exactly the same. It's a sound engineering decision.

linux-wlan-ng is obselete, and effort spent fixing it is better spent elsewhere. You can't even buy the hardware any longer.

The original design for linux-wlan-ng was to separate the 802.11 stack from the actual hardware driver. This added a lot of complexity, but would greatly ease the pain of supporitng multiple hardware types. Unfortunately, the implementation was turned out to be somewhat flawed, and hardware manufaturers went away from the thick-mac model, leaving linux-wlan-ng overly complex for what it did.

(Ironically, the linux kernel is adopting a similar
separation model, but it is a long way off from being ready)

So why not rewrite linux-wlan-ng to be more suitable, the enterprising reader may ask?

The kernel already has two drivers for prism2 (cs/pci/plx) hardware -- hostap and orinoco. linux-wlan-ng basically has three features not present in kernel drivers:

1) USB support
2) nearly complete implemettion of the 802.11 MIB/MLME
3) Firmware-based AP support

(3) requires an expensive license that isn't even available any longer, as the hostap mode works far better -- and is already supported by in-kernel drivers.

(2) would need to be removed or completely rewritten in order to be merged, as it does not fit within existing kernel APIs, and it would be effectively merging new kernel APIs.

(1) Is the only truly unique thing that linux-wlan-ng does that is generally needed any more.

To merge it into the kernel, we'd need to strip out (2), which would necessitate a complete rewrite -- to the point where writing a new driver from scratch is easier.

Quoted 7 lines

Basically, it would take far less effort to add USB support to the in-kernel drivers than it would to make linux-wlan-ng acceptable to be merged.

In other words, the short answer is: Never.
--end--

Detailed info in these threads:
https://marc.info/?l=linux-wlan-user&m=125122113309475
https://marc.info/?l=linux-wireless&m=138384105903345

#2 lore raw
Quoted 6 lines · Xose Vazquez Perez
Quoted 6 lines
Quoted 3 lines

I'm helping Greg do a bit of cleanup in the staging tree, I noticed that wlan-ng driver is maybe ready to be moved out of staging. Are there any TODO tasks left to do beside checkpatch.pl clean-up?

Its FAQ was very clear: ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/FAQ [archived at http://puppylinux.dreamhosters.com/wireless/linux-wlan-org_FAQ.txt ]

As author of that particular FAQ entry (written nearly ten years ago) let me say that nothing in there has any bearing on the situation that exists today.

At the time, I didn't think it was worth the significant effort to get prism2_usb into the mainline, but obviously some enterprising folks disagreed with me, and eventually put forth the elbow grease necessary to get it into -staging and all of the subsequent cleanups.

From where I sit, the basic question is this: Is the prism2_usb driver now considered good enough to promote out of -staging? If not, what needs doing and who is willing to see it through? If it is, then just do it already. :)

Oh, I'm still hosting the firmware files needed for this thing, and I see a consistent 4K or so downloads a month. So there are obviously users out there still.

- Solomon

Signature · 3 lines
Solomon Peachy        		       pizza at shaftnet dot org
Delray Beach, FL                          ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.
#3 lore raw
In reply to Xose Vazquez Perez
Quoted 6 lines · Xose Vazquez Perez
Quoted 3 lines · Ksenija

I'm helping Greg do a bit of cleanup in the staging tree, I noticed that wlan-ng driver is maybe ready to be moved out of staging. Are there any TODO tasks left to do beside checkpatch.pl clean-up?

Quoted 7 lines

Its FAQ was very clear: ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/FAQ [archived at http://puppylinux.dreamhosters.com/wireless/linux-wlan-org_FAQ.txt ]

--cut--
Q: When will linux-wlan-ng be merged into the mainline kernel?

Short answer: Never.

The ultimate aim of a driver in staging is to graduate out of staging area into the main part of the kernel. If it is already known that this driver can never move out of staging then IMHO its better to remove it.

regards
sudip