From owner-freebsd-mips@FreeBSD.ORG Mon Jan 17 05:43:03 2011 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 68F06106566C; Mon, 17 Jan 2011 05:43:03 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-ww0-f50.google.com (mail-ww0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id C479A8FC14; Mon, 17 Jan 2011 05:43:02 +0000 (UTC) Received: by wwf26 with SMTP id 26so4956900wwf.31 for ; Sun, 16 Jan 2011 21:43:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=yGnfnu1BsEhPy5UBBbCnDJYFdKFcMKHCA5jt3Yq0xPY=; b=s1eYzZp1y0Jf4xt6HZHDeJGqFjSvJWM9UoMDM66hRjgvGg954YkrdZjwhqA7Mp1K1e oGEWuJghOpyHJpdXfU8PjaME3R0eykZ9mBMPU46ytqksZCF8IZHZq13b2zxS0gIPWI4u QDQw3A1bNOsDzPD7CR6YkZ1DpNnzI6u5bWhLU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=lNVVYnYoRNpZWvqT726Mv69eoBl3gMAQl6QsDm6FmODPuEc+tVia9AP0Hygo52TK5w J03UkSHr5oBrhB1v6DIG3Q7lmgjrW8we27TECIFWXpKpYPwW6yoy7xKphNSbqZdnYUka BKEkxueZbh9XldXCDcpzBiUhC8YH3omJ0ngG0= MIME-Version: 1.0 Received: by 10.216.254.89 with SMTP id g67mr1932093wes.7.1295242981464; Sun, 16 Jan 2011 21:43:01 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.216.159.201 with HTTP; Sun, 16 Jan 2011 21:43:01 -0800 (PST) In-Reply-To: References: Date: Mon, 17 Jan 2011 13:43:01 +0800 X-Google-Sender-Auth: KxZMBdjBPWyEzlZB60DiaDdM_VQ Message-ID: From: Adrian Chadd To: Monthadar Al Jaberi Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-net@freebsd.org, freebsd-mips@freebsd.org Subject: Re: capturing packet from wlan0 with netgraph? X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jan 2011 05:43:03 -0000 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 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 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. wro= te: >>> On Thu, Jan 13, 2011 at 11:08 AM, Adrian Chadd wro= te: >>>> 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 >>> =A0 =A0 435 =A0 =A0 =A0 =A0 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 w= rote: >>>>> 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 t= o >>>>> 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 withou= t >>>>> 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 >