Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp338455ybh; Mon, 20 Jul 2020 18:31:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw5kCMk1MELTs3Y5CPVEg+tyBUKdnQ3jG3er+SU7ZGLJlp+iuBpwYC978sxKjGSr5CeWjQg X-Received: by 2002:a17:906:eb5a:: with SMTP id mc26mr24698839ejb.42.1595295102292; Mon, 20 Jul 2020 18:31:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1595295102; cv=none; d=google.com; s=arc-20160816; b=qQLVWbMdXr7WXbCXUCoabRIROwZhoboVIhyRObAZL8BSeNT3sWLTJQWicjZbjUpRfr tiNwge6IVUecH6sAc0Ia3twJZ2+pQ7zjeKTKFD3xGI7g1s8b690kf1ASjudpEhQs708V NlLzwSmm6euyyGapCxn0q4i7pl2KxbZI/7Rc9O2Ce8vYfqwFyHLcENsa5cI/PSRBDRnW hT8WNq/F7BWQMgz5R9t44j5WTeT0TFyI3dCDdwenO8eE5XjwJHN0ZnuF3TA77J1WFqNo fapUWI9xOP+0e2UymjYpPr3mQw/HwZTlc1O1GerHr2WCX4DppD0Qvc82m9uZ3Kl9lg56 aMHg== 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=sjioqcVovtB/2GCCf7EiFORrXptq/bceaX/G5i7rT0U=; b=JALPBP/3d2FLle905RZFmmO+sn4EQBXwrJB2e5UHCtkWjOWjAoRKxgPfkYICHBH0jP j23a1w1WO6DNgHAwb+NgA4vCAyquX2GnnqbxIiTOrm2V9i/wMNRdsOBogr02TB0viuNv ptbhaDkzwlxJHf/dSR8OQEJG9fb1COP+9h6H/XJ3FwV1cZdUCfhK6HGfV9l7CAOWYj71 mpPHCfZ9GCh5Z8AF0cIuhxLOi9vevwgwKypxEpWvIrphuIi760qzQkBWX0k4OkZ30fIv rtGBstGjHxraxKEEZJ4bentOBAdElZvJy/hNPaa/Ns5GgrM/0vBXuZTDz3i9dHyOpBI2 YNDA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel-dk.20150623.gappssmtp.com header.s=20150623 header.b="vAQqP/EZ"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dt3si11376672ejc.325.2020.07.20.18.31.18; Mon, 20 Jul 2020 18:31:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel-dk.20150623.gappssmtp.com header.s=20150623 header.b="vAQqP/EZ"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725878AbgGUB3V (ORCPT + 99 others); Mon, 20 Jul 2020 21:29:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45002 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726029AbgGUB3U (ORCPT ); Mon, 20 Jul 2020 21:29:20 -0400 Received: from mail-pl1-x642.google.com (mail-pl1-x642.google.com [IPv6:2607:f8b0:4864:20::642]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DB475C0619D7 for ; Mon, 20 Jul 2020 18:29:19 -0700 (PDT) Received: by mail-pl1-x642.google.com with SMTP id d1so9532557plr.8 for ; Mon, 20 Jul 2020 18:29:19 -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=sjioqcVovtB/2GCCf7EiFORrXptq/bceaX/G5i7rT0U=; b=vAQqP/EZ0OO90K0v/2nWrxljG688ypm6ngU3+V2nfTwkI9kAqyJQBq2IqJz15IsGgN FQBvcTfqYEHNloL/UC+GlYtIZonKyfl1GMPHmomJ3Sx2F1ymKVTIEoDRfFvUZ8QPPg8x 3iVQsTVkMjf3GgVyqO6Z78vpvb2uaTJXzniXkA7BNHW+ggOdBYJkv9bsfUJQYmR0a+jK 5xz2kpoKb2+yQYZkWIyua9E7hgM9JwJnZ1QmqGchBVcwhJsqMX3qe4tib2vjbi4AZ6yg Ma0eRl2hzB60otJ/FNczONw4hC465Acjq3GdkguO3n2khtQkHVQtij6VNjkmntxxWOG8 ZhUw== 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=sjioqcVovtB/2GCCf7EiFORrXptq/bceaX/G5i7rT0U=; b=RPsWxPqXAcKAAu/gGhstOqDdxLnm7nd4jypmgmo9GUICeswl5Cwz8OkEHB4KEuFXv0 SyjG9QY2+Z8p0Isc9f5Kq/YUwaVBAZS9XvBjruUUAILA2NjXh6FT2i2OV5WjdyR9N81L 64rZWufFXJQkou78Q4LKy8DUlT7sCLC009BtJkr5ruChfApQNvfb/+yCS2wT1YE6Esby 6K2dYfYCbuMI8TisJFZwAHFpP0ueDkG0+VNKCl6tX3mIxwFMR5jOdyzwIkHQRYiocAKD v/RNaHFmLldmJUV8aFT+Xu0ZBVLSaGTnTRcHh9HH7SbuaiClymWi2ytld8fpFiK3R6+a aWig== X-Gm-Message-State: AOAM532Ul0xs4VxJghFCD3prIPwQ5SffVeNceUjMbccaMBFAoC+eiNTG 3fM7nCSVfMhwAHNRuDg0N/EgBQ== X-Received: by 2002:a17:902:c38a:: with SMTP id g10mr19287307plg.50.1595294959039; Mon, 20 Jul 2020 18:29:19 -0700 (PDT) Received: from [192.168.1.182] ([66.219.217.173]) by smtp.gmail.com with ESMTPSA id b18sm870640pju.10.2020.07.20.18.29.16 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 20 Jul 2020 18:29:18 -0700 (PDT) Subject: Re: [PATCH v3 4/4] io_uring: add support for zone-append To: Matthew Wilcox , Damien Le Moal Cc: Kanchan Joshi , "hch@infradead.org" , Kanchan Joshi , "viro@zeniv.linux.org.uk" , "bcrl@kvack.org" , "asml.silence@gmail.com" , "linux-fsdevel@vger.kernel.org" , Matias Bj??rling , "linux-kernel@vger.kernel.org" , "linux-aio@kvack.org" , "io-uring@vger.kernel.org" , "linux-block@vger.kernel.org" , Selvakumar S , Nitesh Shetty , Javier Gonzalez References: <20200710131054.GB7491@infradead.org> <20200710134824.GK12769@casper.infradead.org> <20200710134932.GA16257@infradead.org> <20200710135119.GL12769@casper.infradead.org> <20200720171416.GY12769@casper.infradead.org> <20200721011509.GB15516@casper.infradead.org> From: Jens Axboe Message-ID: <3ac5bfe7-f086-7531-fbd8-8dde77f13638@kernel.dk> Date: Mon, 20 Jul 2020 19:29:15 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20200721011509.GB15516@casper.infradead.org> 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 7/20/20 7:15 PM, Matthew Wilcox wrote: >> Also, the completed size should be in res in the first cqe to follow >> io_uring current interface, no ?. The second cqe would use the res64 >> field to return the written offset. Wasn't that the plan ? > > two cqes for one sqe seems like a bad idea to me. I have to agree with that, it's counter to everything else. The app will then have to wait for two CQEs when it issues that one "special" SQE, which is really iffy. And we'd have to promise that they are adjacent in the ring. This isn't necessarily a problem right now, but I've been playing with un-serialized completions and this would then become an issue. The io_uring interface is clearly defined as "any sqe will either return an error on submit (if the error is not specific to the sqe contents), or post a completion event". Not two events, one. And imho, zoned device append isn't an interesting enough use case to warrant doing something special. If there was a super strong (and generic) use case for passing back more information in the cqe then maybe it would be considered. But it'd have to be a killer application. If that's not the case, then the use case should work within the constraints of the existing API. -- Jens Axboe