Hi Jaegeuk, [auto build test WARNING on: f2fs/dev] [also build test WARNING on: v4.4-rc3 next-20151127] url: https://github.com/0day-ci/linux/commits/Jaegeuk-Kim/f2fs-avoid-deadlock-in-f2fs_shrink_extent_tree/20151201-085538 base: https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs dev config: i386-randconfig-i1-201548 (attached as .config) reproduce: # save the attached .config to linux build tree make ARCH=i386 All warnings (new ones prefixed by >>): fs/f2fs/extent_cache.c: In function 'f2fs_shrink_extent_tree': >> fs/f2fs/extent_cache.c:618:27: warning: passing argument 1 of 'down_write_trylock' from incompatible pointer type [-Wincompatible-pointer-types] if (down_write_trylock(&et->lock)) { ^ In file included from include/linux/fs.h:20:0, from fs/f2fs/extent_cache.c:14: include/linux/rwsem.h:123:12: note: expected 'struct rw_semaphore *' but argument is of type 'rwlock_t * {aka struct <anonymous> *}' extern int down_write_trylock(struct rw_semaphore *sem); ^ vim +/down_write_trylock +618 fs/f2fs/extent_cache.c 602 } 603 spin_unlock(&sbi->extent_lock); 604 605 /* 606 * reset ino for searching victims from beginning of global extent tree. 607 */ 608 ino = F2FS_ROOT_INO(sbi); 609 610 while ((found = radix_tree_gang_lookup(root, 611 (void **)treevec, ino, EXT_TREE_VEC_SIZE))) { 612 unsigned i; 613 614 ino = treevec[found - 1]->ino + 1; 615 for (i = 0; i < found; i++) { 616 struct extent_tree *et = treevec[i]; 617 > 618 if (down_write_trylock(&et->lock)) { 619 node_cnt += __free_extent_tree(sbi, et, false); 620 write_unlock(&et->lock); 621 } 622 623 if (node_cnt + tree_cnt >= nr_shrink) 624 goto unlock_out; 625 } 626 } --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: Binary data