In D47668#1088649, @igoro wrote:It seems there is an agreement to split it onto two buffers per jail: both are readable by parent jail, while only one is readable by a jail itself. The updated patch reflects this concept. For now metaext and metaint naming is used as external/internal concept. The naming is open for discussion.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Feed Advanced Search
Advanced Search
Advanced Search
Nov 26 2024
Nov 26 2024
crest_freebsd_rlwinm.de added inline comments to D47752: amdiommu: Fix device table segment base register offsets.
crest_freebsd_rlwinm.de added inline comments to D47752: amdiommu: Fix device table segment base register offsets.
Nov 20 2024
Nov 20 2024
In D47668#1087217, @jamie wrote:In D47668#1087001, @igoro wrote:
- The current state of the patch allows reading meta by any user within a jail. Do we want to disable it by default and add something like allow.read_meta or allow.metadata parameter to control it per jail?
I see a use case for both. Per-jail metadata just for the jail manager, and per-jail environment that the jail itself can see. If both exist, there's no need to set permissions.
Nov 19 2024
Nov 19 2024
In D47668#1087166, @kevans wrote:Just tossing in a general +1, I haven't taken any time to review this at the moment; I've thought about a similar notion in the past (jail tags) to be able to do some role-based querying of jails.
If I understand the code correctly security.jail.meta_maxbufsize is the upper limit of the amount of additional kernel memory the jail can tie down with this feature. If a jail is allowed to create sub-jails should each of them be able to allocate metadata up to the global limit or should each of them get its own limit and the allocation be counted (recursively) against the parent limits?
I can see the appeal of this to jail managers, but having just a single meta sysctl per jail implies that it has to be "owned" by a single writer. This requires everything wanting to make use of this new feature to be tightly coupled to the writer. A flat list of key=value pairs (instead of a single value) would allow multiple users of this feature per jail e.g. multiple helper commands preparing just one aspect of a jail e.g. dynamic devfs ruleset loading, network setup/teardown, storage provisioning.
Aug 14 2024
Aug 14 2024
Address style feedback.
Aug 13 2024
Aug 13 2024
Using this /etc/jail.conf:
.include "/usr/local/etc/jail[.]conf"; .include "/etc/jail.d/*.conf"; .include "/usr/local/etc/jail.d/*.conf";
Feb 7 2024
Feb 7 2024
Feb 2 2024
Feb 2 2024
The __specialfd() system call is good to know about, but on its own doesn't provide a way to atomically create a configured jail with its lifetime tied to the file descriptor unlike passing a negative integer as "desc" argument to jail_set. There would either be a window where the jail would exist without a file descriptor associated with it which would reintroduce races and resource leak or the file descriptor has to start out unattached to a jail and be passed to the jail_set(JAIL_CREATE) call. The later design choice would get rid of the awkwardness of (ab-)using negative file descriptor numbers to request a file descriptor via an in-out parameter.
Feb 1 2024
Feb 1 2024
In D43696#996669, @dvl wrote:I read the description, but I'm still not sure how a jail descriptor would be used. How about some pseudo-code, to illustrate the concept please?
Jan 15 2024
Jan 15 2024
Dec 29 2023
Dec 29 2023
In D41318#980524, @pauamma_gundo.com wrote:No manual page to review, yet manpages is a group reviewer. Did a file get accidentally left out?
Nov 6 2023
Nov 6 2023
crest_freebsd_rlwinm.de added a comment to D42402: cam/ata: Postpone removal of two compat sysctl until 15.
Is there enough space in the message to help users by giving them a reference to the new interface to express the same configuration and what form of reference would work well for this?
Oct 26 2023
Oct 26 2023
crest_freebsd_rlwinm.de added a comment to D42366: bhyve: fix arguments to ioctl(VMIO_SIOCSIFFLAGS).
Good catch.
Sep 7 2023
Sep 7 2023
crest_freebsd_rlwinm.de awarded D41723: Fix ".include" section of jail.conf.5 a Like token.
Aug 23 2023
Aug 23 2023
The interface name restriction function is a judgment call restricting users from creating problematic (for shell scripts) interface names. Applying the same restrictions to existing services like netif and routing could break (partly) working configurations.
Aug 18 2023
Aug 18 2023
crest_freebsd_rlwinm.de added a reviewer for D41318: Add the "missing" WireGuard rc.d script: manpages.
Aug 4 2023
Aug 4 2023
Jun 13 2023
Jun 13 2023
In D40377#922101, @nyan_myuji.xyz wrote:In D40377#922083, @crest_freebsd_rlwinm.de wrote:The jail_name variable must be initialised to NULL. This should be done through an explicit char * jail_name = NULL; in line 101 of route.c.
Static storage are always initialized to 0/NULL by C standard.
Jun 12 2023
Jun 12 2023
The jail_name variable must be initialised to NULL. This should be done through an explicit char * jail_name = NULL; in line 101 of route.c.
Jun 2 2023
Jun 2 2023
It reads to me like initialising jail_name to NULL and replacing if (usejail) with if (jail_name != NULL) would make the usejail variable superfluous. Splitting a pointer and its validity into two variables like this (jail_name and usejail) introduces the potential for contradiction if only one of the two is updated. If this split is required for something I would like to see them stored together in a struct { char *, bool } instead of destructured into two variables.
Jun 1 2023
Jun 1 2023
Just a small nitpick: I would prefer a macro #define MAX_INCLUDE_DEPTH 32 or constant static const unsigned int max_include_depth = 32; somewhere above the include_config() in config.c instead of the literal to improve readability.
May 10 2023
May 10 2023
The jail(8) man page needs to be updated to reflect the new -F flag.
May 8 2023
May 8 2023
crest_freebsd_rlwinm.de added a comment to D39996: fork: do not exclude pid 1's children from creating reapsubtrees.
What is gained by having PID 1 acquire sub-reaper status given that it's the reaper? What are the expected semantics for proctl(PROC_REAP_ACQUIRE) in PID 1? Would it be enough to wrap the procctl(…) call with if ( getpid() != 1 ) { … } or is there more to this?
Mar 31 2023
Mar 31 2023
crest_freebsd_rlwinm.de added a comment to D38901: linsysfs(4): Make listnics use new if_foreach_sleep method.
This change has been blamed to cause kernel panics on the FreeBSD current mailing list: https://lists.freebsd.org/archives/freebsd-current/2023-March/003381.html. It's been reported that reverting commit 0b56641cfcda30d06243223f37781ccc18455bef allows starting jails without triggering the observed kernel panic.
Jun 24 2022
Jun 24 2022
crest_freebsd_rlwinm.de added a comment to D33693: Run softclock threads at a hardware ithread priority..
Apr 28 2022
Apr 28 2022
Dec 9 2021
Dec 9 2021
crest_freebsd_rlwinm.de added a comment to D28199: bhyve(8): decouple unix domain socket from save/restore code.
In D28199#636696, @rew wrote:bhyve/ipc: use SOCK_DGRAM
- use SOCK_DGRAM instead of SOCK_STREAM
- have bhyvectl(8) share ipc.h from bhyve(8)
- fix naming semantics of MAX_SNAPSHOT_VMNAME, now called MAX_SNAPSHOT_FILENAME.
Previously, snapshot.h and bhyvectl.c each had their own
#define MAX_VMNAME 100, this is now shared at vmmapi.h - the
value has also been changed to 89. It's a limitation for the
unix domain socket path as constrained by SUNPATHLEN (104).
The prefix for the socket path is BHYVE_RUN_DIR, which by default
is '/var/run/bhyve/' (15). 104-15 = 89.