*/
/*
* This file is part of Lustre, http://www.lustre.org/
- * Lustre is a trademark of Sun Microsystems, Inc.
*
* lnet/selftest/console.h
*
#ifndef __LST_CONSOLE_H__
#define __LST_CONSOLE_H__
+#include <linux/uaccess.h>
#include <libcfs/libcfs.h>
-#include <lnet/lnet.h>
#include <lnet/lib-types.h>
-#include <lnet/lnetst.h>
#include "selftest.h"
#include "conrpc.h"
int nd_ref; /* reference count */
int nd_state; /* state of the node */
int nd_timeout; /* session timeout */
- cfs_time_t nd_stamp; /* timestamp of last replied RPC */
+ ktime_t nd_stamp; /* last RPC reply timestamp */
struct lstcon_rpc nd_ping; /* ping rpc */
};
struct lstcon_session {
struct mutex ses_mutex; /* only 1 thread in session */
- struct lst_sid ses_id; /* global session id */
- int ses_key; /* local session key */
+ struct lst_session_id ses_id; /* global session id */
+ u32 ses_key; /* local session key */
int ses_state; /* state of session */
int ses_timeout; /* timeout in seconds */
time64_t ses_laststamp; /* last operation stamp (seconds) */
extern int lstcon_session_match(struct lst_sid sid);
extern int lstcon_session_new(char *name, int key, unsigned version,
- int timeout, int flags, struct lst_sid __user *sid_up);
-extern int lstcon_session_info(struct lst_sid __user *sid_up, int __user *key,
- unsigned __user *verp,
- struct lstcon_ndlist_ent __user *entp,
- char __user *name_up, int len);
+ int timeout, int flags);
extern int lstcon_session_end(void);
extern int lstcon_session_debug(int timeout,
struct list_head __user *result_up);
struct list_head __user *result_up);
extern int lstcon_group_add(char *name);
extern int lstcon_group_del(char *name);
+void lstcon_group_addref(struct lstcon_group *grp);
+void lstcon_group_decref(struct lstcon_group *grp);
+int lstcon_group_find(const char *name, struct lstcon_group **grpp);
extern int lstcon_group_clean(char *name, int args);
extern int lstcon_group_refresh(char *name, struct list_head __user *result_up);
extern int lstcon_nodes_add(char *name, int nnd,
extern int lstcon_group_info(char *name, struct lstcon_ndlist_ent __user *gent_up,
int *index_p, int *ndent_p,
struct lstcon_node_ent __user *ndents_up);
-extern int lstcon_group_list(int idx, int len, char __user *name_up);
extern int lstcon_batch_add(char *name);
extern int lstcon_batch_run(char *name, int timeout,
struct list_head __user *result_up);
void *param, int paramlen, int *retp,
struct list_head __user *result_up);
+int lstcon_ioctl_entry(struct notifier_block *nb,
+ unsigned long cmd, void *vdata);
+
int lstcon_console_init(void);
int lstcon_console_fini(void);
+int lstcon_init_netlink(void);
+void lstcon_fini_netlink(void);
+
#endif