• David Teigland's avatar
    dlm: make plock operation killable · 901025d2
    David Teigland authored
    Allow processes blocked on plock requests to be interrupted
    when they are killed.  This leaves the problem of cleaning
    up the lock state in userspace.  This has three parts:
    
    1. Add a flag to unlock operations sent to userspace
    indicating the file is being closed.  Userspace will
    then look for and clear any waiting plock operations that
    were abandoned by an interrupted process.
    
    2. Queue an unlock-close operation (like in 1) to clean up
    userspace from an interrupted plock request.  This is needed
    because the vfs will not send a cleanup-unlock if it sees no
    locks on the file, which it won't if the interrupted operation
    was the only one.
    
    3. Do not use replies from userspace for unlock-close operations
    because they are unnecessary (they are just cleaning up for the
    process which did not make an unlock call).  This also simplifies
    the new unlock-close generated from point 2.
    Signed-off-by: default avatarDavid Teigland <teigland@redhat.com>
    901025d2
plock.c 11.4 KB