[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20190117.214705.1465557777501427449.davem@davemloft.net>
Date: Thu, 17 Jan 2019 21:47:05 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: jasowang@...hat.com
Cc: mst@...hat.com, kvm@...r.kernel.org,
virtualization@...ts.linux-foundation.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, jintack@...columbia.edu
Subject: Re: [PATCH net V4] vhost: log dirty page correctly
From: Jason Wang <jasowang@...hat.com>
Date: Wed, 16 Jan 2019 16:54:42 +0800
> Vhost dirty page logging API is designed to sync through GPA. But we
> try to log GIOVA when device IOTLB is enabled. This is wrong and may
> lead to missing data after migration.
>
> To solve this issue, when logging with device IOTLB enabled, we will:
>
> 1) reuse the device IOTLB translation result of GIOVA->HVA mapping to
> get HVA, for writable descriptor, get HVA through iovec. For used
> ring update, translate its GIOVA to HVA
> 2) traverse the GPA->HVA mapping to get the possible GPA and log
> through GPA. Pay attention this reverse mapping is not guaranteed
> to be unique, so we should log each possible GPA in this case.
>
> This fix the failure of scp to guest during migration. In -next, we
> will probably support passing GIOVA->GPA instead of GIOVA->HVA.
>
> Fixes: 6b1e6cc7855b ("vhost: new device IOTLB API")
> Reported-by: Jintack Lim <jintack@...columbia.edu>
> Cc: Jintack Lim <jintack@...columbia.edu>
> Signed-off-by: Jason Wang <jasowang@...hat.com>
Applied and queued up for -stable.
Powered by blists - more mailing lists