All of lore.kernel.org
 help / color / mirror / Atom feed
* [djwong-xfs:defrag-freespace 364/365] fs/xfs/xfs_rtalloc.h:165:5: warning: no previous prototype for function 'xfs_rtallocate_extent'
@ 2021-08-26 10:44 ` kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2021-08-26 10:44 UTC (permalink / raw)
  To: Darrick J. Wong; +Cc: llvm, kbuild-all, Darrick J. Wong, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 7459 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git defrag-freespace
head:   326d55bb2cd6af6a03ca05d6fb4cc6383132ad8c
commit: 028c5ae42fb7471df7ce18d583b454b55a786936 [364/365] xfs: fallocate free space into a file
config: x86_64-randconfig-a001-20210825 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project ea08c4cd1c0869ec5024a8bb3f5cdf06ab03ae83)
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
        # https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/commit/?id=028c5ae42fb7471df7ce18d583b454b55a786936
        git remote add djwong-xfs https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git
        git fetch --no-tags djwong-xfs defrag-freespace
        git checkout 028c5ae42fb7471df7ce18d583b454b55a786936
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 

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

All warnings (new ones prefixed by >>):

   In file included from fs/xfs/xfs_trace.c:38:
>> fs/xfs/xfs_rtalloc.h:165:5: warning: no previous prototype for function 'xfs_rtallocate_extent' [-Wmissing-prototypes]
   int xfs_rtallocate_extent(struct xfs_trans *tp, xfs_rtblock_t bno,
       ^
   fs/xfs/xfs_rtalloc.h:165:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int xfs_rtallocate_extent(struct xfs_trans *tp, xfs_rtblock_t bno,
   ^
   static 
   1 warning generated.


vim +/xfs_rtallocate_extent +165 fs/xfs/xfs_rtalloc.h

    86	
    87	/*
    88	 * Pick an extent for allocation at the start of a new realtime file.
    89	 * Use the sequence number stored in the atime field of the bitmap inode.
    90	 * Translate this to a fraction of the rtextents, and return the product
    91	 * of rtextents and the fraction.
    92	 * The fraction sequence is 0, 1/2, 1/4, 3/4, 1/8, ..., 7/8, 1/16, ...
    93	 */
    94	int					/* error */
    95	xfs_rtpick_extent(
    96		struct xfs_mount	*mp,	/* file system mount point */
    97		struct xfs_trans	*tp,	/* transaction pointer */
    98		xfs_extlen_t		len,	/* allocation length (rtextents) */
    99		xfs_rtblock_t		*pick);	/* result rt extent */
   100	
   101	int xfs_growfs_check_rt_maxlevels(struct xfs_mount *mp, xfs_rfsblock_t dblocks,
   102			xfs_rfsblock_t rblocks);
   103	
   104	/*
   105	 * Grow the realtime area of the filesystem.
   106	 */
   107	int
   108	xfs_growfs_rt(
   109		struct xfs_mount	*mp,	/* file system mount structure */
   110		xfs_growfs_rt_t		*in);	/* user supplied growfs struct */
   111	
   112	/*
   113	 * From xfs_rtbitmap.c
   114	 */
   115	int xfs_rtbuf_get(struct xfs_mount *mp, struct xfs_trans *tp,
   116			  xfs_rtblock_t block, int issum, struct xfs_buf **bpp);
   117	int xfs_rtcheck_range(struct xfs_mount *mp, struct xfs_trans *tp,
   118			      xfs_rtblock_t start, xfs_extlen_t len, int val,
   119			      xfs_rtblock_t *new, int *stat);
   120	int xfs_rtfind_back(struct xfs_mount *mp, struct xfs_trans *tp,
   121			    xfs_rtblock_t start, xfs_rtblock_t limit,
   122			    xfs_rtblock_t *rtblock);
   123	int xfs_rtfind_forw(struct xfs_mount *mp, struct xfs_trans *tp,
   124			    xfs_rtblock_t start, xfs_rtblock_t limit,
   125			    xfs_rtblock_t *rtblock);
   126	int xfs_rtmodify_range(struct xfs_mount *mp, struct xfs_trans *tp,
   127			       xfs_rtblock_t start, xfs_extlen_t len, int val);
   128	int xfs_rtmodify_summary_int(struct xfs_mount *mp, struct xfs_trans *tp,
   129				     int log, xfs_rtblock_t bbno, int delta,
   130				     struct xfs_buf **rbpp, xfs_fsblock_t *rsb,
   131				     xfs_suminfo_t *sum);
   132	int xfs_rtmodify_summary(struct xfs_mount *mp, struct xfs_trans *tp, int log,
   133				 xfs_rtblock_t bbno, int delta, struct xfs_buf **rbpp,
   134				 xfs_fsblock_t *rsb);
   135	int xfs_rtfree_range(struct xfs_mount *mp, struct xfs_trans *tp,
   136			     xfs_rtblock_t start, xfs_extlen_t len,
   137			     struct xfs_buf **rbpp, xfs_fsblock_t *rsb);
   138	int xfs_rtalloc_query_range(struct xfs_trans *tp,
   139			const struct xfs_rtalloc_rec *low_rec,
   140			const struct xfs_rtalloc_rec *high_rec,
   141			xfs_rtalloc_query_range_fn fn, void *priv);
   142	int xfs_rtalloc_query_all(struct xfs_trans *tp,
   143				  xfs_rtalloc_query_range_fn fn,
   144				  void *priv);
   145	bool xfs_verify_rtbno(struct xfs_mount *mp, xfs_rtblock_t rtbno);
   146	int xfs_rtalloc_extent_is_free(struct xfs_mount *mp, struct xfs_trans *tp,
   147				       xfs_rtblock_t start, xfs_extlen_t len,
   148				       bool *is_free);
   149	int xfs_rtfile_convert_unwritten(struct xfs_inode *ip, loff_t pos,
   150			uint64_t len);
   151	
   152	#define XFS_RTLOCK_ALLOC	(1 << 0) /* rt allocation */
   153	#define XFS_RTLOCK_RMAP		(1 << 1) /* rmap operations */
   154	#define XFS_RTLOCK_REFCOUNT	(1 << 2) /* refcount operations */
   155	#define XFS_RTLOCK_ALL		(XFS_RTLOCK_ALLOC | \
   156					 XFS_RTLOCK_RMAP | \
   157					 XFS_RTLOCK_REFCOUNT)
   158	
   159	void xfs_rtlock(struct xfs_trans *tp, struct xfs_mount *mp,
   160			unsigned int rtlock_flags);
   161	void xfs_rtunlock(struct xfs_mount *mp, unsigned int lock_flags);
   162	int xfs_rtalloc_find_freesp(struct xfs_mount *mp, xfs_rtblock_t *rtx,
   163			xfs_rtblock_t end_rtx, xfs_extlen_t *len_rtx);
   164	#else
 > 165	int xfs_rtallocate_extent(struct xfs_trans *tp, xfs_rtblock_t bno,
   166			xfs_extlen_t minlen, xfs_extlen_t maxlen, xfs_extlen_t *len,
   167			int wasdel, xfs_extlen_t prod, xfs_rtblock_t *rtblock)
   168	{
   169		return ENOSYS;
   170	}
   171	# define xfs_rtfree_extent(t,b,l)                       (ENOSYS)
   172	# define xfs_rtfree_blocks(t,rb,rl)			(ENOSYS)
   173	# define xfs_rtpick_extent(m,t,l,rb)                    (ENOSYS)
   174	# define xfs_growfs_check_rt_maxlevels(m,d,r)		(0)
   175	# define xfs_growfs_rt(mp,in)                           (ENOSYS)
   176	# define xfs_rtalloc_query_range(t,l,h,f,p)             (ENOSYS)
   177	# define xfs_rtalloc_query_all(t,f,p)                   (ENOSYS)
   178	# define xfs_rtbuf_get(m,t,b,i,p)                       (ENOSYS)
   179	# define xfs_verify_rtbno(m, r)			(false)
   180	# define xfs_rtalloc_extent_is_free(m,t,s,l,i)          (ENOSYS)
   181	static inline int		/* error */
   182	xfs_rtmount_init(
   183		xfs_mount_t	*mp)	/* file system mount structure */
   184	{
   185		if (mp->m_sb.sb_rblocks == 0)
   186			return 0;
   187	
   188		xfs_warn(mp, "Not built with CONFIG_XFS_RT");
   189		return -ENOSYS;
   190	}
   191	# define xfs_rt_resv_free(mp)				((void)0)
   192	# define xfs_rt_resv_init(mp)				(0)
   193	# define xfs_rtmount_inodes(m)  (((mp)->m_sb.sb_rblocks == 0)? 0 : (ENOSYS))
   194	# define xfs_rtmount_dqattach(mp)	(0)
   195	# define xfs_rtunmount_inodes(m)
   196	# define xfs_rtfile_convert_unwritten(ip, pos, len)	(0)
   197	# define xfs_rtlock(tp, mp, lock_flags)	do { } while (0)
   198	# define xfs_rtunlock(mp, lock_flags)	do { } while (0)
   199	# define xfs_rtalloc_find_freesp(mp, rtx, end_rtx, len_rtx)	(-ENOSYS)
   200	#endif	/* CONFIG_XFS_RT */
   201	

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 39793 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [djwong-xfs:defrag-freespace 364/365] fs/xfs/xfs_rtalloc.h:165:5: warning: no previous prototype for function 'xfs_rtallocate_extent'
@ 2021-08-26 10:44 ` kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2021-08-26 10:44 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 7614 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git defrag-freespace
head:   326d55bb2cd6af6a03ca05d6fb4cc6383132ad8c
commit: 028c5ae42fb7471df7ce18d583b454b55a786936 [364/365] xfs: fallocate free space into a file
config: x86_64-randconfig-a001-20210825 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project ea08c4cd1c0869ec5024a8bb3f5cdf06ab03ae83)
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
        # https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/commit/?id=028c5ae42fb7471df7ce18d583b454b55a786936
        git remote add djwong-xfs https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git
        git fetch --no-tags djwong-xfs defrag-freespace
        git checkout 028c5ae42fb7471df7ce18d583b454b55a786936
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 

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

