parisc/lba_pci: use container_of in LBA_DEV
authorChristoph Hellwig <hch@lst.de>
Tue, 29 Jan 2019 18:13:09 +0000 (19:13 +0100)
committerHelge Deller <deller@gmx.de>
Thu, 21 Feb 2019 19:37:12 +0000 (20:37 +0100)
Use the type safe container_of macros instead of a blind cast in
LBA_DEV, and turn the macro into an inline function.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Helge Deller <deller@gmx.de>
drivers/parisc/lba_pci.c

index dcea155..3c4a2e7 100644 (file)
@@ -111,12 +111,10 @@ static u32 lba_t32;
 
 #define LBA_SKIP_PROBE(d) ((d)->flags & LBA_FLAG_SKIP_PROBE)
 
-
-/* Looks nice and keeps the compiler happy */
-#define LBA_DEV(d) ({                          \
-       void *__pdata = d;                      \
-       BUG_ON(!__pdata);                       \
-       (struct lba_device *)__pdata; })
+static inline struct lba_device *LBA_DEV(struct pci_hba_data *hba)
+{
+       return container_of(hba, struct lba_device, hba);
+}
 
 /*
 ** Only allow 8 subsidiary busses per LBA