Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Stephen Hemminger <stephen.hemminger@...>
Cc: <wimax@...>, <linux-wireless@...>, <netdev@...>, <linux-kernel@...>
Date: Tuesday, April 8, 2008 - 4:59 pm

On Tuesday 08 April 2008, Stephen Hemminger wrote:

Style difference, simplifies maintenance. Each file is logically grouped. 
Everything for doing X is in file X. I know you are a fan of big files, 
I am not :)

There is almost no inlining because each X only does stuff from itself. If
there is a need for inlined stuff (I missed it) it should go to one of the
header files --internal or external.


Ok, I'll figure a way to clean it up. Need to move most to inlines,
still making sure anything that is disabled is compiled out.
 

family ID: it makes it easy to map device<->family-id without
expensive look ups the kernel like an attribute with the device 
name would be. Rationale is most systems will have a single wimax
device in the kernel. include/linux/wimax.h and drivers/net/wimax/id-table.c
should have this documented...ouch, just remembered. The code drop
out there shouldn't be as complete (documentation wise) as what
I need to publish. Pls hold for it, will be available.

version: I anticipate the wimax API exported to user space is
going to undergo a lot of changes while we all agree on what
is the best interface. Because things might break, I want to
make sure user space stuff can detect that and fail cleanly. 
Hence the versioning. 

It is designed to be flexible so that adding new APIs allows 
old code to work (however, changing existing APIs is where it 
breaks). From the docs:

 * Each WiMAX device exports two sysfs files declaring the generic
 * netlink family ID associated to the interface and another one which
 * version it supports. The version code has to fit in one byte
 * (restrictions imposed by generic netlink); we use version / 10 for
 * the major version and version % 10 for the minor. This gives 9
 * minors for each major and 25 majors.
 *
 * The inexistence of any of this means the device does not support
 * the WiMAX extensions.
 *
 * The version change protocol is as follow:
 *
 *
 *
 * Your user space code should not try to work if the major version it
 * was compiled for differs from what the kernel offers. As well, it
 * should not work if the minor version of the kernel interface is
 * lower than the one the user space code was compiled for.
 *
 * libwimax's wimax_open() takes care of all this for you.


Removed in newer code.


Geeze, I hide out for one week and a new system pops up? 

What is the advantage of newlink dellink vs generic netlink? Pointers
to doc? Generic netlink is fitting the bill pretty well as of now,
so unless it is going away from the kernel, I feel we should not
move it.
 

All that is gone from current tip.


Noted, will do.


Ack.


Any rationales for it? other than the padding and setting
skb->dev, they seem the same.


Current tip code receives data from the device to an skb and then 
clones the different packets to deliver to netdev. This is not 
needed/done any more.
 

Again, style differences, a 10k file is already way too big for me.
 

En route, most of them fixed in tip.
 

Nope, the 2400 is a pure IP device (as Marcel mentioned). As well, we need
to provide for using other bus connections (SDIO in the works), so that would
break it up. OTOH, the hw protocol makes it different to plug into USBNET,
as we can receive many packets in a single transaction.
 

Good point. Ack.
 

Ack
 

Done in tip.

We need to keep backwards compatibility to certain kernels for OSV support.
]Trying to make that as unobstrusive as possible. The git tip tree will
be mostly backward-stuff clean.

Hey thanks a lot, this is great feedback

-- 
Inaky
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Inaky Perez-Gonzalez, (Tue Apr 1, 2:07 pm)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Stephen Hemminger, (Tue Apr 8, 3:04 pm)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Stephen Hemminger, (Tue Apr 8, 2:56 pm)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Inaky Perez-Gonzalez, (Tue Apr 8, 4:59 pm)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Inaky Perez-Gonzalez, (Wed Apr 9, 2:09 pm)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Stephen Hemminger, (Tue Apr 8, 11:13 am)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Stephen Hemminger, (Tue Apr 1, 2:18 pm)
Re: [ANN] WiMAX stack and drivers for Intel WiMAX Link 5050, Inaky Perez-Gonzalez, (Tue Apr 1, 2:33 pm)