/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/mm/ |
H A D | Kconfig.debug | 1 # SPDX-License-Identifier: GPL-2.0-only 17 Unmap pages from the kernel linear mapping after free_pages(). 22 pages are being allocated and freed, as unexpected state changes 24 use-after-free). The error reports for these checks can be augmented 26 PAGE_OWNER is also selected and enabled on boot. 29 fill the pages with poison patterns after free_pages() and verify 33 pages are not saved to the suspend image. 36 allowing the kernel mapping to be backed by large pages on some 65 Boot with debugging on by default. SLUB boots by default with 67 equivalent to specifying the "slab_debug" parameter on boot. [all …]
|
H A D | memblock.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 40 * boot period when the usual kernel memory allocators are not up and 46 * * ``memory`` - describes the physical memory available to the 50 * * ``reserved`` - describes the regions that were allocated 51 * * ``physmem`` - describes the actual physical memory available during 52 * boot regardless of the possible restrictions and memory hot(un)plug; 81 * * memblock_phys_alloc*() - these functions return the **physical** 83 * * memblock_alloc*() - these functions return the **virtual** address 91 * As the system boot progresses, the architecture specific mem_init() 145 for (i = 0, rgn = &memblock_type->regions[0]; \ [all …]
|
H A D | page_ext.c | 1 // SPDX-License-Identifier: GPL-2.0 23 * At last, enlarging struct page could cause un-wanted system behaviour change. 28 * functions provided by this code. During the boot process, it checks whether 35 * memory allocation at boot-time. The other is optional, init callback, which 40 * boot and extra memory would be unnecessary. In this case, to avoid 45 * none of need callbacks return true, memory isn't needed at all in this boot 50 * extra memory through size in struct page_ext_operations. If it is non-zero, 59 * initialized, even if pages are allocated and used freely. This could 100 * To ensure correct allocation tagging for pages, page_ext should be available 122 if (page_ext_ops[i]->need()) { in invoke_need_callbacks() [all …]
|
/linux/Documentation/admin-guide/mm/ |
H A D | memory-hotplug.rst | 20 - The physical memory available to a machine can be adjusted at runtime, up- or 25 - Replacing hardware, such as DIMMs or whole NUMA nodes, without downtime. One 28 - Reducing energy consumption either by physically unplugging memory modules or 32 used to expose persistent memory, other performance-differentiated memory and 39 ----- [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/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | pagealloc.c | 2 * Copyright (c) 2013-2015, Mellanox Technologies. All rights reserved. 14 * - Redistributions of source code must retain the above 18 * - Redistributions in binary form must reproduce the above 106 root = xa_load(&dev->priv.page_root_xa, function); in page_root_per_function() 112 return ERR_PTR(-ENOMEM); in page_root_per_function() 114 err = xa_insert(&dev->priv.page_root_xa, function, root, GFP_KERNEL); in page_root_per_function() 138 new = &root->rb_node; in insert_page() 143 if (tfp->addr < addr) in insert_page() 144 new = &parent->rb_left; in insert_page() 145 else if (tfp->addr > addr) in insert_page() [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/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/mm/kmsan/ |
H A D | shadow.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2017-2022 Google LLC 22 #define shadow_page_for(page) ((page)->kmsan_shadow) 24 #define origin_page_for(page) ((page)->kmsan_origin) 48 * Dummy load and store pages to be used when the real metadata is unavailable. 49 * There are separate pages for loads and stores, so that every load returns a 61 off = addr64 - VMALLOC_START; in vmalloc_meta() 66 off = addr64 - MODULES_VADD in vmalloc_meta() 175 int pages = 1 << order; kmsan_alloc_page() local 218 kmsan_vmap_pages_range_noflush(unsigned long start,unsigned long end,pgprot_t prot,struct page ** pages,unsigned int page_shift) kmsan_vmap_pages_range_noflush() argument [all...] |
/linux/Documentation/arch/x86/ |
H A D | tdx.rst | 1 .. SPDX-License-Identifier: GPL-2.0 18 CPU-attested software module called 'the TDX module' runs inside the new 22 TDX also leverages Intel Multi-Key Total Memory Encryption (MKTME) to 23 provide crypto-protection to the VMs. TDX reserves part of MKTME KeyIDs 32 TDX boot-time detection 33 ----------------------- 36 boot. Below dmesg shows when TDX is enabled by BIOS:: 41 --------------------------------------- 59 Besides initializing the TDX module, a per-cpu initialization SEAMCALL 103 ------------------------------------------ [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/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() 110 "/sys/kernel/mm/hugepages/hugepages-%lukB/free_hugepages", in read_free() 121 MAP_PRIVATE|MAP_ANONYMOUS|MAP_HUGETLB|flags, -1, 0); in test_mmap() [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/arch/x86/kernel/ |
H A D | vmlinux.lds.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 * Historic 32-bit version written by Martin Mares <mj@atrey.karlin.mff.cuni.cz> 8 * Copyright (C) 2007-2009 Sam Ravnborg <sam@ravnborg.org> 24 #include <asm-generic/vmlinux.lds.h> 25 #include <asm/asm-offsets.h> 30 #include <asm/boot.h> 41 OUTPUT_ARCH(i386:x86-64) 50 * On 64-bit, align RODATA to 2MB so we retain large page mappings for 54 * to the pages mapping to text and to the pages padding (which are freed) the 56 * pages. For 64-bit, kernel text and kernel identity mappings are different, [all …]
|
/linux/arch/alpha/boot/ |
H A D | bootpz.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * arch/alpha/boot/bootpz.c 10 * based significantly on the arch/alpha/boot/main.c of Linus Torvalds 103 * This function moves into OSF/1 pal-code, and has a temporary 107 * The page table muckery in here depends on the fact that the boot 108 * code has the L1 page table identity-map itself in the second PTE 109 * in the L1 page table. Thus the L1-page is virtually addressable 123 pcb_va->ksp = 0; in pal_init() 124 pcb_va->usp = 0; in pal_init() 125 pcb_va->ptbr = L1[1] >> 32; in pal_init() [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 …]
|
/linux/drivers/gpu/drm/imagination/ |
H A D | pvr_fw_mips.h | 1 /* SPDX-License-Identifier: GPL-2.0-only OR MIT */ 19 * struct pvr_fw_mips_data - MIPS-specific data 23 * @pt_pages: Pages containing MIPS pagetable. 33 /** @boot_code_dma_addr: DMA address of MIPS boot code. */ 36 /** @boot_data_dma_addr: DMA address of MIPS boot data. */
|
/linux/arch/nios2/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 56 defines the maximal power of two of number of pages that can be 82 2 or 4. Any non-aligned load/store instructions will be trapped and 86 comment "Boot options" 97 On some platforms, there is currently no way for the boot loader to 99 some command-line options at build time by entering them here. In 108 override those passed by the boot loader. 120 bool "Passed kernel command line from u-boot" 122 Use bootargs env variable from u-boot for kernel command line.
|
/linux/Documentation/admin-guide/kdump/ |
H A D | vmcoreinfo.rst | 11 section and used by user-space tools like crash and makedumpfile to 18 ------------------------ 25 --------- 32 ----------- 39 User-space tools can get the kernel name, host name, kernel release 43 --------------------- 49 --------------- 56 -------------- 62 ------ 69 ------------- [all …]
|
/linux/arch/x86/mm/ |
H A D | init_32.c | 1 // SPDX-License-Identifier: GPL-2.0-only 65 * in non-PAE compilation mode, since the middle layer is folded. 187 BUG_ON(vaddr < fix_to_virt(FIX_KMAP_BEGIN - 1) in page_table_kmap_check() 245 * of max_low_pfn pages, by creating page tables starting from address 270 * First iteration will setup identity mapping using large/small pages in kernel_physical_mapping_init() 279 * "Software should not write to a paging-structure entry in a way in kernel_physical_mapping_init() 309 * Map with big pages if possible, otherwise in kernel_physical_mapping_init() 324 addr2 = (pfn + PTRS_PER_PTE-1) * PAGE_SIZE + in kernel_physical_mapping_init() 325 PAGE_OFFSET + PAGE_SIZE-1; in kernel_physical_mapping_init() 428 * in the 32-bit EFI stub. in sync_initial_page_table() [all …]
|