Page MenuHomeFreeBSD

markj (Mark Johnston)
User

Projects

User Details

User Since
Mar 12 2014, 1:00 AM (279 w, 4 d)

Recent Activity

Today

markj committed rS350201: Link fileargs_lstat.3..
Link fileargs_lstat.3.
Sun, Jul 21, 4:35 PM
D21013: Correct two errors in managing PGA_WRITEABLE is now accepted and ready to land.
Sun, Jul 21, 4:33 PM
D21014: Convert refcount(9) to bool. is now accepted and ready to land.
Sun, Jul 21, 4:33 PM

Yesterday

markj added a comment to D20486: Change synchonization rules for page reference counting..
  • Rebase.
  • Fix bugs found by Peter.
Sat, Jul 20, 8:36 PM
markj updated the test plan for D20486: Change synchonization rules for page reference counting..
Sat, Jul 20, 8:34 PM
D20986: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page(). now requires review to proceed.

Rebase.

Sat, Jul 20, 8:33 PM
D21006: swapon before closing trimming fd is now accepted and ready to land.
Sat, Jul 20, 8:30 PM
D20998: Various arm64 pmap changes, including two fixes is now accepted and ready to land.
Sat, Jul 20, 8:29 PM
markj committed rS350182: Rename vm_page_{import,release}() to vm_page_zone_{import,release}()..
Rename vm_page_{import,release}() to vm_page_zone_{import,release}().
Sat, Jul 20, 6:26 PM
markj added a comment to D20863: prototype for trimming.

Here's the result so far from the test: https://reviews.freebsd.org/P277

Sat, Jul 20, 6:08 PM
markj edited P277 Masterwork From Distant Lands.
Sat, Jul 20, 6:04 PM
markj added inline comments to D21006: swapon before closing trimming fd.
Sat, Jul 20, 6:01 PM

Fri, Jul 19

D21000: Fix leak of memory and file refs with sendmsg(2) over unix domain sockets. is now accepted and ready to land.
Fri, Jul 19, 8:19 PM
D21000: Fix leak of memory and file refs with sendmsg(2) over unix domain sockets. is now accepted and ready to land.
Fri, Jul 19, 7:56 PM
markj added a comment to D19247: Merge hold_count into wire_count..

Committed in r349846.

Fri, Jul 19, 6:08 PM
markj updated the test plan for D20486: Change synchonization rules for page reference counting..
Fri, Jul 19, 4:41 PM
markj added a comment to D20486: Change synchonization rules for page reference counting..

Rebase and fix some problems found by pho.

Fri, Jul 19, 4:39 PM
markj added a comment to D20863: prototype for trimming.

I'll give this patch a try on a system running "poudriere bulk", which tends to use most of my system's swap.

Fri, Jul 19, 4:29 PM
markj committed rS350141: MFC r350048:.
MFC r350048:
Fri, Jul 19, 4:21 PM
markj committed rS350134: MFC r350037:.
MFC r350037:
Fri, Jul 19, 3:11 PM
markj committed rS350130: MFC r350054:.
MFC r350054:
Fri, Jul 19, 3:07 PM
markj accepted D20947: Check and avoid overflow when incrementing fp->f_count in fget_unlocked() and fhold()..
Fri, Jul 19, 3:02 PM

Thu, Jul 18

D20947: Check and avoid overflow when incrementing fp->f_count in fget_unlocked() and fhold(). is now accepted and ready to land.
Thu, Jul 18, 10:32 PM
markj added inline comments to D20947: Check and avoid overflow when incrementing fp->f_count in fget_unlocked() and fhold()..
Thu, Jul 18, 10:09 PM
markj added inline comments to D20947: Check and avoid overflow when incrementing fp->f_count in fget_unlocked() and fhold()..
Thu, Jul 18, 9:01 PM
markj added a comment to D20986: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page()..

Don't attempt to free the page if it is busy at all.

Thu, Jul 18, 9:01 PM
markj added a comment to D20947: Check and avoid overflow when incrementing fp->f_count in fget_unlocked() and fhold()..

IMO fhold() and refcount_acquire_checked() should have the __result_use_check annotation.

Thu, Jul 18, 8:59 PM
markj added a comment to D20986: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page()..

Restore a lost comment.

Thu, Jul 18, 8:21 PM
markj added inline comments to D20986: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page()..
Thu, Jul 18, 8:16 PM
markj added a comment to D16667: Extend uma_reclaim() to permit different reclamation targets..

Rebase.

Thu, Jul 18, 7:43 PM
markj added reviewers for D20986: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page().: alc, dougm, kib, jeff, glebius.
Thu, Jul 18, 6:54 PM
markj created D20986: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page()..
Thu, Jul 18, 6:53 PM
markj abandoned D20985: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page()..
Thu, Jul 18, 4:47 PM
markj created D20985: Centralize the logic in vfs_vmio_unwire() and sendfile_free_page()..
Thu, Jul 18, 4:47 PM
markj committed rS350105: MFC r349910:.
MFC r349910:
Thu, Jul 18, 1:33 AM
D20982: Document that setmode(3) is not thread safe. is now accepted and ready to land.
Thu, Jul 18, 1:23 AM

