mirror of https://github.com/xemu-project/xemu.git
Block layer patches
- libvduse: Coverity fixes - hd-geometry: Fix ignored bios-chs-trans setting - io_uring: Fix compiler warning (missing #include) - main loop: add missing documentation links to GS/IO macros - qemu-iotests: Discard stderr when probing devices -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmLpKDURHGt3b2xmQHJl ZGhhdC5jb20ACgkQfwmycsiPL9ZMcA//buzWQl/AFL2VT5Fy3WpFCYDVp5mTPJ2q bgkhCpn6i7UXIkML53hygfm7LN9Fj8Q8Ld4ljkETzljJajS3zsXvyY6bgNevQutX 8WvkcUNWMb96DEgetInak2ebH6lhti6/V7lBfjNFG1yC2s8l+JoWIPqWfJqohdiN D4+loa/wQx1ZS3TgKq8zAxfi5qbbGxRTZQUvuCJNYRryRQmJsZH380DzlIqkRJWt b3rM7m9ElSpmcmwmztWkdK4E/2VYGknUQOnRpY0AUSUTcm/kaP7EVwh61+TdjlKL NZxvZ08kenGFTBEA9z3ahnggcLypj4IYU3DB29CiJLjMjCb0s7tMwc8USYajN+GA iDqkbK14mDd8auRDVbVcmnq34xzS0rJocpzT0Jo9zYo7oGe/r+JjaVWmWq0pZ2SE QQuSPZXZokUdpL6E5X05+JZ+u6+G+iQz9UOhNpwmKB1ajiXUVKIst/SctpyKedOr cJWB34tQxQIFB57s6K7wVMbSWPIumTwQc08EX0HoicT9pUMN7s+Z1jrCufudZ0ot gx95v7gBDZZDsJim5qi3znA8tqnUmtL0yxkUVgv7LdQfIleEnEFfutFJpq/7VFe9 WRzXBQJPU451jF7Gvj/StA3+05qMr22mXW4CX6t96Ud6QHiR0mUBSGPRzYusIV4d KYOjySU7cOg= =axCN -----END PGP SIGNATURE----- Merge tag 'for-upstream' of git://repo.or.cz/qemu/kevin into staging Block layer patches - libvduse: Coverity fixes - hd-geometry: Fix ignored bios-chs-trans setting - io_uring: Fix compiler warning (missing #include) - main loop: add missing documentation links to GS/IO macros - qemu-iotests: Discard stderr when probing devices # -----BEGIN PGP SIGNATURE----- # # iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmLpKDURHGt3b2xmQHJl # ZGhhdC5jb20ACgkQfwmycsiPL9ZMcA//buzWQl/AFL2VT5Fy3WpFCYDVp5mTPJ2q # bgkhCpn6i7UXIkML53hygfm7LN9Fj8Q8Ld4ljkETzljJajS3zsXvyY6bgNevQutX # 8WvkcUNWMb96DEgetInak2ebH6lhti6/V7lBfjNFG1yC2s8l+JoWIPqWfJqohdiN # D4+loa/wQx1ZS3TgKq8zAxfi5qbbGxRTZQUvuCJNYRryRQmJsZH380DzlIqkRJWt # b3rM7m9ElSpmcmwmztWkdK4E/2VYGknUQOnRpY0AUSUTcm/kaP7EVwh61+TdjlKL # NZxvZ08kenGFTBEA9z3ahnggcLypj4IYU3DB29CiJLjMjCb0s7tMwc8USYajN+GA # iDqkbK14mDd8auRDVbVcmnq34xzS0rJocpzT0Jo9zYo7oGe/r+JjaVWmWq0pZ2SE # QQuSPZXZokUdpL6E5X05+JZ+u6+G+iQz9UOhNpwmKB1ajiXUVKIst/SctpyKedOr # cJWB34tQxQIFB57s6K7wVMbSWPIumTwQc08EX0HoicT9pUMN7s+Z1jrCufudZ0ot # gx95v7gBDZZDsJim5qi3znA8tqnUmtL0yxkUVgv7LdQfIleEnEFfutFJpq/7VFe9 # WRzXBQJPU451jF7Gvj/StA3+05qMr22mXW4CX6t96Ud6QHiR0mUBSGPRzYusIV4d # KYOjySU7cOg= # =axCN # -----END PGP SIGNATURE----- # gpg: Signature made Tue 02 Aug 2022 06:35:49 AM PDT # gpg: using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6 # gpg: issuer "kwolf@redhat.com" # gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>" [full] * tag 'for-upstream' of git://repo.or.cz/qemu/kevin: main loop: add missing documentation links to GS/IO macros qemu-iotests: Discard stderr when probing devices hw/block/hd-geometry: Do not override specified bios-chs-trans libvduse: Pass positive value to strerror() libvduse: Replace strcpy() with strncpy() libvduse: Fix the incorrect function name block/io_uring: add missing include file Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
commit
0399521e53
|
@ -11,6 +11,7 @@
|
|||
#include "qemu/osdep.h"
|
||||
#include <liburing.h>
|
||||
#include "block/aio.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "qemu/queue.h"
|
||||
#include "block/block.h"
|
||||
#include "block/raw-aio.h"
|
||||
|
|
|
@ -150,7 +150,12 @@ void hd_geometry_guess(BlockBackend *blk,
|
|||
translation = BIOS_ATA_TRANSLATION_NONE;
|
||||
}
|
||||
if (ptrans) {
|
||||
*ptrans = translation;
|
||||
if (*ptrans == BIOS_ATA_TRANSLATION_AUTO) {
|
||||
*ptrans = translation;
|
||||
} else {
|
||||
/* Defer to the translation specified by the user. */
|
||||
translation = *ptrans;
|
||||
}
|
||||
}
|
||||
trace_hd_geometry_guess(blk, *pcyls, *pheads, *psecs, translation);
|
||||
}
|
||||
|
|
|
@ -279,7 +279,11 @@ bool qemu_mutex_iothread_locked(void);
|
|||
*/
|
||||
bool qemu_in_main_thread(void);
|
||||
|
||||
/* Mark and check that the function is part of the global state API. */
|
||||
/*
|
||||
* Mark and check that the function is part of the Global State API.
|
||||
* Please refer to include/block/block-global-state.h for more
|
||||
* information about GS API.
|
||||
*/
|
||||
#ifdef CONFIG_COCOA
|
||||
/*
|
||||
* When using the Cocoa UI, addRemovableDevicesMenuItems() is called from
|
||||
|
@ -298,13 +302,21 @@ bool qemu_in_main_thread(void);
|
|||
} while (0)
|
||||
#endif /* CONFIG_COCOA */
|
||||
|
||||
/* Mark and check that the function is part of the I/O API. */
|
||||
/*
|
||||
* Mark and check that the function is part of the I/O API.
|
||||
* Please refer to include/block/block-io.h for more
|
||||
* information about IO API.
|
||||
*/
|
||||
#define IO_CODE() \
|
||||
do { \
|
||||
/* nop */ \
|
||||
} while (0)
|
||||
|
||||
/* Mark and check that the function is part of the "I/O OR GS" API. */
|
||||
/*
|
||||
* Mark and check that the function is part of the "I/O OR GS" API.
|
||||
* Please refer to include/block/block-io.h for more
|
||||
* information about "IO or GS" API.
|
||||
*/
|
||||
#define IO_OR_GS_CODE() \
|
||||
do { \
|
||||
/* nop */ \
|
||||
|
|
|
@ -1193,7 +1193,7 @@ static int vduse_dev_init(VduseDev *dev, const char *name,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static inline bool vduse_name_is_valid(const char *name)
|
||||
static inline bool vduse_name_is_invalid(const char *name)
|
||||
{
|
||||
return strlen(name) >= VDUSE_NAME_MAX || strstr(name, "..");
|
||||
}
|
||||
|
@ -1242,7 +1242,7 @@ VduseDev *vduse_dev_create_by_name(const char *name, uint16_t num_queues,
|
|||
VduseDev *dev;
|
||||
int ret;
|
||||
|
||||
if (!name || vduse_name_is_valid(name) || !ops ||
|
||||
if (!name || vduse_name_is_invalid(name) || !ops ||
|
||||
!ops->enable_queue || !ops->disable_queue) {
|
||||
fprintf(stderr, "Invalid parameter for vduse\n");
|
||||
return NULL;
|
||||
|
@ -1257,7 +1257,7 @@ VduseDev *vduse_dev_create_by_name(const char *name, uint16_t num_queues,
|
|||
ret = vduse_dev_init(dev, name, num_queues, ops, priv);
|
||||
if (ret < 0) {
|
||||
fprintf(stderr, "Failed to init vduse device %s: %s\n",
|
||||
name, strerror(ret));
|
||||
name, strerror(-ret));
|
||||
free(dev);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -1276,7 +1276,7 @@ VduseDev *vduse_dev_create(const char *name, uint32_t device_id,
|
|||
struct vduse_dev_config *dev_config;
|
||||
size_t size = offsetof(struct vduse_dev_config, config);
|
||||
|
||||
if (!name || vduse_name_is_valid(name) ||
|
||||
if (!name || vduse_name_is_invalid(name) ||
|
||||
!has_feature(features, VIRTIO_F_VERSION_1) || !config ||
|
||||
!config_size || !ops || !ops->enable_queue || !ops->disable_queue) {
|
||||
fprintf(stderr, "Invalid parameter for vduse\n");
|
||||
|
@ -1309,7 +1309,8 @@ VduseDev *vduse_dev_create(const char *name, uint32_t device_id,
|
|||
goto err_dev;
|
||||
}
|
||||
|
||||
strcpy(dev_config->name, name);
|
||||
strncpy(dev_config->name, name, VDUSE_NAME_MAX);
|
||||
dev_config->name[VDUSE_NAME_MAX - 1] = '\0';
|
||||
dev_config->device_id = device_id;
|
||||
dev_config->vendor_id = vendor_id;
|
||||
dev_config->features = features;
|
||||
|
@ -1330,7 +1331,7 @@ VduseDev *vduse_dev_create(const char *name, uint32_t device_id,
|
|||
ret = vduse_dev_init(dev, name, num_queues, ops, priv);
|
||||
if (ret < 0) {
|
||||
fprintf(stderr, "Failed to init vduse device %s: %s\n",
|
||||
name, strerror(ret));
|
||||
name, strerror(-ret));
|
||||
goto err;
|
||||
}
|
||||
|
||||
|
|
|
@ -982,7 +982,7 @@ _require_large_file()
|
|||
#
|
||||
_require_devices()
|
||||
{
|
||||
available=$($QEMU -M none -device help | \
|
||||
available=$($QEMU -M none -device help 2> /dev/null | \
|
||||
grep ^name | sed -e 's/^name "//' -e 's/".*$//')
|
||||
for device
|
||||
do
|
||||
|
@ -994,7 +994,7 @@ _require_devices()
|
|||
|
||||
_require_one_device_of()
|
||||
{
|
||||
available=$($QEMU -M none -device help | \
|
||||
available=$($QEMU -M none -device help 2> /dev/null | \
|
||||
grep ^name | sed -e 's/^name "//' -e 's/".*$//')
|
||||
for device
|
||||
do
|
||||
|
|
Loading…
Reference in New Issue