Skip to content


Overclocking the GeForce 9650M GT

NB: this guide is intended rather for people completely new to overclocking than to people used to it. We used the stock cooling and didn’t try to achieve the maximum possible speed, we just achieved a safe enough gain of 10%.

After finally fixing my problems with the GeForce 9650M GT in my Asus M50Vn laptop, I thought maybe I could improve its performance even more than by just updating the drivers. Before going further, 2 things I have to let you know:

  • The usual disclaimer: overclocking is risky, you do it at your own risks. If it destroys your computer or burns down your house, you knew it could happen.
  • Overclocking this particular card, in my Asus M50Vn laptop, resulted in a strange, unexpected side effect: it screwed up the default clocking of my card: when the computer boots, the shaders are underclocked by 20% (1100MHz instead of 1375). It’s not really a big deal, but it’s still a high-probability risk that you ought to know.

That being said, let’s move on to the OCing itself.

Preliminary research

Before touching the clock, I thought I’d try to find some information about it. I failed to find much, actually. I didn’t find the specified maximum temperature, even on the quite useless specfication page on NVIDIA.com or on Notebookcheck (NB: the latest isn’t really accurate about the card details). Yet I found some forum posts discussing the acceptable temperature range. It seemed consensual that anything under 70°C is totally safe, but this isn’t really helpful since at stock clock my GPU already reaches 65-67°C in a room at 17°C. Someone mentioned an arbitrary limit of 80°C, more or less confirmed on another BBS. Since this is already 15°C higher than my current temp, I thought it would be more than enough as an OCing limit. I kept browsing around, and globally the ideas are, as long as you raise the frequency progressively:

  • Artifacts (and/or performance drop) should appear long before the cards gets damaged
  • Normally the card automatically shuts down/crashes the system before and instead of getting damaged
  • As long as you don’t touch the voltage the above statements should really apply
  • As long as the GPU doesn’t overheat too much it shouldn’t age prematurely

So you get the idea: nothing’s 100% sure. But I thought that was safe enough for me, so I went ahead.
Final note: a component’s ability to get overclocked is due to product binning. That is, the manufacturer makes sure that the component runs at least at the specified performance. So it may run just barely at this level, or up to quite much higher. This means there is a high variability between supposedly identical (same part number) components. So, if you happen to have the very same GPU as me, it doesn’t mean that you’ll be able to reach the same frequencies and you should progressively find your own frequencies, NOT copy/paste mine!

Getting the software

Update your drivers if needed. For this you can either go to NVIDIA’s driver downloads or pick my mirrored 195.62_notebook_winxp_32bit_international_whql.exe, which work fine for my GF 9650M GT on Windows XP 32 bits (NB: this is for mobile GPUs, ie for notebooks).
Then, although there are other overclocking tools available, I chose NVIDIA’s: NVIDIA System Tools with ESA Support 6.05 (mirror). For a more recent version check the link in the “Additional Software and Drivers” section of the previously mentioned driver download page.
Install all this, restart if needed.
Finally, get GPU-Z, which will be useful to check frequencies and temperature.

Finding the good overclock

Start by finding your full load temperature. For this you can either use a GPU burner like FurMark (mirror for version 1.7) or simply run a demanding game for like 5 minutes (purists will say you need to run it much longer, but 5 minutes already give you a good idea) and check the temperature in GPU-Z.
Once you’re done, open NVIDIA’s control panel (you can reach it from the global control panel or from the NVIDIA task bar icon). In the menu, go to Performance → Device settings. That’s where you can change the core, memory and shader clock frequencies. I chose to remain on the “very safe” side, so I first used the “find optimal” function. This gave me the following frequencies:

  • core clock: 696 MHz (stock: 550 – diff: +26.6%)
  • memory clock: 460 MHz (stock: 400 – diff: +15%)
  • shader clock: 1640 MHz (stock: 1375 – diff: +19.3%)

Although those figures didn’t seem that big to me, after some research it turned out to be a rather large overclocking capacity. Do not apply those settings immediately. Instead, we’re going to increase them progressively while quickly checking the stability. I chose to run Crysis Warhead as a test, because it’s very demanding so I don’t reach a vsync or a CPU limitation, and because it has a feature to display the FPS count (using the developer mode as explained on Wiki4Games). Basically, I stayed at the same safe place in Crysis Warhead and switched back and forth to Windows (using CTRL+TAB or CTRL+ALT+DEL): I increased one of the clock at a time, by roughly 3% every time (ie, increments of something like 20 MHz for the core, 10 for the memory and 30 for the shaders; it takes some time because every time the overclocking tool tests the new speed before applying it), checked with GPU-Z that the frequency was actually changed, checked the result in Warhead (FPS gain, artifacts), then repeated.
An overclocked GeForce 9650M GT in GPU-Z
My final overclock was 630/450/1550 (validation), but I could have gone further: I just decided that the 10-12% performance gain was good enough not to take higher risks. But it’s up to you to decide how far you want to go. Going farther than the auto-overclock seems a bit unwise, though. Once you’ve chosen your frequencies, run a demanding game or Furmark for 5 minutes and check the temperature in GPU-Z (compare to what you reached before the overclock: I used to be around 67°C at stock speed, i reach 69°C with my OCed speed).

Turning on and off the overclock

When you exit the NVIDIA control panel, it will ask you whether you want to load the overclock at start-up. It’s best to choose no, because if for some reason it makes the PC crash, you might be in trouble to disable it. Instead you should save your overclock into a profile (the “Save to profile” button becomes available once you apply the overclock), then go to Performance → Profile policies and configure the profile to load either when you run a specific game or a dummy program. I chose the second option because with it I don’t have to add rules for every games I use, plus I can decide every time whether or not I want to overclock. As a dummy program I chose MTTFWin, a Windows tweaking freeware that I don’t use anymore. You need to make 2 rules: load the overclocked profile when MTTFWin is loaded, and unload the overclocked profile when MTTFWin is stopped.
NVIDIA control panel - Profile policies
Apply, and you’re done. When you launch your chosen application (tip: place it in the Quick Launch bar!), the GPU will overclock (check in GPU-Z if you want).

Posted in Asus M50Vn, hardware, nVidia.


Rel=nofollow in MyBB’s links

Yesterday I had to do some cleaning on the low-traffic Wiki4Games BBS, running MyBB. Basically the spammers registered accounts which never posted (so I barely noticed those account creations) and had a few (usually 1 or 2) spam links in their signature. In case you start thinking a spam signature is harmless as long as you don’t post with it, let me remind you that the signature appears on the user’s profile. So it gets seen by you-know-who-who-browses-everywhere. I found a MyBB mod to nofollow user websites, but no equivalent for signatures. I don’t think it’s easily feasible to nofollow specifically the links in the signature, so I went for the parser, i.e. I tried to nofollow all links posted within a [url] tag (NB: this also works on URLs posted without the url tag, as long as they’re identified as url by the parser). No further ado, here it is:

  • Open inc/class_parser.php
  • In function mycode_parse_url, find:
    $link = "<a href=\"$fullurl\" target=\"_blank\">$name</a>";
  • Replace it with:
    $link = "<a href=\"$fullurl\" target=\"_blank\" rel=\"nofollow\">$name</a>";

Save, upload, and you’re done.

As for the website URL from the website field, well, do as indicated on this tutorial, which summarizes as: add rel=nofollow in the postbit_www template. Or, better (this will also deal with the website on the user profile page and not just on the “www” button), install the previously mentionned NoFollow Website Links extension.

Posted in MyBB, web development.


Preventing FileZilla’s quickconnect from saving your passwords

I recently started to see if I could use Portable FileZilla as an emergency FTP client in case something goes wrong on wiki4games or patheticcockroach.com. With this I could notably use the FTP even from work, if needed. But while testing, I found a little issue: the quickbar doesn’t have an option not to save the password. And I’d prefer to use the quickconnect bar because I don’t want save my accounts on the portable version so it’s quite faster than using the Site Manager every time.

I suppose you’re thinking:

  • If I clear the quickconnect bar every time, what’s the problem with it saving the passwords? => Well, what if I forget to clear the quickconnect bar?
  • The quickconnect bar doesn’t save the password if you don’t type it in the bar (source: comment by Denis “If you don’t enter a password in the “Quickconnect” bar, FileZilla will ask for the password when you connect. But in this case, the password won’t be saved [...]“), so just don’t type the password in the bar. => Well, what if I accidentally enter it anyway?

As you can see, the risks are low but they do exist: all is set up as if it was conceived just in the purpose of getting you to make a mistake (no confirmation when saving the password, need to clear manually on exit). But fortunately, the FileZilla crew provided us with a solution a while ago: the “Kiosk mode”. Introduced in version 3.1.2-rc1 (2008-08-24), it will prevent FileZilla from writing any passwords to the disk if set to 1. It was updated in version 3.2.3 (2009-03-21) with a new possible value of 2 which prevents FileZilla from writing to any settings files. To configure the Kiosk mode, add <Setting name="Kiosk mode">2</Setting> withing the Settings block in fzdefaults.xml (in FileZilla Portable, this file is located in App/filezilla).
Beware: setting the Kiosk mode to 1 or 2 will not clear existing passwords, it will just prevent FileZilla from saving new passwords. To remove already saved password you need to do this manually (just clear the quickconnect bar).

Sources:

Posted in FTP, FileZilla.


Win an AMD Athlon II X2 255 CPU

Not really a killer, but when it’s free it’s definitely a good deal ;) The guys at eTeknix are running a 4-week contest to win an Athlon II X2 255. The requirements are fairly easy to reach: have 10 posts on their forums, tweet a link to their contest, and follow their tweets. The winner will be randomly picked amongst all those who qualify…

If you want to try your luck, link follows: http://www.eteknix.com/news/competitions/win-an-amd-athlon-ii-x2-255-cpu-processor/

More details on the Athlon 2 X2 255:
- TDP: 65W
- Clocked at 3.1GHz (15.5 x 200MHz)
- 1 MiB L2 cache per core (2 MiB total cache)
- Has been overclocked to 4.8GHz with a Mach 1 phase cooler
I also dug up some benchmarks there, comparing it to fellow Athlons and Phenoms 2.

Posted in Uncategorized.


Very pretty URLs in MediaWiki

Finally, we did it, we put short URLs (aka pretty URLs) on Wiki4Games. The thing is, I had a hard time at this because I did it a way which seems to be definitely inadvisable according to MediaWiki’s short URL how-to. Basically the recommended method says that you need to place your MediaWiki files anywhere but in the root folder (e.g., wiki4games.com/w/) and that you also need to make your wiki run in a different, non-existing and not root virtual directory (e.g. wiki4games.com/wiki/). Not only this method will result in silly looking URLs but it also needs you to edit httpd.conf.

Potential issues

Anyway, I decided to try and find my own way to the much not recommended wiki4games.com/Page_Title URL scheme. Before going further, the potential problems with this are:

  1. It’s unsupported, so if it ever gets broken by a MediaWiki update you won’t get help from them to fix it.
  2. Your wiki won’t be able to have a page named like one of the core files. This shouldn’t create many problems, yet you should be aware of this before going further. The potential issues with this limitation are also reduced by the fact that any MediaWiki page name begins with a capitalized letter, while no core file does. So on a case-sensitive server (Linux… ;) ) you can’t create a MediaWiki page named index.php but you can still create one named Index.php!

The .htaccess part

First I leeched Wordpress’s .htaccess file: my new .htaccess file is now:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [PT,L,QSA]
</IfModule>
#ErrorDocument 404 /404.php

In case you really don’t have a clue, this .htaccess file should be saved in the webserver’s root folder, which in our case is the wiki’s root folder. This file is explained in details there. Basically, it says that if the URL requested doesn’t point to a file (-f) or a directory (-d), Apache will load index.php.
The error document is our former pretty URL handler (we made it to redirect all 404s to index.php, so in a way pretty URLs existed but MediaWiki didn’t use it because it wasn’t configured for it), if the improved solution ever breaks we could still quickly fall back to this old 404. Here it is if you want it: http://www.wiki4games.com/User:Patheticcockroach/404.php.

It’s been reported that RewriteRule may encounter problems with special characters like ampersand, the fix for it would be to add a B flag to the rewrite rule. I.e.:
RewriteRule . /index.php [PT,L,QSA,B]
(NB: this would work too: RewriteRule . /index.php?title=$1 [PT,L,QSA,B]).
It’s also been reported that for some unspecified reason you need to addOptions FollowSymLinks in the .htaccess file. I didn’t need to, but if you experience trouble you might as well try to add this line.

Now LocalSettings.php

Then I tweaked some LocalSettings.php lines:
1. I already had (and you should have this too if you’re on a wiki ran from the root directory of your web server), from the existing installation:
$wgScriptPath = "";
$wgScriptExtension = ".php";

These lines are fine, just let them this way.
2. The 2 settings I had to change were:
$wgUsePathInfo = true;
$wgArticlePath = "/$1";

Final thoughts

Well, that pretty much covers it. Upload the modified files and now your pages should work both as yourdomain.com/A_Page and yourdomain.com/index.php?title=A_Page. Like

Enjoy your very pretty URLs! :) (which are more than pretty because they don’t contain a /wiki!)

PS: don’t forget to check that all your customizations still work, notably your logo on funky pages like subpages: the slash will break the relative path if you didn’t configure your logo properly, i.e. something like "{$wgScriptPath}/path/to/the/logo.png" or "{$wgStylePath}/common/images/logo.png"

Software used:
MediaWiki 1.15.1
PHP 5.2.x
Apache 2.2.x

Posted in MediaWiki.


R-project Portable

The guys at R-project tell you that you can run R from a CD or USB drive (so it’s portable), but nowhere they provide you with a really portable version. I.e., you have to actually run the installer then you can make a portable copy of the R folder on your USB key. That’s not exactly practical because if for instance you want to “install” it at work on a restricted computer where you can’t run an installer, you need to start with some homework first…
So for the lazy like me, here is a portable version of R 2.10.1. I made it from a custom installation (as far as I remember it’s like the standard installation without language packs and with only some of the manuals) and it’s in English, of course :)

Also, note that automatically installing additional packages should work fine on this portable version (I did so with my previous 2.10.0 portable, so no reason it wouldn’t work with that one).

Posted in software, statistics.


New beta GeForce drivers for Linux

Today NVIDIA released a new beta version of their GeForce drivers for Linux, Solaris and FreeBSD: version 195.30.

Download links:
Linux 64 bits
Linux 32 bitrs
FreeBSD x86
Solaris x86/x64

If you’re on Fedora 12, remember that we have an installation guide for you ;)

Posted in Linux, nVidia.


How to fix Yum when it hangs at “Setting up Package Sacks”

When installing Fedora 12 today (installing a new copy after troubles during the upgrade from Fedora 11), I got problems with yum, which tended to hang without any error message. I killed it (“kill” failed and I had to use “kill -9″, which worked), cleaned it (yum clean all), rebuilt the RPM database (I don’t even remember this command, sth like rpm -rebuild, and I found out later that this might be quite risky, apparently), manually deleted some RPM data files, and also ran my yum commands in verbose mode. All I could get was yum hanging at “Setting up Package Sacks”, or after what I thought was the end of downloading repository summaries. Anyway, I was just being impatient: after letting it run in the background for maybe 5 minutes, I got an error message saying that a repo (rpmfusion, which I used for VLC) timed out…

Could not retrieve mirrorlist http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-12&arch=x86_64 error was
12: Timeout on http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-12&arch=x86_64: (28, ”)
Error: Cannot retrieve repository metadata (repomd.xml) for repository: rpmfusion-free. Please verify its path and try again

The fix is simple: remove the faulty repo (what I did was I uninstalled the faulty repo and reinstalled a working copy – more precisely, I removed the repo manually from /etc/yum.repos.d/ then found out I should uninstall them properly with rpm -e rpmfusion-free-release-10-5.noarch). And to make sure this trap won’t ever catch me again, I dramatically decreased the timeout delay for yum, from the default 30 seconds to just 1: edit /etc/yum.conf and add timeout=1.

