I wrote a simple patches for userland and kernel parts of u32 classifier:
iproute/tc/f_u32.c
linux/net/sched/cls_u32.c

Now I can use filter table with 16384 entries. It's enough for O(1) operation,
but still not enough for using last two octets of IP address as a hash key.
Divisors 32768 and 65536 are not allowed due to insufficient kernel buffer
memory.

Command
# tc filter add dev eth1 parent 1:0 prio 5 handle 2: protocol ip \
     u32 divisor 65536

gives "RTNETLINK answers: No buffer space available" instead of "Invalid 
divisor".

The question is "How to increase the size of the kernel buffer space?".

-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to