Re: [RFC][PATCH] kmemdup_from_user(): introduce

From: Li Zefan
Date: Fri Mar 06 2009 - 04:02:02 EST


Andrew Morton wrote:
> On Fri, 06 Mar 2009 16:27:53 +0800 Li Zefan <lizf@xxxxxxxxxxxxxx> wrote:
>
>>> Let's not add wrapper for every two lines that happen to be used
>>> together.
>>>
>> Why not if we have good reasons? And I don't think we can call this
>> "happen to" if there are 250+ of them?
>
> The change is a good one. If a reviewer (me) sees it then you know the
> code's all right and the review effort becomes less - all you need to check
> is that the call site is using IS_ERR/PTR_ERR and isn't testing for
> NULL. Less code, less chance for bugs.
>
> Plus it makes kernel text smaller.
>
> Yes, the name is a bit cumbersome.
>

How about memdup_user()? like kstrndup() vs strndup_user().

Here is the statistics when using 5 kmemdup_from_user() in btrfs:

$ diffstat
ioctl.c | 49 ++++++++++++-------------------------------------
super.c | 13 ++++---------
2 files changed, 16 insertions(+), 46 deletions(-)

the kernel size on i386:

text data bss dec hex filename
288339 1924 508 290771 46fd3 fs/btrfs/btrfs.o.orig
text data bss dec hex filename
288255 1924 508 290687 46f7f fs/btrfs/btrfs.o

so saves 84 bytes.

the kernel size on IA64:

text data bss dec hex filename
898752 3736 109 902597 dc5c5 fs/btrfs/btrfs.o.orig
text data bss dec hex filename
898176 3712 109 901997 dc36d fs/btrfs/btrfs.o

so saves 576 bytes.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/