From 628811d07cf785fd606e695471383964bd81f1a9 Mon Sep 17 00:00:00 2001 From: Aastha Mehta <aasthakm@mpi-sws.org> Date: Mon, 15 Jan 2018 17:02:20 +0100 Subject: [PATCH] hack: fix the nonce for RSS hash function in code --- .../net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index e92de0bba..33ec108c7 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c @@ -2570,10 +2570,18 @@ static int bnx2x_init_rss(struct bnx2x *bp) return bnx2x_config_rss_eth(bp, bp->port.pmf || !CHIP_IS_E1x(bp)); } +//#ifdef CONFIG_XEN_SME +//struct bnx2x_config_rss_params sme_rss_params; +//#endif + int bnx2x_rss(struct bnx2x *bp, struct bnx2x_rss_config_obj *rss_obj, bool config_hash, bool enable) { struct bnx2x_config_rss_params params = {NULL}; +#ifdef CONFIG_XEN_SME + int i; + //memset(&sme_rss_params, 0, sizeof(struct bnx2x_config_rss_params)); +#endif /* Although RSS is meaningless when there is a single HW queue we * still need it enabled in order to have HW Rx hash generated. @@ -2619,6 +2627,18 @@ int bnx2x_rss(struct bnx2x *bp, struct bnx2x_rss_config_obj *rss_obj, if (config_hash) { /* RSS keys */ netdev_rss_key_fill(params.rss_key, T_ETH_RSS_KEY * 4); +#ifdef CONFIG_XEN_SME +// memcpy((void *) &sme_rss_params.rss_key, (void *) ¶ms.rss_key, +// T_ETH_RSS_KEY * 4); + memset((void *) ¶ms.rss_key, 0, T_ETH_RSS_KEY * 4); + for (i = 0; i < T_ETH_RSS_KEY; i++) { + params.rss_key[i] = i; + } +// for (i = 0; i < T_ETH_RSS_KEY; i++) { +// printk(KERN_ERR "rss key %d: %u %u", i, params.rss_key[i], +// sme_rss_params.rss_key[i]); +// } +#endif __set_bit(BNX2X_RSS_SET_SRCH, ¶ms.rss_flags); } -- GitLab