Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp6215869pxu; Wed, 23 Dec 2020 17:41:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJzTTkPH5Xg4Bu4U9L/9wRmptPKQst+auOj8irJY7wqMnZ9L3dz+0ax6x1slixPQ+UMY8qIW X-Received: by 2002:aa7:d2c9:: with SMTP id k9mr26849261edr.74.1608774069428; Wed, 23 Dec 2020 17:41:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608774069; cv=none; d=google.com; s=arc-20160816; b=t2eQECKkqGqyUe3wbx6d4B/fnDdnoRESsEcE1Vb5xvr13ADJnf6JPzDN5DaSt1uncG q2Sf+jauOKhs93p8/pJB2wGkcEQn1rR3Ebsz3bPmL8AN9udZ7ppi1yR8o6YYqu4jYvup 3Y4elTmcWFsoj+58G5mvVUFFEu0whqHS9Gz0MSq7paeYLx0G3Am+A5a8jvOIQ2bf0+Hw wlYvp3175m7iTjApvVMDCMxFx4GZW8Bw0XrhVgQnv/13MVHwSMKhSPrFBPDqQwZTl/Ng wG5iDnKI6OAzhuxIYimMeB3pwAqGB0I9x9Ch7u6KEuKHdcv3ULVnV39VXcmt9kv7xhKx 3DVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=4vnkUc3HmN35Oa7RstxVicTeVMJaPv8+xQ6Dlfwsdr4=; b=sxM/ndtmvMQrKFwbFAWGvD930BdJMFAtzPIaHXmjhJbEUYx4XDhwalB9H+ulJeoNGM 81atIdDbkNLzdY1VIEbLVhKy4b6kNEZ8tTiliP/JQu1bNkGZhmnGmUlmH741qZz3HMQl fzOCMp3+c3NU2TKSDkfTPAsxsWi++P8jaO/yoIWPMh4+jXuO51bp987pQ4ClHfQh0x8E lxNKMKEwMN94ZdIrcXWlPDzdzzo4do86ybYKSje9gBagzgyFmhRJQwPL3ZBfOxoWMCHf Qpt7/EFzWyZXab6sfnjQ2PStBAAoEyygn3PEuUZ/72YPTUxGxqsitPAq6oUioMWXX5sp N6gg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=CH7HcDBC; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bg8si5874167ejb.144.2020.12.23.17.40.46; Wed, 23 Dec 2020 17:41:09 -0800 (PST) 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=@gmail.com header.s=20161025 header.b=CH7HcDBC; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728292AbgLXBjV (ORCPT + 99 others); Wed, 23 Dec 2020 20:39:21 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52668 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727057AbgLXBjU (ORCPT ); Wed, 23 Dec 2020 20:39:20 -0500 Received: from mail-qt1-x832.google.com (mail-qt1-x832.google.com [IPv6:2607:f8b0:4864:20::832]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 99B6EC061794; Wed, 23 Dec 2020 17:38:40 -0800 (PST) Received: by mail-qt1-x832.google.com with SMTP id c14so722516qtn.0; Wed, 23 Dec 2020 17:38:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=4vnkUc3HmN35Oa7RstxVicTeVMJaPv8+xQ6Dlfwsdr4=; b=CH7HcDBCXBsxGzoovkps8HGa6Bq9BCVjlCXDh7jg1ThLsHI22KCa7Zt+kiFIHfBPD8 MOEuBGp4jFAb2OfGHtJaw2tNZKevBUP0LRM4FPQHq/MuRp0lpZObpdsBnjxj1YY+3cR9 1sUw6jJOjUIZQA7NH1MMrj/ApO6HRb6ZHpfRgjPdTDOCLO/7+9vDATvJFE7PCQMNAL7n 4NSA1JkYyd5NJ5jQC4cc1TRX/ofcG7r2z9d//knB5DH5gzqTtJf+EldpVQw+oSyb79Dh iz23GdD8v/8lBJvAxkCLiu22idQxcq7W/cxvylTgc2HGExjHke1bNXb26ysxmehLT5+C tqIw== 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:content-transfer-encoding; bh=4vnkUc3HmN35Oa7RstxVicTeVMJaPv8+xQ6Dlfwsdr4=; b=W8EHX45L3RjAZP/XSLY6nTGQ7lRQQAdimgnT+qC+Sqfi9JZfVu5OhD9OTegCm5Uh9+ fhv5aT+XaFUEfmMV1r79Odr2VJqIgABdV3vnABLyB7XlKyLGMwH3VzaTClQw3FCKlErX WojEytcKxnzGqumB4m9EGQklMPWUTOvInmPrRRxmX4PNdcTVpf8Hj2ZSfB/bRh/AOyfm 9pPewXz1vS1+GZx/hrxDag+Zd63sl82DWduC29XC5Pew8Fgu2nwGqafb4DX8RILL6rP8 t/ywyWix9v+Cjvt6NwjUyDa53El1KxeKmOGqByv1iuYJRDgVecqbzC09snfKoAUjxIGC RWjQ== X-Gm-Message-State: AOAM5329xHruJG5uI8qUzVcbxwOwCILZE9lVhfwW9/KYORfROweiTZ62 znXRbg9g1S+aseRjEz1adpYsE+ox73NXF9JQFsk= X-Received: by 2002:ac8:4c99:: with SMTP id j25mr28070469qtv.390.1608773919781; Wed, 23 Dec 2020 17:38:39 -0800 (PST) MIME-Version: 1.0 References: <1608694025-121050-1-git-send-email-yejune.deng@gmail.com> <20201223103623.mxjsmitdmqsx6ftd@steredhat> <3c013151-37de-1ef0-e989-9f871665d650@gmail.com> In-Reply-To: <3c013151-37de-1ef0-e989-9f871665d650@gmail.com> From: Yejune Deng Date: Thu, 24 Dec 2020 09:38:26 +0800 Message-ID: Subject: Re: [PATCH] io_uring: remove io_remove_personalities() To: Pavel Begunkov , sgarzare@redhat.com Cc: viro@zeniv.linux.org.uk, axboe@kernel.dk, linux-fsdevel@vger.kernel.org, io-uring@vger.kernel.org, Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org OK=EF=BC=8CI will adopt it and resubmit. On Wed, Dec 23, 2020 at 8:45 PM Pavel Begunkov wro= te: > > On 23/12/2020 10:36, Stefano Garzarella wrote: > > On Wed, Dec 23, 2020 at 11:27:05AM +0800, Yejune Deng wrote: > >> The function io_remove_personalities() is very similar to > >> io_unregister_personality(),but the latter has a more reasonable > >> return value. > >> > >> Signed-off-by: Yejune Deng > >> --- > >> fs/io_uring.c | 25 ++++++------------------- > >> 1 file changed, 6 insertions(+), 19 deletions(-) > > > > The patch LGTM, maybe as an alternative you can leave io_remove_persona= lity() with the interface needed by idr_for_each() and implement io_unregis= ter_personality() calling io_remove_personality() with the right parameters= . > > Right, don't replace sane types with void * just because. > Leave well-typed io_unregister_personality() and call it from > io_remove_personalities(). > > > Also > * idr_for_each() - Iterate through all stored pointers. > ... > * If @fn returns anything other than %0, the iteration stops and that > * value is returned from this function. > > For io_remove_personality() iod=3D=3DNULL should not happen because > it's under for_each and synchronised, but leave the return value be > > io_remove_personality(void *, ...) > { > struct io_ring_ctx *ctx =3D data; > > io_unregister_personality(ctx, id); > return 0; > } > > -- > Pavel Begunkov