File a30dac15-qemu-detect-prealloc-threads.patch of Package libvirt
199
1
commit a30dac15dcdb7a6c7a3e9b6cfc5cd77bae185081
2
Author: Michal Prívozník <mprivozn@redhat.com>
3
Date: Mon Mar 21 16:55:05 2022 +0100
4
5
qemu_capabilities: Detect memory-backend-*.prealloc-threads property
6
7
The prealloc-threads is property of memory-backend class which is
8
parent to the other three classes memory-backend-{ram,file,memfd}.
9
Therefore the property is present for all, or none if QEMU is
10
older than v5.0.0-rc0~75^2~1^2~3 which introduced the property.
11
12
Anyway, the .reserve property is the same story, and we chose
13
memory-backend-file to detect it, so stick with our earlier
14
decision and use the same backend to detect this new property.
15
16
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
17
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
18
19
Index: libvirt-7.1.0/src/qemu/qemu_capabilities.c
20
===================================================================
21
--- libvirt-7.1.0.orig/src/qemu/qemu_capabilities.c
22
+++ libvirt-7.1.0/src/qemu/qemu_capabilities.c
23
24
"memory-backend-file.x-use-canonical-path-for-ramblock-id",
25
"vnc-opts",
26
"migration-param.block-bitmap-mapping",
27
+
28
+ /* 395 */
29
+ "memory-backend-file.prealloc-threads",
30
);
31
32
33
34
* supported. The 'x-' prefix was kept for compatibility with already
35
* released qemu versions. */
36
{ "x-use-canonical-path-for-ramblock-id", QEMU_CAPS_X_USE_CANONICAL_PATH_FOR_RAMBLOCK_ID },
37
+ { "prealloc-threads", QEMU_CAPS_MEMORY_BACKEND_PREALLOC_THREADS },
38
};
39
40
static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendMemfd[] = {
41
Index: libvirt-7.1.0/src/qemu/qemu_capabilities.h
42
===================================================================
43
--- libvirt-7.1.0.orig/src/qemu/qemu_capabilities.h
44
+++ libvirt-7.1.0/src/qemu/qemu_capabilities.h
45
46
QEMU_CAPS_VNC_OPTS, /* -vnc uses QemuOpts parser instead of custom code */
47
QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING, /* block-bitmap-mapping in migrate-set-parameters */
48
49
+ /* 395 */
50
+ QEMU_CAPS_MEMORY_BACKEND_PREALLOC_THREADS, /* -object memory-backend-*.prealloc-threads */
51
+
52
QEMU_CAPS_LAST /* this must always be the last item */
53
} virQEMUCapsFlags;
54
55
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
56
===================================================================
57
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
58
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
59
60
<flag name='cpu-max'/>
61
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
62
<flag name='vnc-opts'/>
63
+ <flag name='memory-backend-file.prealloc-threads'/>
64
<version>5000000</version>
65
<kvmVersion>0</kvmVersion>
66
<microcodeVersion>61700241</microcodeVersion>
67
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml
68
===================================================================
69
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml
70
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml
71
72
<flag name='cpu-max'/>
73
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
74
<flag name='vnc-opts'/>
75
+ <flag name='memory-backend-file.prealloc-threads'/>
76
<version>5000000</version>
77
<kvmVersion>0</kvmVersion>
78
<microcodeVersion>42900241</microcodeVersion>
79
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml
80
===================================================================
81
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml
82
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml
83
84
<flag name='vhost-user-blk'/>
85
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
86
<flag name='vnc-opts'/>
87
+ <flag name='memory-backend-file.prealloc-threads'/>
88
<version>5000000</version>
89
<kvmVersion>0</kvmVersion>
90
<microcodeVersion>0</microcodeVersion>
91
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
92
===================================================================
93
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
94
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
95
96
<flag name='cpu-max'/>
97
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
98
<flag name='vnc-opts'/>
99
+ <flag name='memory-backend-file.prealloc-threads'/>
100
<version>5000000</version>
101
<kvmVersion>0</kvmVersion>
102
<microcodeVersion>43100241</microcodeVersion>
103
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.1.0.sparc.xml
104
===================================================================
105
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.1.0.sparc.xml
106
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.1.0.sparc.xml
107
108
<flag name='ncr53c90'/>
109
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
110
<flag name='vnc-opts'/>
111
+ <flag name='memory-backend-file.prealloc-threads'/>
112
<version>5001000</version>
113
<kvmVersion>0</kvmVersion>
114
<microcodeVersion>0</microcodeVersion>
115
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml
116
===================================================================
117
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml
118
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml
119
120
<flag name='cpu-max'/>
121
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
122
<flag name='vnc-opts'/>
123
+ <flag name='memory-backend-file.prealloc-threads'/>
124
<version>5001000</version>
125
<kvmVersion>0</kvmVersion>
126
<microcodeVersion>43100242</microcodeVersion>
127
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml
128
===================================================================
129
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml
130
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml
131
132
<flag name='cpu-max'/>
133
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
134
<flag name='vnc-opts'/>
135
+ <flag name='memory-backend-file.prealloc-threads'/>
136
<version>5002000</version>
137
<kvmVersion>0</kvmVersion>
138
<microcodeVersion>61700243</microcodeVersion>
139
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml
140
===================================================================
141
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml
142
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml
143
144
<flag name='cpu-max'/>
145
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
146
<flag name='vnc-opts'/>
147
+ <flag name='memory-backend-file.prealloc-threads'/>
148
<version>5002000</version>
149
<kvmVersion>0</kvmVersion>
150
<microcodeVersion>42900243</microcodeVersion>
151
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml
152
===================================================================
153
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml
154
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml
155
156
<flag name='vhost-user-blk'/>
157
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
158
<flag name='vnc-opts'/>
159
+ <flag name='memory-backend-file.prealloc-threads'/>
160
<version>5002000</version>
161
<kvmVersion>0</kvmVersion>
162
<microcodeVersion>0</microcodeVersion>
163
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml
164
===================================================================
165
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml
166
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml
167
168
<flag name='cpu-max'/>
169
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
170
<flag name='vnc-opts'/>
171
+ <flag name='memory-backend-file.prealloc-threads'/>
172
<version>5002000</version>
173
<kvmVersion>0</kvmVersion>
174
<microcodeVersion>39100243</microcodeVersion>
175
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml
176
===================================================================
177
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml
178
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml
179
180
<flag name='cpu-max'/>
181
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
182
<flag name='vnc-opts'/>
183
+ <flag name='memory-backend-file.prealloc-threads'/>
184
<version>5002000</version>
185
<kvmVersion>0</kvmVersion>
186
<microcodeVersion>43100243</microcodeVersion>
187
Index: libvirt-7.1.0/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml
188
===================================================================
189
--- libvirt-7.1.0.orig/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml
190
+++ libvirt-7.1.0/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml
191
192
<flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
193
<flag name='vnc-opts'/>
194
<flag name='migration-param.block-bitmap-mapping'/>
195
+ <flag name='memory-backend-file.prealloc-threads'/>
196
<version>5002050</version>
197
<kvmVersion>0</kvmVersion>
198
<microcodeVersion>43100242</microcodeVersion>
199