1
The following changes since commit 285278ca785f5fa9a570927e1c0958a2ca2b2150:
1
The following changes since commit 9c125d17e9402c232c46610802e5931b3639d77b:
2
2
3
Merge remote-tracking branch 'remotes/famz/tags/testing-pull-request' into staging (2018-10-27 19:55:08 +0100)
3
Merge tag 'pull-tcg-20220420' of https://gitlab.com/rth7680/qemu into staging (2022-04-20 16:43:11 -0700)
4
4
5
are available in the Git repository at:
5
are available in the Git repository at:
6
6
7
git://github.com/stefanha/qemu.git tags/block-pull-request
7
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
8
8
9
for you to fetch changes up to bd54b11062c4baa7d2e4efadcf71b8cfd55311fd:
9
for you to fetch changes up to d45c83328feab2e4083991693160f0a417cfd9b0:
10
10
11
nvdimm: Add docs hint for Linux driver name (2018-10-29 13:35:22 +0000)
11
virtiofsd: Add docs/helper for killpriv_v2/no_killpriv_v2 option (2022-04-21 12:05:15 +0200)
12
12
13
----------------------------------------------------------------
13
----------------------------------------------------------------
14
Pull request
14
Pull request
15
15
16
No changelog entries necessary, just small tweaks.
16
Small contrib/vhost-user-blk, contrib/vhost-user-scsi, and tools/virtiofsd
17
improvements.
17
18
18
----------------------------------------------------------------
19
----------------------------------------------------------------
19
20
20
Kees Cook (1):
21
Liu Yiding (1):
21
nvdimm: Add docs hint for Linux driver name
22
virtiofsd: Add docs/helper for killpriv_v2/no_killpriv_v2 option
22
23
23
Li Qiang (1):
24
Sakshi Kaushik (1):
24
util: aio-posix: fix a typo
25
Implements Backend Program conventions for vhost-user-scsi
25
26
26
docs/nvdimm.txt | 5 +++--
27
Stefan Hajnoczi (1):
27
util/aio-posix.c | 2 +-
28
contrib/vhost-user-blk: add missing GOptionEntry NULL terminator
28
2 files changed, 4 insertions(+), 3 deletions(-)
29
30
docs/tools/virtiofsd.rst | 5 ++
31
contrib/vhost-user-blk/vhost-user-blk.c | 3 +-
32
contrib/vhost-user-scsi/vhost-user-scsi.c | 77 +++++++++++++++--------
33
tools/virtiofsd/helper.c | 3 +
34
4 files changed, 62 insertions(+), 26 deletions(-)
29
35
30
--
36
--
31
2.17.2
37
2.35.1
32
33
diff view generated by jsdifflib
New patch
1
From: Sakshi Kaushik <sakshikaushik717@gmail.com>
1
2
3
Signed-off-by: Sakshi Kaushik <sakshikaushik717@gmail.com>
4
Message-id: 20220406162410.8536-1-sakshikaushik717@gmail.com
5
6
[Name the iSCSI URL long option --iscsi-uri instead of --iscsi_uri for
7
consistency, fix --fd which was rejected due to an outdated
8
--socket-path check, and add missing entries[] terminator.
9
--Stefan]
10
11
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
12
---
13
contrib/vhost-user-scsi/vhost-user-scsi.c | 77 +++++++++++++++--------
14
1 file changed, 52 insertions(+), 25 deletions(-)
15
16
diff --git a/contrib/vhost-user-scsi/vhost-user-scsi.c b/contrib/vhost-user-scsi/vhost-user-scsi.c
17
index XXXXXXX..XXXXXXX 100644
18
--- a/contrib/vhost-user-scsi/vhost-user-scsi.c
19
+++ b/contrib/vhost-user-scsi/vhost-user-scsi.c
20
@@ -XXX,XX +XXX,XX @@ fail:
21
22
/** vhost-user-scsi **/
23
24
+static int opt_fdnum = -1;
25
+static char *opt_socket_path;
26
+static gboolean opt_print_caps;
27
+static char *iscsi_uri;
28
+
29
+static GOptionEntry entries[] = {
30
+ { "print-capabilities", 'c', 0, G_OPTION_ARG_NONE, &opt_print_caps,
31
+ "Print capabilities", NULL },
32
+ { "fd", 'f', 0, G_OPTION_ARG_INT, &opt_fdnum,
33
+ "Use inherited fd socket", "FDNUM" },
34
+ { "iscsi-uri", 'i', 0, G_OPTION_ARG_FILENAME, &iscsi_uri,
35
+ "iSCSI URI to connect to", "FDNUM" },
36
+ { "socket-path", 's', 0, G_OPTION_ARG_FILENAME, &opt_socket_path,
37
+ "Use UNIX socket path", "PATH" },
38
+ { NULL, }
39
+};
40
+
41
int main(int argc, char **argv)
42
{
43
VusDev *vdev_scsi = NULL;
44
- char *unix_fn = NULL;
45
- char *iscsi_uri = NULL;
46
- int lsock = -1, csock = -1, opt, err = EXIT_SUCCESS;
47
+ int lsock = -1, csock = -1, err = EXIT_SUCCESS;
48
49
- while ((opt = getopt(argc, argv, "u:i:")) != -1) {
50
- switch (opt) {
51
- case 'h':
52
- goto help;
53
- case 'u':
54
- unix_fn = g_strdup(optarg);
55
- break;
56
- case 'i':
57
- iscsi_uri = g_strdup(optarg);
58
- break;
59
- default:
60
- goto help;
61
- }
62
+ GError *error = NULL;
63
+ GOptionContext *context;
64
+
65
+ context = g_option_context_new(NULL);
66
+ g_option_context_add_main_entries(context, entries, NULL);
67
+ if (!g_option_context_parse(context, &argc, &argv, &error)) {
68
+ g_printerr("Option parsing failed: %s\n", error->message);
69
+ exit(EXIT_FAILURE);
70
+ }
71
+
72
+ if (opt_print_caps) {
73
+ g_print("{\n");
74
+ g_print(" \"type\": \"scsi\"\n");
75
+ g_print("}\n");
76
+ goto out;
77
}
78
- if (!unix_fn || !iscsi_uri) {
79
+
80
+ if (!iscsi_uri) {
81
goto help;
82
}
83
84
- lsock = unix_sock_new(unix_fn);
85
- if (lsock < 0) {
86
- goto err;
87
+ if (opt_socket_path) {
88
+ lsock = unix_sock_new(opt_socket_path);
89
+ if (lsock < 0) {
90
+ exit(EXIT_FAILURE);
91
+ }
92
+ } else if (opt_fdnum < 0) {
93
+ g_print("%s\n", g_option_context_get_help(context, true, NULL));
94
+ exit(EXIT_FAILURE);
95
+ } else {
96
+ lsock = opt_fdnum;
97
}
98
99
csock = accept(lsock, NULL, NULL);
100
@@ -XXX,XX +XXX,XX @@ out:
101
if (vdev_scsi) {
102
g_main_loop_unref(vdev_scsi->loop);
103
g_free(vdev_scsi);
104
- unlink(unix_fn);
105
+ unlink(opt_socket_path);
106
}
107
if (csock >= 0) {
108
close(csock);
109
@@ -XXX,XX +XXX,XX @@ out:
110
if (lsock >= 0) {
111
close(lsock);
112
}
113
- g_free(unix_fn);
114
+ g_free(opt_socket_path);
115
g_free(iscsi_uri);
116
117
return err;
118
@@ -XXX,XX +XXX,XX @@ err:
119
goto out;
120
121
help:
122
- fprintf(stderr, "Usage: %s [ -u unix_sock_path -i iscsi_uri ] | [ -h ]\n",
123
+ fprintf(stderr, "Usage: %s [ -s socket-path -i iscsi-uri -f fd -p print-capabilities ] | [ -h ]\n",
124
argv[0]);
125
- fprintf(stderr, " -u path to unix socket\n");
126
- fprintf(stderr, " -i iscsi uri for lun 0\n");
127
+ fprintf(stderr, " -s, --socket-path=SOCKET_PATH path to unix socket\n");
128
+ fprintf(stderr, " -i, --iscsi-uri=ISCSI_URI iscsi uri for lun 0\n");
129
+ fprintf(stderr, " -f, --fd=FILE_DESCRIPTOR file-descriptor\n");
130
+ fprintf(stderr, " -p, --print-capabilities=PRINT_CAPABILITIES denotes print-capabilities\n");
131
fprintf(stderr, " -h print help and quit\n");
132
133
goto err;
134
--
135
2.35.1
diff view generated by jsdifflib
1
From: Li Qiang <liq3ea@gmail.com>
1
The GLib documentation says "a NULL-terminated array of GOptionEntrys"
2
so we'd better make sure there is a terminator that lets
3
g_option_context_add_main_entries() know when the end of the array has
4
been reached.
2
5
3
Cc: qemu-trivial@nongnu.org
6
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
4
Signed-off-by: Li Qiang <liq3ea@gmail.com>
7
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
5
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
8
Message-id: 20220411150057.3009667-1-stefanha@redhat.com
6
Reviewed-by: Fam Zheng <famz@redhat.com>
7
Message-id: 1538964972-3223-1-git-send-email-liq3ea@gmail.com
8
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
9
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
9
---
10
---
10
util/aio-posix.c | 2 +-
11
contrib/vhost-user-blk/vhost-user-blk.c | 3 ++-
11
1 file changed, 1 insertion(+), 1 deletion(-)
12
1 file changed, 2 insertions(+), 1 deletion(-)
12
13
13
diff --git a/util/aio-posix.c b/util/aio-posix.c
14
diff --git a/contrib/vhost-user-blk/vhost-user-blk.c b/contrib/vhost-user-blk/vhost-user-blk.c
14
index XXXXXXX..XXXXXXX 100644
15
index XXXXXXX..XXXXXXX 100644
15
--- a/util/aio-posix.c
16
--- a/contrib/vhost-user-blk/vhost-user-blk.c
16
+++ b/util/aio-posix.c
17
+++ b/contrib/vhost-user-blk/vhost-user-blk.c
17
@@ -XXX,XX +XXX,XX @@ struct AioHandler
18
@@ -XXX,XX +XXX,XX @@ static GOptionEntry entries[] = {
18
19
{"blk-file", 'b', 0, G_OPTION_ARG_FILENAME, &opt_blk_file,
19
#ifdef CONFIG_EPOLL_CREATE1
20
"block device or file path", "PATH"},
20
21
{ "read-only", 'r', 0, G_OPTION_ARG_NONE, &opt_read_only,
21
-/* The fd number threashold to switch to epoll */
22
- "Enable read-only", NULL }
22
+/* The fd number threshold to switch to epoll */
23
+ "Enable read-only", NULL },
23
#define EPOLL_ENABLE_THRESHOLD 64
24
+ { NULL, },
24
25
};
25
static void aio_epoll_disable(AioContext *ctx)
26
27
int main(int argc, char **argv)
26
--
28
--
27
2.17.2
29
2.35.1
28
29
diff view generated by jsdifflib
1
From: Kees Cook <keescook@chromium.org>
1
From: Liu Yiding <liuyd.fnst@fujitsu.com>
2
2
3
I spent way too much time trying to figure out why the emulated NVDIMM
3
virtiofsd has introduced killpriv_v2/no_killpriv_v2 for a while. Add
4
was missing under Linux. In an effort to help others who might be looking
4
description of it to docs/helper.
5
for these kinds of things in the future, include a hint.
6
5
7
Signed-off-by: Kees Cook <keescook@chromium.org>
6
Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
8
Message-id: 20181018201351.GA25286@beast
7
Message-Id: <20220421095151.2231099-1-liuyd.fnst@fujitsu.com>
8
9
[Small documentation fixes: s/as client supports/as the client supports/
10
and s/. /. /.
11
--Stefan]
12
9
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
13
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
10
---
14
---
11
docs/nvdimm.txt | 5 +++--
15
docs/tools/virtiofsd.rst | 5 +++++
12
1 file changed, 3 insertions(+), 2 deletions(-)
16
tools/virtiofsd/helper.c | 3 +++
17
2 files changed, 8 insertions(+)
13
18
14
diff --git a/docs/nvdimm.txt b/docs/nvdimm.txt
19
diff --git a/docs/tools/virtiofsd.rst b/docs/tools/virtiofsd.rst
15
index XXXXXXX..XXXXXXX 100644
20
index XXXXXXX..XXXXXXX 100644
16
--- a/docs/nvdimm.txt
21
--- a/docs/tools/virtiofsd.rst
17
+++ b/docs/nvdimm.txt
22
+++ b/docs/tools/virtiofsd.rst
18
@@ -XXX,XX +XXX,XX @@ Multiple vNVDIMM devices can be created if multiple pairs of "-object"
23
@@ -XXX,XX +XXX,XX @@ Options
19
and "-device" are provided.
24
label. Server will try to set that label on newly created file
20
25
atomically wherever possible.
21
For above command line options, if the guest OS has the proper NVDIMM
26
22
-driver, it should be able to detect a NVDIMM device which is in the
27
+ * killpriv_v2|no_killpriv_v2 -
23
-persistent memory mode and whose size is $NVDIMM_SIZE.
28
+ Enable/disable ``FUSE_HANDLE_KILLPRIV_V2`` support. KILLPRIV_V2 is enabled
24
+driver (e.g. "CONFIG_ACPI_NFIT=y" under Linux), it should be able to
29
+ by default as long as the client supports it. Enabling this option helps
25
+detect a NVDIMM device which is in the persistent memory mode and whose
30
+ with performance in write path.
26
+size is $NVDIMM_SIZE.
31
+
27
32
.. option:: --socket-path=PATH
28
Note:
33
34
Listen on vhost-user UNIX domain socket at PATH.
35
diff --git a/tools/virtiofsd/helper.c b/tools/virtiofsd/helper.c
36
index XXXXXXX..XXXXXXX 100644
37
--- a/tools/virtiofsd/helper.c
38
+++ b/tools/virtiofsd/helper.c
39
@@ -XXX,XX +XXX,XX @@ void fuse_cmdline_help(void)
40
" -o announce_submounts Announce sub-mount points to the guest\n"
41
" -o posix_acl/no_posix_acl Enable/Disable posix_acl. (default: disabled)\n"
42
" -o security_label/no_security_label Enable/Disable security label. (default: disabled)\n"
43
+ " -o killpriv_v2/no_killpriv_v2\n"
44
+ " Enable/Disable FUSE_HANDLE_KILLPRIV_V2.\n"
45
+ " (default: enabled as long as client supports it)\n"
46
);
47
}
29
48
30
--
49
--
31
2.17.2
50
2.35.1
32
33
diff view generated by jsdifflib