diff options
| author | Michael Brown | 2023-09-13 17:29:59 +0200 |
|---|---|---|
| committer | Michael Brown | 2023-09-13 21:23:46 +0200 |
| commit | ae4e85bde97c9b216736a5087039f3309a628d24 (patch) | |
| tree | 39d706e2f330bd015d11ce38193c1baeab207cc8 /src/net/infiniband | |
| parent | [netdevice] Remove netdev_priv() helper function (diff) | |
| download | ipxe-ae4e85bde97c9b216736a5087039f3309a628d24.tar.gz ipxe-ae4e85bde97c9b216736a5087039f3309a628d24.tar.xz ipxe-ae4e85bde97c9b216736a5087039f3309a628d24.zip | |
[netdevice] Allocate private data for each network upper-layer driver
Allow network upper-layer drivers (such as LLDP, which attaches to
each network device in order to provide a corresponding LLDP settings
block) to specify a size for private data, which will be allocated as
part of the network device structure (as with the existing private
data allocated for the underlying device driver).
This will allow network upper-layer drivers to be simplified by
omitting memory allocation and freeing code. If the upper-layer
driver requires a reference counter (e.g. for interface
initialisation), then it may use the network device's existing
reference counter, since this is now the reference counter for the
containing block of memory.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/net/infiniband')
| -rw-r--r-- | src/net/infiniband/xsigo.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/net/infiniband/xsigo.c b/src/net/infiniband/xsigo.c index 4f5c618d7..5e805fa02 100644 --- a/src/net/infiniband/xsigo.c +++ b/src/net/infiniband/xsigo.c @@ -1829,8 +1829,10 @@ struct ib_driver xsigo_ib_driver __ib_driver = { * Handle device or link status change * * @v netdev Network device + * @v priv Private data */ -static void xsigo_net_notify ( struct net_device *netdev ) { +static void xsigo_net_notify ( struct net_device *netdev, + void *priv __unused ) { struct xsigo_device *xdev; struct ib_device *ibdev; struct xsigo_manager *xcm; |
