All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [RFC PATCH 04/10] pipe: Use head and tail pointers for the ring, not cursor and length [ver #2]
Date: Sat, 26 Oct 2019 08:29:25 +0800	[thread overview]
Message-ID: <201910260852.ea15MwMR%lkp@intel.com> (raw)
In-Reply-To: <157186186167.3995.7568100174393739543.stgit@warthog.procyon.org.uk>

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

Hi David,

[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on linus/master]
[cannot apply to v5.4-rc4 next-20191025]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/David-Howells/pipe-Notification-queue-preparation-ver-2/20191026-015701
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 39a38bcba4ab6e5285b07675b0e42c96eec35e67
config: x86_64-randconfig-s1-201942 (attached as .config)
compiler: gcc-4.9 (Debian 4.9.2-10+deb8u1) 4.9.2
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

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

All errors (new ones prefixed by >>):

   drivers//char/virtio_console.c: In function 'port_fops_splice_write':
>> drivers//char/virtio_console.c:937:11: error: 'struct pipe_inode_info' has no member named 'nrbufs'
     if (!pipe->nrbufs) {
              ^
   drivers//char/virtio_console.c:946:46: error: 'struct pipe_inode_info' has no member named 'nrbufs'
     buf = alloc_buf(port->portdev->vdev, 0, pipe->nrbufs);
                                                 ^
   drivers//char/virtio_console.c:954:17: error: 'struct pipe_inode_info' has no member named 'nrbufs'
     sgl.size = pipe->nrbufs;
                    ^

vim +937 drivers//char/virtio_console.c

eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  906  
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  907  /* Faster zero-copy write by splicing */
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  908  static ssize_t port_fops_splice_write(struct pipe_inode_info *pipe,
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  909  				      struct file *filp, loff_t *ppos,
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  910  				      size_t len, unsigned int flags)
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  911  {
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  912  	struct port *port = filp->private_data;
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  913  	struct sg_list sgl;
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  914  	ssize_t ret;
276a3e954cfe4d Sjur Brændeland    2012-12-14  915  	struct port_buffer *buf;
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  916  	struct splice_desc sd = {
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  917  		.total_len = len,
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  918  		.flags = flags,
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  919  		.pos = *ppos,
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  920  		.u.data = &sgl,
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  921  	};
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  922  
1b6370463e88b0 Sjur Brændeland    2012-12-14  923  	/*
1b6370463e88b0 Sjur Brændeland    2012-12-14  924  	 * Rproc_serial does not yet support splice. To support splice
1b6370463e88b0 Sjur Brændeland    2012-12-14  925  	 * pipe_to_sg() must allocate dma-buffers and copy content from
1b6370463e88b0 Sjur Brændeland    2012-12-14  926  	 * regular pages to dma pages. And alloc_buf and free_buf must
1b6370463e88b0 Sjur Brændeland    2012-12-14  927  	 * support allocating and freeing such a list of dma-buffers.
1b6370463e88b0 Sjur Brændeland    2012-12-14  928  	 */
1b6370463e88b0 Sjur Brændeland    2012-12-14  929  	if (is_rproc_serial(port->out_vq->vdev))
1b6370463e88b0 Sjur Brændeland    2012-12-14  930  		return -EINVAL;
1b6370463e88b0 Sjur Brændeland    2012-12-14  931  
68c034fefe20ea Yoshihiro YUNOMAE  2013-07-23  932  	/*
68c034fefe20ea Yoshihiro YUNOMAE  2013-07-23  933  	 * pipe->nrbufs == 0 means there are no data to transfer,
68c034fefe20ea Yoshihiro YUNOMAE  2013-07-23  934  	 * so this returns just 0 for no data.
68c034fefe20ea Yoshihiro YUNOMAE  2013-07-23  935  	 */
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  936  	pipe_lock(pipe);
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23 @937  	if (!pipe->nrbufs) {
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  938  		ret = 0;
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  939  		goto error_out;
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  940  	}
68c034fefe20ea Yoshihiro YUNOMAE  2013-07-23  941  
efe75d24a69fc3 Masami Hiramatsu   2012-08-09  942  	ret = wait_port_writable(port, filp->f_flags & O_NONBLOCK);
efe75d24a69fc3 Masami Hiramatsu   2012-08-09  943  	if (ret < 0)
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  944  		goto error_out;
efe75d24a69fc3 Masami Hiramatsu   2012-08-09  945  
2855b33514d290 Michael S. Tsirkin 2018-04-20  946  	buf = alloc_buf(port->portdev->vdev, 0, pipe->nrbufs);
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  947  	if (!buf) {
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  948  		ret = -ENOMEM;
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  949  		goto error_out;
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  950  	}
276a3e954cfe4d Sjur Brændeland    2012-12-14  951  
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  952  	sgl.n = 0;
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  953  	sgl.len = 0;
8ca84a50e5b394 Masami Hiramatsu   2012-08-09  954  	sgl.size = pipe->nrbufs;
276a3e954cfe4d Sjur Brændeland    2012-12-14  955  	sgl.sg = buf->sg;
8ca84a50e5b394 Masami Hiramatsu   2012-08-09  956  	sg_init_table(sgl.sg, sgl.size);
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  957  	ret = __splice_from_pipe(pipe, &sd, pipe_to_sg);
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  958  	pipe_unlock(pipe);
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  959  	if (likely(ret > 0))
276a3e954cfe4d Sjur Brændeland    2012-12-14  960  		ret = __send_to_port(port, buf->sg, sgl.n, sgl.len, buf, true);
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  961  
fe5295374ec9ac Sjur Brændeland    2012-10-15  962  	if (unlikely(ret <= 0))
1b6370463e88b0 Sjur Brændeland    2012-12-14  963  		free_buf(buf, true);
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  964  	return ret;
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  965  
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  966  error_out:
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  967  	pipe_unlock(pipe);
2b4fbf029dff5a Yoshihiro YUNOMAE  2013-07-23  968  	return ret;
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  969  }
eb5e89fc70bb3f Masami Hiramatsu   2012-08-09  970  

:::::: The code@line 937 was first introduced by commit
:::::: 2b4fbf029dff5a28d9bf646346dea891ec43398a virtio/console: Add pipe_lock/unlock for splice_write

:::::: TO: Yoshihiro YUNOMAE <yoshihiro.yunomae.ez@hitachi.com>
:::::: CC: Rusty Russell <rusty@rustcorp.com.au>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

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

  reply	other threads:[~2019-10-26  0:29 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-23 20:17 [RFC PATCH 00/10] pipe: Notification queue preparation [ver #2] David Howells
2019-10-23 20:17 ` David Howells
2019-10-23 20:17 ` David Howells
2019-10-23 20:17 ` [RFC PATCH 01/10] pipe: Reduce #inclusion of pipe_fs_i.h " David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17 ` [RFC PATCH 02/10] Remove the nr_exclusive argument from __wake_up_sync_key() " David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17 ` [RFC PATCH 03/10] Add wake_up_interruptible_sync_poll_locked() " David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17 ` [RFC PATCH 04/10] pipe: Use head and tail pointers for the ring, not cursor and length " David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17   ` David Howells
2019-10-26  0:29   ` kbuild test robot [this message]
2019-10-26  0:50   ` kbuild test robot
2019-10-26 14:58   ` [pipe] 6567a02d20: BUG:kernel_NULL_pointer_dereference,address kernel test robot
2019-10-26 14:58     ` kernel test robot
2019-10-26 14:58     ` kernel test robot
2019-10-27 14:03   ` [RFC PATCH 04/10] pipe: Use head and tail pointers for the ring, not cursor and length [ver #2] Linus Torvalds
2019-10-27 14:03     ` Linus Torvalds
2019-10-30 16:19   ` Ilya Dryomov
2019-10-30 16:19     ` Ilya Dryomov
2019-10-30 20:35     ` Rasmus Villemoes
2019-10-30 20:35       ` Rasmus Villemoes
2019-10-30 22:16       ` Ilya Dryomov
2019-10-30 22:16         ` Ilya Dryomov
2019-10-30 22:38         ` Rasmus Villemoes
2019-10-30 22:38           ` Rasmus Villemoes
2019-10-31 15:11     ` David Howells
2019-10-31 15:57       ` Ilya Dryomov
2019-10-31 15:57         ` Ilya Dryomov
2019-11-01 14:53       ` David Howells
2019-10-31 14:57   ` David Howells
2019-11-03 11:17     ` Matthew Wilcox
2019-11-03 11:17       ` Matthew Wilcox
2019-12-06 21:47   ` Johannes Hirte
2019-12-06 21:47     ` Johannes Hirte
2019-12-06 22:14     ` Linus Torvalds
2019-12-06 22:14       ` Linus Torvalds
2019-12-07  0:00       ` Johannes Hirte
2019-12-07  0:00         ` Johannes Hirte
2019-12-07  1:03         ` Linus Torvalds
2019-12-07  1:03           ` Linus Torvalds
2019-12-08 17:56           ` Johannes Hirte
2019-12-08 17:56             ` Johannes Hirte
2019-12-08 18:10             ` Linus Torvalds
2019-12-08 18:10               ` Linus Torvalds
2019-12-07  6:47         ` Linus Torvalds
2019-12-07  6:47           ` Linus Torvalds
2019-12-06 22:15   ` David Howells
2019-10-23 20:17 ` [RFC PATCH 05/10] pipe: Allow pipes to have kernel-reserved slots " David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:17   ` David Howells
2019-10-23 20:18 ` [RFC PATCH 06/10] pipe: Advance tail pointer inside of wait spinlock in pipe_read() " David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18 ` [RFC PATCH 07/10] pipe: Conditionalise wakeup " David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18   ` David Howells
2019-10-27 15:57   ` Konstantin Khlebnikov
2019-10-27 15:57     ` Konstantin Khlebnikov
2019-10-31 15:21   ` David Howells
2019-10-31 16:38   ` David Howells
2019-11-03 11:04     ` Konstantin Khlebnikov
2019-11-03 11:04       ` Konstantin Khlebnikov
2019-10-23 20:18 ` [RFC PATCH 08/10] pipe: Rearrange sequence in pipe_write() to preallocate slot " David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18 ` [RFC PATCH 09/10] pipe: Remove redundant wakeup from pipe_write() " David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18 ` [RFC PATCH 10/10] pipe: Check for ring full inside of the spinlock in " David Howells
2019-10-23 20:18   ` David Howells
2019-10-23 20:18   ` David Howells
2019-10-24 10:32 ` [RFC PATCH 04/10] pipe: Use head and tail pointers for the ring, not cursor and length " David Howells
2019-10-24 10:32   ` David Howells
2019-10-24 13:14 ` [RFC PATCH 00/10] pipe: Notification queue preparation " Peter Zijlstra
2019-10-24 13:14   ` Peter Zijlstra
2019-10-24 16:57 ` [RFC PATCH 11/10] pipe: Add fsync() support " David Howells
2019-10-24 16:57   ` David Howells
2019-10-24 21:29   ` Linus Torvalds
2019-10-24 21:29     ` Linus Torvalds
2019-10-25  8:34   ` David Howells
2019-10-25  8:34     ` David Howells
2019-10-27 15:22   ` Christoph Hellwig
2019-10-27 15:22     ` Christoph Hellwig
2019-10-27 16:04   ` Konstantin Khlebnikov
2019-10-27 16:04     ` Konstantin Khlebnikov
2019-10-31 15:13   ` David Howells
2019-10-31 15:15   ` David Howells
2019-11-02 18:53     ` Linus Torvalds
2019-11-02 18:53       ` Linus Torvalds
2019-11-02 19:34     ` David Howells
2019-11-02 20:31       ` Andy Lutomirski
2019-11-02 20:31         ` Andy Lutomirski
2019-11-02 22:03         ` Linus Torvalds
2019-11-02 22:03           ` Linus Torvalds
2019-11-02 22:09           ` Linus Torvalds
2019-11-02 22:09             ` Linus Torvalds
2019-11-02 22:30           ` Andy Lutomirski
2019-11-02 22:30             ` Andy Lutomirski
2019-11-02 23:02             ` Linus Torvalds
2019-11-02 23:02               ` Linus Torvalds
2019-11-02 23:09               ` Linus Torvalds
2019-11-02 23:09                 ` Linus Torvalds
2019-11-02 23:14                 ` Andy Lutomirski
2019-11-02 23:14                   ` Andy Lutomirski
2019-11-03 12:02                   ` Konstantin Khlebnikov
2019-11-03 12:02                     ` Konstantin Khlebnikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201910260852.ea15MwMR%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.