To: Kirk McKusick <[EMAIL PROTECTED]>
        cc: "[iso-8859-2] Branko F. Gračnar" <[EMAIL PROTECTED]>,
                Paul Saab <[EMAIL PROTECTED]>,
                Robert Watson <[EMAIL PROTECTED]>,
                [EMAIL PROTECTED]
        Subject: Re: mksnap_ffs, snapshot issues, again 
        From: "Poul-Henning Kamp" <[EMAIL PROTECTED]>
        In-Reply-To: Your message of "Sat, 23 Aug 2003 01:32:38 PDT."
        Date: Sat, 23 Aug 2003 11:01:28 +0200
        X-ASK-Info: Whitelist match

        In message <[EMAIL PROTECTED]>,
            Kirk McKusick writes:

        >But, to get to the problem that you are having with accessing your
        >filesystem. The problem is that although the filesystem is only
        >locked briefly, the snapshot file is locked for the entire 48 minutes.
        >Thus, if you touch the snapshot file (by for example doing a "stat"
        >on it), then the process doing the stat will hang for 48 minutes.

        Isn't there some way we can loosen this aspect up ?

        Either by having stat know about it and return approximate info or
        simply by failing ? (I pressume that making the sleep interruptible
        would break all sorts of standards)

        -- 
        Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
        [EMAIL PROTECTED]         | TCP/IP since RFC 956
        FreeBSD committer       | BSD since 4.3-tahoe    

The race to the root problem in general could be largely solved
by changing lookup (VOP_LOOKUP really) to release the lock that
it holds on the directory before blocking on the next component
in the case where it is doing a lookup without intent to create.
If we did this, then a single locked node would have lookups
pile up on itself, but could not cascade to the root. A related
change would be to do an interruptable locking request on the
node so that if one did an `ls -l foo' where foo was say a
locked snapshot, it would be possible to interrupt it.

        ~Kirk
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to