/kernel/linux/linux-5.10/drivers/base/power/ |
D | qos.c | 1 // SPDX-License-Identifier: GPL-2.0 7 * This module exposes the interface to kernel space for specifying 8 * per-device PM QoS dependencies. It provides infrastructure for registration 16 * Watchers can register a per-device notification callback using the 18 * per-device constraint data struct. 20 * Note about the per-device constraint data struct allocation: 21 * . The per-device constraints data struct ptr is stored into the device 23 * . To minimize the data usage by the per-device constraints, the data struct 46 * __dev_pm_qos_flags - Check PM QoS flags for a given device. 50 * This routine must be called with dev->power.lock held. [all …]
|
/kernel/linux/linux-5.10/Documentation/power/powercap/ |
D | powercap.rst | 6 and the user space that allows power capping drivers to expose the settings to 7 user space in a uniform way. 12 The framework exposes power capping devices to user space via sysfs in the 15 example, the intel-rapl control type represents the Intel "Running Average 16 Power Limit" (RAPL) technology, whereas the 'idle-injection' control type 35 └──intel-rapl 36 ├──intel-rapl:0 43 │ ├──device -> ../../intel-rapl 45 │ ├──intel-rapl:0:0 52 │ │ ├──device -> ../../intel-rapl:0 [all …]
|
/kernel/linux/linux-5.10/kernel/power/ |
D | qos.c | 1 // SPDX-License-Identifier: GPL-2.0-only 15 * or through a built-in notification mechanism. 50 * pm_qos_read_value - Return the current effective constraint value. 51 * @c: List of PM QoS constraint requests. 55 return READ_ONCE(c->target_value); in pm_qos_read_value() 60 if (plist_head_empty(&c->list)) in pm_qos_get_value() 61 return c->no_constraint_value; in pm_qos_get_value() 63 switch (c->type) { in pm_qos_get_value() 65 return plist_first(&c->list)->prio; in pm_qos_get_value() 68 return plist_last(&c->list)->prio; in pm_qos_get_value() [all …]
|
/kernel/linux/linux-5.10/Documentation/arm/ |
D | porting.rst | 5 Taken from list archive at http://lists.arm.linux.org.uk/pipermail/linux-arm-kernel/2001-July/00406… 8 ------------------- 14 phys = virt - PAGE_OFFSET + PHYS_OFFSET 18 -------------------- 25 to be located in RAM, it can be in flash or other read-only or 26 read-write addressable medium. 29 Start address of zero-initialised work area for the decompressor. 35 and eventually executed. The following constraint must be valid: 48 Virtual address of the initial RAM disk. The following constraint 59 -------------- [all …]
|
/kernel/linux/linux-5.10/include/linux/ |
D | oom.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 43 * order == -1 means the oom kill is required by sysrq, otherwise only 53 /* Used to print the constraint info. */ 54 enum oom_constraint constraint; member 62 current->signal->oom_flag_origin = true; in set_current_oom_origin() 67 current->signal->oom_flag_origin = false; in clear_current_oom_origin() 72 return p->signal->oom_flag_origin; in oom_task_origin() 77 return tsk->signal->oom_mm; in tsk_is_oom_victim() 81 * Use this helper if tsk->mm != mm and the victim mm needs a special 86 return test_bit(MMF_OOM_VICTIM, &mm->flags); in mm_is_oom_victim() [all …]
|
/kernel/linux/linux-5.10/sound/core/ |
D | pcm_lib.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Abramo Bagnara <abramo@alsa-project.org> 38 * runtime->silence_start: starting pointer to silence area 39 * runtime->silence_filled: size filled with silence 40 * runtime->silence_threshold: threshold from application 41 * runtime->silence_size: maximal size from application 43 * when runtime->silence_size >= runtime->boundary - fill processed area with silence immediately 47 struct snd_pcm_runtime *runtime = substream->runtime; in snd_pcm_playback_silence() 51 if (runtime->silence_size < runtime->boundary) { in snd_pcm_playback_silence() 53 snd_pcm_uframes_t appl_ptr = READ_ONCE(runtime->control->appl_ptr); in snd_pcm_playback_silence() [all …]
|
/kernel/linux/linux-5.10/Documentation/admin-guide/pm/ |
D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 27 CPU idle time management is an energy-efficiency feature concerned about using 31 ------------ 37 software as individual single-core processors. In other words, a CPU is an 46 Second, if the processor is multi-core, each core in it is able to follow at 61 Finally, each core in a multi-core processor may be able to follow more than one 66 multiple individual single-core "processors", referred to as *hardware threads* 67 (or hyper-threads specifically on Intel hardware), that each can follow one 78 --------- 112 .. _idle-loop: [all …]
|
/kernel/linux/linux-5.10/mm/ |
D | oom_kill.c | 1 // SPDX-License-Identifier: GPL-2.0-only 15 * Since we won't call these routines often (on a well-configured 72 return oc->memcg != NULL; in is_memcg_oom() 77 * oom_cpuset_eligible() - check task eligiblity for kill 85 * This function is assuming oom-killer context and 'current' has triggered 86 * the oom-killer. 93 const nodemask_t *mask = oc->nodemask; in oom_cpuset_eligible() 130 * The process p may have detached its own ->mm while exiting or through 132 * pointer. Return p, or any of its subthreads with a valid ->mm, with 143 if (likely(t->mm)) in find_lock_task_mm() [all …]
|
/kernel/linux/linux-5.10/Documentation/sound/designs/ |
D | tracepoints.rst | 19 ------------------------------------ 25 ----------------------------------------------------- 53 - SNDRV_PCM_HW_PARAM_ACCESS 54 - SNDRV_PCM_HW_PARAM_FORMAT 55 - SNDRV_PCM_HW_PARAM_SUBFORMAT 61 - SNDRV_PCM_HW_PARAM_SAMPLE_BITS 62 - SNDRV_PCM_HW_PARAM_FRAME_BITS 63 - SNDRV_PCM_HW_PARAM_CHANNELS 64 - SNDRV_PCM_HW_PARAM_RATE 65 - SNDRV_PCM_HW_PARAM_PERIOD_TIME [all …]
|
/kernel/linux/linux-5.10/arch/openrisc/mm/ |
D | init.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 11 * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se> 60 * Map all physical memory into kernel's address space. 62 * This is explicitly coded for two-level page tables, so if you need 76 /* These mark extents of read-only kernel pages... in map_ram() 97 "two-level page tables", in map_ram() 123 printk(KERN_INFO "%s: Memory: 0x%x-0x%x\n", __func__, in map_ram() 168 *itlb_vector = ((unsigned long)&itlb_miss_handler - in paging_init() 171 /* Soft ordering constraint to ensure that dtlb_vector is in paging_init() 177 *dtlb_vector = ((unsigned long)&dtlb_miss_handler - in paging_init() [all …]
|
/kernel/linux/linux-5.10/kernel/ |
D | resource.c | 1 // SPDX-License-Identifier: GPL-2.0-only 41 .end = -1, 68 return p->sibling; in next_resource() 70 if (p->child) in next_resource() 71 return p->child; in next_resource() 72 while (!p->sibling && p->parent) in next_resource() 73 p = p->parent; in next_resource() 74 return p->sibling; in next_resource() 91 struct resource *p = PDE_DATA(file_inode(m->file)); in r_start() 94 for (p = p->child; p && l < *pos; p = r_next(m, p, &l)) in r_start() [all …]
|
/kernel/linux/linux-5.10/kernel/events/ |
D | hw_breakpoint.c | 1 // SPDX-License-Identifier: GPL-2.0+ 15 * HW_breakpoint: a unified kernel/user-space hardware breakpoint facility, 17 * This file contains the arch-independent routines. 45 /* Number of non-pinned cpu/task breakpoints in a cpu */ 62 /* Gather the number of total pinned and un-pinned bp in a cpuset */ 90 unsigned int *tsk_pinned = get_bp_info(cpu, type)->tsk_pinned; in max_task_bp_pinned() 93 for (i = nr_slots[type] - 1; i >= 0; i--) { in max_task_bp_pinned() 107 struct task_struct *tsk = bp->hw.target; in task_bp_pinned() 112 if (iter->hw.target == tsk && in task_bp_pinned() 113 find_slot_idx(iter->attr.bp_type) == type && in task_bp_pinned() [all …]
|
/kernel/linux/linux-5.10/Documentation/filesystems/ |
D | zonefs.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 ZoneFS - Zone filesystem for Zoned block devices 11 as a file. Unlike a regular POSIX-compliant file system with native zoned block 13 constraint of zoned block devices to the user. Files representing sequential 18 than to a full-featured POSIX file system. The goal of zonefs is to simplify 22 example of this approach is the implementation of LSM (log-structured merge) 31 ------------------- 34 space that is divided into zones. A zone is a group of consecutive LBAs and all 43 to the device. As a result of this write constraint, LBAs in a sequential zone 62 by sub-directories. This file structure is built entirely using zone information [all …]
|
/kernel/linux/linux-5.10/fs/xfs/libxfs/ |
D | xfs_ialloc.h | 1 // SPDX-License-Identifier: GPL-2.0 32 return xfs_buf_offset(b, o << (mp)->m_sb.sb_inodelog); in xfs_make_iptr() 37 * Mode is used to tell whether the new inode will need space, and whether 40 * To work within the constraint of one allocation per transaction, 52 * on-disk data structures are updated. The inode itself is not read 68 * The on-disk inode is not changed by this operation, only the 108 * Read in the allocation group header to initialise the per-ag data 124 * Get the data from the pointed-to record.
|
/kernel/linux/linux-5.10/arch/s390/kernel/ |
D | traps.c | 1 // SPDX-License-Identifier: GPL-2.0 33 if (regs->int_code & 0x200) in get_trap_ip() 34 address = *(unsigned long *)(current->thread.trap_tdb + 24); in get_trap_ip() 36 address = regs->psw.addr; in get_trap_ip() 37 return (void __user *) (address - (regs->int_code >> 16)); in get_trap_ip() 52 fixup = s390_search_extables(regs->psw.addr); in do_report_trap() 61 regs->int_code, si_signo) == NOTIFY_STOP) in do_trap() 71 if (!current->ptrace) in do_per_trap() 74 (void __force __user *) current->thread.per_event.address); in do_per_trap() 118 "transaction constraint exception") [all …]
|
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/ |
D | i915_gem_evict.c | 2 * Copyright © 2008-2010 Intel Corporation 25 * Chris Wilson <chris@chris-wilson.co.uuk> 60 list_add(&vma->evict_link, unwind); in mark_free() 61 return drm_mm_scan_add_block(scan, &vma->node); in mark_free() 65 * i915_gem_evict_something - Evict vmas to make room for binding a new one 66 * @vm: address space to evict from 67 * @min_size: size of the desired free space 68 * @alignment: alignment constraint of the desired free space 69 * @color: color for the desired space 74 * This function will try to evict vmas until a free space satisfying the [all …]
|
/kernel/linux/linux-5.10/drivers/ata/ |
D | pata_opti.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * pata_opti.c - ATI PATA for new ATA layer 9 * Copyright (C) 1996-1998 Linus Torvalds & authors (see below) 47 * opti_pre_reset - probe begin 56 struct ata_port *ap = link->ap; in opti_pre_reset() 57 struct pci_dev *pdev = to_pci_dev(ap->host->dev); in opti_pre_reset() 63 if (!pci_test_config_bits(pdev, &opti_enable_bits[ap->port_no])) in opti_pre_reset() 64 return -ENOENT; in opti_pre_reset() 70 * opti_write_reg - control register setup 76 * rather than using PCI space as other controllers do. The double inw [all …]
|
/kernel/linux/linux-5.10/arch/x86/lib/ |
D | usercopy_64.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * User address space access functions. 21 /* no memory constraint because it doesn't change any memory gcc knows in __clear_user() 61 * clean_cache_range - write back a cache range with CLWB 72 unsigned long clflush_mask = x86_clflush_size - 1; in clean_cache_range() 93 * __copy_user_nocache() uses non-temporal stores for the bulk in __copy_user_flushcache() 97 * - Require 8-byte alignment when size is 8 bytes or larger. in __copy_user_flushcache() 98 * - Require 4-byte alignment when size is 4 bytes. in __copy_user_flushcache() 109 flushed = dest - (unsigned long) dst; in __copy_user_flushcache() 110 if (size > flushed && !IS_ALIGNED(size - flushed, 8)) in __copy_user_flushcache() [all …]
|
/kernel/linux/linux-5.10/security/selinux/ss/ |
D | services.c | 1 // SPDX-License-Identifier: GPL-2.0-only 17 * Updated: Hewlett-Packard <paul@paul-moore.com> 35 * Copyright (C) 2006, 2007 Hewlett-Packard Development Company, L.P. 36 * Copyright (C) 2004-2006 Trusted Computer Solutions, Inc. 37 * Copyright (C) 2003 - 2004, 2006 Tresys Technology, LLC 109 return -EINVAL; in selinux_set_mapping() 114 /* Allocate space for the class records, plus one for class zero */ in selinux_set_mapping() 115 out_map->mapping = kcalloc(++i, sizeof(*out_map->mapping), GFP_ATOMIC); in selinux_set_mapping() 116 if (!out_map->mapping) in selinux_set_mapping() 117 return -ENOMEM; in selinux_set_mapping() [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/power/supply/ |
D | rohm,bd99954.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> 11 - Markus Laine <markus.laine@fi.rohmeurope.com> 12 - Mikko Mutanen <mikko.mutanen@fi.rohmeurope.com> 15 The ROHM BD99954 is a Battery Management LSI for 1-4 cell Lithium-Ion 16 secondary battery intended to be used in space-constraint equipment such 18 provides a Dual-source Battery Charger, two port BC1.2 detection and a 32 # a) Trickle-charge with constant current (8). [all …]
|
/kernel/linux/linux-5.10/lib/ |
D | genalloc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * kmalloc/kfree interface. Uses for this includes on-device special 21 * On architectures that don't have NMI-safe cmpxchg implementation, 26 * Copyright 2005 (C) Jes Sorensen <jes@trained-monkey.org> 40 return chunk->end_addr - chunk->start_addr + 1; in chunk_size() 51 return -EBUSY; in set_bits_ll() 66 return -EBUSY; in clear_bits_ll() 74 * bitmap_set_ll - set the specified number of bits at the specified position 79 * Set @nr bits start from @start in @map lock-lessly. Several users 88 int bits_to_set = BITS_PER_LONG - (start % BITS_PER_LONG); in bitmap_set_ll() [all …]
|
/kernel/linux/linux-5.10/arch/riscv/include/asm/ |
D | io.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 6 * Copyright (C) 1996-2000 Russell King 21 * when using {read,write}* fns in low-level headers 29 #define IO_SPACE_LIMIT (PCI_IO_SIZE - 1) 34 * Emulation routines for the port-mapped IO space used by some PCI drivers. 38 * - Fully ordered WRT each other, by bracketing them with two fences. The 41 * - Ordered in the same manner as readX/writeX WRT memory by subsuming their 43 * - Ordered WRT timer reads, so udelay and friends don't get elided by the 45 * Note that there is no way to actually enforce that outX is a non-posted 46 * operation on RISC-V, but hopefully the timer ordering constraint is [all …]
|
D | pgtable.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 12 #include <asm/pgtable-bits.h> 16 /* Page Upper Directory not used in RISC-V */ 17 #include <asm-generic/pgtable-nopud.h> 25 #define VMALLOC_END (PAGE_OFFSET - 1) 26 #define VMALLOC_START (PAGE_OFFSET - VMALLOC_SIZE) 29 #define BPF_JIT_REGION_START (PAGE_OFFSET - BPF_JIT_REGION_SIZE) 33 * Roughly size the vmemmap space to be large enough to fit enough 34 * struct pages to map half the virtual address space. Then 38 (CONFIG_VA_BITS - PAGE_SHIFT - 1 + STRUCT_PAGE_MAX_SHIFT) [all …]
|
/kernel/linux/linux-5.10/drivers/char/ |
D | mspec.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2001-2006 Silicon Graphics, Inc. All rights 20 * Due to a design constraint of the SN2 Shub, you can not have processors 62 * structure is pointed to by the vma->vm_private_data field in the vma struct. 67 * The refcnt is incremented atomically because mm->mmap_lock does not 92 vdata = vma->vm_private_data; in mspec_open() 93 refcount_inc(&vdata->refcnt); in mspec_open() 109 vdata = vma->vm_private_data; in mspec_close() 111 if (!refcount_dec_and_test(&vdata->refcnt)) in mspec_close() 114 last_index = (vdata->vm_end - vdata->vm_start) >> PAGE_SHIFT; in mspec_close() [all …]
|
/kernel/linux/linux-5.10/arch/riscv/mm/ |
D | fault.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 45 * (which will retry the fault, or kill us if we got oom-killed). in mm_fault_error() 96 * Synchronize this task's top level page-table in vmalloc_fault() 99 * Do _not_ use "tsk->active_mm->pgd" here. in vmalloc_fault() 142 * catch kernel vmalloc-area accesses to non-mapped in vmalloc_fault() 154 * entries, but in RISC-V, SFENCE.VMA specifies an in vmalloc_fault() 155 * ordering constraint, not a cache flush; it is in vmalloc_fault() 165 if (!(vma->vm_flags & VM_EXEC)) { in access_error() 171 if (!(vma->vm_flags & (VM_READ | VM_WRITE))) { in access_error() 176 if (!(vma->vm_flags & VM_WRITE)) { in access_error() [all …]
|