[so2] Tema4 - write_inode

Cristian Chilipirea cristian.chilipirea at cti.pub.ro
Tue May 1 16:44:00 EEST 2012


On Tue, May 1, 2012 at 3:24 PM, Razvan Deaconescu <
razvan.deaconescu at cs.pub.ro> wrote:

> VLAD TUDOSE <vlad_tudose at yahoo.com> writes:
> > Salut,
> >
> > Am si eu urmatoarea problema:
> >
> > Nu se apeleaza functia de write_inode dupa ce apelez mark_inode_dirty.
> > Am avut grija sa adaug inode-ul in hash. Intamplator am descoperit ca
> > daca incrementez inode->i_count atunci se apeleaza.
> >
> > Daca incrementez i_count (initial are valoare 1), la umount primesc un
> > warning cu "VFS: Busy inodes after unmount of loop0 ...".
>
> E normal să se întâmple asta, pentru că are incrementul mai mult decât e
> nevoie. Din câte știu, inode->i_count e incrementat la iget_locked.
>
> Funcția nu se apelează din prima. Există o latență până când inode-urile
> sunt scrise pe disc. Ar trebui să se apeleze automat la demontare.
>
> > Din cate am inteles eu e legat de faptul ca nu sunt eliberate toate
> > inode-urile.  Am observat ca functia delete_inode nu se apeleaza
> > niciodata ( nu ar trebui ? ).
>
> Din câte știu, funcția delete_inode este apelată la ștergerea unui inode
> (adică la o operație rm).
>
> Răzvan
> _______________________________________________
> http://elf.cs.pub.ro/so2/wiki/resurse/lista-discutii


Am exact aceeasi problema.
Partea urata e ca nu se apeleaza write_inode automat la demontare.
Uneori se apeleaza la scurt timp dupa demontare ce rezulta intr-un "total
system meltdown".
Solutia mea a fost una cu foartea multa banda adeziva, ignorand
mark_inode_dirty si apeland direct functia de scriere.

Cristian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so2/attachments/20120501/e99567bd/attachment-0001.htm>


More information about the so2 mailing list