git: aa411f6ba17b - stable/13 - cache: assorted cleanups
Mateusz Guzik
mjg at FreeBSD.org
Mon Feb 1 12:40:46 UTC 2021
The branch stable/13 has been updated by mjg:
URL: https://cgit.FreeBSD.org/src/commit/?id=aa411f6ba17b91af720129bd7593df4c7093f8a4
commit aa411f6ba17b91af720129bd7593df4c7093f8a4
Author: Mateusz Guzik <mjg at FreeBSD.org>
AuthorDate: 2021-01-24 20:04:01 +0000
Commit: Mateusz Guzik <mjg at FreeBSD.org>
CommitDate: 2021-02-01 12:39:15 +0000
cache: assorted cleanups
(cherry picked from commit 868643e7229b7959024880cda396fef87602b948)
---
sys/kern/vfs_cache.c | 40 +++++++++++++++++++++-------------------
1 file changed, 21 insertions(+), 19 deletions(-)
diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index 9d3b935a3047..e3098ac7c5d5 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -5079,54 +5079,54 @@ cache_fplookup_is_mp(struct cache_fpl *fpl)
*/
#ifdef INVARIANTS
static void
-cache_fpl_pathlen_dec(struct cache_fpl *fpl)
+cache_fpl_pathlen_add(struct cache_fpl *fpl, size_t n)
{
- cache_fpl_pathlen_sub(fpl, 1);
+ fpl->debug.ni_pathlen += n;
+ KASSERT(fpl->debug.ni_pathlen <= PATH_MAX,
+ ("%s: pathlen overflow to %zd\n", __func__, fpl->debug.ni_pathlen));
}
static void
-cache_fpl_pathlen_inc(struct cache_fpl *fpl)
+cache_fpl_pathlen_sub(struct cache_fpl *fpl, size_t n)
{
- cache_fpl_pathlen_add(fpl, 1);
+ fpl->debug.ni_pathlen -= n;
+ KASSERT(fpl->debug.ni_pathlen <= PATH_MAX,
+ ("%s: pathlen underflow to %zd\n", __func__, fpl->debug.ni_pathlen));
}
static void
-cache_fpl_pathlen_add(struct cache_fpl *fpl, size_t n)
+cache_fpl_pathlen_inc(struct cache_fpl *fpl)
{
- fpl->debug.ni_pathlen += n;
- KASSERT(fpl->debug.ni_pathlen <= PATH_MAX,
- ("%s: pathlen overflow to %zd\n", __func__, fpl->debug.ni_pathlen));
+ cache_fpl_pathlen_add(fpl, 1);
}
static void
-cache_fpl_pathlen_sub(struct cache_fpl *fpl, size_t n)
+cache_fpl_pathlen_dec(struct cache_fpl *fpl)
{
- fpl->debug.ni_pathlen -= n;
- KASSERT(fpl->debug.ni_pathlen <= PATH_MAX,
- ("%s: pathlen underflow to %zd\n", __func__, fpl->debug.ni_pathlen));
+ cache_fpl_pathlen_sub(fpl, 1);
}
#else
-static void __always_inline
-cache_fpl_pathlen_dec(struct cache_fpl *fpl)
+static void
+cache_fpl_pathlen_add(struct cache_fpl *fpl, size_t n)
{
}
-static void __always_inline
-cache_fpl_pathlen_inc(struct cache_fpl *fpl)
+static void
+cache_fpl_pathlen_sub(struct cache_fpl *fpl, size_t n)
{
}
static void
-cache_fpl_pathlen_add(struct cache_fpl *fpl, size_t n)
+cache_fpl_pathlen_inc(struct cache_fpl *fpl)
{
}
static void
-cache_fpl_pathlen_sub(struct cache_fpl *fpl, size_t n)
+cache_fpl_pathlen_dec(struct cache_fpl *fpl)
{
}
#endif
@@ -5258,7 +5258,7 @@ cache_fplookup_parse_advance(struct cache_fpl *fpl)
*
* Lockless lookup tries to elide checking for spurious slashes and should they
* be present is guaranteed to fail to find an entry. In this case the caller
- * must check if the name starts with a slash and this call routine. It is
+ * must check if the name starts with a slash and call this routine. It is
* going to fast forward across the spurious slashes and set the state up for
* retry.
*/
@@ -5342,11 +5342,13 @@ cache_fplookup_failed_vexec(struct cache_fpl *fpl, int error)
* Hack: handle O_SEARCH.
*
* Open Group Base Specifications Issue 7, 2018 edition states:
+ * <quote>
* If the access mode of the open file description associated with the
* file descriptor is not O_SEARCH, the function shall check whether
* directory searches are permitted using the current permissions of
* the directory underlying the file descriptor. If the access mode is
* O_SEARCH, the function shall not perform the check.
+ * </quote>
*
* Regular lookup tests for the NOEXECCHECK flag for every path
* component to decide whether to do the permission check. However,
More information about the dev-commits-src-all
mailing list