History log of /netbsd-src/sys/miscfs/procfs/procfs_vfsops.c (Results 1 – 25 of 120)
Revision Date Author Comments
# 78b530bb 14-Sep-2024 pgoyette <pgoyette@NetBSD.org>

Define dependencies based on build options.


# eeaf2ef9 09-Sep-2024 pgoyette <pgoyette@NetBSD.org>

Now we have another dependency for the SYSV_* stuff.


# 4e6aea62 09-Sep-2024 pgoyette <pgoyette@NetBSD.org>

procfs grew a new dependency


# 0124a941 01-Jul-2024 christos <christos@NetBSD.org>

Add linux POSIX message queue support (Ricardo Branco)


# 87f98fe2 12-May-2024 christos <christos@NetBSD.org>

PR/58227: Ricardo Branco: Add support for proc/sysvipc in Linux emulator


# 995cf491 12-May-2024 christos <christos@NetBSD.org>

PR/58240: Ricardo Branco: Add support for proc/self/limits as used by Linux


# 1a40291d 17-Jan-2024 hannken <hannken@NetBSD.org>

Remove all procfs nodes for this process on process exit.


# 08b27e40 17-Jan-2024 hannken <hannken@NetBSD.org>

Using the exechook to revoke procfs nodes is racy and may deadlock:

one thread runs doexechooks() -> procfs_revoke_vnodes() and wants to suspend
the file system for vgone(), while another thread run

Using the exechook to revoke procfs nodes is racy and may deadlock:

one thread runs doexechooks() -> procfs_revoke_vnodes() and wants to suspend
the file system for vgone(), while another thread runs a forced unmount,
has the file system suspended, tries to disestablish the exechook and
waits for doexechooks() to complete.

Establish/disestablish the exechook on module load/unload instead
mount/unmount and use the hashmap to access all procfs nodes for this pid.

May fix PR kern/57775 ""panic: unmount: dangling vnode" while umounting procfs"

show more ...


# da4222d3 17-Jan-2024 hannken <hannken@NetBSD.org>

Add a hashmap to access all procfs nodes by pid.


# 0e755857 17-Jan-2022 bouyer <bouyer@NetBSD.org>

If the calling process is running under linux emulation, make /proc/xxx/fd/
return only symlinks pointing to the original file in the filesystem,
instead of a hard link. This matches the linux behavi

