le ven 02-11-2001 at 11:57 Jean-Michel Merliot a écrit : > Le Mardi 30 Octobre 2001 11:25, vous avez écrit : > > [ epargantion du message ;) ] > > > > > > Bonjour à tous, > > > > > > > > je viens d'upgrader ma machine en y mettant 1.5 Go de RAM. > > > > > > > > J'ai recompilé le kernel pour qu'il prenne en compte la mémoire au delà > > > > d'un giga ( option 4Gb ). > > > > > > > > Tout va bien, la mémoire est reconnue, je n'ai qu'un ( gros ) problème, > > > > je n'arrive pas à faire marcher ma carte graphique sous X. > > > > * > > -- Brit' mode on. > Cool man, don't bark at me like a f????g pit' > -- Brit' mode off. > > Ah bon, je pensais avoir été clair, mais ce n'est apparemment pas le cas... > > Donc j'ai une Gforce 2 MX qui fonctionne parfaitement bien avec le driver > NVIDIA et 768 Mo de RAM. > > Avec 1.5 Go par contre, XFree 4 se plante. > > J'ai un peu cherché ce qui se passait et le problème se trouve être un appel > à get_vm_area dans le driver au niveau de l'implémentation du mmap. Plus > précisément, le driver essaie de mapper le frame buffer dans le driver en > mode ( je ne sait pas siu cette terminologie est correcte ) kernel, au lieu > de faire comme Xfree86 le fait et de se contenter de faire un mmap > directement en user mode sur /dev/mem, ce qui peut sembler "quick'n'dirty" > mais qui a le mérite de ne pas poser le problème de map mémoire qui se > produit dans le driver ( j'ai trouvé tout ça en étudiant le driver NVIDIA et > en cherchant sue le net, j'ai trouvé un certain nombre d'info sur vmalloc > etc... ). > > Ayant été un peu malade ces derniers temps ( si on vous parle de la gastro de > la saison, fuyez, courez, volez, ou preparez vous à gerber.... :-( ), je > n'ai pas pu poursuivre dans ce forum.... > > Bref ma conclusion est que le problème vient bien du fait que mapper le frame > buffer en kernel mode est ce qu'il ne faut pas faire, vu que l'espace > disponible est très restreint et en fait il n'y a pas de place contigüe en > mémoire suffisamment grande pour que le kernel puisse mapper le frame buffer. > > Qui aurait cru qu'on en viendrait si vite à râler à cause de l'espace > d'adressage restreint ( 32 bits !! ) des x86.... ;-] > > Bref, le problème se trouve dans le driver NVIDIA, mais je n'ai pas exploré > le moyen d'y remédier ( Je ne sais pas si il y a moyen de mmap'er directement > le frame buffer dans le driver, plutôt que de faire un ioremap comme c'est > fait pour le moment. )
Il serait intéressant de faire part de tes conclusions à NVIDIA ( en anglais de préférence ) afin qu'eux même corrige ce problème par la suite. > J'avoue également que mes capacité en matière de driver ne sont au mieux > qu'embryonnaires et en tout cas définitivement heuristiques, et donc > relativement inefficaces. > > Cela dit, le driver non acceléré fourni avec XFree86 fonctionne parfaitement. > > Voilà, si quelqu'un au fait des arcanes du kernel voit un moyen de remédier à > ce ( triste ) état des choses, je peux même bricoler ça directement, j'aurait > juste besoin que l'on me mette sur la voie... hum, Alan Cox a déjà préciser qu'il en avait m.... de répondre pour des bugs des drivers nvidia. Tu peux poster la question sur la ML cooker avec un CC à quintela. -- http://perso.wanadoo.fr/linux_wizard/index.html - Une femme se soucie de son avenir jusqu'au jour ou elle se marie. Un homme se soucie de son avenir a partir du jour ou il se marie. - Lucky Luke par Morris
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"