Other sources:
- how to remove repository?
- How to fix a yum when it hangs with no error messages

Bonus: a pretty long console log of me trying to install VLC, then messing with the rpm database and yum. I read somewhere that this rebuilding stuff is risky, so beware… yet my Fedora is fine now, despite all I did to hurt it! :) Noobs like me may find useful commands, confirmed users will probably have some fun :D Note how miserably a the standard kills fail, while kill -9 is good.

[david@dodora12 ~]$ su
Password:
[root@dodora12 david]# rpm -ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
Retrieving http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
warning: /var/tmp/rpm-tmp.vwxnDR: Header V3 DSA signature: NOKEY, key ID 49c8885a
Preparing… ########################################### [100%]
1:rpmfusion-free-release ########################################### [100%]
[root@dodora12 david]# yum install vlc
Loaded plugins: presto, refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 2331.
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: PackageKit
Memory : 22 M RSS (317 MB VSZ)
Started: Sat Dec 19 18:21:01 2009 – 00:26 ago
State : Sleeping, pid: 2331
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: PackageKit
Memory : 22 M RSS (317 MB VSZ)
Started: Sat Dec 19 18:21:01 2009 – 00:28 ago
State : Sleeping, pid: 2331
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: PackageKit
Memory : 22 M RSS (317 MB VSZ)
Started: Sat Dec 19 18:21:01 2009 – 00:30 ago
State : Sleeping, pid: 2331
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: PackageKit
Memory : 22 M RSS (317 MB VSZ)
Started: Sat Dec 19 18:21:01 2009 – 00:32 ago
State : Sleeping, pid: 2331
^C

Exiting on user cancel.
[root@dodora12 david]# yum install vlc
Loaded plugins: presto, refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 2331.
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: PackageKit
Memory : 22 M RSS (317 MB VSZ)
Started: Sat Dec 19 18:21:01 2009 – 00:47 ago
State : Sleeping, pid: 2331
^C

Exiting on user cancel.
[root@dodora12 david]# kill 2331
[root@dodora12 david]# kill 2331
bash: kill: (2331) – No such process
[root@dodora12 david]# yum install vlc
Loaded plugins: presto, refresh-packagekit
^C^Z
[1]+ Stopped yum install vlc
[root@dodora12 david]# yum install vlc -v
Not loading “blacklist” plugin, as it is disabled
Loading “presto” plugin
Loading “refresh-packagekit” plugin
Not loading “whiteout” plugin, as it is disabled
Config time: 0.057
Yum Version: 3.2.25
Existing lock /var/run/yum.pid: another copy is running as pid 2334.
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: yum
Memory : 22 M RSS (323 MB VSZ)
Started: Sat Dec 19 18:21:56 2009 – 00:25 ago
State : Traced/Stopped, pid: 2334
^C

Exiting on user cancel.
[root@dodora12 david]# kill 2334
[root@dodora12 david]#
[root@dodora12 david]# kill 2334
[root@dodora12 david]# kill -9 2334
[root@dodora12 david]# kill -9 2334
bash: kill: (2334) – No such process
[1]+ Killed yum install vlc
[root@dodora12 david]# yum install vlc -v
Not loading “blacklist” plugin, as it is disabled
Loading “presto” plugin
Loading “refresh-packagekit” plugin
Not loading “whiteout” plugin, as it is disabled
Config time: 0.065
Yum Version: 3.2.25
Setting up Package Sacks
^C^Z
[1]+ Stopped yum install vlc -v
[root@dodora12 david]# yum clean all
Loaded plugins: presto, refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 2336.
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: yum
Memory : 22 M RSS (323 MB VSZ)
Started: Sat Dec 19 18:22:35 2009 – 00:13 ago
State : Traced/Stopped, pid: 2336
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: yum
Memory : 22 M RSS (323 MB VSZ)
Started: Sat Dec 19 18:22:35 2009 – 00:15 ago
State : Traced/Stopped, pid: 2336
^Z
[2]+ Stopped yum clean all
[root@dodora12 david]# kill -9 2336
[root@dodora12 david]# kill -9 2336
bash: kill: (2336) – No such process
[1]- Killed yum install vlc -v
[root@dodora12 david]# yum clean all
Loaded plugins: presto, refresh-packagekit
Cleaning up Everything
[root@dodora12 david]# yum install vlc
Loaded plugins: presto, refresh-packagekit
fedora/metalink | 28 kB 00:00
fedora | 4.2 kB 00:00
fedora/primary_db | 12 MB 00:11
^Z
[3]+ Stopped yum install vlc
[root@dodora12 david]# yum clean all
Loaded plugins: presto, refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 2339.
Another app is currently holding the yum lock; waiting for it to exit…
The other application is: yum
Memory : 23 M RSS (326 MB VSZ)
Started: Sat Dec 19 18:23:02 2009 – 02:01 ago
State : Traced/Stopped, pid: 2339
^Z
[4]+ Stopped yum clean all
[root@dodora12 david]# kill -9 2339
[root@dodora12 david]# yum clean all
Loaded plugins: presto, refresh-packagekit
Cleaning up Everything
[3]- Killed yum install vlc
[root@dodora12 david]# cd /var/lib/rpm
[root@dodora12 rpm]# ls
Basenames __db.003 Installtid Provideversion Sigmd5
Conflictname __db.004 Name Pubkeys Triggername
__db.000 Dirnames Obsoletename Requirename
__db.001 Filedigests Packages Requireversion
__db.002 Group Providename Sha1header
[root@dodora12 rpm]# rm __db*
rm: remove regular empty file `__db.000′? y
rm: remove regular file `__db.001′? y
rm: remove regular file `__db.002′? y
rm: remove regular file `__db.003′? y
rm: remove regular file `__db.004′? y
[root@dodora12 rpm]# yum clean all
Loaded plugins: presto, refresh-packagekit
Cleaning up Everything
[root@dodora12 rpm]# yum clean all
Loaded plugins: presto, refresh-packagekit
Cleaning up Everything
[root@dodora12 rpm]# rpm –rebuilddb
[root@dodora12 rpm]# yum clean all
Loaded plugins: presto, refresh-packagekit
Cleaning up Everything
[root@dodora12 rpm]# yum update
Loaded plugins: presto, refresh-packagekit
fedora/metalink | 28 kB 00:00
fedora | 4.2 kB 00:00
fedora/primary_db | 12 MB 00:10
Could not retrieve mirrorlist http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-12&arch=x86_64 error was
12: Timeout on http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-12&arch=x86_64: (28, ”)
Error: Cannot retrieve repository metadata (repomd.xml) for repository: rpmfusion-free. Please verify its path and try again
[root@dodora12 rpm]#

Posted in Linux.


Installing NVIDIA graphics drivers on Fedora 12

Well, finally, the drivers issues I met first, quite a while ago, on Fedora Core 3 have… just got bigger. To make a long story short, Fedora 12 comes with a new driver called “nouveau” (acutally, it’s not exactly new, it was already here in some previous versions but didn’t cause problems yet) which loads itself very early during the boot, preventing another driver from taking its place. As more accurate details may be found on the previous tutorials (FC3 Fedora 11), I’ll just list the steps (and only detail the new ones).

  • Grab the proper NVIDIA drivers there
  • Get rid of nouveau. That’s the hard part. I found several methods but none of them worked. Most notably, most or all of them required me to install NVIDIA’s drivers (they propose to use the RPM Fusion repository, but I wanted to use the drivers straight from nvidia.com, in order to be more easily up-to-date) then follow some instructions to make it beat nouveau. The problem is: NVIDIA’s drivers from nvidia.com refused to install with nouveau already running, so I had to kill it first. The solution I found was:
    1. blacklist it: edit /etc/modprobe.d/blacklist.conf and add blacklist nouveau at the end
    2. blacklist it again in Grub: edit /boot/grub/menu.lst and add rdblacklist=nouveau at the end of the line starting with “kernel” in the proper section (NB: I have this file because I’m using Grub from an old Ubuntu installation, but I was told that Fedora 12 uses Grub 2, which has a totally different configuration file structure… I don’t know it, sorry)
    3. set the default init level to 3 (otherwise, nouveau will load when the GUI gets loaded): edit /etc/inittab and replace id:5:initdefault: with id:3:initdefault:

    This is the only working solution I found. As long as the GUI gets loaded, nouveau will get loaded too and the NVIDIA drivers will refuse to install. You will easily know if nouveau is loaded by the size of the font in the console: if it’s a large font it’s okay, if it’s a small font because the console is like in high-resolution, you did something wrong and most likely NVIDIA’s drivers will refuse to install

  • reboot
  • run the NVIDIA drivers installer (during the process, when it asks you whether it should try to update config files, say yes)
  • reboot

You’re now done. I chose to let the default init level to 3 because with every kernel update we have to reinstall the NVIDIA drivers (the version installed for the previous kernel will crash with a various severity, most likely preventing you from running the installer). To load the graphical desktop after booting in init level 3, just log in as root and type init 5.

Sources I used:

Posted in Linux, graphic cards, nVidia.


The final solution to NVIDIA’s GeForce 9650M GT drivers problems

(This post in a nutshell: update your BIOS. This should work not only on the Asus M50Vn, but also reportedly on many other versions, like M70Vn, N80Vn, X72VN, any M50…)

During the last month, I tried really hard to find a way to upgrade the GeForce 9650M GT drivers on my Asus M50Vn laptop. At first I tried every possible version, both under Windows and Linux, which at least gave me the occasion to post an updated version of my old Fedora Core 3 nVidia drivers installation guide. Then I gave up for a few weeks, until yet a new stable drivers version got released (version 195.62 on December 4). I tried those ones again… only to be a victim of yet the same bugs. This was too much, I had to at least notify the customer service about the apparently broken drivers.

So there I went, to nvidia.custhelp.com. Created an account, submitted a “wtf you could at least test your drivers on the supposedly supported 9650M GT” claim, and went back to my slow but (almost) stable 180.70 drivers. To my surprise (it was a Saturday), I quickly got a rather large reply, asking for more information. A few hours later I was told that:

[since I] have installed Windows XP on [my] laptop which is not shipped as OEM, [...] drivers on NVIDIA website will not work because the NVIDIA graphics driver for laptops works only with preinstalled operating system with laptop

Therefore, [they] request [me] to kindly contact [my] laptop manufacturer to get the compatible and updated driver for [my] laptop graphics card.

This came a bit as a shock, since I wondered how they’d expect to see customers with OEM Linux, and also I wondered what’s the point of providing drivers if they can’t replace the traditionally totally outdated version provided by laptop manufacturers (NB: for the M50Vn laptop, Asus provide no Windows XP drivers and their Vista drivers were last updated in August 2008). But this made me go to the Asus driver download website (precisely to be able to tell NVIDIA how outdated Asus was :D ). And after some browsing there, I found this:

BIOS 212
Update VBIOS to fix VGA flicker and freeze problem.

Looks like the solution, doesn’t it? :) So I updated the BIOS, reinstalled the newest drivers… and everything worked fine, finally.

Congratulations, problem solved

NB: after some research, it turned out that my model wasn’t the only one affected. For instance, in A possible solution to Nvidia 9650M GT DriverProblems and [Résolu] Karmic / Nvidia 9650M GT / Freeze de l’affichage, it’s mentioned that the same problem and fix occurs in M70Vn, N80Vn, X72VN and any M50 Asus laptops, as long as it has a GeForce 9650M GT graphics card. Just make sure that you grab the proper BIOS, from Asus Support (downloads). The version of the BIOS fixing this issue may vary depending on laptop model.

NB2: since this is a BIOS issue, this applies to any OS: the issue occurs (and the fix works) as well on Windows XP, Vista or Seven, but also on any Linux (Ubuntu, Fedora…), and I guess also on Solaris and FreeBSD.

Posted in Asus M50Vn, graphic cards, nVidia.