[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug 1904486] Re: resource leak in /net/tap.c
From: |
yuanjungong |
Subject: |
[Bug 1904486] Re: resource leak in /net/tap.c |
Date: |
Tue, 17 Nov 2020 06:08:26 -0000 |
** Description changed:
Hi,there might be a resource leak in function net_init_tap in
- /net/tap.c.
+ /net/tap.c. The version is 5.1.91.
- 811 fd = monitor_fd_param(monitor_cur(), tap->fd, errp);
- 812 if (fd == -1) {
- 813 return -1;
- 814 }
- 815
- 816 ret = qemu_try_set_nonblock(fd);
- 817 if (ret < 0) {
- 818 error_setg_errno(errp, -ret, "%s: Can't use file descriptor
%d",
- 819 name, fd);
- 820 return -1;
- 821 }
- 822
- 823 vnet_hdr = tap_probe_vnet_hdr(fd, errp);
- 824 if (vnet_hdr < 0) {
- 825 close(fd);
- 826 return -1;
- 827 }
- 828
- 829 net_init_tap_one(tap, peer, "tap", name, NULL,
- 830 script, downscript,
- 831 vhostfdname, vnet_hdr, fd, &err);
- 832 if (err) {
- 833 error_propagate(errp, err);
- 834 return -1;
- 835 }
+
+ 811 fd = monitor_fd_param(monitor_cur(), tap->fd, errp);
+ 812 if (fd == -1) {
+ 813 return -1;
+ 814 }
+ 815
+ 816 ret = qemu_try_set_nonblock(fd);
+ 817 if (ret < 0) {
+ 818 error_setg_errno(errp, -ret, "%s: Can't use file descriptor
%d",
+ 819 name, fd);
+ 820 return -1;
+ 821 }
+ 822
+ 823 vnet_hdr = tap_probe_vnet_hdr(fd, errp);
+ 824 if (vnet_hdr < 0) {
+ 825 close(fd);
+ 826 return -1;
+ 827 }
+ 828
+ 829 net_init_tap_one(tap, peer, "tap", name, NULL,
+ 830 script, downscript,
+ 831 vhostfdname, vnet_hdr, fd, &err);
+ 832 if (err) {
+ 833 error_propagate(errp, err);
+ 834 return -1;
+ 835 }
fd should be closed before return in line 820 and line 834, similar to
the implementation in line 825.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1904486
Title:
resource leak in /net/tap.c
Status in QEMU:
New
Bug description:
Hi,there might be a resource leak in function net_init_tap in
/net/tap.c. The version is 5.1.91.
811 fd = monitor_fd_param(monitor_cur(), tap->fd, errp);
812 if (fd == -1) {
813 return -1;
814 }
815
816 ret = qemu_try_set_nonblock(fd);
817 if (ret < 0) {
818 error_setg_errno(errp, -ret, "%s: Can't use file descriptor
%d",
819 name, fd);
820 return -1;
821 }
822
823 vnet_hdr = tap_probe_vnet_hdr(fd, errp);
824 if (vnet_hdr < 0) {
825 close(fd);
826 return -1;
827 }
828
829 net_init_tap_one(tap, peer, "tap", name, NULL,
830 script, downscript,
831 vhostfdname, vnet_hdr, fd, &err);
832 if (err) {
833 error_propagate(errp, err);
834 return -1;
835 }
fd should be closed before return in line 820 and line 834, similar to
the implementation in line 825.
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1904486/+subscriptions
- [Bug 1904486] [NEW] resource leak in /net/tap.c, yuanjungong, 2020/11/16
- [Bug 1904486] Re: resource leak in /net/tap.c,
yuanjungong <=
- [Bug 1904486] Re: resource leak in /net/tap.c, Alex Chen, 2020/11/17
- [Bug 1904486] Re: resource leak in /net/tap.c, Alex Chen, 2020/11/19
- [Bug 1904486] Re: resource leak in /net/tap.c, yuanjungong, 2020/11/19
- [Bug 1904486] Re: resource leak in /net/tap.c, yuanjungong, 2020/11/19
- [Bug 1904486] Re: resource leak in /net/tap.c, Peter Maydell, 2020/11/21