Received: by 2002:a25:c593:0:0:0:0:0 with SMTP id v141csp5432386ybe; Tue, 10 Sep 2019 03:41:22 -0700 (PDT) X-Google-Smtp-Source: APXvYqzGtTH5JjwHLSv0gItUBFzkB5Wey/dfyI5D19w38khrI6sQ1ClNDYV5e22TPERyPT3636CL X-Received: by 2002:a17:906:5215:: with SMTP id g21mr20369603ejm.105.1568112082288; Tue, 10 Sep 2019 03:41:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1568112082; cv=none; d=google.com; s=arc-20160816; b=a8cV9G+nRsM7DBVkJAqSyn1EIxRM5ICY49FoJHFEAulXN7IwHGxaD3IRvuI0rxcWGM HtTIy5ixH0WOLq2POmXACYOzwLKQgmNPlWWJ9ujff/uSOO2TQo6KvfGGwAcw2Q5Rerp/ 3uL/glSlJm8feR4PGdk+3UDpOmDHH4JzRyrnSe2IGR7OvPlzGTXwfXEyOGIxySnq5AMv /v6NR0kPlCWE7XKFJiSxwocW6Gc/jMniMz9ipjPUE0opi8BN3kcFHTllFFBl8IZgbarr OidpZTTLWHcR9AdIvIRs7OyIVrzFL3TkzR2x2QHif7H8sW37//sZhvwzImtpnIBy1tUy 60ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=ropqFminAsuYzLc+qA9K24nUNWnD7cn3AN/0FfpV44M=; b=bP8DI77Rg0n4+ugQfvj+9KaYpGCAg9fZi98F6+e+NhNKT2OS4LGLTbTcQ1DpXeYyfg mSxfzQZZpF97Ya4AeKzs0DGZX+2NpDuoLwrwUwGzJx08VW1yUstPrvcGzjAagz+Mzy0x byt+C9wl+w92rlQHIrFpq/kv84ENfu1Lb81sH1/GXk5d6Qu2H5C64fqfmJ030zh3fKu+ oDPnATEDYw1HplNodxHHq+HUYp77dejEOceSSyzYxLQ+VkCSDtuBO5BuYKSSEmyY4ygf snta1vBzWpyf0z8yVqlEiLmvxFzNggJIuzm4airkFNhZEHGJqUR8wUPdXoctKhfbXGxn LEbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=auysCQzP; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r23si9115115eji.295.2019.09.10.03.40.58; Tue, 10 Sep 2019 03:41:22 -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=@linaro.org header.s=google header.b=auysCQzP; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389894AbfIJD1Y (ORCPT + 99 others); Mon, 9 Sep 2019 23:27:24 -0400 Received: from mail-lf1-f65.google.com ([209.85.167.65]:39776 "EHLO mail-lf1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728598AbfIJD1X (ORCPT ); Mon, 9 Sep 2019 23:27:23 -0400 Received: by mail-lf1-f65.google.com with SMTP id l11so12219923lfk.6 for ; Mon, 09 Sep 2019 20:27:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ropqFminAsuYzLc+qA9K24nUNWnD7cn3AN/0FfpV44M=; b=auysCQzPijlKbJ8dj8RvUZmk6jgRVymv2glX5u2Ca08XLuwMRh+1OyCCZNBpXOpPXX LbbVNuA6VM+3y6KQE58M5Y6pnkcZssZo4yOra6Hobd8cT2oqx1nNnbIt9HXeBi5mgoqx i7oyVOpS9eASObqUbyci7/CyCeMy1qp0gEPnTPZdjO5iMgR5+Pmk3s3JFG08FDoYnEgV 2lh+gs73JByv8yUfwrHoFZKTlCKTeLvETjUZ61b1IG27loNPtdmujlL+FQgNfAB/hqzM +nAHSxwnaKaiXQXaRXyfGOHI5V4b7ZvIAyT5CA8U+/IgLSCtEf1EexVlhG7OxL5zCxsc zXqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ropqFminAsuYzLc+qA9K24nUNWnD7cn3AN/0FfpV44M=; b=D9VLgG7t54aFItI1e8hVgZ8WHaJ+0nEWWR9iLHDn/ckY0dd8QD0Y2UwJKaAgqJEB5w rzgDkICbIST7H2Fus0JF6FvVbzdrIHtA3qa/3Vy0qGQ6P6yTwC7LkH60EydzQlBxe9w7 ejiTYCDiwS7fhLCSlkEHXif+2HyEUSkQDSdSt0UzEmcyymkGowPMwwofcEAIYVdha7i8 6yVnXzPlsxETk7KjBR7j3Te8ODiH5At0S9pD3JlTNaqo7qewYd1U5JvnwbkkAwC+E84w UNGXljI/Fbqw5bQyWkhL+LSwvO5NR9tHGWKh2FwEg6UERcxV8Vys6Hp/uG53g1DiBB8U g4BQ== X-Gm-Message-State: APjAAAU0pUNR9fP/pwTng+Gf2CBgiZYqerbYzH6M/schI0n6VVoIrLMO hVcEzsQSfCqTBp0PQHbVzKlnzyrS4g9zhDzueprBFg== X-Received: by 2002:ac2:4424:: with SMTP id w4mr18492565lfl.65.1568086041766; Mon, 09 Sep 2019 20:27:21 -0700 (PDT) MIME-Version: 1.0 References: <14599f7165f23db2bf7b71a2596e808e2bc2056c.1567740135.git.baolin.wang@linaro.org> <3bcd69fd-2f8e-9b87-7292-4b0b1aa5be78@intel.com> <3d83db18-7e80-944c-fc4b-244249c71bbf@intel.com> In-Reply-To: <3d83db18-7e80-944c-fc4b-244249c71bbf@intel.com> From: Baolin Wang Date: Tue, 10 Sep 2019 11:27:09 +0800 Message-ID: Subject: Re: [PATCH 2/4] mmc: Add virtual command queue support To: Adrian Hunter Cc: Ulf Hansson , asutoshd@codeaurora.org, Orson Zhai , Chunyan Zhang , Arnd Bergmann , Linus Walleij , Vincent Guittot , linux-mmc , LKML Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 9 Sep 2019 at 20:45, Adrian Hunter wrote: > > On 9/09/19 3:16 PM, Baolin Wang wrote: > > Hi Adrian, > > > > On Mon, 9 Sep 2019 at 20:02, Adrian Hunter wrote: > >> > >> On 6/09/19 6:52 AM, Baolin Wang wrote: > >>> Now the MMC read/write stack will always wait for previous request is > >>> completed by mmc_blk_rw_wait(), before sending a new request to hardware, > >>> or queue a work to complete request, that will bring context switching > >>> overhead, especially for high I/O per second rates, to affect the IO > >>> performance. > >>> > >>> Thus this patch introduces virtual command queue interface, which is > >>> similar with the hardware command queue engine's idea, that can remove > >>> the context switching. > >> > >> CQHCI is a hardware interface for eMMC's that support command queuing. What > >> you are doing is a software issue queue, unrelated to CQHCI. I think you > > > > Yes. > > > >> should avoid all reference to CQHCI i.e. call it something else. > > > > Since its process is similar with CQHCI and re-use the CQHCI's > > interfaces, I called it virtual command queue. I am not sure what else > > name is better, any thoughts? VCQHCI? Thanks. > > What about swq for software queue. Maybe Ulf can suggest something? Um, though changing to use swq, still need reuse command queue's interfaces, like 'mq->use-cqe', 'host->cqe_depth' and cqe ops and so on, looks a little weird for me. But if you all agree with this name, then I am okay. Ulf, what do you suggest? -- Baolin Wang Best Regards