[pso] [tema3]put_super

Octavian Purdila tavi at cs.pub.ro
Mon May 7 20:55:34 EEST 2007


On Monday 07 May 2007 20:42, Catalin Morosan wrote:
> Am mai analizat problema si se pare ca mie nu-mi trece testul din metoda
> mark_buffer_dirty().
>
> void fastcall mark_buffer_dirty(struct buffer_head *bh)
> {
>          if (!buffer_dirty(bh) && !test_set_buffer_dirty(bh))
> 		 __set_page_dirty_nobuffers(bh->b_page);
> }
>
> In primul rand, ce as putea face sa fac sa treaca testul de mai sus, si
> apoi, 
 
Daca nu iti trece testul inseamna ca bufferul e deja dirty. Daca nu se face 
flush la umount, inseamna ca bh-ul respectiv nu e asociat cu filesystemul. Il 
citesti cumva cu __brelse? Daca da, atunci trebuie sa il citesti cu sb_bread.

> de ce nu am acces la acele 2 metode buffer_dirty() si 
> test_set_buffer_dirty()? Nu le gasesc nicaieri in surse.

http://cs.pub.ro/~pso/lxr/source/include/linux/buffer_head.h?v=linux-2.6.18#073

http://cs.pub.ro/~pso/lxr/source/include/linux/buffer_head.h?v=linux-2.6.18#092


More information about the pso mailing list