tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: (Semi-random) thoughts on device tree structure and devfs
On Sat, Mar 13, 2010 at 6:04 AM, David Young <dyoung%pobox.com@localhost> wrote:
> On Thu, Mar 11, 2010 at 10:16:56AM +0900, Masao Uebayashi wrote:
>> On Thu, Mar 11, 2010 at 12:13 AM, David Young <dyoung%pobox.com@localhost>
>> wrote:
>> OK, you want to match device by ID. Like:
>>
>> fxp* macaddr xx:xx:xx:xx:xx:xx
>>
>> That might make sense.
>>
>> What doesn't make sense there is to *fix* device unit number. Device
>> unit number will be no longer used after devfs, because we lookup
>> struct device by either topologically or ID.
>
> No device unit number? You've lost me. Please fill in the blank,
>
> ifconfig ______ inet 192.168.1.1/24
>
> :-)
In devfs world, traditional device names (/dev/xxxN or ifconfig xxxN)
are provided as a short alias. Basically devfs internally walks the
whole tree, count the base device name you requested ("fxp", "sd",
...), then return N-th instance.
>> Device probes, configures, and extracts properties from the real
>> device. Just before leaving attach(), it *puts* its ID in a
>> well-known place so that device(9) can lookup these IDs later.
>
> Actually, that sounds great to me. Then we can, as you suggested at
> the top of this thread, create the ether(4) pseudo-device that is
> analogous to audio(4). Let us attach a particular ether(4) instance to
> an ethernet h/w instance according to the h/w's properties.
>
> Take fxp(4) for an example. Rename it fxphw(4). Let it attach an
> ether(4) instance at its ether attribute, using an optional 'basename'
> attach argument of 'fxp', so that the ether(4) instance knows that it
> should take its customary name, fxp0 (or whatever).
>
> I think that an added benefit of breaking things down this way is that
> we can attach >1 ether(4) to a single h/w instance, which makes a sense
> with those NICs that support >1 unicast address. Maybe we can attach
> vlan(4) to the h/w backend's ether attribute, too.
>
> Another added benefit of breaking things down this way is that we may be
> able to get rid of the problematic "network" class in PMF.
>
> You seemed to have in mind attaching at fxp0 an ether0, and attaching at
> ether0 a net0. What is net0's role?
Actually, I don't know. I'm not familar with network. Basic idea is
if those devices share some ioctl()'s, they should have a superclass.
Masao
Home |
Main Index |
Thread Index |
Old Index