xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen Devel <xen-devel@lists.xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Glenn Enright <glenn@rimuhosting.com>
Subject: [PATCH XTF 4/4] build: Avoid using initialisers for anonymous unions
Date: Thu, 28 Sep 2017 11:59:32 +0100	[thread overview]
Message-ID: <1506596372-24393-4-git-send-email-andrew.cooper3@citrix.com> (raw)
In-Reply-To: <1506596372-24393-1-git-send-email-andrew.cooper3@citrix.com>

GCC 4.4 of CentOS 6 vintage can't cope.

Reported-by: Glenn Enright <glenn@rimuhosting.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
 tests/livepatch-priv-check/main.c | 75 ++++++++++++++-------------------------
 1 file changed, 26 insertions(+), 49 deletions(-)

diff --git a/tests/livepatch-priv-check/main.c b/tests/livepatch-priv-check/main.c
index e51ba64..9f9e778 100644
--- a/tests/livepatch-priv-check/main.c
+++ b/tests/livepatch-priv-check/main.c
@@ -38,23 +38,17 @@ static void check_ret(const char *test, int rc)
 static void test_upload(void)
 {
     static uint8_t payload[PAGE_SIZE];
-    xen_sysctl_t op =
-    {
+    xen_sysctl_t op = {
         .cmd = XEN_SYSCTL_livepatch_op,
         .interface_version = sysctl_interface_version,
-        .u.livepatch = {
-            .cmd = XEN_SYSCTL_LIVEPATCH_UPLOAD,
-            .u.upload = {
-                .name = {
-                    .name.p = TEST_NAME,
-                    .size = sizeof(TEST_NAME),
-                },
-                .size = PAGE_SIZE,
-                .payload.p = payload,
-            },
-        },
     };
 
+    op.u.livepatch.cmd = XEN_SYSCTL_LIVEPATCH_UPLOAD;
+    op.u.livepatch.u.upload.name.name.p = TEST_NAME;
+    op.u.livepatch.u.upload.name.size = sizeof(TEST_NAME);
+    op.u.livepatch.u.upload.size = PAGE_SIZE;
+    op.u.livepatch.u.upload.payload.p = payload;
+
     check_ret(__func__, hypercall_sysctl(&op));
 }
 
@@ -64,64 +58,47 @@ static void test_list(void)
 {
     char names[NR_PAYLOADS * XEN_LIVEPATCH_NAME_SIZE];
     uint32_t lengths[NR_PAYLOADS];
-
-    xen_sysctl_t op =
-    {
+    xen_sysctl_t op = {
         .cmd = XEN_SYSCTL_livepatch_op,
         .interface_version = sysctl_interface_version,
-        .u.livepatch = {
-            .cmd = XEN_SYSCTL_LIVEPATCH_LIST,
-            .u.list = {
-                .idx = 0,
-                .nr = NR_PAYLOADS,
-                .name.p = names,
-                .len.p = lengths,
-            },
-        },
     };
 
+    op.u.livepatch.cmd = XEN_SYSCTL_LIVEPATCH_LIST;
+    op.u.livepatch.u.list.idx = 0;
+    op.u.livepatch.u.list.nr = NR_PAYLOADS;
+    op.u.livepatch.u.list.name.p = names;
+    op.u.livepatch.u.list.len.p = lengths;
+
     check_ret(__func__, hypercall_sysctl(&op));
 }
 
 static void test_get(void)
 {
-    xen_sysctl_t op =
-    {
+    xen_sysctl_t op = {
         .cmd = XEN_SYSCTL_livepatch_op,
         .interface_version = sysctl_interface_version,
-        .u.livepatch = {
-            .cmd = XEN_SYSCTL_LIVEPATCH_GET,
-            .u.get = {
-                .name = {
-                    .name.p = TEST_NAME,
-                    .size = sizeof(TEST_NAME),
-                },
-            },
-        },
     };
 
+    op.u.livepatch.cmd = XEN_SYSCTL_LIVEPATCH_GET;
+    op.u.livepatch.u.get.name.name.p = TEST_NAME;
+    op.u.livepatch.u.get.name.size = sizeof(TEST_NAME);
+
     check_ret(__func__, hypercall_sysctl(&op));
 }
 
 static void test_action(uint32_t action)
 {
-    xen_sysctl_t op =
-    {
+    xen_sysctl_t op = {
         .cmd = XEN_SYSCTL_livepatch_op,
         .interface_version = sysctl_interface_version,
-        .u.livepatch = {
-            .cmd = XEN_SYSCTL_LIVEPATCH_ACTION,
-            .u.action = {
-                .name = {
-                    .name.p = TEST_NAME,
-                    .size = sizeof(TEST_NAME),
-                },
-                .cmd = action,
-                .timeout = 0,
-            },
-        },
     };
 
+    op.u.livepatch.cmd = XEN_SYSCTL_LIVEPATCH_ACTION;
+    op.u.livepatch.u.action.name.name.p = TEST_NAME;
+    op.u.livepatch.u.action.name.size = sizeof(TEST_NAME);
+    op.u.livepatch.u.action.cmd = action;
+    op.u.livepatch.u.action.timeout = 0;
+
     check_ret(__func__, hypercall_sysctl(&op));
 }
 
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

  parent reply	other threads:[~2017-09-28 10:59 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-28  1:43 Building xtf on older distros Glenn Enright
2017-09-28  8:45 ` Wei Liu
2017-09-28  8:51   ` Andrew Cooper
2017-09-28  8:53     ` Wei Liu
2017-09-28 10:59 ` [PATCH XTF 1/4] build: Support BUILD_BUG_ON() with compilers lacking _Static_assert() Andrew Cooper
2017-09-28 10:59   ` [PATCH XTF 2/4] build: Drop unnecessary register clobbers Andrew Cooper
2017-09-28 12:33     ` Jan Beulich
2017-09-28 10:59   ` [PATCH XTF 3/4] build: Opencode vmfunc as bytes Andrew Cooper
2017-09-28 12:34     ` Jan Beulich
2017-09-28 10:59   ` Andrew Cooper [this message]
2017-09-28 12:37     ` [PATCH XTF 4/4] build: Avoid using initialisers for anonymous unions Jan Beulich
2017-09-28 16:56       ` Andrew Cooper
2017-09-28 17:10         ` [PATCH XTF v2 " Andrew Cooper
2017-10-01 21:04           ` Glenn Enright
2017-09-28 12:32   ` [PATCH XTF 1/4] build: Support BUILD_BUG_ON() with compilers lacking _Static_assert() Jan Beulich
2017-09-28 12:34     ` Andrew Cooper
2017-09-28 12:50       ` Jan Beulich

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=1506596372-24393-4-git-send-email-andrew.cooper3@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=glenn@rimuhosting.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).