All of lore.kernel.org
 help / color / mirror / Atom feed
* [dhowells-fs:fscache-iter 77/85] fs/fscache/io.c:292: warning: expecting prototype for fscache_clear_page_bits(). Prototype was for __fscache_clear_page_bits() instead
@ 2021-03-04  0:15 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-03-04  0:15 UTC (permalink / raw)
  To: kbuild-all

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git fscache-iter
head:   0b18b2dc89af7a17a626618e55ab2139b9570f7a
commit: 05173e3a1defdfcff7b88cb74c23d2ad12abe486 [77/85] fscache: Add support for writing to the cache
config: s390-randconfig-r005-20210303 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project a7cad6680b4087eff8994f1f99ac40c661a6621f)
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 s390 cross compiling tool for clang build
        # apt-get install binutils-s390x-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit/?id=05173e3a1defdfcff7b88cb74c23d2ad12abe486
        git remote add dhowells-fs https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
        git fetch --no-tags dhowells-fs fscache-iter
        git checkout 05173e3a1defdfcff7b88cb74c23d2ad12abe486
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390 

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 >>):

>> fs/fscache/io.c:292: warning: expecting prototype for fscache_clear_page_bits(). Prototype was for __fscache_clear_page_bits() instead
>> fs/fscache/io.c:353: warning: expecting prototype for fscache_write_to_cache(). Prototype was for __fscache_write_to_cache() instead


vim +292 fs/fscache/io.c

   280	
   281	/**
   282	 * fscache_clear_page_bits - Clear the PG_fscache bits from a set of pages
   283	 * @mapping: The netfs inode to use as the source
   284	 * @start: The start position in @mapping
   285	 * @len: The amount of data to unlock
   286	 *
   287	 * Clear the PG_fscache flag from a sequence of pages and wake up anyone who's
   288	 * waiting.
   289	 */
   290	void __fscache_clear_page_bits(struct address_space *mapping,
   291				       loff_t start, size_t len)
 > 292	{
   293		pgoff_t first = start / PAGE_SIZE;
   294		pgoff_t last = (start + len - 1) / PAGE_SIZE;
   295		struct page *page;
   296	
   297		if (len) {
   298			XA_STATE(xas, &mapping->i_pages, first);
   299	
   300			rcu_read_lock();
   301			xas_for_each(&xas, page, last) {
   302				unlock_page_fscache(page);
   303			}
   304			rcu_read_unlock();
   305		}
   306	}
   307	EXPORT_SYMBOL(__fscache_clear_page_bits);
   308	
   309	/*
   310	 * Deal with the completion of writing the data to the cache.
   311	 */
   312	static void fscache_wreq_done(void *priv, ssize_t transferred_or_error,
   313				      bool was_async)
   314	{
   315		struct fscache_write_request *wreq = priv;
   316	
   317		fscache_clear_page_bits(wreq->mapping, wreq->start, wreq->len);
   318	
   319		if (wreq->term_func)
   320			wreq->term_func(wreq->term_func_priv, transferred_or_error,
   321					was_async);
   322		fscache_end_operation(&wreq->cache_resources);
   323		kfree(wreq);
   324	}
   325	
   326	/**
   327	 * fscache_write_to_cache - Save a write to the cache and clear PG_fscache
   328	 * @cookie: The cookie representing the cache object
   329	 * @mapping: The netfs inode to use as the source
   330	 * @start: The start position in @mapping
   331	 * @len: The amount of data to write back
   332	 * @i_size: The new size of the inode
   333	 * @term_func: The function to call upon completion
   334	 * @term_func_priv: The private data for @term_func
   335	 *
   336	 * Helper function for a netfs to write dirty data from an inode into the cache
   337	 * object that's backing it.
   338	 *
   339	 * @start and @len describe the range of the data.  This does not need to be
   340	 * page-aligned, but to satisfy DIO requirements, the cache may expand it up to
   341	 * the page boundaries on either end.  All the pages covering the range must be
   342	 * marked with PG_fscache.
   343	 *
   344	 * If given, @term_func will be called upon completion and supplied with
   345	 * @term_func_priv.  Note that the PG_fscache flags will have been cleared by
   346	 * this point, so the netfs must retain its own pin on the mapping.
   347	 */
   348	void __fscache_write_to_cache(struct fscache_cookie *cookie,
   349				      struct address_space *mapping,
   350				      loff_t start, size_t len, loff_t i_size,
   351				      netfs_io_terminated_t term_func,
   352				      void *term_func_priv)
 > 353	{

---
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: 15555 bytes --]

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

only message in thread, other threads:[~2021-03-04  0:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-04  0:15 [dhowells-fs:fscache-iter 77/85] fs/fscache/io.c:292: warning: expecting prototype for fscache_clear_page_bits(). Prototype was for __fscache_clear_page_bits() instead 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.