useful workaround and analysis of vnode-backed md deadlock

Brian F. Feldman green at freebsd.org
Mon Oct 20 15:35:00 PDT 2003


"Peter Edwards" <pmedwards at eircom.net> wrote:
> Once the running buffer space exceeds a high threshold, the scheduler
> is blocked, to be awakened when completed async writes bring it
> under the low threshold. However, a large chunk of the running buf
> space is sitting queued for the md thread to process. The md thread
> can't continue without the vnode lock, so the running buffer space
> will not fall, and the bufdaemon cannot continue without running
> buffer space, so will never release the vnode lock.

This coincides with what I just discovered on my system, as well; did you 
try the patch from my post several days ago that just excludes the buffer 
flushing daemons from being used to wait for runningbufspace starvation to 
end?

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> green at FreeBSD.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\




More information about the freebsd-current mailing list