Description of problem: When I call pvs, vgs or lvs from scripts in a bash command substitution, then I get an error of the following form for each invocation of these commands: File descriptor 3 (/tmp/sh-thd-871826097) leaked on pvs invocation. Parent PID 1769: /bin/bash For example, I call these commands in a command substitution to include the result in the body of an e-mail. See Steps to Reproduce. Version-Release number of selected component (if applicable): lvm2-2.02.167-3.fc25.x86_64 How reproducible: Always Steps to Reproduce: 1. Create a shell script "mailtestscript" with following content: #!/bin/bash Mail -s "mail test with pvs vgs lvs" myname <<EOF LVM physical volumes: `pvs` LVM volume groups: `vgs` LVM logical volumes: `lvs` EOF 2. Substitute "myname" by a valid e-mail address of your own (to receive the e-mail which the script will send). 3. Make the script executable: chmod u+x mailtestscript 4. Run the script: ./mailtestscript Actual results: Output of the script are messages like this: File descriptor 3 (/tmp/sh-thd-871866956) leaked on pvs invocation. Parent PID 6142: /bin/bash File descriptor 3 (/tmp/sh-thd-871866956) leaked on vgs invocation. Parent PID 6142: /bin/bash File descriptor 3 (/tmp/sh-thd-871866956) leaked on lvs invocation. Parent PID 6142: /bin/bash It sends an e-mail (as expected). Expected results: The script should print nothing to standard out and standard error. It should send only an e-mail. Additional info: This happens at least since a longer time, at least since Fedora 24, maybe even on previous version. I have not reported is until now because the commands have been working as expected, besides of these error message.
I'd say it's rather a misuse of lvm2 commands. You should prepare resulting text output ahead of Mail command. Otherwise you have no idea what has 'failed' during creation. But if there is a bug - it's bug in bash which should not be exposing FD for its <<EOF magic to executed command.
Created attachment 1241774 [details] Do not leak heredoc fd to child processes
I posted my patch upstream http://lists.gnu.org/archive/html/bug-bash/2017-01/msg00026.html
bash-4.4.12-4.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-075ed3aef8
bash-4.4.12-4.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-075ed3aef8
bash-4.4.12-4.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.