On 2018/12/11 上午3:47, David Miller wrote:
From: Jason Wang <jasowang@xxxxxxxxxx>
Date: Mon, 10 Dec 2018 17:44:50 +0800
This series tries to fix various issues of vhost:
- Patch 1 adds a missing write barrier between used idx updating and
logging.
- Patch 2-3 brings back the protection of device IOTLB through vq
mutex, this fixes possible use after free in device IOTLB entries.
- Patch 4 fixes the diry page logging when device IOTLB is
enabled. We should done through GPA instead of GIOVA, this was done
through logging through iovec and traversing GPA->HPA list for the
GPA.
Please consider them for -stable.
Looks like the kbuild robot found some problems.
->used is a pointer (which might be 32-bit) and you're casting it to
a u64 in the translate_desc() calls of patch #4.
Please make sure that you don't actually require the full domain of
a u64 in these values, as obviously if vq->used is a pointer you will
only get a 32-bit domain on 32-bit architectures.
It seems the reason is that I cast from plain void pointer directly. Let
me cast it to uintptr_t first.
Thanks