lightnvm: Use u64 instead of __le64 for CPU visible side
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 11 Feb 2019 12:25:04 +0000 (13:25 +0100)
committerJens Axboe <axboe@kernel.dk>
Mon, 11 Feb 2019 15:18:07 +0000 (08:18 -0700)
Sparse complains about using strict data types:

drivers/lightnvm/pblk-read.c:254:43: warning: incorrect type in assignment (different base types)
drivers/lightnvm/pblk-read.c:254:43:    expected restricted __le64 <noident>
drivers/lightnvm/pblk-read.c:254:43:    got unsigned long long [unsigned] [usertype] <noident>
drivers/lightnvm/pblk-read.c:255:29: warning: cast from restricted __le64
drivers/lightnvm/pblk-read.c:268:29: warning: cast from restricted __le64
drivers/lightnvm/pblk-read.c:328:41: warning: incorrect type in assignment (different base types)
drivers/lightnvm/pblk-read.c:328:41:    expected restricted __le64 <noident>
drivers/lightnvm/pblk-read.c:328:41:    got unsigned long long [unsigned] [usertype] <noident>

In the code it seems explicit that lba_list_mem and lba_list_media members
of struct pblk_pr_ctx are used on CPU side, which means they should not be
of strict types.

Change types of lba_list_mem and lba_list_media members to be u64.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Javier González <javier@javigon.com>
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/lightnvm/pblk.h

index 85e38ed62f8565e327e190d143f8cbe89b850a07..0dd697ea201e087bf1139f98821ca946153dd4f9 100644 (file)
@@ -131,8 +131,8 @@ struct pblk_pr_ctx {
        unsigned int bio_init_idx;
        void *ppa_ptr;
        dma_addr_t dma_ppa_list;
-       __le64 lba_list_mem[NVM_MAX_VLBA];
-       __le64 lba_list_media[NVM_MAX_VLBA];
+       u64 lba_list_mem[NVM_MAX_VLBA];
+       u64 lba_list_media[NVM_MAX_VLBA];
 };
 
 /* Pad context */