Re: [PATCH 05/10] block: convert to pos and nr_sectors accessors

Tejun Heo
2009-04-29T10:24:38Z

Hello,

Geert Uytterhoeven wrote:
>> diff --git a/drivers/block/z2ram.c b/drivers/block/z2ram.c
>> index b66ad58..d4e6b71 100644
>> --- a/drivers/block/z2ram.c
>> +++ b/drivers/block/z2ram.c
>> @@ -71,12 +71,12 @@ static void do_z2_request(struct request_queue *q)
>> {
>> struct request *req;
>> while ((req = elv_next_request(q)) != NULL) {
>> - unsigned long start = req->sector << 9;
>> - unsigned long len = req->current_nr_sectors << 9;
>> + unsigned long start = blk_rq_pos(req) << 9;
>> + unsigned long len = blk_rq_cur_sectors(req) << 9;
> ^^^^^^^^^^^^^
> I guess this one can become `unsigned int' now, as:
>
> static inline unsigned int blk_rq_cur_sectors(struct request *rq)
> {
> return blk_rq_cur_bytes(rq) >> 9;
> }
>
> and blk_rq_cur_bytes(rq) returns `int', so it must fit in an `int' anyway?

Yeap, it should fit. Given the way len is used there and the previous
usage had the same type promotion there, I think it's better to leave
the unsigned long alone there.

Acked-by added. Thanks.

--
tejun