/linux-6.8/Documentation/admin-guide/device-mapper/ |
D | snapshot.rst | 2 Device-mapper snapshot support 12 - To merge a snapshot of a block device back into the snapshot's origin 19 For snapshot merge the contents of the COW storage are merged back into 24 snapshot, snapshot-origin, and snapshot-merge. 26 - snapshot-origin <origin> 30 original data will be saved in the <COW device> of each snapshot to keep 34 - snapshot <origin> <COW device> <persistent?> <chunksize> 37 A snapshot of the <origin> block device is created. Changed chunks of 41 smaller than the origin and if it fills up the snapshot will become 48 snapshot status. So supported store types are "P", "PO" and "N". [all …]
|
D | era.rst | 16 coherency after rolling back a vendor snapshot. 50 Drop the metadata snapshot. 73 snapshot was the primary use case when developing this target: 75 Taking a vendor snapshot 80 - Take vendor snapshot (the era and snapshot should be forever 83 Rolling back to an vendor snapshot 88 - Take metadata snapshot 89 - Ascertain which blocks have been written since the snapshot was taken
|
/linux-6.8/drivers/gpu/drm/xe/ |
D | xe_hw_engine.c | 690 * xe_hw_engine_snapshot_capture - Take a quick snapshot of the HW Engine. 696 * Returns: a Xe HW Engine snapshot object that must be freed by the 702 struct xe_hw_engine_snapshot *snapshot; in xe_hw_engine_snapshot_capture() local 708 snapshot = kzalloc(sizeof(*snapshot), GFP_ATOMIC); in xe_hw_engine_snapshot_capture() 710 if (!snapshot) in xe_hw_engine_snapshot_capture() 714 snapshot->name = kzalloc(len, GFP_ATOMIC); in xe_hw_engine_snapshot_capture() 715 if (snapshot->name) in xe_hw_engine_snapshot_capture() 716 strscpy(snapshot->name, hwe->name, len); in xe_hw_engine_snapshot_capture() 718 snapshot->class = hwe->class; in xe_hw_engine_snapshot_capture() 719 snapshot->logical_instance = hwe->logical_instance; in xe_hw_engine_snapshot_capture() [all …]
|
D | xe_devcoredump.c | 34 * Snapshot at hang: 40 * 'First' failure snapshot: 43 * snapshot of the 'first' failure and ignore subsequent calls of this function, 80 ss = &coredump->snapshot; in xe_devcoredump_read() 88 drm_printf(&p, "Snapshot time: %lld.%09ld\n", ts.tv_sec, ts.tv_nsec); in xe_devcoredump_read() 93 xe_guc_ct_snapshot_print(coredump->snapshot.ct, &p); in xe_devcoredump_read() 94 xe_guc_exec_queue_snapshot_print(coredump->snapshot.ge, &p); in xe_devcoredump_read() 98 if (coredump->snapshot.hwe[i]) in xe_devcoredump_read() 99 xe_hw_engine_snapshot_print(coredump->snapshot.hwe[i], in xe_devcoredump_read() 114 xe_guc_ct_snapshot_free(coredump->snapshot.ct); in xe_devcoredump_free() [all …]
|
D | xe_guc_submit.c | 1749 struct xe_guc_submit_exec_queue_snapshot *snapshot) in guc_exec_queue_wq_snapshot_capture() argument 1756 snapshot->guc.wqi_head = q->guc->wqi_head; in guc_exec_queue_wq_snapshot_capture() 1757 snapshot->guc.wqi_tail = q->guc->wqi_tail; in guc_exec_queue_wq_snapshot_capture() 1758 snapshot->parallel.wq_desc.head = parallel_read(xe, map, wq_desc.head); in guc_exec_queue_wq_snapshot_capture() 1759 snapshot->parallel.wq_desc.tail = parallel_read(xe, map, wq_desc.tail); in guc_exec_queue_wq_snapshot_capture() 1760 snapshot->parallel.wq_desc.status = parallel_read(xe, map, in guc_exec_queue_wq_snapshot_capture() 1763 if (snapshot->parallel.wq_desc.head != in guc_exec_queue_wq_snapshot_capture() 1764 snapshot->parallel.wq_desc.tail) { in guc_exec_queue_wq_snapshot_capture() 1765 for (i = snapshot->parallel.wq_desc.head; in guc_exec_queue_wq_snapshot_capture() 1766 i != snapshot->parallel.wq_desc.tail; in guc_exec_queue_wq_snapshot_capture() [all …]
|
D | xe_guc_ct.c | 1150 struct guc_ctb_snapshot *snapshot, in guc_ctb_snapshot_capture() argument 1155 xe_map_memcpy_from(xe, &snapshot->desc, &ctb->desc, 0, in guc_ctb_snapshot_capture() 1157 memcpy(&snapshot->info, &ctb->info, sizeof(struct guc_ctb_info)); in guc_ctb_snapshot_capture() 1159 snapshot->cmds = kmalloc_array(ctb->info.size, sizeof(u32), in guc_ctb_snapshot_capture() 1162 if (!snapshot->cmds) { in guc_ctb_snapshot_capture() 1163 drm_err(&xe->drm, "Skipping CTB commands snapshot. Only CTB info will be available.\n"); in guc_ctb_snapshot_capture() 1167 head = snapshot->desc.head; in guc_ctb_snapshot_capture() 1168 tail = snapshot->desc.tail; in guc_ctb_snapshot_capture() 1175 snapshot->cmds[head] = xe_map_rd(xe, &map, 0, u32); in guc_ctb_snapshot_capture() 1187 static void guc_ctb_snapshot_print(struct guc_ctb_snapshot *snapshot, in guc_ctb_snapshot_print() argument [all …]
|
D | xe_devcoredump_types.h | 17 * struct xe_devcoredump_snapshot - Crash snapshot 30 /** @ct: GuC CT snapshot */ 32 /** @ge: Guc Engine snapshot */ 34 /** @hwe: HW Engine snapshot array */ 49 /** @captured: The snapshot of the first hang has already been taken. */ 51 /** @snapshot: Snapshot is captured at time of the first crash */ 52 struct xe_devcoredump_snapshot snapshot; member
|
D | xe_guc_ct_types.h | 50 * struct guc_ctb_snapshot - GuC command transport buffer (CTB) snapshot 53 /** @desc: snapshot of the CTB descriptor */ 55 /** @cmds: snapshot of the CTB commands */ 57 /** @info: snapshot of the CTB info */ 62 * struct xe_guc_ct_snapshot - GuC command transport (CT) snapshot 69 /** @g2h: G2H CTB snapshot */ 71 /** @h2g: H2G CTB snapshot */
|
/linux-6.8/Documentation/networking/devlink/ |
D | devlink-region.rst | 17 Snapshot identifiers are scoped to the devlink instance, not a region. 18 All snapshots with the same snapshot id within a devlink instance 27 Regions may optionally support capturing a snapshot on demand via the 29 requested snapshots must implement the ``.snapshot`` callback for the region 30 in its ``devlink_region_ops`` structure. If snapshot id is not set in 32 the snapshot information to user space. 35 snapshot. Direct read requests are not atomic. In particular a read request 37 access is required, use a snapshot. A driver wishing to enable this for a 40 ``DEVLINK_ATTR_REGION_DIRECT`` attribute instead of specifying a snapshot 50 $ devlink region del DEV/REGION snapshot SNAPSHOT_ID [all …]
|
D | iosm.rst | 100 In case a firmware encounters an exception, a snapshot will be taken by the 130 $ devlink region dump pci/0000:02:00.0/report.json snapshot 0 132 $ devlink region del pci/0000:02:00.0/report.json snapshot 0 136 $ devlink region dump pci/0000:02:00.0/coredump.fcd snapshot 1 138 $ devlink region del pci/0000:02:00.0/coredump.fcd snapshot 1 142 $ devlink region dump pci/0000:02:00.0/cdd.log snapshot 2 144 $ devlink region del pci/0000:02:00.0/cdd.log snapshot 2 148 $ devlink region dump pci/0000:02:00.0/eeprom.bin snapshot 3 150 $ devlink region del pci/0000:02:00.0/eeprom.bin snapshot 3 154 $ devlink region dump pci/0000:02:00.0/bootcore_trace.bin snapshot 4 [all …]
|
/linux-6.8/net/devlink/ |
D | region.c | 62 struct devlink_snapshot *snapshot; in devlink_region_snapshot_get_by_id() local 64 list_for_each_entry(snapshot, ®ion->snapshot_list, list) in devlink_region_snapshot_get_by_id() 65 if (snapshot->id == id) in devlink_region_snapshot_get_by_id() 66 return snapshot; in devlink_region_snapshot_get_by_id() 73 struct devlink_snapshot *snapshot) in devlink_nl_region_snapshot_id_put() argument 82 err = nla_put_u32(msg, DEVLINK_ATTR_REGION_SNAPSHOT_ID, snapshot->id); in devlink_nl_region_snapshot_id_put() 98 struct devlink_snapshot *snapshot; in devlink_nl_region_snapshots_id_put() local 107 list_for_each_entry(snapshot, ®ion->snapshot_list, list) { in devlink_nl_region_snapshots_id_put() 108 err = devlink_nl_region_snapshot_id_put(msg, devlink, snapshot); in devlink_nl_region_snapshots_id_put() 173 struct devlink_snapshot *snapshot, in devlink_nl_region_notify_build() argument [all …]
|
/linux-6.8/tools/testing/selftests/ftrace/test.d/trigger/ |
D | trigger-snapshot.tc | 3 # description: event trigger - test snapshot-trigger 4 # requires: set_event events/sched/sched_process_fork/trigger snapshot 11 FEATURE=`grep snapshot events/sched/sched_process_fork/trigger` 13 echo "snapshot trigger is not supported" 17 echo "Test snapshot trigger" 18 echo 0 > snapshot 21 echo 'snapshot:1' > events/sched/sched_process_fork/trigger 23 grep sched_process_fork snapshot > /dev/null || \ 24 fail "snapshot trigger on sched_process_fork did not work" 27 echo 0 > snapshot [all …]
|
D | trigger-trace-marker-snapshot.tc | 3 # description: trace_marker trigger - test snapshot trigger 4 # requires: set_event snapshot events/ftrace/print/trigger 30 echo "Test snapshot trace_marker trigger" 32 echo 'snapshot' > events/ftrace/print/trigger 34 # make sure the snapshot is allocated 36 grep -q 'Snapshot is allocated' snapshot 41 test_trace snapshot 2
|
/linux-6.8/fs/bcachefs/ |
D | fsck.c | 16 #include "snapshot.h" 28 u32 snapshot) in bch2_count_inode_sectors() argument 33 SPOS(inum, 0, snapshot), in bch2_count_inode_sectors() 45 u32 snapshot) in bch2_count_subdirs() argument 50 SPOS(inum, 0, snapshot), in bch2_count_subdirs() 63 u32 *snapshot, u64 *inum) in subvol_lookup() argument 70 *snapshot = le32_to_cpu(s.snapshot); in subvol_lookup() 104 u32 *snapshot) in lookup_inode() argument 111 SPOS(0, inode_nr, *snapshot), 0); in lookup_inode() 120 *snapshot = iter.pos.snapshot; in lookup_inode() [all …]
|
D | snapshot.c | 11 #include "snapshot.h" 16 * Snapshot trees: 18 * Keys in BTREE_ID_snapshot_trees identify a whole tree of snapshot nodes; they 19 * exist to provide a stable identifier for the whole lifetime of a snapshot 28 prt_printf(out, "subvol %u root snapshot %u", in bch2_snapshot_tree_to_text() 92 /* Snapshot nodes: */ 345 BTREE_ITER_WITH_UPDATES, snapshot, s); in bch2_snapshot_lookup() 358 bch_err(trans->c, "snapshot node %u not found", id); in bch2_snapshot_live() 366 * If @k is a snapshot with just one live child, it's part of a linear chain, 367 * which we consider to be an equivalence class: and then after snapshot [all …]
|
D | subvolume.c | 9 #include "snapshot.h" 22 struct bch_snapshot snapshot; in check_subvol() local 30 snapid = le32_to_cpu(subvol.v->snapshot); in check_subvol() 31 ret = bch2_snapshot_lookup(trans, snapid, &snapshot); in check_subvol() 34 bch_err(c, "subvolume %llu points to nonexistent snapshot %u", in check_subvol() 46 u32 snapshot_root = bch2_snapshot_root(c, le32_to_cpu(subvol.v->snapshot)); in check_subvol() 57 "%s: snapshot tree %u not found", __func__, snapshot_tree); in check_subvol() 64 "subvolume %llu is not set as snapshot but is not master subvolume", in check_subvol() 111 prt_printf(out, "root %llu snapshot id %u", in bch2_subvolume_to_text() 113 le32_to_cpu(s.v->snapshot)); in bch2_subvolume_to_text() [all …]
|
D | str_hash.h | 168 unsigned flags, u32 snapshot) in bch2_hash_lookup_in_snapshot() argument 174 SPOS(inum.inum, desc.hash_key(info, key), snapshot), in bch2_hash_lookup_in_snapshot() 200 u32 snapshot; in bch2_hash_lookup() local 201 return bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot) ?: in bch2_hash_lookup() 202 bch2_hash_lookup_in_snapshot(trans, iter, desc, info, inum, key, flags, snapshot); in bch2_hash_lookup() 213 u32 snapshot; in bch2_hash_hole() local 216 ret = bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot); in bch2_hash_hole() 221 SPOS(inum.inum, desc.hash_key(info, key), snapshot), in bch2_hash_hole() 265 subvol_inum inum, u32 snapshot, in bch2_hash_set_snapshot() argument 278 snapshot), in bch2_hash_set_snapshot() [all …]
|
D | inode.c | 16 #include "snapshot.h" 333 u32 snapshot; in bch2_inode_peek_nowarn() local 336 ret = bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot); in bch2_inode_peek_nowarn() 341 SPOS(0, inum.inum, snapshot), in bch2_inode_peek_nowarn() 383 inode_p->inode.k.p.snapshot = iter->snapshot; in bch2_inode_write_flags() 707 u32 snapshot, u64 cpu) in bch2_inode_create() argument 746 * We don't need to iterate over keys in every snapshot once in bch2_inode_create() 769 bch2_btree_iter_set_pos(iter, SPOS(0, pos, snapshot)); in bch2_inode_create() 790 u32 snapshot; in bch2_inode_delete_keys() local 803 ret = bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot); in bch2_inode_delete_keys() [all …]
|
D | subvolume_format.h | 12 __le32 snapshot; member 15 * Snapshot subvolumes form a tree, separate from the snapshot nodes 16 * tree - if this subvolume is a snapshot, this is the ID of the 29 * We need to know whether a subvolume is a snapshot so we can know whether we
|
/linux-6.8/Documentation/power/ |
D | userland-swsusp.rst | 13 utilities that will read/write the system memory snapshot from/to the 22 be read from /sys/class/misc/snapshot/dev. 45 create a snapshot of the system memory; the 48 creating the snapshot (1) or after restoring the system memory state 50 SNAPSHOT_CREATE_IMAGE ioctl() again); after the snapshot 56 uploaded snapshot image; before calling it you should transfer 57 the system memory snapshot back to the kernel using the write() 58 operation; this call will not succeed if the snapshot 62 free memory allocated for the snapshot image 118 The device's read() operation can be used to transfer the snapshot image from [all …]
|
/linux-6.8/tools/testing/selftests/ftrace/test.d/00basic/ |
D | snapshot.tc | 2 # description: Snapshot and tracing setting 3 # requires: snapshot 9 echo "Allocate and take a snapshot" 10 echo 1 > snapshot 12 # Since trace buffer is empty, snapshot is also empty, but allocated 13 grep -q "Snapshot is allocated" snapshot 21 echo "Take a snapshot again" 22 echo 1 > snapshot
|
/linux-6.8/drivers/net/ethernet/intel/ice/ |
D | ice_vf_mbx.c | 89 * 1. The mailbox snapshot structure, ice_mbx_snapshot, is initialized during 129 * ice_mbx_reset_snapshot - Reset mailbox snapshot structure 130 * @snap: pointer to the mailbox snapshot 137 * mailbox snapshot state to a new capture. in ice_mbx_reset_snapshot() 148 * ice_mbx_traverse - Pass through mailbox snapshot 152 * Traversing the mailbox static snapshot without checking 169 /* Checking either of the below conditions to exit snapshot traversal: in ice_mbx_traverse() 172 * of the static snapshot. in ice_mbx_traverse() 186 * ice_mbx_detect_malvf - Detect malicious VF in snapshot 207 /* continue to iterate through the mailbox snapshot */ in ice_mbx_detect_malvf() [all …]
|
/linux-6.8/tools/testing/selftests/ftrace/test.d/trigger/inter-event/ |
D | trigger-snapshot-action-hist.tc | 3 # description: event trigger - test inter-event histogram trigger snapshot action 4 # requires: set_event snapshot events/sched/sched_process_fork/hist "onchange(var)":README "snapsho… 11 echo "Test snapshot action" 15 echo 'hist:keys=comm:newprio=prio:onchange($newprio).save(comm,prio):onchange($newprio).snapshot() … 26 if ! grep -q "comm=ping" snapshot; then 27 fail "Failed to create snapshot action inter-event histogram"
|
/linux-6.8/tools/testing/selftests/drivers/net/netdevsim/ |
D | devlink.sh | 154 count=$(devlink region show $DL_HANDLE/$name -j | jq -e -r '.[][].snapshot | length') 156 check_err $? "Unexpected $phase_name snapshot count" 169 check_err $? "Failed to take first dummy region snapshot" 170 check_region_snapshot_count dummy post-first-snapshot 1 173 check_err $? "Failed to take second dummy region snapshot" 174 check_region_snapshot_count dummy post-second-snapshot 2 177 check_err $? "Failed to take third dummy region snapshot" 178 check_region_snapshot_count dummy post-third-snapshot 3 180 devlink region del $DL_HANDLE/dummy snapshot 1 181 check_err $? "Failed to delete first dummy region snapshot" [all …]
|
/linux-6.8/drivers/net/ethernet/xscale/ |
D | ixp46x_ts.h | 17 u32 tx_snap_lo; /* 0x48 Transmit Snapshot Low Register */ 18 u32 tx_snap_hi; /* 0x4C Transmit Snapshot High Register */ 19 u32 rx_snap_lo; /* 0x50 Receive Snapshot Low Register */ 20 u32 rx_snap_hi; /* 0x54 Receive Snapshot High Register */ 38 u32 asms_lo; /* 0x30 Auxiliary Slave Mode Snapshot Low */ 39 u32 asms_hi; /* 0x34 Auxiliary Slave Mode Snapshot High */ 40 u32 amms_lo; /* 0x38 Auxiliary Master Mode Snapshot Low */ 41 u32 amms_hi; /* 0x3C Auxiliary Master Mode Snapshot High */
|