[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120618114841.GA4855@gmail.com>
Date:	Mon, 18 Jun 2012 19:48:41 +0800
From:	Zheng Liu <gnehzuil.liu@...il.com>
To:	Jens Axboe <axboe@...nel.dk>
Cc:	Rob Landley <rob@...dley.net>, linux-doc@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Why does ionice(1) ban the user to set back to 'none' class?
Hi Jens,
I meet a problem when I use ionice(1) to adjust a process's io priority.
I do the following operations:
$ ionice -p${pid}
none: prio 0
$ ionice -p${pid} -c2 -n4
$ ionice -p${pid}
best-effort: prio 4
$ ionice -p${pid} -c0 -n0
$ ionice -p${pid}
best-effort: prio 0
So I cannot set scheduling class back to 'none'.  If I call ioprio_set(2)
directly, it will be fine.  But if I use ionice(1), I cannot change it.  I
read the docs about ionice in [1].  I notice this code:
switch (ioprio_class) {
	case IOPRIO_CLASS_NONE:
		ioprio_class = IOPRIO_CLASS_BE;
                               ^^^^^^^^^^^^^^^^
                               *It means that we cannot set back to none.*
		break;
	case IOPRIO_CLASS_RT:
	case IOPRIO_CLASS_BE:
		break;
	case IOPRIO_CLASS_IDLE:
		ioprio = 7;
		break;
	default:
		printf("bad prio class %d\n", ioprio_class);
		return 1;
}
My question is why we need to ban the user to set back to 'none'.  Is there
some reasons?  Thank you.
[Sorry, I don't subscribe linux-doc and linux-kernel mailing list.
Please CC to me.]
1. ${linux_src}/Documentation/block/ioprio.txt.
Regards,
Zheng
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Powered by blists - more mailing lists
 
