All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergey Matyukevich <geomatsi@gmail.com>
To: linux-snps-arc@lists.infradead.org
Cc: Vineet Gupta <vgupta@kernel.org>,
	Vladimir Isaev <isaev@synopsys.com>,
	Sergey Matyukevich <geomatsi@gmail.com>,
	Sergey Matyukevich <sergey.matyukevich@synopsys.com>
Subject: [RFC PATCH 00/13] ARC: handle the lack of ZOL support
Date: Tue, 22 Feb 2022 17:14:53 +0300	[thread overview]
Message-ID: <20220222141506.4003433-1-geomatsi@gmail.com> (raw)

From: Sergey Matyukevich <sergey.matyukevich@synopsys.com>

Hi Vineet and all,

This patch series continues to prepare arch/arc for the upcoming ARCv3
support. ARCv3 does not support zero-overhead-loop (ZOL). So this patch
series provides a set of changes that make ZOL support optional.

The patch series is based on top of Linux 5.17-rc5. It has been tested
with enabled CONFIG_ARC_LACKS_ZOL option on ARCv2 HSDK hardware as well
as on nSIM simulator for ARCv2.

I fixed typos, updated Vineet's email address, and slightly modified
several commit messages. Otherwise this patch series is the first chunk
of ARCv3 bring-up changes by Vineet, available at Synopsys github: see
github.com/foss-for-synopsys-dwc-arc-processors/linux

Regards,
Sergey

Vineet Gupta (13):
  ARC: uaccess: elide unaliged handling if hardware supports
  ARC: Kconfig: introduce option to disable ZOL
  ARC: uaccess: drop CC_OPTIMIZE_FOR_SIZE
  ARC: uaccess: elide ZOL, use double load/stores
  ARCv2: memset: don't prefetch for len == 0 which happens a lot
  ARCv2: memset: elide unaligned handling if hardware supports
  ARCv2: memset: rewrite using double load/stores
  ARC: string: use generic C code if no ZOL support
  ARC: delay: elide ZOL
  ARC: checksum: elide ZOL
  ARC: head: elide ZOL
  ARC: build: inhibit ZOL generation by compiler
  ARC: pt_regs: handle the case when ZOL is not supported

 arch/arc/Kconfig                           |  10 ++
 arch/arc/Makefile                          |   3 +
 arch/arc/include/asm/asm-macro-dbnz-emul.h |  12 ++
 arch/arc/include/asm/asm-macro-dbnz.h      |   8 ++
 arch/arc/include/asm/asm-macro-ll64-emul.h |  31 +++++
 arch/arc/include/asm/asm-macro-ll64.h      |  20 +++
 arch/arc/include/asm/assembler.h           |  41 ++++++
 arch/arc/include/asm/checksum.h            |  58 +++++++-
 arch/arc/include/asm/delay.h               |  16 +++
 arch/arc/include/asm/entry-arcv2.h         |   4 +
 arch/arc/include/asm/entry.h               |   2 +
 arch/arc/include/asm/ptrace.h              |   4 +-
 arch/arc/include/asm/string.h              |  15 ++-
 arch/arc/include/asm/uaccess.h             |  29 ++--
 arch/arc/kernel/arcksyms.c                 |   2 +
 arch/arc/kernel/asm-offsets.c              |   2 +
 arch/arc/kernel/disasm.c                   |   2 +
 arch/arc/kernel/head.S                     |   8 +-
 arch/arc/kernel/intc-arcv2.c               |   2 +
 arch/arc/kernel/kgdb.c                     |   4 +
 arch/arc/kernel/process.c                  |   2 +
 arch/arc/kernel/ptrace.c                   |  12 ++
 arch/arc/kernel/signal.c                   |   8 ++
 arch/arc/kernel/troubleshoot.c             |   3 +
 arch/arc/kernel/unaligned.c                |   2 +
 arch/arc/kernel/vmlinux.lds.S              |   2 +-
 arch/arc/lib/Makefile                      |   6 +
 arch/arc/lib/memset-archs.S                | 147 +++++++++------------
 arch/arc/lib/uaccess.S                     | 144 ++++++++++++++++++++
 arch/arc/mm/extable.c                      |  11 --
 30 files changed, 493 insertions(+), 117 deletions(-)
 create mode 100644 arch/arc/include/asm/asm-macro-dbnz-emul.h
 create mode 100644 arch/arc/include/asm/asm-macro-dbnz.h
 create mode 100644 arch/arc/include/asm/asm-macro-ll64-emul.h
 create mode 100644 arch/arc/include/asm/asm-macro-ll64.h
 create mode 100644 arch/arc/include/asm/assembler.h
 create mode 100644 arch/arc/lib/uaccess.S

-- 
2.25.1


_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

             reply	other threads:[~2022-02-22 14:15 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-22 14:14 Sergey Matyukevich [this message]
2022-02-22 14:14 ` [RFC PATCH 01/13] ARC: uaccess: elide unaligned handling if hardware supports Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 02/13] ARC: Kconfig: introduce option to disable ZOL Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 03/13] ARC: uaccess: drop CC_OPTIMIZE_FOR_SIZE Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 04/13] ARC: uaccess: elide ZOL, use double load/stores Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 05/13] ARCv2: memset: don't prefetch for len == 0 which happens a lot Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 06/13] ARCv2: memset: elide unaligned handling if hardware supports Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 07/13] ARCv2: memset: rewrite using double load/stores Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 08/13] ARC: string: use generic C code if no ZOL support Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 09/13] ARC: delay: elide ZOL Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 10/13] ARC: checksum: " Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 11/13] ARC: head: " Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 12/13] ARC: build: inhibit ZOL generation by compiler Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 13/13] ARC: pt_regs: handle the case when ZOL is not supported Sergey Matyukevich
2022-02-28  2:09 ` [RFC PATCH 00/13] ARC: handle the lack of ZOL support Vineet Gupta
2022-03-03 19:22   ` Sergey Matyukevich
2022-03-23 10:09   ` [RFC PATCH 00/13] ARC: handle the lack of ZOL supporty Sergey Matyukevich

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=20220222141506.4003433-1-geomatsi@gmail.com \
    --to=geomatsi@gmail.com \
    --cc=isaev@synopsys.com \
    --cc=linux-snps-arc@lists.infradead.org \
    --cc=sergey.matyukevich@synopsys.com \
    --cc=vgupta@kernel.org \
    /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.