Hi, I have a question about u32 filter.
in u32_classify() function (located in net/sched/cls_u32.c),
there is a memory address boundary check code :
--
#if !defined(__i386__) && !defined(__mc68000__)
if ((unsigned long)ptr & 3) { // ptr = skb->nh.raw
printk("ptr error...returned -1\n");
return -1;
}
#endif
--
According to the code, it is error if ptr is not a multiple of 4
except on the i386 or mc68000. Why is this kind of code necessary?
What kind of problem could happen if that code is removed
on the other platform - arm or mips or etc..
SoYoung
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/