the test at fs.c:1233 is too late: mb->d->qid.path will already have been dereferenced. i've had fs break due to this. Reference: /n/sources/patch/applied/upas-fs-nil-test Date: Tue Feb 8 06:57:28 CET 2005 --- /sys/src/cmd/upas/fs/fs.c Tue Feb 8 06:55:23 2005 +++ /sys/src/cmd/upas/fs/fs.c Tue Feb 8 06:55:19 2005 @@ -1229,8 +1229,8 @@ continue; qlock(mb); - if(d->qid.path != mb->d->qid.path - || mb->d && d->qid.vers != mb->d->qid.vers){ + if(mb->d && (d->qid.path != mb->d->qid.path + || d->qid.vers != mb->d->qid.vers)){ free(d); break; }