This is needed for supporting multiple mount points.
We can find out the device names to be used with mount by checking
/sys/devices/virtio-pci/virtio*/device file
if the device file have value 9 then the specific virtio device can
be used for mounting.
ex:
#cat /sys/devices/virtio-pci/virtio1/device
9
now we can mount using
# mount -t 9p -o trans=virtio virtio1 /mnt/
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
#include <linux/virtio_config.h>
/* Maximum number of virtio channels per partition (1 for now) */
-#define MAX_9P_CHAN 1
+#define MAX_9P_CHAN 10
#endif /* _LINUX_VIRTIO_9P_H */
mutex_lock(&virtio_9p_lock);
while (index < MAX_9P_CHAN) {
- if (chan->initialized && !chan->inuse) {
- chan->inuse = true;
- break;
- } else {
- index++;
- chan = &channels[index];
+ if (chan->initialized &&
+ !strcmp(devname, dev_name(&chan->vdev->dev))) {
+ if (!chan->inuse) {
+ chan->inuse = true;
+ break;
+ }
}
+ index++;
+ chan = &channels[index];
}
mutex_unlock(&virtio_9p_lock);