mirror of
https://github.com/mii443/qemu.git
synced 2025-08-27 17:39:37 +00:00
Merge remote-tracking branch 'remotes/ehabkost/tags/machine-next-pull-request' into staging
Machine queue, 2019-04-25 * 4.1 machine-types (Cornelia Huck) * Support MAP_SYNC on pmem memory backends (Zhang Yi) * -cpu parsing fixes and cleanups (Eduardo Habkost) * machine initialization cleanups (Wei Yang, Markus Armbruster) # gpg: Signature made Thu 25 Apr 2019 18:54:57 BST # gpg: using RSA key 2807936F984DC5A6 # gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com>" [full] # Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF D1AA 2807 936F 984D C5A6 * remotes/ehabkost/tags/machine-next-pull-request: util/mmap-alloc: support MAP_SYNC in qemu_ram_mmap() linux-headers: add linux/mman.h. scripts/update-linux-headers: add linux/mman.h util/mmap-alloc: Add a 'is_pmem' parameter to qemu_ram_mmap cpu: Fix crash with empty -cpu option cpu: Rename parse_cpu_model() to parse_cpu_option() vl: Simplify machine_parse() vl: Clean up after previous commit vl.c: allocate TYPE_MACHINE list once during bootup vl.c: make find_default_machine() local hw: add compat machines for 4.1 Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
@ -57,7 +57,6 @@ void memory_region_allocate_system_memory(MemoryRegion *mr, Object *owner,
|
||||
#define MACHINE_CLASS(klass) \
|
||||
OBJECT_CLASS_CHECK(MachineClass, (klass), TYPE_MACHINE)
|
||||
|
||||
MachineClass *find_default_machine(void);
|
||||
extern MachineState *current_machine;
|
||||
|
||||
void machine_run_board_init(MachineState *machine);
|
||||
@ -293,6 +292,9 @@ struct MachineState {
|
||||
} \
|
||||
type_init(machine_initfn##_register_types)
|
||||
|
||||
extern GlobalProperty hw_compat_4_0[];
|
||||
extern const size_t hw_compat_4_0_len;
|
||||
|
||||
extern GlobalProperty hw_compat_3_1[];
|
||||
extern const size_t hw_compat_3_1_len;
|
||||
|
||||
|
@ -293,6 +293,9 @@ int e820_add_entry(uint64_t, uint64_t, uint32_t);
|
||||
int e820_get_num_entries(void);
|
||||
bool e820_get_entry(int, uint32_t, uint64_t *, uint64_t *);
|
||||
|
||||
extern GlobalProperty pc_compat_4_0[];
|
||||
extern const size_t pc_compat_4_0_len;
|
||||
|
||||
extern GlobalProperty pc_compat_3_1[];
|
||||
extern const size_t pc_compat_3_1_len;
|
||||
|
||||
|
@ -7,7 +7,26 @@ size_t qemu_fd_getpagesize(int fd);
|
||||
|
||||
size_t qemu_mempath_getpagesize(const char *mem_path);
|
||||
|
||||
void *qemu_ram_mmap(int fd, size_t size, size_t align, bool shared);
|
||||
/**
|
||||
* qemu_ram_mmap: mmap the specified file or device.
|
||||
*
|
||||
* Parameters:
|
||||
* @fd: the file or the device to mmap
|
||||
* @size: the number of bytes to be mmaped
|
||||
* @align: if not zero, specify the alignment of the starting mapping address;
|
||||
* otherwise, the alignment in use will be determined by QEMU.
|
||||
* @shared: map has RAM_SHARED flag.
|
||||
* @is_pmem: map has RAM_PMEM flag.
|
||||
*
|
||||
* Return:
|
||||
* On success, return a pointer to the mapped area.
|
||||
* On failure, return MAP_FAILED.
|
||||
*/
|
||||
void *qemu_ram_mmap(int fd,
|
||||
size_t size,
|
||||
size_t align,
|
||||
bool shared,
|
||||
bool is_pmem);
|
||||
|
||||
void qemu_ram_munmap(int fd, void *ptr, size_t size);
|
||||
|
||||
|
@ -681,15 +681,15 @@ ObjectClass *cpu_class_by_name(const char *typename, const char *cpu_model);
|
||||
CPUState *cpu_create(const char *typename);
|
||||
|
||||
/**
|
||||
* parse_cpu_model:
|
||||
* @cpu_model: The model string including optional parameters.
|
||||
* parse_cpu_option:
|
||||
* @cpu_option: The -cpu option including optional parameters.
|
||||
*
|
||||
* processes optional parameters and registers them as global properties
|
||||
*
|
||||
* Returns: type of CPU to create or prints error and terminates process
|
||||
* if an error occurred.
|
||||
*/
|
||||
const char *parse_cpu_model(const char *cpu_model);
|
||||
const char *parse_cpu_option(const char *cpu_option);
|
||||
|
||||
/**
|
||||
* cpu_has_work:
|
||||
|
Reference in New Issue
Block a user