Skip to content

Commit

Permalink
Revert "net: core: dev_get_valid_name is now the same as dev_alloc_na…
Browse files Browse the repository at this point in the history
…me_ns"

This reverts commit 87c320e.

Changing the error return code in some situations turns out to
be harmful in practice.  In particular Michael Ellerman reports
that DHCP fails on his powerpc machines, and this revert gets
things working again.

Johannes Berg agrees that this revert is the best course of
action for now.

Fixes: 029b6d1 ("Revert "net: core: maybe return -EEXIST in __dev_alloc_name"")
Reported-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
David S. Miller committed Jan 2, 2018
1 parent 2758b3e commit 55a5ec9
Showing 1 changed file with 13 additions and 1 deletion.
14 changes: 13 additions & 1 deletion net/core/dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -1146,7 +1146,19 @@ EXPORT_SYMBOL(dev_alloc_name);
int dev_get_valid_name(struct net *net, struct net_device *dev,
const char *name)
{
return dev_alloc_name_ns(net, dev, name);
BUG_ON(!net);

if (!dev_valid_name(name))
return -EINVAL;

if (strchr(name, '%'))
return dev_alloc_name_ns(net, dev, name);
else if (__dev_get_by_name(net, name))
return -EEXIST;
else if (dev->name != name)
strlcpy(dev->name, name, IFNAMSIZ);

return 0;
}
EXPORT_SYMBOL(dev_get_valid_name);

Expand Down

0 comments on commit 55a5ec9

Please sign in to comment.