From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 16F81A058A; Fri, 17 Apr 2020 07:08:08 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 90D3E1DC8E; Fri, 17 Apr 2020 07:08:07 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id A6B731D560 for ; Fri, 17 Apr 2020 07:08:06 +0200 (CEST) IronPort-SDR: +qMca/rzuJ1lWPi8XCykp/TETtG3ICWavdEm5jQGfaXV9NTOLngnawWYmfy9Rm8cMwk11IZ1n8 dwZwY5FJFdFw== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Apr 2020 22:08:05 -0700 IronPort-SDR: 8qYI9z8/eE9vDH6MHALVz2cb9rfqiwwI88lC2jY1s1bzls/wjcmf6IspSmmHBryL9aADa/Z0Ra CxZNo/PxZ/Kw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,393,1580803200"; d="scan'208";a="454601081" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga005.fm.intel.com with ESMTP; 16 Apr 2020 22:08:05 -0700 Received: from shsmsx606.ccr.corp.intel.com (10.109.6.216) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 16 Apr 2020 22:08:05 -0700 Received: from shsmsx603.ccr.corp.intel.com (10.109.6.143) by SHSMSX606.ccr.corp.intel.com (10.109.6.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Fri, 17 Apr 2020 13:08:02 +0800 Received: from shsmsx603.ccr.corp.intel.com ([10.109.6.143]) by SHSMSX603.ccr.corp.intel.com ([10.109.6.143]) with mapi id 15.01.1713.004; Fri, 17 Apr 2020 13:08:02 +0800 From: "Wang, Haiyue" To: "Ye, Xiaolong" CC: "dev@dpdk.org" , "Zhang, Qi Z" , "Yang, Qiming" Thread-Topic: [PATCH v1] net/ice: check the DSN package file firstly Thread-Index: AQHWE54C5PAf+2sFwUSc4Tzy51VGsqh8OikAgACIfOA= Date: Fri, 17 Apr 2020 05:08:02 +0000 Message-ID: <66530dd364c14b6799678ee338da81b3@intel.com> References: <20200416031122.59640-1-haiyue.wang@intel.com> <20200417045044.GD13374@intel.com> In-Reply-To: <20200417045044.GD13374@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.2.0.6 x-originating-ip: [10.239.127.36] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v1] net/ice: check the DSN package file firstly X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > -----Original Message----- > From: Ye, Xiaolong > Sent: Friday, April 17, 2020 12:51 > To: Wang, Haiyue > Cc: dev@dpdk.org; Zhang, Qi Z ; Yang, Qiming > Subject: Re: [PATCH v1] net/ice: check the DSN package file firstly >=20 > On 04/16, Haiyue Wang wrote: > >Align the package file search sequence with PF only for DCF mode. Get > >the DSN through the virtual channel firstly to check the package file > >accessible. >=20 > check the accessibility of the package file? This looks better. >=20 > > > >Signed-off-by: Haiyue Wang > >--- > > drivers/net/ice/ice_dcf_parent.c | 30 ++++++++++++++++++++++++++---- > > 1 file changed, 26 insertions(+), 4 deletions(-) > > > >diff --git a/drivers/net/ice/ice_dcf_parent.c b/drivers/net/ice/ice_dcf_= parent.c > >index e05b6b3e5..d4b4ededb 100644 > >--- a/drivers/net/ice/ice_dcf_parent.c > >+++ b/drivers/net/ice/ice_dcf_parent.c > >@@ -226,12 +226,34 @@ ice_dcf_request_pkg_name(struct ice_hw *hw, char *= pkg_name) > > { > > struct ice_dcf_adapter *dcf_adapter =3D > > container_of(hw, struct ice_dcf_adapter, parent.hw); > >+ struct virtchnl_pkg_info pkg_info; > >+ struct dcf_virtchnl_cmd vc_cmd; > >+ uint64_t dsn; > > > >- /* TODO: check with DSN firstly by iAVF */ > >- PMD_INIT_LOG(DEBUG, > >- "DCF VSI_ID =3D %u", > >- dcf_adapter->real_hw.vsi_id); > >+ vc_cmd.v_op =3D VIRTCHNL_OP_DCF_GET_PKG_INFO; > >+ vc_cmd.req_msglen =3D 0; > >+ vc_cmd.req_msg =3D NULL; > >+ vc_cmd.rsp_buflen =3D sizeof(pkg_info); > >+ vc_cmd.rsp_msgbuf =3D (uint8_t *)&pkg_info; > > > >+ if (ice_dcf_execute_virtchnl_cmd(&dcf_adapter->real_hw, &vc_cmd)) > >+ goto pkg_file_direct; > >+ > >+ rte_memcpy(&dsn, pkg_info.dsn, sizeof(dsn)); >=20 > Seems dsn var is redundant, what about using pkg_info.dsn directly? >=20 pkg_info.dsn is defined as dsn[8], which is designed to align with old driver. ;-) Now the ice kernel module uses 64bit to format: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?= id=3Dceb2f00707f97f8f881d6f253e7123bf5b17d308 > >+ > >+ snprintf(pkg_name, ICE_MAX_PKG_FILENAME_SIZE, > >+ ICE_PKG_FILE_SEARCH_PATH_UPDATES "ice-%016llX.pkg", > >+ (unsigned long long)dsn); > >+ if (!access(pkg_name, 0)) > >+ return 0; > >+ > >+ snprintf(pkg_name, ICE_MAX_PKG_FILENAME_SIZE, > >+ ICE_PKG_FILE_SEARCH_PATH_DEFAULT "ice-%016llX.pkg", > >+ (unsigned long long)dsn); > >+ if (!access(pkg_name, 0)) > >+ return 0; > >+ > >+pkg_file_direct: > > snprintf(pkg_name, > > ICE_MAX_PKG_FILENAME_SIZE, "%s", ICE_PKG_FILE_UPDATES); > > if (!access(pkg_name, 0)) > >-- > >2.26.1 > >