LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Kevin Easton <kevin@guarana.org>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>,
	kvm@vger.kernel.org, virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	syzkaller-bugs@googlegroups.com
Subject: Re: [PATCH net] vhost: Use kzalloc() to allocate vhost_msg_node
Date: Fri, 27 Apr 2018 21:51:06 -0400	[thread overview]
Message-ID: <20180428015106.GA27738@la.guarana.org> (raw)
In-Reply-To: <20180428010756.GA27341@la.guarana.org>

On Fri, Apr 27, 2018 at 09:07:56PM -0400, Kevin Easton wrote:
> On Fri, Apr 27, 2018 at 07:05:45PM +0300, Michael S. Tsirkin wrote:
> > On Fri, Apr 27, 2018 at 11:45:02AM -0400, Kevin Easton wrote:
> > > The struct vhost_msg within struct vhost_msg_node is copied to userspace,
> > > so it should be allocated with kzalloc() to ensure all structure padding
> > > is zeroed.
> > > 
> > > Signed-off-by: Kevin Easton <kevin@guarana.org>
> > > Reported-by: syzbot+87cfa083e727a224754b@syzkaller.appspotmail.com
> > 
> > Does it help if a patch naming the padding is applied,
> > and then we init just the relevant field?
> > Just curious.
> 
> No, I don't believe that is sufficient to fix the problem.

Scratch that, somehow I missed the "..and then we init just the
relevant field" part, sorry.

There's still the padding after the vhost_iotlb_msg to consider.  It's
named in the union but I don't think that's guaranteed to be initialised
when the iotlb member of the union is used to initialise things.

> I didn't name the padding in my original patch because I wasn't sure
> if the padding actually exists on 32 bit architectures?

This might still be a concern, too?

At the end of the day, zeroing 96 bytes (the full size of vhost_msg_node)
is pretty quick.

    - Kevin

  reply	other threads:[~2018-04-28  1:51 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-23 16:56 KMSAN: uninit-value in _copy_to_iter (2) syzbot
2018-04-25 19:19 ` syzbot
2018-06-07 15:38   ` Michael S. Tsirkin
2018-06-07 15:38     ` syzbot
2018-06-07 16:25     ` Dmitry Vyukov
2018-06-07 17:04       ` syzbot
2018-06-07 17:43     ` Al Viro
2018-06-07 17:59       ` Michael S. Tsirkin
2018-06-07 18:04         ` Al Viro
2018-06-07 19:29           ` Michael S. Tsirkin
2018-06-07 17:10   ` Michael S. Tsirkin
2018-06-07 17:31     ` syzbot
2018-04-27 15:45 ` [PATCH net] vhost: Use kzalloc() to allocate vhost_msg_node Kevin Easton
2018-04-27 16:05   ` Michael S. Tsirkin
2018-04-27 16:11     ` Dmitry Vyukov
2018-04-27 16:15       ` Michael S. Tsirkin
2018-04-27 16:25         ` Dmitry Vyukov
2018-04-27 16:29           ` Dmitry Vyukov
2018-04-27 19:36       ` Michael S. Tsirkin
2018-04-29  8:10         ` Dmitry Vyukov
2018-04-28  1:07     ` Kevin Easton
2018-04-28  1:51       ` Kevin Easton [this message]
2018-04-28  2:23         ` Jason Wang
2018-05-07 13:03   ` Michael S. Tsirkin
2018-05-07 13:12     ` Dmitry Vyukov
2018-05-08  8:27     ` Kevin Easton
2018-05-29 22:19   ` [net] " Guenter Roeck
2018-05-30  3:01     ` Michael S. Tsirkin
2018-05-30  3:42       ` Guenter Roeck
2018-06-04 12:34       ` Dmitry Vyukov

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=20180428015106.GA27738@la.guarana.org \
    --to=kevin@guarana.org \
    --cc=jasowang@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=syzkaller-bugs@googlegroups.com \
    --cc=virtualization@lists.linux-foundation.org \
    --subject='Re: [PATCH net] vhost: Use kzalloc() to allocate vhost_msg_node' \
    /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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).