GSCHED(8) BSD System Manager's Manual GSCHED(8)NAMEgsched — control utility for disk scheduler GEOM class
SYNOPSISgsched create [-v] [-a algorithm] provider ...
gsched insert [-v] [-a algorithm] provider ...
gsched configure [-v] [-a algorithm] node ...
gsched destroy [-fv] node ...
gsched reset [-v] node ...
gsched { list | status | load | unload }
DESCRIPTION
The gsched utility (also callable as geom sched ...) changes the schedul‐
ing policy of the requests going to a provider.
The first argument to gsched indicates an action to be performed:
create Create a new provider and geom node using the specified sched‐
uling algorithm. algorithm is the name of the scheduling
algorithm used for the provider. Available algorithms
include: rr, which implements anticipatory scheduling with
round robin service among clients; as, which implements a sim‐
ple form of anticipatory scheduling with no per-client queue.
If the operation succeeds, the new provider should appear with
name /dev/⟨dev⟩.sched.. The kernel module geom_sched.ko will
be loaded if it is not loaded already.
insert Operates as "create", but the insertion is "transparent", i.e.
the existing provider is rerouted to the newly created geom,
which in turn forwards requests to the existing geom. This
operation allows one to start/stop a scheduling service on an
already existing provider.
A subsequent "destroy" will remove the newly created geom and
hook the provider back to the original geom.
configure Configure existing scheduling provider. It supports the same
options as the create command.
destroy Destroy the geom specified in the parameter.
reset Do nothing.
list | status | load | unload
See geom(8).
Additional options:
-f Force the removal of the specified provider.
-v Be more verbose.
SYSCTL VARIABLES
The following sysctl(8) variables can be used to control the behavior of
the SCHED GEOM class. The default value is shown next to each variable.
kern.geom.sched.debug: 0
Debug level of the SCHED GEOM class. This can be set to a number
between 0 and 2 inclusive. If set to 0 minimal debug information
is printed, and if set to 2 the maximum amount of debug informa‐
tion is printed.
EXIT STATUS
Exit status is 0 on success, and 1 if the command fails.
EXAMPLES
The following example shows how to create a scheduling provider for disk
/dev/ad0, and how to destroy it.
# Load the geom_sched module:
kldload geom_sched
# Load some scheduler classes used by geom_sched:
kldload gsched_rr gsched_as
# Configure device ad0 to use scheduler "rr":
geom sched insert -a rr ad0
# Now provider ad0 uses the "rr" algorithm;
# the new geom is ad0.sched.
# Remove the scheduler on the device:
geom sched destroy -v ad0.sched.
SEE ALSOgeom(4), geom(8)HISTORY
The gsched utility first appeared in FreeBSD 8.1.
AUTHORS
Fabio Checconi ⟨fabio@FreeBSD.org⟩
Luigi Rizzo ⟨luigi@FreeBSD.org⟩
BSD August 29, 2010 BSD