linux_dsm_epyc7002/include
Marc Eshel 2beb6614f5 locks: add fl_grant callback for asynchronous lock return
Acquiring a lock on a cluster filesystem may require communication with
remote hosts, and to avoid blocking lockd or nfsd threads during such
communication, we allow the results to be returned asynchronously.

When a ->lock() call needs to block, the file system will return
-EINPROGRESS, and then later return the results with a call to the
routine in the fl_grant field of the lock_manager_operations struct.

This differs from the case when ->lock returns -EAGAIN to a blocking
lock request; in that case, the filesystem calls fl_notify when the lock
is granted, and the caller retries the original lock.  So while
fl_notify is merely a hint to the caller that it should retry, fl_grant
actually communicates the final result of the lock operation (with the
lock already acquired in the succesful case).

Therefore fl_grant takes a lock, a status and, for the test lock case, a
conflicting lock.  We also allow fl_grant to return an error to the
filesystem, to handle the case where the fl_grant requests arrives after
the lock manager has already given up waiting for it.

Signed-off-by: Marc Eshel <eshel@almaden.ibm.com>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
2007-05-06 20:38:49 -04:00
..
acpi
asm-alpha
asm-arm [ARM] 4298/1: fix memory barriers for DMA coherent and SMP platforms 2007-04-01 22:38:36 +01:00
asm-arm26
asm-avr32
asm-cris
asm-frv
asm-generic [PATCH] Proper fix for highmem kmap_atomic functions for VMI for 2.6.21 2007-04-08 19:47:55 -07:00
asm-h8300
asm-i386 [PATCH] Proper fix for highmem kmap_atomic functions for VMI for 2.6.21 2007-04-08 19:47:55 -07:00
asm-ia64 [IA64] SGI Altix : fix pcibr_dmamap_ate32() bug 2007-04-06 15:38:12 -07:00
asm-m32r
asm-m68k
asm-m68knommu
asm-mips [MIPS] SMTC: Fix recursion in instant IPI replay code. 2007-03-29 23:46:36 +01:00
asm-parisc
asm-powerpc [POWERPC] qe: ucc_slow.guemr is in the wrong place 2007-03-29 14:33:56 -05:00
asm-ppc
asm-s390
asm-sh sh: Trivial fix for hp6xx build. 2007-03-28 19:45:59 +09:00
asm-sh64
asm-sparc [SPARC]: Add unsigned to unused bit field in a.out.h 2007-04-02 14:26:21 -07:00
asm-sparc64 [SPARC]: Add unsigned to unused bit field in a.out.h 2007-04-02 14:26:21 -07:00
asm-um [PATCH] uml: fix unreasonably long udelay 2007-04-02 10:06:08 -07:00
asm-v850
asm-x86_64 [PATCH] x86_64 irq: Fix comments after changing IRQ0_VECTOR from 0x20 to 0x30 2007-03-29 08:16:23 -07:00
asm-xtensa
crypto
keys
linux locks: add fl_grant callback for asynchronous lock return 2007-05-06 20:38:49 -04:00
math-emu
media
mtd
net [IFB]: Fix crash on input device removal 2007-03-29 11:46:52 -07:00
pcmcia
rdma
rxrpc
scsi
sound
video
Kbuild