@@ -2643,32 +2643,27 @@ ssize_t elv_fairness_store(struct request_queue *q, const char *name,
ssize_t elv_slice_idle_show(struct request_queue *q, char *name)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
spin_lock_irqsave(q->queue_lock, flags);
efqd = &q->elevator->efqd;
data = jiffies_to_msecs(efqd->elv_slice_idle);
spin_unlock_irqrestore(q->queue_lock, flags);
- return sprintf(name, "%d\n", data);
+ return sprintf(name, "%lu\n", data);
}
ssize_t elv_slice_idle_store(struct request_queue *q, const char *name,
size_t count)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
char *p = (char *)name;
data = simple_strtoul(p, &p, 10);
- if (data < 0)
- data = 0;
- else if (data > INT_MAX)
- data = INT_MAX;
-
data = msecs_to_jiffies(data);
spin_lock_irqsave(q->queue_lock, flags);
@@ -2683,32 +2678,27 @@ ssize_t elv_slice_idle_store(struct request_queue *q, const char *name,
ssize_t elv_async_slice_idle_show(struct request_queue *q, char *name)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
spin_lock_irqsave(q->queue_lock, flags);
efqd = &q->elevator->efqd;
data = jiffies_to_msecs(efqd->elv_async_slice_idle);
spin_unlock_irqrestore(q->queue_lock, flags);
- return sprintf(name, "%d\n", data);
+ return sprintf(name, "%lu\n", data);
}
ssize_t elv_async_slice_idle_store(struct request_queue *q, const char *name,
size_t count)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
char *p = (char *)name;
data = simple_strtoul(p, &p, 10);
- if (data < 0)
- data = 0;
- else if (data > INT_MAX)
- data = INT_MAX;
-
data = msecs_to_jiffies(data);
spin_lock_irqsave(q->queue_lock, flags);
@@ -2730,24 +2720,22 @@ ssize_t elv_slice_sync_show(struct request_queue *q, char *name)
efqd = &q->elevator->efqd;
data = efqd->elv_slice[1];
spin_unlock_irqrestore(q->queue_lock, flags);
- return sprintf(name, "%d\n", data);
+ return sprintf(name, "%lu\n", data);
}
ssize_t elv_slice_sync_store(struct request_queue *q, const char *name,
size_t count)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
char *p = (char *)name;
data = simple_strtoul(p, &p, 10);
- if (data < 0)
- data = 0;
/* 100ms is the limit for now*/
- else if (data > 100)
+ if (data > 100)
data = 100;
spin_lock_irqsave(q->queue_lock, flags);
@@ -2762,31 +2750,29 @@ ssize_t elv_slice_sync_store(struct request_queue *q, const char *name,
ssize_t elv_slice_async_show(struct request_queue *q, char *name)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
spin_lock_irqsave(q->queue_lock, flags);
efqd = &q->elevator->efqd;
data = efqd->elv_slice[0];
spin_unlock_irqrestore(q->queue_lock, flags);
- return sprintf(name, "%d\n", data);
+ return sprintf(name, "%lu\n", data);
}
ssize_t elv_slice_async_store(struct request_queue *q, const char *name,
size_t count)
{
struct elv_fq_data *efqd;
- unsigned int data;
+ unsigned long data;
unsigned long flags;
char *p = (char *)name;
data = simple_strtoul(p, &p, 10);
- if (data < 0)
- data = 0;
/* 100ms is the limit for now*/
- else if (data > 100)
+ if (data > 100)
data = 100;
spin_lock_irqsave(q->queue_lock, flags);
@@ -338,13 +338,13 @@ struct elv_fq_data {
* have any notion of anticipation/idling. As of now, these are the
* users of this functionality.
*/
- unsigned int elv_slice_idle;
+ unsigned long elv_slice_idle;
/* idle slice for async queue */
- unsigned int elv_async_slice_idle;
+ unsigned long elv_async_slice_idle;
struct timer_list idle_slice_timer;
struct work_struct unplug_work;
- unsigned int elv_slice[2];
+ unsigned long elv_slice[2];
/* Fields for keeping track of average disk rate */
unsigned long rate_sectors; /* number of sectors finished */