[glibc] Deleted branch azanella/bz23960
Adhemerval Zanella
azanella@sourceware.org
Thu Apr 16 13:20:28 GMT 2020
The branch 'azanella/bz23960' was deleted.
It previously pointed to:
5d2edfbc17... linux: Use getdents64 on readdir64 compat implementation
Diff:
!!! WARNING: THE FOLLOWING COMMITS ARE NO LONGER ACCESSIBLE (LOST):
-------------------------------------------------------------------
5d2edfb... linux: Use getdents64 on readdir64 compat implementation
845ad64... linux: Add __old_readdir64_unlocked
583ab01... linux: Add __readdir64_unlocked
e331520... linux: Set internal DIR filepos as off64_t [BZ #23960, BZ #
5953fcf... linux: Use getdents64 on non-LFS readdir
c47a5be... linux: Use internal DIR locks when accessing filepos on tel
09a38c4... linux: Add __readdir_unlocked
85030d0... linux: Simplify opendir buffer allocation
8d7d1c1... linux: Move posix dir implementations to Linux
commit 5d2edfbc172b8788fcfcffbafc650cd313ec1f4d
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Tue Apr 14 13:54:07 2020 -0300
linux: Use getdents64 on readdir64 compat implementation
It uses a similar strategy from the non-LFS readdir that also
uses getdents64 internally and reserves some space on the allocated
internal DIR buffer to be used as a temporary buffer. The kernel
obtained dirent64 data are copied to the temporary buffer for each
readdir compat call.
It allows to remove __old_getdents64.
Checked on i686-linux-gnu.
commit 845ad6422132a8e3aadb365ea414f6ba5b872606
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Tue Apr 14 11:14:22 2020 -0300
linux: Add __old_readdir64_unlocked
And use it __old_readdir64_r.
Checked on i686-linux-gnu.
commit 583ab0117a68c5c19f8e1b17508faaf14cda6c1f
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Mon Apr 13 08:35:40 2020 -0300
linux: Add __readdir64_unlocked
And use it on readdir_r implementation.
Checked on i686-linux-gnu.
commit e3315202b5a1f0570d85696202a5b887362496a6
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Mon Apr 13 18:09:20 2020 -0300
linux: Set internal DIR filepos as off64_t [BZ #23960, BZ #24050]
It allows to obtain the expected entry offset on telldir and set
it correctly on seekdir on platforms where long int is smaller
than off64_t.
On such cases telldir will mantain an internal list that maps the
DIR object off64_t offsets to the returned long int (the function
return value). The seekdir will then set the correct offset from
the internal list using the telldir as the list key.
It also removes the overflow check on readdir and the returned value
will be truncated by the non-LFS off_t size. As Joseph has noted
in BZ #23960 comment #22, d_off is an opaque value and since
telldir/seekdir works regardless of the returned dirent d_off value.
Finally it removed the requirement to check for overflow values on
telldir (BZ #24050).
Checked on i686-linux-gnu and x86_64-linux-gnu.
commit 5953fcf52f5dc77f6bed98d2eb470c40215a2d36
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Mon Apr 13 08:06:57 2020 -0300
linux: Use getdents64 on non-LFS readdir
It reserves some space on the allocated internal buffer to be
used as a the returned dirent struct. The kernel obtained dirent64
struct are copied to the temporary buffer on each readdir call.
The overflow test is moved once the dirent64 entry is copied
to the temporary buffer, and a subsequent readdir will obtain the
next entry. The idea is an overflow fails to return the entry on
readdir, but a next readdir might still obtain the next entry.
(for filesystem that does not have the concept of sequential d_off,
such as ext4).
Checked on x86_64-linux-gnu and i686-linux-gnu.
commit c47a5befab08442d9c46b5afc2cddc7eff3cf47a
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Tue Apr 14 17:41:56 2020 -0300
linux: Use internal DIR locks when accessing filepos on telldir
Since it might change during a readdir call.
Checked on x86_64-linux-gnu and i686-linux-gnu.
commit 09a38c487d8012bac78f82c578489a87956005e3
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Tue Apr 14 17:22:29 2020 -0300
linux: Add __readdir_unlocked
And use it on readdir_r implementation.
Checked on i686-linux-gnu.
commit 85030d0a99ac6fa42049ff001485959e125ee264
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Sun Apr 12 17:42:35 2020 -0300
linux: Simplify opendir buffer allocation
THe fallback allocation is removed, so the possible size constraint
should be analized just once; __alloc_dir assumes that 'statp'
argument is non-null, and the max_buffer_size move to close its
used.
Checked on x86_64-linux-gnu and i686-linux-gnu.
commit 8d7d1c1d282ce9993b990ba285a0cd6d181d7604
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Sat Apr 11 17:07:11 2020 -0300
linux: Move posix dir implementations to Linux
This generic implementation already expects a getdents API which
is Linux specific. It also allows simplify it by assuming
_DIRENT_HAVE_D_RECLEN and _DIRENT_HAVE_D_OFF support.
The readdir are also expanded on each required implementation,
futher fixes and improvements will make parametrize the
implementation more complex.
Checked on x86_64-linux-gnu and i686-linux-gnu.
More information about the Glibc-cvs
mailing list