Lines Matching full:rxfh
1365 int gve_adminq_configure_rss(struct gve_priv *priv, struct ethtool_rxfh_param *rxfh) in gve_adminq_configure_rss() argument
1377 switch (rxfh->hfunc) { in gve_adminq_configure_rss()
1387 if (rxfh->indir) { in gve_adminq_configure_rss()
1388 if (rxfh->indir_size != priv->rss_lut_size) in gve_adminq_configure_rss()
1391 hash_lut_to_config = rxfh->indir; in gve_adminq_configure_rss()
1407 if (rxfh->key) { in gve_adminq_configure_rss()
1408 if (rxfh->key_size != priv->rss_key_size) { in gve_adminq_configure_rss()
1413 hash_key_to_config = rxfh->key; in gve_adminq_configure_rss()
1542 struct ethtool_rxfh_param *rxfh) in gve_adminq_process_rss_query() argument
1551 hash_lut_length = priv->rss_lut_size * sizeof(*rxfh->indir); in gve_adminq_process_rss_query()
1559 rxfh->hfunc = descriptor->hash_alg; in gve_adminq_process_rss_query()
1562 if (rxfh->key) { in gve_adminq_process_rss_query()
1563 rxfh->key_size = priv->rss_key_size; in gve_adminq_process_rss_query()
1564 memcpy(rxfh->key, rss_info_addr, priv->rss_key_size); in gve_adminq_process_rss_query()
1569 if (rxfh->indir) { in gve_adminq_process_rss_query()
1570 rxfh->indir_size = priv->rss_lut_size; in gve_adminq_process_rss_query()
1572 rxfh->indir[i] = be32_to_cpu(lut[i]); in gve_adminq_process_rss_query()
1578 int gve_adminq_query_rss_config(struct gve_priv *priv, struct ethtool_rxfh_param *rxfh) in gve_adminq_query_rss_config() argument
1599 err = gve_adminq_process_rss_query(priv, descriptor, rxfh); in gve_adminq_query_rss_config()