All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Dan Magenheimer <dan.magenheimer@oracle.com>
Cc: "Xen-Devel (E-mail)" <xen-devel@lists.xensource.com>
Subject: Re: pvclock implementation in pv_ops kernel: why not __native_read_tsc()?
Date: Fri, 30 Oct 2009 18:17:48 -0700	[thread overview]
Message-ID: <4AEB903C.5000704@goop.org> (raw)
In-Reply-To: <e7adfdc0-37e4-461d-bc07-fd71b86415a5@default>

On 10/30/09 16:30, Dan Magenheimer wrote:
> I was looking at rdtsc usages in 2.6.31... you may
> or may not be surprised to hear that there is exactly
> one usage location, at least through boot and some
> basic NFS copying: native_read_tsc().  Digging through
> the pvclock code, I see that pvclock calls native_read_tsc()
> rather than use the __native_read_tsc() inline function.
>   

I already changed it to __native_read_tsc() in xen.git, mostly because
the vsyscall code can't call kernel functions.  But I'm not sure what
the distinction is supposed to be.

> Any reason for this?  It seems an unnecessary extra
> function call for a routine that is used thousands
> of times every second.
>   

I suppose, but the function call is trivial compared to the cost of the
rdtsc itself, or even the lfence barriers surrounding it.

    J

  reply	other threads:[~2009-10-31  1:17 UTC|newest]

