From owner-freebsd-current@FreeBSD.ORG Sun Dec 16 18:07:48 2007 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A630016A421 for ; Sun, 16 Dec 2007 18:07:48 +0000 (UTC) (envelope-from kip.macy@gmail.com) Received: from wa-out-1112.google.com (wa-out-1112.google.com [209.85.146.178]) by mx1.freebsd.org (Postfix) with ESMTP id 6170E13C465 for ; Sun, 16 Dec 2007 18:07:48 +0000 (UTC) (envelope-from kip.macy@gmail.com) Received: by wa-out-1112.google.com with SMTP id k17so2931458waf.3 for ; Sun, 16 Dec 2007 10:07:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=oI4jeJcNbg+WEPlzoCnZYvn04zHqPtn8WqpCsp4MN0M=; b=v/fdwZfAgJZCtINOoI+SRNv5uBcqQutdgseQUTzVuwCDgMSjfljwLAHcCy6zxdc1yY51O1jJ9uBGeDnjktk/DpAH5KkG2DWy1gw00gq5kvZNupIyAxfwlFncWeNM3BJPsoBtNLbMpVk/Hq7oY/WadrKdgxf2W45lxk0e+2LZdDI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=CCM+Zpoia5dT3RuAh9zoN5hXC5enV9OE2Kj6vnk0pjSgWoN/7RE5rXJoTGdNoMV4/NsxmbKBXh7XWiUQ6wV8Z/07dehSQFbgHZcbVEWYO0xpQXBYSYsMYHtcywkGqHqqsPvzgCUKUUNSFPJb8MN97Dp5AhWiMS7aiwEhu/+/0CY= Received: by 10.114.199.1 with SMTP id w1mr1469508waf.109.1197828467368; Sun, 16 Dec 2007 10:07:47 -0800 (PST) Received: by 10.114.255.11 with HTTP; Sun, 16 Dec 2007 10:07:47 -0800 (PST) Message-ID: Date: Sun, 16 Dec 2007 10:07:47 -0800 From: "Kip Macy" To: "Robert Watson" In-Reply-To: <20071216111315.C49036@fledge.watson.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <20071215100351.Q70617@fledge.watson.org> <20071216111315.C49036@fledge.watson.org> Cc: FreeBSD Current , freebsd-arch@freebsd.org Subject: Re: pending changes for TOE support X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 18:07:48 -0000 On Dec 16, 2007 3:17 AM, Robert Watson wrote: > > On Sat, 15 Dec 2007, Kip Macy wrote: > > >> + * + tu_abort > >> + * - closes the connection and sends a RST to peer > >> + * - driver is expectd to trigger an RST and detach the toepcb > >> > >> In regular TCP, the pru_abort method is only called on pending connections > >> while still in the listen queues of a listen socket. Is this true of > >> tu_abort, or is tu_abort a more general method to be used to cancel > >> connections? If so, probably worth commenting on that. > > > > tu_abort is called in place of tcp_output in pru_abort. > > The reason I ask is that it appears tu_abort appears to be the only interface > allowing the stack to request that TOE reset of a connection. In regular TCP, > soabort/pru_abort/tcp_usr_abort are used only on nascent unaccepted > connections; at least one other path, used by tcpdrop(8), can lead to > connections being reset as well. Perhaps a more general tu_reset could be > used to address this? I'm not sure what other direct-to-reset paths exist but > a review for them may be called for. > The patch is at the same location as before: http://www.fsmware.com/freebsd/tcp/tcp_offload.diff I've made all the changes that I mentioned previously (documenting calls and what fields the callers are expected to look at, etc.). In addition I've widened the interface to listen as I know that it only has start and stop. I've changed _abort to _reset, and I now check the capenable field instead of flags in connect.