This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Bug in rm -r with locked files


On Tue, Jan 21, 2003 at 11:25:19AM -0800, Randall R Schulz wrote:
>Shankar,
>
>At 11:05 2003-01-21, Shankar Unni wrote:
>>lhall@pop.ma.ultranet.com wrote:
>>>You may find the 'handle' utility from www.sysinternal.com a handy
>>>(no pun intended :-) ) tool for determining which files are opened
>>>by which processes.
>>
>>I don't think that was the primary issue.  The issue was that if a process 
>>is using a directory as its working directory (chdir()'ed into it), "rm 
>>-rf" goes into an infinite loop attempting to remove the directory (rather 
>>than print an error and move on).
>>
>>Definitely a bug, and still a bug.
>
>
>That, in fact, is a presumption. The Cygwin principals are aware of this 
>behavior and it is not new. It is a trade-off required to get POSIX-like 
>behavior from the "unlink" system call as emulated by Cygwin.
>
>Please review the discussions under the subject "Infinite Loop In "rm -fr" 
>When Busy File Encountered" on April 6, 2002 and "REPOST: unlink semantics" 
>from April 10, 2002.
>
>I'm not an expert, but this has come up more than once (I initiated the 
>April 6 round of discussions) and the upshot is that given the mismatch of 
>API semantics between Windows and POSIX, this is the best that can be done.

Correct.  I knew that if I waited long enough Randall would probably reply.
:-)

It's not a completely intractable problem.  I think that someone (Chris
January?) provided a workaround at one point.  "cygserver" could also
provide a possible solution someday.

So, there's hope but I don't see this being resolved anytime really soon.

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]