1. 02 6月, 2007 1 次提交
  2. 01 6月, 2007 1 次提交
  3. 20 5月, 2007 2 次提交
    • D
      [JFFS2] Fix potential memory leak of dead xattrs on unmount. · 2ad8ee71
      David Woodhouse 提交于
      An xattr_datum which ends up orphaned should be freed by the GC 
      thread. But if we umount before the GC thread is finished, or if we 
      mount read-only and the GC thread never runs, they might never be 
      freed. Clean them up during unmount, if there are any left.
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      2ad8ee71
    • D
      [JFFS2] Fix BUG() caused by failing to discard xattrs on deleted files. · 8ae5d312
      David Woodhouse 提交于
      When we cannot mark nodes as obsolete, such as on NAND flash, we end up 
      having to delete inodes with !nlink in jffs2_build_remove_unlinked_inode().
      However, jffs2_build_xattr_subsystem() runs later than this, and will
      attach an xref to the dead inode. Then later when the last nodes of that
      dead inode are erased we hit a BUG() in jffs2_del_ino_cache() 
      because we're not supposed to get there with an xattr still attached to 
      the inode which is being killed.
      
      The simple fix is to refrain from attaching xattrs to inodes with zero 
      nlink, in jffs2_build_xattr_subsystem(). It's it's OK to trust nlink 
      here because the file system isn't actually mounted yet, so there's no 
      chance that a zero-nlink file could actually be alive still because 
      it's open.
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      8ae5d312
  4. 11 5月, 2007 2 次提交
  5. 09 5月, 2007 5 次提交
  6. 08 5月, 2007 3 次提交
  7. 07 5月, 2007 1 次提交
    • D
      [JFFS2] Remove another bogus optimisation in jffs2_add_tn_to_tree() · fcf3cafb
      David Woodhouse 提交于
      We attempted to insert new nodes into the tree by just using
      rb_replace_node to let them replace an earlier node which they
      completely overlapped. However, that could place the new node into the
      wrong place in the tree, since its start could be node only before the
      start of the victim, but before the node _before_ the victim in the tree
      (if that previous node actually ends _after_ the new node, thus isn't
      entirely overlapped and wasn't itself chosen to be the victim).
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      fcf3cafb
  8. 06 5月, 2007 1 次提交
    • D
      [JFFS2] Remove broken insert_point optimisation in jffs2_add_tn_to_tree() · 96dd8d25
      David Woodhouse 提交于
      The original code would remember, during the first pass over the tree,
      a suitable place to start the insertion from when we eventually come
      to add a new node.
      
      The optimisation was broken, and we sometimes ended up inserting a new
      node in the wrong place because we started the insertion from the wrong
      point.
      
      Just ditch the optimisation and start the insertion from the root of the
      tree, for now. I'll try it again when I'm feeling cleverer.
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      96dd8d25
  9. 05 5月, 2007 2 次提交
  10. 03 5月, 2007 2 次提交
  11. 02 5月, 2007 7 次提交
  12. 28 4月, 2007 13 次提交