From owner-svn-src-head@freebsd.org Thu Jul 5 00:56:16 2018 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A38591030196; Thu, 5 Jul 2018 00:56:16 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 505BC7C8BC; Thu, 5 Jul 2018 00:56:16 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Received: from [192.168.200.3] (c-73-216-227-39.hsd1.va.comcast.net [73.216.227.39]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: gallatin) by duke.cs.duke.edu (Postfix) with ESMTPSA id EC9F327000E7; Wed, 4 Jul 2018 20:56:14 -0400 (EDT) DMARC-Filter: OpenDMARC Filter v1.3.1 duke.cs.duke.edu EC9F327000E7 Authentication-Results: duke.cs.duke.edu; dmarc=none header.from=cs.duke.edu DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=cs.duke.edu; s=mail0816; t=1530752175; bh=MhwS/ugCG24yUN0uFu5C60KOiWY7zGwOwORMqeveRvs=; h=Subject:To:From:Date:From; b=TCy2w5dka01kksxHCMJ64PUgtmSJzKgzCK2PEX6W1m3aNUXtAWPfra/ieipKvGwlt clKDr63YLTaC8vMhiR+fuCPuAVGRT4nFRt3Cv8tBhJcCiHlZUDVXxmltlej1hY3ecq Y7t39g8CLpEZhZWN9/5meJDb//xlml6HmMH0xsFmM0tHcy/BipoZt8tf4q/fpf+uDt dzeyKJ/9LondoZgSnlA9CwaudeFkF1BFHd8FwJGiQ3M0/svYcm4nwBxdXem1suNzQL KVblNLSvJwIk7Qa2Vk82bt7Jc3rxrgFYzPEg4N018zwizbft+BjSGaD4C9KSXcsJ6a chOISxuLZE8+g== Subject: Re: svn commit: r335967 - head/sys/dev/mxge To: rgrimes@freebsd.org Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201807041946.w64JkKHM044529@pdx.rh.CN85.dnsmgr.net> From: Andrew Gallatin Message-ID: <658fb418-5a84-dc91-2cc8-1a503a3d43a6@cs.duke.edu> Date: Wed, 4 Jul 2018 20:56:14 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <201807041946.w64JkKHM044529@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.27 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: Thu, 05 Jul 2018 00:56:16 -0000 On 07/04/18 15:46, Rodney W. Grimes wrote: >> Author: gallatin >> Date: Wed Jul 4 19:29:06 2018 >> New Revision: 335967 >> URL: https://urldefense.proofpoint.com/v2/url?u=https-3A__svnweb.freebsd.org_changeset_base_335967&d=DwICAg&c=imBPVzF25OnBgGmVOlcsiEgHoG1i6YHLR0Sj_gZ4adc&r=Ed-falealxPeqc22ehgAUCLh8zlZbibZLSMWJeZro4A&m=2rIiw5AUJ2ishkBkygGMa_9kr0LJOaonX8ni3BF2BHk&s=MwCt6_IgNah0XklsYThsXFcwZD54Xl78TRlnFXJ4zWs&e= >> >> Log: >> mxge: choose appropriate values for hw tso >> >> Modified: >> head/sys/dev/mxge/if_mxge.c >> >> Modified: head/sys/dev/mxge/if_mxge.c >> ============================================================================== >> --- head/sys/dev/mxge/if_mxge.c Wed Jul 4 18:54:44 2018 (r335966) >> +++ head/sys/dev/mxge/if_mxge.c Wed Jul 4 19:29:06 2018 (r335967) >> @@ -4984,6 +4984,9 @@ mxge_attach(device_t dev) >> ifp->if_ioctl = mxge_ioctl; >> ifp->if_start = mxge_start; >> ifp->if_get_counter = mxge_get_counter; >> + ifp->if_hw_tsomax = 65536 - (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN); > > Would not this be more accurate (need to reorder assigns): > ifp->if_hw_tsomax = ifp->if_hw_tsomaxsegsize - (ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN); > >> + ifp->if_hw_tsomaxsegcount = sc->ss[0].tx.max_desc; >> + ifp->if_hw_tsomaxsegsize = 65536; It seems simpler as-is to me. Looking around at other drivers, I see at least one (cxgbe) which does the same thing. After doing the grep, I'm more concerned with drivers which may be setting their tsomaxsegsize incorrectly to be too small and hurting their performance by causing TCP to chop needlessly at smaller boundaries which are already enforced by their busdma tags. PAGE_SIZE, which seems to be the common mistaken size, won't hurt too much I suppose. But the default of 2K is probably not very good. Drew