14.05.2019, 17:01, "Markus Armbruster" <arm...@redhat.com>: > Yury Kotov <yury-ko...@yandex-team.ru> writes: > >> monitor_fdset_dup_fd_find_remove() and monitor_fdset_dup_fd_find() >> returns mon_fdset->id which is int64_t. Downcast from int64_t to int leads >> to > > Grammar nits: > > s/returns/return/ > s/Downcast/Downcasting/ > >> a bug with removing fd from fdset which id >= 2^32. > > s/which/with/ > >> So, fix return types for these function. >> >> Signed-off-by: Yury Kotov <yury-ko...@yandex-team.ru> >> --- > > If I feed your message to git-am, I get > > Applying: monitor: Fix return type of monitor_fdset_dup_fd_find > error: corrupt patch at line 12 > Patch failed at 0001 monitor: Fix return type of monitor_fdset_dup_fd_find > [...] > > Did you use git-send-email? > >> include/monitor/monitor.h | 2 +- >> monitor.c | 4 ++-- >> stubs/fdset.c | 2 +- >> 3 files changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h >> index c1b40a9cac..2872621afd 100644 >> --- a/include/monitor/monitor.h >> +++ b/include/monitor/monitor.h >> @@ -46,7 +46,7 @@ AddfdInfo *monitor_fdset_add_fd(int fd, bool has_fdset_= >> id, int64_t fdset_id, >> int monitor_fdset_get_fd(int64_t fdset_id, int flags); >> int monitor_fdset_dup_fd_add(int64_t fdset_id, int dup_fd); >> void monitor_fdset_dup_fd_remove(int dup_fd); >> -int monitor_fdset_dup_fd_find(int dup_fd); >> +int64_t monitor_fdset_dup_fd_find(int dup_fd); >> =20 > > Looks mime-damaged. > >> void monitor_vfprintf(FILE *stream, >> const char *fmt, va_list ap) GCC_FMT_ATTR(2, 0); >> diff --git a/monitor.c b/monitor.c >> index 4807bbe811..50e6e820d6 100644 >> --- a/monitor.c >> +++ b/monitor.c >> @@ -2585,7 +2585,7 @@ err: >> return -1; >> } >> =20 >> -static int monitor_fdset_dup_fd_find_remove(int dup_fd, bool remove) >> +static int64_t monitor_fdset_dup_fd_find_remove(int dup_fd, bool remove) >> { >> MonFdset *mon_fdset; >> MonFdsetFd *mon_fdset_fd_dup; >> @@ -2613,7 +2613,7 @@ err: >> return -1; >> } >> =20 >> -int monitor_fdset_dup_fd_find(int dup_fd) >> +int64_t monitor_fdset_dup_fd_find(int dup_fd) >> { >> return monitor_fdset_dup_fd_find_remove(dup_fd, false); >> } >> diff --git a/stubs/fdset.c b/stubs/fdset.c >> index 4f3edf2ea4..a1b8f41f62 100644 >> --- a/stubs/fdset.c >> +++ b/stubs/fdset.c >> @@ -7,7 +7,7 @@ int monitor_fdset_dup_fd_add(int64_t fdset_id, int dup_fd= >> ) >> return -1; >> } >> =20 >> -int monitor_fdset_dup_fd_find(int dup_fd) >> +int64_t monitor_fdset_dup_fd_find(int dup_fd) >> { >> return -1; >> } >> --=20 >> 2.21.0 > > The patch is complete because: > > * monitor_fdset_dup_fd_find_remove() is used only by > monitor_fdset_dup_fd_find(), which you fix as well, and > monitor_fdset_dup_fd_remove(), which ignores the return value. > > * monitor_fdset_dup_fd_find() is used only by qemu_close(), which stores > the return value in an int64_t. > > Reviewed-by: Markus Armbruster <arm...@redhat.com>
Sorry for corrupted patch, will be more careful next time. Because of Eric's suggestion, v2 will be completely different, so I think it is more correct not to keep the "Reviewed-by". Regards, Yury