summaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/locks.c
diff options
context:
space:
mode:
authorJoel Becker <joel.becker@oracle.com>2010-01-26 22:14:20 -0800
committerJoel Becker <joel.becker@oracle.com>2010-02-26 15:41:14 -0800
commit65b6f3403431cd43ef7b0dab679a50f770124a65 (patch)
tree3f9e8c88926fa3c3fe40bc8fab20dabd8496e307 /fs/ocfs2/locks.c
parent14a437c2b67aeee2a989a5d9c7e19094355d2fed (diff)
downloadblackbird-op-linux-65b6f3403431cd43ef7b0dab679a50f770124a65.tar.gz
blackbird-op-linux-65b6f3403431cd43ef7b0dab679a50f770124a65.zip
ocfs2_dlmfs: Use poll() to signify BASTs.
o2dlm's userspace filesystem is an easy way to use the DLM from userspace. It is intentionally simple. For example, it does not allow for asynchronous behavior or lock conversion. This is intentional to keep the interface simple. Because there is no asynchronous notification, there is no way for a process holding a lock to know another node needs the lock. This is the number one complaint of ocfs2_dlmfs users. Turns out, we can solve this very easily. We add poll() support to ocfs2_dlmfs. When a BAST is received, the lock's file descriptor will receive POLLIN. This is trivial to implement. Userdlm already has an appropriate waitqueue, and the lock knows when it is blocked. We add the "bast" capability to tell userspace this is available. Signed-off-by: Joel Becker <joel.becker@oracle.com> Acked-by: Mark Fasheh <mfasheh@suse.com> Signed-off-by: Joel Becker <joel.becker@oracle.com>
Diffstat (limited to 'fs/ocfs2/locks.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud