[BSD] Bogár a biztosítékban

HalaszGabor halasz.g at freemail.hu
2016. Május. 18., Sze, 14:48:44 CEST


Helo!

Szóval egy ideje észrevettem, hogy bug van a freebsd fuse-ban (még a 
9-esben találtam, de most a 10.3-ban is ott lakik).
Éppen ráerek, csináltam coredumpot, betöltöttem a kgdb-be, és azt mondta:

#0  doadump (textdump=<value optimized out>) at pcpu.h:219
219             __asm("movq %%gs:%1,%0" : "=r" (td)

Ott ez áll:

#define OFFSETOF_CURPCB         32
static __inline __pure2 struct pcb *
__curpcb(void)
{
         struct pcb *pcb;

         __asm("movq %%gs:%1,%0" : "=r" (pcb) : "m" (*(char 
*)OFFSETOF_CURPCB));
         return (pcb);
}

Eddig tartott a handbook-ból a tudomány, de biztosan nem itt van a hiba, 
akkor el sem indulna a gép. Hogyan tovább? (tudom, ne piszkáljon 
filesystemet aki nem ért hozzá :) Ha jól gondolom, azt kellene 
kideríteni, ki használta éppen a pcb-t, de hogyan?


További információk a(z) BSD levelezőlistáról