aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/fs/afs/callback.c
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2018-04-09 21:12:31 +0100
committerDavid Howells <dhowells@redhat.com>2018-04-09 21:12:31 +0100
commit5cf9dd55a0ec26428f2824aadd16bfa305a5b603 (patch)
tree4a782bb849b5eefc8ef797bf4c68515e84d35ed4 /fs/afs/callback.c
parentafs: Don't over-increment the cell usage count when pinning it (diff)
downloadwireguard-linux-5cf9dd55a0ec26428f2824aadd16bfa305a5b603.tar.xz
wireguard-linux-5cf9dd55a0ec26428f2824aadd16bfa305a5b603.zip
afs: Prospectively look up extra files when doing a single lookup
When afs_lookup() is called, prospectively look up the next 50 uncached fids also from that same directory and cache the results, rather than just looking up the one file requested. This allows us to use the FS.InlineBulkStatus RPC op to increase efficiency by fetching up to 50 file statuses at a time. Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'fs/afs/callback.c')
-rw-r--r--fs/afs/callback.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/afs/callback.c b/fs/afs/callback.c
index bf082c719645..6049ca837498 100644
--- a/fs/afs/callback.c
+++ b/fs/afs/callback.c
@@ -187,7 +187,7 @@ static void afs_break_one_callback(struct afs_server *server,
* allow the fileserver to break callback promises
*/
void afs_break_callbacks(struct afs_server *server, size_t count,
- struct afs_callback callbacks[])
+ struct afs_callback_break *callbacks)
{
_enter("%p,%zu,", server, count);
@@ -199,9 +199,9 @@ void afs_break_callbacks(struct afs_server *server, size_t count,
callbacks->fid.vid,
callbacks->fid.vnode,
callbacks->fid.unique,
- callbacks->version,
- callbacks->expiry,
- callbacks->type
+ callbacks->cb.version,
+ callbacks->cb.expiry,
+ callbacks->cb.type
);
afs_break_one_callback(server, &callbacks->fid);
}