Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

lightnvm: pblk: Switch to use new generic UUID API

There are new types and helpers that are supposed to be used in new code.

As a preparation to get rid of legacy types and API functions do
the conversion here.

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>

authored by

Andy Shevchenko and committed by
Jens Axboe
7e0a0847 e74ecf63

+10 -15
+3 -2
drivers/lightnvm/pblk-core.c
··· 1065 1065 bitmap_set(line->lun_bitmap, 0, lm->lun_bitmap_len); 1066 1066 1067 1067 smeta_buf->header.identifier = cpu_to_le32(PBLK_MAGIC); 1068 - memcpy(smeta_buf->header.uuid, pblk->instance_uuid, 16); 1068 + guid_copy((guid_t *)&smeta_buf->header.uuid, &pblk->instance_uuid); 1069 1069 smeta_buf->header.id = cpu_to_le32(line->id); 1070 1070 smeta_buf->header.type = cpu_to_le16(line->type); 1071 1071 smeta_buf->header.version_major = SMETA_VERSION_MAJOR; ··· 1874 1874 1875 1875 if (le32_to_cpu(emeta_buf->header.identifier) != PBLK_MAGIC) { 1876 1876 emeta_buf->header.identifier = cpu_to_le32(PBLK_MAGIC); 1877 - memcpy(emeta_buf->header.uuid, pblk->instance_uuid, 16); 1877 + guid_copy((guid_t *)&emeta_buf->header.uuid, 1878 + &pblk->instance_uuid); 1878 1879 emeta_buf->header.id = cpu_to_le32(line->id); 1879 1880 emeta_buf->header.type = cpu_to_le16(line->type); 1880 1881 emeta_buf->header.version_major = EMETA_VERSION_MAJOR;
+1 -1
drivers/lightnvm/pblk-init.c
··· 130 130 struct pblk_line *line = NULL; 131 131 132 132 if (factory_init) { 133 - pblk_setup_uuid(pblk); 133 + guid_gen(&pblk->instance_uuid); 134 134 } else { 135 135 line = pblk_recov_l2p(pblk); 136 136 if (IS_ERR(line)) {
+5 -3
drivers/lightnvm/pblk-recovery.c
··· 703 703 704 704 /* The first valid instance uuid is used for initialization */ 705 705 if (!valid_uuid) { 706 - memcpy(pblk->instance_uuid, smeta_buf->header.uuid, 16); 706 + guid_copy(&pblk->instance_uuid, 707 + (guid_t *)&smeta_buf->header.uuid); 707 708 valid_uuid = 1; 708 709 } 709 710 710 - if (memcmp(pblk->instance_uuid, smeta_buf->header.uuid, 16)) { 711 + if (!guid_equal(&pblk->instance_uuid, 712 + (guid_t *)&smeta_buf->header.uuid)) { 711 713 pblk_debug(pblk, "ignore line %u due to uuid mismatch\n", 712 714 i); 713 715 continue; ··· 739 737 } 740 738 741 739 if (!found_lines) { 742 - pblk_setup_uuid(pblk); 740 + guid_gen(&pblk->instance_uuid); 743 741 744 742 spin_lock(&l_mg->free_lock); 745 743 WARN_ON_ONCE(!test_and_clear_bit(meta_line,
+1 -9
drivers/lightnvm/pblk.h
··· 646 646 647 647 int sec_per_write; 648 648 649 - unsigned char instance_uuid[16]; 649 + guid_t instance_uuid; 650 650 651 651 /* Persistent write amplification counters, 4kb sector I/Os */ 652 652 atomic64_t user_wa; /* Sectors written by user */ ··· 1358 1358 static inline unsigned int pblk_get_secs(struct bio *bio) 1359 1359 { 1360 1360 return bio->bi_iter.bi_size / PBLK_EXPOSED_PAGE_SIZE; 1361 - } 1362 - 1363 - static inline void pblk_setup_uuid(struct pblk *pblk) 1364 - { 1365 - uuid_le uuid; 1366 - 1367 - uuid_le_gen(&uuid); 1368 - memcpy(pblk->instance_uuid, uuid.b, 16); 1369 1361 } 1370 1362 1371 1363 static inline char *pblk_disk_name(struct pblk *pblk)