Re: netns: use a spin_lock to protect nsid management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



(Please always Cc netdev for networking bugs)

On Tue, May 12, 2015 at 10:52 AM, Dan Carpenter
<dan.carpenter@xxxxxxxxxx> wrote:
> Hello Nicolas Dichtel,
>
> The patch 95f38411df05: "netns: use a spin_lock to protect nsid
> management" from May 7, 2015, leads to the following static checker
> warning:
>
>         net/core/net_namespace.c:580 rtnl_net_newid()
>         warn: inconsistent returns 'spin_lock:&nsid_lock'.
>
> net/core/net_namespace.c
>    565
>    566          spin_lock_irqsave(&nsid_lock, flags);
>    567          if (__peernet2id(net, peer) >= 0) {
>    568                  err = -EEXIST;
>    569                  goto out;
>
> I don't know if __peernet2id() unlocks on error but it can't possibly
> restore flags so this isn't right.
>

Yes it is a bug.

Also why do we have to disable IRQ when holding the spinlock?
IOW, which case takes the spin lock in IRQ context?

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux