From: Ian Campbell <ian.campbell@citrix.com>
To: xen-devel@lists.xensource.com
Cc: Ian Campbell <ian.campbell@citrix.com>
Subject: [PATCH 00 of 26] libxl: autogenerate type definitions and destructor functions
Date: Mon, 16 Aug 2010 15:33:24 +0100 [thread overview]
Message-ID: <patchbomb.1281969204@localhost.localdomain> (raw)
The series introduces auto-generation of the type definitions used in
the libxl interface followed by auto-generation of a destructor
function for each type. In the future it may be possible to use the
related data structures for other purposes, for example auto-generation
of the functions to marshal between C and language binding data types.
tools/_libxl_types.h should be identical both before applying and
after applying+building "libxl: autogenerate _libxl_types.h" apart
from a "DO NOT EDIT" header.
Since last time:
* rebased
* corrected Makefile dependencies to include libxltypes.idl
* manually implemented libxl_file_reference_destroy since it is more
complex than just freeing the contained types.
* Made libxl_file_reference_{map,unmap} into internal functions.
* Added typedefs for various types:
- libxl_cpumap
- libxl_hwcap
* Made libxl_xen_console_reader an opaque type and by making the definition
internal.
* moved more types from libxl.h to _libxl_types.h. I think all those
which it makes sense to generate are now accounted for.
* disabled destructor generation for types which have no interesting
fields (i.e. had empty destructor functions). I have retained the
empty destructors for types which belong to a set where some types
do have a valid need for a destructor funntion (e.g. libxl_device_*
or libxl_*info)
* Audit for usages of libxl_device_* and libxl_*info which can use the
new destructors. I'm sure I haven't caught them all.
Depends (or at least was developed on top of) on Gianni patches:
* fix invalid free segfault and use-after-free in
libxl_device_disk_list()
* v2: xl: make libxl_uuid2string internal to libxenlight
Tested with:
create
destroy (w/ valgrind)
block-list (w/ valgrind)
network-list (w/ valgrind)
network-attach (w/ valgrind)
network-detach (w/ valgrind)
vcpu-list (w/ valgrind)
cd-insert (w/ valgrind)
create, other than dry run, and valgrind don't currently play
nice together. It's not clear if its all the foreign mappings or something
else. I've tested creating both HVM and PV guests.
Ian.
next reply other threads:[~2010-08-16 14:33 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-16 14:33 Ian Campbell [this message]
2010-08-16 14:33 ` [PATCH 01 of 26] xl: use the regular implicit rules to build the xl .o files Ian Campbell
2010-08-16 14:33 ` [PATCH 02 of 26] libxl: define specific types for string list and key, value list Ian Campbell
2010-08-16 14:33 ` [PATCH 03 of 26] libxl: move various enum and #defines above datastructure definitions Ian Campbell
2010-08-16 14:33 ` [PATCH 04 of 26] libxl: add specific type for cpumap Ian Campbell
2010-08-16 14:33 ` [PATCH 05 of 26] libxl: add specific type for hwcaps Ian Campbell
2010-08-16 14:33 ` [PATCH 06 of 26] libxl: make libxl_console_reader type opaque to users of libxl Ian Campbell
2010-08-16 14:33 ` [PATCH 07 of 26] lbixl: make libxl_device_model_starting " Ian Campbell
2010-08-16 14:33 ` [PATCH 08 of 26] libxl: ensure result of libxl_poolid_to_name is always dynamically allocated Ian Campbell
2010-08-16 14:33 ` [PATCH 09 of 26] libxl: move type definitions into _libxl_types.h Ian Campbell
2010-08-16 14:33 ` [PATCH 10 of 26] libxl: tweak formatting/whitespace of _libxl_types.h Ian Campbell
2010-08-16 14:33 ` [PATCH 11 of 26] libxl: autogenerate _libxl_types.h Ian Campbell
2010-08-17 11:53 ` Stefano Stabellini
2010-08-17 12:20 ` Ian Campbell
2010-08-16 14:33 ` [PATCH 12 of 26] libxl: generate destructors for each libxl defined type Ian Campbell
2010-08-16 14:33 ` [PATCH 13 of 26] libxl: libxl_device_console.build_state is const Ian Campbell
2010-08-16 14:33 ` [PATCH 14 of 26] libxl: build info bootloader{, _args} are not const Ian Campbell
2010-08-16 14:33 ` [PATCH 15 of 26] libxl: do not generate a destructor for data types which do not require one Ian Campbell
2010-08-16 14:33 ` [PATCH 16 of 26] libxl: implement destroy for libxl_file_reference builtin type Ian Campbell
2010-08-16 14:33 ` [PATCH 17 of 26] xl: free the libxl types contained in struct domain_config Ian Campbell
2010-08-16 14:33 ` [PATCH 18 of 26] libxl: use libxl_version_info_destroy instead of hand-coded do_free_version_info Ian Campbell
2010-08-16 14:33 ` [PATCH 19 of 26] xl: destroy device model info after creation Ian Campbell
2010-08-16 14:33 ` [PATCH 20 of 26] xl: free all data on exit from the domain monitor daemon Ian Campbell
2010-08-17 12:27 ` Stefano Stabellini
2010-08-17 12:33 ` Ian Campbell
2010-08-17 15:11 ` Ian Jackson
2010-08-17 15:12 ` Ian Campbell
2010-08-16 14:33 ` [PATCH 21 of 26] libxl/xl: use libxl_diskinfo_destroy and libxl_device_disk_destroy Ian Campbell
2010-08-16 14:33 ` [PATCH 22 of 26] libxl/xl: Use libxl_device_nic_destroy and libxl_nicinfo_destroy Ian Campbell
2010-08-16 14:33 ` [PATCH 23 of 26] libxl/xl: Use libxl_vcpuinfo_destroy Ian Campbell
2010-08-16 14:33 ` [PATCH 24 of 26] xl: use libxl_device_pci_destroy Ian Campbell
2010-08-16 14:33 ` [PATCH 25 of 26] libxl: do not GC data returned to the caller by libxl_device_disk_getinfo Ian Campbell
2010-08-16 14:33 ` [PATCH 26 of 26] libxl: xs_read accepts NULL for *len parameter Ian Campbell
2010-08-17 12:14 ` [PATCH 00 of 26] libxl: autogenerate type definitions and destructor functions Gianni Tedesco
2010-08-17 12:25 ` Ian Campbell
2010-08-17 12:24 ` Gianni Tedesco
2010-08-17 12:34 ` Stefano Stabellini
2010-08-17 12:37 ` Ian Campbell
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=patchbomb.1281969204@localhost.localdomain \
--to=ian.campbell@citrix.com \
--cc=xen-devel@lists.xensource.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 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).