tools/libxenguest: remove Mini-OS specific parts

The last Mini-OS use case of libxenguest is gone, so remove the
Mini-OS specific parts of libxenguest.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
This commit is contained in:
Juergen Gross authored and Andrew Cooper committed 2026-09-22 11:36:15 +01:00
1 parent 8d70af242d
commit 487f7e945a
9 files changed
-292

No files matched your search

-15
View File
@@ -1,8 +1,3 @@
ifeq ($(CONFIG_LIBXC_MINIOS),y)
# Save/restore of a domain is currently incompatible with a stubdom environment
override CONFIG_MIGRATE := n
endif
OBJS-y += xg_private.o
OBJS-y += xg_domain.o
OBJS-y += xg_suspend.o
@@ -55,16 +50,6 @@ OBJS-$(CONFIG_X86) += xg_dom_x86.o
OBJS-$(CONFIG_X86) += xg_cpuid_x86.o
OBJS-$(CONFIG_ARM) += xg_dom_arm.o
ifeq ($(CONFIG_LIBXC_MINIOS),y)
OBJS-y += xg_dom_decompress_unsafe.o
OBJS-y += xg_dom_decompress_unsafe_bzip2.o
OBJS-y += xg_dom_decompress_unsafe_lz4.o
OBJS-y += xg_dom_decompress_unsafe_lzma.o
OBJS-y += xg_dom_decompress_unsafe_lzo1x.o
OBJS-y += xg_dom_decompress_unsafe_xz.o
OBJS-y += xg_dom_decompress_unsafe_zstd.o
endif
CFLAGS += -D__XEN_TOOLS__
CFLAGS += -include $(XEN_ROOT)/tools/config.h
CFLAGS += -iquote ../../../xen/common/libelf
@@ -1,48 +0,0 @@
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include "xg_private.h"
#include "xg_dom_decompress_unsafe.h"
static struct xc_dom_image *unsafe_dom;
static unsigned char *output_blob;
static unsigned int output_size;
static void unsafe_error(const char *msg)
{
xc_dom_panic(unsafe_dom->xch, XC_INVALID_KERNEL, "%s", msg);
}
static int unsafe_flush(void *src, unsigned int size)
{
void *n = realloc(output_blob, output_size + size);
if (!n)
return -1;
output_blob = n;
memcpy(&output_blob[output_size], src, size);
output_size += size;
return size;
}
int xc_dom_decompress_unsafe(
decompress_fn fn, struct xc_dom_image *dom, void **blob, size_t *size)
{
int ret;
unsafe_dom = dom;
output_blob = NULL;
output_size = 0;
ret = fn(dom->kernel_blob, dom->kernel_size, NULL, unsafe_flush, NULL, NULL, unsafe_error);
if (ret)
free(output_blob);
else {
*blob = output_blob;
*size = output_size;
}
return ret;
}
@@ -1,28 +0,0 @@
#ifdef __MINIOS__
# include "../../xen/include/xen/decompress.h"
#else
typedef int decompress_fn(unsigned char *inbuf, unsigned int len,
int (*fill)(void*, unsigned int),
int (*flush)(void*, unsigned int),
unsigned char *outbuf, unsigned int *posp,
void (*error)(const char *x));
#endif
#define cf_check /* No Control Flow Integriy checking */
int xc_dom_decompress_unsafe(
decompress_fn fn, struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
int xc_try_bzip2_decode(struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
int xc_try_lz4_decode(struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
int xc_try_lzma_decode(struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
int xc_try_lzo1x_decode(struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
int xc_try_xz_decode(struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
int xc_try_zstd_decode(struct xc_dom_image *dom, void **blob, size_t *size)
__attribute__((visibility("internal")));
@@ -1,14 +0,0 @@
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include "xg_private.h"
#include "xg_dom_decompress_unsafe.h"
#include "../../xen/common/bunzip2.c"
int xc_try_bzip2_decode(
struct xc_dom_image *dom, void **blob, size_t *size)
{
return xc_dom_decompress_unsafe(bunzip2, dom, blob, size);
}
@@ -1,39 +0,0 @@
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include <stdint.h>
#include INCLUDE_ENDIAN_H
#define XG_NEED_UNALIGNED
#include "xg_private.h"
#include "xg_dom_decompress.h"
#define CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS
typedef uint8_t u8;
typedef uint16_t u16;
typedef uint32_t u32;
typedef uint64_t u64;
#define likely(a) a
#define unlikely(a) a
static inline uint16_t le16_to_cpu(uint16_t v)
{
#if BYTE_ORDER == BIG_ENDIAN
return __builtin_bswap16(v);
#else
return v;
#endif
}
#include "../../xen/include/xen/lz4.h"
#include "../../xen/common/decompress.h"
#include "../../xen/common/unlz4.c"
int xc_try_lz4_decode(
struct xc_dom_image *dom, void **blob, size_t *size)
{
return xc_dom_decompress_unsafe(unlz4, dom, blob, size);
}
@@ -1,14 +0,0 @@
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include "xg_private.h"
#include "xg_dom_decompress_unsafe.h"
#include "../../xen/common/unlzma.c"
int xc_try_lzma_decode(
struct xc_dom_image *dom, void **blob, size_t *size)
{
return xc_dom_decompress_unsafe(unlzma, dom, blob, size);
}
@@ -1,44 +0,0 @@
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include INCLUDE_ENDIAN_H
#include <stdint.h>
#include "xg_private.h"
#include "xg_dom_decompress_unsafe.h"
typedef uint8_t u8;
typedef uint32_t u32;
typedef uint16_t u16;
typedef uint64_t u64;
#define likely(a) a
#define noinline
#define unlikely(a) a
static inline uint16_t be16_to_cpu(const uint16_t v)
{
#if BYTE_ORDER == LITTLE_ENDIAN
return __builtin_bswap16(v);
#else
return v;
#endif
}
static inline uint32_t be32_to_cpu(const uint32_t v)
{
#if BYTE_ORDER == LITTLE_ENDIAN
return __builtin_bswap32(v);
#else
return v;
#endif
}
#include "../../xen/common/lzo.c"
#include "../../xen/common/unlzo.c"
int xc_try_lzo1x_decode(
struct xc_dom_image *dom, void **blob, size_t *size)
{
return xc_dom_decompress_unsafe(unlzo, dom, blob, size);
}
@@ -1,46 +0,0 @@
#include <stdio.h>
#include INCLUDE_ENDIAN_H
#include <stdlib.h>
#include <stddef.h>
#include <stdint.h>
#include <inttypes.h>
#include "xg_private.h"
#include "xg_dom_decompress_unsafe.h"
// TODO
#define XZ_DEC_X86
typedef uint8_t u8;
typedef uint16_t u16;
typedef uint32_t u32;
typedef uint32_t __le32;
static inline uint32_t cpu_to_le32(const uint32_t v)
{
#if BYTE_ORDER == BIG_ENDIAN
return __builtin_bswap32(v);
#else
return v;
#endif
}
static inline uint32_t le32_to_cpu(const uint32_t v)
{
#if BYTE_ORDER == BIG_ENDIAN
return __builtin_bswap32(v);
#else
return v;
#endif
}
#define __force
#define always_inline
#include "../../xen/common/unxz.c"
int xc_try_xz_decode(
struct xc_dom_image *dom, void **blob, size_t *size)
{
return xc_dom_decompress_unsafe(unxz, dom, blob, size);
}
@@ -1,44 +0,0 @@
#include <stdio.h>
#include INCLUDE_ENDIAN_H
#include <stdlib.h>
#include <stddef.h>
#include <stdint.h>
#include <inttypes.h>
#include "xg_private.h"
#include "xg_dom_decompress_unsafe.h"
typedef uint8_t u8;
typedef uint16_t __u16;
typedef uint32_t __u32;
typedef uint64_t __u64;
typedef uint16_t __le16;
typedef uint32_t __le32;
typedef uint64_t __le64;
typedef uint16_t __be16;
typedef uint32_t __be32;
typedef uint64_t __be64;
#define attr_const
#define __force
#define always_inline
#define noinline
#define __packed __attribute__((__packed__))
#undef ERROR
#define __TYPES_H__ /* xen/types.h guard */
#include "../../xen/include/xen/byteorder.h"
#include "../../xen/include/xen/unaligned.h"
#include "../../xen/include/xen/xxhash.h"
#include "../../xen/lib/xxhash64.c"
#include "../../xen/common/unzstd.c"
int xc_try_zstd_decode(
struct xc_dom_image *dom, void **blob, size_t *size)
{
return xc_dom_decompress_unsafe(unzstd, dom, blob, size);
}
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.