On Fri, 28 Sep 2007 11:43:14 -0400 Jeff Dike <[email protected]> wrote:
> Add _irqsave/_irqrestore to the locking in update_drop_skb to keep
> uml_net_rx out while the drop skb is being messed with.
>
> Signed-off-by: Jeff Dike <[email protected]>
> ---
> arch/um/drivers/net_kern.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> Index: linux-2.6.22/arch/um/drivers/net_kern.c
> ===================================================================
> --- linux-2.6.22.orig/arch/um/drivers/net_kern.c 2007-09-28 11:10:19.000000000 -0400
> +++ linux-2.6.22/arch/um/drivers/net_kern.c 2007-09-28 11:13:58.000000000 -0400
> @@ -49,9 +49,10 @@ static int drop_max;
> static int update_drop_skb(int max)
> {
> struct sk_buff *new;
> + unsigned long flags;
> int err = 0;
>
> - spin_lock(&drop_lock);
> + spin_lock_irqsave(&drop_lock, flags);
>
> if (max <= drop_max)
> goto out;
> @@ -68,7 +69,7 @@ static int update_drop_skb(int max)
> drop_max = max;
> err = 0;
> out:
> - spin_unlock(&drop_lock);
> + spin_unlock_irqrestore(&drop_lock, flags);
>
> return err;
> }
Doesn't this assume that the arch is only ever uniprocessor, which I don't think is
true on i386 UML??
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]