mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-21 22:21:21 +00:00
[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: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
ef2a701d44
commit
c9b3ad6734
1 changed files with 1 additions and 9 deletions
|
@ -1935,23 +1935,15 @@ struct as_fs_entry {
|
||||||
static ssize_t
|
static ssize_t
|
||||||
as_var_show(unsigned int var, char *page)
|
as_var_show(unsigned int var, char *page)
|
||||||
{
|
{
|
||||||
var = (var * 1000) / HZ;
|
|
||||||
return sprintf(page, "%d\n", var);
|
return sprintf(page, "%d\n", var);
|
||||||
}
|
}
|
||||||
|
|
||||||
static ssize_t
|
static ssize_t
|
||||||
as_var_store(unsigned long *var, const char *page, size_t count)
|
as_var_store(unsigned long *var, const char *page, size_t count)
|
||||||
{
|
{
|
||||||
unsigned long tmp;
|
|
||||||
char *p = (char *) page;
|
char *p = (char *) page;
|
||||||
|
|
||||||
tmp = simple_strtoul(p, &p, 10);
|
*var = simple_strtoul(p, &p, 10);
|
||||||
if (tmp != 0) {
|
|
||||||
tmp = (tmp * HZ) / 1000;
|
|
||||||
if (tmp == 0)
|
|
||||||
tmp = 1;
|
|
||||||
}
|
|
||||||
*var = tmp;
|
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue