# [SOLVED] modprobe nvidia insert error

## branko

Hi guys,

I have an issue with nvidia proprietary driver (fresh installed system)

```
modprobe nvidia

modprobe: ERROR: could not insert 'nvidia': No such device

```

What I tried:

```
lsmod | grep nvidia

nvidia               8523550  1 

drm                   224913  1 nvidia

i2c_core               16980  3 drm,nvidia,i2c_nforce2

```

```
lspci -k | grep nvidia

Kernel modules: nvidia

```

```
lspci | grep VGA

02:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce 210] (rev a2)

```

My /etc/X11/xorg.conf:

```

Section "Device"

   Identifier "nvidia"

   Driver      "nvidia"

EndSection

```

I was playing around with xorg.conf (BusID and other xorg.conf settings) without success.

Also, I think it is worth to mention:

1. While my system is booting I got this:

```
Waiting for uevents to be processed
```

I interrupted this by CTRL + C

2. When I startx I got this 

```
no screens found(EE)
```

Xorg.0.log:

```
No devices detected.
```

But I think the modprobe nvidia error is my root problem.

Do you have any idea what could go wrong?

Thanks in advance.

----------

## NeddySeagoon

branko,

```
lsmod | grep nvidia

nvidia               8523550  1 
```

shows that the kernel module is loaded, so I'm not sure what your error means.

Please use wgetpaste to put your /var/log/Xorg.0.log on the web then post the URL you get back.

----------

## Buffoon

What version of driver you are installing, latest driver that supports your card is 340.x, I think. There should be a portage message warning you.

----------

## branko

 *NeddySeagoon wrote:*   

> 
> 
> Please use wgetpaste to put your /var/log/Xorg.0.log on the web then post the URL you get back.

 

http://pastebin.com/raw.php?i=GPLnimcg

Thx.

----------

## branko

 *Buffoon wrote:*   

> What version of driver you are installing, latest driver that supports your card is 340.x, I think. There should be a portage message warning you.

 

I didn't see any warning. 

I put in make.conf

VIDEO_CARDS="nvidia" and after that just emerged nvidia-drivers.

Thx.

----------

## NeddySeagoon

branko,

Its as Buffoon said.

```
[  5237.741] (WW) NVIDIA(0): The NVIDIA GeForce 210 GPU installed in this system is

[  5237.741] (WW) NVIDIA(0):     supported through the NVIDIA 340.xx Legacy drivers. Please

[  5237.741] (WW) NVIDIA(0):     visit http://www.nvidia.com/object/unix.html for more

[  5237.741] (WW) NVIDIA(0):     information.  The 352.30 NVIDIA driver will ignore this

[  5237.741] (WW) NVIDIA(0):     GPU.  Continuing probe... 

[  5237.741] (EE) No devices detected.
```

The version of nVidia drivers you have installed no longer supports your card.

You have installed 352.30 but you need version <341

----------

## Roman_Gruber

hi.

```
Knight ~ # grep nvidia-drivers /etc/portage/package.mask

>x11-drivers/nvidia-drivers-340.76

Knight ~ # uname -a

Linux Knight 3.18.16-gentoo_2015_07_08 #3 SMP PREEMPT Wed Jul 8 17:07:05 CEST 2015 x86_64 Intel(R) Core(TM)2 Duo CPU T9500 @ 2.60GHz GenuineIntel GNU/Linux

```

You should use the same gentoo-sources as i did and add the line as provided above to package.mask

Please note:

this is the last gentoo-sources where the binary driver will compile and work. your card is in the same age as mine.

i have troubles to get htis patch working with latest gentoo-sources:

https://forums.gentoo.org/viewtopic-t-1014974-highlight-.html

I would be grateful when someone could tell me how I can manually do every step of emerge.

I want to test things and manually modify source files but I do not know how to restart the compile step of emerge. When i use emerge, the changes are overwritten  :Sad: 

----------

## Buffoon

@tw04l124

```
>x11-drivers/nvidia-drivers-340.76
```

This line is not very good, should there be a driver upgrade for your card (possibly supporting 4.x.x kernels) it will be blocked.

See man ebuild to get your question answered.

----------

## Roman_Gruber

@Buffoon => 100% irrelevant !

Longterm kernel from kernel org is afaik 3.18 and 4.1 series. Both are not supported by the binary blob which my card needs. We need to patch it and else we are using a kernel with security risk in future! Support has ended for 3.10 longterm kernel. (or in next month ..) 

i have a legacy gpu as the topic poster.

my 9800m gts => was renamed to 100 bla bla => renamed to 200 bla bla gpu which the topic poster has (basically teh 200 gpu series were the fully enabled gpu of my 9800m gts) thats it.

