diff --git a/[refs] b/[refs] index b630615d0347..afaa69108d69 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 459eea74104ad85c30e17541c2b30d776445e985 +refs/heads/master: 401023710d73aaef1191ab4d6a79d39c51add828 diff --git a/trunk/drivers/net/tun.c b/trunk/drivers/net/tun.c index 038c1ef94d2e..7b816a032957 100644 --- a/trunk/drivers/net/tun.c +++ b/trunk/drivers/net/tun.c @@ -663,7 +663,11 @@ static int tun_chr_ioctl(struct inode *inode, struct file *file, case SIOCSIFHWADDR: { /* try to set the actual net device's hw address */ - int ret = dev_set_mac_address(tun->dev, &ifr.ifr_hwaddr); + int ret; + + rtnl_lock(); + ret = dev_set_mac_address(tun->dev, &ifr.ifr_hwaddr); + rtnl_unlock(); if (ret == 0) { /** Set the character device's hardware address. This is used when