From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1FD13EB64DC for ; Fri, 30 Jun 2023 16:06:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B49EC8E0032; Fri, 30 Jun 2023 12:06:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AF9668E000F; Fri, 30 Jun 2023 12:06:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 99A0A8E0032; Fri, 30 Jun 2023 12:06:19 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 83F078E000F for ; Fri, 30 Jun 2023 12:06:19 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 4F18640ECE for ; Fri, 30 Jun 2023 16:06:19 +0000 (UTC) X-FDA: 80959891278.19.39F0940 Received: from mail-io1-f54.google.com (mail-io1-f54.google.com [209.85.166.54]) by imf15.hostedemail.com (Postfix) with ESMTP id ED8B7A009B for ; Fri, 30 Jun 2023 16:05:45 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=kernel-dk.20221208.gappssmtp.com header.s=20221208 header.b=RBzCO5wI; dmarc=none; spf=pass (imf15.hostedemail.com: domain of axboe@kernel.dk designates 209.85.166.54 as permitted sender) smtp.mailfrom=axboe@kernel.dk ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1688141146; a=rsa-sha256; cv=none; b=N93p1nJMaJtQhJ1cD5U8A3JTp1aBtSgin5nyxa9aKe204kpMnddzVV+LBOruBmthbO9bSe Wz16Tz2dIlTk8hziUQHSqazG3IWrZ19WoAud1PFndiF6hh9ryEaEHoZZFc23fj5EK8pVF6 Y3g1Fs29n84QtWKD3JVsqGVJmOoI1G4= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=kernel-dk.20221208.gappssmtp.com header.s=20221208 header.b=RBzCO5wI; dmarc=none; spf=pass (imf15.hostedemail.com: domain of axboe@kernel.dk designates 209.85.166.54 as permitted sender) smtp.mailfrom=axboe@kernel.dk ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1688141146; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ziU7udbSMUbbWD6WdWUse2LB6xrhtUWIqBeRynGCsik=; b=zufjRAEcIWCkP+kytEDuaETN/2hR4raZbUn+UQEKvXiGe4CVITSBAtKHoeznyNqnBAma67 76oYAGBRscHWjkSeljjiPSkZS+YSKDVJOkEktuZCQZUfoOGOG810UCZKXcJZkNJkDL81Gs 4zw/YybgJ5PqXjcWtd5i0kFMERxO1RE= Received: by mail-io1-f54.google.com with SMTP id ca18e2360f4ac-7748ca56133so24676039f.0 for ; Fri, 30 Jun 2023 09:05:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20221208.gappssmtp.com; s=20221208; t=1688141145; x=1690733145; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=ziU7udbSMUbbWD6WdWUse2LB6xrhtUWIqBeRynGCsik=; b=RBzCO5wIRkOWtsfnLQFTCb2IVyVyMOG6Cgjz1OlGsMmo5IYrjycb6t/iILAkV1Unh1 OfEWG7dHahsPBFpwZTR2/L/HqSZBHP52t/SlNzC/9pB8TQSAWwFuu2n/fecl7qMK66uO PBMqINiJds/8FWzdQLWHkgeapFj9eYntFRFLpZ+m9IbvCz7E1O5Pml5B7KSJjUHwBcfg +dfVhkZEDa0jcxTZMYh7+e5/s2T2xD7gXi0TSVUw7jB6DEKrNWvqCUqKDn41L45pvJAk vK/XP6fjpymiAog4QB5FI7tdbGM2NnmvbUivhDMrwnPVlTtl9z+yLkBGSc/vJM2zIF2H x+zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688141145; x=1690733145; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ziU7udbSMUbbWD6WdWUse2LB6xrhtUWIqBeRynGCsik=; b=PXmEF5wrElHBanJFFI57uTRMYhBRQTJvdQvNcHr3U6uViEwV4Cxer7RUXCq/PHz2RD dgRav+1QwL57Csavwpq7IO3o09a2FuuGlEWpzin/QaukNINNNR+ls11rcjYPoJOKrecO iWxU5LETsuSpE9t8c+eTo/JDVAzkvC2Z2N5u+xns/2vZ+b/zADN7iPfOPf+MK20MObbe JanCSD5am/iHDEgZ+RcvrtgpC3CTbdvGXFwCdQZuYFVuaVIZoJyUf+oTXwKgIvfY2L80 LhjmElbXKiyXlkH4evR8RLx8N/YMR9gLSm0Xspyy8ugG+jrmwb/asi3TCEMQZHmIMHhR k+jw== X-Gm-Message-State: AC+VfDzBU2jD/b9wEC8kiCw8e1otngDbUnGowt30WY1mcZNQ/p+grTcL yuwZZJua3V4Z3s7Ia/kJG2O7VbV/DItAMG5xRr4= X-Google-Smtp-Source: ACHHUZ76Ofymlhm34XFb34rKtgMlt+vNzniJrH5TSsGc5ozk3JG98tN4+hKciqwUnIJg1Xgew5uBAA== X-Received: by 2002:a05:6602:4995:b0:783:617c:a8f0 with SMTP id eg21-20020a056602499500b00783617ca8f0mr4285546iob.2.1688141144768; Fri, 30 Jun 2023 09:05:44 -0700 (PDT) Received: from [192.168.1.94] ([96.43.243.2]) by smtp.gmail.com with ESMTPSA id r5-20020a6bd905000000b007836a9ca101sm1874871ioc.22.2023.06.30.09.05.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 30 Jun 2023 09:05:44 -0700 (PDT) Message-ID: Date: Fri, 30 Jun 2023 10:05:42 -0600 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [RFC PATCH 03/11] vfs: Use init_kiocb() to initialise new IOCBs Content-Language: en-US To: David Howells Cc: Al Viro , Christoph Hellwig , Matthew Wilcox , Jan Kara , Jeff Layton , David Hildenbrand , Jason Gunthorpe , Logan Gunthorpe , Hillf Danton , Christian Brauner , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Christoph Hellwig , Christian Brauner References: <36eda01e-502e-b93d-9098-77ed5a16f33c@kernel.dk> <20230630152524.661208-1-dhowells@redhat.com> <20230630152524.661208-4-dhowells@redhat.com> <662384.1688140818@warthog.procyon.org.uk> From: Jens Axboe In-Reply-To: <662384.1688140818@warthog.procyon.org.uk> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: ED8B7A009B X-Stat-Signature: hnyy3rub1wihq4rr4f5egm9ucdpdfb9o X-HE-Tag: 1688141145-460007 X-HE-Meta: U2FsdGVkX19TXT7esvfBi8SXzarV2BasUWUm3HmjbptCUR9ilW7YU/hMx+gGYtojQqAJTF6iG6x09ENBXXdLYEMMCDB3oWIaH36CcXhoDX6ZW9SHHiRd3EGHt8hr4+iCW8S+loBEAM/DgUcUkecVvg8BHQh4GBPYpAEuUXWxVMSK3NY/HX3gJ3uW5IRse2PYaZxPDUDCtzNNmyej6c8xVjdx0BqpDYeIvDRXJK3+CyPIdZDEhRlaVeXWRxmyGPD1DfXe3ERe0UgazIADvdD4ir6JBKUtL6Arr8On7lUW/F5f6thpjoWMDA7tOQ0Zrl5/mIP5wASLrmKzb90hQfx+CdElaSFYndjtA5CJv3ImMMI/VRR/jz29SLnDXfA4O401hWEkojfYuuaBAE9JZ/sk2lS/np9Lfky60S7tNLP7nBcJuo6k/nM8muEy/ea5xIUkvUkiKfjnEsD7e3sgTULV31pY+dobx1JqwHOUNNL/MakUiRHdJb65q+5+ogH91x0UqF9Rvsjf97yWKQgpBRqzf4/EX7ZKBcNfxfzBhCUGavlSPHj3sSOHkb1kaHttwB5vLo6dfyubU7UIFqbApykQZFqrLnJWTaxVCsrhqVBLbx24iGWnFlOSSrkld/akg9dJwgyoCHXZxK07Vil40Lyza6xycHosY36AdZRImSjXtrTTN0mE5hhRK48FVThJHk3VVhOJTU3zBAbpK4yT5XSs7lGisu7RpEm4uv/uUgs5CQIYjIQthk3B8+DgkANCx3wPpcKw6QBR18ZxvhXpg7MvZGBYbe2nae74fYpGV43tvhBv90SEgA/SWmkKz+ftjPUg/kbcGCKGWJNxbV86PYOLubcOt1wnOFEkBnK1m+oL4DwgG2G1vT9NQLLUioKUsU+c7YUKp87cS0+MHzNTmUMiQ9k1cuSGPWwLaA1EfjUPbZ4IOduS72hnFtC8c90iqk1vQUKA0E8p0fXNB6cy0D9 CDkTrGRy BKTvjqkvzJ5tR+HZ1a3EX3HbQtzXahTqU+PBl3LV9M682QK2gRK/DKFtT7mBraKnOw8jfTu76VQeDmth1OHgCZXLGKrsGRod5Aj0ILGNFKIwQ1TZx0swUQqLI8kjn2pKd+1Ec1ZnPgEZgchEuDws/3BydLemj+bkkrNNKyz/APQS/bRFNrfHmaH9sSLu/HgiJyrl1hjcDSVkVOW1txE2Ga71jmo1I7++IzXiuOm9AL9C4dKsYSa4xV0s6J7Cvbvm7giz7PMa9T+uBEY32RPiR5cC9T5+RBRBu1GFj66qe5gxkFTLDry022ZtnXi0iloo4RGuX47JRATagniidms4SBju+7Yogd4XZFX85cGGzQ/Ms518srgMuSZ/PsphxXRVM1DfoWAcUnrFSgBXhBXrj+zDd/4EsmJ2EzPfB7eD5EUcryiHLCQOw6IDqMw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On 6/30/23 10:00?AM, David Howells wrote: > Jens Axboe wrote: > >> One concern here is that we're using IOCB_WRITE here to tell if >> sb_start_write() has been done or not, and hence whether >> kiocb_end_write() needs to be called. You know set it earlier, which >> means if we get a failure if we need to setup async data, then we know >> have IOCB_WRITE set at that point even though we did not call >> sb_start_write(). > > Hmmm... It's set earlier in a number of places anyway - > __cachefiles_write() for example. Not sure how that's relevant, that's a private kiocb and not related to the private one that io_uring uses? > Btw, can you please put some comments on the IOCB_* constants? I have > to guess at what they mean and how they're meant to be used. Or > better still, get Christoph to write Documentation/core-api/iocb.rst > describing the API? ;-) The ones I have added do have comments, mostly, though it's not a lot of commentary for sure... Which ones are confusing and need better comments? Would be happy to do that. I do think the comments belong in there rather than have a separate doc for the kiocb. Though one thing that's confusing is the ki_private ownership. You'd think it belongs to the owner of the kiocb, but nope, it has random uses in iomap and ocfs2 at least. -- Jens Axboe