The function cfs_expand_nidlist() no longer exist for kernel
internals. We can move the function prototype from the UAPI
header to string.h which is a libcfs user land header.
The structure netstrfns that is defined in a UAPI header
has been adding user land only handling. Additional its
use struct list_head which will confuse reviewers since
kernel developers see this as a kernel only thing.
Lustre-change: https://review.whamcloud.com/39115
Lustre-commit:
062809b1313ac7000e3476c96cbbe5d017f10875
Test-Parameters: trivial
Change-Id: Ifc3c87f6d3237a94d282d009455ff389278e73ea
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/49777
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
#include <stdarg.h>
#include <linux/types.h>
+#include <linux/lnet/lnet-types.h>
#include <libcfs/util/list.h>
static inline
return ret;
}
+struct netstrfns {
+ __u32 nf_type;
+ char *nf_name;
+ char *nf_modname;
+ void (*nf_addr2str)(__u32 addr, char *str, size_t size);
+ int (*nf_str2addr)(const char *str, int nob, __u32 *addr);
+ int (*nf_parse_addrlist)(char *str, int len,
+ struct list_head *list);
+ int (*nf_print_addrlist)(char *buffer, int count,
+ struct list_head *list);
+ int (*nf_match_addr)(__u32 addr, struct list_head *list);
+ int (*nf_min_max)(struct list_head *nidlist, __u32 *min_nid,
+ __u32 *max_nid);
+ int (*nf_expand_addrrange)(struct list_head *addrranges,
+ __u32 *addrs, int max_addrs);
+};
/**
* Structure to represent NULL-less strings.
int cfs_ip_addr_range_gen(__u32 *ip_list, int count,
struct list_head *ip_addr_expr);
int cfs_ip_addr_match(__u32 addr, struct list_head *list);
+int cfs_expand_nidlist(struct list_head *nidlist, lnet_nid_t *lnet_nidlist,
+ int max_nids);
int cfs_abs_path(const char *request_path, char **resolved_path);
#endif
#define LNET_COOKIE_TYPE_BITS 2
#define LNET_COOKIE_MASK ((1ULL << LNET_COOKIE_TYPE_BITS) - 1ULL)
+struct netstrfns {
+ u32 nf_type;
+ char *nf_name;
+ char *nf_modname;
+ void (*nf_addr2str)(u32 addr, char *str, size_t size);
+ int (*nf_str2addr)(const char *str, int nob, u32 *addr);
+ int (*nf_parse_addrlist)(char *str, int len,
+ struct list_head *list);
+ int (*nf_print_addrlist)(char *buffer, int count,
+ struct list_head *list);
+ int (*nf_match_addr)(u32 addr, struct list_head *list);
+ int (*nf_min_max)(struct list_head *nidlist, u32 *min_nid,
+ u32 *max_nid);
+};
+
struct lnet_ni; /* forward ref */
struct socket;
int cfs_parse_nidlist(char *str, int len, struct list_head *list);
int cfs_print_nidlist(char *buffer, int count, struct list_head *list);
int cfs_match_nid(lnet_nid_t nid, struct list_head *list);
-int cfs_expand_nidlist(struct list_head *nidlist, lnet_nid_t *lnet_nidlist,
- int max_nids);
int cfs_ip_addr_parse(char *str, int len, struct list_head *list);
int cfs_ip_addr_match(__u32 addr, struct list_head *list);
int cfs_nidrange_find_min_max(struct list_head *nidlist, char *min_nid,
char *max_nid, __kernel_size_t nidstr_length);
-struct netstrfns {
- __u32 nf_type;
- char *nf_name;
- char *nf_modname;
- void (*nf_addr2str)(__u32 addr, char *str, __kernel_size_t size);
- int (*nf_str2addr)(const char *str, int nob, __u32 *addr);
- int (*nf_parse_addrlist)(char *str, int len,
- struct list_head *list);
- int (*nf_print_addrlist)(char *buffer, int count,
- struct list_head *list);
- int (*nf_match_addr)(__u32 addr, struct list_head *list);
- int (*nf_min_max)(struct list_head *nidlist, __u32 *min_nid,
- __u32 *max_nid);
- int (*nf_expand_addrrange)(struct list_head *addrranges,
- __u32 *addrs, int max_addrs);
-};
-
#endif /* _LNET_NIDSTRINGS_H */
#include <libcfs/libcfs.h>
#include <uapi/linux/lnet/nidstr.h>
+#include <lnet/lib-types.h>
/* max value for numeric network address */
#define MAX_NUMERIC_VALUE 0xffffffff