Received: by 2002:a05:6359:c8b:b0:c7:702f:21d4 with SMTP id go11csp465989rwb; Mon, 26 Sep 2022 01:06:44 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6ghCuD+S7Sm6sFPY+Y4yxrS3iQe29SJGReldbB+2F39nbDQb1+JhOElVTnxebNK17wSsS9 X-Received: by 2002:a17:902:d50e:b0:176:e777:59c4 with SMTP id b14-20020a170902d50e00b00176e77759c4mr20732764plg.82.1664179604235; Mon, 26 Sep 2022 01:06:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1664179604; cv=none; d=google.com; s=arc-20160816; b=eNfAbsLUd8h2JZ9qhOMO/JIYIVSQg3WFvZMemFdCWx0op0pJP23AVw9SKXhcab7MY4 GzLFKMMXHxuKaI/Zd1R6dkHv8Hl2v+12NSyhVOWcKAHUWjFvjsLmInHJoYd+agqwocPR cI/07gv9urDW2JoDYQFZzZj1PvC06nB6B+85/doAD9XbaH1H8sx72SsZEs2H8q2/Q2Ml 874J7Hw6ndu6pAIeYquxwqo9C1T3ODOL5JjPVHadHozVNgUv/2NrJoR8raWYEEqQD7xW 1uJocRLG2CvHPQSCjZtvCcvI9z5z7M5v+AKIJQeiivLdX7TsA9SvUtv170R6GwAQq9Tj rT7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:abuse-reports-to:tuid:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from; bh=wz1sTlrpNOeoTS1OnIg/5QAga0/gMgDRlSIIHgyV9dw=; b=Gia7AhR20rjcqB+fSopoB5sib2KMjrfNnX2EPoY2iZ0KpmiTcK6U4vK5Tmc5+me3t0 y69Bi089RNOQOqF3Xo39GQcg7zGk0RyeJ2uE+oleS8xQH+sQIH9JhnXglRgnbCbwAbvJ zkly/nfoNtnIF54R5SM58MOcShr0NBpGEH+GJp43QSvGicoXDl023q7crZioAZI5lUwP Q6ctDG/Bl+SLgZVCSZAtMOhSDE2uBsHIJhwgBlvRghXwGXSYds3PpOZqIcDTxuX3asg5 lvjSvEK48cVDl3wOwtxGYbcppFsb1H5WnRcoqbIRLeDNrJdn0ebX9TC4QITJwVZS1eVz uapg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u38-20020a632366000000b0043aeaf8db0esi18731572pgm.55.2022.09.26.01.06.33; Mon, 26 Sep 2022 01:06:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234245AbiIZH6x (ORCPT + 99 others); Mon, 26 Sep 2022 03:58:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39234 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233940AbiIZH6X (ORCPT ); Mon, 26 Sep 2022 03:58:23 -0400 Received: from unicom145.biz-email.net (unicom145.biz-email.net [210.51.26.145]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5A55EC4C; Mon, 26 Sep 2022 00:54:24 -0700 (PDT) Received: from ([60.208.111.195]) by unicom145.biz-email.net ((D)) with ASMTP (SSL) id UGC00119; Mon, 26 Sep 2022 15:54:19 +0800 Received: from localhost.localdomain (10.200.104.82) by jtjnmail201604.home.langchao.com (10.100.2.4) with Microsoft SMTP Server id 15.1.2507.12; Mon, 26 Sep 2022 15:54:18 +0800 From: Deming Wang To: CC: , , Deming Wang Subject: [PATCH] vfio: Use filp instead of fd Date: Mon, 26 Sep 2022 02:54:07 -0400 Message-ID: <20220926065407.2389-1-wangdeming@inspur.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=US-ASCII X-Originating-IP: [10.200.104.82] tUid: 2022926155419394452db38c06c56392253e0135b5d34 X-Abuse-Reports-To: service@corp-email.com Abuse-Reports-To: service@corp-email.com X-Complaints-To: service@corp-email.com X-Report-Abuse-To: service@corp-email.com X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The function of kvm_vfio_group_set_spapr_tce and kvm_vfio_group_del use fd indirectly.But,it only be used for fd.file. So,we can directly use the struct of file instead. Signed-off-by: Deming Wang --- virt/kvm/vfio.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/virt/kvm/vfio.c b/virt/kvm/vfio.c index ce1b01d02c51..3be84d82f905 100644 --- a/virt/kvm/vfio.c +++ b/virt/kvm/vfio.c @@ -178,11 +178,11 @@ static int kvm_vfio_group_del(struct kvm_device *dev, unsigned int fd) { struct kvm_vfio *kv = dev->private; struct kvm_vfio_group *kvg; - struct fd f; + struct file *filp; int ret; - f = fdget(fd); - if (!f.file) + filp = fget(fd); + if (!filp) return -EBADF; ret = -ENOENT; @@ -190,7 +190,7 @@ static int kvm_vfio_group_del(struct kvm_device *dev, unsigned int fd) mutex_lock(&kv->lock); list_for_each_entry(kvg, &kv->group_list, node) { - if (kvg->file != f.file) + if (kvg->file != filp) continue; list_del(&kvg->node); @@ -207,7 +207,7 @@ static int kvm_vfio_group_del(struct kvm_device *dev, unsigned int fd) mutex_unlock(&kv->lock); - fdput(f); + fput(filp); kvm_vfio_update_coherency(dev); @@ -221,14 +221,14 @@ static int kvm_vfio_group_set_spapr_tce(struct kvm_device *dev, struct kvm_vfio_spapr_tce param; struct kvm_vfio *kv = dev->private; struct kvm_vfio_group *kvg; - struct fd f; + struct file *filp; int ret; if (copy_from_user(¶m, arg, sizeof(struct kvm_vfio_spapr_tce))) return -EFAULT; - f = fdget(param.groupfd); - if (!f.file) + filp = fget(param.groupfd); + if (!filp) return -EBADF; ret = -ENOENT; @@ -238,13 +238,13 @@ static int kvm_vfio_group_set_spapr_tce(struct kvm_device *dev, list_for_each_entry(kvg, &kv->group_list, node) { struct iommu_group *grp; - if (kvg->file != f.file) + if (kvg->file != filp) continue; grp = kvm_vfio_file_iommu_group(kvg->file); if (WARN_ON_ONCE(!grp)) { ret = -EIO; - goto err_fdput; + goto err_fput; } ret = kvm_spapr_tce_attach_iommu_group(dev->kvm, param.tablefd, @@ -252,9 +252,9 @@ static int kvm_vfio_group_set_spapr_tce(struct kvm_device *dev, break; } -err_fdput: +err_fput: mutex_unlock(&kv->lock); - fdput(f); + fput(filp); return ret; } #endif -- 2.27.0