From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: Yoshinao Muramatsu <ysno@ac.auone-net.jp>
Cc: cygwin-patches@cygwin.com
Subject: Re: [PATCH 0/3] fix unlink/rename failure in hyper-v container
Date: Mon, 20 Mar 2023 21:37:09 +0100 [thread overview]
Message-ID: <ZBjD9exM9ZBGDzK3@calimero.vinschen.de> (raw)
In-Reply-To: <ZBhy7E4vKHTRNW6k@calimero.vinschen.de>
On Mar 20 15:51, Corinna Vinschen wrote:
> On Mar 20 22:06, Yoshinao Muramatsu wrote:
> > On 2023/03/18 19:01, Corinna Vinschen wrote:
> > > FILE_SUPPORTS_OPEN_BY_FILE_ID flag is missing.
> > >
> > > NTFS always supports this since Windows 2003! So we could
> > > use this flag as indicator that, probably, POSIX rename/unlink
> > > won't work.
> >
> > I thought that if there was no FILE_SUPPORTS_OPEN_BY_FILE_ID
> > and OpenByFileId() worked, it would be a Signature,
> > but the result was different.
> >
> > I tested OpenByFileID() on a bind-mounted directory, it was failed.
> > Maybe it's because of the path isolation.
> > ltsc2022 process isolation says "I support it" but it not works.
> > Okay, it's not a security issue. So now I'm writing this here.
> >
> > Unfortunately, the state of the FILE_SUPPORTS_OPEN_BY_FILE_ID flag
> > does not match the actual behavior, so I fear it may be corrected.
>
> Actually, it doesn't matter if open by fileID works. The fact that
> this flag is missing *is* a pattern we can use. It allows us to
> distinguish the hyper-v isolated NTFS from a standard NTFS and thus,
> we can immediately do the right thing.
>
> > ps
> > Corinna, I read the new email about fs_info::update patch
> > you posted while I was writing this.
> > I will report back when I test it, but it may take some time
> > as I usually use msys2 and don't have a cygwin development environment.
>
> No worries!
Wait. I might have misunderstood something. This is about accessing a
host NTFS from inside a Hyper-V isolated process, right? So from the
point of view of the Hyper-V isolated Cygwin process, the NTFS
filesystem is a *local* filesystem? Or is it mapped as a remote
filesystem?
The difference is important, because my patch would only change the
outcome if the Cygwin process in the Hyper-V container gets the
NTFS filesystem presented as a remote filesystem.
I noticed this problem when I was looking into implementing the
FILE_SUPPORTS_OPEN_BY_FILE_ID flag checking. I have a different
solution from the one I pushed today in the loop which probably
makesmuch more sense and is independent of the subtil difference
between loca and remote FS.
Corinna
next prev parent reply other threads:[~2023-03-20 20:37 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-17 14:43 YO4
2023-03-17 14:43 ` [PATCH 1/3] fix unlink in container YO4
2023-03-17 14:43 ` [PATCH 2/3] fix rename " YO4
2023-03-17 14:43 ` [PATCH 3/3] log disabling posix semantics YO4
2023-03-17 19:15 ` [PATCH 0/3] fix unlink/rename failure in hyper-v container Corinna Vinschen
2023-03-18 5:29 ` Yoshinao Muramatsu
2023-03-18 10:01 ` Corinna Vinschen
2023-03-20 13:06 ` Yoshinao Muramatsu
2023-03-20 14:51 ` Corinna Vinschen
2023-03-20 14:54 ` Corinna Vinschen
2023-03-20 20:37 ` Corinna Vinschen [this message]
2023-03-21 15:32 ` Yoshinao Muramatsu
2023-03-21 17:58 ` Corinna Vinschen
2023-03-23 16:40 ` Yoshinao Muramatsu
2023-03-24 11:54 ` Corinna Vinschen
2023-03-24 13:20 ` Jon Turney
2023-03-24 13:22 ` Corinna Vinschen
2023-03-24 14:20 ` Jon Turney
2023-03-24 13:48 ` Yoshinao Muramatsu
2023-03-20 11:50 ` [PATCH 0/3] fix unlink/rename failure in hyper-v container(regenerate) Yoshinao Muramatsu
2023-03-20 11:51 ` [PATCH 1/3] fix unlink in container Yoshinao Muramatsu
2023-03-20 11:51 ` [PATCH 2/3] fix rename " Yoshinao Muramatsu
2023-03-20 11:51 ` [PATCH 3/3] log disabling posix semantics Yoshinao Muramatsu
2023-03-20 12:12 ` [PATCH 0/3] fix unlink/rename failure in hyper-v container(regenerate) Corinna Vinschen
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=ZBjD9exM9ZBGDzK3@calimero.vinschen.de \
--to=corinna-cygwin@cygwin.com \
--cc=cygwin-patches@cygwin.com \
--cc=ysno@ac.auone-net.jp \
/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 read-only IMAP folder(s) and NNTP newsgroup(s).