[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Message d'erreur du type soft lockup detected on CPU0!



franck Molle, mardi 4 décembre 2007, 19:42:14 CET
> 
> Bonsoir à tous,

’soir,

>[…]
> Voila pour le décor, maintenant nous rencontrons sur plusieurs
> serveurs de marques et de types différents des plantages
> complets avec comme seul message d'erreur en console :
> BUG : soft lockup detected on CPU#0!
> 
> En général, nous utilisons un noyau de type 2.6.20. Ce dernier
> étant compilé par mes soins, je peux fournir le .config si
> nécessaire afin de vérifier la présence d'une éventuelle
> erreur. Toutefois, cela fait plusieurs mois que nous
> installons ce noyau par défaut et jusqu'il y a peu, on ne
> rencontrait pas de problème particulier.
> 
> J'ai fait quelque recherches sur internet mais je n'ai rien
> trouvé de probant, je suis donc à la recherche de conseils, de
> pistes et pourquoi pas de solutions:)

  Dans kernel/softlockup.c :
 * this code detects soft lockups: incidents in where on a CPU
 * the kernel does not reschedule for 10 seconds or more.

  et dans lib/Kconfig.debug :
config DETECT_SOFTLOCKUP
        bool "Detect Soft Lockups"
        depends on DEBUG_KERNEL && !S390
        default y
        help
          Say Y here to enable the kernel to detect "soft lockups",
          which are bugs that cause the kernel to loop in kernel
          mode for more than 10 seconds, without giving other tasks a
          chance to run.

          When a soft-lockup is detected, the kernel will print the
          current stack trace (which you should report), but the
          system will stay locked up. This feature has negligible
          overhead.

          (Note that "hard lockups" are separate type of bugs that
           can be detected via the NMI-watchdog, on platforms that
           support it.)

  Donc, tu peux :
— soit mettre DETECT_SOFTLOCKUP à « n » pour éviter les messages,
  mais si tes machines plantent complètement, ce n’est pas en
  faisant taire l’alarme qu’on éteint le feu ;
— soit enquêter et envoyer les traces à la LKML. Ce message indique
  que le noyau est bloqué sur quelque chose, il faudrait trouver
  sur quoi. Tu pourrais aussi essayé avec un noyau plus générique
  pour voir si ça vient de ton noyau. Voir aussi s’il n’y a pas un
  matériel commun ou un module commun, qu’il soit propriétaire ou
  expérimental. Cerner le contexte en somme.

-- 
 Sylvain Sauvage



Reply to: