| /linux/rust/kernel/ |
| H A D | faux.rs | 64 // The offset is guaranteed to point to a valid device field inside `faux::Device`. in drop() 115 // - The underlying `struct faux_device` is guaranteed by the C API to be a valid 135 // SAFETY: The faux device API is thread-safe as guaranteed by the device core, as long as 136 // faux_device_destroy() is guaranteed to only be called once - which is guaranteed by our type not 140 // SAFETY: The faux device API is thread-safe as guaranteed by the device core, as long as 141 // faux_device_destroy() is guaranteed to only be called once - which is guaranteed by our type not
|
| H A D | cpufreq.rs | 141 // SAFETY: Guaranteed by the safety requirements of the function. in from_raw_mut() 235 // SAFETY: Guaranteed by the safety requirements of the function. in from_raw() 253 // guaranteed to be valid by its safety requirements. in freq() 263 // guaranteed to be valid by its safety requirements. in flags() 271 // guaranteed to be valid by its safety requirements. in data() 431 // SAFETY: Guaranteed by the safety requirements of the function. in from_raw() 446 // SAFETY: Guaranteed by the safety requirements of the function. in from_raw_mut() 622 // SAFETY: The `freq_table` is guaranteed to be valid for reading and remains valid for the 693 // SAFETY: The `ptr` is guaranteed to be valid and remains valid for the lifetime of 716 // SAFETY: The underlying pointer is guaranteed t [all...] |
| H A D | auxiliary.rs | 55 // SAFETY: A call to `unregister` for a given instance of `DriverType` is guaranteed to be valid if in register() 71 // SAFETY: `adrv` is guaranteed to be a valid `DriverType`. in unregister() 78 // SAFETY: `adrv` is guaranteed to be a valid `DriverType`. in probe_callback() 117 // `probe_callback`, hence it's guaranteed that `Device::set_drvdata()` has been called 368 // The offset is guaranteed to point to a valid device field inside `auxiliary::Device`. in new() 502 // SAFETY: `adev` is guaranteed to be a valid pointer to a `struct auxiliary_device`, 512 // - `adev` is guaranteed to be a valid pointer to a `struct auxiliary_device`, which 524 // SAFETY: `adev` is guaranteed to be a valid pointer to a 534 // SAFETY: `adev` is guaranteed to be non-null, since the `KBox` was allocated
|
| H A D | pci.rs | 73 // SAFETY: A call to `unregister` for a given instance of `DriverType` is guaranteed to be valid if 89 // SAFETY: `pdrv` is guaranteed to be a valid `DriverType`. in register() 96 // SAFETY: `pdrv` is guaranteed to be a valid `DriverType`. in unregister() 137 // `probe_callback`, hence it's guaranteed that `Device::set_drvdata()` has been called 425 // - `bar` is a valid bar number, as guaranteed by the above call to `Bar::index_is_valid`, in resource_start() 437 // - `bar` is a valid bar number, as guaranteed by the above call to `Bar::index_is_valid`, in resource_len() 465 // SAFETY: `self.as_raw` is guaranteed to be a pointer to a valid `struct pci_dev`. 472 // SAFETY: `self.as_raw` is guaranteed to be a pointer to a valid `struct pci_dev`. 478 // The offset is guaranteed to point to a valid device field inside `pci::Device`. in inc_ref() 527 // hence `dev` must be embedded in a valid `struct pci_dev` as guaranteed b [all...] |
| H A D | platform.rs | 57 // SAFETY: A call to `unregister` for a given instance of `DriverType` is guaranteed to be valid if 84 // SAFETY: `pdrv` is guaranteed to be a valid `DriverType`. in register() 91 // SAFETY: `pdrv` is guaranteed to be a valid `DriverType`. in unregister() 122 // `probe_callback`, hence it's guaranteed that `Device::set_drvdata()` has been called in remove_callback() 329 // The offset is guaranteed to point to a valid device field inside `platform::Device`. 418 // SAFETY: `irq` is guaranteed to be a valid IRQ number for `&self`. in irq_by_index() 432 // SAFETY: `irq` is guaranteed to be a valid IRQ number for `&self`. in optional_irq_by_index() 445 // SAFETY: `irq` is guaranteed to be a valid IRQ number for `&self`. in irq_by_name() 461 // SAFETY: `irq` is guaranteed to be a valid IRQ number for `&self`. in optional_irq_by_name() 572 // `struct platform_device` as guaranteed by the corresponding C code. in try_from()
|
| H A D | i2c.rs | 95 // SAFETY: A call to `unregister` for a given instance of `DriverType` is guaranteed to be valid if 134 // SAFETY: `idrv` is guaranteed to be a valid `DriverType`. in register() 139 // SAFETY: `idrv` is guaranteed to be a valid `DriverType`. in unregister() 170 // `probe_callback`, hence it's guaranteed that `I2cClient::set_drvdata()` has been called in remove_callback() 182 // `probe_callback`, hence it's guaranteed that `Device::set_drvdata()` has been called in shutdown_callback() 202 // - `dev` is guaranteed to be valid while it's alive, and so is `dev.as_raw()`. in i2c_id_info() 485 // The offset is guaranteed to point to a valid device field inside `I2cClient`. 532 // `struct i2c_client` as guaranteed by the corresponding C code. in try_from()
|
| H A D | revocable.rs | 105 /// Returns a guard that gives access to the object otherwise; the object is guaranteed to in try_access() 123 /// Returns a shared reference to the object otherwise; the object is guaranteed to in try_access_with_guard() 160 // SAFETY: By the safety requirement of this function it is guaranteed that in revoke_internal() 268 // guaranteed to remain valid.
|
| H A D | opp.rs | 58 // SAFETY: The `ptr` is guaranteed by the C code to be valid. in table() 523 // SAFETY: 'dev' is guaranteed by the C code to be valid. in config_clks() 527 // SAFETY: 'opp_table' is guaranteed by the C code to be valid. in config_clks() 529 // SAFETY: 'opp' is guaranteed by the C code to be valid. in config_clks() 548 // SAFETY: 'dev' is guaranteed by the C code to be valid. in config_regulators() 552 // SAFETY: 'old_opp' is guaranteed by the C code to be valid. in config_regulators() 554 // SAFETY: 'new_opp' is guaranteed by the C code to be valid. in config_regulators() 883 // SAFETY: The `ptr` is guaranteed by the C code to be valid. in opp_from_freq() 909 // SAFETY: The `ptr` is guaranteed by the C code to be valid. in opp_from_level() 934 // SAFETY: The `ptr` is guaranteed b in opp_from_bw() [all...] |
| H A D | devres.rs | 52 /// guaranteed that revoking the device resource is completed before the corresponding [`Device`] 61 /// When a [`Devres`] is dropped, it is guaranteed that `T` has been fully dropped by the time 114 /// // SAFETY: `self.0.addr()` is guaranteed to be properly mapped by `Self::new`. 241 // - `devres_node_add()` is guaranteed not to call `devres_node_release()` for the entire in new() 343 // proves that `self.data` hasn't been revoked and is guaranteed to not be revoked as long in access() 372 // SAFETY: When `drop` runs, it is guaranteed that nobody is accessing the revocable data in drop()
|
| H A D | usb.rs | 45 // SAFETY: A call to `unregister` for a given instance of `DriverType` is guaranteed to be valid if 61 // SAFETY: `udrv` is guaranteed to be a valid `DriverType`. in register() 68 // SAFETY: `udrv` is guaranteed to be a valid `DriverType`. in register() 111 // `probe_callback`, hence it's guaranteed that `Device::set_drvdata()` has been called in disconnect_callback() 343 // The offset is guaranteed to point to a valid device field inside `usb::Interface`.
|
| /linux/include/uapi/linux/ |
| H A D | coresight-stm.h | 12 * The CoreSight STM supports guaranteed and invariant timing 13 * transactions. Guaranteed transactions are guaranteed to be 16 * timing transactions are not guaranteed to be traced, they
|
| /linux/lib/ |
| H A D | iomap_copy.c | 16 * time. Order of access is not guaranteed, nor is a memory barrier 39 * time. Order of access is not guaranteed, nor is a memory barrier 60 * time. Order of access is not guaranteed, nor is a memory barrier
|
| /linux/tools/memory-model/litmus-tests/ |
| H A D | MP+porevlocks.litmus | 9 * given lock), a CPU is not only guaranteed to see the accesses that other 10 * CPUs made while previously holding that lock, it is also guaranteed to
|
| H A D | MP+polocks.litmus | 9 * given lock), a CPU is not only guaranteed to see the accesses that other 10 * CPUs made while previously holding that lock, it is also guaranteed
|
| /linux/rust/zerocopy/src/pointer/ |
| H A D | inner.rs | 41 /// 1. If `ptr`'s referent is not zero sized, `A` is guaranteed to live 54 /// `addresses`, the following are guaranteed: 61 /// - It is guaranteed that, given `o = a - base` (i.e., the offset of 94 /// 1. If `ptr`'s referent is not zero sized, `A` is guaranteed to live 138 // `&'a T`, is guaranteed to live for at least `'a`. in from_ref() 164 // `&'a mut T`, is guaranteed to live for at least `'a`. in from_mut() 271 // zero sized, then `A` is guaranteed to live for at least `'a`. in with_meta() 290 /// Given `let (left, right) = ptr.split_at(l_len)`, it is guaranteed that 378 // 5. If `ptr`'s referent is not zero sized, then `A` is guaranteed to in trailing_slice() 433 // zero sized, then `A` is guaranteed to live for at least `'a`. in slice_unchecked() [all …]
|
| H A D | transmute.rs | 99 /// as an `SV`-valid `Src`. It is guaranteed to remain so, as either of the 104 /// guaranteed to be an `SV`-valid referent of `src`. 107 /// referent is `DV`-valid for `Dst`. It is guaranteed to remain so, as either 113 /// guaranteed to be a `DV`-valid referent of `dst`. 252 // `ManuallyDrop<T>` is guaranteed to have the same layout and bit 386 // `ManuallyDrop<T>` is guaranteed to have the same layout and bit validity as 408 // guaranteed per that `Wrapping<T>` has the same layout as `T` [1]. The only 419 // `Wrapping<T>` is guaranteed to have the same layout and ABI as `T`. 478 // explicitly guaranteed, but it's obvious from `MaybeUninit`'s documentation
|
| /linux/kernel/time/ |
| H A D | sleep_timeout.c | 42 * %TASK_UNINTERRUPTIBLE - at least @timeout jiffies are guaranteed to 50 * The current task state is guaranteed to be %TASK_RUNNING when this 58 * jiffies will be returned. In all cases the return value is guaranteed 245 * %TASK_UNINTERRUPTIBLE - at least @timeout time is guaranteed to 253 * The current task state is guaranteed to be TASK_RUNNING when this
|
| /linux/include/linux/ |
| H A D | mbcache.h | 24 * guaranteed to be hashed while e_refcnt > 0. 29 * While refcount > 0, the entry is guaranteed to stay in the hash and
|
| /linux/mm/ |
| H A D | mempool.c | 4 * for guaranteed, deadlock-free memory allocations during 266 * First pre-allocate the guaranteed number of buffers, in mempool_init_node() 287 * @min_nr: the minimum number of elements guaranteed to be 310 * @min_nr: the minimum number of elements guaranteed to be 318 * this function creates and allocates a guaranteed size, preallocated 350 * @new_min_nr: the new minimum number of elements guaranteed to be 354 * it cannot be guaranteed that the pool will be grown to the new 657 * For correctness, we need a test which is guaranteed to trigger in mempool_free_bulk() 664 * min_nr is guaranteed to see curr_nr < min_nr unless curr_nr gets in mempool_free_bulk()
|
| /linux/Documentation/devicetree/bindings/net/bluetooth/ |
| H A D | mediatek,bluetooth.txt | 39 guaranteed. 42 design should be guaranteed.
|
| /linux/drivers/platform/surface/aggregator/ |
| H A D | ssh_request_layer.c | 287 * guaranteed that requests cannot be re-submitted), or the in ssh_rtl_tx_try_process_one() 530 * request, we are guaranteed that the completion callback will run on in ssh_rtl_complete() 532 * received. Similarly, this function is guaranteed to run on the in ssh_rtl_complete() 533 * receiver thread. Thus we are guaranteed that if the packet has been in ssh_rtl_complete() 594 * submission process is guaranteed to have entered the critical in ssh_rtl_cancel_nonpending() 597 * guaranteed that, due to the "locked" check in ssh_rtl_submit(), the in ssh_rtl_cancel_nonpending() 599 * from the queue, where we are now guaranteed that the packet is or has in ssh_rtl_cancel_nonpending() 602 * Note that if the cmpxchg() fails, we are guaranteed that ptl has in ssh_rtl_cancel_nonpending() 664 * Now that we have locked the packet, we have guaranteed that it can't in ssh_rtl_cancel_pending() 794 * request. Note that, at this point, the request is guaranteed to have in ssh_rtl_packet_callback() [all …]
|
| /linux/rust/zerocopy/src/util/ |
| H A D | mod.rs | 69 /// where the alignment is guaranteed by runtime checks or invariants that 128 // `mem::align_of::<U>()` is guaranteed to return a non-zero value, which in in validate_aligned_to() 166 // Guaranteed not to underflow as align is nonzero. in padding_needed_for() 324 // `ManuallyDrop<T>` is guaranteed to have the same layout and bit in transmute_unchecked() 374 /// Returns an error on allocation failure. Allocation failure is guaranteed 445 // a `NonZeroUsize`, which is guaranteed to be non-zero. in new_box() 534 // a set of `addresses`, the following are guaranteed: in new_in_bounds() 830 /// A `T` which is guaranteed not to satisfy `align_of::<A>()`. 839 // guaranteed *not* to satisfy `align_of::<A>()`. 855 // Though `u64` has alignment 8 on some platforms, it's not guaranteed. By [all …]
|
| H A D | macro_util.rs | 99 /// `ALIGNED_64K_ALLOCATION` is guaranteed to point to the entirety of an 110 // - `ptr` is derived from a Rust reference, which is guaranteed to be 115 // - `ptr` is derived from a Rust reference, which is guaranteed to have 175 // guaranteed to be no larger than this size, so this field projection 176 // is guaranteed to remain in-bounds of its allocation. 180 // allocation addressed by `ALIGNED_64K_ALLOCATION` is guaranteed to 181 // be aligned to `_64K`, so `ptr` is guaranteed to satisfy `$ty`'s 204 // - The distance, in bytes, cannot overflow `isize`. This is guaranteed 208 // address space. This is guaranteed because the same is guaranteed of 212 // Once these are guaranteed in the Reference, cite it. [all …]
|
| /linux/rust/kernel/sync/ |
| H A D | poll.rs | 66 // * Since `PollCondVar` is pinned, its destructor is guaranteed to run before the memory 68 // waiters and then waits for an rcu grace period, it's guaranteed that
|
| /linux/rust/kernel/alloc/ |
| H A D | kvec.rs | 232 // Guaranteed by the type invariant to never underflow. 253 // SAFETY: The memory after `self.len()` is guaranteed to contain `count` initialized 332 // resulting pointer is guaranteed to be part of the same allocated object. in push() 336 // SAFETY: The memory between `self.len` and `self.capacity` is guaranteed to be allocated 733 // SAFETY: `count` is `self.len() - len` so it is guaranteed to be less than or in retain() 968 // - `self.len() + other.len() <= self.capacity()` is guaranteed by the preceding `reserve` 1016 // SAFETY: `self.as_mut_ptr` is guaranteed to be valid by the type invariant. in deref_mut() 1070 // SAFETY: The memory behind `self.as_ptr()` is guaranteed to contain `self.len` 1082 // SAFETY: The memory behind `self.as_ptr()` is guaranteed to contain `self.len` in index() 1249 // - `ptr` is guaranteed t [all...] |