[lkml]   [2011]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] st_nlink after rmdir() and rename()
    Linus Torvalds <> writes:

    > On Thu, Mar 3, 2011 at 12:46 PM, OGAWA Hirofumi
    > <> wrote:
    >> But, some commands see i_nlink (IIRC, it's checking i_nlink == 2, to
    >> know empty dir or not).
    > Actually, that would be a serious bug in the application.
    > The traditional rule of thumb is that a directory with i_nlink==1 has
    > a "I'm not counting at all".
    > For example, I think that's the rule that 'find' uses to decide if a
    > directory can have subdirectories (and when it could try to stop
    > scanning early): i_nlink == 1 means that yes, it _can_ have
    > subdirectories, we just don't know how many.

    Yes. I think it is.

    > So checking i_nlink==2 is actually a user-level bug.

    We can call it's the user-level bug, but like you know, we will receive
    many complain if old behavior was broken. If you are saying i_nlink == 2
    is meaning the undefine, it sounds strange. (I was thinking it's why
    isofs is using i_nlink == 1 always. I.e. i_nlink >= 2 is defined
    behavior. Actually the reason would be "find" was checking i_nlink == 2

    >> So we have to simulate some levels. I guess you
    >> are not saying we don't need to care it at all though.
    > I'm saying that it should just work to set i_nlink=1 and not do
    > anything at all. Ever. It's a valid model for directory counts.
    > Seriously - that's what isofs does, for example. It does mean that
    > 'find' for certain cases gets bit more expensive, but on the other
    > hand, other operations are a lot _less_ expensive.
    > We might well try that as a FAT mount option, to let people decide
    > whether they really do want the "scan directories all the time" or
    > only the "let 'find' scan directories when it needs to" behavior.

    Yes. i_nlink == 1 is ok, IIRC (I checked last time at least. And I used
    i_nlink == 1 for exFAT). And I agree with you almost all, but isofs is
    read-only, the read-only is why I was not really sure.

    And I can't only see is why you refuse to make consistent behavior (if
    you are saying it). It's why I said if it's _really easy_.

    OGAWA Hirofumi <>

     \ /
      Last update: 2011-03-03 22:39    [W:0.023 / U:80.644 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site