I was unable to boot SMP hurd-amd64 reliably on my hardware platform or indeed virtual machine. Boot would hang close to login prompt when ext2fs server crashes with an exception. There was a page fault failure occurring with user code dereferencing a pointer whose address had been removed from the vm_map.
There are 2 instances of looping around 'struct rlock_list' where the next list item is potentially accessed after the current item has been freed. I've altered the for loops to while ones to manage the list traversal to avoid the free memory reads. There are a number of places where the code has changed from using continue to simply exiting the 'if else if' blocks. I've probably not exercised all of these instances in simple compilation testing but I no longer see evidence of this particular probleme. Mike.
