From owner-cvs-src-old@FreeBSD.ORG Wed May 19 21:12:28 2010 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6EE9A10656C0 for ; Wed, 19 May 2010 21:12:28 +0000 (UTC) (envelope-from yongari@FreeBSD.org) Received: from repoman.freebsd.org (unknown [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 5F40C8FC08 for ; Wed, 19 May 2010 21:12:28 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id o4JLCSPs099229 for ; Wed, 19 May 2010 21:12:28 GMT (envelope-from yongari@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o4JLCSgL099228 for cvs-src-old@freebsd.org; Wed, 19 May 2010 21:12:28 GMT (envelope-from yongari@repoman.freebsd.org) Message-Id: <201005192112.o4JLCSgL099228@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to yongari@repoman.freebsd.org using -f From: Pyun YongHyeon Date: Wed, 19 May 2010 21:12:10 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: RELENG_7 Subject: cvs commit: src/sys/dev/fxp if_fxp.c X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 May 2010 21:12:28 -0000 yongari 2010-05-19 21:12:10 UTC FreeBSD src repository Modified files: (Branch: RELENG_7) sys/dev/fxp if_fxp.c Log: SVN rev 208317 on 2010-05-19 21:12:10Z by yongari MFC r208084: If controller received bad frames make sure to update newly added RFA. Also drop frames that have either CRC error or alignment error. Normally bad frames are not received at all. But controllers running in promiscuous mode will receive bad frames. 82557 will also receive bad frames to receive VLAN oversized frames. While I'm here mark RNR condition if driver happen to see RNR in RFA status and restart RU to receive frames again. Because driver checks all received frames in RX loop, RNR condition could be set in the middle of RX processing. Just relying on RNR interrupt was not enough. This change fixes "Memory modified after free" issue when fxp(4) is running as a member of if_bridge(4). Tested by: Larry Baird gta dot com> Revision Changes Path 1.266.2.29 +7 -2 src/sys/dev/fxp/if_fxp.c