Page MenuHomeFreeBSD

mjg (Mateusz Guzik)
nice guy

Projects

User Details

User Since
Jun 4 2014, 10:38 AM (262 w, 6 d)

Recent Activity

Fri, Jun 7

mjg added inline comments to D16744: Document seqc(9).
Fri, Jun 7, 8:36 PM

Sat, May 25

mjg added a comment to D20411: Add devfs(5) support for VOP_MKDIR(9) and VOP_RMDIR(9).

I think arbitrary mkdir/rmdir is a can of worms, perfectly avoidable for the stated purpose. lindevfs module could be created to extend devfs mount points with whatever is necessary. Preferably this would be a completely separate fs, but that's probably too problematic. i.e. currently the module would make_dev("shm") on it's own. the func can create directories and if it insists on getting a device, a separate variant can be added.

Sat, May 25, 8:50 PM

May 12 2019

mjg updated the summary of D20243: [wip] extend MNT_VNODE_FOREACH macro with callback argument and use it to filter vnodes for tmpfs mtime.
May 12 2019, 7:58 AM
mjg committed rS347510: cache: fix a brainfart in r347505.
cache: fix a brainfart in r347505
May 12 2019, 7:56 AM
mjg committed rS347507: seqc: fix sed-introduced typos (seqcuence -> sequence).
seqc: fix sed-introduced typos (seqcuence -> sequence)
May 12 2019, 7:13 AM
mjg committed rS347506: amd64: tidy up pagezero*/pagecopy (movq -> movl).
amd64: tidy up pagezero*/pagecopy (movq -> movl)
May 12 2019, 7:11 AM
mjg committed rS347505: cache: bump numcache on entry, while here fix lnumcache type.
cache: bump numcache on entry, while here fix lnumcache type
May 12 2019, 6:59 AM
mjg committed rS347504: amd64: fixup MEMMOVE comment (10 -> r10).
amd64: fixup MEMMOVE comment (10 -> r10)
May 12 2019, 6:42 AM
mjg committed rS347503: cache: push sdt probes in cache_zap_locked to code doing the work.
cache: push sdt probes in cache_zap_locked to code doing the work
May 12 2019, 6:39 AM
mjg committed rS347502: x86: store pending bitmapped IPIs in per-cpu areas.
x86: store pending bitmapped IPIs in per-cpu areas
May 12 2019, 6:37 AM
mjg committed rS347501: amd64: stop re-reading curpc in suword.
amd64: stop re-reading curpc in suword
May 12 2019, 6:35 AM
mjg committed rS347500: random(4): depessimize arc4random.
random(4): depessimize arc4random
May 12 2019, 6:33 AM
mjg closed D20242: Depessimize arc4rand.
May 12 2019, 6:33 AM
mjg created D20244: nullfs: lock the vnode with LK_SHARED in null_vptocnp.
May 12 2019, 2:46 AM
mjg created D20243: [wip] extend MNT_VNODE_FOREACH macro with callback argument and use it to filter vnodes for tmpfs mtime.
May 12 2019, 2:02 AM
mjg created D20242: Depessimize arc4rand.
May 12 2019, 1:52 AM

May 10 2019

mjg added a comment to D2051: Use an rmlock to lock vfs cache.

No. Locking was significantly revamped and the problem at hand us unlikely to be encountered. Should it be encountered, the new (much finer-grained) locking can be modified to use exclusive-only locks. The speed up as reported here was disputed on the mailing lists and was likely not present.

May 10 2019, 2:10 AM

May 8 2019

mjg closed D20160: Reduce umtx-related work on exec and exit.
May 8 2019, 4:30 PM
mjg committed rS347355: Reduce umtx-related work on exec and exit.
Reduce umtx-related work on exec and exit
May 8 2019, 4:30 PM
mjg added inline comments to D20160: Reduce umtx-related work on exec and exit.
May 8 2019, 4:27 PM

May 7 2019

mjg added inline comments to D20160: Reduce umtx-related work on exec and exit.
May 7 2019, 7:57 PM
mjg updated the diff for D20160: Reduce umtx-related work on exec and exit.
  • remove proc locking in the first place
May 7 2019, 7:56 PM

May 4 2019

mjg created D20160: Reduce umtx-related work on exec and exit.
May 4 2019, 10:38 PM
mjg committed rS347132: sysv: get rid of fork/exit hooks if the code is compiled in.
sysv: get rid of fork/exit hooks if the code is compiled in
May 4 2019, 7:05 PM
mjg committed rS347131: Annotate nprocs with __exclusive_cache_line.
Annotate nprocs with __exclusive_cache_line
May 4 2019, 7:04 PM

