--- x/drivers/usb/usbip/vhci_sysfs.c
+++ y/drivers/usb/usbip/vhci_sysfs.c
@@ -76,6 +76,8 @@ static ssize_t status_show_vhci(int pdev
 	}
 
 	hcd = platform_get_drvdata(pdev);
+	if (!usb_hcd_is_primary_hcd(hcd))
+		return 0;
 	vhci_hcd = hcd_to_vhci_hcd(hcd);
 	vhci = vhci_hcd->vhci;
 
--- x/net/core/dev.c
+++ y/net/core/dev.c
@@ -10260,14 +10260,19 @@ static bool from_cleanup_net(void)
 #endif
 }
 
+static unsigned long extra_netdev_locks = 1;
 static void rtnl_drop_if_cleanup_net(void)
 {
+	if (extra_netdev_locks)
+		return;
 	if (from_cleanup_net())
 		__rtnl_unlock();
 }
 
 static void rtnl_acquire_if_cleanup_net(void)
 {
+	if (extra_netdev_locks)
+		return;
 	if (from_cleanup_net())
 		rtnl_lock();
 }