tree:   
https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git 
dm-5.8
head:   44eaf01834bc7414ab5298d097ed4e142a714420
commit: 4813c868bef0182b7ca7662f967b1c4bfdff1c1e [50/54] dm zoned: add metadata 
logging functions
config: parisc-randconfig-r024-20200519 (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 4813c868bef0182b7ca7662f967b1c4bfdff1c1e
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross 
ARCH=parisc 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <l...@intel.com>

All warnings (new ones prefixed by >>, old ones prefixed by <<):

In file included from include/linux/mm.h:94,
from include/linux/bvec.h:13,
from include/linux/blk_types.h:10,
from include/linux/genhd.h:19,
from include/linux/blkdev.h:11,
from drivers/md/dm-zoned.h:12,
from drivers/md/dm-zoned-metadata.c:8:
include/asm-generic/pgtable.h: In function 'pte_clear_not_present_full':
arch/parisc/include/asm/pgtable.h:96:9: warning: variable 'old_pte' set but not 
used [-Wunused-but-set-variable]
96 |   pte_t old_pte;              |         ^~~~~~~
arch/parisc/include/asm/pgtable.h:322:34: note: in expansion of macro 
'set_pte_at'
322 | #define pte_clear(mm, addr, xp)  set_pte_at(mm, addr, xp, __pte(0))
|                                  ^~~~~~~~~~
include/asm-generic/pgtable.h:201:2: note: in expansion of macro 'pte_clear'
201 |  pte_clear(mm, address, ptep);
|  ^~~~~~~~~
include/asm-generic/pgtable.h: In function '__ptep_modify_prot_commit':
arch/parisc/include/asm/pgtable.h:96:9: warning: variable 'old_pte' set but not 
used [-Wunused-but-set-variable]
96 |   pte_t old_pte;              |         ^~~~~~~
include/asm-generic/pgtable.h:640:2: note: in expansion of macro 'set_pte_at'
640 |  set_pte_at(vma->vm_mm, addr, ptep, pte);
|  ^~~~~~~~~~
drivers/md/dm-zoned-metadata.c: At top level:
>> drivers/md/dm-zoned-metadata.c:2468:6: warning: no previous prototype for 
>> 'dmz_print_dev' [-Wmissing-prototypes]
2468 | void dmz_print_dev(struct dmz_metadata *zmd, int num)
|      ^~~~~~~~~~~~~

vim +/dmz_print_dev +2468 drivers/md/dm-zoned-metadata.c

  2467  
> 2468  void dmz_print_dev(struct dmz_metadata *zmd, int num)
  2469  {
  2470          struct dmz_dev *dev = &zmd->dev[num];
  2471  
  2472          dmz_dev_info(dev, "Host-%s zoned block device",
  2473                       bdev_zoned_model(dev->bdev) == BLK_ZONED_HA ?
  2474                       "aware" : "managed");
  2475          dmz_dev_info(dev, "  %llu 512-byte logical sectors",
  2476                       (u64)dev->capacity);
  2477          dmz_dev_info(dev, "  %u zones of %llu 512-byte logical sectors",
  2478                       dev->nr_zones, (u64)zmd->zone_nr_sectors);
  2479  }
  2480  /*
  2481   * Initialize the zoned metadata.
  2482   */
  2483  int dmz_ctr_metadata(struct dmz_dev *dev, struct dmz_metadata 
**metadata,
  2484                       const char *devname)
  2485  {
  2486          struct dmz_metadata *zmd;
  2487          unsigned int i;
  2488          struct dm_zone *zone;
  2489          int ret;
  2490  
  2491          zmd = kzalloc(sizeof(struct dmz_metadata), GFP_KERNEL);
  2492          if (!zmd)
  2493                  return -ENOMEM;
  2494  
  2495          strcpy(zmd->devname, devname);
  2496          zmd->dev = dev;
  2497          zmd->mblk_rbtree = RB_ROOT;
  2498          init_rwsem(&zmd->mblk_sem);
  2499          mutex_init(&zmd->mblk_flush_lock);
  2500          spin_lock_init(&zmd->mblk_lock);
  2501          INIT_LIST_HEAD(&zmd->mblk_lru_list);
  2502          INIT_LIST_HEAD(&zmd->mblk_dirty_list);
  2503  
  2504          mutex_init(&zmd->map_lock);
  2505          atomic_set(&zmd->unmap_nr_rnd, 0);
  2506          INIT_LIST_HEAD(&zmd->unmap_rnd_list);
  2507          INIT_LIST_HEAD(&zmd->map_rnd_list);
  2508  
  2509          atomic_set(&zmd->unmap_nr_seq, 0);
  2510          INIT_LIST_HEAD(&zmd->unmap_seq_list);
  2511          INIT_LIST_HEAD(&zmd->map_seq_list);
  2512  
  2513          atomic_set(&zmd->nr_reserved_seq_zones, 0);
  2514          INIT_LIST_HEAD(&zmd->reserved_seq_zones_list);
  2515  
  2516          init_waitqueue_head(&zmd->free_wq);
  2517  
  2518          /* Initialize zone descriptors */
  2519          ret = dmz_init_zones(zmd);
  2520          if (ret)
  2521                  goto err;
  2522  
  2523          /* Get super block */
  2524          ret = dmz_load_sb(zmd);
  2525          if (ret)
  2526                  goto err;
  2527  
  2528          /* Set metadata zones starting from sb_zone */
  2529          for (i = 0; i < zmd->nr_meta_zones << 1; i++) {
  2530                  zone = dmz_get(zmd, zmd->sb[0].zone->id + i);
  2531                  if (!dmz_is_rnd(zone))
  2532                          goto err;
  2533                  set_bit(DMZ_META, &zone->flags);
  2534          }
  2535  
  2536          /* Load mapping table */
  2537          ret = dmz_load_mapping(zmd);
  2538          if (ret)
  2539                  goto err;
  2540  
  2541          /*
  2542           * Cache size boundaries: allow at least 2 super blocks, the 
chunk map
  2543           * blocks and enough blocks to be able to cache the bitmap 
blocks of
  2544           * up to 16 zones when idle (min_nr_mblks). Otherwise, if busy, 
allow
  2545           * the cache to add 512 more metadata blocks.
  2546           */
  2547          zmd->min_nr_mblks = 2 + zmd->nr_map_blocks + 
zmd->zone_nr_bitmap_blocks * 16;
  2548          zmd->max_nr_mblks = zmd->min_nr_mblks + 512;
  2549          zmd->mblk_shrinker.count_objects = dmz_mblock_shrinker_count;
  2550          zmd->mblk_shrinker.scan_objects = dmz_mblock_shrinker_scan;
  2551          zmd->mblk_shrinker.seeks = DEFAULT_SEEKS;
  2552  
  2553          /* Metadata cache shrinker */
  2554          ret = register_shrinker(&zmd->mblk_shrinker);
  2555          if (ret) {
  2556                  dmz_zmd_err(zmd, "Register metadata cache shrinker 
failed");
  2557                  goto err;
  2558          }
  2559  
  2560          dmz_zmd_info(zmd, "DM-Zoned metadata version %d", DMZ_META_VER);
  2561          dmz_print_dev(zmd, 0);
  2562  
  2563          dmz_zmd_info(zmd, "  %u zones of %llu 512-byte logical sectors",
  2564                       zmd->nr_zones, (u64)zmd->zone_nr_sectors);
  2565          dmz_zmd_info(zmd, "  %u metadata zones",
  2566                       zmd->nr_meta_zones * 2);
  2567          dmz_zmd_info(zmd, "  %u data zones for %u chunks",
  2568                       zmd->nr_data_zones, zmd->nr_chunks);
  2569          dmz_zmd_info(zmd, "    %u random zones (%u unmapped)",
  2570                       zmd->nr_rnd, atomic_read(&zmd->unmap_nr_rnd));
  2571          dmz_zmd_info(zmd, "    %u sequential zones (%u unmapped)",
  2572                       zmd->nr_seq, atomic_read(&zmd->unmap_nr_seq));
  2573          dmz_zmd_info(zmd, "  %u reserved sequential data zones",
  2574                       zmd->nr_reserved_seq);
  2575          dmz_zmd_debug(zmd, "Format:");
  2576          dmz_zmd_debug(zmd, "%u metadata blocks per set (%u max cache)",
  2577                        zmd->nr_meta_blocks, zmd->max_nr_mblks);
  2578          dmz_zmd_debug(zmd, "  %u data zone mapping blocks",
  2579                        zmd->nr_map_blocks);
  2580          dmz_zmd_debug(zmd, "  %u bitmap blocks",
  2581                        zmd->nr_bitmap_blocks);
  2582  
  2583          *metadata = zmd;
  2584  
  2585          return 0;
  2586  err:
  2587          dmz_cleanup_metadata(zmd);
  2588          kfree(zmd);
  2589          *metadata = NULL;
  2590  
  2591          return ret;
  2592  }
  2593  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

Reply via email to