| /linux/Documentation/devicetree/bindings/mtd/ |
| H A D | amlogic,meson-nand.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mtd/amlogic,meson-nand.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - $ref: nand-controller.yaml 13 - liang.yang@amlogic.com 18 - amlogic,meson-gxl-nfc 19 - amlogic,meson-axg-nfc 24 reg-names: 26 - const: nfc [all …]
|
| /linux/Documentation/admin-guide/mm/ |
| H A D | zswap.rst | 8 Zswap is a lightweight compressed cache for swap pages. It takes pages that are 10 dynamically allocated RAM-based memory pool. zswap basically trades CPU cycles 11 for potentially reduced swap I/O. This trade-off can also result in a 24 drastically reducing life-shortening writes. 26 Zswap evicts pages from compressed cache on an LRU basis to the backing swap 30 Whether Zswap is enabled at the boot time depends on whether 40 When zswap is disabled at runtime it will stop storing pages that are 42 back into memory all of the pages stored in the compressed pool. The 43 pages stored in zswap will remain in the compressed pool until they are 45 pages out of the compressed pool, a swapoff on the swap device(s) will [all …]
|
| H A D | numa_memory_policy.rst | 10 supported platforms with Non-Uniform Memory Access architectures since 2.4.?. 16 (``Documentation/admin-guide/cgroup-v1/cpusets.rst``) 19 programming interface that a NUMA-aware application can take advantage of. When 28 ------------------------ 38 use "local allocation" described below. However, during boot 41 not to overload the initial boot node with boot-time 45 this is an optional, per-task policy. When defined for a 61 In a multi-threaded task, task policies apply only to the thread 67 A task policy applies only to pages allocated after the policy is 68 installed. Any pages already faulted in by the task when the task [all …]
|
| /linux/Documentation/core-api/kho/ |
| H A D | concepts.rst | 1 .. SPDX-License-Identifier: GPL-2.0-or-later 2 .. _kho-concepts: 18 serialized subsystem states, or in-memory data that shall not be touched 25 ``ranges`` do not exist, hence there are no ``#...-cells`` properties. 33 To boot into kexec, we need to have a physically contiguous memory range that 36 allocations before during boot up to the initialization of the page allocator. 39 first boot KHO allocates several physically contiguous memory regions. Since 44 allocated during boot. The ``kho_scratch`` kernel command line option may be 48 guarantee that no handover pages land in that region, because handover pages 50 movable pages can be located inside. [all …]
|
| /linux/Documentation/virt/kvm/s390/ |
| H A D | s390-pv-boot.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 s390 (IBM Z) Boot/IPL of Protected VMs 8 ------- 13 Documentation/virt/kvm/s390/s390-pv.rst for details." 15 On IPL (boot) a small plaintext bootloader is started, which provides 29 direct kernel, ...) without the need to change the boot process. 33 ------- 46 The new PV load-device-specific-parameters field specifies all data 52 * AES-XTS Tweak prefix 62 After the initial import of the encrypted data, all defined pages will [all …]
|
| /linux/Documentation/mm/ |
| H A D | page_owner.rst | 11 and order of pages is stored into certain storage for each page. 12 When we need to know about status of all pages, we can get and analyze 28 allocated base pages, which gives us a quick overview of where the memory 29 is going without the need to screen through all the pages and match the 33 to add "page_owner=on" to your boot cmdline. If the kernel is built 35 boot option, runtime overhead is marginal. If disabled in runtime, it 52 memory system, so, until initialization, many pages can be allocated and 54 pages are investigated and marked as allocated in initialization phase. 57 more accurately. On 2GB memory x86-64 VM box, 13343 early allocated pages 60 un-tracking state. [all …]
|
| /linux/Documentation/devicetree/bindings/mips/cavium/ |
| H A D | bootbus.txt | 1 * Boot Bus 3 The Octeon Boot Bus is a configurable parallel bus with 8 chip 7 - compatible: "cavium,octeon-3860-bootbus" 11 - reg: The base address of the Boot Bus' register bank. 13 - #address-cells: Must be <2>. The first cell is the chip select 16 - #size-cells: Must be <1>. 18 - ranges: There must be one one triplet of (child-bus-address, 19 parent-bus-address, length) for each active chip select. If the 27 - compatible: "cavium,octeon-3860-bootbus-config" 29 - cavium,cs-index: A single cell indicating the chip select that [all …]
|
| /linux/arch/powerpc/platforms/powernv/ |
| H A D | opal-fadump.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Firmware-Assisted Dump support on POWER platform (OPAL). 20 #include <asm/fadump-internal.h> 22 #include "opal-fadump.h" 29 * preserving kernel boot is going to process this crash data. 40 if (dn == -FDT_ERR_NOTFOUND) in opal_fadump_dt_scan() 46 prop = of_get_flat_dt_prop(dn, "mpipl-boot", NULL); in opal_fadump_dt_scan() 63 if (be16_to_cpu(opal_fdm_active->registered_regions) == 0) in opal_fadump_dt_scan() 68 pr_err("Failed to get boot memory tag (%lld)\n", ret); in opal_fadump_dt_scan() 77 fadump_conf->boot_mem_top = be64_to_cpu(addr); in opal_fadump_dt_scan() [all …]
|
| /linux/drivers/hv/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 menu "Microsoft Hyper-V guest support" 6 bool "Microsoft Hyper-V core hypervisor support" 15 Select this option to run Linux as a Hyper-V client operating 19 bool "Enable Linux to boot in VTL context" 36 initializes the kernel to run in VTL2, and adds the ability to boot 37 secondary CPUs directly into 64-bit context as required for VTLs other 47 tristate "Microsoft Hyper-V Utilities driver" 51 Select this option to enable the Hyper-V Utilities. 54 tristate "Microsoft Hyper-V Balloon driver" [all …]
|
| /linux/mm/kasan/ |
| H A D | shadow.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * generic and software tag-based KASAN modes. 9 * Some code borrowed from https://github.com/xairy/kasan-prototype by 48 * these, so that non-instrumented files can safely consider them as builtins. 146 __memset(shadow_start, value, shadow_end - shadow_start); in kasan_poison() 220 nr_shadow_pages = mem_data->nr_pages >> KASAN_SHADOW_SCALE_SHIFT; in kasan_mem_notifier() 221 start_kaddr = (unsigned long)pfn_to_kaddr(mem_data->start_pfn); in kasan_mem_notifier() 226 if (WARN_ON(mem_data->nr_pages % KASAN_GRANULE_SIZE) || in kasan_mem_notifier() 236 * during the boot. This could happen if we onlining previously in kasan_mem_notifier() 245 pfn_to_nid(mem_data->start_pfn), in kasan_mem_notifier() [all …]
|
| /linux/lib/ |
| H A D | Kconfig.kfence | 1 # SPDX-License-Identifier: GPL-2.0-only 7 bool "KFENCE: low-overhead sampling-based memory safety error detector" 12 KFENCE is a low-overhead sampling-based detector of heap out-of-bounds 13 access, use-after-free, and invalid-free errors. KFENCE is designed 17 See <file:Documentation/dev-tools/kfence.rst> for more details. 33 allocations will be guarded by KFENCE. May be overridden via boot 37 setting "kfence.sample_interval" to a non-zero value enables KFENCE. 45 pages are required; with one containing the object and two adjacent 46 ones used as guard pages. 52 CPU wake-ups if the system is idle, at the risk of a less predictable [all …]
|
| /linux/arch/x86/boot/startup/ |
| H A D | sev-startup.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/percpu-defs.h> 23 #include <linux/psp-sev.h> 24 #include <uapi/linux/sev-guest.h> 30 #include <asm/sev-internal.h> 31 #include <asm/insn-eval.h> 44 /* Include code shared with pre-decompression boot stage */ 45 #include "sev-shared.c" 76 * This can be invoked in early boot while running identity mapped, so in early_snp_set_memory_private() 85 * Ask the hypervisor to mark the memory pages as private in the RMP in early_snp_set_memory_private() [all …]
|
| /linux/Documentation/driver-api/cxl/allocation/ |
| H A D | hugepages.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Huge Pages 9 CXL Memory onlined as SystemRAM during early boot is eligible for use by CMA, 14 capacity allocated by CMA - as the NUMA node hosting the capacity is `Offline` 15 at :code:`__init` time - when CMA carves out contiguous capacity. 21 2MB Huge Pages 22 -------------- 24 for use as 2MB huge pages. 26 1GB Huge Pages 27 --------------
|
| /linux/mm/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 23 bool "Compressed cache for swap pages" 28 A lightweight compressed cache for swap pages. It takes 29 pages that are in the process of being swapped out and attempts to 30 compress them into a dynamically allocated RAM-based memory pool. 36 bool "Enable the compressed cache for swap pages by default" 39 If selected, the compressed cache for swap pages will be enabled 40 at boot, otherwise it will be disabled. 50 If selected, the zswap shrinker will be enabled, and the pages 56 reducing the chance that cold pages will reside in the zswap pool [all …]
|
| H A D | memblock.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 46 * boot period when the usual kernel memory allocators are not up and 52 * * ``memory`` - describes the physical memory available to the 56 * * ``reserved`` - describes the regions that were allocated 57 * * ``physmem`` - describes the actual physical memory available during 58 * boot regardless of the possible restrictions and memory hot(un)plug; 87 * * memblock_phys_alloc*() - these functions return the **physical** 89 * * memblock_alloc*() - these functions return the **virtual** address 97 * As the system boot progresses, the architecture specific mem_init() 158 for (i = 0, rgn = &memblock_type->regions[0]; \ [all …]
|
| H A D | mm_init.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * mm_init.c - Memory initialisation verification and debugging 18 #include <linux/page-isolation.h> 79 zonelist = &pgdat->node_zonelists[listid]; in mminit_verify_zonelist() 80 zone = &pgdat->node_zones[zoneid]; in mminit_verify_zonelist() 87 zone->name); in mminit_verify_zonelist() 91 pr_cont("%d:%s ", zone_to_nid(zone), zone->nam in mminit_verify_zonelist() 321 unsigned long pages = end_pfn - start_pfn; early_calculate_totalpages() local [all...] |
| /linux/Documentation/dev-tools/ |
| H A D | kfence.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Kernel Electric-Fence (KFENCE) 7 Kernel Electric-Fence (KFENCE) is a low-overhead sampling-based memory safety 8 error detector. KFENCE detects heap out-of-bounds access, use-after-free, and 9 invalid-free errors. 15 non-production test workloads. One way to quickly achieve a large enough total 19 ----- 26 ``kfence.sample_interval`` to non-zero value), configure the kernel with:: 38 the kernel boot parameter ``kfence.sample_interval`` in milliseconds. The 46 causes CPU wake-ups when the system is completely idle. This may be undesirable [all …]
|
| /linux/arch/x86/kernel/ |
| H A D | machine_kexec_64.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Copyright (C) 2002-2005 Eric Biederman <ebiederm@xmission.com> 27 #include <asm/kexec-bzimage64.h> 48 return kernel_ident_mapping_init(data->info, data->level4p, in mem_region_callback() 49 res->start, res->end + 1); in mem_region_callback() 63 ret = walk_iomem_res_desc(IORES_DESC_ACPI_TABLES, flags, 0, -1, in map_acpi_tables() 65 if (ret && ret != -EINVAL) in map_acpi_tables() 68 /* ACPI tables could be located in ACPI Non-volatile Storage region */ in map_acpi_tables() 69 ret = walk_iomem_res_desc(IORES_DESC_ACPI_NV_STORAGE, flags, 0, -1, in map_acpi_tables() 71 if (ret && ret != -EINVAL) in map_acpi_tables() [all …]
|
| H A D | head_64.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * linux/arch/x86/kernel/head_64.S -- start in 32bit and switch to 64bit 21 #include <asm/processor-flags.h> 25 #include <asm/nospec-branch.h> 33 * because we need identity-mapped pages. 44 * kernel pages and possibly all of memory. 51 * arch/x86/boot/compressed/head_64.S. 53 * We only come here initially at boot nothing else comes here. 66 * Note that on SMP the boot CPU uses the init data section until 67 * the per-CPU areas are set up. [all …]
|
| /linux/arch/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 22 # IOMMUs not handled by dma-iommu. Drivers must never select this symbol. 29 menu "General architecture-dependent options" 34 Select if the architecture can check permissions at sub-page 70 by sharing mid-level caches, last-level cache tags or internal 74 bool "Multi-Core Cache (MC) scheduler support" 78 Multi-core scheduler support improves the CPU scheduler's decision 79 making when dealing with multi-core CPU chips at a cost of slightly 127 for kernel debugging, non-intrusive instrumentation and testing. 136 makes certain almost-always-true or almost-always-false branch [all …]
|
| /linux/Documentation/virt/hyperv/ |
| H A D | coco.rst | 1 .. SPDX-License-Identifier: GPL-2.0 5 Hyper-V can create and run Linux guests that are Confidential Computing 9 CoCo VMs on Hyper-V share the generic CoCo VM threat model and security 10 objectives described in Documentation/security/snp-tdx-threat-model.rst. Note 11 that Hyper-V specific code in Linux refers to CoCo VMs as "isolated VMs" or 14 A Linux CoCo VM on Hyper-V requires the cooperation and interaction of the 19 * The hardware runs a version of Windows/Hyper-V with support for CoCo VMs 25 * AMD processor with SEV-SNP. Hyper-V does not run guest VMs with AMD SME, 26 SEV, or SEV-ES encryption, and such encryption is not sufficient for a CoCo 27 VM on Hyper-V. [all …]
|
| /linux/tools/testing/selftests/mm/ |
| H A D | thuge-gen.c | 1 // SPDX-License-Identifier: GPL-2.0 4 Before running this huge pages for each huge page size must have been 6 For large pages beyond MAX_PAGE_ORDER (like 1GB on x86) boot options must 10 And nothing using huge pages should run in parallel. 12 ipcrm -m by hand, like this 13 sudo ipcs | awk '$1 == "0x00000000" {print $2}' | xargs -n1 sudo ipcrm -m 36 #define SHM_HUGETLB 04000 /* segment will use huge TLB pages */ 75 "cat /sys/kernel/mm/hugepages/hugepages-%lukB/free_hugepages", in show() 86 "/sys/kernel/mm/hugepages/hugepages-%lukB/free_hugepages", in read_free() 101 MAP_PRIVATE|MAP_ANONYMOUS|MAP_HUGETLB|flags, -1, 0); in test_mmap() [all …]
|
| /linux/drivers/iommu/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 2 # The IOVA library may also be used by non-IOMMU_API users 40 sizes at both stage-1 and stage-2, as well as address spaces 41 up to 48-bits in size. 47 Enable self-tests for LPAE page table allocator. This performs 48 a series of page-table consistency checks during boot. 57 Enable support for the ARM Short-descriptor pagetable format. 58 This supports 32-bit virtual and physical addresses mapped using 59 2-level tables with 4KB pages/1MB sections, and contiguous entries 60 for 64KB pages/16MB supersections if indicated by the IOMMU driver. [all …]
|
| /linux/arch/powerpc/ |
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 5 def_bool PPC64 && $(cc-option, -mabi=elfv2) 8 def_bool PPC64 && $(cc-option, -mcpu=power10 -mprefixed) 11 # Clang has a bug (https://github.com/llvm/llvm-project/issues/62372) 12 # where pcrel code is not generated if -msoft-float, -mno-altivec, or 13 # -mno-vsx options are also given. Without these options, fp/vec 16 def_bool PPC64 && CC_IS_GCC && $(cc-option, -mcpu=power10 -mpcrel) 35 # On Book3S 64, the default virtual address space for 64-bit processes 38 # between bottom-up and top-down allocations for applications that 41 default 29 if PPC_BOOK3S_64 && PPC_64K_PAGES # 29 = 45 (32T) - 16 (64K) [all …]
|
| /linux/Documentation/admin-guide/ |
| H A D | kernel-parameters.txt | 5 avoid prolonged boot times. The lazy option will add 10 at once during boot. 16 force -- enable ACPI if default was off 17 on -- enable ACPI but allow fallback to DT [arm64,riscv64] 18 off -- disable ACPI if default was on 19 noirq -- do not use ACPI for IRQ routing 20 strict -- Be less tolerant of platforms that are not 22 rsdt -- prefer RSDT over (default) XSDT 23 copy_dsdt -- copy DSDT to memory 24 nocmcff -- Disable firmware first mode for corrected [all …]
|