From owner-svn-src-head@FreeBSD.ORG Tue Jan 20 16:15:44 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9A3A2F00; Tue, 20 Jan 2015 16:15:44 +0000 (UTC) Received: from mail-ie0-x230.google.com (mail-ie0-x230.google.com [IPv6:2607:f8b0:4001:c03::230]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5B54A657; Tue, 20 Jan 2015 16:15:44 +0000 (UTC) Received: by mail-ie0-f176.google.com with SMTP id rd18so8668480iec.7; Tue, 20 Jan 2015 08:15:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=xYGnGAFcRA4ktvpmrbqFLTzHK721ReOACainDZZE1Po=; b=LOEHENLydM0TzBo9d5DuDADDV2FEgXTuJj33vibNTrWl5dDaYcV7AlIipNFq5Tcykp Ch755qFYqPzS0ItSQx7F76NYdBanjsQO3PIoKLGMfdsgswS2IJMSMFutRiev63oAgEju fJKLmm2Nsk5uEF7HDBwcr9dj5Y/I5b56R4coJBwqUBCcZqcvzyODYzwA7Q0MJwBeWa8b JkGZsJnUesDyZqpkmbDLPzawHqk0Isq5WQ2ef1UxdqGLFbvkumtWMemrXkW8YUePFJVe oNi79tt7DEoIP9T6807Jl7UoRoScc7YT08unQ+bLP8C6yWstJK9wTNn+HKUBFyXoPJ53 +vTg== MIME-Version: 1.0 X-Received: by 10.50.66.171 with SMTP id g11mr27491766igt.49.1421770543726; Tue, 20 Jan 2015 08:15:43 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.36.78.14 with HTTP; Tue, 20 Jan 2015 08:15:43 -0800 (PST) In-Reply-To: References: <201501151532.t0FFWV2Y037455@svn.freebsd.org> <54BDD9E1.6090505@selasky.org> <20150120075126.GA42409@kib.kiev.ua> <54BE0AAA.4050104@selasky.org> <20150120090057.GD42409@kib.kiev.ua> <54BE21F0.6010602@selasky.org> Date: Tue, 20 Jan 2015 08:15:43 -0800 X-Google-Sender-Auth: bZMODHJ8mWDEhNVY-glu9_jdLBE Message-ID: Subject: Re: svn commit: r277213 - in head: share/man/man9 sys/kern sys/ofed/include/linux sys/sys From: Adrian Chadd To: Ed Maste Content-Type: text/plain; charset=UTF-8 Cc: Hans Petter Selasky , Konstantin Belousov , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , "svn-src-head@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 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: Tue, 20 Jan 2015 16:15:44 -0000 On 20 January 2015 at 06:25, Ed Maste wrote: > On 20 January 2015 at 04:37, Hans Petter Selasky wrote: >> >> It is not very hard to update existing callout clients and you can do it >> too, if you need the extra bits of performance. > > Hi Hans Petter, > > The issue here is that the onus is on the one changing a KPI to > support its consumers through the transition. This doesn't necessarily > mean doing all of the work. But the KPI changes, and techniques for > adapting to them, need to be communicated very well in advance of the > change arriving. > > I appreciate that you have a patch for TCP in review now - but having > Adrian encounter a huge TCP performance regression is an unfortunate > way to discover this issue. I'm +1 on the "think it's the right, clean solution for the callout stuff" as I've done this stuff in userland a few times and it gets hairy very quickly when you try to support multiple ways to schedule, cancel and migrate events from arbitrary CPUs. I'm -1 on the rapid change without fixing other consumers, but I'm definitely +1 on the quick help from Hans on it. The TCP patch will need some closer review by people who have recently worked on the TCP stack and locking. I'll try to get the Verisign developers looped in as they touched this stuff recently. I do think we could do with a debugging print for now to catch situations which need migrating. The callout API doesn't tell you that it did or didn't migrate an event to another CPU and it could make for some performance unpredictability. -a