Date: Thu, 29 Jun 2006 13:31:34 -0700 From: Sam Leffler <sam@errno.com> To: Christian Zander <czander@nvidia.com> Cc: freebsd-hackers@freebsd.org, Alexander Kabaev <kan@kan.dnsalias.net>, Oleksandr Tymoshenko <gonzo@pbxpress.com> Subject: Re: NVIDIA FreeBSD kernel feature requests Message-ID: <44A438A6.40707@errno.com> In-Reply-To: <20060629174100.GW692@wolf.nvidia.com> References: <20060629111231.GA692@wolf.nvidia.com> <44A3FD87.8000006@pbxpress.com> <b1fa29170606290932m419e1dc0tf69a447daef5dde9@mail.gmail.com> <20060629164910.GA4242@kan.dnsalias.net> <20060629174100.GW692@wolf.nvidia.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Christian Zander wrote: > On Thu, Jun 29, 2006 at 12:49:10PM -0400, Alexander Kabaev wrote: >> On Thu, Jun 29, 2006 at 09:32:42AM -0700, Kip Macy wrote: >>> IIRC lack of per instance cdevs also limits Freebsd to one vmware instance. >>> >>> -Kip >>> >>> On 6/29/06, Oleksandr Tymoshenko <gonzo@pbxpress.com> wrote: >>>> Christian Zander wrote: >>>>> Hi all, >>>>> # Task: implement mechanism to allow character drivers to >>>>> maintain per-open instance data (e.g. like the Linux >>>>> kernel's 'struct file *'). >>>>> Motivation: allows per thread NVIDIA notification delivery; also >>>>> reduces CPU overhead for notification delivery >>>>> from the NVIDIA kernel module to the X driver and to >>>>> OpenGL. >>>>> Priority: should translate to improved X/OpenGL performance. >>>>> Status: has not been started. >>>> I've stumbled across this issue a while ago. Actually it can >>>> be partially solved using EVENTHANDLER_REGISTER of dev_clone event with >>>> keeping state structure in si_drv1 or si_drv2 fields. I'm not sure it's >>>> the best solution but it works for me though it smells like hack, and >>>> looks like hack :) Anyway, having legitimate per-open instance data >>>> structures of cdevs is a great assistance in porting linux drivers to >>>> FreeBSD. Just my $0.02. >>>> >> WHY it smells like a hack? It was designed precisely to do that. I am >> using cloned devices in our product with great success. Every client >> opening 'magic' device gets its own exclusive cloned device instance >> and everything works like a charm. I am yet to hear any single coherent >> description of what Linux's approach has over device cloning in FreeBSD. >> I wouldn't mind being educated on this. >> > > Thanks for your feedback, I hadn't been aware of this interface, but > it sounds promising. When was it first introduced? Are there any > known problems with it and certain FreeBSD releases, or is it expected > to work fine in FreeBSD >= 5.3? It came in with devfs so it should be in all 5.x systems. Sam
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44A438A6.40707>