⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qswlnd_modparams.c

📁 非常经典的一个分布式系统
💻 C
字号:
/* * Copyright (C) 2002-2004 Cluster File Systems, Inc. *   Author: Eric Barton <eric@bartonsoftware.com> * * This file is part of Portals, http://www.lustre.org * * Portals is free software; you can redistribute it and/or * modify it under the terms of version 2 of the GNU General Public * License as published by the Free Software Foundation. * * Portals is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Portals; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * */#include "qswlnd.h"static int tx_maxcontig = (1<<10);CFS_MODULE_PARM(tx_maxcontig, "i", int, 0444,                "maximum payload to de-fragment");static int ntxmsgs = 512;CFS_MODULE_PARM(ntxmsgs, "i", int, 0444,                "# tx msg buffers");static int credits = 128;CFS_MODULE_PARM(credits, "i", int, 0444,                "# concurrent sends");static int peer_credits = 8;CFS_MODULE_PARM(peer_credits, "i", int, 0444,                "# per-peer concurrent sends");static int nrxmsgs_large = 64;CFS_MODULE_PARM(nrxmsgs_large, "i", int, 0444,                "# 'large' rx msg buffers");static int ep_envelopes_large = 256;CFS_MODULE_PARM(ep_envelopes_large, "i", int, 0444,                "# 'large' rx msg envelope buffers");static int nrxmsgs_small = 256;CFS_MODULE_PARM(nrxmsgs_small, "i", int, 0444,                "# 'small' rx msg buffers");static int ep_envelopes_small = 2048;CFS_MODULE_PARM(ep_envelopes_small, "i", int, 0444,                "# 'small' rx msg envelope buffers");static int optimized_puts = (32<<10);CFS_MODULE_PARM(optimized_puts, "i", int, 0644,                "zero-copy puts >= this size");static int optimized_gets = 2048;CFS_MODULE_PARM(optimized_gets, "i", int, 0644,                "zero-copy gets >= this size");#if KQSW_CKSUMstatic int inject_csum_error = 0;CFS_MODULE_PARM(inject_csum_error, "i", int, 0644,                "test checksumming");#endifkqswnal_tunables_t kqswnal_tunables = {        .kqn_tx_maxcontig       = &tx_maxcontig,        .kqn_ntxmsgs            = &ntxmsgs,        .kqn_credits            = &credits,        .kqn_peercredits        = &peer_credits,        .kqn_nrxmsgs_large      = &nrxmsgs_large,        .kqn_ep_envelopes_large = &ep_envelopes_large,        .kqn_nrxmsgs_small      = &nrxmsgs_small,        .kqn_ep_envelopes_small = &ep_envelopes_small,        .kqn_optimized_puts     = &optimized_puts,        .kqn_optimized_gets     = &optimized_gets,#if KQSW_CKSUM        .kqn_inject_csum_error  = &inject_csum_error,#endif};#if defined(CONFIG_SYSCTL) && !CFS_SYSFS_MODULE_PARMstatic cfs_sysctl_table_t kqswnal_ctl_table[] = {        {                .ctl_name = 1,                .procname = "tx_maxcontig",                .data     = &tx_maxcontig,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 2,                .procname = "ntxmsgs",                .data     = &ntxmsgs,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 3,                .procname = "credits",                .data     = &credits,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 4,                .procname = "peer_credits",                .data     = &peer_credits,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 5,                .procname = "nrxmsgs_large",                .data     = &nrxmsgs_large,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 6,                .procname = "ep_envelopes_large",                .data     = &ep_envelopes_large,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 7,                .procname = "nrxmsgs_small",                .data     = &nrxmsgs_small,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 8,                .procname = "ep_envelopes_small",                .data     = &ep_envelopes_small,                .maxlen   = sizeof (int),                .mode     = 0444,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 9,                .procname = "optimized_puts",                .data     = &optimized_puts,                .maxlen   = sizeof (int),                .mode     = 0644,                .proc_handler = &proc_dointvec        },        {                .ctl_name = 10,                .procname = "optimized_gets",                .data     = &optimized_gets,                .maxlen   = sizeof (int),                .mode     = 0644,                .proc_handler = &proc_dointvec        },#if KQSW_CKSUM        {                .ctl_name = 11,                .procname = "inject_csum_error",                .data     = &inject_csum_error,                .maxlen   = sizeof (int),                .mode     = 0644,                .proc_handler = &proc_dointvec        },#endif        {0}};static cfs_sysctl_table_t kqswnal_top_ctl_table[] = {        {                .ctl_name = 201,                .procname = "qswnal",                .data     = NULL,                .maxlen   = 0,                .mode     = 0555,                .child    = kqswnal_ctl_table        },        {0}};intkqswnal_tunables_init (){        kqswnal_tunables.kqn_sysctl =                cfs_register_sysctl_table(kqswnal_top_ctl_table, 0);        if (kqswnal_tunables.kqn_sysctl == NULL)                CWARN("Can't setup /proc tunables\n");        return 0;}voidkqswnal_tunables_fini (){        if (kqswnal_tunables.kqn_sysctl != NULL)                cfs_unregister_sysctl_table(kqswnal_tunables.kqn_sysctl);}#elseintkqswnal_tunables_init (){        return 0;}voidkqswnal_tunables_fini (){}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -