diff --git a/net/ethtool/netlink.c b/net/ethtool/netlink.c
index fc4ccecf9495c4400aacb8398b73dfd443fd1d33..e5efdf2817eff32c035e56d5c2cf85d92f2922ee 100644
--- a/net/ethtool/netlink.c
+++ b/net/ethtool/netlink.c
@@ -41,7 +41,7 @@ int ethnl_ops_begin(struct net_device *dev)
 		pm_runtime_get_sync(dev->dev.parent);
 
 	if (!netif_device_present(dev) ||
-	    dev->reg_state == NETREG_UNREGISTERING) {
+	    dev->reg_state >= NETREG_UNREGISTERING) {
 		ret = -ENODEV;
 		goto err;
 	}