All of lore.kernel.org
 help / color / mirror / Atom feed
From: Claudio Imbrenda <imbrenda@linux.ibm.com>
To: kvm@vger.kernel.org
Cc: linux-s390@vger.kernel.org, david@redhat.com, thuth@redhat.com,
	frankja@linux.ibm.com, cohuck@redhat.com
Subject: [kvm-unit-tests PATCH v4 0/7] s390: Add support for large pages
Date: Wed, 26 May 2021 15:42:38 +0200	[thread overview]
Message-ID: <20210526134245.138906-1-imbrenda@linux.ibm.com> (raw)

Introduce support for large (1M) and huge (2G) pages.

Add a simple testcase for EDAT1 and EDAT2.

v3->v4
* replace macros in patch 5 with a union representing TEID fields
* clear the teid in expect_pgm_int and clear_pgm_int
* update testcase to use expect_pgm_int, remove expect_dat_fault
* update testcase to use teid union

v2->v3
* Add proper macros for control register bits
* Improved patch titles and descriptions
* Moved definition of TEID bits to library
* Rebased on the lastest upstream branch

v1->v2

* split patch 2 -> new patch 2 and new patch 3
* patch 2: fixes pgtable.h, also fixes wrong usage of REGION_TABLE_LENGTH
  instead of SEGMENT_TABLE_LENGTH
* patch 3: introduces new macros and functions for large pages
* patch 4: remove erroneous double call to pte_alloc in get_pte
* patch 4: added comment in mmu.c to bridge the s390x architecural names
  with the Linux ones used in the kvm-unit-tests
* patch 5: added and fixed lots of comments to explain what's going on
* patch 5: set FC for region 3 after writing the canary, like for segments
* patch 5: use uintptr_t instead of intptr_t for set_prefix
* patch 5: introduce new macro PGD_PAGE_SHIFT instead of using magic value 41
* patch 5: use VIRT(0) instead of mem to make it more clear what we are
  doing, even though VIRT(0) expands to mem

Claudio Imbrenda (7):
  s390x: lib: add and use macros for control register bits
  libcflat: add SZ_1M and SZ_2G
  s390x: lib: fix pgtable.h
  s390x: lib: Add idte and other huge pages functions/macros
  s390x: lib: add teid union and clear teid from lowcore
  s390x: mmu: add support for large pages
  s390x: edat test

 s390x/Makefile            |   1 +
 lib/s390x/asm/arch_def.h  |  12 ++
 lib/s390x/asm/float.h     |   4 +-
 lib/s390x/asm/interrupt.h |  26 +++-
 lib/s390x/asm/pgtable.h   |  44 +++++-
 lib/libcflat.h            |   2 +
 lib/s390x/mmu.h           |  73 +++++++++-
 lib/s390x/interrupt.c     |   2 +
 lib/s390x/mmu.c           | 260 ++++++++++++++++++++++++++++++++----
 lib/s390x/sclp.c          |   4 +-
 s390x/diag288.c           |   2 +-
 s390x/edat.c              | 274 ++++++++++++++++++++++++++++++++++++++
 s390x/gs.c                |   2 +-
 s390x/iep.c               |   4 +-
 s390x/skrf.c              |   2 +-
 s390x/smp.c               |   8 +-
 s390x/vector.c            |   2 +-
 s390x/unittests.cfg       |   3 +
 18 files changed, 676 insertions(+), 49 deletions(-)
 create mode 100644 s390x/edat.c

-- 
2.31.1


             reply	other threads:[~2021-05-26 13:42 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-26 13:42 Claudio Imbrenda [this message]
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 1/7] s390x: lib: add and use macros for control register bits Claudio Imbrenda
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 2/7] libcflat: add SZ_1M and SZ_2G Claudio Imbrenda
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 3/7] s390x: lib: fix pgtable.h Claudio Imbrenda
2021-05-27 14:47   ` Janosch Frank
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 4/7] s390x: lib: Add idte and other huge pages functions/macros Claudio Imbrenda
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 5/7] s390x: lib: add teid union and clear teid from lowcore Claudio Imbrenda
2021-05-27 14:52   ` Janosch Frank
2021-05-27 15:05     ` Claudio Imbrenda
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 6/7] s390x: mmu: add support for large pages Claudio Imbrenda
2021-05-28  8:44   ` Janosch Frank
2021-05-28 10:03     ` Claudio Imbrenda
2021-05-26 13:42 ` [kvm-unit-tests PATCH v4 7/7] s390x: edat test Claudio Imbrenda
2021-05-31 14:29   ` Janosch Frank

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=20210526134245.138906-1-imbrenda@linux.ibm.com \
    --to=imbrenda@linux.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=frankja@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=thuth@redhat.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.