[SOS] Article 10 -- système de fichiers FAT

anthoine.bourgeois anthoine.bourgeois at wanadoo.fr
Ven 26 Oct 08:55:36 CEST 2007


Bonjour Geoffroy,

Merci pour ton patch.

J'ai également le problème "No kernel thread ready ?!".
Ce problème était déjà présent dans la version 9.5 des sources. J'ai réussi à le reproduire en faisant un partdump.
Le problème apparait lorsqu'un processus se termine et qu'il a encore des fichiers ouvert sur le disque (ca n'apparait pas avec virtfs).
Lorsqu'un processus se termine il choisit un nouveau thread dans l'ordonnanceur, le thread idle puisqu'il n'y a que celui la à ce moment, puis le noyau libère le processus des ressources qu'il occupe. Donc s'il a un fichier ouvert sur le disque, il va faire un sync et en attendant que le driver ide fasse sa commande d'écriture il va relancer l'ordonnanceur pour exécuter autre chose en attendant, mais il n'y en a plus car on a retiré le dernier thread juste avant.
Voilà ou en sont mes investigations.
C'est donc un problème entre le drivers ide et l'ordonnanceur, je pense.

Hélas je ne peux pas poursuive mes recherches car j'ai toujours le problème des userkimgs qui ne se lance plus. Avec une belle trace qui vient de binfmt_elf32:407 =
SOS_ASSERT_FATAL(SOS_OK == sos_umem_vmm_map(dest_as, &uaddr,                                                                                                    
                                           SOS_PAGE_ALIGN_SUP(elf_phdrs[i].p_filesz),                                                                          
                                           prot_flags,                                                                                                         
                                           SOS_VR_MAP_FIXED,                                                                                     
                                           & mapped_prog->mr,                                                                                                  
                                           elf_phdrs[i].p_offset))

J'ai reproduit le problème sur la Mandriva 2008 (version gcc 4.2.2, GNU ld version 2.17.50.0.12 20070128)
Donc je cherche d'abord à résoudre ce problème par obligation avant le "No kernel thread ready ?!".

Cordialement,
Anthoine


> Message du 10/10/07 17:57
> De : "geoffroy weisenhorn" <geoffroy.weisenhorn at gmail.com>
> A : "SOS mailing-list" <sos at the-doors.enix.org>
> Copie à : 
> Objet : Re: [SOS] Article 10 -- système de fichiers FAT
> 
> Re,
> 
> desole j'ai oublie le patch ...
> 
> 
> 
> Le 10/10/07, geoffroy weisenhorn<geoffroy.weisenhorn at gmail.com> a écrit :
> > Bonjour,
> >
> > Un *bravo* à Anthoine Bourgeois pour l'article dans GLMF quand je l'ai
> > vu en kiosque , j'ai pas attendu une 1s pour me plonger dedans ....
> > Je me permets de vous envoyé un tout petit patch qui corrige 2 petites erreurs :
> > - la commande create ne répond rien si on la lance sans paramètre
> > - la commande mount sans paramètre fait un SEGV à la SOS si aucun paramètre
> >   n'est fournis et provoque la fin du shell ... :-(
> > j'attends vos critiques sur mes corrections mineures
> >
> > Cepandant un bug plus génant survient à la terminaison de fstestfat,
> > SOS backtrace et dit : "No kernel thread ready ?!" dans la fonction
> > sos_reschedule de sched.c.
> > je sais pas du tout quelle sont les conditions qui on amené l'ordonnanceur
> > dans cet état et surtout comment l'éviter... je continue à recherche ..
> >
> > bonne journée à tous et long vie à SOS !
> >
> >
> > Le 01/10/07, David Decotigny<david.decotigny at free.fr> a écrit :
> > > -----BEGIN PGP SIGNED MESSAGE-----
> > > Hash: SHA1
> > >
> > >
> > > Bonjour,
> > >
> > > Grâce à Anthoine Bourgeois, fidèle lecteur de la Saga SOS, le Linux
> > > Magazine d'Octobre (numéro 98) devrait faire la joie des plus fins gourmets.
> > >
> > >    Au menu : l'implémentation du système de fichiers FAT dans SOS.
> > >
> > > Comme à l'habitude, les sources pour cet article sont disponibles sur le
> > > site du projet : http://sos.enix.org . Ils intègrent certaines
> > > fonctionnalités présentées dans la page "contributions de lecteurs"
> > > (variables d'environnements, pid, dupfd, etc.).
> > >
> > > Si, comme Anthoine, vous désirez partager vos connaissances et vos
> > > expériences avec SOS en publiant un article dans GLMF, n'hésitez pas à
> > > nous contacter (Thomas Petazzoni et moi-même) pour nous proposer vos
> > > idées ! En ce qui nous concerne Thomas et moi, peut-être même qu'un jour
> > > nous remettrons sérieusement le pied à l'étrier... Oui, cette aventure
> > > n'est pas terminée !
> > >
> > > Bonne lecture !
> > >
> > > - --
> > > David Decotigny -- http://david.decotigny.fr
> > > Fingerprint: 54A6 7EC5 868D 98C8 8C8C 1BD1 95DE EF86 EB15 AC21
> > > -----BEGIN PGP SIGNATURE-----
> > > Version: GnuPG v1.4.6 (GNU/Linux)
> > > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> > >
> > > iD8DBQFHASbMld7vhusVrCERAiNSAKCD+eMwZ1ToC67DxDfm9PaTeh7cbgCggcsH
> > > G1y4y7P/h6PKktHdvD7gRR4=
> > > =F2dj
> > > -----END PGP SIGNATURE-----
> > > _______________________________________________
> > > Sos mailing list
> > > Sos at the-doors.enix.org
> > > http://the-doors.enix.org/cgi-bin/mailman/listinfo/sos
> > >
> >
> >
> [ patch_art10.diff (0.5 Ko) ]
> [ (pas de nom de fichier) (0.1 Ko) ]



Plus d'informations sur la liste de diffusion Sos