From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailgate.neusoft.com (mailgate.neusoft.com [210.83.25.69]) by dpdk.org (Postfix) with ESMTP id 430592A9 for ; Fri, 13 Dec 2013 01:30:34 +0100 (CET) X-IronPort-AV: E=McAfee;i="5400,1158,7287"; a="128329683" Received: from unknown (HELO mailgate8.neusoft.com) ([192.168.1.132]) by mailgate.neusoft.com with ESMTP/TLS/DES-CBC3-SHA; 13 Dec 2013 08:31:37 +0800 Received: from unknown (HELO smtp.neusoft.com) ([192.168.2.141]) by mailgate8.neusoft.com with ESMTP/TLS/AES128-SHA; 13 Dec 2013 08:31:37 +0800 Received: from [10.3.1.42] (192.168.179.234) by smtp.neusoft.com (192.168.2.141) with Microsoft SMTP Server (TLS) id 14.2.247.3; Fri, 13 Dec 2013 08:31:36 +0800 Message-ID: <52AA5568.7090902@neusoft.com> Date: Fri, 13 Dec 2013 08:31:36 +0800 From: chen_lp User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.1.1 MIME-Version: 1.0 To: Vladimir Medvedkin References: In-Reply-To: X-Originating-IP: [192.168.179.234] Content-Type: text/plain; charset="iso-8859-1"; format="flowed" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] Who can correct me about 82599 RSS Hash Function X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Dec 2013 00:30:37 -0000 Thank you very much. Depending on your correct, the problem has been resolved. ? 2013?12?12? 23:17, Vladimir Medvedkin ??: > Hi, > > First, I hope you configure > port_conf->rx_adv_conf.rss_conf.rss_key and .rss_hf > properly. > Secondly, > > -for(j=3D0;j<8;j++){ > +for(j=3D7;j>=3D0;j--){ > > > Regards, > Vladimir > > 2013/12/11 chen_lp@neusoft.com = > > > > > I want calculate the NIC rss hash result by function,but the > result is not right, I don't know where the wrong. > > > struct mbf_cb{ > uint32_t sip; > uint32_t dip; > uint16_t sport; > uint16_t dport; > }; > > static uint8_t test_rss[]=3D{ > 0x6d,0x5a,0x56,0xda,0x25,0x5b,0x0e,0xc2, > 0x41,0x67,0x25,0x3d,0x43,0xa3,0x8f,0xb0, > 0xd0,0xca,0x2b,0xcb,0xae,0x7b,0x30,0xb4, > 0x77,0xcb,0x2d,0xa3,0x80,0x30,0xf2,0x0c, > 0x6a,0x42,0xb7,0x3b,0xbe,0xac,0x01,0xfa, > }; > > static uint8_t input_mask[]=3D{ > 0x01,0x02,0x04,0x08, > 0x10,0x20,0x40,0x80, > }; > > mcb.sip=3Drte_cpu_to_be_32(IPv4(66,9,149,187)); > mcb.dip=3Drte_cpu_to_be_32(IPv4(161,142,100,80)); > mcb.sport=3Drte_cpu_to_be_16(2794); > mcb.dport=3Drte_cpu_to_be_16(1766); > > > uint32_t compute_hash(uint8_t *input, int n) > { > int i,j,k; > uint32_t result=3D0; > uint32_t *lk; > uint8_t rss_key[40]; > > memcpy(rss_key,test_rss,40); > > lk=3D(uint32_t *)rss_key; > for(i=3D0;i for(j=3D0;j<8;j++){ > if((input_mask[j])&input[i]){ > result^=3D*lk; > } > > // shift k left 1 bit > rss_key[0]=3Drss_key[0]<<1; > for(k=3D1;k<40;k++){ > if(rss_key[k]&0x80){ > rss_key[k-1]|=3D0x01; > } > rss_key[k]=3Drss_key[k]<<1; > } > } > } > return result; > } > > printf("rss_hash=3D%#x\n",compute_hash((uint8_t *)&mcb,sizeof(struct > mbf_cb))); > > rss_hash=3D0x57476eca > but the right result is 0x51ccc178 > > > > > > > > ---------------------------------------------------------------------= ------------------------------ > Confidentiality Notice: The information contained in this e-mail > and any accompanying attachment(s) > is intended only for the use of the intended recipient and may be > confidential and/or privileged of > Neusoft Corporation, its subsidiaries and/or its affiliates. If > any reader of this communication is > not the intended recipient, unauthorized use, forwarding, > printing, storing, disclosure or copying > is strictly prohibited, and may be unlawful.If you have received > this communication in error,please > immediately notify the sender by return e-mail, and delete the > original message and all copies from > your system. Thank you. > ---------------------------------------------------------------------= ------------------------------ > > ---------------------------------------------------------------------------= ------------------------ Confidentiality Notice: The information contained in this e-mail and any ac= companying attachment(s) = is intended only for the use of the intended recipient and may be confident= ial and/or privileged of = Neusoft Corporation, its subsidiaries and/or its affiliates. If any reader = of this communication is = not the intended recipient, unauthorized use, forwarding, printing, storin= g, disclosure or copying = is strictly prohibited, and may be unlawful.If you have received this commu= nication in error,please = immediately notify the sender by return e-mail, and delete the original mes= sage and all copies from = your system. Thank you. = ---------------------------------------------------------------------------= ------------------------