mirror of https://gitee.com/openkylin/numactl.git
58 lines
1.6 KiB
C
58 lines
1.6 KiB
C
/* Internal interfaces of libnuma */
|
|
|
|
extern int numa_sched_setaffinity_v1(pid_t pid, unsigned len, const unsigned long *mask);
|
|
extern int numa_sched_getaffinity_v1(pid_t pid, unsigned len, const unsigned long *mask);
|
|
extern int numa_sched_setaffinity_v1_int(pid_t pid, unsigned len,const unsigned long *mask);
|
|
extern int numa_sched_getaffinity_v1_int(pid_t pid, unsigned len,const unsigned long *mask);
|
|
extern int numa_sched_setaffinity_v2(pid_t pid, struct bitmask *mask);
|
|
extern int numa_sched_getaffinity_v2(pid_t pid, struct bitmask *mask);
|
|
extern int numa_sched_setaffinity_v2_int(pid_t pid, struct bitmask *mask);
|
|
extern int numa_sched_getaffinity_v2_int(pid_t pid, struct bitmask *mask);
|
|
|
|
#define SHM_HUGETLB 04000 /* segment will use huge TLB pages */
|
|
|
|
#define BITS_PER_LONG (sizeof(unsigned long) * 8)
|
|
#define CPU_BYTES(x) (round_up(x, BITS_PER_LONG)/8)
|
|
#define CPU_LONGS(x) (CPU_BYTES(x) / sizeof(long))
|
|
|
|
#define make_internal_alias(x) extern __typeof (x) x##_int __attribute((alias(#x), visibility("hidden")))
|
|
#define hidden __attribute__((visibility("hidden")))
|
|
|
|
enum numa_warn {
|
|
W_nosysfs,
|
|
W_noproc,
|
|
W_badmeminfo,
|
|
W_nosysfs2,
|
|
W_cpumap,
|
|
W_numcpus,
|
|
W_noderunmask,
|
|
W_distance,
|
|
W_memory,
|
|
W_cpuparse,
|
|
W_nodeparse,
|
|
W_blockdev1,
|
|
W_blockdev2,
|
|
W_blockdev3,
|
|
W_blockdev4,
|
|
W_blockdev5,
|
|
W_netlink1,
|
|
W_netlink2,
|
|
W_netlink3,
|
|
W_net1,
|
|
W_net2,
|
|
W_class1,
|
|
W_class2,
|
|
W_pci1,
|
|
W_pci2,
|
|
W_node_parse1,
|
|
W_node_parse2,
|
|
W_nonode,
|
|
W_badchar,
|
|
};
|
|
|
|
#define howmany(x,y) (((x)+((y)-1))/(y))
|
|
#define bitsperlong (8 * sizeof(unsigned long))
|
|
#define bitsperint (8 * sizeof(unsigned int))
|
|
#define longsperbits(n) howmany(n, bitsperlong)
|
|
#define bytesperbits(x) ((x+7)/8)
|