From: Greg Kurz <1336794@bugs.launchpad.net>
To: qemu-devel@nongnu.org
Subject: [Bug 1336794] Re: 9pfs does not honor open file handles on unlinked files
Date: Tue, 26 May 2020 11:58:15 -0000 [thread overview]
Message-ID: <159049429575.20723.3908956366925491583.malone@soybean.canonical.com> (raw)
In-Reply-To: 20140702135258.23882.15100.malonedeb@soybean.canonical.com
I haven't worked on this topic in years.
** Changed in: qemu
Status: In Progress => Confirmed
** Changed in: qemu
Assignee: Greg Kurz (gkurz) => (unassigned)
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1336794
Title:
9pfs does not honor open file handles on unlinked files
Status in QEMU:
Confirmed
Status in Ubuntu:
Confirmed
Bug description:
This was originally filed over here:
https://bugzilla.redhat.com/show_bug.cgi?id=1114221
The open-unlink-fstat idiom used in some places to create an anonymous
private temporary file does not work in a QEMU guest over a virtio-9p
filesystem.
Version-Release number of selected component (if applicable):
qemu-kvm-1.6.2-6.fc20.x86_64
qemu-system-x86-1.6.2-6.fc20.x86_64
(those are fedora RPMs)
How reproducible:
Always. See this example C program:
https://bugzilla.redhat.com/attachment.cgi?id=913069
Steps to Reproduce:
1. Export a filesystem with virt-manager for the guest.
(type: mount, driver: default, mode: passthrough)
2. Start guest and mount that filesystem
(mount -t 9p -o trans=virtio,version=9p2000.L ...)
3. Run a program that uses open-unlink-fstat
(in my case it was trying to compile Perl 5.20)
Actual results:
fstat fails:
open("/home/tst/filename", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
unlink("/home/tst/filename") = 0
fstat(3, 0x23aa1a8) = -1 ENOENT (No such file or directory)
close(3)
Expected results:
open("/home/tst/filename", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
unlink("/home/tst/filename") = 0
fstat(3, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
close(3)
Additional info:
There was a patch put into the kernel back in '07 to handle this very
problem for other filesystems; maybe its helpful:
http://lwn.net/Articles/251228/
There is also a thread on LKML from last December specifically about
this very problem:
https://lkml.org/lkml/2013/12/31/163
There was a discussion on the QEMU list back in '11 that doesn't seem
to have come to a conclusion, but did provide the test program that
i've attached to this report:
http://marc.info/?l=qemu-devel&m=130443605720648&w=2
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1336794/+subscriptions
next prev parent reply other threads:[~2020-05-26 12:10 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-02 13:52 [Qemu-devel] [Bug 1336794] [NEW] 9pfs does not honor open file handles on unlinked files Cole Robinson
2015-04-10 12:30 ` [Qemu-devel] [Bug 1336794] " Mark Glines
2015-04-12 12:42 ` Eric Van Hensbergen
2015-04-12 14:09 ` Al Viro
2015-04-12 19:08 ` Eric Van Hensbergen
2015-04-13 8:27 ` [Qemu-devel] [V9fs-developer] " Dominique Martinet
2015-04-13 16:05 ` Eric Van Hensbergen
2015-04-14 16:07 ` Al Viro
2015-04-14 16:19 ` Eric Van Hensbergen
2015-04-14 21:44 ` Al Viro
2015-04-15 11:28 ` Dominique Martinet
2015-04-15 14:17 ` Eric Van Hensbergen
2015-04-12 12:45 ` [Qemu-devel] " Eric Van Hensbergen
2016-05-05 20:54 ` Server Angels
2016-05-25 11:14 ` Greg Kurz
2016-05-25 11:51 ` Sean Keeney
2016-05-05 21:01 ` Server Angels
2016-05-24 14:43 ` Launchpad Bug Tracker
2016-06-02 11:59 ` Greg Kurz
2016-06-25 8:25 ` Greg Kurz
2016-06-25 9:24 ` Greg Kurz
2017-08-04 6:03 ` Maxim Kuvyrkov
2017-08-04 8:00 ` Greg Kurz
2018-11-26 21:47 ` Alexander Gretha
2018-11-27 8:07 ` Greg Kurz
2018-11-28 21:20 ` Alexander Gretha
2020-05-26 11:58 ` Greg Kurz [this message]
2020-05-27 6:03 ` Greg Kurz
2020-12-10 8:47 ` Thomas Huth
2020-12-10 11:48 ` Thomas Huth
2021-05-03 16:40 ` Thomas Huth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=159049429575.20723.3908956366925491583.malone@soybean.canonical.com \
--to=1336794@bugs.launchpad.net \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).