Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp4790937rwe; Tue, 30 Aug 2022 17:36:44 -0700 (PDT) X-Google-Smtp-Source: AA6agR7lcUcI6ZLdfcR1in7DvgRjd6eSBCKq5B2brWU8Gu0H4Q3p1h5yaIexv/dh4+Hb/Gn0STXN X-Received: by 2002:a17:906:9b15:b0:73d:3943:d407 with SMTP id eo21-20020a1709069b1500b0073d3943d407mr17702192ejc.564.1661906204013; Tue, 30 Aug 2022 17:36:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661906204; cv=none; d=google.com; s=arc-20160816; b=Kvmbxybbjl1V2jURdHOfCNP1q5PiI94G9dLW2QKB6uH7IkmqDTAk2aB+UScx9tXkyp vK6wT7U1TPy2swSyB869qxjxQaKGIHV/H9cbl89qI3kL/8ZfdyTqsGCkntH2M/UT8Ic/ pVQN7aaoutQh1JfqW+ixl03F0GQaMnL2D01xE9FHmrHXjG2RiEfwlh2nXfcofGxw97K1 u6SY6fI2dTx8LMBnKLXM8nW7MZO3d11ID1NhDy9I3V+ZAM3DLLyWyMeDSjxErlxhzD+X Vt/Io4zdeoAKdqegUmWflIZhZ58jxLGTCiaNZGJajoJNudtkAf93IsocwRoKl7uDGPaC cCmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=m6BZChVtTK+UGAguzCWejrDqoYzu+Sz7AkPqPhtFZKg=; b=vy0xREr4/cKA+p0sdDUdGc957MiqLYhrviIKO7NM8XLZZ4k9Xr8OQb8E20hdfHKIBM pmLpE3HHVZw4MYzDCD9r/vidX4U4oPrMXM+R61vtxo3jCvnfbUMmr36mAL86LbF1wmah L/6SLGqFSntLFFsPx1yk2ZBFwtCeSAjpedB+diNqWEYGVGeBRrJFj+8bNRdhECpq0v8l +YeguVs1/UxCzVoZ/yR2dKWoQRv+GaQrUkpf9TzQr0ITfkrKsz5XdMIjOG5R4TGI1zYC yFA5Ri8urgY6ksRFgktfkKxr4PmZtt8uP9CCNoYc81QgcBgXdrLaQ7WkHTRs/JBxW5Gr RFIg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ziepe.ca header.s=google header.b=iRMue+in; 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 q15-20020a056402518f00b0044876f04f9fsi5069145edd.170.2022.08.30.17.36.17; Tue, 30 Aug 2022 17:36: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; dkim=pass header.i=@ziepe.ca header.s=google header.b=iRMue+in; 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 S230350AbiHaAcZ (ORCPT + 99 others); Tue, 30 Aug 2022 20:32:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44832 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229959AbiHaAcW (ORCPT ); Tue, 30 Aug 2022 20:32:22 -0400 Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [IPv6:2607:f8b0:4864:20::72f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 67C76A4078 for ; Tue, 30 Aug 2022 17:32:20 -0700 (PDT) Received: by mail-qk1-x72f.google.com with SMTP id s22so7260352qkj.3 for ; Tue, 30 Aug 2022 17:32:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ziepe.ca; s=google; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc; bh=m6BZChVtTK+UGAguzCWejrDqoYzu+Sz7AkPqPhtFZKg=; b=iRMue+inDDgzPoZBlSffki7JldZ/QlafC20b2i0ZBxo0i3xmlsOecDLDz13B79wjHh YEqSPlUr39wUHw15ThhAyQe0of7R+dKWzTdu1xNlS3TiVFOn+NfLXbx8Wkfh29W6llrh GUKFoVha4k8UolCu0Qb7L1iRcHJhU1OO6LNaNHXYWUSzPLrozA8qos7jYpevZTik4ec6 a4iRBoVvaxIubgBwOPBYQwxPA/E38lv8ZMq0sRPiL9s/AadEYdv6JBPMYeTQ3INnnskK o6KK5+uE2BWdRtlw9EQ7pSU5E+DgjqdH4Kvm+Ney032znbwhndoDhNQjxequU4tQ4Voh OP6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc; bh=m6BZChVtTK+UGAguzCWejrDqoYzu+Sz7AkPqPhtFZKg=; b=KkyKvGaYOVu7fdvOjhdUwJnOIGCQsuqBkj8Sdz8JPDOpAgxz0qaNfZxFBW4rTLv1il rI9AYNz5hG+ufv1YqsJClYop+lD0CJveQjJ92caoeS/pr9t719pkYJ5DLMhjsOeM2aB+ JioWl/m6IZtclOUF4Ea5uRma5QkFXrF6Qinln0jwy8Do7rMFPtXEkwDEwUW4pZZWxEtg ON4kwu1NUxr8p/8ddAi+X5Q/TVtN3HKMq5FCX7RPJAPr+/UwzRpfGRUK+1tjeZBzoIoP rih99BwQlaUARgMCSMqRRPwTLPc8tbDPhhNqXLgj9Iz4mA5Nr/hAc8pllzhBkBTuq0Vv syUw== X-Gm-Message-State: ACgBeo1l17jhS50XFADK/Bz8VlMIvrYUBqGWSIh8PXx3UsJSurfXpUBc seLnpJcEFKEEr3ZOpG6HdR/G6Q== X-Received: by 2002:a05:620a:24d4:b0:6bb:760:4b8f with SMTP id m20-20020a05620a24d400b006bb07604b8fmr13906896qkn.83.1661905939523; Tue, 30 Aug 2022 17:32:19 -0700 (PDT) Received: from ziepe.ca (hlfxns017vw-142-162-113-129.dhcp-dynamic.fibreop.ns.bellaliant.net. [142.162.113.129]) by smtp.gmail.com with ESMTPSA id i1-20020a05620a248100b006b5e296452csm9508750qkn.54.2022.08.30.17.32.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Aug 2022 17:32:18 -0700 (PDT) Received: from jgg by wakko with local (Exim 4.95) (envelope-from ) id 1oTBeU-00417Z-2C; Tue, 30 Aug 2022 21:32:18 -0300 Date: Tue, 30 Aug 2022 21:32:18 -0300 From: Jason Gunthorpe To: Kevin Tian Cc: Zhenyu Wang , Zhi Wang , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Eric Farman , Matthew Rosato , Halil Pasic , Vineeth Vijayan , Peter Oberparleiter , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Tony Krowiak , Jason Herne , Harald Freudenberger , Diana Craciun , Alex Williamson , Cornelia Huck , Longfang Liu , Shameer Kolothum , Yishai Hadas , Eric Auger , Kirti Wankhede , Leon Romanovsky , Abhishek Sahu , intel-gvt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org, kvm@vger.kernel.org, Yi Liu Subject: Re: [PATCH 15/15] vfio: Add struct device to vfio_device Message-ID: References: <20220827171037.30297-1-kevin.tian@intel.com> <20220827171037.30297-16-kevin.tian@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220827171037.30297-16-kevin.tian@intel.com> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable 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 On Sun, Aug 28, 2022 at 01:10:37AM +0800, Kevin Tian wrote: > From: Yi Liu > > and replace kref. With it a 'vfio-dev/vfioX' node is created under the > sysfs path of the parent, indicating the device is bound to a vfio > driver, e.g.: > > /sys/devices/pci0000\:6f/0000\:6f\:01.0/vfio-dev/vfio0 > > It is also a preparatory step toward adding cdev for supporting future > device-oriented uAPI. > > Suggested-by: Jason Gunthorpe > Signed-off-by: Yi Liu > Signed-off-by: Kevin Tian > --- > drivers/vfio/vfio_main.c | 70 +++++++++++++++++++++++++++++++++------- > include/linux/vfio.h | 6 ++-- > 2 files changed, 61 insertions(+), 15 deletions(-) > > diff --git a/drivers/vfio/vfio_main.c b/drivers/vfio/vfio_main.c > index 0c5d120aeced..9ad0cbb83f1c 100644 > --- a/drivers/vfio/vfio_main.c > +++ b/drivers/vfio/vfio_main.c > @@ -46,6 +46,8 @@ static struct vfio { > struct mutex group_lock; /* locks group_list */ > struct ida group_ida; > dev_t group_devt; > + struct class *device_class; > + struct ida device_ida; > } vfio; > > struct vfio_iommu_driver { > @@ -524,11 +526,19 @@ EXPORT_SYMBOL_GPL(_vfio_alloc_device); > * > * Only vfio-ccw driver should call this interface. > */ > +static void vfio_device_release(struct device *dev); Since you added this new function in patch 1, it would be nice to place it in a way that avoids this forward reference in this patch > ret = alloc_chrdev_region(&vfio.group_devt, 0, MINORMASK + 1, "vfio"); I think we should change this "vfio" string at this point, it is really the group fd, so "vfio_group" ? It only shows in procfs. Jason