Page MenuHomeFreeBSD

D40479.diff
No OneTemporary

D40479.diff

diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c
--- a/sys/kern/vfs_lookup.c
+++ b/sys/kern/vfs_lookup.c
@@ -721,6 +721,14 @@
*/
cnp->cn_nameptr = cnp->cn_pnbuf;
if (*(cnp->cn_nameptr) == '/') {
+ /*
+ * Reset the lookup to start from the real root without
+ * origin path name reloading.
+ */
+ if (__predict_false(ndp->ni_rootdir != pwd->pwd_rdir)) {
+ cnp->cn_flags |= ISRESTARTED;
+ ndp->ni_rootdir = pwd->pwd_rdir;
+ }
vrele(dp);
error = namei_handle_root(ndp, &dp);
if (error != 0)

File Metadata

Mime Type
text/plain
Expires
Tue, Apr 29, 9:20 PM (12 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17846693
Default Alt Text
D40479.diff (542 B)

Event Timeline