From: George Dunlap <george.dunlap@citrix.com>
To: Nick Rosbrook <rosbrookn@gmail.com>, <xen-devel@lists.xenproject.org>
Cc: Nick Rosbrook <rosbrookn@ainfosec.com>,
Ian Jackson <ian.jackson@eu.citrix.com>,
kerriganb@ainfosec.com, Wei Liu <wl@xen.org>
Subject: Re: [Xen-devel] [PATCH 09/24] golang/xenlight: define MsVmGenid builtin type
Date: Wed, 13 Nov 2019 16:20:27 +0000 [thread overview]
Message-ID: <e0c2d27a-8816-597a-fdc9-b3e10a2abdf9@citrix.com> (raw)
In-Reply-To: <87f082bdf06e820e911256138a7380d0cf7019a2.1570456846.git.rosbrookn@ainfosec.com>
On 10/7/19 4:12 PM, Nick Rosbrook wrote:
> From: Nick Rosbrook <rosbrookn@ainfosec.com>
>
> Define MsVmGenid as [int(C.LIBXL_MS_VM_GENID_LEN)]byte and implement fromC and toC functions.
>
> Signed-off-by: Nick Rosbrook <rosbrookn@ainfosec.com>
> ---
> Cc: George Dunlap <george.dunlap@citrix.com>
> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
> Cc: Wei Liu <wl@xen.org>
>
> tools/golang/xenlight/xenlight.go | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/tools/golang/xenlight/xenlight.go b/tools/golang/xenlight/xenlight.go
> index 3b7824b284..6aca5b89c0 100644
> --- a/tools/golang/xenlight/xenlight.go
> +++ b/tools/golang/xenlight/xenlight.go
> @@ -216,6 +216,29 @@ func (mac *Mac) toC() (C.libxl_mac, error) {
> return cmac, nil
> }
>
> +// MsVmGenid represents a libxl_ms_vm_genid.
> +type MsVmGenid [int(C.LIBXL_MS_VM_GENID_LEN)]byte
> +
> +func (mvg *MsVmGenid) fromC(cmvg *C.libxl_ms_vm_genid) error {
> + b := (*[int(C.LIBXL_MS_VM_GENID_LEN)]C.uint8_t)(unsafe.Pointer(&cmvg.bytes[0]))
> +
> + for i, v := range b {
> + mvg[i] = byte(v)
> + }
It's slightly annoying to have to do this loop, but I guess given that
we have to technically cast each element of the array. Hopefully the
compiler will eventually be able to figure out what's going on here and
just do a memcpy.
> +
> + return nil
> +}
> +
> +func (mvg *MsVmGenid) toC() (C.libxl_ms_vm_genid, error) {
Hmm, I guess we want a pointer receiver here to make sure we don't end
up doing a 16-byte copy.
Reviewed-by: George Dunlap <george.dunlap@citrix.com>
-George
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
next prev parent reply other threads:[~2019-11-13 16:20 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-07 15:12 [Xen-devel] [PATCH 00/24] generated Go libxl bindings using IDL Nick Rosbrook
2019-10-07 15:12 ` [Xen-devel] [PATCH 01/24] golang/xenlight: fix calls to libxl_domain_unpause/pause Nick Rosbrook
2019-10-07 16:39 ` George Dunlap
2019-10-08 4:17 ` Jürgen Groß
2019-10-07 15:12 ` [Xen-devel] [PATCH 02/24] golang/xenlight: generate enum types from IDL Nick Rosbrook
2019-10-24 14:35 ` George Dunlap
2019-10-07 15:12 ` [Xen-devel] [PATCH 03/24] golang/xenlight: define Defbool builtin type Nick Rosbrook
2019-10-24 15:17 ` George Dunlap
2019-10-07 15:12 ` [Xen-devel] [PATCH 04/24] golang/xenlight: define Devid type as int Nick Rosbrook
2019-10-24 15:20 ` George Dunlap
2019-10-07 15:12 ` [Xen-devel] [PATCH 05/24] golang/xenlight: define KeyValueList builtin type Nick Rosbrook
2019-10-24 16:34 ` George Dunlap
2019-10-24 19:54 ` Nick Rosbrook
2019-10-25 11:26 ` George Dunlap
2019-10-25 12:30 ` Nick Rosbrook
2019-10-07 15:12 ` [Xen-devel] [PATCH 06/24] golang/xenlight: re-name Bitmap marshaling functions Nick Rosbrook
2019-11-13 15:21 ` George Dunlap
2019-11-13 20:53 ` Nick Rosbrook
2019-11-14 11:44 ` George Dunlap
2019-10-07 15:12 ` [Xen-devel] [PATCH 07/24] golang/xenlight: define StringList builtin type Nick Rosbrook
2019-11-13 15:37 ` George Dunlap
2019-11-13 21:14 ` Nick Rosbrook
2019-10-07 15:12 ` [Xen-devel] [PATCH 08/24] golang/xenlight: define Mac " Nick Rosbrook
2019-11-13 15:51 ` George Dunlap
2019-11-13 21:50 ` Nick Rosbrook
2019-11-14 12:27 ` George Dunlap
2019-11-14 15:34 ` Nick Rosbrook
2019-10-07 15:12 ` [Xen-devel] [PATCH 09/24] golang/xenlight: define MsVmGenid " Nick Rosbrook
2019-11-13 16:20 ` George Dunlap [this message]
2019-10-07 15:12 ` [Xen-devel] [PATCH 10/24] golang/xenlight: define EvLink builtin as empty struct Nick Rosbrook
2019-11-13 16:23 ` George Dunlap
2019-10-07 15:12 ` [Xen-devel] [PATCH 11/24] golang/xenlight: define CpuidPolicyList builtin type Nick Rosbrook
2019-11-13 17:34 ` George Dunlap
2019-11-14 14:58 ` Nick Rosbrook
2019-11-14 17:44 ` George Dunlap
2019-11-15 15:26 ` Nick Rosbrook
2019-11-15 15:42 ` George Dunlap
2019-11-15 15:51 ` Nick Rosbrook
2019-11-15 15:58 ` George Dunlap
2019-11-15 16:06 ` Nick Rosbrook
2019-10-07 15:12 ` [Xen-devel] [PATCH 12/24] golang/xenlight: re-factor Uuid type implementation Nick Rosbrook
2019-11-13 17:47 ` George Dunlap
2019-10-07 15:13 ` [Xen-devel] [PATCH 13/24] golang/xenlight: re-factor Hwcap " Nick Rosbrook
2019-11-13 17:58 ` George Dunlap
2019-10-07 15:13 ` [Xen-devel] [PATCH 14/24] golang/xenlight: generate structs from the IDL Nick Rosbrook
2019-11-14 14:18 ` George Dunlap
2019-11-14 16:15 ` Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 15/24] golang/xenlight: remove no-longer used type MemKB Nick Rosbrook
2019-11-14 14:18 ` George Dunlap
2019-10-07 15:13 ` [Xen-devel] [PATCH 16/24] golang/xenlight: begin C to Go type marshaling Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 17/24] golang/xenlight: implement keyed union C to Go marshaling Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 18/24] golang/xenlight: implement array " Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 19/24] golang/xenlight: begin Go to C type marshaling Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 20/24] golang/xenlight: implement keyed union Go to C marshaling Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 21/24] golang/xenlight: implement array " Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 22/24] golang/xenlight: revise use of Context type Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 23/24] golang/xenlight: add error return type to Context.Cpupoolinfo Nick Rosbrook
2019-10-07 15:13 ` [Xen-devel] [PATCH 24/24] golang/xenlight: add make target for generated files Nick Rosbrook
2019-10-24 14:26 ` George Dunlap
2019-10-24 18:49 ` Nick Rosbrook
2019-11-14 17:19 ` George Dunlap
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=e0c2d27a-8816-597a-fdc9-b3e10a2abdf9@citrix.com \
--to=george.dunlap@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=kerriganb@ainfosec.com \
--cc=rosbrookn@ainfosec.com \
--cc=rosbrookn@gmail.com \
--cc=wl@xen.org \
--cc=xen-devel@lists.xenproject.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).