/openbmc/linux/arch/mips/sgi-ip27/ |
H A D | ip27-nmi.c | 1 // SPDX-License-Identifier: GPL-2.0 42 if (nmi_addr->call_addr) in install_cpu_nmi_handler() 44 nmi_addr->magic = NMI_MAGIC; in install_cpu_nmi_handler() 45 nmi_addr->call_addr = (void *)nmi_dump; in install_cpu_nmi_handler() 46 nmi_addr->call_addr_c = in install_cpu_nmi_handler() 47 (void *)(~((unsigned long)(nmi_addr->call_addr))); in install_cpu_nmi_handler() 48 nmi_addr->call_parm = 0; in install_cpu_nmi_handler() 52 * Copy the cpu registers which have been saved in the IP27prom format 58 struct reg_struct *nr; in nmi_cpu_eframe_save() local 61 /* Get the pointer to the current cpu's register set. */ in nmi_cpu_eframe_save() [all …]
|
/openbmc/linux/tools/perf/util/ |
H A D | cputopo.c | 1 // SPDX-License-Identifier: GPL-2.0 19 "%s/devices/system/cpu/cpu%d/topology/package_cpus_list" 21 "%s/devices/system/cpu/cpu%d/topology/core_siblings_list" 23 "%s/devices/system/cpu/cpu%d/topology/die_cpus_list" 25 "%s/devices/system/cpu/cpu%d/topology/core_cpus_list" 27 "%s/devices/system/cpu/cpu%d/topology/thread_siblings_list" 35 static int build_cpu_topology(struct cpu_topology *tp, int cpu) in build_cpu_topology() argument 43 int ret = -1; in build_cpu_topology() 46 sysfs__mountpoint(), cpu); in build_cpu_topology() 47 if (access(filename, F_OK) == -1) { in build_cpu_topology() [all …]
|
H A D | cpumap.c | 1 // SPDX-License-Identifier: GPL-2.0 22 * CPU number. 34 return (data->mask32_data.long_size == 4) in perf_record_cpu_map_data__test_bit() 35 ? (bit_word32 < data->mask32_data.nr) && in perf_record_cpu_map_data__test_bit() 36 (data->mask32_data.mask[bit_word32] & bit_mask32) != 0 in perf_record_cpu_map_data__test_bit() 37 : (bit_word64 < data->mask64_data.nr) && in perf_record_cpu_map_data__test_bit() 38 (data->mask64_data.mask[bit_word64] & bit_mask64) != 0; in perf_record_cpu_map_data__test_bit() 41 /* Read ith mask value from data into the given 64-bit sized bitmap */ 46 if (data->mask32_data.long_size == 4) in perf_record_cpu_map_data__read_one_mask() 47 bitmap[0] = data->mask32_data.mask[i]; in perf_record_cpu_map_data__read_one_mask() [all …]
|
H A D | thread-stack.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * thread-stack.c: Synthesize a thread's stack using call / return events 21 #include "call-path.h" 22 #include "thread-stack.h" 40 * struct thread_stack_entry - thread stack entry. 47 * @db_id: id used for db-export 68 * struct thread_stack - thread stack constructed from 'call' and 'return' 110 * perf_session__register_idle_thread(). The idle task is really 1 task per cpu, 111 * and therefore requires a stack for each cpu. 123 new_sz = ts->sz + STACK_GROWTH; in thread_stack__grow() [all …]
|
H A D | cpumap.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 10 /** Identify where counts are aggregated, -1 implies not to aggregate. */ 18 * /sys/devices/system/cpu/cpuX/topology/physical_package_id. 21 /** The die id as read from /sys/devices/system/cpu/cpuX/topology/die_id. */ 23 /** The cache level as read from /sys/devices/system/cpu/cpuX/cache/indexY/level */ 26 * The cache instance ID, which is the first CPU in the 27 * /sys/devices/system/cpu/cpuX/cache/indexY/shared_cpu_list 30 /** The core id as read from /sys/devices/system/cpu/cpuX/topology/core_id. */ 32 /** CPU aggregation, note there is one CPU for each SMT thread. */ 33 struct perf_cpu cpu; member [all …]
|
H A D | header.c | 1 // SPDX-License-Identifier: GPL-2.0 35 #include "trace-event.h" 44 #include "build-id.h" 49 #include "time-utils.h" 53 #include "bpf-event.h" 54 #include "bpf-utils.h" 61 #include <traceevent/event-parse.h> 88 __set_bit(feat, header->adds_features); in perf_header__set_feat() 93 __clear_bit(feat, header->adds_features); in perf_header__clear_feat() 98 return test_bit(feat, header->adds_features); in perf_header__has_feat() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/powerpc/ |
H A D | ibm,powerpc-cpu-features.txt | 3 (skiboot/doc/device-tree/ibm,powerpc-cpu-features/binding.txt) 9 ibm,powerpc-cpu-features binding 12 This device tree binding describes CPU features available to software, with 19 /cpus/ibm,powerpc-cpu-features node binding 20 ------------------------------------------- 22 Node: ibm,powerpc-cpu-features 24 Description: Container of CPU feature nodes. 26 The node name must be "ibm,powerpc-cpu-features". 35 - compatible 38 Definition: "ibm,powerpc-cpu-features" [all …]
|
/openbmc/linux/arch/powerpc/platforms/85xx/ |
H A D | smp.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright 2006-2008, 2011-2012, 2015 Freescale Semiconductor Inc. 17 #include <linux/cpu.h> 26 #include <asm/code-patching.h> 58 qoriq_pm_ops->freeze_time_base(true); in mpc85xx_give_timebase() 61 * e5500/e6500 have a workaround for erratum A-006958 in place in mpc85xx_give_timebase() 62 * that will reread the timebase until TBL is non-zero. in mpc85xx_give_timebase() 66 * TBL is non-zero, we ensure that TB does not change. We don't in mpc85xx_give_timebase() 91 qoriq_pm_ops->freeze_time_base(false); in mpc85xx_give_timebase() 117 unsigned int cpu = smp_processor_id(); in smp_85xx_cpu_offline_self() local [all …]
|
/openbmc/linux/fs/btrfs/ |
H A D | accessors.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 92 const type *p = page_address(eb->pages[0]) + \ 93 offset_in_page(eb->start); \ 94 return get_unaligned_le##bits(&p->member); \ 99 type *p = page_address(eb->pages[0]) + offset_in_page(eb->start); \ 100 put_unaligned_le##bits(val, &p->member); \ 106 return get_unaligned_le##bits(&s->member); \ 110 put_unaligned_le##bits(val, &s->member); \ 124 WARN_ON(!IS_ALIGNED(val, eb->fs_info->sectorsize)); in btrfs_set_device_total_bytes() 203 static inline struct btrfs_stripe *btrfs_stripe_nr(struct btrfs_chunk *c, int nr) in btrfs_stripe_nr() argument [all …]
|
/openbmc/qemu/hw/intc/ |
H A D | xics_spapr.c | 44 if (spapr_ovec_test(spapr->ov5_cas, OV5_XIVE_EXPLOIT) || in check_emulated_xics() 61 static target_ulong h_cppr(PowerPCCPU *cpu, SpaprMachineState *spapr, in h_cppr() argument 68 icp_set_cppr(spapr_cpu_state(cpu)->icp, cppr); in h_cppr() 72 static target_ulong h_ipi(PowerPCCPU *cpu, SpaprMachineState *spapr, in h_ipi() argument 88 static target_ulong h_xirr(PowerPCCPU *cpu, SpaprMachineState *spapr, in h_xirr() argument 91 uint32_t xirr = icp_accept(spapr_cpu_state(cpu)->icp); in h_xirr() 99 static target_ulong h_xirr_x(PowerPCCPU *cpu, SpaprMachineState *spapr, in h_xirr_x() argument 102 uint32_t xirr = icp_accept(spapr_cpu_state(cpu)->icp); in h_xirr_x() 111 static target_ulong h_eoi(PowerPCCPU *cpu, SpaprMachineState *spapr, in h_eoi() argument 118 icp_eoi(spapr_cpu_state(cpu)->icp, xirr); in h_eoi() [all …]
|
/openbmc/linux/arch/powerpc/platforms/powernv/ |
H A D | smp.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 17 #include <linux/cpu.h> 31 #include <asm/code-patching.h> 34 #include <asm/ppc-opcode.h> 49 static void pnv_smp_setup_cpu(int cpu) in pnv_smp_setup_cpu() argument 60 else if (cpu != boot_cpuid) in pnv_smp_setup_cpu() 64 static int pnv_smp_kick_cpu(int nr) in pnv_smp_kick_cpu() argument 72 if (nr < 0 || nr >= nr_cpu_ids) in pnv_smp_kick_cpu() 73 return -EINVAL; in pnv_smp_kick_cpu() 75 pcpu = get_hard_smp_processor_id(nr); in pnv_smp_kick_cpu() [all …]
|
/openbmc/linux/arch/powerpc/platforms/86xx/ |
H A D | mpc86xx_smp.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 15 #include <asm/code-patching.h> 17 #include <asm/pci-bridge.h> 35 smp_86xx_release_core(int nr) in smp_86xx_release_core() argument 40 if (nr < 0 || nr >= NR_CPUS) in smp_86xx_release_core() 44 * Startup Core #nr. in smp_86xx_release_core() 49 pcr |= 1 << (nr + 24); in smp_86xx_release_core() 57 smp_86xx_kick_cpu(int nr) in smp_86xx_kick_cpu() argument 64 if (nr < 0 || nr >= NR_CPUS) in smp_86xx_kick_cpu() 65 return -ENOENT; in smp_86xx_kick_cpu() [all …]
|
/openbmc/linux/tools/perf/tests/ |
H A D | cpumap.c | 1 // SPDX-License-Identifier: GPL-2.0 6 #include "util/synthetic-events.h" 19 struct perf_record_cpu_map *map_event = &event->cpu_map; in process_event_mask() 24 data = &map_event->data; in process_event_mask() 26 TEST_ASSERT_VAL("wrong type", data->type == PERF_CPU_MAP__MASK); in process_event_mask() 28 long_size = data->mask32_data.long_size; in process_event_mask() 32 TEST_ASSERT_VAL("wrong nr", data->mask32_data.nr == 1); in process_event_mask() 34 TEST_ASSERT_VAL("wrong cpu", perf_record_cpu_map_data__test_bit(0, data)); in process_event_mask() 35 TEST_ASSERT_VAL("wrong cpu", !perf_record_cpu_map_data__test_bit(1, data)); in process_event_mask() 37 TEST_ASSERT_VAL("wrong cpu", perf_record_cpu_map_data__test_bit(i, data)); in process_event_mask() [all …]
|
H A D | switch-tracking.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include "parse-events.h" 75 union perf_event *event, const char *comm, int nr) in check_comm() argument 77 if (event->header.type == PERF_RECORD_COMM && in check_comm() 78 (pid_t)event->comm.pid == getpid() && in check_comm() 79 (pid_t)event->comm.tid == getpid() && in check_comm() 80 strcmp(event->comm.comm, comm) == 0) { in check_comm() 81 if (switch_tracking->comm_seen[nr]) { in check_comm() 83 return -1; in check_comm() 85 switch_tracking->comm_seen[nr] = 1; in check_comm() [all …]
|
/openbmc/linux/tools/perf/Documentation/ |
H A D | perf.data-file-format.txt | 5 This document describes the on-disk perf.data format, generated by perf record 10 All fields are in native-endian of the machine that generated the perf.data. 14 format is described in "Pipe-mode data" section. The pipe data version can be 33 magic value is 64bit byte swapped compared the file is in non-native 61 uint32_t nr; 62 struct perf_header_string strings[nr]; /* variable length records */ 85 char filename[header.size - offsetof(struct build_id_event, filename)]; 91 (uname -n) 96 (uname -r) 106 A perf_header_string with the CPU architecture (uname -m) [all …]
|
/openbmc/linux/arch/powerpc/include/asm/ |
H A D | smp.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * smp.h: PowerPC-specific SMP code. 9 * Copyright (C) 1996-2001 Cort Dougan <cort@fsmlabs.com> 34 extern int cpu_to_chip_id(int cpu); 44 void (*message_pass)(int cpu, int msg); 46 void (*cause_ipi)(int cpu); 48 int (*cause_nmi_ipi)(int cpu); 50 int (*kick_cpu)(int nr); 51 int (*prepare_cpu)(int nr); 52 void (*setup_cpu)(int nr); [all …]
|
/openbmc/u-boot/arch/arm/mach-imx/mx6/ |
H A D | mp.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Gabriel Huau <contact@huau-gabriel.fr> 13 #include <asm/arch/imx-regs.h> 32 int cpu_reset(u32 nr) in cpu_reset() argument 34 /* Software reset of the CPU N */ in cpu_reset() 35 src->scr |= cpu_reset_mask[nr]; in cpu_reset() 39 int cpu_status(u32 nr) in cpu_status() argument 41 printf("core %d => %d\n", nr, !!(src->scr & cpu_ctrl_mask[nr])); in cpu_status() 45 int cpu_release(u32 nr, int argc, char *const argv[]) in cpu_release() argument 51 switch (nr) { in cpu_release() [all …]
|
/openbmc/u-boot/arch/powerpc/cpu/mpc85xx/ |
H A D | mp.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Copyright 2008-2011 Freescale Semiconductor, Inc. 27 * Determine if U-Boot should keep secondary cores in reset, or let them out 45 int cpu_reset(u32 nr) in cpu_reset() argument 48 out_be32(&pic->pir, 1 << nr); in cpu_reset() 50 (void)in_be32(&pic->pir); in cpu_reset() 51 out_be32(&pic->pir, 0x0); in cpu_reset() 56 int cpu_status(u32 nr) in cpu_status() argument 63 if (nr == id) { in cpu_status() 66 } else if (is_core_disabled(nr)) { in cpu_status() [all …]
|
/openbmc/linux/drivers/macintosh/ |
H A D | windfarm_smu_sat.c | 1 // SPDX-License-Identifier: GPL-2.0-only 29 int nr; member 60 /* TODO: Add the resulting partition to the device-tree */ in smu_sat_get_sdb_partition() 65 err = i2c_smbus_write_word_data(sat->i2c, 8, id << 8); in smu_sat_get_sdb_partition() 71 err = i2c_smbus_read_word_data(sat->i2c, 9); in smu_sat_get_sdb_partition() 89 err = i2c_smbus_read_i2c_block_data(sat->i2c, 0xa, 4, data); in smu_sat_get_sdb_partition() 119 err = i2c_smbus_read_i2c_block_data(sat->i2c, 0x3f, 16, sat->cache); in wf_sat_read_cache() 122 sat->last_read = jiffies; in wf_sat_read_cache() 129 16, 1, sat->cache, 16, false); in wf_sat_read_cache() 138 struct wf_sat *sat = sens->sat; in wf_sat_sensor_get() [all …]
|
/openbmc/linux/arch/x86/include/asm/ |
H A D | bitops.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 32 * These have to be done with inline assembly: that way the bit-setting 48 #define CONST_MASK_ADDR(nr, addr) WBYTE_ADDR((void *)(addr) + ((nr)>>3)) argument 49 #define CONST_MASK(nr) (1 << ((nr) & 7)) argument 52 arch_set_bit(long nr, volatile unsigned long *addr) in arch_set_bit() argument 54 if (__builtin_constant_p(nr)) { in arch_set_bit() 56 : CONST_MASK_ADDR(nr, addr) in arch_set_bit() 57 : "iq" (CONST_MASK(nr)) in arch_set_bit() 61 : : RLONG_ADDR(addr), "Ir" (nr) : "memory"); in arch_set_bit() 66 arch___set_bit(unsigned long nr, volatile unsigned long *addr) in arch___set_bit() argument [all …]
|
/openbmc/linux/include/xen/ |
H A D | xen-ops.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 16 static inline uint32_t xen_vcpu_nr(int cpu) in xen_vcpu_nr() argument 18 return per_cpu(xen_vcpu_id, cpu); in xen_vcpu_nr() 36 void xen_setup_runstate_info(int cpu); 40 u64 xen_steal_clock(int cpu); 48 xen_pfn_t *pfn, int nr, int *err_ptr, pgprot_t prot, 52 xen_pfn_t *pfn, int nr, int *err_ptr, in xen_remap_pfn() argument 66 xen_pfn_t *gfn, int nr, 71 int nr, struct page **pages); 79 xen_pfn_t *gfn, int nr, in xen_xlate_remap_gfn_array() argument [all …]
|
/openbmc/linux/tools/testing/selftests/bpf/map_tests/ |
H A D | task_storage_map.c | 1 // SPDX-License-Identifier: GPL-2.0 33 while (!ctx->start) in lookup_fn() 36 while (!ctx->stop && i++ < ctx->loop) in lookup_fn() 37 bpf_map_lookup_elem(ctx->map_fd, &ctx->pid_fd, &value); in lookup_fn() 41 static void abort_lookup(struct lookup_ctx *ctx, pthread_t *tids, unsigned int nr) in abort_lookup() argument 45 ctx->stop = true; in abort_lookup() 46 ctx->start = true; in abort_lookup() 47 for (i = 0; i < nr; i++) in abort_lookup() 54 unsigned int i, nr = 256, loop = 8192, cpu = 0; in test_task_storage_map_stress_lookup() local 64 nr = atoi(cfg); in test_task_storage_map_stress_lookup() [all …]
|
/openbmc/linux/arch/sparc/kernel/ |
H A D | smp_64.c | 1 // SPDX-License-Identifier: GPL-2.0 28 #include <linux/cpu.h> 63 { [0 ... NR_CPUS-1] = CPU_MASK_NONE }; 66 [0 ... NR_CPUS-1] = CPU_MASK_NONE }; 69 [0 ... NR_CPUS - 1] = CPU_MASK_NONE }; 87 seq_printf(m, "CPU%d:\t\tonline\n", i); in smp_info() 96 "Cpu%dClkTck\t: %016lx\n", in smp_bogo() 127 current_thread_info()->new_child = 0; in smp_callin() 131 current->active_mm = &init_mm; in smp_callin() 133 /* inform the notifiers about the new cpu */ in smp_callin() [all …]
|
/openbmc/linux/tools/testing/selftests/mm/ |
H A D | uffd-stress.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 * There are three threads running per CPU: 13 * 1) one per-CPU thread takes a per-page pthread_mutex in a random 15 * area_src), and increments a per-page counter in the same page, 18 * 2) another per-CPU thread handles the userfaults generated by 22 * 3) one last per-CPU thread transfers the memory in the background 24 * 2). Each cpu thread takes cares of transferring a portion of the 32 * per-CPU threads 1 by triggering userfaults inside 37 #include "uffd-common.h" 57 "./uffd-stress anon 100 99999\n\n" [all …]
|
/openbmc/linux/mm/ |
H A D | swap_slots.c | 1 // SPDX-License-Identifier: GPL-2.0 11 * it into local per cpu caches. This has the advantage 31 #include <linux/cpu.h> 67 /* Must not be called with cpu hot plug lock */ 73 /* serialize with cpu hotplug operations */ in disable_swap_slots_cache_lock() 113 static int alloc_swap_slot_cache(unsigned int cpu) in alloc_swap_slot_cache() argument 126 return -ENOMEM; in alloc_swap_slot_cache() 132 return -ENOMEM; in alloc_swap_slot_cache() 136 cache = &per_cpu(swp_slots, cpu); in alloc_swap_slot_cache() 137 if (cache->slots || cache->slots_ret) { in alloc_swap_slot_cache() [all …]
|