/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2024 Mike Snitzer * Copyright (C) 2024 NeilBrown */ #ifndef __LINUX_NFSLOCALIO_H #define __LINUX_NFSLOCALIO_H #include #include #include #include #include #include /* * Useful to allow a client to negotiate if localio * possible with its server. * * See Documentation/filesystems/nfs/localio.rst for more detail. */ typedef struct { uuid_t uuid; struct list_head list; struct net *net; /* nfsd's network namespace */ struct auth_domain *dom; /* auth_domain for localio */ } nfs_uuid_t; void nfs_uuid_begin(nfs_uuid_t *); void nfs_uuid_end(nfs_uuid_t *); void nfs_uuid_is_local(const uuid_t *, struct list_head *, struct net *, struct auth_domain *, struct module *); void nfs_uuid_invalidate_clients(struct list_head *list); void nfs_uuid_invalidate_one_client(nfs_uuid_t *nfs_uuid); #endif /* __LINUX_NFSLOCALIO_H */