Add --scheduler option.

master
Mike Hiretsky 13 years ago
parent 4d7063ae67
commit 8fc07cfcd4

@ -135,6 +135,11 @@ Changes Xorg server resolution.
Changes frame buffer resolution.
.RE
.PP
\fB\-\-scheduler\fR \fISCHEDULER\fR
.RS 4
Changes I/O scheduler.
.RE
.PP
\fB\-\-timezone\fR \fITIMEZONE\fR
.RS 4
Changes timezone.

@ -130,6 +130,11 @@ IPv4 адрес сети с указанием CIDR. IFACE может обозн
Изменить разрешение для frame buffer.
.RE
.PP
\fB\-\-scheduler\fR \fISCHEDULER\fR
.RS 4
Изменить I/O планировщик.
.RE
.PP
\fB\-\-timezone\fR \fITIMEZONE\fR
.RS 4
Изменить часовой пояс.

@ -29,7 +29,7 @@ from cl_utils import isMount,typeFile,getTupleVersion,pathJoin,isFstabMount,\
FStab, lspci, getInstalledVideo,getDeviceType, \
getPartitionType, getOsProberHash, getProgPath, \
getRaidPartitions, getLvmPartitions, getLvmGroups, \
getPasswdUsers
getPasswdUsers, readFile
from cl_distr import DistributiveRepository,PartitionDistributive
from cl_fill import clLocale
from operator import itemgetter
@ -732,7 +732,7 @@ class fillVars(object, glob_attr):
root_dev = filter(lambda x: x in root_dev,
self.Get('os_device_dev'))
if root_dev:
root_dev = root_dev[0]
root_dev = root_dev[0].rpartition('/')[2]
pathScheduler = '/sys/block/%s/queue/scheduler'%root_dev
if access(pathScheduler,R_OK):
res = re.search("\[([^\]]+)\]",
@ -741,6 +741,17 @@ class fillVars(object, glob_attr):
return res.groups()[0]
return "cfq"
def get_os_kernel_schedulers(self):
"""Get scheduler for install root device"""
root_dev = self.Get('os_device_dev')
if root_dev:
root_dev = root_dev[0].rpartition('/')[2]
pathScheduler = '/sys/block/%s/queue/scheduler'%root_dev
return map(lambda x:x.strip("[]"),
readFile(pathScheduler).strip().split())
return []
def get_os_install_lvm_set(self):
"""Using lvm"""
lvm = filter(lambda x:x[1] != '' and "lvm" in x[0],

@ -145,6 +145,10 @@ CMD_OPTIONS = [{'shortOption':"d",
'optVal':"<width>x<height>",
'help':_("set frame buffer resolution")
},
{'longOption':"scheduler",
'optVal':"SCHEDULER",
'help':_("set I/O scheduler")
},
{'longOption':"timezone",
'optVal':"TIMEZONE",
'help':_("set the timezone")
@ -315,6 +319,17 @@ class install_cmd(share_cmd):
value=route,
example="default:192.168.1.1"))
# if system installation
if values.scheduler:
if not values.scheduler in \
self.logicObj.clVars.Get('os_kernel_schedulers'):
self.optobj.error(self.errorWithExample.format(
optname="--scheduler",
errormess=_("%s specifing error")%"scheduler",
value=values.scheduler,
example="deadline"))
else:
self.logicObj.clVars.Set('os_install_kernel_scheduler',
values.scheduler,force=True)
if not (values.install or values.uninstall
or values.startup or values.live):
if values.v is False and \

@ -155,6 +155,9 @@ class Data:
# install scheduler
os_install_kernel_scheduler = {}
# list of schedulers
os_kernel_schedulers = {}
# install kernel attributes
os_install_kernel_attr = {}

Loading…
Cancel
Save