From owner-svn-src-head@FreeBSD.ORG Mon Sep 28 19:40:17 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 67CBB1065692; Mon, 28 Sep 2009 19:40:17 +0000 (UTC) (envelope-from yongari@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 56D098FC1C; Mon, 28 Sep 2009 19:40:17 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n8SJeGm9063983; Mon, 28 Sep 2009 19:40:16 GMT (envelope-from yongari@svn.freebsd.org) Received: (from yongari@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n8SJeGrG063981; Mon, 28 Sep 2009 19:40:16 GMT (envelope-from yongari@svn.freebsd.org) Message-Id: <200909281940.n8SJeGrG063981@svn.freebsd.org> From: Pyun YongHyeon Date: Mon, 28 Sep 2009 19:40:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r197586 - head/sys/dev/fxp X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Sep 2009 19:40:17 -0000 Author: yongari Date: Mon Sep 28 19:40:16 2009 New Revision: 197586 URL: http://svn.freebsd.org/changeset/base/197586 Log: It seems some 82559ER controllers do not support Rx checksum offloading. Datasheet said nothing about the limitation of 82559ER except WOL. Explicitly disable Rx checksum offloading for controllers that is known to lack the capability. PR: kern/138135 Tested by: Gooderum, Mark < mgooderum <> websense dot com > Modified: head/sys/dev/fxp/if_fxp.c Modified: head/sys/dev/fxp/if_fxp.c ============================================================================== --- head/sys/dev/fxp/if_fxp.c Mon Sep 28 19:33:52 2009 (r197585) +++ head/sys/dev/fxp/if_fxp.c Mon Sep 28 19:40:16 2009 (r197586) @@ -631,8 +631,11 @@ fxp_attach(device_t dev) } /* For 82559 or later chips, Rx checksum offload is supported. */ - if (sc->revision >= FXP_REV_82559_A0) - sc->flags |= FXP_FLAG_82559_RXCSUM; + if (sc->revision >= FXP_REV_82559_A0) { + /* 82559ER does not support Rx checksum offloading. */ + if (sc->ident->devid != 0x1209) + sc->flags |= FXP_FLAG_82559_RXCSUM; + } /* * Enable use of extended RFDs and TCBs for 82550 * and later chips. Note: we need extended TXCB support