2005-03-27 18:04:37

by Nick Orlov

[permalink] [raw]
Subject: 2.6.12-rc1-mm3: class_simple API

I'm really sorry for bringing such a "flame-creative" topic to the list,
but Greg asked me to do so after a short discussion in private.

Problem is that the latest bk-driver-core patch included in the 2.6.12-rc1-mm3
removes class_simple API without providing EXPORT_SYMBOL'ed (as opposed to
EXPORT_SYMBOL_GPL) alternative.

As the result I don't see a way how out-of-the-kernel non-GPL drivers
(nvidia in my case) could be fixed.

So, basically the questions are:

- Whether the changes like the one above are "the right thing to do" ?
- What's the best way to deal with this particular issue ?


P.S. Please CC me, I'm not subscribed to the list.

--
With best wishes,
Nick Orlov.


2005-03-27 18:17:58

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.12-rc1-mm3: class_simple API

On Sun, Mar 27, 2005 at 01:04:31PM -0500, Nick Orlov wrote:
>
> - Whether the changes like the one above are "the right thing to do" ?

Yes.

> - What's the best way to deal with this particular issue ?

Change the code to not use these functions. Look at the vmware code for
examples of how to do this.

That was simple :)

thanks,

greg k-h

2005-03-27 18:39:34

by Nick Orlov

[permalink] [raw]
Subject: Re: 2.6.12-rc1-mm3: class_simple API

On Sun, Mar 27, 2005 at 10:17:17AM -0800, Greg KH wrote:
> On Sun, Mar 27, 2005 at 01:04:31PM -0500, Nick Orlov wrote:
> >
> > - Whether the changes like the one above are "the right thing to do" ?
>
> Yes.

Questionable.

>
> > - What's the best way to deal with this particular issue ?
>
> Change the code to not use these functions.

In other words "forget about nvidia <-> udev interaction" ?
I do not think it is acceptable.

> Look at the vmware code for examples of how to do this.

Is there a place where I can download the code example without
registering / paying license fee ?

P.S. Please CC me, I'm not subscribed to the list.

--
With best wishes,
Nick Orlov.

2005-03-28 07:45:46

by Jim Crilly

[permalink] [raw]
Subject: Re: 2.6.12-rc1-mm3: class_simple API

On 03/27/05 01:39:27PM -0500, Nick Orlov wrote:
> On Sun, Mar 27, 2005 at 10:17:17AM -0800, Greg KH wrote:
> > On Sun, Mar 27, 2005 at 01:04:31PM -0500, Nick Orlov wrote:
> > >
> > > - Whether the changes like the one above are "the right thing to do" ?
> >
> > Yes.
>
> Questionable.
>
> >
> > > - What's the best way to deal with this particular issue ?
> >
> > Change the code to not use these functions.
>
> In other words "forget about nvidia <-> udev interaction" ?
> I do not think it is acceptable.
>
> > Look at the vmware code for examples of how to do this.
>
> Is there a place where I can download the code example without
> registering / paying license fee ?

http://ftp.cvut.cz/vmware/

The file vmware-any-any-update*.tar.gz contains the source to all of the
VMWare kernel modules. IIRC I found the URL in the VMWare newsgroups and
they're maintained unofficially by a VMWare employee.

>
> P.S. Please CC me, I'm not subscribed to the list.
>
> --
> With best wishes,
> Nick Orlov.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/

2005-03-31 03:19:54

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.12-rc1-mm3: class_simple API

On Sun, 27 Mar 2005 13:04:31 EST, Nick Orlov said:

> Problem is that the latest bk-driver-core patch included in the 2.6.12-rc1-mm3
> removes class_simple API without providing EXPORT_SYMBOL'ed (as opposed to
> EXPORT_SYMBOL_GPL) alternative.
>
> As the result I don't see a way how out-of-the-kernel non-GPL drivers
> (nvidia in my case) could be fixed.

Umm.. try running the latest drivers?

[~]2 uname -a
Linux turing-police.cc.vt.edu 2.6.12-rc1-mm3 #1 PREEMPT Sat Mar 26 22:07:50 EST 2005 i686 i686 i386 GNU/Linux
[~]2 lsmod | grep nvidia
nvidia 3912636 14
agpgart 25672 2 nvidia,intel_agp
[~]2 grep -i nvidia /var/log/kernmsg
Mar 30 21:58:19 turing-police kernel: [4294721.402000] nvidia: module license 'NVIDIA' taints kernel.
Mar 30 21:58:19 turing-police kernel: [4294721.434000] NVRM: loading NVIDIA Linux x86 NVIDIA Kernel Module 1.0-7167 Fri Feb 25 09:08:22 PST 2005

(All usual disclaimers about binary modules apply. If 7167 doesn't work for
you, bug NVidia (Zander is usually quite helpful with providing patches) and/or
check the NVidia/Linux message boards (there's a link on the NVidia driver
download page).


Attachments:
(No filename) (226.00 B)

2005-03-31 04:20:31

by Nick Orlov

[permalink] [raw]
Subject: Re: 2.6.12-rc1-mm3: class_simple API

On Wed, Mar 30, 2005 at 10:19:42PM -0500, [email protected] wrote:
> On Sun, 27 Mar 2005 13:04:31 EST, Nick Orlov said:
>
> > Problem is that the latest bk-driver-core patch included in the 2.6.12-rc1-mm3
> > removes class_simple API without providing EXPORT_SYMBOL'ed (as opposed to
> > EXPORT_SYMBOL_GPL) alternative.
> >
> > As the result I don't see a way how out-of-the-kernel non-GPL drivers
> > (nvidia in my case) could be fixed.
>
> Umm.. try running the latest drivers?
>
> [~]2 uname -a
> Linux turing-police.cc.vt.edu 2.6.12-rc1-mm3 #1 PREEMPT Sat Mar 26 22:07:50 EST 2005 i686 i686 i386 GNU/Linux
> [~]2 lsmod | grep nvidia
> nvidia 3912636 14
> agpgart 25672 2 nvidia,intel_agp
> [~]2 grep -i nvidia /var/log/kernmsg
> Mar 30 21:58:19 turing-police kernel: [4294721.402000] nvidia: module license 'NVIDIA' taints kernel.
> Mar 30 21:58:19 turing-police kernel: [4294721.434000] NVRM: loading NVIDIA Linux x86 NVIDIA Kernel Module 1.0-7167 Fri Feb 25 09:08:22 PST 2005
>

I _am_ using the latest NVIDIA driver:

nick@nikolas:~$ dmesg | grep NVIDIA
nvidia: module license 'NVIDIA' taints kernel.
NVRM: loading NVIDIA Linux x86 NVIDIA Kernel Module 1.0-7167 Fri Feb
25 09:08:22 PST 2005

nick@nikolas:~$ ll /lib/modules/`uname -r`/nvidia
total 4315
-rw-r--r-- 1 root root 4399395 2005-03-27 12:29 nvidia.ko

If you are not relying on udev being able to create nvidia device nodes
you are not affected.

--
With best wishes,
Nick Orlov.