|
@@ -162,15 +162,16 @@ static inline u32 ethtool_rxfh_indir_default(u32 index, u32 n_rx_rings)
|
|
* Will not be called if @get_rxfh_indir_size returns zero.
|
|
* Will not be called if @get_rxfh_indir_size returns zero.
|
|
* @get_rxfh: Get the contents of the RX flow hash indirection table and hash
|
|
* @get_rxfh: Get the contents of the RX flow hash indirection table and hash
|
|
* key.
|
|
* key.
|
|
- * Will not be called if @get_rxfh_indir_size and @get_rxfh_key_size
|
|
|
|
- * returns zero.
|
|
|
|
|
|
+ * Will only be called if one or both of @get_rxfh_indir_size and
|
|
|
|
+ * @get_rxfh_key_size are implemented and return non-zero.
|
|
* Returns a negative error code or zero.
|
|
* Returns a negative error code or zero.
|
|
* @set_rxfh_indir: Set the contents of the RX flow hash indirection table.
|
|
* @set_rxfh_indir: Set the contents of the RX flow hash indirection table.
|
|
* Will not be called if @get_rxfh_indir_size returns zero.
|
|
* Will not be called if @get_rxfh_indir_size returns zero.
|
|
- * @set_rxfh: Set the contents of the RX flow hash indirection table and
|
|
|
|
- * hash key.
|
|
|
|
- * Will not be called if @get_rxfh_indir_size and @get_rxfh_key_size
|
|
|
|
- * returns zero.
|
|
|
|
|
|
+ * @set_rxfh: Set the contents of the RX flow hash indirection table and/or
|
|
|
|
+ * hash key. Either or both arguments may be %NULL if that attribute
|
|
|
|
+ * is not to be changed.
|
|
|
|
+ * Will only be called if one or both of @get_rxfh_indir_size and
|
|
|
|
+ * @get_rxfh_key_size are implemented and return non-zero.
|
|
* Returns a negative error code or zero.
|
|
* Returns a negative error code or zero.
|
|
* @get_channels: Get number of channels.
|
|
* @get_channels: Get number of channels.
|
|
* @set_channels: Set number of channels. Returns a negative error code or
|
|
* @set_channels: Set number of channels. Returns a negative error code or
|
|
@@ -244,8 +245,8 @@ struct ethtool_ops {
|
|
int (*reset)(struct net_device *, u32 *);
|
|
int (*reset)(struct net_device *, u32 *);
|
|
u32 (*get_rxfh_key_size)(struct net_device *);
|
|
u32 (*get_rxfh_key_size)(struct net_device *);
|
|
u32 (*get_rxfh_indir_size)(struct net_device *);
|
|
u32 (*get_rxfh_indir_size)(struct net_device *);
|
|
- int (*get_rxfh)(struct net_device *, u32 *, u8 *);
|
|
|
|
- int (*set_rxfh)(struct net_device *, u32 *, u8 *);
|
|
|
|
|
|
+ int (*get_rxfh)(struct net_device *, u32 *indir, u8 *key);
|
|
|
|
+ int (*set_rxfh)(struct net_device *, u32 *indir, u8 *key);
|
|
int (*get_rxfh_indir)(struct net_device *, u32 *);
|
|
int (*get_rxfh_indir)(struct net_device *, u32 *);
|
|
int (*set_rxfh_indir)(struct net_device *, const u32 *);
|
|
int (*set_rxfh_indir)(struct net_device *, const u32 *);
|
|
void (*get_channels)(struct net_device *, struct ethtool_channels *);
|
|
void (*get_channels)(struct net_device *, struct ethtool_channels *);
|