--- src/sys/kern/uipc_usrreq.c 2006/05/26 02:26:01 1.26 +++ src/sys/kern/uipc_usrreq.c 2006/09/02 16:52:54 1.26.2.1 @@ -1380,10 +1380,10 @@ unp_mark(struct file *fp, void *data) if (info->locked_fp != fp) spin_lock_wr(&fp->f_spin); - if (fp->f_flag & FMARK) - return; - ++info->defer; - fp->f_flag |= (FMARK|FDEFER); + if ((fp->f_flag & FMARK) == 0) { + ++info->defer; + fp->f_flag |= (FMARK|FDEFER); + } if (info->locked_fp != fp) spin_unlock_wr(&fp->f_spin); }