Commit bcef118e authored by Oleg Drokin's avatar Oleg Drokin Committed by Greg Kroah-Hartman
Browse files

staging/lustre/obdclass: Move AT controls from sysctl to sysfs



Adaptive Timeouts controls are being moved from /proc/sys/lustre
to /sys/fs/lustre

Signed-off-by: default avatarOleg Drokin <green@linuxhacker.ru>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9e7fa149
Loading
Loading
Loading
Loading
+10 −35
Original line number Diff line number Diff line
@@ -138,44 +138,14 @@ LUSTRE_RW_ATTR(max_dirty_mb);
LUSTRE_STATIC_UINT_ATTR(debug_peer_on_timeout, &obd_debug_peer_on_timeout);
LUSTRE_STATIC_UINT_ATTR(dump_on_timeout, &obd_dump_on_timeout);
LUSTRE_STATIC_UINT_ATTR(dump_on_eviction, &obd_dump_on_eviction);
LUSTRE_STATIC_UINT_ATTR(at_min, &at_min);
LUSTRE_STATIC_UINT_ATTR(at_max, &at_max);
LUSTRE_STATIC_UINT_ATTR(at_extra, &at_extra);
LUSTRE_STATIC_UINT_ATTR(at_early_margin, &at_early_margin);
LUSTRE_STATIC_UINT_ATTR(at_history, &at_history);

#ifdef CONFIG_SYSCTL
static struct ctl_table obd_table[] = {
	{
		.procname = "at_min",
		.data     = &at_min,
		.maxlen   = sizeof(int),
		.mode     = 0644,
		.proc_handler = &proc_dointvec,
	},
	{
		.procname = "at_max",
		.data     = &at_max,
		.maxlen   = sizeof(int),
		.mode     = 0644,
		.proc_handler = &proc_dointvec,
	},
	{
		.procname = "at_extra",
		.data     = &at_extra,
		.maxlen   = sizeof(int),
		.mode     = 0644,
		.proc_handler = &proc_dointvec,
	},
	{
		.procname = "at_early_margin",
		.data     = &at_early_margin,
		.maxlen   = sizeof(int),
		.mode     = 0644,
		.proc_handler = &proc_dointvec,
	},
	{
		.procname = "at_history",
		.data     = &at_history,
		.maxlen   = sizeof(int),
		.mode     = 0644,
		.proc_handler = &proc_dointvec,
	},
	{}
};

@@ -197,6 +167,11 @@ static struct attribute *lustre_attrs[] = {
	&lustre_sattr_debug_peer_on_timeout.u.attr,
	&lustre_sattr_dump_on_timeout.u.attr,
	&lustre_sattr_dump_on_eviction.u.attr,
	&lustre_sattr_at_min.u.attr,
	&lustre_sattr_at_max.u.attr,
	&lustre_sattr_at_extra.u.attr,
	&lustre_sattr_at_early_margin.u.attr,
	&lustre_sattr_at_history.u.attr,
	NULL,
};

+53 −0
Original line number Diff line number Diff line
@@ -90,6 +90,59 @@ Description:
		This is useful if yout debug buffer typically rolls over
		 by the time you notice the eviction event.

What:		/sys/fs/lustre/at_min
Date:		July 2015
Contact:	"Oleg Drokin" <oleg.drokin@intel.com>
Description:
		Controls minimum adaptive timeout in seconds. If you encounter
		a case where clients timeout due to server-reported processing
		time being too short, you might consider increasing this value.
		One common case of this if the underlying network has
		unpredictable long delays.
		Default: 0

What:		/sys/fs/lustre/at_max
Date:		July 2015
Contact:	"Oleg Drokin" <oleg.drokin@intel.com>
Description:
		Controls maximum adaptive timeout in seconds. If at_max timeout
		is reached for an RPC, the RPC will time out.
		Some genuinuely slow network hardware might warrant increasing
		this value.
		Setting this value to 0 disables Adaptive Timeouts
		functionality and old-style obd_timeout value is then used.
		Default: 600

What:		/sys/fs/lustre/at_extra
Date:		July 2015
Contact:	"Oleg Drokin" <oleg.drokin@intel.com>
Description:
		Controls how much extra time to request for unfinished requests
		in processing in seconds. Normally a server-side parameter, it
		is also used on the client for responses to various LDLM ASTs
		that are handled with a special server thread on the client.
		This is a way for the servers to ask the clients not to time
		out the request that reached current servicing time estimate
		yet and give it some more time.
		Default: 30

What:		/sys/fs/lustre/at_early_margin
Date:		July 2015
Contact:	"Oleg Drokin" <oleg.drokin@intel.com>
Description:
		Controls when to send the early reply for requests that are
		about to timeout as an offset to the estimated service time in
		seconds..
		Default: 5

What:		/sys/fs/lustre/at_history
Date:		July 2015
Contact:	"Oleg Drokin" <oleg.drokin@intel.com>
Description:
		Controls for how many seconds to remember slowest events
		encountered by adaptive timeouts code.
		Default: 600

What:		/sys/fs/lustre/llite/<fsname>-<uuid>/blocksize
Date:		May 2015
Contact:	"Oleg Drokin" <oleg.drokin@intel.com>