/linux/Documentation/virt/kvm/x86/ |
H A D | mmu.rst | 1 .. SPDX-License-Identifier: GPL-2.0 13 - correctness: 18 - security: 21 - performance: 23 - scaling: 25 - hardware: 26 support the full range of x86 virtualization hardware 27 - integration: 31 - dirty tracking: 33 and framebuffer-based displays [all …]
|
/linux/drivers/net/wireless/ath/ath10k/ |
H A D | core.h | 1 /* SPDX-License-Identifier: ISC */ 3 * Copyright (c) 2005-2011 Atheros Communications Inc. 4 * Copyright (c) 2011-2017 Qualcomm Atheros, Inc. 5 * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. 47 #define ATH10K_DEFAULT_NOISE_FLOOR -95 68 /* SMBIOS type structure length (excluding strings-set) */ 145 return (struct ath10k_skb_cb *)&IEEE80211_SKB_CB(skb)->driver_data; in ATH10K_SKB_CB() 150 BUILD_BUG_ON(sizeof(struct ath10k_skb_rxcb) > sizeof(skb->cb)); in ATH10K_SKB_RXCB() 151 return (struct ath10k_skb_rxcb *)skb->cb; in ATH10K_SKB_RXCB() 210 /* Protected by data_lock */ [all …]
|
/linux/arch/x86/kvm/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 53 tristate "Kernel-based Virtual Machine (KVM) support" 56 Support hosting fully virtualized guest machines using hardware 61 This module provides access to the hardware capabilities through 70 bool "Compile KVM with -Werror" 71 # Disallow KVM's -Werror if KASAN is enabled, e.g. to guard against 75 # Building KVM with -Werror and KASAN is still doable via enabling 76 # the kernel-wide WERROR=y. 79 Add -Werror to the build flags for KVM. 84 bool "Enable support for KVM software-protected VMs" [all …]
|
/linux/Documentation/filesystems/ |
H A D | fscrypt.rst | 2 Filesystem-level encryption (fscrypt) 11 Note: "fscrypt" in this document refers to the kernel-level portion, 14 covers the kernel-level portion. For command-line examples of how to 20 <https://source.android.com/security/encryption/file-based>`_, over 25 Unlike dm-crypt, fscrypt operates at the filesystem level rather than 28 filesystem. This is useful for multi-user systems where each user's 29 data-at-rest needs to be cryptographically isolated from the others. 34 directly into supported filesystems --- currently ext4, F2FS, UBIFS, 44 fscrypt does not support encrypting files in-place. Instead, it 54 --------------- [all …]
|
/linux/include/drm/ |
H A D | gpu_scheduler.h | 28 #include <linux/dma-fence.h> 36 * DRM_SCHED_FENCE_DONT_PIPELINE - Prevent dependency pipelining 45 * DRM_SCHED_FENCE_FLAG_HAS_DEADLINE_BIT - A fence deadline hint has been set 75 * struct drm_sched_entity - A wrapper around a job queue (typically 78 * Entities will emit jobs in order to their corresponding hardware 89 * Protected by &drm_sched_rq.lock of @rq. 96 * Lock protecting the run-queue (@rq) to which this entity belongs, 106 * FIXME: Locking is very unclear for this. Writers are protected by 141 * drm_sched_entity_set_priority(). Protected by @lock. 239 * struct drm_sched_rq - queue of entities to be scheduled. [all …]
|
H A D | drm_mode_config.h | 42 * struct drm_mode_config_funcs - basic driver provided mode setting functions 44 * Some global (i.e. not per-CRTC, connector, etc) mode setting functions that 59 * ie. when (@mode_cmd->flags & DRM_MODE_FB_MODIFIERS) == 0. 70 * driver-specific information (like the internal native buffer object 116 * function must reject any modeset and state changes which the hardware 120 * - Checking that the modes, framebuffers, scaling and placement 121 * requirements and so on are within the limits of the hardware. 123 * - Checking that any hidden shared resources are not oversubscribed. 128 * - Checking that virtualized resources exported to userspace are not 131 * example is dual-pipe operations (which generally should be hidden [all …]
|
/linux/Documentation/RCU/ |
H A D | rcu_dereference.rst | 17 (prefix "*"), field selection ("->"), assignment ("="), address-of 27 - You must use one of the rcu_dereference() family of primitives 28 to load an RCU-protected pointer, otherwise CONFIG_PROVE_RCU 29 will complain. Worse yet, your code can see random memory-corruption 45 - In the special case where data is added but is never removed 51 - You are only permitted to use rcu_dereference() on pointer values. 57 - Set bits and clear bits down in the must-be-zero low-order 62 - XOR bits to translate pointers, as is done in some 63 classic buddy-allocator algorithms. 68 - Avoid cancellation when using the "+" and "-" infix arithmetic [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:: 46 causes CPU wake-ups when the system is completely idle. This may be undesirable 47 on power-constrained systems. The boot parameter ``kfence.deferrable=1`` [all …]
|
/linux/Documentation/fb/ |
H A D | uvesafb.rst | 2 uvesafb - A Generic Driver for VBE2+ compliant video cards 6 --------------- 30 -------------------------- 36 - Lack of any type of acceleration. 37 - A strict and limited set of supported video modes. Often the native 42 ratio, which is what most BIOS-es are limited to. 43 - Adjusting the refresh rate is only possible with a VBE 3.0 compliant 44 Video BIOS. Note that many nVidia Video BIOS-es claim to be VBE 3.0 48 ---------------- 54 video=uvesafb:1024x768-32,mtrr:3,ywrap (compiled into the kernel) [all …]
|
/linux/tools/memory-model/Documentation/ |
H A D | README | 4 Linux-kernel memory model (LKMM) audience might be anywhere from novice 12 If LKMM-specific terms lost you, glossary.txt might help you. 14 o You are new to Linux-kernel concurrency: simple.txt 16 o You have some background in Linux-kernel concurrency, and would 17 like an overview of the types of low-level concurrency primitives 22 o You are familiar with the Linux-kernel concurrency primitives 24 tests: litmus-tests.txt 27 protected by a lock: locking.txt 30 recipes.txt, but is self-contained. 32 o You are familiar with Linux-kernel concurrency, and would [all …]
|
H A D | access-marking.txt | 1 MARKING SHARED-MEMORY ACCESSES 6 not use read-modify-write atomic operations. It also describes how to 13 ACCESS-MARKING OPTIONS 16 The Linux kernel provides the following access-marking options: 18 1. Plain C-language accesses (unmarked), for example, "a = b;" 20 2. Data-race marking, for example, "data_race(a = b);" 30 6. KCSAN's negative-marking assertions, ASSERT_EXCLUSIVE_ACCESS() 32 "ACCESS-DOCUMENTATION OPTIONS" section below. 39 Neither plain C-language accesses nor data_race() (#1 and #2 above) place 42 compiler's use of code-motion and common-subexpression optimizations. [all …]
|
/linux/Documentation/admin-guide/mm/ |
H A D | userfaultfd.rst | 8 Userfaults allow the implementation of on-demand paging from userland 38 Vmas are not suitable for page- (or hugepage) granular fault tracking 48 is a corner case that would currently return ``-EBUSY``). 54 ---------------------- 63 - Any user can always create a userfaultfd which traps userspace page faults 67 - In order to also trap kernel page faults for the address space, either the 84 -------------------------- 101 - The ``UFFD_FEATURE_EVENT_*`` flags indicate that various other events 103 detail below in the `Non-cooperative userfaultfd`_ section. 105 - ``UFFD_FEATURE_MISSING_HUGETLBFS`` and ``UFFD_FEATURE_MISSING_SHMEM`` [all …]
|
/linux/arch/x86/kvm/mmu/ |
H A D | spte.h | 1 // SPDX-License-Identifier: GPL-2.0-only 13 * in hardware. E.g. MMIO SPTEs are not considered present. Use bit 11, as it 22 * be restricted to using write-protection (for L2 when CPU dirty logging, i.e. 28 * is guaranteed to have A/D bits and write-protection is forced only for 29 * TDP with CPU dirty logging (PML). If NPT ever gains PML-like support, it 30 * must be restricted to 64-bit KVM. 40 #define SPTE_BASE_ADDR_MASK (physical_mask & ~(u64)(PAGE_SIZE-1)) 42 #define SPTE_BASE_ADDR_MASK (((1ULL << 52) - 1) & ~(u64)(PAGE_SIZE-1)) 64 * as not-present for access tracking purposes. We do not save the W bit as the 78 * SPTE is write-protected. See is_writable_pte() for details. [all …]
|
/linux/drivers/net/ethernet/aquantia/atlantic/macsec/ |
H A D | macsec_struct.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 21 /*! The match mask is per-nibble. 0 means don't care, i.e. every value 122 /*! Mask is per-byte. 137 * For explicit SECTAG, AN is hardware controlled. For sending 142 /*! Mask is per-byte. 148 * PN number is hardware controlled. 151 /*! Mask is per-byte. 156 /*! Mask is per-byte. 171 /*! Mask is per-byte. 176 /*! Mask is per-byte. [all …]
|
/linux/drivers/gpu/drm/vmwgfx/ |
H A D | vmwgfx_so.c | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 3 * Copyright 2014-2015 VMware, Inc., Palo Alto, CA., USA 19 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 35 * destroy a hardware surface, all views pointing to it must also be destroyed, 44 * struct vmw_view - view metadata 48 * @ctx: Non-refcounted pointer to the context this view belongs to. 51 * @srf_head: List head for the surface-to-view list. 52 * @cotable_head: List head for the cotable-to_view list. 54 * @view_id: User-space per context view id. Currently used also as per 68 struct list_head srf_head; /* Protected by binding_mutex */ [all …]
|
H A D | vmwgfx_cmdbuf.c | 1 // SPDX-License-Identifier: GPL-2.0 OR MIT 4 * Copyright 2015-2023 VMware, Inc., Palo Alto, CA., USA 20 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 42 (1024 - ALIGN(sizeof(SVGACBHeader), VMW_CMDBUF_INLINE_ALIGN)) 45 * struct vmw_cmdbuf_context - Command buffer context queues 48 * manager but not yet submitted to hardware. 49 * @hw_submitted: List of command buffers submitted to hardware. 51 * @num_hw_submitted: Number of buffers currently being processed by hardware 63 * struct vmw_cmdbuf_man - Command buffer manager 76 * data is protected by @lock. [all …]
|
/linux/arch/m68k/mm/ |
H A D | hwtest.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Tests for presence or absence of hardware registers. 8 * The test is for use when trying to read a hardware register 12 * There is a test-by-reading and a test-by-writing; I present 15 * -- PMM <pmaydell@chiark.greenend.org.uk>, 05/1998 19 * hardware register address. It is called very early in the kernel 60 /* Basically the same, but writes a value into a word register, protected
|
/linux/arch/x86/kernel/ |
H A D | umip.c | 2 * umip.c Emulation for instruction protected by the User-Mode Instruction 6 * Ricardo Neri <ricardo.neri-calderon@linux.intel.com> 13 #include <asm/insn-eval.h> 19 /** DOC: Emulation for User-Mode Instruction Prevention (UMIP) 21 * User-Mode Instruction Prevention is a security feature present in recent 27 * the UMIP-protected instructions (in the form of a SIGSEGV signal), it can be 38 * The instructions protected by UMIP can be split in two groups. Those which 44 * not the actual location of the table. The result is emulated as a hard-coded 52 * - SLDT returns (GDT_ENTRY_LDT * 8) if an LDT has been set, 0 if not. 53 * - STR returns (GDT_ENTRY_TSS * 8). [all …]
|
/linux/drivers/net/wireless/marvell/libertas/ |
H A D | dev.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 73 /* Hardware debugging */ 94 /* Hardware access */ 130 /* Command responses sent from the hardware to the driver */ 135 /* Events sent from hardware to driver */ 156 int tx_pending_len; /* -1 while building packet */ 158 /* protected by hard_start_xmit serialization */ 201 r = netif_running(priv->dev); in lbs_iface_active() 202 if (priv->mesh_dev) in lbs_iface_active() 203 r |= netif_running(priv->mesh_dev); in lbs_iface_active()
|
/linux/Documentation/kernel-hacking/ |
H A D | locking.rst | 37 +------------------------------------+------------------------------------+ 41 +------------------------------------+------------------------------------+ 43 +------------------------------------+------------------------------------+ 45 +------------------------------------+------------------------------------+ 47 +------------------------------------+------------------------------------+ 49 +------------------------------------+------------------------------------+ 51 +------------------------------------+------------------------------------+ 57 +------------------------------------+------------------------------------+ 61 +------------------------------------+------------------------------------+ 63 +------------------------------------+------------------------------------+ [all …]
|
/linux/drivers/gpu/drm/xe/ |
H A D | xe_exec_queue_types.h | 1 /* SPDX-License-Identifier: MIT */ 25 XE_EXEC_QUEUE_PRIORITY_UNSET = -2, /* For execlist usage only */ 35 * struct xe_exec_queue - Execution queue 47 * @hwe: A hardware of the same class. May (physical engine) or may not 66 /** @msix_vec: MSI-X vector (for platforms that support it) */ 72 * @last_fence: last fence on exec queue, protected by vm->lock in write 73 * mode if bind exec queue, protected by dma resv lock if non-bind exec 84 /* child of VM queue for multi-tile VM jobs */ 100 /** @multi_gt_list: list head for VM bind engines if multi-GT */ 102 /** @multi_gt_link: link for VM bind engines if multi-GT */ [all …]
|
/linux/drivers/net/ethernet/sfc/siena/ |
H A D | nic.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 4 * Copyright 2005-2006 Fen Systems Ltd. 5 * Copyright 2006-2013 Solarflare Communications Inc. 90 * struct siena_nic_data - Siena NIC state 92 * @wol_filter_id: Wake-on-LAN packet filter id 93 * @stats: Hardware statistics 97 * @local_addr_list: List of local addresses. Protected by %local_lock. 99 * %local_addr_list. Protected by %local_lock.
|
/linux/Documentation/hwmon/ |
H A D | mc33xs2410_hwmon.rst | 1 .. SPDX-License-Identifier: GPL-2.0 10 Datasheet: https://www.nxp.com/docs/en/data-sheet/MC33XS2410.pdf 17 ----------- 19 The MC33XS2410 is a four channel self-protected high-side switch featuring 20 hardware monitoring functions such as temperature, current and voltages for each 24 ------------- 30 temp[2-5]_label "Channel [1-4] temperature" 31 temp[2-5]_input Measured temperature of a single channel 32 temp[2-5]_alarm Temperature alarm 33 temp[2-5]_max Maximal temperature
|
/linux/include/linux/ |
H A D | blk-crypto-profile.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 10 #include <linux/blk-crypto.h> 15 * struct blk_crypto_ll_ops - functions to control inline encryption hardware 17 * Low-level operations for controlling inline encryption hardware. This 19 * encryption. All functions may sleep, are serialized by profile->lock, and 20 * are never called while profile->dev (if set) is runtime-suspended. 25 * @keyslot_program: Program a key into the inline encryption hardware. 28 * hardware, overwriting any key that the keyslot may already contain. 29 * The keyslot is guaranteed to not be in-use by any I/O. 32 * device is a layered device, or if the device is real hardware that [all …]
|
/linux/arch/s390/kvm/ |
H A D | pv.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Hosting Protected Virtual Machines 21 #include "kvm-s390.h" 25 lockdep_assert_held(&kvm->lock); in kvm_s390_pv_is_protected() 32 lockdep_assert_held(&vcpu->mutex); in kvm_s390_pv_cpu_is_protected() 38 * kvm_s390_pv_make_secure() - make one guest page secure 43 * Context: needs to be called with kvm->srcu held. 50 lockdep_assert_held(&kvm->srcu); in kvm_s390_pv_make_secure() 54 return -EFAULT; in kvm_s390_pv_make_secure() 55 return make_hva_secure(kvm->mm, vmaddr, uvcb); in kvm_s390_pv_make_secure() [all …]
|