1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00
samba-mirror/source3/locking
Ralph Boehme 06891c11d2 s3/locking: add fetch_share_mode_send/recv
The boolean out parameter "queued" tells the caller whether the
async request is blocked in a full send queue:

false := request is dispatched
true  := send queue is full, request waiting to be dispatched

This is useful in a clustered Samba environment where the async dbwrap
request is sent over a socket to the local ctdbd.

If the send queue is full and the caller was issuing multiple async
dbwrap requests in a loop, the caller knows it's probably time to stop
sending requests for now and try again later.

This will be used in subsequent commits in
smbd_smb2_query_directory_send() when implementing async write time
updates. Directories may contain umpteen files so we send many requests
to ctdb without going through tevent and reading the responses which
has the potential to deadlock.

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
2017-04-18 22:54:16 +02:00
..
brlock.c lib: Add lib/util/server_id.h 2017-01-22 18:30:11 +01:00
leases_db.c leases_db: don't leak lock_path onto talloc tos 2015-01-12 19:22:30 +01:00
leases_db.h s3:locking: Change the data model for leases_db to cope with dynamic path renames. 2014-12-09 03:44:04 +01:00
leases_util.c s3: locking: Move two leases functions into a new file. 2017-03-15 16:14:08 +01:00
locking.c s3: locking: Update oplock optimization for the leases era ! 2017-03-15 20:04:32 +01:00
posix.c lib: Add lib/util/server_id.h 2017-01-22 18:30:11 +01:00
proto.h s3/locking: add fetch_share_mode_send/recv 2017-04-18 22:54:16 +02:00
share_mode_lock.c s3/locking: add fetch_share_mode_send/recv 2017-04-18 22:54:16 +02:00