All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Giarrusso <p.giarrusso@gmail.com>
To: user-mode-linux-devel@lists.sourceforge.net
Cc: Andrew Morton <akpm@osdl.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Jeff Dike <jdike@addtoit.com>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [uml-devel] [PATCH] UML - time build fix
Date: Wed, 26 Sep 2007 17:46:13 +0200	[thread overview]
Message-ID: <200709261746.14632.p.giarrusso@gmail.com> (raw)
In-Reply-To: <1190758127.17409.81.camel@chaos>


[-- Attachment #1.1: Type: text/plain, Size: 1296 bytes --]

On mercoledì 26 settembre 2007, Thomas Gleixner wrote:
> Jeff,
>
> On Tue, 2007-09-25 at 17:56 -0400, Jeff Dike wrote:
> > On Tue, Sep 25, 2007 at 09:54:15PM +0200, Thomas Gleixner wrote:
> > > On Tue, 2007-09-25 at 13:37 -0400, Jeff Dike wrote:
> > > > Put back an implementation of timeval_to_ns in
> > > > arch/um/os-Linux/time.c.  tglx pointed out in his review of tickless
> > > > support that there was a perfectly good implementation of it in
> > > > linux/time.h.  The problem is that this is userspace code which can't
> > > > pull in kernel headers and there doesn't seem to be a libc version.
> > >
> > > Oops. Did not notice.
> >
> > It's a UML peculiarity...
> >
> > > Can't we move it into some header file which is accessible from
> > > everywhere ?
There is a way to do this without code duplication, but it is creating a 
non-inline function which calls the inline and calling the non-inline from 
userspace. It's done for a variety of other functions.

There is a tradeoff of speed vs code duplication - and if this function is not 
supposed to change and to need to be kept in sync, it could be copied. I 
conceptually hate this solution, but it can make some sense.

-- 
"Doh!" (cit.), I've made another mistake!
Paolo Giarrusso, aka Blaisorblade

[-- Attachment #1.2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

[-- Attachment #2: Type: text/plain, Size: 228 bytes --]

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

[-- Attachment #3: Type: text/plain, Size: 194 bytes --]

_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

WARNING: multiple messages have this Message-ID (diff)
From: Paolo Giarrusso <p.giarrusso@gmail.com>
To: user-mode-linux-devel@lists.sourceforge.net
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Jeff Dike <jdike@addtoit.com>, Andrew Morton <akpm@osdl.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [uml-devel] [PATCH] UML - time build fix
Date: Wed, 26 Sep 2007 17:46:13 +0200	[thread overview]
Message-ID: <200709261746.14632.p.giarrusso@gmail.com> (raw)
In-Reply-To: <1190758127.17409.81.camel@chaos>

[-- Attachment #1: Type: text/plain, Size: 1296 bytes --]

On mercoledì 26 settembre 2007, Thomas Gleixner wrote:
> Jeff,
>
> On Tue, 2007-09-25 at 17:56 -0400, Jeff Dike wrote:
> > On Tue, Sep 25, 2007 at 09:54:15PM +0200, Thomas Gleixner wrote:
> > > On Tue, 2007-09-25 at 13:37 -0400, Jeff Dike wrote:
> > > > Put back an implementation of timeval_to_ns in
> > > > arch/um/os-Linux/time.c.  tglx pointed out in his review of tickless
> > > > support that there was a perfectly good implementation of it in
> > > > linux/time.h.  The problem is that this is userspace code which can't
> > > > pull in kernel headers and there doesn't seem to be a libc version.
> > >
> > > Oops. Did not notice.
> >
> > It's a UML peculiarity...
> >
> > > Can't we move it into some header file which is accessible from
> > > everywhere ?
There is a way to do this without code duplication, but it is creating a 
non-inline function which calls the inline and calling the non-inline from 
userspace. It's done for a variety of other functions.

There is a tradeoff of speed vs code duplication - and if this function is not 
supposed to change and to need to be kept in sync, it could be copied. I 
conceptually hate this solution, but it can make some sense.

-- 
"Doh!" (cit.), I've made another mistake!
Paolo Giarrusso, aka Blaisorblade

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2007-09-26 15:46 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-25 17:37 [uml-devel] [PATCH] UML - time build fix Jeff Dike
2007-09-25 17:37 ` Jeff Dike
2007-09-25 19:54 ` [uml-devel] " Thomas Gleixner
2007-09-25 19:54   ` Thomas Gleixner
2007-09-25 21:56   ` [uml-devel] " Jeff Dike
2007-09-25 21:56     ` Jeff Dike
2007-09-25 22:08     ` [uml-devel] " Thomas Gleixner
2007-09-25 22:08       ` Thomas Gleixner
2007-09-26 15:46       ` Paolo Giarrusso [this message]
2007-09-26 15:46         ` [uml-devel] " Paolo Giarrusso

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=200709261746.14632.p.giarrusso@gmail.com \
    --to=p.giarrusso@gmail.com \
    --cc=akpm@osdl.org \
    --cc=jdike@addtoit.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=user-mode-linux-devel@lists.sourceforge.net \
    /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.