All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ralf Baechle <ralf@linux-mips.org>
To: Franck Bui-Huu <vagabon.xyz@gmail.com>
Cc: linux-mips <linux-mips@linux-mips.org>
Subject: Re: [PATCH] Kill __bzero()
Date: Tue, 6 Nov 2007 10:36:03 +0000	[thread overview]
Message-ID: <20071106103603.GA24844@linux-mips.org> (raw)
In-Reply-To: <47301AF8.2000700@gmail.com>

On Tue, Nov 06, 2007 at 08:42:48AM +0100, Franck Bui-Huu wrote:

> > Older gcc used to generate significantly worse code for inline functions
> > than for macros so Linux became a fairly excessive user of macros.  This
> > has very much improved since, so these days inlines are prefered over
> > macros where possible.
> 
> Yes but ISTR that gcc generates some calls to memset and since
> builtin functions are disabled the final link failed if memset
> is inlined. I'll try to reproduce...

So both belt and suspenders then that is an inline/macro plus an outline
version?

> >> Yes I noticed this. Actually I'm wondering if we couldn't add a new
> >> function, fill_user() like the following:
> >>
> >> extern size_t fill_user(void __user *to, int c, size_t len);
> > 
> > That's much better function name than the old __bzero - except that
> 
> Actually I named it '__fill_user', since it doesn't call access_ok().
> 
> > __bzero effectivly took a long argument for the 2nd argument so 32-bit
> > on 32-bit kernels and 64-bit on 64-bit kernels.
> 
> Isn't size_t meaning ?
> 
> Perhaps in this case __kernel_size_t is better...

I wrote about the existing __bzero which takes the size_t length as third 
argument and a long sized fill pattern as the second.

> Yes I have a patchset which clean up a bit uaccess.h and does this but
> it's under construction.  It actually tries to convert all macros into
> inlines and the file is much more readable and as a bonus side we could
> easily add __must_check annotations which are currently missing.
> 
> I'll try to finish it this week but in the meantime can we just kill
> __bzero or do you want me to include it in the future patchset ?

There is enough time until 2.6.25 to complete your cleanups; no more
cleanups for 2.6.24.

  Ralf

  reply	other threads:[~2007-11-06 10:36 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-04  8:18 [PATCH] Kill __bzero() Franck Bui-Huu
2007-11-04 15:42 ` Atsushi Nemoto
2007-11-04 20:02   ` Franck Bui-Huu
2007-11-05 11:24 ` Ralf Baechle
2007-11-05 21:51   ` Franck Bui-Huu
2007-11-05 23:18     ` Ralf Baechle
2007-11-06  7:42       ` Franck Bui-Huu
2007-11-06 10:36         ` Ralf Baechle [this message]
2007-11-06 16:18           ` Franck Bui-Huu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071106103603.GA24844@linux-mips.org \
    --to=ralf@linux-mips.org \
    --cc=linux-mips@linux-mips.org \
    --cc=vagabon.xyz@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.