All of lore.kernel.org
 help / color / mirror / Atom feed
* [ammarfaizi2-block:dhowells/linux-fs/netfs-maple 30/44] fs/netfs/direct_read.c:198:3: error: expected expression
@ 2022-04-23  3:13 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-04-23  3:13 UTC (permalink / raw)
  To: David Howells; +Cc: llvm, kbuild-all, GNU/Weeb Mailing List, linux-kernel

tree:   https://github.com/ammarfaizi2/linux-block dhowells/linux-fs/netfs-maple
head:   931e50676c6598d0eda1954ead465519ff91874d
commit: d1c47ebbbed8921181b4573ba5736595bc3b787c [30/44] netfs: Support decryption on DIO read
config: i386-randconfig-a015 (https://download.01.org/0day-ci/archive/20220423/202204231010.5DHxVC96-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 5bd87350a5ae429baf8f373cb226a57b62f87280)
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://github.com/ammarfaizi2/linux-block/commit/d1c47ebbbed8921181b4573ba5736595bc3b787c
        git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
        git fetch --no-tags ammarfaizi2-block dhowells/linux-fs/netfs-maple
        git checkout d1c47ebbbed8921181b4573ba5736595bc3b787c
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash fs/

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

All errors (new ones prefixed by >>):

>> fs/netfs/direct_read.c:198:3: error: expected expression
                   unsigned int min_bsize = 1ULL << ctx->min_bshift;
                   ^
>> fs/netfs/direct_read.c:199:54: error: use of undeclared identifier 'min_bsize'
                   unsigned long long start = round_down(rreq->start, min_bsize);
                                                                      ^
   fs/netfs/direct_read.c:201:47: error: use of undeclared identifier 'min_bsize'
                                                  round_up(rreq->start + rreq->len, min_bsize),
                                                                                    ^
   fs/netfs/direct_read.c:201:47: error: use of undeclared identifier 'min_bsize'
   fs/netfs/direct_read.c:199:22: warning: mixing declarations and code is incompatible with standards before C99 [-Wdeclaration-after-statement]
                   unsigned long long start = round_down(rreq->start, min_bsize);
                                      ^
   1 warning and 4 errors generated.


vim +198 fs/netfs/direct_read.c

   116	
   117	/**
   118	 * netfs_direct_read_iter - Perform a direct I/O read
   119	 * @iocb: The I/O control descriptor describing the read
   120	 * @iter: The output buffer (also specifies read length)
   121	 */
   122	ssize_t netfs_direct_read_iter(struct kiocb *iocb, struct iov_iter *iter)
   123	{
   124		struct netfs_io_request *rreq;
   125		struct netfs_i_context *ctx;
   126		ssize_t n, ret;
   127	
   128		_enter("");
   129	
   130		rreq = netfs_alloc_request(iocb->ki_filp->f_mapping, iocb->ki_filp,
   131					   iocb->ki_pos, iov_iter_count(iter),
   132					   NETFS_DIO_READ);
   133		if (IS_ERR(rreq))
   134			return PTR_ERR(rreq);
   135	
   136		ctx = netfs_i_context(rreq->inode);
   137		netfs_stat(&netfs_n_rh_dio_read);
   138		trace_netfs_read(rreq, rreq->start, rreq->len, netfs_read_trace_dio_read);
   139	
   140		rreq->buffering = NETFS_DIRECT;
   141		if (test_bit(NETFS_RREQ_CONTENT_ENCRYPTION, &rreq->flags)) {
   142			static const enum netfs_buffering buffering[2][2] = {
   143				/* [async][aligned] */
   144				[false][false]	= NETFS_BOUNCE_DEC_COPY,
   145				[false][true]	= NETFS_BOUNCE_DEC_TO_DIRECT,
   146				[true ][false]	= NETFS_BOUNCE_DEC_COPY_BV,
   147				[true ][true]	= NETFS_BOUNCE_DEC_TO_DIRECT_BV,
   148			};
   149			bool aligned = netfs_is_crypto_aligned(rreq, iter);
   150			bool async = !is_sync_kiocb(iocb);
   151	
   152			rreq->buffering = buffering[async][aligned];
   153		}
   154	
   155		kdebug("remote_i %llx %llx %llx",
   156		       ctx->remote_i_size, rreq->i_size, i_size_read(netfs_inode(ctx)));
   157	
   158		/* If this is an async op, we have to keep track of the destination
   159		 * buffer for ourselves as the caller's iterator will be trashed when
   160		 * we return.
   161		 *
   162		 * In such a case, extract an iterator to represent as much of the the
   163		 * output buffer as we can manage.  Note that the extraction might not
   164		 * be able to allocate a sufficiently large bvec array and may shorten
   165		 * the request.
   166		 */
   167		switch (rreq->buffering) {
   168		case NETFS_DIRECT:
   169		case NETFS_BOUNCE_DEC_TO_DIRECT:
   170		case NETFS_BOUNCE_DEC_COPY:
   171			rreq->direct_iter = *iter;
   172			rreq->len = iov_iter_count(&rreq->direct_iter);
   173			break;
   174		case NETFS_DIRECT_BV:
   175		case NETFS_BOUNCE_DEC_TO_DIRECT_BV:
   176		case NETFS_BOUNCE_DEC_COPY_BV:
   177			n = extract_iter_to_iter(iter, rreq->len, &rreq->direct_iter,
   178						 &rreq->direct_bv);
   179			if (n < 0) {
   180				ret = n;
   181				goto out;
   182			}
   183			rreq->direct_bv_count = n;
   184			rreq->len = iov_iter_count(&rreq->direct_iter);
   185			break;
   186		default:
   187			BUG();
   188		}
   189	
   190		/* If we're going to use a bounce buffer, we need to set it up.  We
   191		 * will then need to pad the request out to the minimum block size.
   192		 */
   193		switch (rreq->buffering) {
   194		case NETFS_BOUNCE_DEC_TO_DIRECT:
   195		case NETFS_BOUNCE_DEC_COPY:
   196		case NETFS_BOUNCE_DEC_TO_DIRECT_BV:
   197		case NETFS_BOUNCE_DEC_COPY_BV:
 > 198			unsigned int min_bsize = 1ULL << ctx->min_bshift;
 > 199			unsigned long long start = round_down(rreq->start, min_bsize);

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

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

only message in thread, other threads:[~2022-04-23  3:13 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-23  3:13 [ammarfaizi2-block:dhowells/linux-fs/netfs-maple 30/44] fs/netfs/direct_read.c:198:3: error: expected expression 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.