And the last supported binary driver is as I wrote. nvidia only changes the last number of the driver... (which my line fully considers)

```
ls --full-time /mnt/sdb2/usr/portage/distfiles/NV*

-rw-rw-r-- 1 portage portage 68351793 2014-05-05 13:46:34.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-337.19.run

-rw-rw-r-- 1 portage portage 68053486 2014-05-30 12:14:33.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-337.25.run

-rw-rw-r-- 1 portage portage 69668217 2014-06-05 00:35:32.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.17.run

-rw-rw-r-- 1 portage portage 69647833 2014-07-03 20:09:40.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.24.run

-rw-rw-r-- 1 portage portage 69753673 2014-08-06 20:08:42.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.32.run

-rw-rw-r-- 1 portage portage 69693129 2014-09-25 21:18:57.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.46.run

-rw-rw-r-- 1 portage portage 69851185 2014-11-03 06:06:42.000000000 +0100 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.58.run

-rw-rw-r-- 1 portage portage 69903305 2014-12-02 23:10:14.000000000 +0100 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.65.run

-rw-rw-r-- 1 portage portage 69955037 2015-01-23 23:56:18.000000000 +0100 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.76.run

-rw-rw-r-- 1 portage portage 74289137 2014-08-04 05:27:36.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-343.13.run

```

as you can see..

-rw-rw-r-- 1 portage portage 69668217 2014-06-05 00:35:32.000000000 +0200 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.17.run

 and last supported binary blob:

-rw-rw-r-- 1 portage portage 69955037 2015-01-23 23:56:18.000000000 +0100 /mnt/sdb2/usr/portage/distfiles/NVIDIA-Linux-x86_64-340.76.run

and nvidia hardly push out any binary updates anymore. tahts why I need a patch! My card and the topic poster card are legacy card. Unsupported from NVIDIA.

Second. I managed to build the binary driver for the newest gentoo-sources now. I need to test it ofc now !

I used quite easy command line interface commands, you should be able to reuse my settings for your card on the latest gentoo-sources.

The genius kernel devs have renamed the function write_cr4 to __write_cr4 which is the cause that the binary driver blob fails to build. 

```
ecompressdir: bzip2 -9 /usr/share/man

>>> Installing (1 of 1) x11-drivers/nvidia-drivers-340.76::gentoo

 * >>> SetUID: [chmod go-r] /opt/bin/nvidia-modprobe ...                                                                                  [ ok ]

Switching to nvidia OpenGL interface... done

 * Removing x11-drivers/nvidia-drivers-340.76 from moduledb.

Switching to nvidia OpenGL interface... done

 * Updating module dependencies for 4.1.6-gentoo_08_22_2015 ...                                                                           [ ok ]

 * Adding module to moduledb.

Switching to nvidia OpenGL interface... done

Switching to nvidia OpenCL interface... done

>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

Knight ~ # ls -l /usr/src/

total 28

-rw-r--r--  1 root root    0 Sep 19  2014 acpi.log

lrwxrwxrwx  1 root root   18 Aug 22 22:56 linux -> linux-4.1.6-gentoo

drwxr-xr-x 20 root root 4096 Apr 23 12:56 linux-3.10.73-gentoo

drwxr-xr-x 20 root root 4096 Jun 29 13:43 linux-3.10.79-gentoo

drwxr-xr-x  4 root root 4096 Jun 29 13:43 linux-3.10.81-gentoo

drwxr-xr-x 20 root root 4096 Aug 17 20:04 linux-3.18.16-gentoo

drwxr-xr-x 25 root root 4096 Aug 17 19:23 linux-3.18.19-gentoo

drwxr-xr-x 25 root root 4096 Aug 22 22:31 linux-3.18.20-gentoo

drwxr-xr-x 25 root root 4096 Aug 22 23:53 linux-4.1.6-gentoo

Knight ~ # cat /etc/portage/patches/x11-drivers/nvidia-drivers-340.76/nvidia-drivers-340-76-kernel-4.0.patch 

--- a/kernel/nv-pat.c.orig     2015-02-20 02:49:40.000000000 +0100

+++ b/kernel/nv-pat.c  2015-02-25 07:56:40.000000000 +0100

@@ -35,8 +35,13 @@

     unsigned long cr0 = read_cr0();

     write_cr0(((cr0 & (0xdfffffff)) | 0x40000000));

     wbinvd();

+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 20, 0)

     *cr4 = read_cr4();

     if (*cr4 & 0x80) write_cr4(*cr4 & ~0x80);

+#else

+    *cr4 = __read_cr4();

+    if (*cr4 & 0x80) __write_cr4(*cr4 & ~0x80);

+#endif

     __flush_tlb();

 }

 

@@ -46,7 +51,11 @@

     wbinvd();

     __flush_tlb();

     write_cr0((cr0 & 0x9fffffff));

+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 20, 0)

     if (cr4 & 0x80) write_cr4(cr4);

+#else

+    if (cr4 & 0x80) __write_cr4(cr4);

+#endif   

 }

 static int nv_determine_pat_mode(void)

```

