Hi, Please file a PR about this and the output of "show registers".
I bet that the ip pointer isn't aligned at that point in the code. Whatever is passing the packet to the IP layer should be re-aligning things beforehand. (eg, look at what the ethernet ipfw hook code does - if the ether type is ipv4/ipv6, it actually realigns the packets before passing it back up the stack.) Adrian On 13 January 2011 16:25, Monthadar Al Jaberi <montha...@gmail.com> wrote: > sorry but I have not worked with this for a while now, After some > thoughts I dont think using netgraph will do me any good, because > traffic can still flow through the antennas of the cards. > > If you think it would still be useful to see more ddb prompt for other > scenarios I am happy to try and supply that, but I won't have some > free time until late tomorrow :) > > thnx again! > > On Thu, Jan 13, 2011 at 7:53 AM, Adrian Chadd <adr...@freebsd.org> wrote: >> I've encountered this before. >> >> The mbuf's there aren't always aligned at this point. >> >> >> >> Adrian >> >> On 13 January 2011 14:17, Jayachandran C. <c.jayachand...@gmail.com> wrote: >>> On Thu, Jan 13, 2011 at 11:08 AM, Adrian Chadd <adr...@freebsd.org> wrote: >>>> Find out what the address is that's causing the problem. There's >>>> plenty of places where unaligned mbuf's exist in the IP code and >>>> aren't correctly realigned before being touched. >>>> >>>> MIPS people - is "address error" an alignment problem? >>> >>> Address error can be an alignment problem (or some other cases like >>> accessing kernel address from userspace). >>> >>> But looking at the crash, it certainly seems like in ip_input, the line >>> 435 if (ip->ip_v != IPVERSION) { >>> >>> got a bad address for the ip pointer. >>> >>> The output of 'show registers' at the ddb prompt would be useful to >>> debug further. >>> >>> >>>> On 30 December 2010 21:47, Monthadar Al Jaberi <montha...@gmail.com> wrote: >>>>> Hi, >>>>> >>>>> I have an idea in my head and would like to know if it is possible. >>>>> >>>>> I want to simulate and test the net80211 mesh code in FreeBSD Current. >>>>> I have an RSPRO board with 3 atheros cards. >>>>> >>>>> My basic idea is to run three jails each having its own network >>>>> stack, and redirect all data packets coming out/in of the wlan driver >>>>> to a Server running a home brew application that simulates the medium. >>>>> That would be great, right? Realtime unchanged code to test, running >>>>> different application in their own jails. >>>>> >>>>> So first I started to test netgraph with a simple test case, I want to >>>>> receive all packets from one wireless card and see the data in >>>>> wireshark or tcpdump... >>>>> >>>>> This is my netgraph code: >>>>> mkpeer wlan0: hub lower hook0 >>>>> name wlan0:lower hub >>>>> connect hub: wlan0: hook1 upper >>>>> connect hub: arge0: hook2 lower >>>>> >>>>> >>>>> So if I understood man ng_ether correct, this should capture >>>>> everything from wlan and redirect to ethernet cable. >>>>> >>>>> But I get a panic after a couple of seconds: >>>>> Trap cause = 4 (address error (load or I-fetch) - kernel mode) >>>>> [ thread pid 11 tid 100037 ] >>>>> Stopped at ip_input+0xd8: lw v0,0(s0) >>>>> >>>>> I suspect that data flows to all hooks of the hub, and that is a bad >>>>> thing right? Need to create a special hub node to filter data? Or >>>>> maybe use two ethernet cables for out resp. in? >>>>> >>>>> Is it even possible to do what I want? Or am I thinking wrong? And is >>>>> there a simpler way? >>>>> >>>>> What I want is to test mesh code in a bunch of FreeBSD systems without >>>>> moving the hardware, one could just stack RSPROs and connected them a >>>>> big switch and a PC. >>>>> Hope was I clear in my thoughts. >>>>> >>>>> Best regards, >>>>> -- >>>>> //Monthadar Al Jaberi >>> >>> JC. >>> >> > > > > -- > //Monthadar Al Jaberi > _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"