Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

[ Create a new account ]

OpenBSD Ahead of Linux for Wi-Fi Drivers

Posted by timothy on Mon Jun 12, 2006 04:12 PM
from the alle-menschen-sind-auslaender-fast-ueberall dept.
algae writes "It looks like some kernel developers have noticed that the OpenBSD project is including reverse-engineered drivers for wireless ethernet cards while Linux is still using binary blobs. A large part of the issue is that much OpenBSD development takes place abroad, where having to do clean-room reverse-engineering isn't as important." From the article: "Christoph Hellwig took another stance, 'please don't let this reverse engineering idiocy hinder wireless driver adoption, we're already falling far behind openbsd who are very successfully reverse engineering lots of wireless chipsets.'"
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

OpenBSD Ahead of Linux for Wi-Fi Drivers 25 Comments More | Login /

 Full
 Abbreviated
 Hidden
More | Login
Keybindings Beta
Q W E
A S D
Loading ... Please wait.
  • Ha, wireless BSD (Score:5, Informative)

    I just started using FreeBSD 6.1 recently and I was surpised about the ease of setting it up. (Still not for the faint of heart, but Windows isn't either. If you want a nice custom setup that does what you want, you need a lot of time in Windows). My primary laptop is a P-III 600MHz with 512Meg RAM. An old fucker I bought for peanuts. It didn't have a network interface, so I added a Sweex wireless adapter [sweex.nl]. It shows up in both FreeBSD as Windows under RaLink 2500. (Note that Sweex is a cheapass brand, but for another product I had *excellent* support by email with them)

    Linux.... Nothing... No out of the box recognition.

    OpenBSD also recognised it but doesn't support WPA-PSK which I do require. FreeBSD supports WPA-PSK. I've been an OpenBSD fanboy for a long time, but I like FreeBSD equally now. Linux... well, somehow I have problems with most distributions. Either philosophical problems or technical problems :-) With *BSD, I have neither.

    • Re:Ha, wireless BSD (Score:5, Interesting)

      by ArbitraryConstant (763964) on Monday June 12 2006, @04:33PM (#15519366) Homepage
      I went to a presentation by the OpenBSD developers during their Hack-a-thon, and they indicated that WPA was not a very high priority for them. They prefer to do authentication with auth-pf, and if encryption is needed they prefer to use VPNs. It does make it a PITA if you want to use a network you have no control over, but the OpenBSD crowd are like that sometimes.
      [ Parent ]
      • Re:Ha, wireless BSD (Score:5, Informative)

        by Anonymous Coward on Monday June 12 2006, @07:50PM (#15520592)
        The intro to this article is utter crap. OpenBSD does meticulous clean-room reverse engineering -- usually using two people (one to document function, the other to write the driver). They are, as always, completely anally retentive about license and legal issues. The submitter apparently didn't read the article - it is Linux, not OpenBSD, that may have issues about where it gets driver info -- the Slashdot submission has this completely wrong and should be corrected (just read the article!). The articles says *nothing* about where OpenBSD development takes place or its reverse enginnering process. This statement is an assertion of the article submitter, and very misleading.
        [ Parent ]
          • Re:in other news... (Score:5, Insightful)

            by mike_the_kid (58164) on Tuesday June 13 2006, @12:05AM (#15521701) Journal
            Of course, OpenBSD is a much smaller market than the Linux market, which is probably part of why binary blobs just aren't availble for it at all -- the hardware developers just ignore OpenBSD entirely rather than throwing them a bone in the form of a binary blob.


            OpenBSD doesn't have any blobs because the project's leaders will not consider using them. What's the point of having an open source, audited, secure operating system if you allow arbitrary blocks of binary code into the kernel?

            The reason OpenBSD doesn't have blobs is not because of their size -- they could port FreeBSD blobs in easilly. The reason is that the project is focused on quality. Their view is that quality and openness go hand in hand. Can't have one without the other. See this interview with Damien Bergamini, who implemented a driver for the Intel 3945 802.11abg NIC without any of Intel's blobs. [kerneltrap.org] The OpenBSD driver is considerably fewer lines of code than Intel's. Because its simpler, its easier to audit, and easier to find bugs in. Of course, you can't find any bugs in Intel's driver because you can't see the source code. Not because the Intel driver is bug free.
            [ Parent ]
  • Take Action (Score:3, Insightful)

    by neonprimetime (528653) on Monday June 12 2006, @04:16PM (#15519257) Homepage Journal
    Far too many people have a careless 'U.S.A. laws suck, merge it anyway' attitude

    Sometimes, like at this point, it's the right attitude. They better take action soon, or openbsd will make them look like a joke.
  • OpenBSD supported wireless chipsets (Score:5, Informative)

    by Homology (639438) on Monday June 12 2006, @04:16PM (#15519258)
    can be found by reading the man pages [openbsd.org]
  • You heard it here first... (Score:5, Funny)

    by Weaselmancer (533834) on Monday June 12 2006, @04:17PM (#15519266)

    Linux is dead. Now, when will BSD be ready for the desktop?

  • yay for BSD (Score:4, Interesting)

    by Umbral Blot (737704) on Monday June 12 2006, @04:17PM (#15519269) Homepage
    Well as the article itself says the clean room method isn't required by law. It would seem to make sense then to drop it until it is required by law, or alternately host your distribution overseas and have the developers working on the drivers be non-US residents as well, so that you are less vulnerable to US law. Wi-Fi problems are one of the reasons this laptop doesn't run Linux, although BSD is sounding cooler and cooler.
  • You can help end this argument (Score:5, Insightful)

    by Bruce Perens (3872) * <bruce@@@perens...com> on Monday June 12 2006, @04:19PM (#15519283) Homepage Journal
    BLOBs are bad, and their legality in the kernel is questionable. Of course really free drivers that let us extend devices are better.

    Leaving BLOBs in the kernel might just mean you have different plaintiffs than if you used a reverse-engineered driver.

    However, full clean-room reverse-engineering a free driver with full source code, rather than one that you have to disassemble and figure out, is a reasonably easy task. And, we have to write a Linux driver anyway. So, find one friend to work with and get started.

    One person must not write any kernel code concerned with the driver. That person must read the existing driver, document the hardware, and publish the document. The document should not reproduce algorithms in the existing driver unless they are integral to driving the device and there isn't another way to do it.

    A second person must not look at the existing driver. This person reads the document and writes a new driver.

    Keep notes about the entire process. You could someday have to testify that you did it the right way.

    Bruce

    • Re:You can help end this argument (Score:5, Interesting)

      by Homology (639438) on Monday June 12 2006, @04:38PM (#15519426)
      > BLOBs are bad, and their legality in the kernel is questionable.
      > Of course really free drivers that let us extend devices are better.

      It would be helpful if the Linux developers would be more supportive
      of OpenBSDs work on getting hardware manufactures to release
      documentation that is not under a NDA. When OpenBSD had the campaign
      for release of wi-fi chipset docs, it seemed that the Linux developers where
      sitting on the fence.
      [ Parent ]
          • Re:You can help end this argument (Score:5, Informative)

            by Bruce Perens (3872) * <bruce@@@perens...com> on Monday June 12 2006, @05:05PM (#15519639) Homepage Journal
            I remember being copied on some of the discussion between Theo de Raadt and Richard Stallman. I think what happened is that Theo started out to get BSD-licensed BLOBs from manufacturers. And then, perhaps even through discussion with Richard, Theo was convinced that BLOBs were bad even if they were BSD-licensed. There was also some discussion from Theo about the fact that FSF and Richard hadn't ever supported Theo's work. And at some point they must have worked all of this out.

            But FSF aren't the Linux developers. If you ask them, they will be very adamant about that.

            Bruce

            [ Parent ]
    • by Burz (138833) on Monday June 12 2006, @06:15PM (#15520089) Journal
      1) Form a consortium of major Linux vendors to build and maintain an exhaustive but relatively friendly Hardware Compatability List (HCL).

      2) Spread the word that if users don't consult the HCL before purchasing new hardware, they risk a lot of compatability headaches.

      3) Invite hardware OEMs to participate directly in maintaining their corner of the HCL. Under each model listing, provide a button to send user feedback (or petition) to the hardware vendor.

      4) Watch as hardware vendors begin to take Linux drivers much more seriously, due to constant and coordinated pressure from consumers. Vendors will get a clear message that the days of the haphazard "plug-n-wish" habit are over, since users will avoid buying their products of questionble compatability in the first place.

      OS vendors must work to keep their patrons informed about hardware suitability. There is no other way around it in the near-mid term, and we will never get to the point where most OEMs automatically accommodate Linux unless a sturdy bridge is built to organize and convey the users' purchasing interests.
      [ Parent ]
      • AC wrote: What would end the argument, Bruce is open-source hardware.

        Yes, that would be excellent. How do we get there? OpenCores.org has the start. However, all of the gate-arrays that they have to work with have a proprietary bitstream format and thus they require proprietary tools to program them. We need an Open Source gate-array to facilitate Open Source hardware. Initial full-custom full-wafer mass fabrication cost is about $1 Million. At that point, you can get the parts down to a reasonable price. You can do small runs in MOSIS (or whatever they have these days) to make sure the design works before you go that far.

        I figure this is at least $2 Million to get done. We need good hardware designers and people to help write the grant. If I can hook up with such people, I'll do whatever I can to help. I don't have the hardware expertise to lead this, or I'd already be started. Any volunteers? I'm quite serious.

        Bruce

        [ Parent ]
        • Open Source Hardware (Score:5, Interesting)

          by jd (1658) <imipak&yahoo,com> on Monday June 12 2006, @06:12PM (#15520069) Homepage Journal
          I do believe that this is the correct direction and that OpenCores has a lot of very useful material. There are programs for hardware analysis and design, but you are correct that there's a LOT more to hardware than just that. Even with high-end commercial applications, it is not easy - the software can easily fail to calculate the power loads, for example, leading to both over-hot regions and under-powered sections.


          But calculating these values isn't enough if you're designing anything of high complexity. You then really need CFD software to model how the heat will flow around your design. It's easy to build something that is quite incapable of remaining within temperature limits.


          When building network interfaces, other problems creep in. You have no control over whatever you connect your device to (wirelessly or wired) and so must provide suitable tolerences. You also have potential problems from interference generated from within the device itself. A wireless network card that jams itself is of very little use.


          I'm not saying this is impossible - the University of Manchester uses Open Source tools for designing async microprocessors which are suitable for cell phones, so obviously it's possible. It has been done. The problem is in moving from "possible" to "practical". That is an area that looks interesting and - as programmable computable devices become more powerful - more open to experimentation.


          One of the problems with commodity hardware is that the only reason it is cheap and useful as a commodity is that it is ultra-generalized and therefore inefficient at any given task. As such, it should be very easy to design things which are more specialized and more efficient, even without a multi-billion dollar budget. Most of that budget is going to be in cramming all possible features onto as little silicon as possible without causing a meltdown. Microcomputers were buildable because no individual user really needed the full power of a mainframe. I could easily see the next stage being people designing components and cards that aren't perhaps equal to AMD's or Intel's latest mega-product but which are perfectly good for a special-purpose embedded device.


          Is this likely? I don't see why not. The 65I02 is a popular microcontroller. Yes, that is a more modern 6502 processor, and 6502s are NOT rocket-science. Open Cores is already well past the simple design of a 6502, and probably more than capable of designing fairly decent control systems with Open Source tools alone. Once you get a cottage industry going with Open Source hardware, then more advanced tools will inevitably follow.

          [ Parent ]
      • What would end the argument, Bruce is open-source hardware.

        I take it you mean as in programmable logic? That's not much of a solution either. You still need good documentation, as reverse-engineering VHDL/Verilog code is hard (speaking from experience here
  • Blob is bad! (Score:3, Insightful)

    by grub (11606) <slashdot@grub.net> on Monday June 12 2006, @04:21PM (#15519292) Homepage Journal

    I really hope the OpenBSD group's steadfast stance on "blob" is maintained. The Linux guys, who overall don't seem to mind blob, sound like they're starting to see the light. In the end it can only be good for all open source, not just OpenBSD.
    • Re:Blob is bad! (Score:5, Informative)

      by Anonymous Coward on Monday June 12 2006, @04:48PM (#15519498)
      Openbsd is going to maintain the anti-blob. I was down a wireless security with openbsd talk in Calgary after the hackathon last week which Theo attended and you can be sure OpenBSD will maintain the anti-blob. The discussion about blobs centred around what has been said before on openbsd.org. OpenBSD is first and foremost about security in its default state. You can't include arbitrary code that you don't compile yourself in such a system, you can't verify that's it doing what it says its doing. Further more Asian developers are more then happy to hand over all the required spec documents to get wider support for their wireless chipset. American companies however are going the otherway and would rather build drivers for each system the feel is important enough to warrent them.

      I'm sure they have their reasons but at the end of the day their way attempt at full circle development control will probably back fire. In an attempt to maintain a clean intellectual property enviroment where every participant is governed by NDA's and priorities are set by Mama corporate they have traded in creditabilty and grass root adoption. Whether this will ultimately cause them bottom line trama will be determined later in life. But one must only look at the economic trend in america as a whole to take a guess as to where this is going.

      America is becoming a service industry economy and losing its development and manufacturing roots, those jobs are being shipped oversea to asian companies that care more about making product then protecting copy rights. The cards that history played out however means that America still has trillions in wealth and the world's economies will continue to market heavily to americans to buy their products. Until that money dries up and their attention turns elsewhere. Once that occurs you won't see Toyota putting plants in Indiana to demonstrate how many local jobs it produces. It will put them in South America where the labour is half the price.

      As I see this is just another example of how American values of fairness, quality, openess and honesty have been lost in the boardroom and consequently the world is turning elsewhere.

      Hillbilly1980(damnit what's my password)

      [ Parent ]
  • confused... (Score:3, Interesting)

    by Lumpy (12016) on Monday June 12 2006, @04:28PM (#15519336) Homepage
    So what exactly is stopping them from download ing the BSD drivers and making a linux driver from the BSD sourcecode?

    Is there some kind of problem with that?
    • Re:confused... (Score:3, Insightful)

      Well, presumably, if the (paraphrased) "much BSD development is done where the law doesn't demand clean-room reverse engineering" statement really is a valid difference between OpenBSD and Linux, the legally (in some parts of the world, presumably where mu
  • Open Secrets (Score:5, Insightful)

    by Doc Ruby (173196) on Monday June 12 2006, @04:33PM (#15519371) Homepage Journal
    If those OpenBSD drivers are under the BSD license, doesn't that mean anyone (except the very few under some kind of other legal constraint for some other reason) with the chops can port them to Linux? And those chops don't have to be as tight as the original BSD coders. Shouldn't the lead be very short-lived?
    • Re:This seems bogus (Score:3, Interesting)


      I think the problem is that the BSD code may not be considered "clean room" by the Linux people, hence it's "dirty" (not my opinion) and not to be touched. You can probably trace a lot of this obsession to the SCO lawsuit.
      • Re:This seems bogus (Score:3, Insightful)

        I think the problem is that the BSD code may not be considered "clean room" by the Linux people, hence it's "dirty" (not my opinion) and not to be touched. You can probably trace a lot of this obsession to the SCO lawsuit.

        But developing Linux drivers w

    • Re:This seems bogus (Score:4, Interesting)

      by aristotle-dude (626586) on Monday June 12 2006, @04:25PM (#15519316)
      I think it is a combination of laziness and philosophical issues. Linux is being held back by both unfortunately.
      [ Parent ]
    • Re:This seems bogus (Score:5, Insightful)

      Yeah, because all the BSDs and Linux have identical kernel interfaces, PCI subsystems, DMA handlers, etc. A simple ./configure; make install is all that separates OpenBSD's kernel from 2.6.15, after all.

      In reality, on the other hand, the reverse engineered drivers can serve as excellent documentation for how the same logic can be implemented in another OS, but that's about as close as it's likely to get.

      [ Parent ]
      • Re:This seems bogus (Score:3, Insightful)

        ndisWrapper isn't counted because the thing it's wrapping around is a binary blob. That's basically the opposite of a BSD driver.