usbip: list: don't list devices attached to vhci_hcd
commit ef824501f50846589f02173d73ce3fe6021a9d2a upstream. usbip host lists devices attached to vhci_hcd on the same server when user does attach over localhost or specifies the server as the remote. usbip attach -r localhost -b busid or usbip attach -r servername (or server IP) Fix it to check and not list devices that are attached to vhci_hcd. Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a7d225692e
commit
46c651aea6
1 changed files with 9 additions and 0 deletions
|
@ -180,6 +180,7 @@ static int list_devices(bool parsable)
|
|||
const char *busid;
|
||||
char product_name[128];
|
||||
int ret = -1;
|
||||
const char *devpath;
|
||||
|
||||
/* Create libudev context. */
|
||||
udev = udev_new();
|
||||
|
@ -202,6 +203,14 @@ static int list_devices(bool parsable)
|
|||
path = udev_list_entry_get_name(dev_list_entry);
|
||||
dev = udev_device_new_from_syspath(udev, path);
|
||||
|
||||
/* Ignore devices attached to vhci_hcd */
|
||||
devpath = udev_device_get_devpath(dev);
|
||||
if (strstr(devpath, USBIP_VHCI_DRV_NAME)) {
|
||||
dbg("Skip the device %s already attached to %s\n",
|
||||
devpath, USBIP_VHCI_DRV_NAME);
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Get device information. */
|
||||
idVendor = udev_device_get_sysattr_value(dev, "idVendor");
|
||||
idProduct = udev_device_get_sysattr_value(dev, "idProduct");
|
||||
|
|
Loading…
Add table
Reference in a new issue