Home
last modified time | relevance | path

Searched +full:non +full:- +full:volatile (Results 1 – 25 of 1015) sorted by relevance

12345678910>>...41

/kernel/linux/linux-6.6/tools/testing/selftests/bpf/progs/
Dverifier_sdiv.c1 // SPDX-License-Identifier: GPL-2.0
11 __description("SDIV32, non-zero imm divisor, check 1")
12 __success __success_unpriv __retval(-20)
15 asm volatile (" \ in sdiv32_non_zero_imm_1()
16 w0 = -41; \ in sdiv32_non_zero_imm_1()
23 __description("SDIV32, non-zero imm divisor, check 2")
24 __success __success_unpriv __retval(-20)
27 asm volatile (" \ in sdiv32_non_zero_imm_2()
29 w0 s/= -2; \ in sdiv32_non_zero_imm_2()
35 __description("SDIV32, non-zero imm divisor, check 3")
[all …]
Dverifier_bounds_deduction_non_const.c1 // SPDX-License-Identifier: GPL-2.0
8 __description("check deducing bounds from non-const, jmp64, <non_const> == <const>, 1")
12 asm volatile (" \ in deducing_bounds_from_non_const_1()
21 r0 -= r1; \ in deducing_bounds_from_non_const_1()
29 __description("check deducing bounds from non-const, jmp64, <non_const> == <const>, 2")
33 asm volatile (" \ in deducing_bounds_from_non_const_2()
42 r0 -= r1; \ in deducing_bounds_from_non_const_2()
50 __description("check deducing bounds from non-const, jmp64, <non_const> != <const>, 1")
54 asm volatile (" \ in deducing_bounds_from_non_const_3()
64 r0 -= r1; \ in deducing_bounds_from_non_const_3()
[all …]
Dverifier_cgroup_storage.c1 // SPDX-License-Identifier: GPL-2.0
35 asm volatile (" \ in valid_cgroup_storage_access()
55 asm volatile (" \ in invalid_cgroup_storage_access_1()
75 asm volatile (" \ in invalid_cgroup_storage_access_2()
94 asm volatile (" \ in invalid_cgroup_storage_access_3()
110 __failure __msg("invalid access to map value, value_size=64 off=-2 size=4")
115 asm volatile (" \ in __flag()
119 r1 = *(u32*)(r0 - 2); \ in __flag()
131 __failure __msg("get_local_storage() doesn't support non-zero flags")
135 asm volatile (" \ in invalid_cgroup_storage_access_5()
[all …]
/kernel/linux/linux-5.10/Documentation/translations/it_IT/process/
Dvolatile-considered-harmful.rst1 .. include:: ../disclaimer-ita.rst
3 :Original: :ref:`Documentation/process/volatile-considered-harmful.rst <volatile_considered_harmful…
8 Perché la parola chiave "volatile" non dovrebbe essere usata
9 ------------------------------------------------------------
13 a volte saranno tentati dall'utilizzare *volatile* nel kernel per le
15 *volatile* come una variabile atomica di facile utilizzo, ma non è così.
16 L'uso di *volatile* nel kernel non è quasi mai corretto; questo documento ne
19 Il punto chiave da capire su *volatile* è che il suo scopo è quello di
20 sopprimere le ottimizzazioni, che non è quasi mai quello che si vuole.
27 Come *volatile*, le primitive del kernel che rendono sicuro l'accesso ai dati
[all …]
/kernel/linux/linux-6.6/Documentation/translations/it_IT/process/
Dvolatile-considered-harmful.rst1 .. include:: ../disclaimer-ita.rst
3 :Original: :ref:`Documentation/process/volatile-considered-harmful.rst <volatile_considered_harmful…
8 Perché la parola chiave "volatile" non dovrebbe essere usata
9 ------------------------------------------------------------
13 a volte saranno tentati dall'utilizzare *volatile* nel kernel per le
15 *volatile* come una variabile atomica di facile utilizzo, ma non è così.
16 L'uso di *volatile* nel kernel non è quasi mai corretto; questo documento ne
19 Il punto chiave da capire su *volatile* è che il suo scopo è quello di
20 sopprimere le ottimizzazioni, che non è quasi mai quello che si vuole.
27 Come *volatile*, le primitive del kernel che rendono sicuro l'accesso ai dati
[all …]
/kernel/linux/linux-6.6/include/asm-generic/bitops/
Dinstrumented-non-atomic.h1 /* SPDX-License-Identifier: GPL-2.0 */
4 * This file provides wrappers with sanitizer instrumentation for non-atomic
17 * ___set_bit - Set a bit in memory
21 * Unlike set_bit(), this function is non-atomic. If it is called on the same
26 ___set_bit(unsigned long nr, volatile unsigned long *addr) in ___set_bit()
33 * ___clear_bit - Clears a bit in memory
37 * Unlike clear_bit(), this function is non-atomic. If it is called on the same
42 ___clear_bit(unsigned long nr, volatile unsigned long *addr) in ___clear_bit()
49 * ___change_bit - Toggle a bit in memory
53 * Unlike change_bit(), this function is non-atomic. If it is called on the same
[all …]
Dgeneric-non-atomic.h1 /* SPDX-License-Identifier: GPL-2.0-only */
19 * generic___set_bit - Set a bit in memory
23 * Unlike set_bit(), this function is non-atomic and may be reordered.
28 generic___set_bit(unsigned long nr, volatile unsigned long *addr) in generic___set_bit()
37 generic___clear_bit(unsigned long nr, volatile unsigned long *addr) in generic___clear_bit()
46 * generic___change_bit - Toggle a bit in memory
50 * Unlike change_bit(), this function is non-atomic and may be reordered.
55 generic___change_bit(unsigned long nr, volatile unsigned long *addr) in generic___change_bit()
64 * generic___test_and_set_bit - Set a bit and return its old value
68 * This operation is non-atomic and can be reordered.
[all …]
/kernel/linux/linux-5.10/include/asm-generic/bitops/
Dinstrumented-non-atomic.h1 /* SPDX-License-Identifier: GPL-2.0 */
4 * This file provides wrappers with sanitizer instrumentation for non-atomic
17 * __set_bit - Set a bit in memory
21 * Unlike set_bit(), this function is non-atomic. If it is called on the same
25 static inline void __set_bit(long nr, volatile unsigned long *addr) in __set_bit()
32 * __clear_bit - Clears a bit in memory
36 * Unlike clear_bit(), this function is non-atomic. If it is called on the same
40 static inline void __clear_bit(long nr, volatile unsigned long *addr) in __clear_bit()
47 * __change_bit - Toggle a bit in memory
51 * Unlike change_bit(), this function is non-atomic. If it is called on the same
[all …]
Dnon-atomic.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 * __set_bit - Set a bit in memory
12 * Unlike set_bit(), this function is non-atomic and may be reordered.
16 static inline void __set_bit(int nr, volatile unsigned long *addr) in __set_bit()
24 static inline void __clear_bit(int nr, volatile unsigned long *addr) in __clear_bit()
33 * __change_bit - Toggle a bit in memory
37 * Unlike change_bit(), this function is non-atomic and may be reordered.
41 static inline void __change_bit(int nr, volatile unsigned long *addr) in __change_bit()
50 * __test_and_set_bit - Set a bit and return its old value
54 * This operation is non-atomic and can be reordered.
[all …]
/kernel/linux/linux-6.6/arch/ia64/include/asm/
Dbitops.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * Copyright (C) 1998-2003 Hewlett-Packard Co
7 * David Mosberger-Tang <davidm@hpl.hp.com>
23 * set_bit - Atomically set a bit in memory
30 * restricted to acting on a single-word quantity.
34 * operate on hw-defined data-structures, so we can't easily change these
40 set_bit (int nr, volatile void *addr) in set_bit()
43 volatile __u32 *m; in set_bit()
46 m = (volatile __u32 *) addr + (nr >> 5); in set_bit()
56 * arch___set_bit - Set a bit in memory
[all …]
/kernel/linux/linux-6.6/Documentation/block/
Dwriteback_cache_control.rst2 Explicit volatile write back cache control
6 ------------
8 Many storage devices, especially in the consumer market, come with volatile
10 operating system before data actually has hit the non-volatile storage. This
12 system needs to force data out to the non-volatile storage when it performs
21 ----------------------
24 the filesystem and will make sure the volatile cache of the storage device
26 guarantees that previously completed write requests are on non-volatile
34 ------------------
38 signaled after the data has been committed to non-volatile storage.
[all …]
/kernel/linux/linux-5.10/Documentation/block/
Dwriteback_cache_control.rst2 Explicit volatile write back cache control
6 ------------
8 Many storage devices, especially in the consumer market, come with volatile
10 operating system before data actually has hit the non-volatile storage. This
12 system needs to force data out to the non-volatile storage when it performs
21 ----------------------
24 the filesystem and will make sure the volatile cache of the storage device
26 guarantees that previously completed write requests are on non-volatile
34 ------------------
38 signaled after the data has been committed to non-volatile storage.
[all …]
/kernel/linux/linux-5.10/arch/ia64/include/asm/
Dbitops.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * Copyright (C) 1998-2003 Hewlett-Packard Co
7 * David Mosberger-Tang <davidm@hpl.hp.com>
23 * set_bit - Atomically set a bit in memory
30 * restricted to acting on a single-word quantity.
34 * operate on hw-defined data-structures, so we can't easily change these
40 set_bit (int nr, volatile void *addr) in set_bit()
43 volatile __u32 *m; in set_bit()
46 m = (volatile __u32 *) addr + (nr >> 5); in set_bit()
56 * __set_bit - Set a bit in memory
[all …]
/kernel/linux/linux-6.6/tools/include/asm-generic/bitops/
Dnon-atomic.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 * ___set_bit - Set a bit in memory
12 * Unlike set_bit(), this function is non-atomic and may be reordered.
17 ___set_bit(unsigned long nr, volatile unsigned long *addr) in ___set_bit()
26 ___clear_bit(unsigned long nr, volatile unsigned long *addr) in ___clear_bit()
35 * ___change_bit - Toggle a bit in memory
39 * Unlike change_bit(), this function is non-atomic and may be reordered.
44 ___change_bit(unsigned long nr, volatile unsigned long *addr) in ___change_bit()
53 * ___test_and_set_bit - Set a bit and return its old value
57 * This operation is non-atomic and can be reordered.
[all …]
/kernel/linux/linux-5.10/tools/include/asm-generic/bitops/
Dnon-atomic.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 * __set_bit - Set a bit in memory
12 * Unlike set_bit(), this function is non-atomic and may be reordered.
16 static inline void __set_bit(int nr, volatile unsigned long *addr) in __set_bit()
24 static inline void __clear_bit(int nr, volatile unsigned long *addr) in __clear_bit()
33 * __change_bit - Toggle a bit in memory
37 * Unlike change_bit(), this function is non-atomic and may be reordered.
41 static inline void __change_bit(int nr, volatile unsigned long *addr) in __change_bit()
50 * __test_and_set_bit - Set a bit and return its old value
54 * This operation is non-atomic and can be reordered.
[all …]
/kernel/linux/linux-6.6/arch/hexagon/include/asm/
Dbitops.h1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved.
20 * (i.e. I get to shift by #5-2 (32 bits per long, 4 bytes per access),
27 * test_and_clear_bit - clear a bit and return its old value
31 static inline int test_and_clear_bit(int nr, volatile void *addr) in test_and_clear_bit()
51 * test_and_set_bit - set a bit and return its old value
55 static inline int test_and_set_bit(int nr, volatile void *addr) in test_and_set_bit()
77 * test_and_change_bit - toggle a bit and return its old value
81 static inline int test_and_change_bit(int nr, volatile void *addr) in test_and_change_bit()
106 static inline void clear_bit(int nr, volatile void *addr) in clear_bit()
[all …]
/kernel/linux/linux-6.6/arch/sh/include/asm/
Dbitops-op32.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 * The bit modifying instructions on SH-2A are only capable of working
9 * with a 3-bit immediate, which signifies the shift position for the bit
13 #define BITOP_LE_SWIZZLE ((BITS_PER_LONG-1) & ~0x7)
22 arch___set_bit(unsigned long nr, volatile unsigned long *addr) in arch___set_bit()
40 arch___clear_bit(unsigned long nr, volatile unsigned long *addr) in arch___clear_bit()
59 * arch___change_bit - Toggle a bit in memory
63 * Unlike change_bit(), this function is non-atomic and may be reordered.
68 arch___change_bit(unsigned long nr, volatile unsigned long *addr) in arch___change_bit()
87 * arch___test_and_set_bit - Set a bit and return its old value
[all …]
/kernel/linux/linux-6.6/arch/alpha/include/asm/
Dbitops.h1 /* SPDX-License-Identifier: GPL-2.0 */
17 * These have to be done with inline assembly: that way the bit-setting
29 set_bit(unsigned long nr, volatile void * addr) in set_bit()
47 * WARNING: non atomic version.
50 arch___set_bit(unsigned long nr, volatile unsigned long *addr) in arch___set_bit()
58 clear_bit(unsigned long nr, volatile void * addr) in clear_bit()
76 clear_bit_unlock(unsigned long nr, volatile void * addr) in clear_bit_unlock()
83 * WARNING: non atomic version.
86 arch___clear_bit(unsigned long nr, volatile unsigned long *addr) in arch___clear_bit()
94 __clear_bit_unlock(unsigned long nr, volatile void * addr) in __clear_bit_unlock()
[all …]
/kernel/linux/linux-5.10/arch/powerpc/kvm/
Dtm.S1 /* SPDX-License-Identifier: GPL-2.0-only */
11 #include <asm/asm-offsets.h>
20 * Save transactional state and TM-related registers.
22 * - r3 pointing to the vcpu struct
23 * - r4 containing the MSR with current TS bits:
25 * - r5 containing a flag indicating that non-volatile registers
34 stdu r1, -SWITCH_FRAME_SIZE(r1)
43 rldimi r8, r0, MSR_TM_LG, 63-MSR_TM_LG
48 rldicl. r4, r4, 64 - MSR_TS_S_LG, 62
54 /* Save CR on the stack - even if r5 == 0 we need to get cr7 back. */
[all …]
/kernel/linux/linux-6.6/arch/powerpc/kvm/
Dtm.S1 /* SPDX-License-Identifier: GPL-2.0-only */
12 #include <asm/asm-offsets.h>
20 * Save transactional state and TM-related registers.
22 * - r3 pointing to the vcpu struct
23 * - r4 containing the MSR with current TS bits:
25 * - r5 containing a flag indicating that non-volatile registers
34 stdu r1, -SWITCH_FRAME_SIZE(r1)
43 rldimi r8, r0, MSR_TM_LG, 63-MSR_TM_LG
48 rldicl. r4, r4, 64 - MSR_TS_S_LG, 62
54 /* Save CR on the stack - even if r5 == 0 we need to get cr7 back. */
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/pmem/
Dpmem-region.txt1 Device-tree bindings for persistent memory regions
2 -----------------------------------------------------
16 -----------------------------
19 - compatible = "pmem-region"
21 - reg = <base, size>;
33 - Any relevant NUMA associativity properties for the target platform.
35 - volatile; This property indicates that this region is actually
36 backed by non-persistent memory. This lets the OS know that it
41 is backed by non-volatile memory.
44 --------------------
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/pmem/
Dpmem-region.txt1 Device-tree bindings for persistent memory regions
2 -----------------------------------------------------
16 -----------------------------
19 - compatible = "pmem-region"
21 - reg = <base, size>;
33 - Any relevant NUMA assocativity properties for the target platform.
35 - volatile; This property indicates that this region is actually
36 backed by non-persistent memory. This lets the OS know that it
41 is backed by non-volatile memory.
44 --------------------
[all …]
/kernel/linux/linux-5.10/arch/sh/include/asm/
Dbitops-op32.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * The bit modifying instructions on SH-2A are only capable of working
7 * with a 3-bit immediate, which signifies the shift position for the bit
11 #define BITOP_LE_SWIZZLE ((BITS_PER_LONG-1) & ~0x7)
19 static inline void __set_bit(int nr, volatile unsigned long *addr) in __set_bit()
36 static inline void __clear_bit(int nr, volatile unsigned long *addr) in __clear_bit()
55 * __change_bit - Toggle a bit in memory
59 * Unlike change_bit(), this function is non-atomic and may be reordered.
63 static inline void __change_bit(int nr, volatile unsigned long *addr) in __change_bit()
82 * __test_and_set_bit - Set a bit and return its old value
[all …]
/kernel/linux/linux-5.10/arch/alpha/include/asm/
Dbitops.h1 /* SPDX-License-Identifier: GPL-2.0 */
17 * These have to be done with inline assembly: that way the bit-setting
29 set_bit(unsigned long nr, volatile void * addr) in set_bit()
47 * WARNING: non atomic version.
50 __set_bit(unsigned long nr, volatile void * addr) in __set_bit()
58 clear_bit(unsigned long nr, volatile void * addr) in clear_bit()
76 clear_bit_unlock(unsigned long nr, volatile void * addr) in clear_bit_unlock()
83 * WARNING: non atomic version.
86 __clear_bit(unsigned long nr, volatile void * addr) in __clear_bit()
94 __clear_bit_unlock(unsigned long nr, volatile void * addr) in __clear_bit_unlock()
[all …]
/kernel/linux/linux-5.10/arch/riscv/include/asm/
Dbitops.h1 /* SPDX-License-Identifier: GPL-2.0-only */
18 #include <asm-generic/bitops/__ffs.h>
19 #include <asm-generic/bitops/ffz.h>
20 #include <asm-generic/bitops/fls.h>
21 #include <asm-generic/bitops/__fls.h>
22 #include <asm-generic/bitops/fls64.h>
23 #include <asm-generic/bitops/find.h>
24 #include <asm-generic/bitops/sched.h>
25 #include <asm-generic/bitops/ffs.h>
27 #include <asm-generic/bitops/hweight.h>
[all …]

12345678910>>...41