Jeff Frost <jeff(at)pgexperts(dot)com> writes:
> and I've got 81 more that do not contain bufmgr.c and are also not block on
> LWLockAcquire.
Hm ... no smoking gun in what you showed so far. I also took another
look through 9.1 bufmgr.c, and I'm darned if I can see any code path
there that holds a buffer mapping lock for any long interval.
One possible theory is that you're using pg_buffercache_pages(), which
does take all those locks. It tries its best to not hold them long,
but with a sufficiently large buffer cache there could be an issue.
(What is the shared_buffers setting on this installation, anyway?)
regards, tom lane