Home
last modified time | relevance | path

Searched full:graph (Results 1 – 25 of 72) sorted by relevance

123

/qemu/include/block/
H A Dgraph-lock.h2 * Graph lock: rwlock to protect block layer graph manipulations (add/remove
24 * Graph Lock API
26 * graph modifications like edge (BdrvChild) and node (BlockDriverState)
32 * graph, and readers (all other coroutines running in various AioContext),
33 * that go through the graph edges, reading
41 * access the graph as long the writer is not modifying the graph.
91 * currently running the graph.
103 * Start an exclusive write operation to modify the graph. This means we are
104 * adding or removing an edge or a node in the block layer graph. Nobody else
105 * is allowed to access the graph.
[all …]
H A Dblock_int-global-state.h56 * driver that the stream job inserts into the graph above
91 * driver that the commit job inserts into the graph above @top. NULL means
113 * driver that the commit job inserts into the graph above @bs. NULL means that
133 * @replaces: Block graph node name to replace once the mirror is done. Can
147 * driver that the mirror job inserts into the graph above @bs. NULL means that
H A Dblock-global-state.h34 * If a function modifies the graph, it also uses the graph lock to be sure it
35 * has unique access. The graph lock is needed together with BQL because of the
36 * thread-safe I/O API that concurrently runs and accesses the graph without
H A Dblock-common.h44 * release the graph rdlock when creating a new coroutine
46 * automatically take and release the graph rdlock when creating a new
70 * automatically takes the graph rdlock when calling the wrapped function. In
72 * graph wrlock.
H A Dblock_int.h29 #include "block/graph-lock.h"
H A Dqapi.h28 #include "block/graph-lock.h"
/qemu/scripts/
H A Drender_block_graph.py3 # Render Qemu Block Graph
42 Render graph in text (dot) representation into "@filename" and
52 block_graph = qmp.cmd('x-debug-query-block-graph')
54 graph = Digraph(comment='Block Nodes Graph')
55 graph.format = format
56 graph.node('permission symbols:\l'
60 ' g - Graph-mod\l'
83 graph.node(str(n['id']), label, shape=shape)
88 graph.edge(str(e['parent']), str(e['child']), label=label)
90 graph.render(filename)
H A Ddecodetree.py67 # ts = TopologicalSorter(graph=None)
68 # create the sorter. graph is a dictionary whose keys are
70 # (That is, if graph contains "A" -> ["B", "C"] then we must output
75 # exception raised if there are cycles in the graph. The second
81 # (typically 10 nodes or less, actual links in the graph very rare),
89 """Subclass of ValueError raised if cycles exist in the graph"""
93 """Topologically sort a graph"""
94 def __init__(self, graph=None): argument
95 self.graph = graph
103 if not self.graph:
[all …]
/qemu/tests/qemu-iotests/
H A D25853 # Finds a node in the debug block graph
54 def find_graph_node(graph, node_id): argument
55 return next(node for node in graph['nodes'] if node['id'] == node_id)
144 graph = vm.qmp('x-debug-query-block-graph')['return']
145 for edge in graph['edges']:
147 find_graph_node(graph, edge['parent'])['name'] == 'node3':
148 assert find_graph_node(graph, edge['child'])['name'] == 'node0'
H A D27341 # External data files would add nodes to the block graph, so it would
74 {"execute":"x-debug-query-block-graph"}
H A Diotests.py1129 def assert_block_path(self, root, path, expected_node, graph=None): argument
1131 Check whether the node under the given path in the block graph
1150 @graph may be None or the result of an x-debug-query-block-graph
1153 if graph is None:
1154 graph = self.qmp('x-debug-query-block-graph')['return']
1161 node = next((node for node in graph['nodes'] if node['name'] == root),
1171 node_id = next(edge['child'] for edge in graph['edges']
1175 node = next(node for node in graph['nodes']
/qemu/tests/unit/
H A Dtest-bdrv-graph-mod.c2 * Block node graph modifications tests
91 * its neighbors, we can finish up with wrong permission graph.
93 * This test firstly create the following graph:
158 * do the right thing, i.e. not creating loops on the graph.
161 * 1. initial graph:
175 * as it will create a loop on node graph. Resulting picture should
429 * So, inserting such filter should do all graph modifications and only then
461 g_test_add_func("/bdrv-graph-mod/update-perm-tree", test_update_perm_tree); in main()
462 g_test_add_func("/bdrv-graph-mod/should-update-child", in main()
464 g_test_add_func("/bdrv-graph-mod/parallel-perm-update", in main()
[all …]
H A Dtest-bdrv-drain.c210 * Locking the block graph would be a bit cumbersome here because this function
305 * Locking the block graph would be a bit cumbersome here because this function
1212 * Initial graph:
1227 * that does the same graph change. If bdrv_drain_invoke() calls it, the
1616 * We are free to poll here, which may change the block graph, if in drop_intermediate_poll_update_filename()
1632 * which can yield or poll. This may lead to graph changes, unless
1635 * We test this on the following graph:
1667 * subtree. This prevents graph changes from happening just because
2107 g_test_add_func("/bdrv-drain/graph-change/drain_all", in main()
/qemu/block/
H A Dgraph-lock.c2 * Graph lock: rwlock to protect block layer graph manipulations (add/remove
23 #include "block/graph-lock.h"
51 /* How many readers are currently reading the graph. */
55 * List of BdrvGraphRWlock kept in graph-lock.c
157 /* Wake up all coroutines that are waiting to read the graph */ in bdrv_graph_wrunlock()
H A Dstream.c79 * drained_begin() might change the graph, and if we do this only later, we in stream_prepare()
112 * This call will do I/O, so the graph can change again from here on. in stream_prepare()
113 * We have already completed the graph change, so we are not in danger in stream_prepare()
370 * Prevent concurrent jobs trying to modify the graph structure here, we in stream_start()
/qemu/tests/rocker/
H A Dtut.dot1 graph G {
2 graph [hostidtype="hostname", version="1:0", date="04/12/2013"];
/qemu/tests/qemu-iotests/tests/
H A Dimage-fleecing.out11 --- Setting up Fleecing Graph ---
80 --- Setting up Fleecing Graph ---
150 --- Setting up Fleecing Graph ---
222 --- Setting up Fleecing Graph ---
306 --- Setting up Fleecing Graph ---
/qemu/tests/qtest/libqos/
H A Dqgraph_internal.h53 /* Graph Node */
56 bool available; /* set by QEMU via QMP, used during graph walk */
57 bool visited; /* used during graph walk */
216 * qos_print_graph(): walks the graph and prints
H A Dqgraph.h176 * graph walking algorithm has found it, the @test_func will be
373 * All qtests add themselves to the overall qos graph by calling qgraph
374 * functions that add device nodes and edges between the individual graph
375 * nodes for tests. As the actual graph is assmbled at runtime by the qos
376 * subsystem, it is sometimes not obvious how the overall graph looks like.
382 * to the graph's root node are actually executed by the qtest framework. And
/qemu/qapi/
H A Dyank.json23 # Specifies which block graph node to yank. See @YankInstance for
26 # @node-name: the name of the block graph node
H A Dblock-core.json331 # Information about all nodes in the block graph starting at some
338 # @info: Block graph information starting at this node
351 # Information about all nodes in a block (sub)graph in the form of
353 # information for the (sub)graph's root node.
1459 # @node-name: graph node name to get the image resized (Since 2.0)
1505 # @node-name: graph node name to generate the snapshot from
1512 # @snapshot-node-name: the graph node name of the new image
1610 # making any block graph changes. When true, this job will
1620 # filter driver that the backup job inserts into the graph above
1844 # filter driver that the commit job inserts into the graph above
[all …]
/qemu/stubs/
H A Dgraph-lock.c2 #include "block/graph-lock.h"
/qemu/tests/migration-stress/
H A Dguestperf-plot.py3 # Migration test graph plotting command
/qemu/docs/devel/testing/
H A Dqgraph.rst21 The aim of qgraph is to create a graph of drivers, machines and tests such that
36 The graph is composed by nodes that represent machines, drivers, tests
86 - The framework walks the graph starting from the available machines and
582 Final graph will be like this::
/qemu/
H A Dblock.c1639 /* copy node name into the bs and insert it into the graph list */ in bdrv_assign_node_name()
2395 * while holding a reader lock for the graph.
2476 * while holding a writer lock for the graph.
2505 * after some graph modification that was done without permission update.
2508 * while holding a reader lock for the graph.
2587 * while holding a reader lock for the graph.
2619 * while holding a reader lock for the graph.
2686 * while holding a reader lock for the graph.
3070 * while holding a writer lock for the graph.
3152 * in the graph with bdrv_replace_child_noperm() will undrain it if in bdrv_attach_child_common()
[all …]

123