From owner-freebsd-net@FreeBSD.ORG Fri Feb 17 05:36:58 2012 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C0DD0106566B for ; Fri, 17 Feb 2012 05:36:58 +0000 (UTC) (envelope-from pyunyh@gmail.com) Received: from mail-pz0-f54.google.com (mail-pz0-f54.google.com [209.85.210.54]) by mx1.freebsd.org (Postfix) with ESMTP id 960DE8FC0A for ; Fri, 17 Feb 2012 05:36:58 +0000 (UTC) Received: by daec6 with SMTP id c6so3248535dae.13 for ; Thu, 16 Feb 2012 21:36:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=from:date:to:cc:subject:message-id:reply-to:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=vtyvjHWCwZ2fZJMNLd6p82pb+LQ6Gf+3Xat3rZabqIo=; b=lCZVB45edTGmhJ9VJfc9rqkt9hktge8DEKiqT/+n3KFOZnyjtd3pxb83I/DPjXVYoc 6IOmIRlba1QGr9SO+oQHnLEPhs3w8wxeHr8WYFtcZR+0rPH32fc4BhUY3+FuE7yEyEkq 1hbvp02KnYKwq2qrnRF/UVxZ5BgvTTt9idBPA= Received: by 10.68.203.130 with SMTP id kq2mr15138939pbc.136.1329457018190; Thu, 16 Feb 2012 21:36:58 -0800 (PST) Received: from pyunyh@gmail.com ([114.111.62.249]) by mx.google.com with ESMTPS id p9sm15816387pbb.9.2012.02.16.21.36.55 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 16 Feb 2012 21:36:56 -0800 (PST) Received: by pyunyh@gmail.com (sSMTP sendmail emulation); Fri, 17 Feb 2012 14:36:52 -0800 From: YongHyeon PYUN Date: Fri, 17 Feb 2012 14:36:52 -0800 To: David Somayajulu Message-ID: <20120217223652.GA8566@michelle.cdnetworks.com> References: <75E1A2A7D185F841A975979B0906BBA67C79BD85EB@AVEXMB1.qlogic.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <75E1A2A7D185F841A975979B0906BBA67C79BD85EB@AVEXMB1.qlogic.org> User-Agent: Mutt/1.4.2.3i Cc: "freebsd-net@freebsd.org" Subject: Re: Question on TSO/LSO Transmit Frames X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Feb 2012 05:36:58 -0000 On Thu, Feb 16, 2012 at 10:03:54AM -0800, David Somayajulu wrote: > Hi All, > Is it safe to assume that when a driver receives an Ethernet frame to transmit with CSUM_TSO bit set in > > m_head->m_pkthdr.csum_flags ; where m_head is the first (struct mbuf) in the mbuf chain > > that the [Ethernet Header] + [VLAN Tag if present] + [IP Header] + [TCP Header] are all present in one physically contiguous segment ? > No it is not. This is the main reason why TSO capable drivers parse mbuf chain in TX path. > In other words is > > Size of ([Ethernet Header] + [VLAN Tag if present] + [IP Header] + [TCP Header]) <= m_head->m_len > > When ((m_head->m_pkthdr.csum_flags & CSUM_TSO) != 0) > > Thanks > David S.