Thread (14 messages) flat view 14 messages, 4 authors, 2009-10-14

Re: kernel mode pppoe ppp if + ifb + mirred redirect, ethernet packets in ifb?!

From: jamal <hidden>
Date: 2009-10-13 13:22:45

On Tue, 2009-10-13 at 15:45 +0300, Denys Fedoryschenko wrote:
First problem, on restart and massive users login i am getting some weird 
locking problem with modprobe,probably related to busybox/mdev.
When interface come up, maybe it is problem of mdev, it is trying to do 
modprobe with ip address as attribute. Probably they must not modprobe on 
virtual interface. It is not easy to track who is reason of such call.

As result:
[  174.564503] request_module: runaway loop modprobe 172.16.3.1
[  174.564702] request_module: runaway loop modprobe 172.16.3.1
[  174.801355] request_module: runaway loop modprobe 172.16.106.1
[  174.801487] request_module: runaway loop modprobe 172.16.106.1
[  175.011415] request_module: runaway loop modprobe 172.16.106.1
load average (even it doesn't mean anything in terms of CPU load) jumps to 
72-80.
Strange. But would probably make sense to modprobe the virtual interface
then assign ip address to it.
Another bottleneck is u32 (i can optimize but) and some strange locks 
appearing at top of perf, maybe same as logon case.
like you say u32 can be optimized
And yes, pppd also appearing, but seems just registering new sysctls (for new 
interface?) takes a lot of resources.
back in the days (when i was involved in pppoe) pppd was a big problem
because it was not rentrant, so to solve the problem you exec a new
process for each user..
Ben Lahaise did a lot of work in this area and i am pretty sure decided
not to use pppd.
I can post perf -a -f g if you are interested for "logging in" case and 
regular operation.
Sure - but i may not be much use to you..
I have CCed Ben.
Here is key part of shaper code:
Ok - makes sense. I know some people using mark for ingress pseudo RPF.
And given instability of netfilter interface, I may just end up patching
skbedit.

Well another way is just to use  as you suggest - egress on output 
interface(s).
Sure; If it becomes an issue let me know.

cheers,
jamal

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