Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Jan 2011 11:47:24 +0530
From:      "Jayachandran C." <c.jayachandran@gmail.com>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        Monthadar Al Jaberi <monthadar@gmail.com>, freebsd-net@freebsd.org, freebsd-mips@freebsd.org
Subject:   Re: capturing packet from wlan0 with netgraph?
Message-ID:  <AANLkTikgdf4Uy20NF6vQ=-NWGYS4LDdmypKng=2Bg2ME@mail.gmail.com>
In-Reply-To: <AANLkTikC1nYudfM91rPxFfgCj83m8YbdagedeydyBaue@mail.gmail.com>
References:  <AANLkTi=s45woPE21exHgArAyAaO2sW%2BeR=%2BumB6zZcr5@mail.gmail.com> <AANLkTikC1nYudfM91rPxFfgCj83m8YbdagedeydyBaue@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jan 13, 2011 at 11:08 AM, Adrian Chadd <adrian@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 !=3D 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 <monthadar@gmail.com> wrot=
e:
>> 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 =A0basic 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 =3D 4 (address error (load or I-fetch) - kernel mode)
>> [ thread pid 11 tid 100037 ]
>> Stopped at =A0 =A0 =A0ip_input+0xd8: =A0lw =A0 =A0 =A0v0,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.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikgdf4Uy20NF6vQ=-NWGYS4LDdmypKng=2Bg2ME>