Valgrind Invalid File Descriptor In Syscall Close

Package: qbittorrent;Maintainer for qbittorrent is Cristian Greco <cristian@debian.org>; Source for qbittorrent is src:qbittorrent (PTS, buildd, popcon).

Valgrind Invalid File Descriptor In Syscall Close

Reported by: qbittorrent <qbitt@safetymail.info>

Date: Sun, 17 Feb 2013 04:33:02 UTC

Severity: important

10094 Warning: invalid file descriptor 1028 in syscall close 10094 Warning: invalid file descriptor 1029 in syscall close Linux 10093 10093 HEAP SUMMARY: 10093 in use at exit: 861,318 bytes in 5,903 blocks 10093 total heap usage: 71,738 allocs, 65,835 frees, 10,611,196 bytes allocated 10093 10093 LEAK SUMMARY. Valgrind is an “instrumentation framework for building dynamic analysis tools”, according to Valgrind’s official documentation. Valgrind comes with a bunch of tools, but in this page we will only focus on one of those tools: Memcheck. 6168 Warning: invalid file descriptor 1019 in syscall socket 6168 Warning: invalid file descriptor 1019 in syscall open 6168 Warning: invalid file descriptor 1019 in syscall open. For each of those requests, valgrind reports the warnings shown above but doesn't report the 'invalid. This shows up as a Valgrind warning 18197 Warning: invalid file descriptor -1 in syscall close 18197 at 0x5F6E5BD:??? (syscall-template.S:84) 18197. MARS maintains file descriptors internally and allocates them starting with 3. File descriptors 0, 1 and 2 are always open for: reading from standard input, writing to standard output, and writing to standard error, respectively (new in release 4.3).

Valgrind invalid file descriptor in syscall close command

Tags: upstream

Found in version qbittorrent/2.9.8-1

Valgrind Invalid File Descriptor In Syscall Closer

Reply or subscribe to this bug.

View this report as an mbox folder, status mbox, maintainer mbox

Report forwardedto debian-bugs-dist@lists.debian.org, qbitt@safetymail.info, Cristian Greco <cristian@debian.org>:
Bug#700764; Package qbittorrent. (Sun, 17 Feb 2013 04:33:04 GMT) (full text, mbox, link).

Acknowledgement sentto qbittorrent <qbitt@safetymail.info>:
New Bug report received and forwarded. Copy sent to qbitt@safetymail.info, Cristian Greco <cristian@debian.org>. (Sun, 17 Feb 2013 04:33:04 GMT) (full text, mbox, link).

Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

Valgrind Invalid File Descriptor In Syscall Closed

To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: qbittorrent crashes without user interaction

Information forwardedto debian-bugs-dist@lists.debian.org, Cristian Greco <cristian@debian.org>:
Bug#700764; Package qbittorrent. (Sat, 19 Oct 2013 14:54:05 GMT) (full text, mbox, link).

Acknowledgement sentto sledgehammer999 <sledgehammer999@qbittorrent.org>:
Extra info received and forwarded to list. Copy sent to Cristian Greco <cristian@debian.org>. (Sat, 19 Oct 2013 14:54:05 GMT) (full text, mbox, link).

Message #10 received at 700764@bugs.debian.org (full text, mbox, reply):

From: sledgehammer999 <sledgehammer999@qbittorrent.org>
Subject: This is a libtorrent bug

Information forwardedto debian-bugs-dist@lists.debian.org, andrew@soltech.net.au, Cristian Greco <cristian@debian.org>:
Bug#700764; Package qbittorrent. (Sun, 08 Mar 2015 06:03:05 GMT) (full text, mbox, link).

Acknowledgement sentto Andrew <andrew@soltech.net.au>:
Extra info received and forwarded to list. Copy sent to andrew@soltech.net.au, Cristian Greco <cristian@debian.org>. (Sun, 08 Mar 2015 06:03:05 GMT) (full text, mbox, link).

Message #15 received at 700764@bugs.debian.org (full text, mbox, reply):

To: Debian Bug Tracking System <700764@bugs.debian.org>

Valgrind Invalid File Descriptor In Syscall Closet

Subject: Re: qbittorrent crashes without user interaction

Send a report that this bug log contains spam.

Debian bug tracking system administrator <owner@bugs.debian.org>.Last modified:Thu Jun 3 17:28:16 2021; Machine Name:buxtehude

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham,1997,2003 nCipher Corporation Ltd,1994-97 Ian Jackson,2005-2017 Don Armstrong, and many other contributors.

This shows up as a Valgrind warning

Valgrind Invalid File Descriptor In Syscall Closed

18197 Warning: invalid file descriptor -1 in syscall close()
18197 at 0x5F6E5BD: ??? (syscall-template.S:84)
18197 by 0xF95F34: inline_mysql_socket_close (mysql_socket.h:1090)
18197 by 0xF96AF3: vio_shutdown (viosocket.c:490)
18197 by 0x7C6BE0: THD::disconnect() (sql_class.cc:2057)
18197 by 0x637486: close_connection(THD*, unsigned int) (mysqld.cc:2886)
18197 by 0x7D63E3: do_handle_one_connection(THD*) (sql_connect.cc:1547)
18197 by 0x7D5E57: handle_one_connection (sql_connect.cc:1444)
18197 by 0xB98416: pfs_spawn_thread (pfs.cc:1860)
18197 by 0x5F656F9: start_thread (pthread_create.c:333)
18197 by 0x6B22B5C: clone (clone.S:109)

Valgrind Invalid File Descriptor In Syscall Close

on e.g.

Valgrind Invalid File Descriptor In Syscall Closets

rpl.rpl_semi_sync_shutdown_hang 'mix' [ fail ] Found warnings/errors in server log file!
rpl.rpl_gtid_mts_relay_log_recovery_auto_pos_on_off 'mix' w3 [ fail ] Found warnings/errors in server log file!
rpl.rpl_report_port 'mix' w1 [ fail ] Found warnings/errors in server log file!
rpl.rpl_recovery_replicate_same_server_id 'mix' w4 [ fail ] Found warnings/errors in server log file!
rpl.rpl_change_master_crash_safe 'mix' w2 [ fail ] Found warnings/errors in server log file!
rpl.rpl_change_master 'mix' w1 [ fail ] Found warnings/errors in server log file!
rpl.rpl_alter_repository 'mix' w3 [ fail ] Found warnings/errors in server log file!
rpl.rpl_gtid_deployment_step 'mix' w1 [ fail ] Found warnings/errors in server log file!
rpl.rpl_recovery_replicate_same_server_id 'row' w4 [ fail ] Found warnings/errors in server log file!
main.mysql_client_test w4 [ fail ] Found warnings/errors in server log file!
auth_sec.mysql_native_plugin w3 [ fail ] Found warnings/errors in server log file!

Valgrind Invalid File Descriptor In Syscall Close Command

The reason is that THD::disconnect is getting called twice, once from server thread-killing thread:
kill_server_threads -> kill_server -> close_connections -> close_connection -> THD::disconnect;
and the second time from the query thread itself, as in the above stacktrace.