lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Date:   Thu, 16 Dec 2021 22:15:34 +0800
From:   kernel test robot <lkp@...el.com>
To:     "Darrick J. Wong" <djwong@...nel.org>
Cc:     llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
        "Darrick J. Wong" <darrick.wong@...cle.com>,
        linux-kernel@...r.kernel.org
Subject: [djwong-xfs:repair-symlink-swapext 325/325]
 fs/xfs/libxfs/xfs_symlink_remote.c:387:1: warning: no previous prototype for
 function 'xfs_symlink_remote_truncate'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git repair-symlink-swapext
head:   851df07d9599471df909c4ff0e3cf33f4b9619f0
commit: 851df07d9599471df909c4ff0e3cf33f4b9619f0 [325/325] xfs: convert symlink repair to use swapext
config: riscv-randconfig-r042-20211216 (https://download.01.org/0day-ci/archive/20211216/202112162223.7F9L1svL-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project dd245bab9fbb364faa1581e4f92ba3119a872fba)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/commit/?id=851df07d9599471df909c4ff0e3cf33f4b9619f0
        git remote add djwong-xfs https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git
        git fetch --no-tags djwong-xfs repair-symlink-swapext
        git checkout 851df07d9599471df909c4ff0e3cf33f4b9619f0
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash fs/xfs/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

   fs/xfs/libxfs/xfs_symlink_remote.c:28:1: warning: no previous prototype for function 'xfs_symlink_blocks' [-Wmissing-prototypes]
   xfs_symlink_blocks(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:27:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int
   ^
   static 
   fs/xfs/libxfs/xfs_symlink_remote.c:38:1: warning: no previous prototype for function 'xfs_symlink_hdr_set' [-Wmissing-prototypes]
   xfs_symlink_hdr_set(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:37:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int
   ^
   static 
   fs/xfs/libxfs/xfs_symlink_remote.c:68:1: warning: no previous prototype for function 'xfs_symlink_hdr_ok' [-Wmissing-prototypes]
   xfs_symlink_hdr_ok(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:67:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   bool
   ^
   static 
   fs/xfs/libxfs/xfs_symlink_remote.c:167:1: warning: no previous prototype for function 'xfs_symlink_local_to_remote' [-Wmissing-prototypes]
   xfs_symlink_local_to_remote(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:166:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void
   ^
   static 
   fs/xfs/libxfs/xfs_symlink_remote.c:206:1: warning: no previous prototype for function 'xfs_symlink_shortform_verify' [-Wmissing-prototypes]
   xfs_symlink_shortform_verify(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:205:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   xfs_failaddr_t
   ^
   static 
   fs/xfs/libxfs/xfs_symlink_remote.c:239:1: warning: no previous prototype for function 'xfs_symlink_remote_read' [-Wmissing-prototypes]
   xfs_symlink_remote_read(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:238:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int
   ^
   static 
   fs/xfs/libxfs/xfs_symlink_remote.c:311:1: warning: no previous prototype for function 'xfs_symlink_write_target' [-Wmissing-prototypes]
   xfs_symlink_write_target(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:310:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int
   ^
   static 
>> fs/xfs/libxfs/xfs_symlink_remote.c:387:1: warning: no previous prototype for function 'xfs_symlink_remote_truncate' [-Wmissing-prototypes]
   xfs_symlink_remote_truncate(
   ^
   fs/xfs/libxfs/xfs_symlink_remote.c:386:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int
   ^
   static 
   8 warnings generated.


vim +/xfs_symlink_remote_truncate +387 fs/xfs/libxfs/xfs_symlink_remote.c

   308	
   309	/* Write the symlink target into the inode. */
   310	int
 > 311	xfs_symlink_write_target(
   312		struct xfs_trans	*tp,
   313		struct xfs_inode	*ip,
   314		const char		*target_path,
   315		int			pathlen,
   316		xfs_fsblock_t		fs_blocks,
   317		uint			resblks)
   318	{
   319		struct xfs_bmbt_irec	mval[XFS_SYMLINK_MAPS];
   320		struct xfs_mount	*mp = tp->t_mountp;
   321		const char		*cur_chunk;
   322		struct xfs_buf		*bp;
   323		xfs_daddr_t		d;
   324		int			byte_cnt;
   325		int			nmaps;
   326		int			offset = 0;
   327		int			n;
   328		int			error;
   329	
   330		/*
   331		 * If the symlink will fit into the inode, write it inline.
   332		 */
   333		if (pathlen <= XFS_IFORK_DSIZE(ip)) {
   334			xfs_init_local_fork(ip, XFS_DATA_FORK, target_path, pathlen);
   335	
   336			ip->i_disk_size = pathlen;
   337			ip->i_df.if_format = XFS_DINODE_FMT_LOCAL;
   338			xfs_trans_log_inode(tp, ip, XFS_ILOG_DDATA | XFS_ILOG_CORE);
   339			return 0;
   340		}
   341	
   342		nmaps = XFS_SYMLINK_MAPS;
   343		error = xfs_bmapi_write(tp, ip, 0, fs_blocks, XFS_BMAPI_METADATA,
   344				resblks, mval, &nmaps);
   345		if (error)
   346			return error;
   347	
   348		ip->i_disk_size = pathlen;
   349		xfs_trans_log_inode(tp, ip, XFS_ILOG_CORE);
   350	
   351		cur_chunk = target_path;
   352		offset = 0;
   353		for (n = 0; n < nmaps; n++) {
   354			char	*buf;
   355	
   356			d = XFS_FSB_TO_DADDR(mp, mval[n].br_startblock);
   357			byte_cnt = XFS_FSB_TO_B(mp, mval[n].br_blockcount);
   358			error = xfs_trans_get_buf(tp, mp->m_ddev_targp, d,
   359					BTOBB(byte_cnt), 0, &bp);
   360			if (error)
   361				return error;
   362			bp->b_ops = &xfs_symlink_buf_ops;
   363	
   364			byte_cnt = XFS_SYMLINK_BUF_SPACE(mp, byte_cnt);
   365			byte_cnt = min(byte_cnt, pathlen);
   366	
   367			buf = bp->b_addr;
   368			buf += xfs_symlink_hdr_set(mp, ip->i_ino, offset, byte_cnt,
   369					bp);
   370	
   371			memcpy(buf, cur_chunk, byte_cnt);
   372	
   373			cur_chunk += byte_cnt;
   374			pathlen -= byte_cnt;
   375			offset += byte_cnt;
   376	
   377			xfs_trans_buf_set_type(tp, bp, XFS_BLFT_SYMLINK_BUF);
   378			xfs_trans_log_buf(tp, bp, 0, (buf + byte_cnt - 1) -
   379							(char *)bp->b_addr);
   380		}
   381		ASSERT(pathlen == 0);
   382		return 0;
   383	}
   384	
   385	/* Remove all the blocks from a symlink and invalidate buffers. */
   386	int
 > 387	xfs_symlink_remote_truncate(

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