mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-22 02:17:36 -04:00
Add a new SUNRPC_CMD_CACHE_FLUSH generic netlink command that allows userspace to flush the sunrpc auth caches (ip_map and unix_gid) without writing to /proc/net/rpc/*/flush. An optional SUNRPC_A_CACHE_FLUSH_MASK u32 attribute selects which caches to flush (bit 1 = ip_map, bit 2 = unix_gid). If the attribute is omitted, all sunrpc caches are flushed. This is used by exportfs to replace its /proc-based cache_flush() with a netlink equivalent, with /proc fallback for older kernels. Signed-off-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
36 lines
1.2 KiB
C
36 lines
1.2 KiB
C
/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
|
|
/* Do not edit directly, auto-generated from: */
|
|
/* Documentation/netlink/specs/sunrpc_cache.yaml */
|
|
/* YNL-GEN kernel header */
|
|
/* To regenerate run: tools/net/ynl/ynl-regen.sh */
|
|
|
|
#ifndef _LINUX_SUNRPC_GEN_H
|
|
#define _LINUX_SUNRPC_GEN_H
|
|
|
|
#include <net/netlink.h>
|
|
#include <net/genetlink.h>
|
|
|
|
#include <uapi/linux/sunrpc_netlink.h>
|
|
|
|
/* Common nested types */
|
|
extern const struct nla_policy sunrpc_ip_map_nl_policy[SUNRPC_A_IP_MAP_EXPIRY + 1];
|
|
extern const struct nla_policy sunrpc_unix_gid_nl_policy[SUNRPC_A_UNIX_GID_EXPIRY + 1];
|
|
|
|
int sunrpc_nl_ip_map_get_reqs_dumpit(struct sk_buff *skb,
|
|
struct netlink_callback *cb);
|
|
int sunrpc_nl_ip_map_set_reqs_doit(struct sk_buff *skb, struct genl_info *info);
|
|
int sunrpc_nl_unix_gid_get_reqs_dumpit(struct sk_buff *skb,
|
|
struct netlink_callback *cb);
|
|
int sunrpc_nl_unix_gid_set_reqs_doit(struct sk_buff *skb,
|
|
struct genl_info *info);
|
|
int sunrpc_nl_cache_flush_doit(struct sk_buff *skb, struct genl_info *info);
|
|
|
|
enum {
|
|
SUNRPC_NLGRP_NONE,
|
|
SUNRPC_NLGRP_EXPORTD,
|
|
};
|
|
|
|
extern struct genl_family sunrpc_nl_family;
|
|
|
|
#endif /* _LINUX_SUNRPC_GEN_H */
|