Thread (5 messages) 5 messages, 3 authors, 2007-03-30

Re: DECnet routing rule resolution

From: David Miller <davem@davemloft.net>
Date: 2007-03-29 18:43:08

From: Steven Whitehouse <redacted>
Date: Thu, 29 Mar 2007 17:24:10 +0100
One of the effects of the recent tidy up of the DECnet routing rules
code is that we are no longer able to see the difference between reading
a rule of type FR_ACT_UNREACHABLE returning -ENETUNREACH and simply
running out of rules to look at, which also returns the same thing.

The DECnet code used to return -ESRCH if it ran out of rules in which
case the test in dn_route.c (which resulted in DECnet falling back to
endnode routing in the -ESRCH case) no longer works.

So there seems to be several options to try and solve this: one is to
change the error return for running out of rules in
fib_rules.c:fib_rules_lookup() to something else (but then that has a
knock on effect in the ipv4 code). Another is to add the "not found"
error return as a parameter in the struct fib_rules_ops so that both
protocols can have their preferred error return. Both solutions seem a
bit messy, so I thought I'd ask for some guidance on this before writing
a patch,
I think we should be able to return -ESRCH (a more sensible error
value if you ask me) across the board.

Thomas what do you think?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help