diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2013-12-18 14:14:52 +0000 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2013-12-20 10:41:21 +0000 |
commit | dfd11184d894cd0a92397b25cac18831a1a6a5bc (patch) | |
tree | b9b52451fc269f124312b91d6da6a5c894f4e6b9 /lib/prio_heap.c | |
parent | 502be2a32f09f388e4ff34ef2e3ebcabbbb261da (diff) | |
download | blackbird-op-linux-dfd11184d894cd0a92397b25cac18831a1a6a5bc.tar.gz blackbird-op-linux-dfd11184d894cd0a92397b25cac18831a1a6a5bc.zip |
GFS2: Fix incorrect invalidation for DIO/buffered I/O
In patch 209806aba9d540dde3db0a5ce72307f85f33468f we allowed
local deferred locks to be granted against a cached exclusive
lock. That opened up a corner case which this patch now
fixes.
The solution to the problem is to check whether we have cached
pages each time we do direct I/O and if so to unmap, flush
and invalidate those pages. Since the glock state machine
normally does that for us, mostly the code will be a no-op.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'lib/prio_heap.c')
0 files changed, 0 insertions, 0 deletions