Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1523568 > unrolled thread

[PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions

Started byArnd Bergmann <arnd@arndb.de>
First post2016-11-16 16:20 +0100
Last post2016-11-22 04:30 +0100
Articles 4 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions Arnd Bergmann <arnd@arndb.de> - 2016-11-16 16:20 +0100
    Re: [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions Johannes Thumshirn <jthumshirn@suse.de> - 2016-11-18 14:30 +0100
      RE: [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions "Gurumurthy, Anil" <Anil.Gurumurthy@cavium.com> - 2016-11-21 06:20 +0100
    Re: [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions "Martin K. Petersen" <martin.petersen@oracle.com> - 2016-11-22 04:30 +0100

#1523568 — [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions

FromArnd Bergmann <arnd@arndb.de>
Date2016-11-16 16:20 +0100
Subject[PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions
Message-ID<sEaae-4Bb-7@gated-at.bofh.it>
These two macros cause lots of warnings with gcc-7:

drivers/scsi/bfa/bfa_svc.c: In function 'bfa_fcxp_meminfo':
drivers/scsi/bfa/bfa_svc.c:521:103: error: '*' in boolean context, suggest '&&' instead [-Werror=int-in-bool-context]

Using inline functions makes them much more readable and avoids
the warnings.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/scsi/bfa/bfa_ioc.h | 30 +++++++++++++++++-------------
 1 file changed, 17 insertions(+), 13 deletions(-)

diff --git a/drivers/scsi/bfa/bfa_ioc.h b/drivers/scsi/bfa/bfa_ioc.h
index 523fb02109b6..c27ed80f12ab 100644
--- a/drivers/scsi/bfa/bfa_ioc.h
+++ b/drivers/scsi/bfa/bfa_ioc.h
@@ -111,20 +111,24 @@ struct bfa_meminfo_s {
 	struct bfa_mem_kva_s kva_info;
 };
 
-/* BFA memory segment setup macros */
-#define bfa_mem_dma_setup(_meminfo, _dm_ptr, _seg_sz) do {	\
-	((bfa_mem_dma_t *)(_dm_ptr))->mem_len = (_seg_sz);	\
-	if (_seg_sz)						\
-		list_add_tail(&((bfa_mem_dma_t *)_dm_ptr)->qe,	\
-			      &(_meminfo)->dma_info.qe);	\
-} while (0)
+/* BFA memory segment setup helpers */
+static inline void bfa_mem_dma_setup(struct bfa_meminfo_s *meminfo,
+				     struct bfa_mem_dma_s *dm_ptr,
+				     size_t seg_sz)
+{
+	dm_ptr->mem_len = seg_sz;
+	if (seg_sz)
+		list_add_tail(&dm_ptr->qe, &meminfo->dma_info.qe);
+}
 
-#define bfa_mem_kva_setup(_meminfo, _kva_ptr, _seg_sz) do {	\
-	((bfa_mem_kva_t *)(_kva_ptr))->mem_len = (_seg_sz);	\
-	if (_seg_sz)						\
-		list_add_tail(&((bfa_mem_kva_t *)_kva_ptr)->qe,	\
-			      &(_meminfo)->kva_info.qe);	\
-} while (0)
+static inline void bfa_mem_kva_setup(struct bfa_meminfo_s *meminfo,
+				     struct bfa_mem_kva_s *kva_ptr,
+				     size_t seg_sz)
+{
+	kva_ptr->mem_len = seg_sz;
+	if (seg_sz)
+		list_add_tail(&kva_ptr->qe, &meminfo->kva_info.qe);
+}
 
 /* BFA dma memory segments iterator */
 #define bfa_mem_dma_sptr(_mod, _i)	(&(_mod)->dma_seg[(_i)])
-- 
2.9.0

[toc] | [next] | [standalone]


#1525313

FromJohannes Thumshirn <jthumshirn@suse.de>
Date2016-11-18 14:30 +0100
Message-ID<sERoS-7Cf-17@gated-at.bofh.it>
In reply to#1523568
On Wed, Nov 16, 2016 at 04:14:27PM +0100, Arnd Bergmann wrote:
> These two macros cause lots of warnings with gcc-7:
> 
> drivers/scsi/bfa/bfa_svc.c: In function 'bfa_fcxp_meminfo':
> drivers/scsi/bfa/bfa_svc.c:521:103: error: '*' in boolean context, suggest '&&' instead [-Werror=int-in-bool-context]
> 
> Using inline functions makes them much more readable and avoids
> the warnings.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---

Looks good,
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>

-- 
Johannes Thumshirn                                          Storage
jthumshirn@suse.de                                +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850

[toc] | [prev] | [next] | [standalone]


#1526366

From"Gurumurthy, Anil" <Anil.Gurumurthy@cavium.com>
Date2016-11-21 06:20 +0100
Message-ID<sFPbj-5cE-3@gated-at.bofh.it>
In reply to#1525313
Patch looks good.
Acked by: Anil Gurumurthy <anil.gurumurthy@cavium.com>


-----Original Message-----
From: Johannes Thumshirn [mailto:jthumshirn@suse.de] 
Sent: 18 November 2016 18:52
To: Arnd Bergmann <arnd@arndb.de>
Cc: James E.J. Bottomley <jejb@linux.vnet.ibm.com>; Martin K. Petersen <martin.petersen@oracle.com>; Anil Gurumurthy <anil.gurumurthy@qlogic.com>; Sudarsana Kalluru <sudarsana.kalluru@qlogic.com>; linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
Subject: Re: [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions

On Wed, Nov 16, 2016 at 04:14:27PM +0100, Arnd Bergmann wrote:
> These two macros cause lots of warnings with gcc-7:
> 
> drivers/scsi/bfa/bfa_svc.c: In function 'bfa_fcxp_meminfo':
> drivers/scsi/bfa/bfa_svc.c:521:103: error: '*' in boolean context, 
> suggest '&&' instead [-Werror=int-in-bool-context]
> 
> Using inline functions makes them much more readable and avoids the 
> warnings.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---

Looks good,
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>

-- 
Johannes Thumshirn                                          Storage
jthumshirn@suse.de                                +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850

[toc] | [prev] | [next] | [standalone]


#1527199

From"Martin K. Petersen" <martin.petersen@oracle.com>
Date2016-11-22 04:30 +0100
Message-ID<sG9Wq-1Ix-11@gated-at.bofh.it>
In reply to#1523568
>>>>> "Arnd" == Arnd Bergmann <arnd@arndb.de> writes:

Arnd> These two macros cause lots of warnings with gcc-7:
Arnd> drivers/scsi/bfa/bfa_svc.c: In function 'bfa_fcxp_meminfo':
Arnd> drivers/scsi/bfa/bfa_svc.c:521:103: error: '*' in boolean context,
Arnd> suggest '&&' instead [-Werror=int-in-bool-context]

Arnd> Using inline functions makes them much more readable and avoids
Arnd> the warnings.

Applied to 4.10/scsi-queue.

-- 
Martin K. Petersen	Oracle Linux Engineering

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web