[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y2kAcCu4z2LUMN7u@nvidia.com>
Date: Mon, 7 Nov 2022 08:56:16 -0400
From: Jason Gunthorpe <jgg@...dia.com>
To: Oded Gabbay <ogabbay@...nel.org>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
David Airlie <airlied@...il.com>,
Daniel Vetter <daniel@...ll.ch>, Arnd Bergmann <arnd@...db.de>,
linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org,
John Hubbard <jhubbard@...dia.com>,
Alex Deucher <alexander.deucher@....com>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>,
Thomas Zimmermann <tzimmermann@...e.de>,
Yuji Ishikawa <yuji2.ishikawa@...hiba.co.jp>,
Jiho Chu <jiho.chu@...sung.com>,
Daniel Stone <daniel@...ishbar.org>,
Tvrtko Ursulin <tvrtko.ursulin@...ux.intel.com>,
Jeffrey Hugo <quic_jhugo@...cinc.com>,
Christoph Hellwig <hch@...radead.org>,
Kevin Hilman <khilman@...libre.com>,
Jagan Teki <jagan@...rulasolutions.com>,
Jacek Lawrynowicz <jacek.lawrynowicz@...ux.intel.com>,
Maciej Kwapulinski <maciej.kwapulinski@...ux.intel.com>,
stanislaw.gruszka@...el.com
Subject: Re: [RFC PATCH v2 1/3] drivers/accel: define kconfig and register a
new major
On Thu, Nov 03, 2022 at 10:39:36PM +0200, Oded Gabbay wrote:
> On Thu, Nov 3, 2022 at 3:31 PM Oded Gabbay <ogabbay@...nel.org> wrote:
> >
> > On Thu, Nov 3, 2022 at 2:31 AM Greg Kroah-Hartman
> > <gregkh@...uxfoundation.org> wrote:
> > >
> > > On Wed, Nov 02, 2022 at 10:34:03PM +0200, Oded Gabbay wrote:
> > > > --- /dev/null
> > > > +++ b/drivers/accel/Kconfig
> > > > @@ -0,0 +1,24 @@
> > > > +# SPDX-License-Identifier: GPL-2.0-only
> > > > +#
> > > > +# Compute Acceleration device configuration
> > > > +#
> > > > +# This framework provides support for compute acceleration devices, such
> > > > +# as, but not limited to, Machine-Learning and Deep-Learning acceleration
> > > > +# devices
> > > > +#
> > > > +menuconfig ACCEL
> > > > + tristate "Compute Acceleration Framework"
> > > > + depends on DRM
> > > > + help
> > > > + Framework for device drivers of compute acceleration devices, such
> > > > + as, but not limited to, Machine-Learning and Deep-Learning
> > > > + acceleration devices.
> > > > + If you say Y here, you need to select the module that's right for
> > > > + your acceleration device from the list below.
> > > > + This framework is integrated with the DRM subsystem as compute
> > > > + accelerators and GPUs share a lot in common and can use almost the
> > > > + same infrastructure code.
> > > > + Having said that, acceleration devices will have a different
> > > > + major number than GPUs, and will be exposed to user-space using
> > > > + different device files, called accel/accel* (in /dev, sysfs
> > > > + and debugfs)
> > >
> > > Module name if "M" is chosen?
> > Will add
> So, unfortunately, the path of doing accel as a kernel module won't
> work cleanly (Thanks stanislaw for pointing this out to me).
> The reason is the circular dependency between drm and accel. drm calls
> accel exported symbols during init and when devices are registering
> (all the minor handling), and accel calls drm exported symbols because
> I don't want to duplicate the entire drm core code.
I really don't think this is the right way to integrate with
DRM. Accel should be a layer over top of DRM, not have these wakky
co-dependencies.
The fact you are running into stuff like this already smells really
bad.
Jason
Powered by blists - more mailing lists