virtio: fix id_matching for virtio drivers

This bug never appeared, since all current virtio drivers use
VIRTIO_DEV_ANY_ID for the vendor field. If a real vendor would be used,
the check in virtio_id_match is wrong - it returns 0 if
id->vendor == dev->id.vendor.

Signed-off-by: Christian Borntraeger <[email protected]>
Signed-off-by: Rusty Russell <[email protected]>
This commit is contained in:
Christian Borntraeger 2009-05-26 15:46:09 +02:00 • committed by Rusty Russell
commit c89e80168b

View file

@ -61,7 +61,7 @@ static inline int virtio_id_match(const struct virtio_device *dev,
if (id->device != dev->id.device)
return 0;
return id->vendor == VIRTIO_DEV_ANY_ID || id->vendor != dev->id.vendor;
return id->vendor == VIRTIO_DEV_ANY_ID || id->vendor == dev->id.vendor;
}
/* This looks through all the IDs a driver claims to support. If any of them