Martin Pieuchot wrote:
> On 09/01/20(Thu) 10:46, Alexander Bluhm wrote:
> > Without this diff my regress machines became so unstable, that they
> > often do not finish the test run.
> > 
> > With this diff, they run fine.  No regressions.
> 
> Sadly this is a workaround.  What is the issue?  We're missing a barrier
> during umount?  How does other BSDs solved that?
> 
> If your diff work because you changed a TAIL vs a HEAD insert and now
> how to reproduce it you could capture stack traces from the function
> doing the insert.  Is it insmntque()?  Could we prevent adding the vnode
> to the list if a dying flag is on the mount point?

I don't think that's possible. syncing the filesystem can cause more work to
be queued. If you prevent adding the vnode to the list, how will that work be
done?

The alternative would be to add another loop around the list processing. I
think that's worse because we don't know how many times to keep looping.

bluhm's diff is the best approach imo. ok me.

Reply via email to