From owner-freebsd-stable@FreeBSD.ORG Tue Nov 23 18:50:08 2010 Return-Path: Delivered-To: stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1E96B106566B; Tue, 23 Nov 2010 18:50:08 +0000 (UTC) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from mail.cksoft.de (mail.cksoft.de [IPv6:2001:4068:10::3]) by mx1.freebsd.org (Postfix) with ESMTP id 93E118FC12; Tue, 23 Nov 2010 18:50:07 +0000 (UTC) Received: from localhost (amavis.fra.cksoft.de [192.168.74.71]) by mail.cksoft.de (Postfix) with ESMTP id 89E6841C7B4; Tue, 23 Nov 2010 19:50:06 +0100 (CET) X-Virus-Scanned: amavisd-new at cksoft.de Received: from mail.cksoft.de ([192.168.74.103]) by localhost (amavis.fra.cksoft.de [192.168.74.71]) (amavisd-new, port 10024) with ESMTP id QqDXUyqb3miM; Tue, 23 Nov 2010 19:50:05 +0100 (CET) Received: by mail.cksoft.de (Postfix, from userid 66) id E8C2F41C7BF; Tue, 23 Nov 2010 19:50:05 +0100 (CET) Received: from maildrop.int.zabbadoz.net (maildrop.int.zabbadoz.net [10.111.66.10]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.int.zabbadoz.net (Postfix) with ESMTP id BBA2B44490B; Tue, 23 Nov 2010 18:47:00 +0000 (UTC) Date: Tue, 23 Nov 2010 18:47:00 +0000 (UTC) From: "Bjoern A. Zeeb" X-X-Sender: bz@maildrop.int.zabbadoz.net To: Mike Tancsa In-Reply-To: <20101023091555.W66242@maildrop.int.zabbadoz.net> Message-ID: <20101123175100.V24596@maildrop.int.zabbadoz.net> References: <201010221416.o9MEGSa0094817@lava.sentex.ca> <201010221425.o9MEPcWC094867@lava.sentex.ca> <201010221848.o9MIm7WF096197@lava.sentex.ca> <4CC1F3B8.3010302@bogus.com> <4CC225D3.1030502@ops-netman.net> <7.1.0.9.0.20101022210145.06fe25e8@sentex.net> <201010230159.o9N1xGGF098363@lava.sentex.ca> <201010230821.o9N8LVuR001382@lava.sentex.ca> <20101023091555.W66242@maildrop.int.zabbadoz.net> X-OpenPGP-Key: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Randy Bush , Denis Ahrens , stable@freebsd.org, Jack Vogel , "George V. Neville-Neil" Subject: Re: repeating crashes with 8.1 X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Nov 2010 18:50:08 -0000 On Sat, 23 Oct 2010, Bjoern A. Zeeb wrote: Hi, just to get this out. Jack you might want to review and if ok, include in HEAD before we get feedback maybe. To my understanding worst it would be overhead but not really harm. >>> >>>>> Oct 22 02:06:02 i4 kernel: em1: discard frame w/o packet header >>> >>>>> Oct 22 02:06:10 i4 kernel: em2: discard frame w/o packet header The following is a random-guess by code reading that hasn't been tested yet but believed to be correct; also ran it by gnn. http://people.freebsd.org/~bz/20101122-03-em-pkthdr.diff --- sys/dev/e1000/if_em.c.orig 2010-11-01 20:57:53.000000000 -0400 +++ sys/dev/e1000/if_em.c 2010-11-16 01:28:00.000000000 -0500 @@ -3754,8 +3769,13 @@ em_refresh_mbufs(struct rx_ring *rxr, in ** they can only be due to an error ** and are to be reused. */ - if (rxbuf->m_head != NULL) + if (rxbuf->m_head != NULL) { + rxbuf->m_head->m_len = rxbuf->m_head->m_pkthdr.len = adapter->rx_mbuf_sz; + rxbuf->m_head->m_flags |= M_PKTHDR; + rxbuf->m_head->m_data = rxbuf->m_head->m_ext.ext_buf; + rxbuf->m_head->m_next = NULL; goto reuse; + } m = m_getjcl(M_DONTWAIT, MT_DATA, M_PKTHDR, adapter->rx_mbuf_sz); /* I am not sure if igb and the others need a similar fix. Haven't looked in detail. gnn mentioned similarities though good ones imho in there. If you were able to reproduce the pkthdr issue it would be great to test it. If you always paniced it with IPv6 you may also want to test the applicable patch (use the direct URLs mentioned) from the very end of http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/148857 to make sure you are not running into that race. /bz -- Bjoern A. Zeeb Welcome a new stage of life. Going to jail sucks -- All my daemons like it! http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/jails.html