Page MenuHomeFreeBSD
Feed Advanced Search

Mar 18 2024

mjg committed rGb0aaf8beb126: Rename VM_LAST to more appropriate VM_GUEST_LAST (authored by mjg).
Rename VM_LAST to more appropriate VM_GUEST_LAST
Mar 18 2024, 10:49 AM

Mar 12 2024

mjg abandoned D40884: vfs: add KPI versioning.
Mar 12 2024, 10:35 PM
mjg abandoned D40045: ule: queue partial slice users on tdq_realtime and enable more preemption.

Further testing by other people confirmed my worry this is too trivial to fix the problem without running into other side effects, thus I'm dropping the thing.

Mar 12 2024, 10:35 PM
mjg abandoned D39000: vm: require page to be xbusied to invalidate the content.
Mar 12 2024, 10:34 PM
mjg abandoned D38829: [RFC] add cpuset_getmyaffinity_count.
Mar 12 2024, 10:33 PM
mjg abandoned D37306: Stop sync restarts on vget failure due to doomed vnode.
Mar 12 2024, 10:33 PM
mjg abandoned D36775: ipsec: retire sadb_msg_reserved in order to facilitate per-cpu refcounting.
Mar 12 2024, 10:33 PM
mjg abandoned D36510: ipsec: plug use-after-free of SAH.
Mar 12 2024, 10:33 PM
mjg abandoned D36352: fix callout lock contention during thread creation/destruction.
Mar 12 2024, 10:33 PM
mjg abandoned D36318: Add new EVENTHANDLER types: PREEMPTIBLE and SLEEPABLE.
Mar 12 2024, 10:33 PM
mjg abandoned D36083: umtx: convert hand-rolled busy lock to sx lock.
Mar 12 2024, 10:33 PM
mjg abandoned D30552: tmpfs: avoid the vm object lock in tmpfs_pager_getvp in the common case.
Mar 12 2024, 10:33 PM
mjg abandoned D26119: vfs: add cheaper vn_isdisk by indicating the state with the VIRF_ISDISK flag.
Mar 12 2024, 10:33 PM
mjg abandoned D27217: Add options COMPACT to produce smaller kernel.
Mar 12 2024, 10:33 PM
mjg abandoned D27600: __predict_true/false profiling.
Mar 12 2024, 10:33 PM
mjg abandoned D26011: off cpu tracking.
Mar 12 2024, 10:32 PM
mjg abandoned D25983: vfs: add VOP_GETATTR_LITE.
Mar 12 2024, 10:32 PM
mjg abandoned D23779: Indicate issetugid in AT_BSDFLAGS.
Mar 12 2024, 10:32 PM
mjg abandoned D23774: Add KPASS macros.
Mar 12 2024, 10:32 PM
mjg abandoned D23481: vfs: use refcnt int API.
Mar 12 2024, 10:32 PM
mjg abandoned D23661: Implement a translation from FreeBSD atomic API to gcc intrinsics.
Mar 12 2024, 10:32 PM
mjg abandoned D23480: Add new refcount API.
Mar 12 2024, 10:32 PM
mjg abandoned D23469: fd: convert f_count to long.
Mar 12 2024, 10:32 PM
mjg abandoned D23684: 2/2 lockmgr: provide routines usable as direct vfs calls.
Mar 12 2024, 10:32 PM
mjg abandoned D15736: Implement fast path for malloc and free.
Mar 12 2024, 10:31 PM
mjg abandoned D12889: Remove entropy harvesting from tmpfs atime.
Mar 12 2024, 10:31 PM
mjg abandoned D23291: vfs: add mandatory inactive processing to vget.
Mar 12 2024, 10:31 PM
mjg abandoned D36640: remove support for LK_INTERLOCK from VOP_LOCK.
Mar 12 2024, 10:29 PM
mjg abandoned D21206: libc: add fdwalk.
Mar 12 2024, 10:29 PM
mjg abandoned D34457: Add hw.machine_real_arch.
Mar 12 2024, 10:28 PM

Mar 11 2024

mjg abandoned D38702: i386: exclude MINIMAL kernel from universe.

i386 kernel is being retired

Mar 11 2024, 12:47 AM

Mar 5 2024

mjg resigned from D40850: VFS lookup: New vn_cross_single_mount() and vn_cross_mounts().

First and foremost my apologies this fell through the cracks.

Mar 5 2024, 4:47 PM

Jan 20 2024

mjg added inline comments to D43488: kern: Implement lockless method for obtaining new PID..
Jan 20 2024, 5:28 AM
mjg added a comment to D43488: kern: Implement lockless method for obtaining new PID..
In D43488#991564, @pjd wrote:
In D43488#991394, @mjg wrote:

What's the motivation here? If you are running into scalability problems, it has to be allproc and proctree locks (amongst others).

