lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20121003162950.83D6111FB3D@bugzilla.kernel.org>
Date:	Wed,  3 Oct 2012 16:29:50 +0000 (UTC)
From:	bugzilla-daemon@...zilla.kernel.org
To:	linux-ext4@...r.kernel.org
Subject: [Bug 48251] Sorting directory entries

https://bugzilla.kernel.org/show_bug.cgi?id=48251


Theodore Tso <tytso@....edu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |tytso@....edu
         Resolution|                            |INVALID




--- Comment #1 from Theodore Tso <tytso@....edu>  2012-10-03 16:29:50 ---
There is never a guarantee that directory entries are listed in the same order
that they are created.  If you are writing a program where you are making this
assumption --- don't.  It's something which has never been true, for any file
system.

With ext3 if the directory hashing feature is enabled (which it is by default),
the directory entries are returned in hash order.  This was needed so we could
meet POSIX requirements for how readdir() behaves in the face of telldir() and
seekdir(), as well as files being created while iterating through the directory
entries using readdir().  (The short version is once you use a tree, if you do
a node split due to a file being created, and where half of the directory
entries in the node are copied to a new leaf block, it still must be the case
that each directory entry which was created before starting the readdir() pass
must be returned once and only once.   In order to guarantee this, we traverse
the tree in hash order.)

If you disable the directory hashing feature, then the files will be returned
_roughly_ in creation order; however, once you start deleting directory
entries, new files can get inserted into the unallocated portion of the
directory, which means readdir() won't be returning the files in creation
order, even though previously it would appear to be returning files in creation
order before any files had been deleted.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