QoS with tc: problems filtering PPP SES
Hello,
i am trying to apply filters on a device. I have no problems to filter ip protocol, matching on distant port for example.
But i have ppp packet on my interface, and i cannot filter them. When I had the following filter:
tc filter add dev ethoa0 parent 1: protocol ppp_ses u32 match u32 0x00000000 0x00000000 at 0 flowid 1:80
There is a kernel panic crash in the function u32_classify, because of an acces to the adress 0 when the interface try to send the first ppp packet.
The call stack is the following:
[<801d9cd4>] u32_classify+0x84/0x268
[<801cf7a8>] tc_classify+0x6c/0xa4
[<801d1860>] htb_classify+0x70/0x264
[<801d20e8>] htb_enqueue+0x28/0x27c
[<801bd524>] dev_tx_lower+0x238/0x2ec
[<801bd640>] dev_queue_xmit+0x68/0x78
[<c0433ca8>] rg_pppoe_output+0xb8/0xd8 [one_module]
[<c043604c>] pppsyncstart+0x1e8/0x320 [one_module]
[<c0436504>] pppoutput+0x380/0x3d8 [one_module]
[<c042dc18>] rg_ppp_write+0x23c/0x25c [one_module]
[<c03f550c>] kos_chardev_write+0x2c/0x38 [one_module]
[<80078354>] vfs_write+0xa8/0x1b0
[<80078550>] sys_write+0x54/0xa0
[<8001a970>] stack_done+0x20/0x40
Does any body have an idea how to solve my problem? What can I do to filter ppp packet?
|