Yes, scalability is the main motivation. We have a machine that slows down considerably when we reach >10,000 process (64 core system). allproc and proctree are the main problems. This change is just a low hanging fruit where we can easily eliminate a global lock.

Jan 20 2024, 5:28 AM

Jan 18 2024

mjg added a comment to D43476: sys/jail.h: expose JAIL_MAX constant to applications.

this macro should be eliminated, not exposed

Jan 18 2024, 10:42 AM
mjg added a comment to D43488: kern: Implement lockless method for obtaining new PID..

What's the motivation here? If you are running into scalability problems, it has to be allproc and proctree locks (amongst others).

Jan 18 2024, 7:06 AM

Jan 5 2024

mjg added a comment to D43313: Add O_RESOLVE_NO_SYMLINKS open flag.

Linux folk explicitly designed openat2 to be extensible, so I expect it is going to pick up explicit "official" usage down the road.

Jan 5 2024, 10:34 PM

Jan 4 2024

mjg added a comment to D43313: Add O_RESOLVE_NO_SYMLINKS open flag.

sounds like the thing to do is to add openat2 so that this automagically works, instead of a freebsd-specific flag

Jan 4 2024, 11:01 PM

Dec 29 2023

mjg committed rG3358108a38f0: llvm: Support: don't block signals around close if it can be avoided (authored by mjg).
llvm: Support: don't block signals around close if it can be avoided
Dec 29 2023, 7:14 PM
mjg closed D42984: llvm: Support: don't block signals around close if it can be avoided.
Dec 29 2023, 7:14 PM

Dec 9 2023

mjg added a comment to D42981: shells/44bsd-csh: remove sbrk use.

why is this port still a thing

Dec 9 2023, 12:16 PM
mjg updated the summary of D42984: llvm: Support: don't block signals around close if it can be avoided.
Dec 9 2023, 7:52 AM
mjg updated the summary of D42984: llvm: Support: don't block signals around close if it can be avoided.
Dec 9 2023, 7:52 AM
mjg requested review of D42984: llvm: Support: don't block signals around close if it can be avoided.
Dec 9 2023, 7:50 AM

Dec 6 2023

mjg added a comment to D40772: Tentative physical memory compaction.

@markj ping?

Dec 6 2023, 7:19 PM
mjg accepted D42927: vnet: (read) lock the vnet list while iterating it.
Dec 6 2023, 3:04 PM
mjg added inline comments to D42927: vnet: (read) lock the vnet list while iterating it.
Dec 6 2023, 3:04 PM
mjg added inline comments to D42927: vnet: (read) lock the vnet list while iterating it.
Dec 6 2023, 2:50 PM

Nov 29 2023

mjg committed rG746b0f70a229: vfs: dodge locking for lseek(fd, 0, SEEK_CUR) (authored by mjg).
vfs: dodge locking for lseek(fd, 0, SEEK_CUR)
Nov 29 2023, 10:59 AM

Nov 28 2023

mjg closed D40946: Add DEBUG_POISON_POINTER.
Nov 28 2023, 4:36 PM
mjg committed rGe1e847374bcc: Add DEBUG_POISON_POINTER (authored by mjg).
Add DEBUG_POISON_POINTER
Nov 28 2023, 4:36 PM
mjg updated the summary of D40946: Add DEBUG_POISON_POINTER.
Nov 28 2023, 3:34 PM
mjg added a comment to D40946: Add DEBUG_POISON_POINTER.

First of all my apologies, this somehow fell through the cracks after i pinged.

Nov 28 2023, 3:33 PM
mjg updated the diff for D40946: Add DEBUG_POISON_POINTER.
  • correct diff
Nov 28 2023, 3:32 PM

Nov 27 2023

mjg added a comment to D42603: nullfs: provide special bypass for null_copy_file_range().

So again what's the benefit of bubbling up ENOSYS? I assumed it would at least get handled in a post-vop hook instead of going all the way up to the caller.

Nov 27 2023, 5:52 PM

Nov 24 2023

mjg committed rGe6d025c5c57d: pseudofs: fix off by one in hash iteration in pfs_purge (authored by weike.chen_dell.com).
pseudofs: fix off by one in hash iteration in pfs_purge
Nov 24 2023, 7:48 PM
mjg committed rG94bddd2ab75f: pseudofs: fix off by one in hash iteration in pfs_purge (authored by weike.chen_dell.com).
pseudofs: fix off by one in hash iteration in pfs_purge
Nov 24 2023, 5:23 PM

Nov 23 2023

mjg added a comment to D42671: re(4): Add support for 8168FP HW rev.

if it does work with the patch, you should paste how dmesg looks like with it

Nov 23 2023, 7:18 PM
mjg added a comment to D42671: re(4): Add support for 8168FP HW rev.

according to your own copy from dmesg this failed to attach, so it does not work?

Nov 23 2023, 7:10 PM

Nov 20 2023

mjg committed rGe0d0f0930ee2: pseudofs: fix off by one in hash iteration in pfs_purge (authored by weike.chen_dell.com).
pseudofs: fix off by one in hash iteration in pfs_purge
Nov 20 2023, 5:59 AM
mjg closed D42628: pseudofs: fix off by one in hash iteration in pfs_purge.
Nov 20 2023, 5:58 AM

Nov 19 2023

mjg committed rG305a2676ae93: vfs: dodge locking for lseek(fd, 0, SEEK_CUR) (authored by mjg).
vfs: dodge locking for lseek(fd, 0, SEEK_CUR)
Nov 19 2023, 10:26 PM

Nov 17 2023

mjg added a comment to D42628: pseudofs: fix off by one in hash iteration in pfs_purge.

The patch looks correct, but commit message needs some work.

Nov 17 2023, 9:54 PM

Nov 16 2023

mjg added a comment to D42603: nullfs: provide special bypass for null_copy_file_range().

I massaged what I mean into a patch, with your nullfs change as basis:

Nov 16 2023, 5:52 PM
mjg added a comment to D42603: nullfs: provide special bypass for null_copy_file_range().
In D42603#972555, @kib wrote:

I plan to do something different after this patch goes in.
Most complications for fs come from the need to call vn_generic_copy_file_range() as fallback. I intend to make a special return code (or just repurpose ENOSYS) to ask VFS to do that after VOP call. It seems that this even eliminates the need of the flag to allow cross-mount copies, not sure completely. That would fit the idea that VOPs should implement just fs-specific code.

Nov 16 2023, 5:40 PM

Nov 15 2023

mjg added a comment to D42603: nullfs: provide special bypass for null_copy_file_range().

The VFS layer trying to babysit all filesystems is a long standing design flaw, which adds overhead to everyone and only makes optimisations clunky. For example for almost all filesystems VOP_CLOSE has next to nothing to do and most definitely does not need write suspension nor the vnode lock (and for zfs the routine is a nop) -- if there was no attempt to decide for the filesystem what it needs, there would be no problem.

Nov 15 2023, 2:01 PM

Nov 14 2023

mjg added a comment to D42603: nullfs: provide special bypass for null_copy_file_range().

vn_copy_file_range passes down vnodes from different mount points and all filesystems implementing the vop (apart from zfs) have an explicit check that mount points patch. iow the check that this is an instance of the same filesystem type is redundant for their case.

Nov 14 2023, 10:29 PM

Nov 6 2023

mjg added a comment to D40772: Tentative physical memory compaction.

If you can rebase both changes and show me how to collect fragmentation stats I can test this against a full ports tree build.

Nov 6 2023, 5:09 PM
mjg added a comment to D40772: Tentative physical memory compaction.

I don't know if the kernel is in shape where this can be properly evaluated.

Nov 6 2023, 4:40 PM
mjg committed rG733a66841d70: Fix up the vm_guest_sysctl_names size assert. (authored by mjg).
Fix up the vm_guest_sysctl_names size assert.
Nov 6 2023, 3:40 PM

Nov 1 2023

mjg committed rG0c5cd045bfb8: vfs: remove majority of stale commentary about free list (authored by mjg).
vfs: remove majority of stale commentary about free list
Nov 1 2023, 8:41 AM
mjg committed rG8b916c35c288: vfs: fix a typo introdued in previous (authored by mjg).
vfs: fix a typo introdued in previous
Nov 1 2023, 8:30 AM
mjg committed rG1692e50f2573: vfs: bring getnewvnode manpage closer to reality (authored by mjg).
vfs: bring getnewvnode manpage closer to reality
Nov 1 2023, 8:22 AM

Oct 23 2023

mjg committed rG8bd794531118: sx: fixup copy pasto in previous (authored by mjg).
sx: fixup copy pasto in previous
Oct 23 2023, 5:31 PM
mjg committed rGc35f527ed115: sx: unset td_wantedlock around going to sleep (authored by mjg).
sx: unset td_wantedlock around going to sleep
Oct 23 2023, 5:23 PM

Oct 22 2023

mjg committed rG7530de77f539: thread: add td_wantedlock (authored by mjg).
thread: add td_wantedlock
Oct 22 2023, 5:10 PM
mjg committed rG5d29ead2e2de: thread: reorder td_no_sleeping to plug two 4-byte holes on LP64 (authored by mjg).
thread: reorder td_no_sleeping to plug two 4-byte holes on LP64
Oct 22 2023, 5:10 PM

Oct 21 2023

mjg added a comment to D21206: libc: add fdwalk.

The code works but has a nasty corner case -- what if the process has only 2 fds opened, say 0 and 8364742 (or some other high number). Then you copy out out rather huge bitmap and force it to scan it.

Oct 21 2023, 4:17 PM

Oct 19 2023

mjg added a comment to D42255: Open-code proc_set_cred_init().

I think this is a pretty weird choice.

Oct 19 2023, 11:33 AM

Oct 14 2023

mjg committed rGa0c5d373435c: vfs cache: Drop known argument of internal cache_recalc_neg_min() (authored by olce).
vfs cache: Drop known argument of internal cache_recalc_neg_min()
Oct 14 2023, 1:11 AM
mjg committed rGc79af90ce42f: vfs: convert recycles_count and recycles_free_count to mere u_long (authored by mjg).
vfs: convert recycles_count and recycles_free_count to mere u_long
Oct 14 2023, 1:11 AM
mjg committed rG344bc039e974: vfs: count recycles by vnlru and by vn_alloc separately (authored by mjg).
vfs: count recycles by vnlru and by vn_alloc separately
Oct 14 2023, 1:10 AM
mjg committed rGdecacbe47c3e: vfs: count calls to uma_reclaim in vnlru (authored by mjg).
vfs: count calls to uma_reclaim in vnlru
Oct 14 2023, 1:10 AM
mjg committed rG6598816d6f2b: vfs: add max_vnlru_free to the vfs.vnode.vnlru tree (authored by mjg).
vfs: add max_vnlru_free to the vfs.vnode.vnlru tree
Oct 14 2023, 1:10 AM
mjg committed rGc3cf531eace6: vfs: further speed up continuous free vnode recycle (authored by mjg).
vfs: further speed up continuous free vnode recycle
Oct 14 2023, 1:10 AM
mjg committed rG421857921ab1: vfs: don't recycle transiently excess vnodes (authored by mjg).
vfs: don't recycle transiently excess vnodes
Oct 14 2023, 1:10 AM
mjg committed rG899b59500d24: vfs: prefix regular vnlru with a special case for free vnodes (authored by mjg).
vfs: prefix regular vnlru with a special case for free vnodes
Oct 14 2023, 1:10 AM
mjg committed rG01211b4be09f: vfs: consult freevnodes in vnlru_kick_cond (authored by mjg).
vfs: consult freevnodes in vnlru_kick_cond
Oct 14 2023, 1:10 AM
mjg committed rG988f3becc6d4: vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) (authored by mjg).
vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN)
Oct 14 2023, 1:10 AM
mjg committed rG3e0c37999a5e: vfs: don't provoke recycling non-free vnodes without a good reason (authored by mjg).
vfs: don't provoke recycling non-free vnodes without a good reason
Oct 14 2023, 1:10 AM
mjg committed rGa1d54f986368: vfs cache: denote a known bug in cache_remove_cnp (authored by mjg).
vfs cache: denote a known bug in cache_remove_cnp
Oct 14 2023, 1:10 AM
mjg committed rG4404bad2cd1f: vfs cache: plug a hypothetical corner case when freeing (authored by mjg).
vfs cache: plug a hypothetical corner case when freeing
Oct 14 2023, 1:10 AM
mjg committed rGdcee98fcb76c: vfs cache: sanitize debug counters (authored by mjg).
vfs cache: sanitize debug counters
Oct 14 2023, 1:10 AM
mjg committed rG9f71eb3ef40a: vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup (authored by mjg).
vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup
Oct 14 2023, 1:10 AM
mjg committed rG06e001a7666d: vfs cache: retire dothits and dotdothits counters (authored by mjg).
vfs cache: retire dothits and dotdothits counters
Oct 14 2023, 1:10 AM
mjg committed rGc9e203ba3fb6: vfs cache: mark vfs.cache.param.size as read-only (authored by mjg).
vfs cache: mark vfs.cache.param.size as read-only
Oct 14 2023, 1:10 AM

Oct 13 2023

mjg committed rGf6277a777aa0: vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup (authored by mjg).
vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup
Oct 13 2023, 11:58 PM
mjg committed rGeb58f9e6c6df: vfs: convert recycles_count and recycles_free_count to mere u_long (authored by mjg).
vfs: convert recycles_count and recycles_free_count to mere u_long
Oct 13 2023, 11:55 PM
mjg committed rG46d5611b8796: vfs: count calls to uma_reclaim in vnlru (authored by mjg).
vfs: count calls to uma_reclaim in vnlru
Oct 13 2023, 11:55 PM
mjg committed rGa6a4a57ca3e8: vfs: count recycles by vnlru and by vn_alloc separately (authored by mjg).
vfs: count recycles by vnlru and by vn_alloc separately
Oct 13 2023, 11:55 PM