Thread overview: 119+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-06  0:50 [PATCH RFC] Extending pvclock down to usermode for vsyscall Jeremy Fitzhardinge
2009-10-06  0:50 ` Jeremy Fitzhardinge
2009-10-06  0:50 ` [PATCH 1/5] x86/pvclock: make sure rdtsc doesn't speculate out of region Jeremy Fitzhardinge
2009-10-06  0:50   ` Jeremy Fitzhardinge
2009-10-06  0:50 ` [PATCH 2/5] x86/pvclock: no need to use strong read barriers in pvclock_get_time_values Jeremy Fitzhardinge
2009-10-06  0:50   ` Jeremy Fitzhardinge
2009-10-06  0:50 ` [PATCH 3/5] x86/pvclock: add vsyscall implementation Jeremy Fitzhardinge
2009-10-06  0:50   ` Jeremy Fitzhardinge
2009-10-06  9:04   ` Avi Kivity
2009-10-06  9:04     ` Avi Kivity
2009-10-06 14:19     ` Dan Magenheimer
2009-10-06 14:19       ` Dan Magenheimer
2009-10-06 15:11       ` Avi Kivity
2009-10-06 15:11         ` Avi Kivity
2009-10-06 18:46     ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-06 18:46       ` Jeremy Fitzhardinge
2009-10-07 10:25       ` [Xen-devel] " Avi Kivity
2009-10-07 10:25         ` Avi Kivity
2009-10-07 19:29         ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-07 19:29           ` Jeremy Fitzhardinge
2009-10-07 20:09           ` [Xen-devel] " Avi Kivity
2009-10-07 20:09             ` Avi Kivity
2009-10-07 21:19             ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-07 21:19               ` Jeremy Fitzhardinge
2009-10-07 21:37               ` [Xen-devel] " Avi Kivity
2009-10-07 21:37                 ` Avi Kivity
2009-10-07 21:51                 ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-07 21:51                   ` Jeremy Fitzhardinge
2009-10-07 21:53                   ` [Xen-devel] " Avi Kivity
2009-10-07 21:53                     ` Avi Kivity
2009-10-07 20:48         ` [Xen-devel] " Dan Magenheimer
2009-10-07 20:48           ` Dan Magenheimer
2009-10-07 21:08           ` [Xen-devel] " Avi Kivity
2009-10-07 21:08             ` Avi Kivity
2009-10-07 22:36             ` [Xen-devel] " Dan Magenheimer
2009-10-07 22:36               ` Dan Magenheimer
2009-10-10  0:24         ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-10  0:24           ` Jeremy Fitzhardinge
2009-10-10 18:10           ` [Xen-devel] " Avi Kivity
2009-10-10 18:10             ` Avi Kivity
2009-10-12 18:20             ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-12 18:20               ` Jeremy Fitzhardinge
2009-10-12 18:29               ` [Xen-devel] " Avi Kivity
2009-10-12 18:29                 ` Avi Kivity
2009-10-12 19:13                 ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-12 19:13                   ` Jeremy Fitzhardinge
2009-10-13  6:39                   ` [Xen-devel] " Avi Kivity
2009-10-13  6:39                     ` Avi Kivity
2009-10-13 20:00                     ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-13 20:00                       ` Jeremy Fitzhardinge
2009-10-14 12:32                       ` [Xen-devel] " Avi Kivity
2009-10-14 12:32                         ` Avi Kivity
2009-10-15 19:17                         ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-15 19:17                           ` Jeremy Fitzhardinge
2009-10-27 17:29                         ` [Xen-devel] " Dan Magenheimer
2009-10-27 17:29                           ` Dan Magenheimer
2009-10-27 18:20                           ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-27 18:20                             ` Jeremy Fitzhardinge
2009-10-28  5:52                             ` [Xen-devel] " Avi Kivity
2009-10-28  5:52                               ` Avi Kivity
2009-10-28  9:29                               ` [Xen-devel] " Glauber Costa
2009-10-28  9:34                                 ` Avi Kivity
2009-10-28  9:34                                   ` Avi Kivity
2009-10-28 17:47                                   ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-28 17:47                                     ` Jeremy Fitzhardinge
2009-10-29 12:13                                     ` [Xen-devel] " Avi Kivity
2009-10-29 12:13                                       ` Avi Kivity
2009-10-29 13:03                                       ` [Xen-devel] " Chris Mason
2009-10-29 13:03                                         ` Chris Mason
2009-10-29 14:46                                       ` [Xen-devel] " Dan Magenheimer
2009-10-29 14:46                                         ` Dan Magenheimer
2009-10-29 15:07                                         ` [Xen-devel] " Avi Kivity
2009-10-29 15:07                                           ` Avi Kivity
2009-10-29 15:55                                           ` [Xen-devel] " Dan Magenheimer
2009-10-29 15:55                                             ` Dan Magenheimer
2009-10-29 16:15                                             ` [Xen-devel] " Dan Magenheimer
2009-10-29 16:15                                               ` Dan Magenheimer
2009-11-01  9:28                                               ` [Xen-devel] " Avi Kivity
2009-11-01  9:28                                                 ` Avi Kivity
2009-11-02 15:28                                                 ` [Xen-devel] " Dan Magenheimer
2009-11-02 15:28                                                   ` Dan Magenheimer
2009-11-02 15:41                                                   ` [Xen-devel] " Avi Kivity
2009-11-02 15:41                                                     ` Avi Kivity
2009-11-01  9:32                                             ` [Xen-devel] " Avi Kivity
2009-11-01  9:32                                               ` Avi Kivity
2009-11-02 15:46                                               ` [Xen-devel] " Dan Magenheimer
2009-11-02 15:46                                                 ` Dan Magenheimer
2009-11-03  5:12                                                 ` [Xen-devel] " Avi Kivity
2009-11-03  5:12                                                   ` Avi Kivity
2009-11-04 20:30                                                   ` [Xen-devel] " Dan Magenheimer
2009-11-04 20:30                                                     ` Dan Magenheimer
2009-11-05  6:47                                                     ` [Xen-devel] " Avi Kivity
2009-11-05  6:47                                                       ` Avi Kivity
2009-11-05 14:52                                                       ` [Xen-devel] " Dan Magenheimer
2009-11-05 14:52                                                         ` Dan Magenheimer
2009-11-05 15:07                                                         ` [Xen-devel] " Keir Fraser
2009-11-05 15:07                                                           ` Keir Fraser
2009-11-04 21:19                                           ` [Xen-devel] " john stultz
2009-11-04 21:19                                             ` john stultz
2009-11-04 21:28                                             ` Dan Magenheimer
2009-11-04 21:28                                               ` Dan Magenheimer
2009-11-05  0:02                                               ` [Xen-devel] " john stultz
2009-11-05  0:02                                                 ` john stultz
2009-11-05  0:45                                                 ` [Xen-devel] " Dan Magenheimer
2009-11-05  0:45                                                   ` Dan Magenheimer
2009-10-30 23:30                                     ` pvclock implementation in pv_ops kernel: why not __native_read_tsc()? Dan Magenheimer
2009-10-31  1:17                                       ` Jeremy Fitzhardinge [this message]
2009-10-06  0:50 ` [PATCH 4/5] x86/fixmap: add a predicate for usermode fixmaps Jeremy Fitzhardinge
2009-10-06  0:50   ` Jeremy Fitzhardinge
2009-10-06 10:23   ` [Xen-devel] " Jan Beulich
2009-10-06 10:23     ` Jan Beulich
2009-10-06 18:47     ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-06 18:47       ` Jeremy Fitzhardinge
2009-10-06  0:50 ` [PATCH 5/5] xen/time: add pvclock_clocksource_vread support Jeremy Fitzhardinge
2009-10-06  0:50   ` Jeremy Fitzhardinge
2009-10-06 10:28   ` [Xen-devel] " Jan Beulich
2009-10-06 10:28     ` Jan Beulich
2009-10-06 18:48     ` [Xen-devel] " Jeremy Fitzhardinge
2009-10-06 18:48       ` Jeremy Fitzhardinge

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=4AEB903C.5000704@goop.org \
    --to=jeremy@goop.org \
    --cc=dan.magenheimer@oracle.com \
    --cc=xen-devel@lists.xensource.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.