Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
* [linux-next:master 2191/3192] fs/bcachefs/str_hash.c:164:2: error: expected expression
@ 2024-12-11 20:27 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-12-11 20:27 UTC (permalink / raw)
  To: Kent Overstreet; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   91e71d606356e50f238d7a87aacdee4abc427f07
commit: 2519d3b0d656d1a3106bc2c1f23c178f83570607 [2191/3192] bcachefs: bch2_str_hash_check_key() now checks inode hash info
config: hexagon-randconfig-002-20241211 (https://download.01.org/0day-ci/archive/20241212/202412120442.nAWplWOh-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241212/202412120442.nAWplWOh-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202412120442.nAWplWOh-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from fs/bcachefs/str_hash.c:3:
   In file included from fs/bcachefs/bcachefs.h:188:
   In file included from include/linux/bio.h:10:
   In file included from include/linux/blk_types.h:10:
   In file included from include/linux/bvec.h:10:
   In file included from include/linux/highmem.h:12:
   In file included from include/linux/hardirq.h:11:
   In file included from ./arch/hexagon/include/generated/asm/hardirq.h:1:
   In file included from include/asm-generic/hardirq.h:17:
   In file included from include/linux/irq.h:20:
   In file included from include/linux/io.h:14:
   In file included from arch/hexagon/include/asm/io.h:328:
   include/asm-generic/io.h:548:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     548 |         val = __raw_readb(PCI_IOBASE + addr);
         |                           ~~~~~~~~~~ ^
   include/asm-generic/io.h:561:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     561 |         val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
         |                                                         ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:37:51: note: expanded from macro '__le16_to_cpu'
      37 | #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
         |                                                   ^
   In file included from fs/bcachefs/str_hash.c:3:
   In file included from fs/bcachefs/bcachefs.h:188:
   In file included from include/linux/bio.h:10:
   In file included from include/linux/blk_types.h:10:
   In file included from include/linux/bvec.h:10:
   In file included from include/linux/highmem.h:12:
   In file included from include/linux/hardirq.h:11:
   In file included from ./arch/hexagon/include/generated/asm/hardirq.h:1:
   In file included from include/asm-generic/hardirq.h:17:
   In file included from include/linux/irq.h:20:
   In file included from include/linux/io.h:14:
   In file included from arch/hexagon/include/asm/io.h:328:
   include/asm-generic/io.h:574:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     574 |         val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
         |                                                         ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:35:51: note: expanded from macro '__le32_to_cpu'
      35 | #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
         |                                                   ^
   In file included from fs/bcachefs/str_hash.c:3:
   In file included from fs/bcachefs/bcachefs.h:188:
   In file included from include/linux/bio.h:10:
   In file included from include/linux/blk_types.h:10:
   In file included from include/linux/bvec.h:10:
   In file included from include/linux/highmem.h:12:
   In file included from include/linux/hardirq.h:11:
   In file included from ./arch/hexagon/include/generated/asm/hardirq.h:1:
   In file included from include/asm-generic/hardirq.h:17:
   In file included from include/linux/irq.h:20:
   In file included from include/linux/io.h:14:
   In file included from arch/hexagon/include/asm/io.h:328:
   include/asm-generic/io.h:585:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     585 |         __raw_writeb(value, PCI_IOBASE + addr);
         |                             ~~~~~~~~~~ ^
   include/asm-generic/io.h:595:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     595 |         __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
         |                                                       ~~~~~~~~~~ ^
   include/asm-generic/io.h:605:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     605 |         __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
         |                                                       ~~~~~~~~~~ ^
>> fs/bcachefs/str_hash.c:164:2: error: expected expression
     164 |         struct bch_inode_unpacked inode;
         |         ^
>> fs/bcachefs/str_hash.c:165:30: error: use of undeclared identifier 'inode'
     165 |         ret = bch2_inode_unpack(k, &inode);
         |                                     ^
   fs/bcachefs/str_hash.c:169:55: error: use of undeclared identifier 'inode'
     169 |         struct bch_hash_info hash2 = bch2_hash_info_init(c, &inode);
         |                                                              ^
   fs/bcachefs/str_hash.c:171:40: error: use of undeclared identifier 'inode'
     171 |                 ret = repair_inode_hash_info(trans, &inode);
         |                                                      ^
   6 warnings and 4 errors generated.


vim +164 fs/bcachefs/str_hash.c

   140	
   141	/*
   142	 * All versions of the same inode in different snapshots must have the same hash
   143	 * seed/type: verify that the hash info we're using matches the root
   144	 */
   145	static int check_inode_hash_info_matches_root(struct btree_trans *trans, u64 inum,
   146						      struct bch_hash_info *hash_info)
   147	{
   148		struct bch_fs *c = trans->c;
   149		struct btree_iter iter;
   150		struct bkey_s_c k;
   151		int ret = 0;
   152	
   153		for_each_btree_key_reverse_norestart(trans, iter, BTREE_ID_inodes, SPOS(0, inum, U32_MAX),
   154						     BTREE_ITER_all_snapshots, k, ret) {
   155			if (k.k->p.offset != inum)
   156				break;
   157			if (bkey_is_inode(k.k))
   158				goto found;
   159		}
   160		bch_err(c, "%s(): inum %llu not found", __func__, inum);
   161		ret = -BCH_ERR_fsck_repair_unimplemented;
   162		goto err;
   163	found:
 > 164		struct bch_inode_unpacked inode;
 > 165		ret = bch2_inode_unpack(k, &inode);
   166		if (ret)
   167			goto err;
   168	
   169		struct bch_hash_info hash2 = bch2_hash_info_init(c, &inode);
   170		if (memcmp(hash_info, &hash2, sizeof(hash2))) {
   171			ret = repair_inode_hash_info(trans, &inode);
   172			if (!ret) {
   173				bch_err(c, "inode hash info mismatch with root, but mismatch not found");
   174				ret = -BCH_ERR_fsck_repair_unimplemented;
   175			}
   176		}
   177	err:
   178		bch2_trans_iter_exit(trans, &iter);
   179		return ret;
   180	}
   181	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-12-11 20:27 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-11 20:27 [linux-next:master 2191/3192] fs/bcachefs/str_hash.c:164:2: error: expected expression kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox