Received: by 2002:ab2:3319:0:b0:1ef:7a0f:c32d with SMTP id i25csp696722lqc; Fri, 8 Mar 2024 09:05:27 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCWiOSwi+8Lrt1ugOTTpMMsZPgNInVaSclkInflRaVJvsP2YsNpgNhMMb5YlbdHIKJw2LJR1NUbTXcXvSggGiMQU51yAhzoqkkiMKiQ6Kw== X-Google-Smtp-Source: AGHT+IFAJlbr95JL54Fi4IvuUJRe67uchtghLPO0Byz+BvFaE3xFJCVEz1ezgzAyNwzDz3wque/i X-Received: by 2002:a17:903:2796:b0:1dd:6b5e:c567 with SMTP id jw22-20020a170903279600b001dd6b5ec567mr1885354plb.69.1709917527027; Fri, 08 Mar 2024 09:05:27 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1709917527; cv=pass; d=google.com; s=arc-20160816; b=MTGVoKBuP9PaMGYOkdssygTWiSEADAq/QAmG7PFsiYx1YIKMgQm7QFftYC7dfDFNWt 2alWhf9P2KfT5gBT4WAdwzVC47y4Idp7bIicTXnIOfJHoIG3q1m4dL+2NRd4zMEVmgLx fLoBxGheNHo1b31Xlt2+C0WmxuNUNdj/vjdHg6XaagMURBWYJpc3FUTgDOqHDwqTRabb dvIR8VKfxy9OOWV4nDQT55Bg5TA4NGkNTdrKQriiKQYCco+tYz8Z7m68cHlReeEGh2A+ z73chteHsPo318dIF8HP1BzokN8PvKils3zDng9CwHZB/1zGqE4UjA31kKeIhDTBrOI4 f5xQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:date:message-id:dkim-signature; bh=Pt9oq3K3EFlza+ec+x3ugAytq31JzWCtDXSc9tgPdyg=; fh=Zh8Deg0E03EH4YExZmGQZUtMw2G9KNCuFc4MhaTAn2U=; b=URP2Nw9A5VIoBDtzEZuH2L660d09TQA+j5197et4RWxPlodKMK92uZwyXMdtlzspMp xthbBX92/l3WlSjOvEaJCnR9wC5YGkxSxKFwy/1G3OWVbYv0TZXRFu9SEKgVG9ZqYXsg DJ66/xxhgSmDmsjID9ML2l5fTzesRDcv60I8ePzRxTRGOb5QGdxF2bWgjP1bCfAWWvGW zi2M5UuOyea4YpvFL8+s2K/2g+qiFgpIRlOXwGjTMcs+fWiQWOycJEl++5o+rVuB9A6U DoGZtS+WgfNj0iK3Z+/6tn0W+HKa6APIEEc6Lhbmfh5pCTzXDM8OX8nPxXhFjUnqapez KqTw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel-dk.20230601.gappssmtp.com header.s=20230601 header.b=CifkeWXt; arc=pass (i=1 spf=pass spfdomain=kernel.dk dkim=pass dkdomain=kernel-dk.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-kernel+bounces-97351-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-97351-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id q9-20020a17090311c900b001dc76ff8904si9867800plh.540.2024.03.08.09.05.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 08 Mar 2024 09:05:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-97351-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel-dk.20230601.gappssmtp.com header.s=20230601 header.b=CifkeWXt; arc=pass (i=1 spf=pass spfdomain=kernel.dk dkim=pass dkdomain=kernel-dk.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-kernel+bounces-97351-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-97351-linux.lists.archive=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 1974D286F13 for ; Fri, 8 Mar 2024 17:05:24 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 7EFC4210FD; Fri, 8 Mar 2024 17:05:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel-dk.20230601.gappssmtp.com header.i=@kernel-dk.20230601.gappssmtp.com header.b="CifkeWXt" Received: from mail-io1-f49.google.com (mail-io1-f49.google.com [209.85.166.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 13DAF2031E for ; Fri, 8 Mar 2024 17:05:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.49 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709917510; cv=none; b=uohhZzCmN5yyrYdSXYWj7P+UWe2Cch9lrqsFEkAbnwUyavxRs6P5HcFQlBNroXcoGelA++jpTQaGRmLsy0yuKEd7zD45GSxNIzV+V4WWyCX6I42+sGQan561lGmCcZkTzLlJBxCPS/xKLFbGNS4uuXQJRMoKKGPoX0rxli6xdxs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709917510; c=relaxed/simple; bh=a9B1XKf5v4a+2i7pOUkHcFgBwp8ihsYwhnXpzw194+g=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=OJvE4+OBuys/0LqT1psLXiDlC/2xHtOBDFQwtnOa+ppA8jVNf/uEtPHxoSa68r3j0cPLuicV0iKseBgXMQiUgz7yo4nQBTjaPASN+aOuWffVog28bOwJqhclDO4KB4UNyFrA0FbTC+Y9zwbdGx5Q7E5F+qhs2SiSFJ4wAQTkKm8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.dk; spf=pass smtp.mailfrom=kernel.dk; dkim=pass (2048-bit key) header.d=kernel-dk.20230601.gappssmtp.com header.i=@kernel-dk.20230601.gappssmtp.com header.b=CifkeWXt; arc=none smtp.client-ip=209.85.166.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.dk Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=kernel.dk Received: by mail-io1-f49.google.com with SMTP id ca18e2360f4ac-7c876b9d070so34932939f.0 for ; Fri, 08 Mar 2024 09:05:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20230601.gappssmtp.com; s=20230601; t=1709917507; x=1710522307; darn=vger.kernel.org; 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=Pt9oq3K3EFlza+ec+x3ugAytq31JzWCtDXSc9tgPdyg=; b=CifkeWXt8MULvB0rh2Dw87gIpnVZZqyT7d2k7PkQM70LVlq09Ocbye/u5g+rAPLkgE h+oujU74OO3HbSvlSUUVytFD5TbM1rCBXAluJFbWwPX3HoVa3WdKQJ2z3c7kDz74p9TO wJAPt9W+fdrrMLzUdUFBhRk4IF9wNlxeG1jgoWlCcWv/Np3UsvP+XlrfMOzlxvyXYjRo y3zwKg3Hy53trImEqDc4ZI6GP01ftaZsmPzaHZc49tbVn8hHb6+F0FptA8CshLYgL2tq k2CUelT9GKovtIrloNGQXy1+v71K2GrBSFIIyURb5EWJj5ar3V9pyGd7s46u9qIQxu5o 6w5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709917507; x=1710522307; 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=Pt9oq3K3EFlza+ec+x3ugAytq31JzWCtDXSc9tgPdyg=; b=i7MOHr7kFnwZLOB3IRM+QWITeOp02su6ripoIbl541Ov6pr0qxo7vf4nzUWvN7NE4P OxWc07jg6Y0uAl/t6CGDDKcsTdCGFhSWXrFSs21qiwM/uAj9WH677tpZBc6iV1L153gi kT3TeDA9ltEbyazjEag9G5OnEZXJfNtOyBBOUbZX/EJKkgf9z4c4nsNNRVyUlmf2TwjJ C1pjcJiEt0fSJcaOZ6v8Z7JDMr0sMupjGweE9JLynF/b+TdjKuOCJ577koqmgNqPSGXZ 2z8L/MaeBB9cwJy0X/IYC95/Bax7G59wbNrsT1pUyWQJWXWPhkyEB67PGofYbC+aJdTY QL4w== X-Forwarded-Encrypted: i=1; AJvYcCXBpZztV276GsnZdcZw82D+YOYYdUMzCFplHwll7crCOPyItBmavmRI1pJs1dhkor5+kG6IZS0Ylz0R2yp02mC/UIyTZZ6+HqOwSvF9 X-Gm-Message-State: AOJu0YziQu6dOemL8xB0bReEfdJ7Vku8K0FafLAZEBXzYaR9lu251jJO /CYRCD9rJysWPvVLjwroDV+NyRJokIvXIZpwcs1j5y6Cpv3bLBs5lvHZtcJxqEo= X-Received: by 2002:a05:6e02:1a43:b0:365:224b:e5f7 with SMTP id u3-20020a056e021a4300b00365224be5f7mr2793675ilv.1.1709917507163; Fri, 08 Mar 2024 09:05:07 -0800 (PST) Received: from [192.168.1.116] ([96.43.243.2]) by smtp.gmail.com with ESMTPSA id y8-20020a029508000000b0047477265b90sm4767944jah.24.2024.03.08.09.05.05 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 08 Mar 2024 09:05:06 -0800 (PST) Message-ID: Date: Fri, 8 Mar 2024 10:05:04 -0700 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v5 03/10] fs: Initial atomic write support Content-Language: en-US To: John Garry , kbusch@kernel.org, hch@lst.de, sagi@grimberg.me, jejb@linux.ibm.com, martin.petersen@oracle.com, djwong@kernel.org, viro@zeniv.linux.org.uk, brauner@kernel.org, dchinner@redhat.com, jack@suse.cz Cc: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org, linux-fsdevel@vger.kernel.org, tytso@mit.edu, jbongio@google.com, linux-scsi@vger.kernel.org, ojaswin@linux.ibm.com, linux-aio@kvack.org, linux-btrfs@vger.kernel.org, io-uring@vger.kernel.org, nilay@linux.ibm.com, ritesh.list@gmail.com, Prasad Singamsetty References: <20240226173612.1478858-1-john.g.garry@oracle.com> <20240226173612.1478858-4-john.g.garry@oracle.com> <1f68ab8c-e8c2-4669-a59a-65a645e568a3@kernel.dk> <67aa0476-e449-414c-8953-a5d3d0fe6857@oracle.com> From: Jens Axboe In-Reply-To: <67aa0476-e449-414c-8953-a5d3d0fe6857@oracle.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 3/8/24 9:52 AM, John Garry wrote: > On 08/03/2024 16:34, Jens Axboe wrote: >> On 2/26/24 10:36 AM, John Garry wrote: >>> diff --git a/io_uring/rw.c b/io_uring/rw.c >>> index d5e79d9bdc71..099dda3ff151 100644 >>> --- a/io_uring/rw.c >>> +++ b/io_uring/rw.c >>> @@ -719,7 +719,7 @@ static int io_rw_init_file(struct io_kiocb *req, fmode_t mode) >>> struct kiocb *kiocb = &rw->kiocb; >>> struct io_ring_ctx *ctx = req->ctx; >>> struct file *file = req->file; >>> - int ret; >>> + int ret, rw_type = (mode == FMODE_WRITE) ? WRITE : READ; >>> if (unlikely(!file || !(file->f_mode & mode))) >>> return -EBADF; >>> @@ -728,7 +728,7 @@ static int io_rw_init_file(struct io_kiocb *req, fmode_t mode) >>> req->flags |= io_file_get_flags(file); >>> kiocb->ki_flags = file->f_iocb_flags; >>> - ret = kiocb_set_rw_flags(kiocb, rw->flags); >>> + ret = kiocb_set_rw_flags(kiocb, rw->flags, rw_type); >>> if (unlikely(ret)) >>> return ret; >>> kiocb->ki_flags |= IOCB_ALLOC_CACHE; >> Not sure why you took the lazy way out here rather than just pass it in, >> now there's another branhc in the hot path. NAK. > > Are you saying to change io_rw_init_file() to this: > > io_rw_init_file(struct io_kiocb *req, fmode_t mode, int rw_type) > > And the callers can hardcode rw_type? Yep, basically making the change identical to the aio one. Not sure why you did it differently in those two spots. -- Jens Axboe