summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBin Meng2022-09-08 15:28:15 +0200
committerKevin Wolf2022-10-27 20:14:11 +0200
commitebdebe47283dd7d20d88834f03f741758419c254 (patch)
tree8396e82bfba131d8ff4dd5d0678ab636a905d95e
parentblock: remove bdrv_try_set_aio_context and replace it with bdrv_try_change_ai... (diff)
downloadqemu-ebdebe47283dd7d20d88834f03f741758419c254.tar.gz
qemu-ebdebe47283dd7d20d88834f03f741758419c254.tar.xz
qemu-ebdebe47283dd7d20d88834f03f741758419c254.zip
block/nfs: Fix 32-bit Windows build
libnfs.h declares nfs_fstat() as the following for win32: int nfs_fstat(struct nfs_context *nfs, struct nfsfh *nfsfh, struct __stat64 *st); The 'st' parameter should be of type 'struct __stat64'. The codes happen to build successfully for 64-bit Windows, but it does not build for 32-bit Windows. Fixes: 6542aa9c75bc ("block: add native support for NFS") Fixes: 18a8056e0bc7 ("block/nfs: cache allocated filesize for read-only files") Signed-off-by: Bin Meng <bin.meng@windriver.com> Message-Id: <20220908132817.1831008-6-bmeng.cn@gmail.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rw-r--r--block/nfs.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/block/nfs.c b/block/nfs.c
index 596ebe98cb..ece22353ac 100644
--- a/block/nfs.c
+++ b/block/nfs.c
@@ -418,7 +418,11 @@ static int64_t nfs_client_open(NFSClient *client, BlockdevOptionsNfs *opts,
int flags, int open_flags, Error **errp)
{
int64_t ret = -EINVAL;
+#ifdef _WIN32
+ struct __stat64 st;
+#else
struct stat st;
+#endif
char *file = NULL, *strp = NULL;
qemu_mutex_init(&client->mutex);
@@ -781,7 +785,11 @@ static int nfs_reopen_prepare(BDRVReopenState *state,
BlockReopenQueue *queue, Error **errp)
{
NFSClient *client = state->bs->opaque;
+#ifdef _WIN32
+ struct __stat64 st;
+#else
struct stat st;
+#endif
int ret = 0;
if (state->flags & BDRV_O_RDWR && bdrv_is_read_only(state->bs)) {