blob: 82aadd32c2b8bc96abe653b0845b93cc497a6a8a [file] [log] [blame]
Peng Taod7e09d02013-05-02 16:46:55 +08001/*
2 * GPL HEADER START
3 *
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 only,
8 * as published by the Free Software Foundation.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License version 2 for more details (a copy is included
14 * in the LICENSE file that accompanied this code).
15 *
16 * You should have received a copy of the GNU General Public License
17 * version 2 along with this program; If not, see
Oleg Drokin6a5b99a2016-06-14 23:33:40 -040018 * http://www.gnu.org/licenses/gpl-2.0.html
Peng Taod7e09d02013-05-02 16:46:55 +080019 *
Peng Taod7e09d02013-05-02 16:46:55 +080020 * GPL HEADER END
21 */
22/*
23 * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
24 * Use is subject to license terms.
25 *
Andreas Dilger1dc563a2015-11-08 18:09:37 -050026 * Copyright (c) 2011, 2015, Intel Corporation.
Peng Taod7e09d02013-05-02 16:46:55 +080027 */
28/*
29 * This file is part of Lustre, http://www.lustre.org/
30 * Lustre is a trademark of Sun Microsystems, Inc.
31 *
32 * lustre/include/lustre_param.h
33 *
34 * User-settable parameter keys
35 *
36 * Author: Nathan Rutman <nathan@clusterfs.com>
37 */
38
39#ifndef _LUSTRE_PARAM_H
40#define _LUSTRE_PARAM_H
41
42/** \defgroup param param
43 *
44 * @{
45 */
46
47/* For interoperability */
48struct cfg_interop_param {
49 char *old_param;
50 char *new_param;
51};
52
53/* obd_config.c */
54int class_find_param(char *buf, char *key, char **valp);
Peng Taod7e09d02013-05-02 16:46:55 +080055int class_parse_nid(char *buf, lnet_nid_t *nid, char **endh);
56int class_parse_nid_quiet(char *buf, lnet_nid_t *nid, char **endh);
Peng Taod7e09d02013-05-02 16:46:55 +080057
Peng Taod7e09d02013-05-02 16:46:55 +080058/****************** User-settable parameter keys *********************/
59/* e.g.
60 tunefs.lustre --param="failover.node=192.168.0.13@tcp0" /dev/sda
61 lctl conf_param testfs-OST0000 failover.node=3@elan,192.168.0.3@tcp0
62 ... testfs-MDT0000.lov.stripesize=4M
63 ... testfs-OST0000.ost.client_cache_seconds=15
64 ... testfs.sys.timeout=<secs>
65 ... testfs.llite.max_read_ahead_mb=16
66*/
67
68/* System global or special params not handled in obd's proc
69 * See mgs_write_log_sys()
70 */
71#define PARAM_TIMEOUT "timeout=" /* global */
72#define PARAM_LDLM_TIMEOUT "ldlm_timeout=" /* global */
73#define PARAM_AT_MIN "at_min=" /* global */
74#define PARAM_AT_MAX "at_max=" /* global */
75#define PARAM_AT_EXTRA "at_extra=" /* global */
76#define PARAM_AT_EARLY_MARGIN "at_early_margin=" /* global */
77#define PARAM_AT_HISTORY "at_history=" /* global */
78#define PARAM_JOBID_VAR "jobid_var=" /* global */
79#define PARAM_MGSNODE "mgsnode=" /* only at mounttime */
80#define PARAM_FAILNODE "failover.node=" /* add failover nid */
81#define PARAM_FAILMODE "failover.mode=" /* initial mount only */
82#define PARAM_ACTIVE "active=" /* activate/deactivate */
83#define PARAM_NETWORK "network=" /* bind on nid */
84#define PARAM_ID_UPCALL "identity_upcall=" /* identity upcall */
85
86/* Prefixes for parameters handled by obd's proc methods (XXX_process_config) */
87#define PARAM_OST "ost."
Emoly Liu882b0a12016-04-28 12:07:36 -040088#define PARAM_OSD "osd."
Peng Taod7e09d02013-05-02 16:46:55 +080089#define PARAM_OSC "osc."
90#define PARAM_MDT "mdt."
91#define PARAM_MDD "mdd."
92#define PARAM_MDC "mdc."
93#define PARAM_LLITE "llite."
94#define PARAM_LOV "lov."
95#define PARAM_LOD "lod."
96#define PARAM_OSP "osp."
97#define PARAM_SYS "sys." /* global */
98#define PARAM_SRPC "srpc."
99#define PARAM_SRPC_FLVR "srpc.flavor."
100#define PARAM_SRPC_UDESC "srpc.udesc.cli2mdt"
101#define PARAM_SEC "security."
102#define PARAM_QUOTA "quota." /* global */
103
104/** @} param */
105
106#endif /* _LUSTRE_PARAM_H */