X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Fmgc%2Flproc_mgc.c;h=ec4ba5eb4241fd1a84b3a5c1c52698826698ea98;hb=refs%2Fchanges%2F02%2F35802%2F3;hp=648b6e5b2eaeab3c4a39e72a0c6fe7eef9dc908a;hpb=b4d3116f44b6613a65ed259bf2f41c1eb41e2ba4;p=fs%2Flustre-release.git diff --git a/lustre/mgc/lproc_mgc.c b/lustre/mgc/lproc_mgc.c index 648b6e5..ec4ba5e 100644 --- a/lustre/mgc/lproc_mgc.c +++ b/lustre/mgc/lproc_mgc.c @@ -15,11 +15,7 @@ * * You should have received a copy of the GNU General Public License * version 2 along with this program; If not, see - * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. + * http://www.gnu.org/licenses/gpl-2.0.html * * GPL HEADER END */ @@ -27,7 +23,7 @@ * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. * - * Copyright (c) 2011, Intel Corporation. + * Copyright (c) 2011, 2017, Intel Corporation. */ /* * This file is part of Lustre, http://www.lustre.org/ @@ -41,32 +37,59 @@ #include #include "mgc_internal.h" -#ifdef LPROCFS +#ifdef CONFIG_PROC_FS + +LDEBUGFS_SEQ_FOPS_RO_TYPE(mgc, connect_flags); -LPROC_SEQ_FOPS_RO_TYPE(mgc, uuid); -LPROC_SEQ_FOPS_RO_TYPE(mgc, connect_flags); -LPROC_SEQ_FOPS_RO_TYPE(mgc, server_uuid); -LPROC_SEQ_FOPS_RO_TYPE(mgc, conn_uuid); -LPROC_SEQ_FOPS_RO_TYPE(mgc, import); -LPROC_SEQ_FOPS_RO_TYPE(mgc, state); +LDEBUGFS_SEQ_FOPS_RO_TYPE(mgc, server_uuid); -LPROC_SEQ_FOPS_WO_TYPE(mgc, ping); +LDEBUGFS_SEQ_FOPS_RO_TYPE(mgc, import); + +LDEBUGFS_SEQ_FOPS_RO_TYPE(mgc, state); static int mgc_ir_state_seq_show(struct seq_file *m, void *v) { return lprocfs_mgc_rd_ir_state(m, m->private); } -LPROC_SEQ_FOPS_RO(mgc_ir_state); -struct lprocfs_seq_vars lprocfs_mgc_obd_vars[] = { - { "uuid", &mgc_uuid_fops, 0, 0 }, - { "ping", &mgc_ping_fops, 0, 0222 }, - { "connect_flags", &mgc_connect_flags_fops,0, 0 }, - { "mgs_server_uuid", &mgc_server_uuid_fops, 0, 0 }, - { "mgs_conn_uuid", &mgc_conn_uuid_fops, 0, 0 }, - { "import", &mgc_import_fops, 0, 0 }, - { "state", &mgc_state_fops, 0, 0 }, - { "ir_state", &mgc_ir_state_fops, 0, 0 }, - { 0 } +LDEBUGFS_SEQ_FOPS_RO(mgc_ir_state); + +struct lprocfs_vars lprocfs_mgc_obd_vars[] = { + { .name = "connect_flags", + .fops = &mgc_connect_flags_fops }, + { .name = "mgs_server_uuid", + .fops = &mgc_server_uuid_fops }, + { .name = "import", + .fops = &mgc_import_fops }, + { .name = "state", + .fops = &mgc_state_fops }, + { .name = "ir_state", + .fops = &mgc_ir_state_fops }, + { NULL } }; -#endif /* LPROCFS */ +#endif /* CONFIG_PROC_FS */ + +LUSTRE_ATTR(mgs_conn_uuid, 0444, conn_uuid_show, NULL); +LUSTRE_RO_ATTR(conn_uuid); + +LUSTRE_RW_ATTR(ping); + +static struct attribute *mgc_attrs[] = { + &lustre_attr_mgs_conn_uuid.attr, + &lustre_attr_conn_uuid.attr, + &lustre_attr_ping.attr, + NULL, +}; + +int mgc_tunables_init(struct obd_device *obd) +{ + int rc; + + obd->obd_ktype.default_attrs = mgc_attrs; + obd->obd_vars = lprocfs_mgc_obd_vars; + rc = lprocfs_obd_setup(obd, true); + if (rc) + return rc; + + return sptlrpc_lprocfs_cliobd_attach(obd); +}