Subject: Re: [PATCH] vhost: disable metadata prefetch optimization

From: "Michael S. Tsirkin" <[email-masked]>
Date: Fri, 26 Jul 2019 09:52:59 -0400

On Fri, Jul 26, 2019 at 07:57:25PM +0800, Jason Wang wrote:
> 
> On 2019/7/26 下午7:51, Michael S. Tsirkin wrote:
> > This seems to cause guest and host memory corruption.
> > Disable for now until we get a better handle on that.
> > 
> > Signed-off-by: Michael S. Tsirkin <[email-masked]>
> > ---
> > 
> > I put this in linux-next, we'll re-enable if we can fix
> > the outstanding issues in a short order.
> 
> 
> Btw, is this more suitable to e.g revert the
> 842aa64eddacd23adc6ecdbc69cb2030bec47122

Yes I did that too.

> and let syzbot fuzz more on the
> current code?

Current metadata direct access code is known to corrupt guest and host
memory - I don't feel we need more fuzzing.

> 
> I think we won't accept that patch eventually, so I suspect what syzbot
> reports today is a false positives.

Today's reports are real, it's a bug in my patch. But I reverted it -
the below is an easier way to make sure at least linux-next is stable
for everyone.

> 
> Thanks
> 
> 
> > 
> >   drivers/vhost/vhost.h | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/vhost/vhost.h b/drivers/vhost/vhost.h
> > index 819296332913..42a8c2a13ab1 100644
> > --- a/drivers/vhost/vhost.h
> > +++ b/drivers/vhost/vhost.h
> > @@ -96,7 +96,7 @@ struct vhost_uaddr {
> >   };
> >   #if defined(CONFIG_MMU_NOTIFIER) && ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE == 0
> > -#define VHOST_ARCH_CAN_ACCEL_UACCESS 1
> > +#define VHOST_ARCH_CAN_ACCEL_UACCESS 0
> >   #else
> >   #define VHOST_ARCH_CAN_ACCEL_UACCESS 0
> >   #endif