List Info

Thread: gre_output() issue.




gre_output() issue.
user name
2007-08-13 15:43:21
Hi:

gre_output() isn't checking IFF_RUNNING | IFF_UP
properly.  The interesting case is when gre_compute_route()
fails and IFF_RUNNING is knocked down but IFF_UP is left
set.  A recursion lock up can result.

Any objections before I commit?

-seanb


Index: net/if_gre.c
============================================================
=======
RCS file: /cvsroot/src/sys/net/if_gre.c,v
retrieving revision 1.98
diff -r1.98 if_gre.c
611c611,612
< 	if ((ifp->if_flags & (IFF_UP | IFF_RUNNING)) ==
0 ||
---
> 	if ((ifp->if_flags & (IFF_UP | IFF_RUNNING))
!=
> 	    (IFF_UP | IFF_RUNNING) ||

Re: gre_output() issue.
country flaguser name
United States
2007-08-13 23:01:33
On Aug 13, 2007, at 1:43 PM, Sean Boudreau wrote:

>
> Hi:
>
> gre_output() isn't checking IFF_RUNNING | IFF_UP
> properly.  The interesting case is when
gre_compute_route()
> fails and IFF_RUNNING is knocked down but IFF_UP is
left
> set.  A recursion lock up can result.
>
> Any objections before I commit?

Not from me.

>
>
> -seanb
>
>
> Index: net/if_gre.c
>
============================================================
=======
> RCS file: /cvsroot/src/sys/net/if_gre.c,v
> retrieving revision 1.98
> diff -r1.98 if_gre.c
> 611c611,612
> < 	if ((ifp->if_flags & (IFF_UP |
IFF_RUNNING)) == 0 ||
> ---
>> 	if ((ifp->if_flags & (IFF_UP |
IFF_RUNNING)) !=
>> 	    (IFF_UP | IFF_RUNNING) ||

-- thorpej


Re: gre_output() issue.
country flaguser name
United States
2007-08-14 00:50:44
On Mon, Aug 13, 2007 at 04:43:21PM -0400, Sean Boudreau
wrote:
> 
> Hi:
> 
> gre_output() isn't checking IFF_RUNNING | IFF_UP
> properly.  The interesting case is when
gre_compute_route()
> fails and IFF_RUNNING is knocked down but IFF_UP is
left
> set.  A recursion lock up can result.
> 
> Any objections before I commit?

No objections.  Can you say more about the recursion
lock-up?

Dave

-- 
David Young             OJC Technologies
dyoungojctech.com      Urbana, IL * (217) 278-3933 ext 24

[1-3]

about | contact  Other archives ( Real Estate discussion Medical topics )