Ver Fonte

sfc: Name the RX drop queue ID

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Ben Hutchings há 12 anos atrás
pai
commit
f26e958cfc
2 ficheiros alterados com 8 adições e 3 exclusões
  1. 2 2
      drivers/net/ethernet/sfc/ethtool.c
  2. 6 1
      drivers/net/ethernet/sfc/filter.h

+ 2 - 2
drivers/net/ethernet/sfc/ethtool.c

@@ -822,7 +822,7 @@ static int efx_ethtool_get_class_rule(struct efx_nic *efx,
 	if (rc)
 		return rc;
 
-	if (spec.dmaq_id == 0xfff)
+	if (spec.dmaq_id == EFX_FILTER_RX_DMAQ_ID_DROP)
 		rule->ring_cookie = RX_CLS_FLOW_DISC;
 	else
 		rule->ring_cookie = spec.dmaq_id;
@@ -967,7 +967,7 @@ static int efx_ethtool_set_class_rule(struct efx_nic *efx,
 	efx_filter_init_rx(&spec, EFX_FILTER_PRI_MANUAL,
 			   efx->rx_scatter ? EFX_FILTER_FLAG_RX_SCATTER : 0,
 			   (rule->ring_cookie == RX_CLS_FLOW_DISC) ?
-			   0xfff : rule->ring_cookie);
+			   EFX_FILTER_RX_DMAQ_ID_DROP : rule->ring_cookie);
 
 	switch (rule->flow_type) {
 	case TCP_V4_FLOW:

+ 6 - 1
drivers/net/ethernet/sfc/filter.h

@@ -76,7 +76,8 @@ enum efx_filter_flags {
  * @type: Type of match to be performed, from &enum efx_filter_type
  * @priority: Priority of the filter, from &enum efx_filter_priority
  * @flags: Miscellaneous flags, from &enum efx_filter_flags
- * @dmaq_id: Source/target queue index
+ * @dmaq_id: Source/target queue index, or %EFX_FILTER_RX_DMAQ_ID_DROP for
+ *	an RX drop filter
  * @data: Match data (type-dependent)
  *
  * Use the efx_filter_set_*() functions to initialise the @type and
@@ -94,6 +95,10 @@ struct efx_filter_spec {
 	u32	data[3];
 };
 
+enum {
+	EFX_FILTER_RX_DMAQ_ID_DROP = 0xfff
+};
+
 static inline void efx_filter_init_rx(struct efx_filter_spec *spec,
 				      enum efx_filter_priority priority,
 				      enum efx_filter_flags flags,