panic: assertion: hammer_btree_cmp(cursor->left_bound, &cursor->node->ondisk->elms[0].leaf.base) <= 0 in btree_split_leaf

Matthew Dillon dillon at apollo.backplane.com
Wed Mar 19 14:01:13 PDT 2008


:Hi.
:While trying to find a procedure to reliably reproduce the panic
:I reported last time, I caught a different panic (uploaded at
: ~y0netan1/crash/9/ on my leaf account).  I wrote the following shell
:script (make sure to edit variables DISKS and MOUNTPT before using this
:script or it may trash your system):
:  #!/bin/sh -ex
:  DISKS="/dev/ad0s1f"
:  MOUNTPT=/mnt/HAMMER
:
:  cd /
:  newfs_hammer -L TEST $DISKS
:  for i in `seq 1 100`; do
:..
:And the panic is triggered by rm command.
:I'll try to see if it's possible to reproduce the last one without
:unmounting then mounting the HAMMER fs.
:
:Cheers.

    I believe I have fixed this panic.  hammer_make_separator() had a bug
    in it.

    There is still an issue with the node ref count on umount.

    Please continue to life-test the code.  The reblocking code
    (hammer reblock /mnt) should work now, as should the pruning code
    (e.g. hammer prune /mnt everything).

    The filesystem full case is still not handled and will cause bad things
    to happen.  The undo code isn't finished yet either but it is getting
    there (it's writing stuff out but not setting the sequence number and
    not trying to recover-on-mount yet).

					-Matt
					Matthew Dillon 
					<dillon at backplane.com>





More information about the Kernel mailing list