delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/07/16/13:15:52

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-3.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS
X-Spam-Check-By: sourceware.org
To: cygwin AT cygwin DOT com
From: Eric Blake <ebb9 AT byu DOT net>
Subject: Re: MVFS results
Date: Thu, 16 Jul 2009 17:15:26 +0000 (UTC)
Lines: 57
Message-ID: <loom.20090716T165527-559@post.gmane.org>
References: <loom DOT 20090715T192219-408 AT post DOT gmane DOT org> <20090715204831 DOT GA27613 AT calimero DOT vinschen DOT de> <loom DOT 20090715T213245-387 AT post DOT gmane DOT org> <20090716090703 DOT GH27613 AT calimero DOT vinschen DOT de> <loom DOT 20090716T133741-21 AT post DOT gmane DOT org> <20090716151121 DOT GO27613 AT calimero DOT vinschen DOT de> <loom DOT 20090716T154525-611 AT post DOT gmane DOT org> <20090716165112 DOT GS27613 AT calimero DOT vinschen DOT de>
Mime-Version: 1.0
User-Agent: Loom/3.14 (http://gmane.org/)
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Corinna Vinschen <corinna-cygwin <at> cygwin.com> writes:

> > There are still issues trying to delete open files, where readdir()
> > and stat() still see the file after it has been deleted, but utimes()
> > and open() fail because it has been marked for deletion.  Do you need
> > an strace() of the rm and what it attempted with the recycle bin?  At
> 
> Erm... it tries to use the recycle bin?  Why?  AFAICS, MVFS has the
> FILE_REMOTE_DEVICE device characteristic set, so it's logically always a
> remote drive and unlink_nt does not try to move the file to the recycle
> bin if it's a remote drive.  Can you please check again?
> 

That was me speaking on assumptions rather than checking facts.  I hadn't done 
any strace or procmon on the rm with open file handle, but when I did just that 
right now, I see you are correct that since the filesystem is remote, there was 
no attempt made to involve a recycle bin (just a SetDispositionInformationFile 
with argument Delete:true).

> > Maybe for MVFS it would be better to
> > return EBUSY instead of letting unlink succeed when the handle is
> > still open by another process:
> 
> That would be something I could add, but this isn't overly important
> right now, IMHO.  Just bug me with this again at one point.  I assume
> this can be a generic solution as well for any remote filesystem.

Agreed that this would be nice, but I'm okay with post 1.7.1.

> I'm going to check in the changes to unlink_nt for now and add a MVFS
> filesystem check.  Then I'll always create winsymlinks when the target
> filesystem is MVFS.  That should deal with the original symlink problem
> reported in the other thread.  Of course, I need you to test this, if
> you don't mind.

I don't mind (my day job makes me use clearcase on a regular basis, but I do 
everything in cygwin by preference.  So making cygwin work nicer with MVFS will 
make me more proficient at work).  But testing cygwin patches can certainly be 
a bit awkward, given that the company firewall blocks ssh and CVS (and I can't 
test at home, given that I have no desire to pay IBM for a personal MVFS 
server ;).  I've had to manually apply your suggested patches against the 1.7.0-
51 source tarball (or the latest snapshot tarball) and/or build at home and 
sneakernet it in to work.  I look forward to the day when ubertree sourceware 
repository transitions to git or similar (at which point I could then use http 
to get at the repository without running into the firewall).

> 
> Next is the cp -p vs. touch problem.  Can you try to find out what's
> the difference?  If strace doesn't help alone, procmon should show
> the difference quite nicely.

OK, give me a while to try and expose something relevant.

-- 
Eric Blake




--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019