Apr 24 2019

mjg added a comment to D19923: Switch to use shared vnode locks for text files during image activation..

This works fine

Apr 24 2019, 4:30 PM
mjg added a comment to D19923: Switch to use shared vnode locks for text files during image activation..

Extended the patch with:

+       if (!(((object->flags & OBJ_TMPFS) == 0 &&
+           object->type == OBJT_VNODE) ||
+           ((object->flags & OBJ_TMPFS) != 0 &&
+           object->type == OBJT_SWAP)))
+               printf("obj %p flags %x type %d\n", object, object->flags, object->type);
Apr 24 2019, 12:30 PM
mjg added a comment to D19923: Switch to use shared vnode locks for text files during image activation..

Sorry, I meant early when running poudriere. vp is NULL in vm_map_entry_inc_vnode_text. Can be trivially reproduced by having the shell fork when backed by tmpfs, in particular unpacking world, 'chroot . sh' + 'ls' do the trick.

Apr 24 2019, 11:38 AM

Apr 23 2019

mjg added a comment to D19923: Switch to use shared vnode locks for text files during image activation..

This crashes for me early on:

Apr 23 2019, 8:18 PM
mjg accepted D19997: MFC r324736:.
Apr 23 2019, 5:12 PM

Apr 18 2019

mjg added a comment to D19923: Switch to use shared vnode locks for text files during image activation..

I gave it a spin with poudriere and it panics:

Apr 18 2019, 4:28 PM

Apr 14 2019

mjg accepted D19887: fix the NFSv4 client so that it doesn't call pfind() with a mutex held.
Apr 14 2019, 9:03 PM
mjg added inline comments to D19887: fix the NFSv4 client so that it doesn't call pfind() with a mutex held.
Apr 14 2019, 1:08 PM
mjg added inline comments to D19908: Provide accounting of user-wired pages..
Apr 14 2019, 1:02 PM

Apr 12 2019

mjg added inline comments to D19887: fix the NFSv4 client so that it doesn't call pfind() with a mutex held.
Apr 12 2019, 3:23 AM

Apr 5 2019

mjg accepted D19825: Set the oppid field of orphans when exiting..
Apr 5 2019, 12:57 AM

Apr 3 2019

mjg committed rS345853: rctl: fix sysctl kern.racct.enable use after r341182.
rctl: fix sysctl kern.racct.enable use after r341182
Apr 3 2019, 8:37 PM

Mar 27 2019

mjg added inline comments to D19690: mount/unmount events to devd.
Mar 27 2019, 11:53 PM · Contributor Reviews (base)

Mar 25 2019

mjg added a comment to D19690: mount/unmount events to devd.

What's the motivation for this functionality?

Mar 25 2019, 12:23 PM · Contributor Reviews (base)

Mar 13 2019

mjg added a comment to D18930: Per-thread credentials.

So I'm in the process of reviewing this. I don't have a complete review yet, but I do have some comments.

Mar 13 2019, 12:32 AM

Mar 12 2019

mjg updated the summary of D19563: amd64: clean up cpu_switch.S.
Mar 12 2019, 3:35 PM
mjg created D19563: amd64: clean up cpu_switch.S.
Mar 12 2019, 3:34 PM

Feb 27 2019

mjg committed rS344648: Rename seq to seqc to avoid namespace clashes with Linux.
Rename seq to seqc to avoid namespace clashes with Linux
Feb 27 2019, 10:57 PM
mjg committed rS344647: vm: remove seq.h inclusion made obsolete by NUMA rewrite.
vm: remove seq.h inclusion made obsolete by NUMA rewrite
Feb 27 2019, 10:42 PM

Feb 26 2019

mjg accepted D19295: Teach truss(1) about fsync(2) and fdatasync(2)..
Feb 26 2019, 6:55 PM

Feb 5 2019

mjg accepted D19083: extattr_list_vp: Narrow locked section somewhat.
Feb 5 2019, 3:36 AM
mjg accepted D19082: extattr_list_vp: Only take shared vnode lock.

Lock acquisition can be moved few lines later, after branching on data. Similarly, unlock can be done earlier.

Feb 5 2019, 3:27 AM

Feb 1 2019

mjg added a comment to D18930: Per-thread credentials.