Wed, Jul 17

markj committed rS350090: Remove an old warning from UPDATING..
Remove an old warning from UPDATING.
Wed, Jul 17, 7:11 PM
markj closed D20978: Remove an old warning from UPDATING..
Wed, Jul 17, 7:11 PM
markj committed rS350089: Add an initial RELNOTES file..
Add an initial RELNOTES file.
Wed, Jul 17, 7:09 PM
markj closed D20762: Add an initial RELNOTES file..
Wed, Jul 17, 7:09 PM
markj added reviewers for D20978: Remove an old warning from UPDATING.: imp, emaste.
Wed, Jul 17, 5:15 PM
markj created D20978: Remove an old warning from UPDATING..
Wed, Jul 17, 5:15 PM
markj added inline comments to D20884: Return an error if a matching resource is not found..
Wed, Jul 17, 5:14 PM
markj committed rS350087: MFC r344629:.
MFC r344629:
Wed, Jul 17, 4:52 PM
markj committed rS350086: Remove obsolete compatibility code from rtadvd..
Remove obsolete compatibility code from rtadvd.
Wed, Jul 17, 4:51 PM
markj committed rS350084: Fix FASTTRAPIOC_GETINSTR..
Fix FASTTRAPIOC_GETINSTR.
Wed, Jul 17, 4:38 PM
markj committed rS350082: Reference stdint.h types in ctf.5..
Reference stdint.h types in ctf.5.
Wed, Jul 17, 4:32 PM
markj added a comment to D20884: Return an error if a matching resource is not found..

Ping?

Wed, Jul 17, 3:48 PM
markj committed rS350072: MFC r349711:.
MFC r349711:
Wed, Jul 17, 12:27 AM

Tue, Jul 16

markj added a comment to D20940: fusefs: merge from projects/fuse2.

Shouldn't the VFS and VM changes be split into a separate review and committed separately?

Tue, Jul 16, 9:23 PM
markj committed rS350055: Add a regression test which transfers varying number of rights..
Add a regression test which transfers varying number of rights.
Tue, Jul 16, 4:34 PM
markj closed D20942: Use a platform independent value for PKG_MAX_SIZE..
Tue, Jul 16, 4:29 PM
markj committed rS350054: Use a platform-independent constant for PKG_MAX_SIZE..
Use a platform-independent constant for PKG_MAX_SIZE.
Tue, Jul 16, 4:29 PM
markj committed rS350052: Convert the nvlist send/recv tests to ATF..
Convert the nvlist send/recv tests to ATF.
Tue, Jul 16, 4:25 PM
markj committed rS350048: Chase r350037..
Chase r350037.
Tue, Jul 16, 4:02 PM
markj committed rS350038: Always use the software DBM bit for now..
Always use the software DBM bit for now.
Tue, Jul 16, 3:41 PM
markj committed rS350037: Fix the arm64 page table entry attribute mask..
Fix the arm64 page table entry attribute mask.
Tue, Jul 16, 3:38 PM
D20970: Adds signal number format to kern.corefile is now accepted and ready to land.
Tue, Jul 16, 3:15 PM
markj committed rS350029: Propagate attribute changes during demotion..
Propagate attribute changes during demotion.
Tue, Jul 16, 2:41 PM
markj closed D20965: Propagate attribute changes during demotion..
Tue, Jul 16, 2:41 PM
markj added a comment to D20941: Optimize libnv descriptor passing..

libnv may be used in different places as well, not only Capsicum.
Right now it is cross build: https://github.com/fudosecurity/nvlist

Tue, Jul 16, 2:15 PM
markj added a comment to D20941: Optimize libnv descriptor passing..
Tue, Jul 16, 3:31 AM
markj added a reviewer for D20965: Propagate attribute changes during demotion.: kib.
Tue, Jul 16, 12:59 AM

Mon, Jul 15

markj updated the summary of D20965: Propagate attribute changes during demotion..
Mon, Jul 15, 10:58 PM
markj created D20965: Propagate attribute changes during demotion..
Mon, Jul 15, 10:57 PM
markj committed rS350004: Implement software access and dirty bit management for arm64..
Implement software access and dirty bit management for arm64.
Mon, Jul 15, 5:13 PM
markj closed D20907: Implement software AF and DBM management for arm64..
Mon, Jul 15, 5:13 PM
markj committed rS350003: pmap_clear_modify() needs to clear PTE_W..
pmap_clear_modify() needs to clear PTE_W.
Mon, Jul 15, 3:45 PM
markj committed rS350002: Fix reference counting in pmap_ts_referenced() on RISC-V..
Fix reference counting in pmap_ts_referenced() on RISC-V.
Mon, Jul 15, 3:43 PM
markj closed D20926: Fix pmap_ts_referenced()'s reference counting on RISC-V..
Mon, Jul 15, 3:43 PM
markj added a comment to D20907: Implement software AF and DBM management for arm64..
  • Check for AF when promoting.
  • Convert clean, RW mappings to RO when promoting.
  • When demoting, assert that writeable mappings are dirty.
Mon, Jul 15, 2:55 AM

