Date: Sun, 16 Dec 2007 10:07:47 -0800 From: "Kip Macy" <kip.macy@gmail.com> To: "Robert Watson" <rwatson@freebsd.org> Cc: FreeBSD Current <freebsd-current@freebsd.org>, freebsd-arch@freebsd.org Subject: Re: pending changes for TOE support Message-ID: <b1fa29170712161007l6f0b996axf9bd411f0859420d@mail.gmail.com> In-Reply-To: <20071216111315.C49036@fledge.watson.org> References: <b1fa29170712121303x537fd11fj4b8827bb353ad8e4@mail.gmail.com> <b1fa29170712150057m690bd36bm7a1910969e92293b@mail.gmail.com> <20071215100351.Q70617@fledge.watson.org> <b1fa29170712151040icb371efseaf61d9b79907b24@mail.gmail.com> <20071216111315.C49036@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Dec 16, 2007 3:17 AM, Robert Watson <rwatson@freebsd.org> 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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b1fa29170712161007l6f0b996axf9bd411f0859420d>