linux-hyperv.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/5] hv: Remove dependencies on guest page size
@ 2019-07-12  8:11 Maya Nakamura
  2019-07-12  8:14 ` [PATCH v4 1/5] x86: hv: hyperv-tlfs.h: Create and use Hyper-V page definitions Maya Nakamura
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Maya Nakamura @ 2019-07-12  8:11 UTC (permalink / raw)
  To: mikelley, kys, haiyangz, sthemmin, sashal; +Cc: x86, linux-hyperv, linux-kernel

The Linux guest page size and hypervisor page size concepts are
different, even though they happen to be the same value on x86. Hyper-V
code mixes up the two, so this patchset begins to address that by
creating and using a set of Hyper-V specific page definitions.

A major benefit of those new definitions is that they support non-x86
architectures, such as ARM64, that use different page sizes. On ARM64,
the guest page size may not be 4096, and Hyper-V always runs with a page
size of 4096.

In this patchset, the first two patches lay the foundation for the
others, creating definitions and preparing for allocation of memory with
the size and alignment that Hyper-V expects as a page. Patch 3 applies
the page size definition where the guest VM and Hyper-V communicate, and
where the code intends to use the Hyper-V page size. The last two
patches set the ring buffer size to a fixed value, removing the
dependency on the guest page size.

This is the initial set of changes to the Hyper-V code, and future
patches will make additional changes using the same foundation, for
example, replace __vmalloc() and related functions when Hyper-V pages
are intended.

Changes in v4 (all apply to patch 2 only):
- Remove file name from the subject.
- Include prototypes of two new functions.
- Add another Link tag.

Changes in v3:
- Simplify expression for BUILD_BUG_ON() in patch 2.
- Add Link and Reviewed-by tags.

Change in v2:
- Replace patch 2 with a new one.

Maya Nakamura (5):
  x86: hv: hyperv-tlfs.h: Create and use Hyper-V page definitions
  x86: hv: Add functions to allocate/deallocate page for Hyper-V
  hv: vmbus: Replace page definition with Hyper-V specific one
  HID: hv: Remove dependencies on PAGE_SIZE for ring buffer
  Input: hv: Remove dependencies on PAGE_SIZE for ring buffer

 arch/x86/hyperv/hv_init.c             | 14 ++++++++++++++
 arch/x86/include/asm/hyperv-tlfs.h    | 12 +++++++++++-
 arch/x86/include/asm/mshyperv.h       |  5 ++++-
 drivers/hid/hid-hyperv.c              |  4 ++--
 drivers/hv/hyperv_vmbus.h             |  8 ++++----
 drivers/input/serio/hyperv-keyboard.c |  4 ++--
 6 files changed, 37 insertions(+), 10 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2019-09-03  0:26 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-12  8:11 [PATCH v4 0/5] hv: Remove dependencies on guest page size Maya Nakamura
2019-07-12  8:14 ` [PATCH v4 1/5] x86: hv: hyperv-tlfs.h: Create and use Hyper-V page definitions Maya Nakamura
2019-07-12  8:21 ` [PATCH v4 2/5] x86: hv: Add functions to allocate/deallocate page for Hyper-V Maya Nakamura
2019-07-12  8:25 ` [PATCH v4 3/5] hv: vmbus: Replace page definition with Hyper-V specific one Maya Nakamura
2019-07-18  2:22   ` Sasha Levin
2019-07-22  9:08     ` Thomas Gleixner
2019-07-12  8:27 ` [PATCH v4 4/5] HID: hv: Remove dependencies on PAGE_SIZE for ring buffer Maya Nakamura
     [not found]   ` <DM5PR21MB013708BF1876B7282C049B76D7BC0@DM5PR21MB0137.namprd21.prod.outlook.com>
2019-09-02 11:30     ` Jiri Kosina
2019-09-03  0:26       ` Sasha Levin
2019-07-12  8:30 ` [PATCH v4 5/5] Input: " Maya Nakamura
2019-07-14 23:28   ` Dmitry Torokhov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).