0x1002
  *   ˆl–Ü4ý( ©³( 	Å€fàB¦-ÿÄƒ�_†I|¥�+ÂÈ j    /* SPDX-License-Identifier: GPL-2.0 */
#ifndef __ASM_GENERIC_NUMA_H
#define __ASM_GENERIC_NUMA_H

#ifdef CONFIG_NUMA

#define NR_NODE_MEMBLKS		(MAX_NUMNODES * 2)

int __node_distance(int from, int to);
#define node_distance(a, b) __node_distance(a, b)

extern nodemask_t numa_nodes_parsed __initdata;

extern bool numa_off;

/* Mappings between node number and cpus on that node. */
extern cpumask_var_t node_to_cpumask_map[MAX_NUMNODES];
void numa_clear_node(unsigned int cpu);

#ifdef CONFIG_DEBUG_PER_CPU_MAPS
const struct cpumask *cpumask_of_node(int node);
#else
/* Returns a pointer to the cpumask of CPUs on Node 'node'. */
static inline const struct cpumask *cpumask_of_node(int node)
{
	if (node == NUMA_NO_NODE)
		return cpu_all_mask;

	return node_to_cpumask_map[node];
}
#endif

void __init arch_numa_init(void);
int __init numa_add_memblk(int nodeid, u64 start, u64 end);
void __init numa_set_distance(int from, int to, int distance);
void __init numa_free_distance(void);
void __init early_map_cpu_to_node(unsigned int cpu, int nid);
int __init early_cpu_to_node(int cpu);
void numa_store_cpu_info(unsigned int cpu);
void numa_add_cpu(unsigned int cpu);
void numa_remove_cpu(unsigned int cpu);

#else	/* CONFIG_NUMA */

static inline void numa_store_cpu_info(unsigned int cpu) { }
static inline void numa_add_cpu(unsigned int cpu) { }
static inline void numa_remove_cpu(unsigned int cpu) { }
static inline void arch_numa_init(void) { }
static inline void early_map_cpu_to_node(unsigned int cpu, int nid) { }
static inline int early_cpu_to_node(int cpu) { return 0; }

#endif	/* CONFIG_NUMA */

#endif	/* __ASM_GENERIC_NUMA_H */
  "   ˆl–Ãa¾”†»â€jàƒp@S�ÿÆƒpAÃÉ D               License For Customer Use of NVIDIA Software


IMPORTANT NOTICE -- READ CAREFULLY: This License For Customer Use of
NVIDIA Software ("LICENSE") is the agreement which governs use of
the software of NVIDIA Corporation and its subsidiaries ("NVIDIA")
downloadable herefrom, including computer software and associated
printed materials ("SOFTWARE").  By downloading, installing, copying,
or otherwise using the SOFTWARE, you agree to be bound by the terms
of this LICENSE.  If you do not agree to the terms of this LICENSE,
do not download the SOFTWARE.

RECITALS

Use of NVIDIA's products requires three elements: the SOFTWARE, the
hardware, and a personal computer. The SOFTWARE is protected by copyright
laws and international copyright treaties, as well as other intellectual
property laws and treaties.  The SOFTWARE may be protected by various
patents, and is not sold, and instead is only licensed for use, strictly
in accordance with this document.  The hardware is protected by various
patents, and is sold, but this agreement does not cover that sale, since
it may not necessarily be sold as a package with the SOFTWARE.  This
agreement sets forth the terms and conditions of the SOFTWARE LICENSE only.

1.  DEFINITIONS

1.1  Customer.  Customer means the entity or individual that
downloads or otherwise obtains the SOFTWARE.

2.  GRANT OF LICENSE

2.1  Rights and Limitations of Grant.  NVIDIA hereby grants Customer
the following non-exclusive, non-transferable right to use the
SOFTWARE, with the following limitations:

2.1.1  Rights.  Customer may install and use multiple copies of the
SOFTWARE on a shared computer or concurrently on different computers,
and make multiple back-up copies of the SOFTWARE, solely for Customer's
use within Customer's Enterprise. "Enterprise" shall mean individual use
by Customer or any legal entity (such as a corporation or university)
and the subsidiaries it owns by more than fifty percent (50%).

2.1.2  Open Source Exception.  Notwithstanding the foregoing terms
of Section 2.1.1, SOFTWARE may be copied and redistributed solely for
use on operating systems distributed under the terms of an OSI-approved
open source license as listed by the Open Source Initiative at
http://opensource.org, provided that the binary files thereof are not
modified, and Customer provides a 