On Sun, 2014-11-30 at 18:44 +0300, Sergei Shtylyov wrote: > Hello. > > On 11/30/2014 6:11 PM, Michael S. Tsirkin wrote: > > > We need to use bit 32 for virtio 1.0 > > > Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx> > > Reviewed-by: Jason Wang <jasowang@xxxxxxxxxx> > > --- > > drivers/vhost/vhost.h | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > diff --git a/drivers/vhost/vhost.h b/drivers/vhost/vhost.h > > index 3eda654..c624b09 100644 > > --- a/drivers/vhost/vhost.h > > +++ b/drivers/vhost/vhost.h > > @@ -106,7 +106,7 @@ struct vhost_virtqueue { > > /* Protected by virtqueue mutex. */ > > struct vhost_memory *memory; > > void *private_data; > > - unsigned acked_features; > > + u64 acked_features; > > /* Log write descriptors */ > > void __user *log_base; > > struct vhost_log *log; > > @@ -174,6 +174,6 @@ enum { > > > > static inline int vhost_has_feature(struct vhost_virtqueue *vq, int bit) > > { > > - return vq->acked_features & (1 << bit); > > + return vq->acked_features & (1ULL << bit); > > Erm, wouldn't the high word be just dropped when returning *int*? I think > you need !!(vq->acked_features & (1ULL << bit)). Or change the return type to bool. Ben. -- Ben Hutchings The first rule of tautology club is the first rule of tautology club.
Attachment:
signature.asc
Description: This is a digitally signed message part