Re: adding if_dev member to struct ifnet
From: John Baldwin (jhb_at_FreeBSD.org)
Date: 09/30/03
- Previous message: Poul-Henning Kamp: "Re: adding if_dev member to struct ifnet"
- In reply to: Brooks Davis: "Re: adding if_dev member to struct ifnet"
- Next in thread: Brooks Davis: "Re: adding if_dev member to struct ifnet"
- Reply: Brooks Davis: "Re: adding if_dev member to struct ifnet"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Tue, 30 Sep 2003 14:23:02 -0400 (EDT) To: Brooks Davis <brooks@one-eyed-alien.net>
On 30-Sep-2003 Brooks Davis wrote:
> On Tue, Sep 30, 2003 at 01:14:39PM -0400, John Baldwin wrote:
>>
>> Fair enough. I think that Brooks planned to use a NULL device_t for
>> interfaces w/o a backing new-bus device. However, that means you
>> still need if_name for all the non-newbus devices, so this seems
>> somewhat pointless if if_name is the only reason. Another counterpoint
>> is that the new-bus namespace and the netif namespace aren't the same
>> anyway and that seemed to be the point of this linkage. The
>> dev_t <> softc <> device_t linkages aren't about unifying namespaces.
>
> The idea here is that virtually all uses of if_name/if_unit that aren't
> just there for the users benefit are actually references to the
> underlying driver not name of the interface. Currently they are the
> same (i.e. ifname is nearly always device_get_name(dev) or a bug prone
> manual version there of), but I would like to separate them so we can
> rename interfaces.
>
> Since device_t is as close to a repository of driver/instance
> information as we've got, I though using it would be a reasonable way
> to go. As a side benefit, most drivers have a copy of it in their softc
> already so you'd have a standard place to put it.
>
> I suppose a usable alternative would be to revive if_name and if_unit
> as something like if_drvname and if_drvunit.
Are these uses all within the driver itself? If so, then just giving
ifnet a void * that is private to the driver would allow ifnet devices
hung off of new-bus devices to cache their device_t w/o requiring the
rest of the kernel to know what that private variable is.
-- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ _______________________________________________ freebsd-arch@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-arch To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
- Previous message: Poul-Henning Kamp: "Re: adding if_dev member to struct ifnet"
- In reply to: Brooks Davis: "Re: adding if_dev member to struct ifnet"
- Next in thread: Brooks Davis: "Re: adding if_dev member to struct ifnet"
- Reply: Brooks Davis: "Re: adding if_dev member to struct ifnet"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|