That's an error-prone approach. You should always have separate references for both ucred and pucred.

Feb 1 2019, 4:34 PM

Jan 30 2019

mjg added a comment to D18930: Per-thread credentials.

I don't have an opinion about the userspace API. It does seem a little bit fishy that there is no tight control from that end. I would expect a fully-privileged daemon to get create a credfd an allow certain uids/gids to be switched to. Then it can drop privs. But again, I did not think this through.

Jan 30 2019, 4:43 PM

Jan 29 2019

mjg added inline comments to D18930: Per-thread credentials.
Jan 29 2019, 12:58 AM

Dec 28 2018

mjg accepted D18665: pfind, pfind_any: Correct zombie logic.

Oops, indeed. Thanks for the fix.

Dec 28 2018, 12:40 AM

Dec 27 2018

mjg added inline comments to D18658: top: fix PID sorting after r340742; add process birth time sorting.
Dec 27 2018, 9:03 PM
mjg added inline comments to D18658: top: fix PID sorting after r340742; add process birth time sorting.
Dec 27 2018, 9:01 PM

Dec 20 2018

mjg added a comment to D18618: Make kernel print jail ID when logging a process exit..

See this review https://reviews.freebsd.org/D27

Dec 20 2018, 11:29 AM
mjg added a comment to D18580: Accept always TCP segment with SEG.SEQ==RCV.NXT.

I have a machine where I reliably fail to git clone postgres repository, it always gets stuck at about 20%. This patch fixes it.

Dec 20 2018, 1:48 AM

Dec 19 2018

mjg committed rS342267: MFC r342053.
MFC r342053
Dec 19 2018, 11:29 PM
mjg committed rS342264: Check for probes enabled in priv_check_cred before evaluting the error..
Check for probes enabled in priv_check_cred before evaluting the error.
Dec 19 2018, 11:28 PM
mjg committed rS342262: Provide SDT_PROBES_ENABLED for kernels without KDTRACE..
Provide SDT_PROBES_ENABLED for kernels without KDTRACE.
Dec 19 2018, 11:19 PM
mjg committed rS342250: MFC r340676,r340677,r340679,r340747,r340749,r341682.
MFC r340676,r340677,r340679,r340747,r340749,r341682
Dec 19 2018, 10:42 PM
mjg committed rS342249: MFC r340482,r341724.
MFC r340482,r341724
Dec 19 2018, 10:38 PM
mjg committed rS342248: MFC r340410.
MFC r340410
Dec 19 2018, 10:31 PM
mjg committed rS342247: mac: reduce pessimization of sdt probe handling.
mac: reduce pessimization of sdt probe handling
Dec 19 2018, 10:30 PM
mjg committed rS342245: Remove iBCS2: plug a wart missed in r342242.
Remove iBCS2: plug a wart missed in r342242
Dec 19 2018, 10:09 PM
mjg committed rS342244: Remove iBCS2, part3: the implementation.
Remove iBCS2, part3: the implementation
Dec 19 2018, 10:03 PM
mjg committed rS342243: Remove iBCS2, part2: general kernel.
Remove iBCS2, part2: general kernel
Dec 19 2018, 9:58 PM
mjg committed rS342242: Remove iBCS2, part1: userspace.
Remove iBCS2, part1: userspace
Dec 19 2018, 9:57 PM
mjg closed D18435: Manage process-related IDs with bitmaps.

This already landed in r342237, I see I forgot to add the line.

Dec 19 2018, 9:29 PM
mjg committed rS342240: MFC r341272,r341273,r341351.
MFC r341272,r341273,r341351
Dec 19 2018, 9:26 PM
mjg committed rS342239: MFC r341719.
MFC r341719
Dec 19 2018, 9:04 PM
mjg committed rS342238: MFC r341364.
MFC r341364
Dec 19 2018, 9:03 PM
mjg committed rS342237: Microoptimize corner case of ID bitmap handling..
Microoptimize corner case of ID bitmap handling.
Dec 19 2018, 8:30 PM
mjg committed rS342236: Deinline vfork handling out of the syscall return path..
Deinline vfork handling out of the syscall return path.
Dec 19 2018, 8:27 PM
mjg committed rS342235: Update priv(9) after r341827.
Update priv(9) after r341827
Dec 19 2018, 8:26 PM

Dec 14 2018

mjg committed rS342058: vfs: mostly depessimize NDINIT_ALL.
vfs: mostly depessimize NDINIT_ALL
Dec 14 2018, 3:55 AM

