Alignment issue
Markku Savela <[email protected]>
| Newsgroups | gmane.network.routing.click |
|---|---|
| Message-ID | <[email protected]> |
When configuring for mips 64, it does not set the HAVE_INDIFFERENT_ALIGNMENT in include/click/config.h. This is fine, but it does trouble me that click doesn't even run the configuration without it being passed through the click-align tool. I would like to have an option to run the unaligned configuration and take my risks on "bus error". Maybe I missed a command line switch to disable this check? In my test case, non-aligned click configuration works just fine (the packets just happen to be aligned), but running conf through click align, adds alingning and causes unnecessary extra copy of the packet. (see attached confs). _______________________________________________ click mailing list [email protected] https://amsterdam.lcs.mit.edu/mailman/listinfo/click
echo.click
(text/plain, 320 B)
AddressInfo(a0 192.168.0.15 00:90:fb:25:d8:77); out0 :: ToOcteon_push(0); in0 :: FromOcteon -> c :: Classifier(12/0800 23/01, 12/0806 20/0002, 12/0806 20/0001) -> Strip(14) -> CheckIPHeader -> ICMPPingResponder -> eth0 :: ARPQuerier(a0) -> out0; c[1] -> [1] eth0; c[2] -> ARPResponder(a0) -> out0;
echo-align.click
(text/plain, 810 B)
# 1 "<stdin>"
AddressInfo@1 :: AddressInfo(a0 192.168.0.15 00:0f:b7:10:53:3a);
# 3 "<stdin>"
out0 :: ToOcteon_push(0);
# 5 "<stdin>"
in0 :: FromOcteon;
# 6 "<stdin>"
c :: Classifier(12/0800 23/01, 12/0806 20/0002, 12/0806 20/0001);
# 7 "<stdin>"
Strip@5 :: Strip(14);
# 8 "<stdin>"
CheckIPHeader@6 :: CheckIPHeader;
# 9 "<stdin>"
ICMPPingResponder@7 :: ICMPPingResponder;
# 10 "<stdin>"
eth0 :: ARPQuerier(a0);
# 17 "<stdin>"
ARPResponder@9 :: ARPResponder(a0);
# 0 "<click-align>"
Align@click_align@10 :: Align(4, 2);
# 0 "<click-align>"
AlignmentInfo@click_align@15 :: AlignmentInfo(c 4 2,
CheckIPHeader@6 4 0);
# 25 ""
in0 -> Align@click_align@10
-> c
-> Strip@5
-> CheckIPHeader@6
-> ICMPPingResponder@7
-> eth0
-> out0;
c [1] -> [1] eth0;
c [2] -> ARPResponder@9
-> out0;