lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49B55E45.3040902@cosmosbay.com>
Date:	Mon, 09 Mar 2009 19:21:57 +0100
From:	Eric Dumazet <dada1@...mosbay.com>
To:	Ron Yorgason <yorgasor@...il.com>
CC:	netdev@...r.kernel.org
Subject: Re: Kernel Oops in UDP w/ ARM architecture

Please dont top post on this mailing list

Ron Yorgason a écrit :
> We're using the fec driver, found in drivers/net/fec.c.  I modified
> this driver slightly to get the MAC address from the redboot
> configuration stored in flash memory, but it's otherwise untouched.  I
> can send my version of the file if that would help.
> 
> --Ron
> 
> 

Given that ARM seems to be picky about non aligned accesses, you might
try this patch. This should force IP header to be aligned.

diff -u linux-2.6.19/drivers/net/fec.c.old linux-2.6.19/drivers/net/fec.c
--- linux-2.6.19/drivers/net/fec.c.old
+++ linux-2.6.19/drivers/net/fec.c
@@ -641,13 +641,14 @@
         * include that when passing upstream as it messes up
         * bridging applications.
         */
-       skb = dev_alloc_skb(pkt_len-4);
+       skb = dev_alloc_skb((pkt_len - 4) + 2);

        if (skb == NULL) {
                printk("%s: Memory squeeze, dropping packet.\n", dev->name);
                fep->stats.rx_dropped++;
        } else {
                skb->dev = dev;
+               skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */
                skb_put(skb,pkt_len-4); /* Make room */
                eth_copy_and_sum(skb, data, pkt_len-4, 0);
                skb->protocol=eth_type_trans(skb,dev);

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