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


Groups > linux.kernel > #1260437

Re: [PATCH v1 16/20] ARC: [plat-eznps] Use dedicated cpu_relax()

From Vineet Gupta <Vineet.Gupta1@synopsys.com>
Newsgroups linux.kernel
Subject Re: [PATCH v1 16/20] ARC: [plat-eznps] Use dedicated cpu_relax()
Date 2015-11-02 09:00 +0100
Message-ID <qqic2-2C5-7@gated-at.bofh.it> (permalink)
References <qpEeC-3hu-3@gated-at.bofh.it> <qqic2-2C5-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Saturday 31 October 2015 06:52 PM, Noam Camus wrote:
> From: Tal Zilcer <talz@ezchip.com>
>
> Since the CTOP is SMT hardware multi-threaded, we need to hint
> the HW that now will be a very good time to do a hardware
> thread context switching. This is done by issuing the schd.rw
> instruction (binary coded here so as to not require specific
> revision of GCC to build the kernel).
> sched.rw means that Thread becomes eligible for execution by
> the threads scheduler after all pending read/write
> transactions were completed.
>
> Signed-off-by: Noam Camus <noamc@ezchip.com>
> Cc: Peter Zijlstra <peterz@infradead.org>

Acked-by: Vineet Gupta <vgupta@synopsys.com>

> ---
>  arch/arc/include/asm/processor.h |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arc/include/asm/processor.h b/arch/arc/include/asm/processor.h
> index 7266ede..f1a51a6 100644
> --- a/arch/arc/include/asm/processor.h
> +++ b/arch/arc/include/asm/processor.h
> @@ -58,7 +58,12 @@ struct task_struct;
>   * get optimised away by gcc
>   */
>  #ifdef CONFIG_SMP
> +#ifdef CONFIG_EZNPS_MTM_EXT
> +#define cpu_relax()     \
> +	__asm__ __volatile__ (".word %0" : : "i"(CTOP_INST_SCHD_RW) : "memory")
> +#else
>  #define cpu_relax()	__asm__ __volatile__ ("" : : : "memory")
> +#endif
>  #else
>  #define cpu_relax()	do { } while (0)
>  #endif

