Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1164467 > unrolled thread

[PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc()

Started byAndy Lutomirski <luto@kernel.org>
First post2015-06-13 01:50 +0200
Last post2015-06-17 01:20 +0200
Articles 4 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc() Andy Lutomirski <luto@kernel.org> - 2015-06-13 01:50 +0200
    Re: [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to  native_read_tsc() Dmitry Torokhov <dmitry.torokhov@gmail.com> - 2015-06-17 01:10 +0200
      Re: [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc() Andy Lutomirski <luto@amacapital.net> - 2015-06-17 01:10 +0200
        Re: [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc() Dmitry Torokhov <dmitry.torokhov@gmail.com> - 2015-06-17 01:20 +0200

#1164467 — [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc()

FromAndy Lutomirski <luto@kernel.org>
Date2015-06-13 01:50 +0200
Subject[PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc()
Message-ID<pAGS0-44S-67@gated-at.bofh.it>
This timing code is hideous, and this doesn't help.  It gets rid of
one of the last users of rdtscl, though.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: linux-input@vger.kernel.org
Signed-off-by: Andy Lutomirski <luto@kernel.org>
---
 drivers/input/joystick/analog.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/input/joystick/analog.c b/drivers/input/joystick/analog.c
index 4284080e481d..f871b4f00056 100644
--- a/drivers/input/joystick/analog.c
+++ b/drivers/input/joystick/analog.c
@@ -143,7 +143,7 @@ struct analog_port {
 
 #include <linux/i8253.h>
 
-#define GET_TIME(x)	do { if (cpu_has_tsc) rdtscl(x); else x = get_time_pit(); } while (0)
+#define GET_TIME(x)	do { if (cpu_has_tsc) x = (unsigned int)native_read_tsc(); else x = get_time_pit(); } while (0)
 #define DELTA(x,y)	(cpu_has_tsc ? ((y) - (x)) : ((x) - (y) + ((x) < (y) ? PIT_TICK_RATE / HZ : 0)))
 #define TIME_NAME	(cpu_has_tsc?"TSC":"PIT")
 static unsigned int get_time_pit(void)
@@ -160,7 +160,7 @@ static unsigned int get_time_pit(void)
         return count;
 }
 #elif defined(__x86_64__)
-#define GET_TIME(x)	rdtscl(x)
+#define GET_TIME(x)	do { x = (unsigned int)native_read_tsc(); } while (0)
 #define DELTA(x,y)	((y)-(x))
 #define TIME_NAME	"TSC"
 #elif defined(__alpha__) || defined(CONFIG_MN10300) || defined(CONFIG_ARM) || defined(CONFIG_ARM64) || defined(CONFIG_TILE)
-- 
2.4.2

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

[toc] | [next] | [standalone]


#1166480 — Re: [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc()

FromDmitry Torokhov <dmitry.torokhov@gmail.com>
Date2015-06-17 01:10 +0200
SubjectRe: [PATCH v2 10/17] input/joystick/analog: Switch from rdtscl() to native_read_tsc()
Message-ID<pC89s-8tm-19@gated-at.bofh.it>
In reply to#1164467
On Fri, Jun 12, 2015 at 04:44:50PM -0700, Andy Lutomirski wrote:
> This timing code is hideous, and this doesn't help.  It gets rid of
> one of the last users of rdtscl, though.
> 
> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
> Cc: linux-input@vger.kernel.org
> Signed-off-by: Andy Lutomirski <luto@kernel.org>

Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

> ---
>  drivers/input/joystick/analog.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/input/joystick/analog.c b/drivers/input/joystick/analog.c
> index 4284080e481d..f871b4f00056 100644
> --- a/drivers/input/joystick/analog.c
> +++ b/drivers/input/joystick/analog.c
> @@ -143,7 +143,7 @@ struct analog_port {
>  
>  #include <linux/i8253.h>
>  
> -#define GET_TIME(x)	do { if (cpu_has_tsc) rdtscl(x); else x = get_time_pit(); } while (0)
> +#define GET_TIME(x)	do { if (cpu_has_tsc) x = (unsigned int)native_read_tsc(); else x = get_time_pit(); } while (0)
>  #define DELTA(x,y)	(cpu_has_tsc ? ((y) - (x)) : ((x) - (y) + ((x) < (y) ? PIT_TICK_RATE / HZ : 0)))
>  #define TIME_NAME	(cpu_has_tsc?"TSC":"PIT")
>  static unsigned int get_time_pit(void)
> @@ -160,7 +160,7 @@ static unsigned int get_time_pit(void)
>          return count;
>  }
>  #elif defined(__x86_64__)
> -#define GET_TIME(x)	rdtscl(x)
> +#define GET_TIME(x)	do { x = (unsigned int)native_read_tsc(); } while (0)
>  #define DELTA(x,y)	((y)-(x))
>  #define TIME_NAME	"TSC"
>  #elif defined(__alpha__) || defined(CONFIG_MN10300) || defined(CONFIG_ARM) || defined(CONFIG_ARM64) || defined(CONFIG_TILE)
> -- 
> 2.4.2
> 

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

[toc] | [prev] | [next] | [standalone]


#1166482

FromAndy Lutomirski <luto@amacapital.net>
Date2015-06-17 01:10 +0200
Message-ID<pC89s-8tm-23@gated-at.bofh.it>
In reply to#1166480
Is it okay for -tip to take this and the other one you just acked?

Thanks,
Andy

On Tue, Jun 16, 2015 at 4:03 PM, Dmitry Torokhov
<dmitry.torokhov@gmail.com> wrote:
> On Fri, Jun 12, 2015 at 04:44:50PM -0700, Andy Lutomirski wrote:
>> This timing code is hideous, and this doesn't help.  It gets rid of
>> one of the last users of rdtscl, though.
>>
>> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
>> Cc: linux-input@vger.kernel.org
>> Signed-off-by: Andy Lutomirski <luto@kernel.org>
>
> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
>
>> ---
>>  drivers/input/joystick/analog.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/input/joystick/analog.c b/drivers/input/joystick/analog.c
>> index 4284080e481d..f871b4f00056 100644
>> --- a/drivers/input/joystick/analog.c
>> +++ b/drivers/input/joystick/analog.c
>> @@ -143,7 +143,7 @@ struct analog_port {
>>
>>  #include <linux/i8253.h>
>>
>> -#define GET_TIME(x)  do { if (cpu_has_tsc) rdtscl(x); else x = get_time_pit(); } while (0)
>> +#define GET_TIME(x)  do { if (cpu_has_tsc) x = (unsigned int)native_read_tsc(); else x = get_time_pit(); } while (0)
>>  #define DELTA(x,y)   (cpu_has_tsc ? ((y) - (x)) : ((x) - (y) + ((x) < (y) ? PIT_TICK_RATE / HZ : 0)))
>>  #define TIME_NAME    (cpu_has_tsc?"TSC":"PIT")
>>  static unsigned int get_time_pit(void)
>> @@ -160,7 +160,7 @@ static unsigned int get_time_pit(void)
>>          return count;
>>  }
>>  #elif defined(__x86_64__)
>> -#define GET_TIME(x)  rdtscl(x)
>> +#define GET_TIME(x)  do { x = (unsigned int)native_read_tsc(); } while (0)
>>  #define DELTA(x,y)   ((y)-(x))
>>  #define TIME_NAME    "TSC"
>>  #elif defined(__alpha__) || defined(CONFIG_MN10300) || defined(CONFIG_ARM) || defined(CONFIG_ARM64) || defined(CONFIG_TILE)
>> --
>> 2.4.2
>>
>
> --
> Dmitry



-- 
Andy Lutomirski
AMA Capital Management, LLC
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1166485

FromDmitry Torokhov <dmitry.torokhov@gmail.com>
Date2015-06-17 01:20 +0200
Message-ID<pC8j7-cJ-1@gated-at.bofh.it>
In reply to#1166482
On June 16, 2015 4:09:06 PM PDT, Andy Lutomirski <luto@amacapital.net> wrote:
>Is it okay for -tip to take this and the other one you just acked?

Yeah, that's fine.


Thanks.

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

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web