Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 28072 - Nvidia-kernel ebuilds/Linux 2.5/2.6 patches: Makefile.nvidia may be being discontinued
Summary: Nvidia-kernel ebuilds/Linux 2.5/2.6 patches: Makefile.nvidia may be being dis...
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High minor (vote)
Assignee: Martin Schlemmer (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 27412 28061
  Show dependency tree
 
Reported: 2003-09-06 13:31 UTC by Samuel Greenfeld
Modified: 2003-11-02 23:24 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Samuel Greenfeld 2003-09-06 13:31:04 UTC
From a conversation with Christian Zandler (@ www.minion.de) over why the
September 5th Nvidia 1.0-3123 patch for Linux 2.6 wasn't working with
Makefile.nvidia:

"I'll take a look, but the NVIDIA Makefile will likely disappear fairly
soon; the reason for this is that it doesn't interact well with the
Linux 2.6 module mechanisms, when module versioning, ...,  is enabled."


Some sort of mid-term fix is required, since many of the 2.5/2.6 savvy
NVidia-kernel ebuild varients rely on Makefile.nvidia to not break the sandbox.

Reproducible: Always
Steps to Reproduce:
1. Download Nvidia-kernel 1.0-3123.
2. Apply patch from http://www.minion.de/files/NVIDIA_kernel-1.0-3123-2.6.diff .
3. Copy Makefile.kbuild to Makefile; "nvidia.ko" kernel module builds/works
succesfully.
4. Make clean; Copy Makefile.nvidia to Makefile; "NVdriver" kernel module made,
but attempting to insert it results in a response of "invalid module format",
and depmod will not inventory it.
5. Experimental ebuilds that attempt to apply the 2.6/3123 patch given case #3
seem not to work well even unsandboxed (might just be me), and ones that attempt
to do #4 obviously do not work.



At some point in time, NVidia ideally will update their own build scripts for
Linux 2.6, and tihs point may become mute.
Comment 1 Samuel Greenfeld 2003-09-06 13:32:01 UTC
Locally, I am trying out Linux 2.6.0-test4.
Comment 2 Guy 2003-09-06 18:53:42 UTC
See also related:

bug # 27412
bug # 28061

{this note is not for the Gentoo developers, since you're already assigned to all these. I just intend it to help some of the other people interested in this issue.}
Comment 3 Martin Schlemmer (RETIRED) gentoo-dev 2003-09-07 02:13:37 UTC
Ok, so what exactly do you want ?
Comment 4 Martin Schlemmer (RETIRED) gentoo-dev 2003-09-07 03:05:09 UTC
Or let me put it less harsh (if it did sound that way):  Why did you add this
bug ?  Besides the fact that I do not support 3123 with 2.6, The first 4496
did not really have the .nvidia Makefile, but I did patch that.  Meaning, as
long as I am using it with 2.6 (and the kernel guys do not fix kbuild to
not have to write to src dir), or some other capable guy, we will do our own
Makefile.nvidia.
Comment 5 Samuel Greenfeld 2003-09-07 09:55:08 UTC
   This bug is kind of two things:

1. This bug is advisory since the "Official" Makefile.nvidia for the 2.4 to 2.6 patches may be on its way out.  As quoted, this Makefile does not take into account certain Linux 2.6 features.  It may be possible to modify said Makefile to take into account these issues, but it would require someone much more familiar with the new build system than me.

Obviously, this point becomes mute (at least for the newest drivers) when Nvidia releases a newer makefile.  (However, sandbox issues may still exist if it uses the kbuild system.)


2. Issue #1 may be affecting my ability to run the 1.0-3123 Nvidia kernel driver.  I was looking to update the existing 1.0-3123 ebuild (which has some 2.5 support) to work with the 2.6.0-test series, with little luck on my part.  There is a 3123 patch for 2.6; and I have no trouble using Makefile.kbuild and manually building the module for my own use.  Makefile.nvidia just builds an invalid module on my system, and neither makefile works for me when placed in an ebuild.

I am in 100% agreement that you cannot maintain the older ebuilds forever.  However, the number of nvidia bugs in Bugzilla, the fact that many cards like mine seem picky about which driver they use, and the fact that older ebuilds (back to 1.0-2xxx) exist imply some level of support.

The fact the 1.0-3123 ebuild was previously modified to support 2.5.x kind of implied to me that 2.6 support was guaranteed.  If this is not going to be the case, I would like to see the unsupported ebuilds start spitting out errors/warnings when attempting to be built on a newer kernel than designed.
Comment 6 Martin Schlemmer (RETIRED) gentoo-dev 2003-09-07 13:20:32 UTC
> This bug is kind of two things:
> 
> 1. This bug is advisory since the "Official" Makefile.nvidia for the 2.4
> to 2.6 patches may be on its way out.  As quoted, this Makefile does not
> take into account certain Linux 2.6 features.  It may be possible to
> modify said Makefile to take into account these issues, but it would
> require someone much more familiar with the new build system than me.
> 

This is now for 1.0-3123 I assume.

> Obviously, this point becomes mute (at least for the newest drivers)
> when Nvidia releases a newer makefile.  (However, sandbox issues may
> still exist if it uses the kbuild system.)
> 

If it is for the later builds, I will keep a custom one, or patch
whatever they give to fill our needs.  There was however changes
that should fix the kbuild system for 2.6 at least.

> 2. Issue #1 may be affecting my ability to run the 1.0-3123 Nvidia
> kernel driver.  I was looking to update the existing 1.0-3123 ebuild
> (which has some 2.5 support) to work with the 2.6.0-test series, with
> little luck on my part.  There is a 3123 patch for 2.6; and I have no
> trouble using Makefile.kbuild and manually building the module for my
> own use.  Makefile.nvidia just builds an invalid module on my system,
> and neither makefile works for me when placed in an ebuild.
> 
> I am in 100% agreement that you cannot maintain the older ebuilds
> forever.  However, the number of nvidia bugs in Bugzilla, the fact
> that many cards like mine seem picky about which driver they use, and
> the fact that older ebuilds (back to 1.0-2xxx) exist imply some level
> of support.
> 

Ebuild side there will be support.  On the other hand, if the drivers
do not work, then it should be taken up with Nvidia to fix it for
that chipset card ?

> The fact the 1.0-3123 ebuild was previously modified to support 2.5.x
> kind of implied to me that 2.6 support was guaranteed.  If this is not
> going to be the case, I would like to see the unsupported ebuilds start
> spitting out errors/warnings when attempting to be built on a newer
> kernel than designed.
> 

Yes, just not for 2.6.  I will be happy to apply patches though, but
I really do not have the time to hack 2.6 support for 5-6 different
versions.  Get a working patch, and I will apply it.  Otherwise I will
add the error on kernel 2.6.
Comment 7 Martin Schlemmer (RETIRED) gentoo-dev 2003-09-29 09:59:52 UTC
If you have updated patches for older versions, please just add them in
new bugs.
Comment 8 Samuel Greenfeld 2003-11-02 23:24:51 UTC
For the record, I managed to find my problem with the 4xxx driver series;
I suspect others may have it as well.  The answer is hiding in Nvidia's Linux
documentation if you look hard enough.

If someone gets a really really long hang (in my case potentially 10 minutes
long) before XFree86 starts up, their video card BIOS may be reporting that
a TV port, DVI digital output, etc. may be enabled, when it really is not.
 Alternatively, the card might also be providing improper I2C information
needed by Nvidia's display detection routine.

The solution is to add a line like:

   Option "IgnoreDisplayDevices" "DFP, TV"

To the "nvidia" device section covering their (analog) monitor.

This is discussed in the FAQ section of Nvidia's linux driver documentation,
about 28 entries into it under the question "X takes a long time to start
(possibly several minutes).  What can I do?"