--
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/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v1 00/20] eznps a new ARC platform Noam Camus <noamc@ezchip.com> - 2015-10-31 14:20 +0100
  Re: [PATCH v1 02/20] clocksource: Add NPS400 timers driver Daniel Lezcano <daniel.lezcano@linaro.org> - 2015-11-01 21:50 +0100
    RE: [PATCH v1 02/20] clocksource: Add NPS400 timers driver Noam Camus <noamc@ezchip.com> - 2015-11-02 09:00 +0100
  RE: [PATCH v1 07/20] ARC: mm: use generic macros _BITUL() Noam Camus <noamc@ezchip.com> - 2015-11-02 07:30 +0100
  Re: [PATCH v1 07/20] ARC: mm: use generic macros _BITUL() Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 07:30 +0100
  Re: [PATCH v1 09/20] ARC: add CONFIG_CLKSRC_OF support to  time_init() Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 07:40 +0100
  Re: [PATCH v1 08/20] ARC: Use res_service as entry point for  secondaries Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 07:40 +0100
    RE: [PATCH v1 08/20] ARC: Use res_service as entry point for  secondaries Noam Camus <noamc@ezchip.com> - 2015-11-02 09:10 +0100
  Re: [PATCH v1 19/20] ARC: [plat-eznps] replace sync with proper cpu  barrier Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 08:50 +0100
    Re: [PATCH v1 19/20] ARC: [plat-eznps] replace sync with proper cpu  barrier Peter Zijlstra <peterz@infradead.org> - 2015-11-02 10:30 +0100
  Re: [PATCH v1 16/20] ARC: [plat-eznps] Use dedicated cpu_relax() Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 09:00 +0100
  Re: [PATCH v1 18/20] ARC: [plat-eznps] define IPI_IRQ Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 09:00 +0100
    RE: [PATCH v1 18/20] ARC: [plat-eznps] define IPI_IRQ Noam Camus <noamc@ezchip.com> - 2015-11-02 13:20 +0100
  Re: [PATCH v1 14/20] ARC: [plat-eznps] Use dedicated SMP barriers Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 09:10 +0100
    RE: [PATCH v1 14/20] ARC: [plat-eznps] Use dedicated SMP barriers Noam Camus <noamc@ezchip.com> - 2015-11-02 14:10 +0100
  Re: [PATCH v1 05/20] ARC: rwlock: disable interrupts in !LLSC variant Peter Zijlstra <peterz@infradead.org> - 2015-11-02 10:20 +0100
  Re: [PATCH v1 16/20] ARC: [plat-eznps] Use dedicated cpu_relax() Peter Zijlstra <peterz@infradead.org> - 2015-11-02 10:30 +0100
    RE: [PATCH v1 16/20] ARC: [plat-eznps] Use dedicated cpu_relax() Noam Camus <noamc@ezchip.com> - 2015-11-03 15:10 +0100
  Re: [PATCH v1 05/20] ARC: rwlock: disable interrupts in !LLSC variant Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 10:50 +0100
    Re: [PATCH v1 05/20] ARC: rwlock: disable interrupts in !LLSC variant Peter Zijlstra <peterz@infradead.org> - 2015-11-02 11:10 +0100
  Re: [PATCH v1 11/20] ARC: [plat-eznps] Add eznps platform Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 12:00 +0100
    RE: [PATCH v1 11/20] ARC: [plat-eznps] Add eznps platform Noam Camus <noamc@ezchip.com> - 2015-11-03 17:10 +0100
    RE: [PATCH v1 11/20] ARC: [plat-eznps] Add eznps platform Noam Camus <noamc@ezchip.com> - 2015-11-04 13:40 +0100
  Re: [PATCH v1 02/20] clocksource: Add NPS400 timers driver Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 12:10 +0100
    RE: [PATCH v1 02/20] clocksource: Add NPS400 timers driver Noam Camus <noamc@ezchip.com> - 2015-11-03 17:10 +0100
  Re: [PATCH v1 20/20] ARC: Add eznps platform to Kconfig and Makefile Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 12:10 +0100
    RE: [PATCH v1 20/20] ARC: Add eznps platform to Kconfig and Makefile Noam Camus <noamc@ezchip.com> - 2015-11-03 16:40 +0100
  Re: [PATCH v1 13/20] ARC: [plat-eznps] Use dedicated  bitops/atomic/cmpxchg Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-02 13:00 +0100
  Re: [PATCH v1 00/20] eznps a new ARC platform Vineet Gupta <vgupta@synopsys.com> - 2015-11-04 16:40 +0100
    RE: [PATCH v1 00/20] eznps a new ARC platform Noam Camus <noamc@ezchip.com> - 2015-11-04 17:00 +0100
      RE: [PATCH v1 00/20] eznps a new ARC platform Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-04 18:50 +0100
  Re: [PATCH v1 11/20] ARC: [plat-eznps] Add eznps platform Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-05 06:20 +0100
  Re: [PATCH v2 03/19] clocksource: Add NPS400 timers driver Thomas Gleixner <tglx@linutronix.de> - 2015-11-07 12:30 +0100
  Re: [PATCH v2 04/19] irqchip: add nps Internal and external  irqchips Thomas Gleixner <tglx@linutronix.de> - 2015-11-07 12:40 +0100
    Re: [PATCH v2 04/19] irqchip: add nps Internal and external irqchips Noam Camus <noamc@ezchip.com> - 2015-11-07 22:00 +0100
      Re: [PATCH v2 04/19] irqchip: add nps Internal and external  irqchips Thomas Gleixner <tglx@linutronix.de> - 2015-11-08 01:00 +0100
  Re: [PATCH v2 16/19] ARC: [plat-eznps] Use dedicated cpu_relax() Peter Zijlstra <peterz@infradead.org> - 2015-11-09 11:10 +0100
    Re: [PATCH v2 16/19] ARC: [plat-eznps] Use dedicated cpu_relax() Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-09 11:30 +0100
      Re: [PATCH v2 16/19] ARC: [plat-eznps] Use dedicated cpu_relax() Peter Zijlstra <peterz@infradead.org> - 2015-11-09 11:50 +0100
        Re: [PATCH v2 16/19] ARC: [plat-eznps] Use dedicated cpu_relax() Vineet Gupta <vgupta@synopsys.com> - 2015-11-09 13:30 +0100
          Re: [PATCH v2 16/19] ARC: [plat-eznps] Use dedicated cpu_relax() Peter Zijlstra <peterz@infradead.org> - 2015-11-09 14:00 +0100

csiph-web