All warnings (new ones prefixed by >>):

   In file included from fs/xfs/xfs_trace.c:38:
>> fs/xfs/xfs_rtalloc.h:165:5: warning: no previous prototype for function 'xfs_rtallocate_extent' [-Wmissing-prototypes]
   int xfs_rtallocate_extent(struct xfs_trans *tp, xfs_rtblock_t bno,
       ^
   fs/xfs/xfs_rtalloc.h:165:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int xfs_rtallocate_extent(struct xfs_trans *tp, xfs_rtblock_t bno,
   ^
   static 
   1 warning generated.


vim +/xfs_rtallocate_extent +165 fs/xfs/xfs_rtalloc.h

    86	
    87	/*
    88	 * Pick an extent for allocation at the start of a new realtime file.
    89	 * Use the sequence number stored in the atime field of the bitmap inode.
    90	 * Translate this to a fraction of the rtextents, and return the product
    91	 * of rtextents and the fraction.
    92	 * The fraction sequence is 0, 1/2, 1/4, 3/4, 1/8, ..., 7/8, 1/16, ...
    93	 */
    94	int					/* error */
    95	xfs_rtpick_extent(
    96		struct xfs_mount	*mp,	/* file system mount point */
    97		struct xfs_trans	*tp,	/* transaction pointer */
    98		xfs_extlen_t		len,	/* allocation length (rtextents) */
    99		xfs_rtblock_t		*pick);	/* result rt extent */
   100	
   101	int xfs_growfs_check_rt_maxlevels(struct xfs_mount *mp, xfs_rfsblock_t dblocks,
   102			xfs_rfsblock_t rblocks);
   103	
   104	/*
   105	 * Grow the realtime area of the filesystem.
   106	 */
   107	int
   108	xfs_growfs_rt(
   109		struct xfs_mount	*mp,	/* file system mount structure */
   110		xfs_growfs_rt_t		*in);	/* user supplied growfs struct */
   111	
   112	/*
   113	 * From xfs_rtbitmap.c
   114	 */
   115	int xfs_rtbuf_get(struct xfs_mount *mp, struct xfs_trans *tp,
   116			  xfs_rtblock_t block, int issum, struct xfs_buf **bpp);
   117	int xfs_rtcheck_range(struct xfs_mount *mp, struct xfs_trans *tp,
   118			      xfs_rtblock_t start, xfs_extlen_t len, int val,
   119			      xfs_rtblock_t *new, int *stat);
   120	int xfs_rtfind_back(struct xfs_mount *mp, struct xfs_trans *tp,
   121			    xfs_rtblock_t start, xfs_rtblock_t limit,
   122			    xfs_rtblock_t *rtblock);
   123	int xfs_rtfind_forw(struct xfs_mount *mp, struct xfs_trans *tp,
   124			    xfs_rtblock_t start, xfs_rtblock_t limit,
   125			    xfs_rtblock_t *rtblock);
   126	int xfs_rtmodify_range(struct xfs_mount *mp, struct xfs_trans *tp,
   127			       xfs_rtblock_t start, xfs_extlen_t len, int val);
   128	int xfs_rtmodify_summary_int(struct xfs_mount *mp, struct xfs_trans *tp,
   129				     int log, xfs_rtblock_t bbno, int delta,
   130				     struct xfs_buf **rbpp, xfs_fsblock_t *rsb,
   131				     xfs_suminfo_t *sum);
   132	int xfs_rtmodify_summary(struct xfs_mount *mp, struct xfs_trans *tp, int log,
   133				 xfs_rtblock_t bbno, int delta, struct xfs_buf **rbpp,
   134				 xfs_fsblock_t *rsb);
   135	int xfs_rtfree_range(struct xfs_mount *mp, struct xfs_trans *tp,
   136			     xfs_rtblock_t start, xfs_extlen_t len,
   137			     struct xfs_buf **rbpp, xfs_fsblock_t *rsb);
   138	int xfs_rtalloc_query_range(struct xfs_trans *tp,
   139			const struct xfs_rtalloc_rec *low_rec,
   140			const struct xfs_rtalloc_rec *high_rec,
   141			xfs_rtalloc_query_range_fn fn, void *priv);
   142	int xfs_rtalloc_query_all(struct xfs_trans *tp,
   143				  xfs_rtalloc_query_range_fn fn,
   144				  void *priv);
   145	bool xfs_verify_rtbno(struct xfs_mount *mp, xfs_rtblock_t rtbno);
   146	int xfs_rtalloc_extent_is_free(struct xfs_mount *mp, struct xfs_trans *tp,
   147				       xfs_rtblock_t start, xfs_extlen_t len,
   148				       bool *is_free);
   149	int xfs_rtfile_convert_unwritten(struct xfs_inode *ip, loff_t pos,
   150			uint64_t len);
   151	
   152	#define XFS_RTLOCK_ALLOC	(1 << 0) /* rt allocation */
   153	#define XFS_RTLOCK_RMAP		(1 << 1) /* rmap operations */
   154	#define XFS_RTLOCK_REFCOUNT	(1 << 2) /* refcount operations */
   155	#define XFS_RTLOCK_ALL		(XFS_RTLOCK_ALLOC | \
   156					 XFS_RTLOCK_RMAP | \
   157					 XFS_RTLOCK_REFCOUNT)
   158	
   159	void xfs_rtlock(struct xfs_trans *tp, struct xfs_mount *mp,
   160			unsigned int rtlock_flags);
   161	void xfs_rtunlock(struct xfs_mount *mp, unsigned int lock_flags);
   162	int xfs_rtalloc_find_freesp(struct xfs_mount *mp, xfs_rtblock_t *rtx,
   163			xfs_rtblock_t end_rtx, xfs_extlen_t *len_rtx);
   164	#else
 > 165	int xfs_rtallocate_extent(struct xfs_trans *tp, xfs_rtblock_t bno,
   166			xfs_extlen_t minlen, xfs_extlen_t maxlen, xfs_extlen_t *len,
   167			int wasdel, xfs_extlen_t prod, xfs_rtblock_t *rtblock)
   168	{
   169		return ENOSYS;
   170	}
   171	# define xfs_rtfree_extent(t,b,l)                       (ENOSYS)
   172	# define xfs_rtfree_blocks(t,rb,rl)			(ENOSYS)
   173	# define xfs_rtpick_extent(m,t,l,rb)                    (ENOSYS)
   174	# define xfs_growfs_check_rt_maxlevels(m,d,r)		(0)
   175	# define xfs_growfs_rt(mp,in)                           (ENOSYS)
   176	# define xfs_rtalloc_query_range(t,l,h,f,p)             (ENOSYS)
   177	# define xfs_rtalloc_query_all(t,f,p)                   (ENOSYS)
   178	# define xfs_rtbuf_get(m,t,b,i,p)                       (ENOSYS)
   179	# define xfs_verify_rtbno(m, r)			(false)
   180	# define xfs_rtalloc_extent_is_free(m,t,s,l,i)          (ENOSYS)
   181	static inline int		/* error */
   182	xfs_rtmount_init(
   183		xfs_mount_t	*mp)	/* file system mount structure */
   184	{
   185		if (mp->m_sb.sb_rblocks == 0)
   186			return 0;
   187	
   188		xfs_warn(mp, "Not built with CONFIG_XFS_RT");
   189		return -ENOSYS;
   190	}
   191	# define xfs_rt_resv_free(mp)				((void)0)
   192	# define xfs_rt_resv_init(mp)				(0)
   193	# define xfs_rtmount_inodes(m)  (((mp)->m_sb.sb_rblocks == 0)? 0 : (ENOSYS))
   194	# define xfs_rtmount_dqattach(mp)	(0)
   195	# define xfs_rtunmount_inodes(m)
   196	# define xfs_rtfile_convert_unwritten(ip, pos, len)	(0)
   197	# define xfs_rtlock(tp, mp, lock_flags)	do { } while (0)
   198	# define xfs_rtunlock(mp, lock_flags)	do { } while (0)
   199	# define xfs_rtalloc_find_freesp(mp, rtx, end_rtx, len_rtx)	(-ENOSYS)
   200	#endif	/* CONFIG_XFS_RT */
   201	

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 39793 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-08-26 10:45 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-26 10:44 [djwong-xfs:defrag-freespace 364/365] fs/xfs/xfs_rtalloc.h:165:5: warning: no previous prototype for function 'xfs_rtallocate_extent' kernel test robot
2021-08-26 10:44 ` kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.