From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 370015A44 for ; Thu, 12 Jan 2017 20:11:23 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga101.fm.intel.com with ESMTP; 12 Jan 2017 11:11:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,219,1477983600"; d="scan'208";a="29644510" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.237.220.38]) ([10.237.220.38]) by orsmga002.jf.intel.com with ESMTP; 12 Jan 2017 11:11:19 -0800 To: Jerin Jacob , dev@dpdk.org References: <1482832175-27199-1-git-send-email-jerin.jacob@caviumnetworks.com> <1484212646-10338-1-git-send-email-jerin.jacob@caviumnetworks.com> <1484212646-10338-18-git-send-email-jerin.jacob@caviumnetworks.com> Cc: konstantin.ananyev@intel.com, thomas.monjalon@6wind.com, bruce.richardson@intel.com, jianbo.liu@linaro.org, viktorin@rehivetech.com, santosh.shukla@caviumnetworks.com, Harish Patil , Rasesh Mody From: Ferruh Yigit Message-ID: <53b0ad99-4b69-41ef-4630-881d9797e6e8@intel.com> Date: Thu, 12 Jan 2017 19:11:18 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: <1484212646-10338-18-git-send-email-jerin.jacob@caviumnetworks.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Subject: Re: [dpdk-dev] [PATCH v3 17/29] net/bnx2x: use eal I/O device memory read/write API 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: , X-List-Received-Date: Thu, 12 Jan 2017 19:11:23 -0000 On 1/12/2017 9:17 AM, Jerin Jacob wrote: <...> > > @@ -1560,11 +1556,9 @@ bnx2x_reg_read32(struct bnx2x_softc *sc, size_t offset) > #define DPM_TRIGGER_TYPE 0x40 > > /* Doorbell macro */ > -#define BNX2X_DB_WRITE(db_bar, val) \ > - *((volatile uint32_t *)(db_bar)) = (val) > +#define BNX2X_DB_WRITE(db_bar, val) rte_write32_relaxed((val), (db_bar)) What is the rule to use relaxed version or not? I don't know about memory barrier requirements, if it is easy, would you mind explaining? Because I have same question for many different parts of this patchset. Thanks, ferruh