Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1523568
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH] bfa: turn bfa_mem_{kva,dma}_setup into inline functions |
| Date | 2016-11-16 16:20 +0100 |
| Message-ID | <sEaae-4Bb-7@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
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
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[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
csiph-web