Sun, Jul 14

markj added inline comments to D20907: Implement software AF and DBM management for arm64..
Sun, Jul 14, 9:28 PM
D20948: Input validation for l_linger is now accepted and ready to land.
Sun, Jul 14, 7:35 PM
D20949: Two issues with casueword(9) update. is now accepted and ready to land.
Sun, Jul 14, 6:39 PM
D20931: Cache kernel stacks in UMA so that we get NUMA support, better concurrency and statistics with less redundant code. is now accepted and ready to land.
Sun, Jul 14, 5:43 PM
markj added a comment to D20863: prototype for trimming.

It would be unfair to Peter to keep guessing solutions for this problem and letting him try them out. Does anyone listening know what I've got wrong here?

Sun, Jul 14, 5:23 PM
D20948: Input validation for l_linger is now accepted and ready to land.

We also have the (unused) so_linger_set(), which should possibly assert that the input value is valid.

Sun, Jul 14, 5:07 PM
markj added a comment to D20947: Check and avoid overflow when incrementing fp->f_count in fget_unlocked() and fhold()..

It seems that there are two related problems:

  1. Refcount overflows triggered by a kernel bug, such as the one dissected in the link.
  2. Refcount overflows triggered by malicious or buggy userspace, for instance by allocating 2^32 descriptors. (Note, at present this requires sizeof(filedescent) * (1 << 32) = 206GB of memory on amd64, including for descriptors internalized in unix socket buffers.)
Sun, Jul 14, 5:03 PM
D20907: Implement software AF and DBM management for arm64. now requires review to proceed.
  • Restore comment in pmap_ts_referenced().
  • Assert that writeable mappings are dirty in pmap_l2_demote_locked().
  • Style in pmap_mincore().
Sun, Jul 14, 4:22 PM

Sat, Jul 13

markj added inline comments to D20907: Implement software AF and DBM management for arm64..
Sat, Jul 13, 3:37 PM
markj added a comment to D20907: Implement software AF and DBM management for arm64..

Remove obsolete comment from pmap_ts_referenced().

Sat, Jul 13, 3:35 PM

Fri, Jul 12

markj updated the test plan for D20942: Use a platform independent value for PKG_MAX_SIZE..
Fri, Jul 12, 9:43 PM
markj added reviewers for D20942: Use a platform independent value for PKG_MAX_SIZE.: capsicum, oshogbo, pjd.
Fri, Jul 12, 9:42 PM
markj added reviewers for D20941: Optimize libnv descriptor passing.: capsicum, oshogbo, pjd.
Fri, Jul 12, 9:42 PM
markj created D20942: Use a platform independent value for PKG_MAX_SIZE..
Fri, Jul 12, 9:42 PM
markj created D20941: Optimize libnv descriptor passing..
Fri, Jul 12, 9:42 PM
markj added inline comments to D20931: Cache kernel stacks in UMA so that we get NUMA support, better concurrency and statistics with less redundant code..
Fri, Jul 12, 9:40 PM
markj added a comment to D20907: Implement software AF and DBM management for arm64..

I also plan to measure how long lld takes to link the kernel, with and without this change applied. lld is multi-threaded, so we can get a sense for whether using a read lock in pmap_fault() is beneficial.

Fri, Jul 12, 9:28 PM
markj updated the test plan for D20907: Implement software AF and DBM management for arm64..
Fri, Jul 12, 9:27 PM
markj updated the test plan for D20907: Implement software AF and DBM management for arm64..
Fri, Jul 12, 7:44 PM
markj added inline comments to D20924: Increase VM name limit.
Fri, Jul 12, 6:00 PM
markj added inline comments to D20907: Implement software AF and DBM management for arm64..
Fri, Jul 12, 4:37 PM
markj added a comment to D20907: Implement software AF and DBM management for arm64..
  • Leave AF set in unmanaged speculatively created mappings.
  • Restore part of the comment above pmap_pte_dirty().
Fri, Jul 12, 4:30 PM
D20936: Fix a race in udp6_output is now accepted and ready to land.

This matches the IPv4 change, so I'm fine with it going in. I agree that having a goto to the read lock case would make a bit more sense.

Fri, Jul 12, 4:02 PM
markj added a comment to D20907: Implement software AF and DBM management for arm64..
  • Rebase.
  • Update pmap_mincore() to only call pmap_pte_dirty() on managed mappings.
Fri, Jul 12, 3:46 PM
markj added inline comments to D20924: Increase VM name limit.
Fri, Jul 12, 3:39 PM
markj committed rS349943: Apply some light cleanup to uses of pmap_pte_dirty()..
Apply some light cleanup to uses of pmap_pte_dirty().
Fri, Jul 12, 3:24 PM
markj added inline comments to D20907: Implement software AF and DBM management for arm64..
Fri, Jul 12, 2:55 PM
markj added a comment to D20907: Implement software AF and DBM management for arm64..

Fix ATTR_AP_RW_BIT handling bugs.

Fri, Jul 12, 2:49 PM
D20930: Add support for a MINBUCKET zone flag. is now accepted and ready to land.
Fri, Jul 12, 2:07 PM