]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
staging/lustre/server: use unified request handler for MGS
authorMikhail Pershin <tappro@whamcloud.com>
Tue, 26 Nov 2013 02:04:55 +0000 (10:04 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 26 Nov 2013 03:08:16 +0000 (19:08 -0800)
- Unify request handler. It finds target for particular request and
  calls appropriate handler for it. Generic handlers are moved to
  the unified target code. The tgt_session_info is introduced to
  store all request-related data and passed to all handlers.
- Pack reply in llog server functions early and use err_serious()
- remove obsoleted llog_origin_handle_cancel(), it is not used
  anymore
- remove push_ctxt/pop_ctxt from llog server function, it is based
  on OSD now.

Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-2145
Lustre-change: http://review.whamcloud.com/4826
Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Signed-off-by: Peng Tao <bergwolf@gmail.com>
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/include/lustre_req_layout.h
drivers/staging/lustre/lustre/include/obd_support.h
drivers/staging/lustre/lustre/ptlrpc/layout.c
drivers/staging/lustre/lustre/ptlrpc/lproc_ptlrpc.c

index f4d3820865f125670827e57bc87eb66f3dbebc04..28325693fc11019e3e17e2d9bd0e25e744c6a0fd 100644 (file)
@@ -245,6 +245,8 @@ extern struct req_format RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK;
 extern struct req_format RQF_LLOG_ORIGIN_HANDLE_READ_HEADER;
 extern struct req_format RQF_LLOG_ORIGIN_CONNECT;
 
+extern struct req_format RQF_CONNECT;
+
 extern struct req_msg_field RMF_GENERIC_DATA;
 extern struct req_msg_field RMF_PTLRPC_BODY;
 extern struct req_msg_field RMF_MDT_BODY;
index 9697e7faff2fddbb62e484121e7186adcab4077c..825a0c95c585a25d8c421b0c5864e9745835330d 100644 (file)
@@ -416,6 +416,13 @@ int obd_alloc_fail(const void *ptr, const char *name, const char *type,
 #define OBD_FAIL_MGC_PAUSE_PROCESS_LOG   0x903
 #define OBD_FAIL_MGS_PAUSE_REQ    0x904
 #define OBD_FAIL_MGS_PAUSE_TARGET_REG    0x905
+#define OBD_FAIL_MGS_CONNECT_NET        0x906
+#define OBD_FAIL_MGS_DISCONNECT_NET     0x907
+#define OBD_FAIL_MGS_SET_INFO_NET       0x908
+#define OBD_FAIL_MGS_EXCEPTION_NET      0x909
+#define OBD_FAIL_MGS_TARGET_REG_NET     0x90a
+#define OBD_FAIL_MGS_TARGET_DEL_NET     0x90b
+#define OBD_FAIL_MGS_CONFIG_READ_NET    0x90c
 
 #define OBD_FAIL_QUOTA_DQACQ_NET                       0xA01
 #define OBD_FAIL_QUOTA_EDQUOT      0xA02
index 504682d2eefa69147acf92d9aed357593fe029a9..4d6ac68676e055cd174cd66c30177a241caa5fd3 100644 (file)
@@ -738,7 +738,8 @@ static struct req_format *req_formats[] = {
        &RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK,
        &RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK,
        &RQF_LLOG_ORIGIN_HANDLE_READ_HEADER,
-       &RQF_LLOG_ORIGIN_CONNECT
+       &RQF_LLOG_ORIGIN_CONNECT,
+       &RQF_CONNECT,
 };
 
 struct req_msg_field {
@@ -1504,6 +1505,10 @@ struct req_format RQF_LLOG_ORIGIN_CONNECT =
        DEFINE_REQ_FMT0("LLOG_ORIGIN_CONNECT", llogd_conn_body_only, empty);
 EXPORT_SYMBOL(RQF_LLOG_ORIGIN_CONNECT);
 
+struct req_format RQF_CONNECT =
+       DEFINE_REQ_FMT0("CONNECT", obd_connect_client, obd_connect_server);
+EXPORT_SYMBOL(RQF_CONNECT);
+
 struct req_format RQF_OST_CONNECT =
        DEFINE_REQ_FMT0("OST_CONNECT",
                        obd_connect_client, obd_connect_server);
index 65451f77e78242859f77c8a84390c8f53f2b2d94..1be978609c593d412ec201361c93be8815a7fb2c 100644 (file)
@@ -114,10 +114,10 @@ struct ll_rpc_opcode {
        { MGS_SET_INFO,     "mgs_set_info" },
        { MGS_CONFIG_READ,  "mgs_config_read" },
        { OBD_PING,      "obd_ping" },
-       { OBD_LOG_CANCEL,   "llog_origin_handle_cancel" },
+       { OBD_LOG_CANCEL,       "llog_cancel" },
        { OBD_QC_CALLBACK,  "obd_quota_callback" },
        { OBD_IDX_READ,     "dt_index_read" },
-       { LLOG_ORIGIN_HANDLE_CREATE,     "llog_origin_handle_create" },
+       { LLOG_ORIGIN_HANDLE_CREATE,     "llog_origin_handle_open" },
        { LLOG_ORIGIN_HANDLE_NEXT_BLOCK, "llog_origin_handle_next_block" },
        { LLOG_ORIGIN_HANDLE_READ_HEADER,"llog_origin_handle_read_header" },
        { LLOG_ORIGIN_HANDLE_WRITE_REC,  "llog_origin_handle_write_rec" },