From: Juergen Gross <jgross@suse.com>
To: grub-devel@gnu.org
Cc: xen-devel@lists.xen.org, phcoder@gmail.com,
daniel.kiper@oracle.com, hans@knorrie.org,
Juergen Gross <jgross@suse.com>
Subject: [PATCH v2 03/18] xen: carve out grant tab initialization into dedicated function
Date: Tue, 9 Oct 2018 13:03:02 +0200 [thread overview]
Message-ID: <20181009110317.6022-4-jgross@suse.com> (raw)
In-Reply-To: <20181009110317.6022-1-jgross@suse.com>
Initialize the grant tab in a dedicated function. This will enable
using it for PVH guests, too.
Call the new function from grub_machine_init() as this will later
be common between Xen PV and Xen PVH mode.
Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2: update commit message (Daniel Kiper)
---
grub-core/kern/xen/init.c | 35 +++++++++++++++++++++--------------
1 file changed, 21 insertions(+), 14 deletions(-)
diff --git a/grub-core/kern/xen/init.c b/grub-core/kern/xen/init.c
index 0559c033c..29f5bc23d 100644
--- a/grub-core/kern/xen/init.c
+++ b/grub-core/kern/xen/init.c
@@ -318,6 +318,25 @@ grub_xenstore_dir (const char *dir,
unsigned long gntframe = 0;
+static void
+grub_xen_setup_gnttab (void)
+{
+ struct gnttab_set_version gnttab_setver;
+ struct gnttab_setup_table gnttab_setup;
+
+ grub_memset (&gnttab_setver, 0, sizeof (gnttab_setver));
+
+ gnttab_setver.version = 1;
+ grub_xen_grant_table_op (GNTTABOP_set_version, &gnttab_setver, 1);
+
+ grub_memset (&gnttab_setup, 0, sizeof (gnttab_setup));
+ gnttab_setup.dom = DOMID_SELF;
+ gnttab_setup.nr_frames = 1;
+ gnttab_setup.frame_list.p = &gntframe;
+
+ grub_xen_grant_table_op (GNTTABOP_setup_table, &gnttab_setup, 1);
+}
+
#define MAX_N_UNUSABLE_PAGES 4
static int
@@ -357,26 +376,12 @@ map_all_pages (void)
(grub_xen_mfn_t *) grub_xen_start_page_addr->mfn_list;
grub_uint64_t *pg = (grub_uint64_t *) window;
grub_uint64_t oldpgstart, oldpgend;
- struct gnttab_setup_table gnttab_setup;
- struct gnttab_set_version gnttab_setver;
grub_size_t n_unusable_pages = 0;
struct mmu_update m2p_updates[2 * MAX_N_UNUSABLE_PAGES];
if (total_pages > MAX_TOTAL_PAGES - 4)
total_pages = MAX_TOTAL_PAGES - 4;
- grub_memset (&gnttab_setver, 0, sizeof (gnttab_setver));
-
- gnttab_setver.version = 1;
- grub_xen_grant_table_op (GNTTABOP_set_version, &gnttab_setver, 1);
-
- grub_memset (&gnttab_setup, 0, sizeof (gnttab_setup));
- gnttab_setup.dom = DOMID_SELF;
- gnttab_setup.nr_frames = 1;
- gnttab_setup.frame_list.p = &gntframe;
-
- grub_xen_grant_table_op (GNTTABOP_setup_table, &gnttab_setup, 1);
-
for (j = 0; j < total_pages - n_unusable_pages; j++)
while (!grub_xen_is_page_usable (mfn_list[j]))
{
@@ -537,6 +542,8 @@ grub_machine_init (void)
+ GRUB_KERNEL_MACHINE_MOD_GAP,
GRUB_KERNEL_MACHINE_MOD_ALIGN);
+ grub_xen_setup_gnttab ();
+
map_all_pages ();
grub_console_init ();
--
2.16.4
next prev parent reply other threads:[~2018-10-09 11:03 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-09 11:02 [PATCH v2 00/18] xen: add pvh guest support Juergen Gross
2018-10-09 11:03 ` [PATCH v2 01/18] xen: add some xen headers Juergen Gross
2018-10-18 13:45 ` Daniel Kiper
2018-10-18 14:04 ` Juergen Gross
2018-10-18 14:14 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 02/18] loader/linux: support passing rsdp address via boot params Juergen Gross
2018-10-18 14:13 ` Daniel Kiper
2018-10-18 14:18 ` Juergen Gross
2018-10-18 14:30 ` Daniel Kiper
2018-10-18 14:36 ` Juergen Gross
2018-10-18 14:48 ` Daniel Kiper
2018-10-18 14:53 ` Juergen Gross
2018-10-18 15:01 ` Daniel Kiper
2018-10-09 11:03 ` Juergen Gross [this message]
2018-10-18 14:35 ` [PATCH v2 03/18] xen: carve out grant tab initialization into dedicated function Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 04/18] xen: prepare common code for Xen PVH support Juergen Gross
2018-10-18 14:59 ` Daniel Kiper
2018-10-18 15:39 ` Juergen Gross
2018-10-19 6:36 ` [Xen-devel] " Juergen Gross
2018-10-09 11:03 ` [PATCH v2 05/18] xen: add some dummy headers for PVH mode Juergen Gross
2018-10-18 15:19 ` Daniel Kiper
2018-10-18 15:40 ` Juergen Gross
2018-10-09 11:03 ` [PATCH v2 06/18] xen: rearrange xen/init.c to prepare it for Xen " Juergen Gross
2018-10-18 17:55 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 07/18] xen: add PVH specific defines to offset.h Juergen Gross
2018-10-19 11:54 ` Daniel Kiper
2018-10-19 14:39 ` [Xen-devel] " Juergen Gross
2018-10-09 11:03 ` [PATCH v2 08/18] xen: add basic hooks for PVH in current code Juergen Gross
2018-10-19 12:05 ` Daniel Kiper
2018-10-19 14:40 ` [Xen-devel] " Juergen Gross
2018-10-19 15:33 ` Roger Pau Monné
2018-10-19 15:52 ` Juergen Gross
2018-10-22 11:16 ` Daniel Kiper
2018-10-22 11:18 ` Juergen Gross
2018-10-09 11:03 ` [PATCH v2 09/18] xen: add PVH boot entry code Juergen Gross
2018-10-19 12:17 ` Daniel Kiper
2018-10-19 14:50 ` [Xen-devel] " Juergen Gross
2018-10-22 11:18 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 10/18] xen: setup hypercall page for PVH Juergen Gross
2018-10-19 12:30 ` Daniel Kiper
2018-10-19 12:48 ` [Xen-devel] " Andrew Cooper
2018-10-19 15:01 ` Juergen Gross
2018-10-19 15:40 ` Roger Pau Monné
2018-10-19 15:59 ` Juergen Gross
2018-10-09 11:03 ` [PATCH v2 11/18] xen: get memory map from hypervisor " Juergen Gross
2018-10-19 12:40 ` Daniel Kiper
2018-10-19 15:06 ` [Xen-devel] " Juergen Gross
2018-10-09 11:03 ` [PATCH v2 12/18] xen: setup Xen specific data " Juergen Gross
2018-10-19 12:48 ` Daniel Kiper
2018-10-19 15:10 ` [Xen-devel] " Juergen Gross
2018-10-24 14:01 ` Juergen Gross
2018-10-19 15:46 ` Roger Pau Monné
2018-10-19 16:10 ` Roger Pau Monné
2018-10-19 16:39 ` Juergen Gross
2018-10-29 12:57 ` Roger Pau Monné
2018-10-29 14:19 ` Juergen Gross
2018-10-30 11:23 ` Roger Pau Monné
2018-10-30 12:12 ` Juergen Gross
2018-10-09 11:03 ` [PATCH v2 13/18] xen: init memory regions " Juergen Gross
2018-10-22 11:31 ` Daniel Kiper
2018-10-22 11:43 ` Juergen Gross
2018-10-22 12:08 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 14/18] xenpvh: add build runes for grub-core Juergen Gross
2018-10-22 11:41 ` Daniel Kiper
2018-10-22 11:45 ` Juergen Gross
2018-10-09 11:03 ` [PATCH v2 15/18] grub-module-verifier: Ignore all_video for xenpvh Juergen Gross
2018-10-22 11:45 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 16/18] xenpvh: support building a standalone image Juergen Gross
2018-10-22 11:56 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 17/18] xenpvh: support grub-install for xenpvh Juergen Gross
2018-10-22 12:01 ` Daniel Kiper
2018-10-09 11:03 ` [PATCH v2 18/18] xenpvh: add support to configure Juergen Gross
2018-10-22 12:04 ` Daniel Kiper
2018-10-10 15:59 ` [Xen-devel] [PATCH v2 00/18] xen: add pvh guest support Juergen Gross
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=20181009110317.6022-4-jgross@suse.com \
--to=jgross@suse.com \
--cc=daniel.kiper@oracle.com \
--cc=grub-devel@gnu.org \
--cc=hans@knorrie.org \
--cc=phcoder@gmail.com \
--cc=xen-devel@lists.xen.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 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).