----------

## NeddySeagoon

tw04l124

```
>=x11-drivers/nvidia-drivers-341
```

would be better.

----------

## Roman_Gruber

 *NeddySeagoon wrote:*   

> tw04l124
> 
> ```
> >=x11-drivers/nvidia-drivers-341
> ```
> ...

 

Agreed. Seems i am a bit tired and nuts ... lol. My bad  :Smile: 

I do not want to defend myself, but the line which i proved for package.mask is as long in my system as nvidia dropped the support for it and thats AFAIK 1-2 years. I doubt we ever get any newer binary blob for this legacy card. 6 years+ old. 

Updated the bug accordingly: https://bugs.gentoo.org/show_bug.cgi?id=558028

I wish they will bumb the ebuild for this particular package because we run in a security risk now with kernels below 3.18  :Sad: 

Though I dislike running again on the untested 4.1.x branch (lots of hidden easter eggs) Hardly any hassles for the time I was on longterm supported 3.10 branch but I was forced to upgrade a few months back to 3.18.x branch.

Anyway the original poster gets a full patch and easy instruction to get the latest gentoo-sources with his legacy gpu.

----------

## NeddySeagoon

tw04l124,

I went to nouveau when support was dropped for my GeForce 9800 GT.

I was also fed up with nVidia drivers always lagging the kernel.

----------

## Roman_Gruber

Well neddy as you have a similar card.

Is the fan control adapted to the temperature and load of the gpu?

Does the GPU provide enough support for e.g. Urbanterror? Similar fps ?

Any drawbacks? I was curious to switch recently but I did not found anywhere current driver results / features which are supported. the wiki or page which i found was kinda not updated for a while for nouveau..

I have a g94 core here...

 *Quote:*   

> The Nvidia GeForce 9800M GTS is a graphics adapter for laptops and is based on the G94 core with 64 shader processors.

 

----------

## NeddySeagoon

tw04l124,

The graphics card is silent - the fan noise in my PC is mostly from the CPU.

I don't game, so I can't compane the nVidia driver and nouveau performances that way.

I have a fairly simple rule for buying a graphics card for a new PC.  Get an nVidia card about £100.

I have expectations that it will last the life of the PC.  This system was put together in April 2009.

Its had a CPU and RAM upgrade and I've added a SSD in that time.

Its really time for a new PC but I want to wait for 4k displays to get to a sensible price.  Probably another year.

----------

## branko

Guys, you are awesome!

Thank you for comprehensive explanations and quick replies.

I was confused with this

 *Quote:*   

> The x11-drivers/nvidia-drivers package contains the latest drivers from nVidia with support for all cards, with several versions available depending on how old the card is. It uses an eclass to detect what kind of card the system is running so that it installs the proper version. 

 

from here:

https://wiki.gentoo.org/wiki/NVidia/nvidia-drivers

I switched to nouveau driver (less painful) and everything works (at least what I need).

----------

## Roman_Gruber

well friend, yes and no

it depends. Usually my notebooks are obsolete before I get to the state of legacy gpus.

my other notebook had a broken hinge. several broken usb ports. the ethernet port was cracked after a few months after purchase so i ditched it after 3-4 years.

this notebook here got 

2x250gb => 2x500gb => 1x128GB SSD + 1TB HDD(which i barely use except for the distfiles lol omfg)

4x keyboards replaced

4x display cable replaced (design error by asus, sigh)

2x complete dust revomal

1x cpu / gpu thermal paste renew

so for hte ordinary user the notebooks are not funcitoning because of whatever reason or technical obsolete and thats why nvidia drops support because they are hardly used in their opinion and they want to sell newer hardware ofc. 

well please test out those open source drivers for your card if you are a gamer and please report back on the comparision with the binary driver...

or lets say if you can play urbanterror, unvanquished with reasonable frame rate. urban terror should give you at 1920x1200 60 fps or more (which my card has).

the open source driver always luck features or efficency in comparision with the closed source drivers.

----------

## Buffoon

 *branko wrote:*   

> I switched to nouveau driver (less painful) and everything works (at least what I need).

 

You may want to install sys-firmware/nvidia-firmware then. It will allow vdpau to work.

----------

