[OpenAFS-devel] ufs logging and solaris cache partitions

Derrick J Brashear shadow@dementia.org
Fri, 22 Nov 2002 15:06:03 -0500 (EST)


Fair warning, since it came up here at CMU yesterday.

If on your Solaris machines you have a mixed-use (as opposed to dedicated
to AFS cache only) partition which is ufs and mounted with -o logging, you
can hose yourself. kolya's summary is better than mine, so, quoting him:
--
Suppose you have one partition, /, with UFS logging.  process A mmap's
a file in AFS-space and writes it to local disk (but it's not page-faulted
in yet).  CacheTruncDaemon (or some other process) also goes to do a
write, and triggers a sync UFS transaction, flushing the log.  now CTD is
waiting for the sync transaction to end, while holding AFS locks.  the
sync trans waits for process A's file to get page-faulted, but the
page-fault is waiting for AFS locks held by the CTD.
--

Turn off logging, get a dedicated cache partition, or switch to memcache.

-D