From: wzt wzt on
the original code use kmalloc() to allocate struct blk_major_name
buffer first, then find the major number in major_names array. if
found it, it will kfree() the unused struct blk_major_name buffer,
if register_blkdev() called many times like:
register_blkdev(22, "aa");
.....
register_blkdev(22, "aa");
kmalloc()/kfree() will be no need to invoked many times, my point is
that find the major number first, then allocate the buffer will be
better. this patch can handle the special case.

On Mon, May 10, 2010 at 7:56 PM, Jens Axboe <jens.axboe(a)oracle.com> wrote:
> On Mon, May 10 2010, wzt.wzt(a)gmail.com wrote:
>> Check major number before allocate the buffer, if the major number is not exist,
>> and the register_blkdev() called many times, kmalloc()/kfree() will be no need
>> to invoked many times. So check the major number before use kmalloc() to allocate
>> the buffer will be better.
>
> This would generally be sound advice for performance oriented code, but
> I can't see it making any difference here.
>
> --
> Jens Axboe
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/