Home
last modified time | relevance | path

Searched full:origin (Results 1 – 25 of 357) sorted by relevance

12345678910>>...15

/linux-6.8/Documentation/admin-guide/device-mapper/
Dsnapshot.rst12 - To merge a snapshot of a block device back into the snapshot's origin
20 the origin device.
24 snapshot, snapshot-origin, and snapshot-merge.
26 - snapshot-origin <origin>
34 - snapshot <origin> <COW device> <persistent?> <chunksize>
37 A snapshot of the <origin> block device is created. Changed chunks of
40 from <origin> for unchanged data. <COW device> will often be
41 smaller than the origin and if it fills up the snapshot will become
55 snapshot-origin or snapshot-merge target must be suspended. A failure to
56 suspend the origin target could result in data corruption.
[all …]
Dcache.rst39 The origin device always contains a copy of the logical block, which
52 1. An origin device - the big, slow one.
66 The origin is divided up into blocks of a fixed size. This block size
89 complete until it has hit both the origin and cache devices. Clean
93 to be coherent with the origin device, then all reads are served from
94 the origin device (all reads miss the cache) and all writes are
95 forwarded to the origin device; additionally, write hits cause cache
121 Migrating data between the origin and cache device uses bandwidth.
170 state for all of the origin device (compare with the dirty bitset
181 cache <metadata dev> <cache dev> <origin dev> <block size>
[all …]
Dthin-provisioning.rst186 N.B. If the origin device that you wish to snapshot is active, you
197 identifier for the origin device.
202 between the origin and the snapshot. Indeed the snapshot is no
216 You can use an external **read only** device as an origin for a
218 thin device will be passed through to the origin. Writes trigger
225 You must not write to the origin device if you use this technique!
232 You don't mention the origin at this stage.
240 Append an extra parameter to the thin target specifying the origin::
245 same extra origin parameter.
364 create_snap <dev id> <origin id>
[all …]
/linux-6.8/mm/kmsan/
Dinstrumentation.c47 /* Get shadow and origin pointers for a memory load with non-standard size. */
57 /* Get shadow and origin pointers for a memory store with non-standard size. */
68 * Declare functions that obtain shadow/origin pointers for loads and stores
134 * get_param0_metadata() and set_retval_metadata() to store the shadow/origin
139 depot_stack_handle_t *origin) in get_param0_metadata() argument
144 *origin = ctx->cstate.param_origin_tls[0]; in get_param0_metadata()
147 static inline void set_retval_metadata(u64 shadow, depot_stack_handle_t origin) in set_retval_metadata() argument
152 ctx->cstate.retval_origin_tls = origin; in set_retval_metadata()
159 depot_stack_handle_t origin; in __msan_memmove() local
163 get_param0_metadata(&shadow, &origin); in __msan_memmove()
[all …]
Dinit.c97 struct page *shadow, *origin; member
107 * time - as an origin block. On the third time the incoming block receives its
108 * shadow and origin ranges from the previously saved shadow and origin blocks,
116 struct page *shadow, *origin; in kmsan_memblock_free_pages() local
122 if (!held_back[order].origin) { in kmsan_memblock_free_pages()
123 held_back[order].origin = page; in kmsan_memblock_free_pages()
127 origin = held_back[order].origin; in kmsan_memblock_free_pages()
128 kmsan_setup_meta(page, shadow, origin, order); in kmsan_memblock_free_pages()
131 held_back[order].origin = NULL; in kmsan_memblock_free_pages()
168 struct page *page, *shadow, *origin; in do_collection() local
[all …]
Dshadow.c102 ret.origin = kmsan_get_metadata(address, KMSAN_META_ORIGIN); in kmsan_get_shadow_origin_ptr()
109 ret.origin = dummy_store_page; in kmsan_get_shadow_origin_ptr()
113 ret.origin = dummy_load_page; in kmsan_get_shadow_origin_ptr()
119 * Obtain the shadow or origin pointer for the given address, or NULL if there's
175 struct page *shadow, *origin; in kmsan_alloc_page() local
183 origin = origin_page_for(page); in kmsan_alloc_page()
187 __memset(page_address(origin), 0, PAGE_SIZE * pages); in kmsan_alloc_page()
201 * to just fill the origin pages with @handle. in kmsan_alloc_page()
204 ((depot_stack_handle_t *)page_address(origin))[i] = handle; in kmsan_alloc_page()
280 void *shadow, *origin; in kmsan_init_alloc_meta_for_range() local
[all …]
Dreport.c84 void kmsan_print_origin(depot_stack_handle_t origin) in kmsan_print_origin() argument
94 if (!origin) in kmsan_print_origin()
98 nr_entries = stack_depot_fetch(origin, &entries); in kmsan_print_origin()
99 depth = kmsan_depth_from_eb(stack_depot_get_extra_bits(origin)); in kmsan_print_origin()
115 * Origin chains deeper than KMSAN_MAX_ORIGIN_DEPTH are in kmsan_print_origin()
121 origin = entries[2]; in kmsan_print_origin()
148 void kmsan_report(depot_stack_handle_t origin, void *address, int size, in kmsan_report() argument
162 if (!origin) in kmsan_report()
169 is_uaf = kmsan_uaf_from_eb(stack_depot_get_extra_bits(origin)); in kmsan_report()
194 kmsan_print_origin(origin); in kmsan_report()
Dcore.c137 * origin value. in kmsan_internal_memmove_metadata()
173 * are copied around many times. Origin chains for such structures are in kmsan_internal_chain_origin()
196 u32 origin, bool checked) in kmsan_internal_set_shadow_origin() argument
208 * and origin pages are NULL, or all are non-NULL. in kmsan_internal_set_shadow_origin()
229 origin_start[i] = origin; in kmsan_internal_set_shadow_origin()
251 depot_stack_handle_t *origin = NULL; in kmsan_internal_check_memory() local
299 origin = kmsan_get_metadata((void *)(addr64 + pos + i), in kmsan_internal_check_memory()
301 KMSAN_WARN_ON(!origin); in kmsan_internal_check_memory()
302 new_origin = *origin; in kmsan_internal_check_memory()
304 * Encountered new origin - report the previous in kmsan_internal_check_memory()
[all …]
Dhooks.c147 * This function creates new shadow/origin pages for the physical pages mapped
148 * into the virtual memory. If those physical pages already had shadow/origin,
156 struct page *shadow, *origin; in kmsan_ioremap_page_range() local
167 origin = alloc_pages(gfp_mask, 1); in kmsan_ioremap_page_range()
168 if (!shadow || !origin) { in kmsan_ioremap_page_range()
183 vmalloc_origin(start + off + PAGE_SIZE), prot, &origin, in kmsan_ioremap_page_range()
192 origin = NULL; in kmsan_ioremap_page_range()
200 * Something went wrong. Clean up shadow/origin pages allocated in kmsan_ioremap_page_range()
206 if (origin) in kmsan_ioremap_page_range()
207 __free_pages(origin, 1); in kmsan_ioremap_page_range()
[all …]
Dkmsan.h64 void *shadow, *origin; member
78 void kmsan_print_origin(depot_stack_handle_t origin);
82 * @origin: Stack ID of the uninitialized value.
92 * sharing the same origin. If an uninitialized value is used in a comparison,
96 * @off_last corresponding to different @origin values.
98 void kmsan_report(depot_stack_handle_t origin, void *address, int size,
152 * Pack and unpack the origin chain depth and UAF flag to/from the extra bits
183 u32 origin, bool checked);
194 struct page *origin, int order);
/linux-6.8/Documentation/dev-tools/
Dkmsan.rst95 incorrect shadow/origin values, likely leading to false positives. Functions
160 Origin tracking
163 Every four bytes of kernel memory also have a so-called origin mapped to them.
164 This origin describes the point in program execution at which the uninitialized
165 value was created. Every origin is associated with either the full allocation
169 When an uninitialized variable is allocated on stack or heap, a new origin
170 value is created, and that variable's origin is filled with that value. When a
171 value is read from memory, its origin is also read and kept together with the
172 shadow. For every instruction that takes one or more values, the origin of the
174 If a poisoned value is written into memory, its origin is written to the
[all …]
/linux-6.8/fs/overlayfs/
Dnamei.c75 * A non-dir origin may be disconnected, which is fine, because in ovl_acceptable()
93 * Return -ENODATA for "origin unknown".
104 /* Treat larger version and unknown flags as "origin unknown" */ in ovl_check_fb_len()
108 /* Treat endianness mismatch as "origin unknown" */ in ovl_check_fb_len()
128 /* Zero size value means "copied up but origin unknown" */ in ovl_get_fh()
154 pr_warn_ratelimited("failed to get origin (%i)\n", res); in ovl_get_fh()
157 pr_warn_ratelimited("invalid origin (%*phN)\n", res, fh); in ovl_get_fh()
186 * Treat stale file handle to lower file as "origin unknown". in ovl_decode_real_fh()
424 struct dentry *origin = NULL; in ovl_check_origin_fh() local
436 origin = ovl_decode_real_fh(ofs, fh, ofs->layers[i].mnt, in ovl_check_origin_fh()
[all …]
Dexport.c94 * have the same uppermost lower layer as the origin's layer. We may need to
98 * Return the connected origin layer or < 0 on error.
115 /* Find the topmost origin layer connectable ancestor of @dentry */ in ovl_connect_layer()
125 * If @parent is not origin layer connectable, then copy up in ovl_connect_layer()
126 * @next which is origin layer connectable and we are done. in ovl_connect_layer()
152 * We only need to encode origin if there is a chance that the same object was
207 * Decoding a merge dir, whose origin's ancestor is under a redirected in ovl_check_encode_origin()
209 * ovl_connect_layer() will try to make origin's layer "connected" by in ovl_check_encode_origin()
439 * For decoded lower dir file handle, lookup index by origin to check in ovl_lookup_real_inode()
688 struct ovl_path origin = { }; in ovl_lower_fh_to_d() local
[all …]
/linux-6.8/drivers/md/
Ddm-snap.c52 struct dm_dev *origin; member
57 /* List of snapshots per Origin */
73 /* Origin writes don't trigger exceptions until this is set */
128 * => use the origin; forget about the snapshot.
131 * (We can't use the intermediate origin state.)
174 return s->origin; in dm_snap_origin()
203 * Origin buffers waiting for this to complete are held
234 * Hash table mapping origin volumes to lists of snapshots and
312 * One of these per registered origin, held in the snapshot_origins hash
314 struct origin { struct
[all …]
/linux-6.8/drivers/gpu/drm/i915/display/
Dintel_frontbuffer.h83 enum fb_op_origin origin,
89 * @origin: which operation caused the invalidation
98 enum fb_op_origin origin) in intel_frontbuffer_invalidate() argument
109 __intel_fb_invalidate(front, origin, frontbuffer_bits); in intel_frontbuffer_invalidate()
114 enum fb_op_origin origin,
120 * @origin: which operation caused the flush
126 enum fb_op_origin origin) in intel_frontbuffer_flush() argument
137 __intel_fb_flush(front, origin, frontbuffer_bits); in intel_frontbuffer_flush()
Dintel_frontbuffer.c73 * @origin: which operation caused the flush
83 enum fb_op_origin origin) in frontbuffer_flush() argument
93 trace_intel_frontbuffer_flush(i915, frontbuffer_bits, origin); in frontbuffer_flush()
97 intel_psr_flush(i915, frontbuffer_bits, origin); in frontbuffer_flush()
98 intel_fbc_flush(i915, frontbuffer_bits, origin); in frontbuffer_flush()
169 enum fb_op_origin origin, in __intel_fb_invalidate() argument
174 if (origin == ORIGIN_CS) { in __intel_fb_invalidate()
181 trace_intel_frontbuffer_invalidate(i915, frontbuffer_bits, origin); in __intel_fb_invalidate()
184 intel_psr_invalidate(i915, frontbuffer_bits, origin); in __intel_fb_invalidate()
186 intel_fbc_invalidate(i915, frontbuffer_bits, origin); in __intel_fb_invalidate()
[all …]
Dintel_display_trace.h606 unsigned int frontbuffer_bits, unsigned int origin),
607 TP_ARGS(i915, frontbuffer_bits, origin),
612 __field(unsigned int, origin)
618 __entry->origin = origin;
621 TP_printk("dev %s, frontbuffer_bits=0x%08x, origin=%u",
622 __get_str(dev), __entry->frontbuffer_bits, __entry->origin)
627 unsigned int frontbuffer_bits, unsigned int origin),
628 TP_ARGS(i915, frontbuffer_bits, origin),
633 __field(unsigned int, origin)
639 __entry->origin = origin;
[all …]
/linux-6.8/drivers/gpu/drm/i915/gem/
Di915_gem_object_frontbuffer.h16 enum fb_op_origin origin);
18 enum fb_op_origin origin);
22 enum fb_op_origin origin) in i915_gem_object_flush_frontbuffer() argument
25 __i915_gem_object_flush_frontbuffer(obj, origin); in i915_gem_object_flush_frontbuffer()
30 enum fb_op_origin origin) in i915_gem_object_invalidate_frontbuffer() argument
33 __i915_gem_object_invalidate_frontbuffer(obj, origin); in i915_gem_object_invalidate_frontbuffer()
/linux-6.8/drivers/infiniband/hw/hns/
Dhns_roce_common.h42 #define roce_get_field(origin, mask, shift) \ argument
43 ((le32_to_cpu(origin) & (mask)) >> (u32)(shift))
45 #define roce_get_bit(origin, shift) \ argument
46 roce_get_field((origin), (1ul << (shift)), (shift))
48 #define roce_set_field(origin, mask, shift, val) \ argument
50 (origin) &= ~cpu_to_le32(mask); \
51 (origin) |= \
55 #define roce_set_bit(origin, shift, val) \ argument
56 roce_set_field((origin), (1ul << (shift)), (shift), (val))
/linux-6.8/fs/9p/
Dvfs_addr.c89 bool writing = (rreq->origin == NETFS_READ_FOR_WRITE || in v9fs_init_request()
90 rreq->origin == NETFS_WRITEBACK || in v9fs_init_request()
91 rreq->origin == NETFS_WRITETHROUGH || in v9fs_init_request()
92 rreq->origin == NETFS_LAUNDER_WRITE || in v9fs_init_request()
93 rreq->origin == NETFS_UNBUFFERED_WRITE || in v9fs_init_request()
94 rreq->origin == NETFS_DIO_WRITE); in v9fs_init_request()
110 WARN_ON(rreq->origin == NETFS_READ_FOR_WRITE && !(fid->mode & P9_ORDWR)); in v9fs_init_request()
/linux-6.8/fs/netfs/
Dobjects.c17 enum netfs_io_origin origin) in netfs_alloc_request() argument
23 bool is_unbuffered = (origin == NETFS_UNBUFFERED_WRITE || in netfs_alloc_request()
24 origin == NETFS_DIO_READ || in netfs_alloc_request()
25 origin == NETFS_DIO_WRITE); in netfs_alloc_request()
37 rreq->origin = origin; in netfs_alloc_request()
/linux-6.8/security/loadpin/
Dloadpin.c27 static void report_load(const char *origin, struct file *file, char *operation) in report_load() argument
35 origin, operation, in report_load()
133 const char *origin = kernel_read_file_id_str(id); in loadpin_check() local
140 report_load(origin, file, "pinning-excluded"); in loadpin_check()
147 report_load(origin, NULL, "old-api-pinning-ignored"); in loadpin_check()
151 report_load(origin, NULL, "old-api-denied"); in loadpin_check()
174 report_load(origin, file, "pinned"); in loadpin_check()
180 report_load(origin, file, "pinning-ignored"); in loadpin_check()
184 report_load(origin, file, "denied"); in loadpin_check()
/linux-6.8/arch/s390/mm/
Dpgalloc.c293 static int base_page_walk(unsigned long *origin, unsigned long addr, in base_page_walk() argument
300 pte = origin; in base_page_walk()
309 static int base_segment_walk(unsigned long *origin, unsigned long addr, in base_segment_walk() argument
315 ste = origin; in base_segment_walk()
338 static int base_region3_walk(unsigned long *origin, unsigned long addr, in base_region3_walk() argument
344 rtte = origin; in base_region3_walk()
366 static int base_region2_walk(unsigned long *origin, unsigned long addr, in base_region2_walk() argument
372 rste = origin; in base_region2_walk()
394 static int base_region1_walk(unsigned long *origin, unsigned long addr, in base_region1_walk() argument
400 rfte = origin; in base_region1_walk()
/linux-6.8/drivers/net/ethernet/hisilicon/hns/
Dhns_dsaf_reg.h1043 #define dsaf_set_field(origin, mask, shift, val) \ argument
1045 (origin) &= (~(mask)); \
1046 (origin) |= (((val) << (shift)) & (mask)); \
1049 #define dsaf_set_bit(origin, shift, val) \ argument
1050 dsaf_set_field((origin), (1ull << (shift)), (shift), (val))
1055 u32 origin = dsaf_read_reg(base, reg); in dsaf_set_reg_field() local
1057 dsaf_set_field(origin, mask, shift, val); in dsaf_set_reg_field()
1058 dsaf_write_reg(base, reg, origin); in dsaf_set_reg_field()
1067 #define dsaf_get_field(origin, mask, shift) (((origin) & (mask)) >> (shift)) argument
1069 #define dsaf_get_bit(origin, shift) \ argument
[all …]
/linux-6.8/drivers/net/ethernet/hisilicon/
Dhns_mdio.c108 #define mdio_set_field(origin, mask, shift, val) \ argument
110 (origin) &= (~((mask) << (shift))); \
111 (origin) |= (((val) & (mask)) << (shift)); \
114 #define mdio_get_field(origin, mask, shift) (((origin) >> (shift)) & (mask)) argument
119 u32 origin = mdio_read_reg(base, reg); in mdio_set_reg_field() local
121 mdio_set_field(origin, mask, shift, val); in mdio_set_reg_field()
122 mdio_write_reg(base, reg, origin); in mdio_set_reg_field()
130 u32 origin; in mdio_get_reg_field() local
132 origin = mdio_read_reg(base, reg); in mdio_get_reg_field()
133 return mdio_get_field(origin, mask, shift); in mdio_get_reg_field()

12345678910>>...15