mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 02:24:58 -06:00
hw/9pfs: Add yield support for preadv coroutine
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
This commit is contained in:
parent
8c158561a0
commit
7eafdcc96c
2 changed files with 19 additions and 0 deletions
|
@ -144,3 +144,20 @@ int v9fs_co_pwritev(V9fsState *s, V9fsFidState *fidp,
|
|||
});
|
||||
return err;
|
||||
}
|
||||
|
||||
int v9fs_co_preadv(V9fsState *s, V9fsFidState *fidp,
|
||||
struct iovec *iov, int iovcnt, int64_t offset)
|
||||
{
|
||||
int fd;
|
||||
int err;
|
||||
|
||||
fd = fidp->fs.fd;
|
||||
v9fs_co_run_in_worker(
|
||||
{
|
||||
err = s->ops->preadv(&s->ctx, fd, iov, iovcnt, offset);
|
||||
if (err < 0) {
|
||||
err = -errno;
|
||||
}
|
||||
});
|
||||
return err;
|
||||
}
|
||||
|
|
|
@ -91,4 +91,6 @@ extern int v9fs_co_symlink(V9fsState *, V9fsFidState *, const char *,
|
|||
extern int v9fs_co_link(V9fsState *, V9fsString *, V9fsString *);
|
||||
extern int v9fs_co_pwritev(V9fsState *, V9fsFidState *,
|
||||
struct iovec *, int, int64_t);
|
||||
extern int v9fs_co_preadv(V9fsState *, V9fsFidState *,
|
||||
struct iovec *, int, int64_t);
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue