DragonFly BSD
DragonFly commits List (threaded) for 2010-03
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: HAMMER VFS - Hack cursor iterator when unlocked cursor moved to parent


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 15 Mar 2010 10:50:19 -0700 (PDT)

commit 6dc17446feb14cbca471e4eecf2519d215f5054d
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Sat Mar 13 21:16:38 2010 -0800

    HAMMER VFS - Hack cursor iterator when unlocked cursor moved to parent
    
    * It is possible to reverse-index a cursor while it is unlocked due to
      a node deletion moving cursors on that node to the parent, and a
      subsequent insertion then inserting new elements between the cursor's
      current position and its expected iteration range.
    
    * Detect the case with a new flag (hack!) HAMMER_CURSOR_ITERATE_CHECK
      and just iterate past the elements outside the iteration range in
      this case.
    
    Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>

Summary of changes:
 sys/vfs/hammer/hammer_btree.c  |   89 ++++++++++++++++++++++++++++++++++-----
 sys/vfs/hammer/hammer_cursor.c |   10 ++++-
 sys/vfs/hammer/hammer_cursor.h |    1 +
 3 files changed, 87 insertions(+), 13 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/6dc17446feb14cbca471e4eecf2519d215f5054d


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]