[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH RFC] tools: add map files for libxen{store, ctrl, guest}.so



On 07/01/16 13:51, Ian Campbell wrote:
> The map files highlight a number of namespacing inconsistencies
> (particularly with libxenguest using xc_* a significant amount).
>
> It also seems to highlight a bunch of libxenguest.so functionalty
> which appears to want to be exported (xc_*) but is not used in tree.
> The initial list was based on what was needed to compile everything in
> tree. I then looked through the list for xc_* and checked if any were
> exported in a public header, leading to adding the following functions
> which are intended to be public but not used in tree to the
> libxenguest.map:
>   - xc_cpuid_to_str
>   - xc_compression_add_page
>   - xc_compression_compress_pages
>   - xc_compression_create_context
>   - xc_compression_free_context
>   - xc_compression_reset_pagebuf
>   - xc_compression_uncompress_page

These compression functions became unused when I dropped legacy migration.

> diff --git a/tools/libxc/libxenctrl.map b/tools/libxc/libxenctrl.map
> new file mode 100644
> index 0000000..cc93a5b
> --- /dev/null
> +++ b/tools/libxc/libxenctrl.map
> @@ -0,0 +1,18 @@
> +{
> +     global:
> +             xc_*;
> +
> +             /*
> +              * Supposedly internal functions which are also used
> +              * by libxenguest (only, it seems)
> +              */
> +             read_exact;
> +             write_exact;
> +             writev_exact;

read/write_exact are used in libxc by xc_tmem.c, but only because the
tmem part of legacy migration split across the two libraries.

In the long term, they should move to being xenguest private.

~Andrew

> +
> +             /* Other un-namespaced functions used elsewhere in tree */
> +             do_xen_hypercall;
> +             do_memory_op;
> +
> +     local: *; /* Do not expose anything by default */
> +};


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.