Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp1717880ybn; Thu, 26 Sep 2019 00:48:31 -0700 (PDT) X-Google-Smtp-Source: APXvYqymNL9f2uziUC/5Bcwcey9CA5m6/M+Rgw/EKzVs85ypVfx744g0WLM4uVuHrUzAo3bNAW1F X-Received: by 2002:a05:6402:3d2:: with SMTP id t18mr2070460edw.136.1569484111420; Thu, 26 Sep 2019 00:48:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569484111; cv=none; d=google.com; s=arc-20160816; b=TryfxF282/Ji7u9Bzxaj8Km5G2bZsG/JbVxQTq9nAC2tm7HFCSr2rQo3vWxzexMco0 UbWjPOqGk8gigXcrgYfJ0/bOLEF+nlWK7P35vOxE2+qqpR1azT0+GwbwH5M24RZL3mH6 ltxJs/2wVACNMwgylmQwmg7iQtx3KhRn/VQMp1BTpMiI9t4etEMFiIDla/Iahp9np+lE Sg92JaE2arqaDOBLXXr7PADLFVsKsS0YlyDj/FlRq9TEHYUdTTPAaREL7ao25VtSkl7K bC/d+zk1uA3VHAr2tEnq2WjpRp2DDKvLqRKvU4pmuUPWtr0tyh4pnOGrPGSQsd0TtbFY pNeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=6aBTeAng15psj7LmOvIH7gwUXqR6k6y6/iJImtS8wA4=; b=0bBa3FT3LUorOEYZL5RTOaf6CASTfHIzNHBzNYyUhNXcbipB0J/eV8ZRn3mJtKrvYA eA/QqwXmnVb+MMv0DZezJ4RoAmtVPaLY1IpsRnPwME24fW0DzG9yWHYWIpsm8xeODUrb HWV7KETTdRqPdhKECHk6HR+uenzkdw+59hVhTzEpJpYvcANG3l5SRJlX5SUAoMJPF6+M 7+3iTXhMWBJHcWzTSyakS2it6fDJowlkaHQ++SwPG3+pfl6HOvvRy9mdfIVMKd0EdUa+ c8Rz2riIYI03IKC8nPuwz1Mu+H1BdOlDH5SJUVNGSjpaW9/V/AbnpahdDvHxsOM06SSB XeVQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel-dk.20150623.gappssmtp.com header.s=20150623 header.b=nBKxnDnA; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q18si615045ejf.153.2019.09.26.00.48.08; Thu, 26 Sep 2019 00:48:31 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel-dk.20150623.gappssmtp.com header.s=20150623 header.b=nBKxnDnA; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2440697AbfIXKJk (ORCPT + 99 others); Tue, 24 Sep 2019 06:09:40 -0400 Received: from mail-pg1-f196.google.com ([209.85.215.196]:35261 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729362AbfIXKJj (ORCPT ); Tue, 24 Sep 2019 06:09:39 -0400 Received: by mail-pg1-f196.google.com with SMTP id a24so1060517pgj.2 for ; Tue, 24 Sep 2019 03:09:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=6aBTeAng15psj7LmOvIH7gwUXqR6k6y6/iJImtS8wA4=; b=nBKxnDnAfqWRyeTJ1aQPcrNh3m9oAltJTJq33mvRP8cXRUElf8b4lvIRULzYb/mgR8 vU91du01glpQu9KAjq/ur0Qci2aHRVma1CLw5ruYynZdhTC7E8Qy/frpLjrHK3PIe2Sw sSSkgXw5HaaD+r5nI9z76S6N8UFPOA7NNxS0T1Tk/EBoBcQTj57JOopO32xPle7aGxIo GNzQK892wHXKRB6gjduXHfN96J7KvlRtPPnsIW3jU3nRloztTNqYhlqhra6L7OU8Ady3 bR6RhnEl/9/O/meU5t3YsWYY4AZI0qid5sKumAJX45HmxV2Qg5PAVgzsm0PRlxtuobHE ASeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=6aBTeAng15psj7LmOvIH7gwUXqR6k6y6/iJImtS8wA4=; b=QAp7sSFwdPOQzUUwltK6lOvaioioO7h8g7/YMMNNrvDlZXbJVQKPy+Gxj8FLoxQ1kh QJ2RM2xM/rtopE1EEX4h6mD8T5LxYxlFIMdomykz9J5fCu1AiKfilOU7kl8B4gGeqomY Nr7Na9a2C0FkiM+x8Dum/PoDsM7FrMyHXuF8j6stmMEOXI6MqgI6JFWgS3/kqhV2J0ha eq87WOdnDDXwWTMk6WHaSbX14BQjINSDzo5e4P79ebHOntBYAgvpaQk1CbMDHbUnxvHE xfx+eZ6iQuQxLm+asRhURgPhSmvG+wXI6rwRtnOcrhYdrG4Y2dTUKbxzeT3akfuE4kOu WQTg== X-Gm-Message-State: APjAAAUSAoAbU7R9ig0LEGhjTHXqDClI2081a9lCEWu5ZIWlCozXuKh0 7obMoUJo0I1SJmTGCYGhpAUzrQNOSTMRuMkI X-Received: by 2002:a17:90a:ba93:: with SMTP id t19mr1968110pjr.141.1569319778255; Tue, 24 Sep 2019 03:09:38 -0700 (PDT) Received: from ?IPv6:2600:380:8419:743e:6023:99b1:fa9f:a39c? ([2600:380:8419:743e:6023:99b1:fa9f:a39c]) by smtp.gmail.com with ESMTPSA id k5sm1363200pgo.45.2019.09.24.03.09.34 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 24 Sep 2019 03:09:37 -0700 (PDT) Subject: Re: [PATCH v2 0/2] Optimise io_uring completion waiting To: Pavel Begunkov , Ingo Molnar Cc: Ingo Molnar , Peter Zijlstra , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org References: <20190923083549.GA42487@gmail.com> <731b2087-7786-5374-68ff-8cba42f0cd68@kernel.dk> <759b9b48-1de3-1d43-3e39-9c530bfffaa0@kernel.dk> <43244626-9cfd-0c0b-e7a1-878363712ef3@gmail.com> <38ea2681-dbf0-457a-dcc0-406d10e2572b@gmail.com> From: Jens Axboe Message-ID: <65a1f01e-e8f5-0da8-eb3c-48c5749c9568@kernel.dk> Date: Tue, 24 Sep 2019 12:09:31 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <38ea2681-dbf0-457a-dcc0-406d10e2572b@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 9/24/19 3:21 AM, Pavel Begunkov wrote: > On 24/09/2019 11:02, Jens Axboe wrote: >> On 9/24/19 1:06 AM, Pavel Begunkov wrote: >>> On 24/09/2019 02:00, Jens Axboe wrote: >>>>> I think we can do the same thing, just wrapping the waitqueue in a >>>>> structure with a count in it, on the stack. Got some flight time >>>>> coming up later today, let me try and cook up a patch. >>>> >>>> Totally untested, and sent out 5 min before departure... But something >>>> like this. >>> Hmm, reminds me my first version. Basically that's the same thing but >>> with macroses inlined. I wanted to make it reusable and self-contained, >>> though. >>> >>> If you don't think it could be useful in other places, sure, we could do >>> something like that. Is that so? >> >> I totally agree it could be useful in other places. Maybe formalized and >> used with wake_up_nr() instead of adding a new primitive? Haven't looked >> into that, I may be talking nonsense. > > @nr there is about number of tasks to wake up. AFAIK doesn't solve the > problem. Ah right, embarassingly I'm actually the one that added that functionality ages ago... -- Jens Axboe