# [dmesg] dmesg incomplet (résolu)

## GentooUser@Clubic

EDIT: Résolu avec sys-apps/util-linux-2.20-r1 https://bugs.gentoo.org/show_bug.cgi?id=385305

Salut,

J'ai un problème étrange depuis quelques temps, quand je lance la commande dmesg ça s’arrête à :

```
md/raid0:md127: md_size is 2500516864 sectors.

******* md127 configuration *********

zone0=[sda1/sdb1/]

       zone offset=0kb device offset=0kb size=1250258432kb

**********************************

```

Rien d'anormal, sauf quand quand je lit /var/log/messages on voit bien qu'il continu à se passer des choses après :

```

Sep 29 20:55:30 frost kernel: zone0=[sda1/sdb1/]

Sep 29 20:55:30 frost kernel: zone offset=0kb device offset=0kb size=1250258432kb

Sep 29 20:55:30 frost kernel: **********************************

Sep 29 20:55:30 frost kernel: 

Sep 29 20:55:30 frost kernel: md127: detected capacity change from 0 to 1280264634368

Sep 29 20:55:30 frost kernel: md127: unknown partition table

Sep 29 20:55:30 frost kernel: PM: Starting manual resume from disk

Sep 29 20:55:30 frost kernel: EXT4-fs (dm-2): couldn't mount as ext3 due to feature incompatibilities

Sep 29 20:55:30 frost kernel: EXT4-fs (dm-2): couldn't mount as ext2 due to feature incompatibilities

Sep 29 20:55:30 frost kernel: usb 6-1: new low speed USB device number 2 using uhci_hcd

Sep 29 20:55:30 frost kernel: EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null)

Sep 29 20:55:30 frost kernel: usb 6-1: New USB device found, idVendor=0458, idProduct=00ae

Sep 29 20:55:30 frost kernel: usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0

....

```

Là j’avoue de pas savoir par où commencer à chercher ce qui va pas. J'ai d'abord pensé au passage initrd->rootfs, mais ça correspond pas.

Si quelqu’un a une idée ?Last edited by GentooUser@Clubic on Tue Oct 18, 2011 1:38 pm; edited 1 time in total

----------

## GentooUser@Clubic

Bon quand je vide le buffer (dmesg -C) les nouveaux messages s'affichent de nouveau.

J'ai donc doublé (128ko) la taille du Log Buffer dans le noyau et j'ai gagné deux lignes (Youhou   :Very Happy: ), mais toujours le même problème  :Sad: 

----------

## fb99

un truc tout con, ta partitions est plein.

Ou plus sérieux, peut-être un mauvais niveaux de syslog spécifier ?? 

```
$man syslog
```

 *Quote:*   

> The loglevel
> 
> The kernel routine printk() will only print a message on the console, if it has a loglevel less than the value of the variable console_loglevel. This variable initially has the value DEFAULT_CONSOLE_LOGLEVEL (7), but is set to 10 if the kernel command line contains the word 'debug', and to 15 in case of a kernel fault (the 10 and 15 are just silly, and equivalent to . This variable is set (to a value in the range 1- by the call syslog() (8,dummy,value). The calls syslog() (type,dummy,idummy) with type equal to 6 or 7, set it to 1 (kernel panics only) or 7 (all except debugging messages), respectively.
> 
> Every text line in a message has its own loglevel. This level is DEFAULT_MESSAGE_LOGLEVEL - 1 (6) unless the line starts with <d> where d is a digit in the range 1-7, in which case the level is d. The conventional meaning of the loglevel is defined in <linux/kernel.h> as follows:
> ...

 

Mes 0.002 cents

----------

## GentooUser@Clubic

Merci, 

Déjà non mon / n'est pas plein.

Ensuite j'ai essayé de changer le loglevel dans /etc/conf.d/dmesg, ça affiche bien plus de messages sur la console de démarrage, mais la commande dmesg s’arrête toujours au milieu de la détection du raid, de toute façon bien avant que /etc/init.d/dmesg soit lancé quoi.

Avec le décalage dû au buffer, je pense que dois correspondre au moment du pivot_root, mais si je suis le seul utilisateur de genkernel à avoir ce problème c’est un bug de ma configuration, pas de gentoo.

Au moment où les lignes s'arretent y'a un message vide  *Quote:*   

> Oct  2 03:31:40 frost kernel: 
> 
> 

  C'est peut-être une manifestation du bug, ou dmesg considère ça comme un EOF et s’arrête (ça expliquerait pourquoi ça remarche quand je vide le buffer)

Je vais me renseigner un peu sur le débogage du noyau pour voir si j'arrive à trouver l'origine de cette ligne, et ce quelle écrit précisément (rien ? Caractère 'null' ?, Séquence de contrôle ?)

EDIT: dmesg -r affiche bien tout le contenu du log, ce serait donc la fonction de formatage qui digère mal cette ligne vide ?

----------

## GentooUser@Clubic

Bon j'ai trouvé dmesg peut pas digérer deux 'newline' de suite, d'où le problème avec : 

```
% cat /usr/src/linux/drivers/md/raid0.c | grep "\\\n\\\n"

        printk(KERN_INFO "**********************************\n\n");

```

J'ai fait un petit module et ça confirme que les cas suivant causent le même problème :

```
printk("foo\n\n");

printk("bar\n");
```

```
printk("foo\n\nbar");
```

```

printk("foo\n");

printk("\nbar");

```

----------

