Cannot reserve MMIO region

Résolu
Bonjour,
Je viens d'installer Ubuntu 10.10 sur mon pc (et j'en suis très content).
Tout marche bien, mais j'ai une message d'erreur pendant le boot :
[ 13.243762] shpchp 0000:00:01.0: Cannot reserve MMIO region
J'ai lu qu'il y avait un rapport avec le swap mais même après formatage de celui-ci , j'ai toujours ce message.
Quelqu'un sait d'où cela peut venir ?

Merci d'avance.

26 réponses

Résumé de la discussion

Plusieurs utilisateurs signalent rencontré lors du démarrage un message d'erreur relatif à Cannot reserve MMIO region sur Ubuntu 10.10, lié à une gestion des régions mémoire et potentiellement au noyau (kernel). Des pistes évoquent un bug du noyau et des tentatives d'évolution du noyau, avec des essais de versions comme 2.6.35 et 2.6.36 et même recompilation via make-kpkg. D'autres suggèrent des solutions comme installer une version 64 bits, basculer vers des noyaux alternatifs, ou ajuster le système via des méthodes liées au swap et au démarrage, bien que la cause reste incertaine. Par ailleurs, des discussions pointent sur un bug suivi sur Launchpad et préconisent des mises à jour du noyau ou l'installation d'un noyau 64 bits comme solution potentielle.

Bobot (l’IA à votre service)
  1. Je vois pas qu'est-ce qu'on pourrais faire de plus pour cette erreur, en plus elle à pas l'air de gêner, pour Qwt je suis en train de me débrouiller (j'y suis presque !).

    Je te dis encore une fois merci.

    @+ (peut -être qu'on se reverra ^^).
    1. Modérateur
      J'ai pas dis que c'était plus lent, j'ai seulement dis que je n'ai remarqué aucune différence avec la seule fois ou j'ai tester ubuntu ^^.

      Ah oui ça c'est possible. Il n'y a eu guère que la fois où ubuntu est passé de sysvinit à upstart que le temps de démarrage a été très sensiblement réduit. Généralement on observe assez peu de différences à ce niveau-là. Ça dépend surtout des services que tu lances au démarrage.

      Typiquement si tu lances au démarrage un serveur mysql, un serveur ftp, un serveur apache, etc... ça peut sensiblement ralentir le temps de démarrage :-)

      Pour Gnome et KDE j'ai fini par désinstaller KDE, j'ai plus accroché au design épuré de Gnome. Je trouve que sur KDE, il ya trop de choses partout (surtout dans les menus), dommage qu'il n'y ait pas de plasmoïdes sur gnome...

      C'est une question d'habitude mais c'est vrai qu'au début ça fait un peu usine à gaz. Gnome est plus épuré et donc plus simple pour le grand public, mais je le trouve un peu trop light pour la personnalisation. Après c'est vraiment une affaire de goût, gnome est cool aussi. Et il existe plein d'alternatives à gnome et KDE.

      Sous gnome tu as quelques widgets mais ça va moins loin et c'est moins intégré que sous KDE.

      Me reste plus qu'a installer Qwt (je galère) et ce sera nikel.

      Ça ce sera pour un autre fil de discussion ;-)

      On en reste là pour ton erreur "MMIO region" ?

      Bonne chance
      1. J'ai pas dis que c'était plus lent, j'ai seulement dis que je n'ai remarqué aucune différence avec la seule fois ou j'ai tester ubuntu ^^.
        Pour Gnome et KDE j'ai fini par désinstaller KDE, j'ai plus accroché au design épuré de Gnome. Je trouve que sur KDE, il ya trop de choses partout (surtout dans les menus), dommage qu'il n'y est pas de plasmoïdes sur gnome...
        Pour en revenir au kernel, la MAJ d'aujourd'hui n'as rien changé, j'ai lus que ça avais un rapport avec les ports PCIs, mais j'ai arrêté de chercher.
        Me reste plus qu'a installer Qwt (je galère) et ce sera nikel.

        Encore merci :-)
        1. Modérateur
          C'est bizarre que ce soit plus lent, ça devrait être le contraire. Tu utilises upstart ?

          dpkg -l | grep upstart


          Pour le splashscreen oui c'est une bonne approche pour cacher les erreurs. De toute façon ce n'est pas une erreur grave dans la mesure où elle ne t'empêche pas de démarrer.

          Pour Gnome KDE, je préfère KDE. C'est un peu bizarre les plasmoïdes au début mais en fait c'est pas mal. Et les applications KDE sont souvent plus complètes.

          Et pour les remerciements, et bien de rien c'est normal ! C'est comme ça que Linux avance : plein de gens qui apportent leur brique à l'édifice, moi c'est en aidant les gens ;-)
          1. Je sais pas trop, mais bon, c'est pas plus lent que quand j'étais en dual-boot sous lucid. En plus j'ai remis le splash-screen HD donc je vois plus rien ^^.
            Là, je teste Gnome et KDE...
            Sinon merci pour ton aide (et tes conseils).
            A bientôt peut-être ?
            1. Modérateur
              Mwais c'est clair que c'est bizarre. Au fait le message d'erreur est pénalisant ? Ou c'est juste le message qui te contrarie ?
              1. Merci pour ces détails, j'ai vais rester avec le kernel "generic" livré avec Ubuntu, c'est celui qui revois le moins d'erreur au boot (pourtant j'ai compiler le nouveau avec les mêmes options). Et bien-sur chercher sur le net...
                1. Modérateur
                  Par rapport à ton kernel

                  Il faudrait localiser en cherchant sur le Net quelle feature interne au kernel provoque ces erreurs. À part chercher sur le Net je ne sais pas. Déjà en te renseignant sur ce qu'est réellement la région MMIO tu pourras resserrer l'étau.

                  Concrètement, la commande make menuconfig permet de générer un fichier /usr/src/linux..../.config qui contient les directives nécessaires au makefile pour que celui sache quoi compiler et comment (dans le kernel ou en module).

                  La commande make oldconfig permet de récupérer un ancien fichier ".config" que tu injectes dans le nouveau répertoire de sources (généralement d'un kernel plus récent et pour lequel tu n'as pas envie de refaire un make menuconfig). L'intérêt, c'est que make oldconfig te posera toutes les questions relatives à ce qui est apparu dans ce nouveau kernel (et te proposera un certain nombre de choix par défaut pour t'aider).

                  De manière générale, si un ancien kernel fonctionne, les nouvelles choses qui apparaissent ne sont pas "vitales" et peuvent bien souvent être ignorées, à moins bien sûr que le kernel que tu utilisais jusqu'ici ne prenne pas en charge tout ton matériel.

                  Par rapport à tes partitions

                  C'est un autre problème donc un nouveau sujet. LVM permet de faire des miracles mais dans ton cas c'est cuit. La commande resize2fs permet de redimensionner une partition.

                  Plus de détails ici :
                  https://www.linux.com/news/articles-about-code-red-are-invading-internet/

                  Attention à bien sauver tes données précieuses sur un autre support au cas où tu te trompes !

                  Bonne chance
                  1. Oui :-)
                    Je suis en train de recompiler une autre version du noyau (2.6.36.2.), mais cette fois en ayant fait beaucoup plus attention a ce que je cochais/décochais (mais dans l'ensemble, je comprend pas beaucoup).
                    Au moins, (étant débutant sous linux), j'ai sais compiler un noyau !!
                    Sinon, tu ne connaitrais pas un moyen d'étendre une partition sans la démonter ? (sachant que je ne fais pas de lvm)

                    Bon, j'ai installé mon nouveau noyau (2.6.36 "custom" ) et au démarrage :
                    Plein d'erreurs....
                    ......
                    [ XX.XXXXXXXX] shpchp 0000:00:01.0: Cannot reserve MMIO region
                    [ XX.XXXXXXXX] shpchp 0000:00:04.0: Cannot reserve MMIO region
                    [ XX.XXXXXXXX] shpchp 0000:00:05.0: Cannot reserve MMIO region
                    [ XX.XXXXXXXX] shpchp 0000:00:07.0: Cannot reserve MMIO region
                    [ XX.XXXXXXXX] shpchp 0000:00:09.0: Cannot reserve MMIO region

                    Je retente avec un make oldconfig pour voir si ca viens de moi ou du noyau.
                    1. Modérateur
                      Pour le paquet linux-image...deb c'était simplement pour voir s'il marchait mieux que celui d'ubuntu. Si ce n'est pas le cas tu peux le dégager :

                      sudo dpkg --purge le_nom_du_paquet_sans_extension


                      Pour le paquet linux-source, sa version n'a aucune importance. Chaque noyau est indépendant. L'avantage de prendre un paquet linux-source est qu'il est préconfiguré avec les features utilisées dans le paquet linux-source. Le compiler directement revient à obtenir l'équivalent de ce qu'on a dans le paquet linux-image. Toute l'idée est de virer ce qui ne sert à rien (mais dans le doute mieux vaut laisser une feature) jusqu'à dégager celle qui est coupable.

                      En fait, tu pourrais même prendre un noyau plus récent sur kernel.org, mais ce genre de noyau n'est pas forcément aussi "préconfiguré" que pour un paquet linux-source. La démarche reste toutefois exactement la même. Installer un paquet linux-source ne fait que décompresser une archive dans /usr/src.
                      1. J'avais juste utilisé linux-image-...deb pour la 2.6.36.
                        Ensuite je me suis fait un noyau custom (à l'aide du lien que tu m'as donnée)
                        Mais j'ai du foirer à l'étape ou on choisi les éléments.
                        Une autres question, mon noyau "custom" est en version 2.6.35.7,
                        alors que le "generic" est en version 2.6.35-23, est-ce normal ?
                        Je suis en train de retenter avec la version 2.6.36.2.
                        1. Modérateur
                          Mais le linux-image-...deb est un noyau compilé donc tu ne pourras pas enlever la feature qui déclenche le message d'erreur si elle y figure !

                          Si tu veux résoudre le problème avec un noyau "maison", il faut vraiment que tu prennes un paquet linux-source-...deb et que tu prennes le temps de choisir quelle features y faire figurer (make menuconfig dans le répertoire des sources) et construire le paquet debian associé (avec make-kpkg).
                          1. J'avais pris le noyau en linux-image....deb. Mais la j'essaye de compiler l'ancienne version (mais j'ai plus de place sur / alors je retente sur /home)
                            Pour les options j'ai laisser celle qui sont sur le noyau debian par défaut (j'y comprend rien, mais je vais essayer de comprendre).
                            EDIT :
                            J'ai du faire une bourde à la configuration j'ai maintenant :
                            [ XX.XXXXXXXX] shpchp 0000:00:01.0: Cannot reserve MMIO region
                            [ XX.XXXXXXXX] shpchp 0000:00:04.0: Cannot reserve MMIO region
                            [ XX.XXXXXXXX] shpchp 0000:00:05.0: Cannot reserve MMIO region
                            [ XX.XXXXXXXX] shpchp 0000:00:07.0: Cannot reserve MMIO region
                            [ XX.XXXXXXXX] shpchp 0000:00:09.0: Cannot reserve MMIO region
                            [ XX.XXXXXXXX] lis31v02d Cannot get IRQ
                            1. Modérateur
                              Autant prendre la dernière version. Tu as compilé ton noyau avec make-kpkg à partir d'un paquet linux-source ?
                              1. Merci pour vos conseils, hier. J'ai tenter d'installer la version 2.6.36 du noyau mais j'avais encore plus d'erreurs au demarrage. Je recompile la version 2.6.35 ?
                                1. 3Go de RAM, à peine 1Go d'utilisé et 4Go de swap. Même mes serveurs n'ont pas autant de ressources lol ;-)

                                  Réduit le swap à 2go max et pas de problèmes. De toute façon avec autant de RAM tu te rendras compte que tu ne l'utiliseras jamais.

                                  Cordialement,
                                  1. Modérateur
                                    Oui une mise à jour noyau peut résoudre le problème si celui-ci a été compilé avec les bonnes options.

                                    Pour recompiler ton noyau je t'invite à utiliser le paquet linux-source-... et d'utiliser la commande make-kpkg. L'avantage c'est que tu vas récupérer des sources avec un fichier de configuration (/usr/src/linux-.../.config) initialisé avec ce que tu as dans un noyau standard debian.

                                    Pour la compilation en elle-même tout est expliqué ici :
                                    http://www.mistra.fr/tutoriel-linux-compiler.html#h4-compiler-un-noyau

                                    Tu peux en profiter pour virer du noyau tout ce qui ne te sers pas (support du matériel absent de ta machine etc...), la compilation sera d'autant plus rapide.

                                    Attention à ne pas virer des choses importantes car sinon ce noyau ne sera pas bootable (kernel panic). Ainsi, je te conseille de toujours garder ton noyau standard debian (paquet linux-image...).

                                    Bonne chance
                                    1. Ok, merci pour ton aide je vais recompiler mon noyau.
                                      Si ça ne marche pas, une mise à jour du noyau pourrais régler le problème ?
                                      1. Modérateur
                                        Apparemment c'est un bug kernel. Sur launchpad ça rame pour trouver d'où ça vient et comment le résoudre.
                                        https://bugs.launchpad.net/ubuntu/+source/linux/+bug/577842

                                        Ici la personne a résolu le problème en faisant une installation 64bits
                                        http://forum.ubuntu-fr.org/viewtopic.php?id=360657

                                        Autre solution tu recompiles un autre noyau (ou tu tentes avec un noyau pris chez debian...).
                                        https://packages.debian.org/squeeze/linux-image-2.6-686

                                        Bonne chance
                                        • 1
                                        • 2