cregit-Linux how code gets into the kernel

Release 4.16 arch/powerpc/include/asm/topology.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _ASM_POWERPC_TOPOLOGY_H

#define _ASM_POWERPC_TOPOLOGY_H
#ifdef __KERNEL__


struct device;
struct device_node;

#ifdef CONFIG_NUMA

/*
 * If zone_reclaim_mode is enabled, a RECLAIM_DISTANCE of 10 will mean that
 * all zones on all nodes will be eligible for zone_reclaim().
 */

#define RECLAIM_DISTANCE 10

#include <asm/mmzone.h>


#define cpumask_of_node(node) ((node) == -1 ?                         \
                               cpu_all_mask :                           \
                               node_to_cpumask_map[node])

struct pci_bus;
#ifdef CONFIG_PCI
extern int pcibus_to_node(struct pci_bus *bus);
#else

static inline int pcibus_to_node(struct pci_bus *bus) { return -1; }

Contributors

PersonTokensPropCommitsCommitProp
Arnd Bergmann16100.00%1100.00%
Total16100.00%1100.00%

#endif #define cpumask_of_pcibus(bus) (pcibus_to_node(bus) == -1 ? \ cpu_all_mask : \ cpumask_of_node(pcibus_to_node(bus))) extern int __node_distance(int, int); #define node_distance(a, b) __node_distance(a, b) extern void __init dump_numa_cpu_topology(void); extern int sysfs_add_device_to_node(struct device *dev, int nid); extern void sysfs_remove_device_from_node(struct device *dev, int nid); extern int numa_update_cpu_topology(bool cpus_locked);
static inline void update_numa_cpu_lookup_table(unsigned int cpu, int node) { numa_cpu_lookup_table[cpu] = node; }

Contributors

PersonTokensPropCommitsCommitProp
Nathan Fontenot21100.00%1100.00%
Total21100.00%1100.00%


static inline int early_cpu_to_node(int cpu) { int nid; nid = numa_cpu_lookup_table[cpu]; /* * Fall back to node 0 if nid is unset (it should be, except bugs). * This allows callers to safely do NODE_DATA(early_cpu_to_node(cpu)). */ return (nid < 0) ? 0 : nid; }

Contributors

PersonTokensPropCommitsCommitProp
Michael Ellerman32100.00%1100.00%
Total32100.00%1100.00%

#else
static inline int early_cpu_to_node(int cpu) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Michael Ellerman13100.00%1100.00%
Total13100.00%1100.00%


static inline void dump_numa_cpu_topology(void) {}

Contributors

PersonTokensPropCommitsCommitProp
Jesse Larrew562.50%150.00%
Benjamin Herrenschmidt337.50%150.00%
Total8100.00%2100.00%


static inline int sysfs_add_device_to_node(struct device *dev, int nid) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Jesse Larrew1055.56%133.33%
Benjamin Herrenschmidt738.89%133.33%
Kay Sievers15.56%133.33%
Total18100.00%3100.00%


static inline void sysfs_remove_device_from_node(struct device *dev, int nid) { }

Contributors

PersonTokensPropCommitsCommitProp
Benjamin Herrenschmidt1392.86%150.00%
Kay Sievers17.14%150.00%
Total14100.00%2100.00%


static inline int numa_update_cpu_topology(bool cpus_locked) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Thiago Jung Bauermann13100.00%1100.00%
Total13100.00%1100.00%


static inline void update_numa_cpu_lookup_table(unsigned int cpu, int node) {}

Contributors

PersonTokensPropCommitsCommitProp
Corentin Labbe13100.00%1100.00%
Total13100.00%1100.00%

#endif /* CONFIG_NUMA */ #if defined(CONFIG_NUMA) && defined(CONFIG_PPC_SPLPAR) extern int start_topology_update(void); extern int stop_topology_update(void); extern int prrn_is_enabled(void); extern int find_and_online_cpu_nid(int cpu); #else
static inline int start_topology_update(void) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Jeremy Kerr1083.33%150.00%
Benjamin Herrenschmidt216.67%150.00%
Total12100.00%2100.00%


static inline int stop_topology_update(void) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Benjamin Herrenschmidt866.67%150.00%
Jeremy Kerr433.33%150.00%
Total12100.00%2100.00%


static inline int prrn_is_enabled(void) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Nathan Fontenot12100.00%1100.00%
Total12100.00%1100.00%


static inline int find_and_online_cpu_nid(int cpu) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Guenter Roeck13100.00%1100.00%
Total13100.00%1100.00%

#endif /* CONFIG_NUMA && CONFIG_PPC_SPLPAR */ #if defined(CONFIG_HOTPLUG_CPU) || defined(CONFIG_NEED_MULTIPLE_NODES) #if defined(CONFIG_PPC_SPLPAR) extern int timed_topology_update(int nsecs); #else #define timed_topology_update(nsecs) #endif /* CONFIG_PPC_SPLPAR */ #endif /* CONFIG_HOTPLUG_CPU || CONFIG_NEED_MULTIPLE_NODES */ #include <asm-generic/topology.h> #ifdef CONFIG_SMP #include <asm/cputable.h> #ifdef CONFIG_PPC64 #include <asm/smp.h> #define topology_physical_package_id(cpu) (cpu_to_chip_id(cpu)) #define topology_sibling_cpumask(cpu) (per_cpu(cpu_sibling_map, cpu)) #define topology_core_cpumask(cpu) (per_cpu(cpu_core_map, cpu)) #define topology_core_id(cpu) (cpu_to_core_id(cpu)) #endif #endif #endif /* __KERNEL__ */ #endif /* _ASM_POWERPC_TOPOLOGY_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Benjamin Herrenschmidt5812.61%12.86%
Anton Blanchard5111.09%822.86%
Michael Ellerman459.78%12.86%
Jeremy Kerr439.35%12.86%
Nathan Fontenot408.70%25.71%
Michael Bringmann398.48%12.86%
Arnd Bergmann296.30%25.71%
Rusty Russell245.22%25.71%
Guenter Roeck214.57%12.86%
Thiago Jung Bauermann214.57%12.86%
Jesse Larrew173.70%12.86%
Corentin Labbe132.83%12.86%
Andrew Morton91.96%12.86%
Suresh B. Siddha81.74%12.86%
Stephen Rothwell81.74%12.86%
Vasant Hegde71.52%12.86%
Nathan T. Lynch71.52%12.86%
Jon Loeliger61.30%12.86%
Kay Sievers51.09%12.86%
Mike Travis30.65%12.86%
Christoph Lameter20.43%12.86%
Mel Gorman10.22%12.86%
Greg Kroah-Hartman10.22%12.86%
Bartosz Golaszewski10.22%12.86%
Christoph Hellwig10.22%12.86%
Total460100.00%35100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.