qemu/include/sysemu/numa.h
<<
>>
Prefs
   1#ifndef SYSEMU_NUMA_H
   2#define SYSEMU_NUMA_H
   3
   4#include "qemu/bitmap.h"
   5#include "sysemu/sysemu.h"
   6#include "sysemu/hostmem.h"
   7#include "hw/boards.h"
   8
   9extern int nb_numa_nodes;   /* Number of NUMA nodes */
  10extern bool have_numa_distance;
  11
  12struct NodeInfo {
  13    uint64_t node_mem;
  14    struct HostMemoryBackend *node_memdev;
  15    bool present;
  16    uint8_t distance[MAX_NODES];
  17};
  18
  19struct NumaNodeMem {
  20    uint64_t node_mem;
  21    uint64_t node_plugged_mem;
  22};
  23
  24extern NodeInfo numa_info[MAX_NODES];
  25
  26void set_numa_options(MachineState *ms, NumaOptions *object, Error **errp);
  27void parse_numa_opts(MachineState *ms);
  28void numa_complete_configuration(MachineState *ms);
  29void query_numa_node_mem(NumaNodeMem node_mem[]);
  30extern QemuOptsList qemu_numa_opts;
  31void numa_legacy_auto_assign_ram(MachineClass *mc, NodeInfo *nodes,
  32                                 int nb_nodes, ram_addr_t size);
  33void numa_default_auto_assign_ram(MachineClass *mc, NodeInfo *nodes,
  34                                  int nb_nodes, ram_addr_t size);
  35void numa_cpu_pre_plug(const CPUArchId *slot, DeviceState *dev, Error **errp);
  36#endif
  37