If the calling process is running under linux emulation, make /proc/xxx/fd/
return only symlinks pointing to the original file in the filesystem,
instead of a hard link. This matches the linux behavior, and some
linux programs relies on it (they unconditionally call readlink() on
/proc/xxx/fd/yy and don't deal with it returning EINVAL).
Proposed on tech-kern@ in
http://mail-index.netbsd.org/tech-kern/2022/01/11/msg027877.html

show more ...


# a1daa845 28-Dec-2020 riastradh <riastradh@NetBSD.org>

Fix procfs environ node.


# 0eaaa024 23-May-2020 ad <ad@NetBSD.org>

Move proc_lock into the data segment. It was dynamically allocated because
at the time we had mutex_obj_alloc() but not __cacheline_aligned.


# 91da5a2e 29-Apr-2020 thorpej <thorpej@NetBSD.org>

If the procfs mount is marked as linux-compat, then allow proc lookup
by any LWP ID in the proc, not just the canonical PID.


# 7bceb350 20-Apr-2020 htodd <htodd@NetBSD.org>

Sort include files.


# 6b104688 20-Apr-2020 htodd <htodd@NetBSD.org>

Add missing include to fix build.


# a29147fa 19-Apr-2020 thorpej <thorpej@NetBSD.org>

- Only increment nprocs when we're creating a new process, not just
when allocating a PID.
- Per above, proc_free_pid() no longer decrements nprocs. It's now done
in proc_free() right after proc

- Only increment nprocs when we're creating a new process, not just
when allocating a PID.
- Per above, proc_free_pid() no longer decrements nprocs. It's now done
in proc_free() right after proc_free_pid().
- Ensure nprocs is accessed using atomics everywhere.

show more ...


# c90f9c8c 04-Apr-2020 ad <ad@NetBSD.org>

Merge the remaining changes from the ad-namecache branch, affecting namei()
and getcwd():

- push vnode locking back as far as possible.
- do most lookups directly in the namecache, avoiding vnode lo

Merge the remaining changes from the ad-namecache branch, affecting namei()
and getcwd():

- push vnode locking back as far as possible.
- do most lookups directly in the namecache, avoiding vnode locks & refs.
- don't block new refs to vnodes across VOP_INACTIVE().
- get shared locks for VOP_LOOKUP() if the file system supports it.
- correct lock types for VOP_ACCESS() / VOP_GETATTR() in a few places.

Possible future enhancements:

- make the lookups lockless.
- support dotdot lookups by being lockless and inferring absence of chroot.
- maybe make it work for layered file systems.
- avoid vnode references at the root & cwd.

show more ...


# 9120d451 16-Mar-2020 pgoyette <pgoyette@NetBSD.org>

Use the module subsystem's ability to process SYSCTL_SETUP() entries to
automate installation of sysctl nodes.

Note that there are still a number of device and pseudo-device modules
that create entr

Use the module subsystem's ability to process SYSCTL_SETUP() entries to
automate installation of sysctl nodes.

Note that there are still a number of device and pseudo-device modules
that create entries tied to individual device units, rather than to the
module itself. These are not changed.

show more ...


# c2e9cb94 17-Jan-2020 ad <ad@NetBSD.org>

VFS_VGET(), VFS_ROOT(), VFS_FHTOVP(): give them a "int lktype" argument, to
allow us to get shared locks (or no lock) on the returned vnode. Matches
FreeBSD.


# dc2e740e 30-Mar-2019 christos <christos@NetBSD.org>

add a node for the process resource limits.


# 262138d2 31-Dec-2017 christos <christos@NetBSD.org>

rename some "cmdline" stuff now that it is used to print environment too


# 878c60d1 31-Dec-2017 christos <christos@NetBSD.org>

Add an environ node


# a69b333e 28-Aug-2017 kamil <kamil@NetBSD.org>

Remove the filesystem tracing feature

This is a legacy interface from 4.4BSD, and it was
introduced to overcome shortcomings of ptrace(2) at that time, which are
no longer relevant (performance). To

Remove the filesystem tracing feature

This is a legacy interface from 4.4BSD, and it was
introduced to overcome shortcomings of ptrace(2) at that time, which are
no longer relevant (performance). Today /proc/#/ctl offers a narrow
subset of ptrace(2) commands and is not applicable for modern
applications use beyond simplistic tracing scenarios.

This removal will simplify kernel internals. Users will still be able to
use all the other /proc files.

This change won't affect other procfs files neither Linux compat
features within mount_procfs(8). /proc/#/ctl isn't available on Linux.

Remove:
- /proc/#/ctl from mount_procfs(8)
- P_FSTRACE note from the documentation of ps(1)
- /proc/#/ctl and filesystem tracing documentation from mount_procfs(8)
- KAUTH_REQ_PROCESS_PROCFS_CTL documentation from kauth(9)
- source code file miscfs/procfs/procfs_ctl.c
- PFSctl and procfs_doctl() from sys/miscfs/procfs/procfs.h
- KAUTH_REQ_PROCESS_PROCFS_CTL from sys/sys/kauth.h
- PSL_FSTRACE (0x00010000) from sys/sys/proc.h
- P_FSTRACE (0x00010000) from sys/sys/sysctl.h

Reduce code complexity after removal of this functionality.

Update TODO.ptrace accordingly: remove two entries about /proc tracing.

Do not keep legacy notes as comments in the headers about removed
PSL_FSTRACE / P_FSTRACE, as this interface had little number of users
(close or equal to zero).

Proposed on tech-kern@.

All filesystem tracing utility users are encouraged to switch to ptrace(2).

Sponsored by <The NetBSD Foundation>

show more ...


# 2d1443a6 30-Mar-2017 christos <christos@NetBSD.org>

add an auxv node.


# 326db3aa 17-Feb-2017 hannken <hannken@NetBSD.org>

Add generic genfs_suspendctl() and use it for all file systems.
Layered file systems need work.


12345