Commit c9b3ad67 authored by Jens Axboe's avatar Jens Axboe Committed by Linus Torvalds
Browse files

[PATCH] as-iosched tunable encoding fix



AS is doing internal msec<->jiffies conversions twice, so the sysfs tunables
which represent time are coming out wrong.  The switch from HZ=1000 exposed
this.

Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent ef2a701d
Loading
Loading
Loading
Loading
+1 −9
Original line number Diff line number Diff line
@@ -1935,23 +1935,15 @@ struct as_fs_entry {
static ssize_t
as_var_show(unsigned int var, char *page)
{
	var = (var * 1000) / HZ;
	return sprintf(page, "%d\n", var);
}

static ssize_t
as_var_store(unsigned long *var, const char *page, size_t count)
{
	unsigned long tmp;
	char *p = (char *) page;

	tmp = simple_strtoul(p, &p, 10);
	if (tmp != 0) {
		tmp = (tmp * HZ) / 1000;
		if (tmp == 0)
			tmp = 1;
	}
	*var = tmp;
	*var = simple_strtoul(p, &p, 10);
	return count;
}