Dec 13 2018

mjg committed rS342053: dtrace: fix userspace access on boxes with SMAP.
dtrace: fix userspace access on boxes with SMAP
Dec 13 2018, 8:12 PM
mjg closed D18542: dtrace: fix userspace access on boxes with SMAP.
Dec 13 2018, 8:12 PM
mjg added a comment to D18542: dtrace: fix userspace access on boxes with SMAP.

Yea, 1 week.

Dec 13 2018, 7:54 PM
mjg updated the summary of D18542: dtrace: fix userspace access on boxes with SMAP.
Dec 13 2018, 7:33 PM
mjg created D18542: dtrace: fix userspace access on boxes with SMAP.
Dec 13 2018, 7:33 PM

Dec 11 2018

mjg committed rS341827: Remove unused argument to priv_check_cred..
Remove unused argument to priv_check_cred.
Dec 11 2018, 7:32 PM
mjg committed rS341822: audi: replace open-coded TDP_AUDITREC checks with the macro.
audi: replace open-coded TDP_AUDITREC checks with the macro
Dec 11 2018, 5:14 PM
mjg committed rS341819: fd: dedup code in sys_getdtablesize.
fd: dedup code in sys_getdtablesize
Dec 11 2018, 12:08 PM
mjg committed rS341818: Make lim_cur inline if possible..
Make lim_cur inline if possible.
Dec 11 2018, 12:01 PM
mjg committed rS341817: fd: tidy up closing a fd.
fd: tidy up closing a fd
Dec 11 2018, 11:59 AM
mjg committed rS341816: fd: stop looking for exact freefile after allocation.
fd: stop looking for exact freefile after allocation
Dec 11 2018, 11:57 AM

Dec 8 2018

mjg committed rS341727: umtx: avoid umtxshm locking on object termination if possible.
umtx: avoid umtxshm locking on object termination if possible
Dec 8 2018, 2:05 PM
mjg committed rS341724: Remove proctree acquire from note_procstat_proc.
Remove proctree acquire from note_procstat_proc
Dec 8 2018, 11:39 AM
mjg committed rS341723: Fix a corner case in ID bitmap management..
Fix a corner case in ID bitmap management.
Dec 8 2018, 10:22 AM
mjg committed rS341722: proc: postpone proc unlock until after reporting with kqueue.
proc: postpone proc unlock until after reporting with kqueue
Dec 8 2018, 6:34 AM
mjg committed rS341721: proc: handle sdt exit probe before taking the proc lock.
proc: handle sdt exit probe before taking the proc lock
Dec 8 2018, 6:32 AM
mjg committed rS341720: Provide SDT_PROBES_ENABLED macro..
Provide SDT_PROBES_ENABLED macro.
Dec 8 2018, 6:31 AM
mjg committed rS341719: amd64: stop re-reading curpc on subyte/suword.
amd64: stop re-reading curpc on subyte/suword
Dec 8 2018, 4:53 AM

Dec 7 2018

mjg committed rS341702: fd: use racct_set_unlocked.
fd: use racct_set_unlocked
Dec 7 2018, 4:51 PM
mjg committed rS341701: racct: add RACCT_ENABLED macro and racct_set_unlocked.
racct: add RACCT_ENABLED macro and racct_set_unlocked
Dec 7 2018, 4:48 PM
mjg committed rS341700: fd: try do less work with the lock in dup.
fd: try do less work with the lock in dup
Dec 7 2018, 4:45 PM
mjg committed rS341699: vm: use fcmpset for vmspace reference counting.
vm: use fcmpset for vmspace reference counting
Dec 7 2018, 4:25 PM
mjg committed rS341698: Replace hand-rolled unrefs if > 1 with refcount_release_if_not_last.
Replace hand-rolled unrefs if > 1 with refcount_release_if_not_last
Dec 7 2018, 4:11 PM
mjg committed rS341697: refcount: remove a stale comment about conditional ref/unref routines.
refcount: remove a stale comment about conditional ref/unref routines
Dec 7 2018, 4:11 PM
mjg committed rS341685: proc: when exiting move to zombproc before taking proctree.
proc: when exiting move to zombproc before taking proctree
Dec 7 2018, 12:33 PM
mjg committed rS341684: Manage process-related IDs with bitmaps.
Manage process-related IDs with bitmaps
Dec 7 2018, 12:22 PM