diff options
author | Stefan Hajnoczi | 2020-05-11 20:36:29 +0200 |
---|---|---|
committer | Stefan Hajnoczi | 2020-05-18 19:16:00 +0200 |
commit | de137e44f75d9868f5b548638081850f6ac771f2 (patch) | |
tree | a65668f7666bb2b8c4c25f073095dee296db862c /include/block | |
parent | tests/fuzz: Extract ioport_fuzz_qtest() method (diff) | |
download | qemu-de137e44f75d9868f5b548638081850f6ac771f2.tar.gz qemu-de137e44f75d9868f5b548638081850f6ac771f2.tar.xz qemu-de137e44f75d9868f5b548638081850f6ac771f2.zip |
aio-posix: don't duplicate fd handler deletion in fdmon_io_uring_destroy()
The io_uring file descriptor monitoring implementation has an internal
list of fd handlers that are pending submission to io_uring.
fdmon_io_uring_destroy() deletes all fd handlers on the list.
Don't delete fd handlers directly in fdmon_io_uring_destroy() for two
reasons:
1. This duplicates the aio-posix.c AioHandler deletion code and could
become outdated if the struct changes.
2. Only handlers with the FDMON_IO_URING_REMOVE flag set are safe to
remove. If the flag is not set then something still has a pointer to
the fd handler. Let aio-posix.c and its user worry about that. In
practice this isn't an issue because fdmon_io_uring_destroy() is only
called when shutting down so all users have removed their fd
handlers, but the next patch will need this!
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Tested-by: Oleksandr Natalenko <oleksandr@redhat.com>
Message-id: 20200511183630.279750-2-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'include/block')
0 files changed, 0 insertions, 0 deletions