Page MenuHomeFreeBSD
Feed Advanced Search

May 13 2021

jah added inline comments to D30218: VFS_QUOTACTL(9): allow implementation to indicate busy state changes.
May 13 2021, 1:56 AM
jah updated the diff for D30218: VFS_QUOTACTL(9): allow implementation to indicate busy state changes.

Allow the implementation to direct busy state changes

May 13 2021, 1:55 AM
jah added a comment to D30152: unionfs: reference the underlying FS' mount objects when using them.

Do you plan to revise this change after changing the VFS_QUOTACTL interface? I'm just not sure whether to wait until that's done before re-reading this.

May 13 2021, 1:53 AM

May 12 2021

jah updated the diff for D30152: unionfs: reference the underlying FS' mount objects when using them.

Use correct variable when passing through VFS_QUOTACTL

May 12 2021, 2:43 AM

May 11 2021

jah added inline comments to D30218: VFS_QUOTACTL(9): allow implementation to indicate busy state changes.
May 11 2021, 7:06 PM
jah requested review of D30218: VFS_QUOTACTL(9): allow implementation to indicate busy state changes.
May 11 2021, 7:03 PM
jah updated the diff for D30152: unionfs: reference the underlying FS' mount objects when using them.

Follow the unbusy requirements for vfs_quotactl()

May 11 2021, 7:00 PM

May 10 2021

jah added inline comments to D30152: unionfs: reference the underlying FS' mount objects when using them.
May 10 2021, 11:46 PM
jah updated the diff for D30152: unionfs: reference the underlying FS' mount objects when using them.

Style

May 10 2021, 4:51 PM

May 7 2021

jah updated the diff for D30152: unionfs: reference the underlying FS' mount objects when using them.

Use atomic_load_ptr to enforce single load of vp->v_mount

May 7 2021, 6:06 PM
jah updated the diff for D30152: unionfs: reference the underlying FS' mount objects when using them.

Apply vfs_busy, minor refactoring

May 7 2021, 5:48 AM
jah added a comment to D30152: unionfs: reference the underlying FS' mount objects when using them.
In D30152#677009, @kib wrote:
In D30152#677007, @jah wrote:
In D30152#676937, @jah wrote:

A simpler approach would be to directly store the underlying mount objects in struct unionfs_mount, vfs_ref() them on mount and vfs_rel() them on unmount.
But that would have the effect of blocking forcible unmount of the underlying filesystems in vfs_mount_destroy(). Meanwhile, the underlying FS' vnodes would still be flushed before this happens so the underlying filesystems would be no more usable than they are with this approach.

In D30152#676980, @kib wrote:

Taking a reference on the mount point does not prevent unmount. For instance, calling VFS_QUOTACTL() requires busying mp, which, if successful, prevents unmount until unbusy. In fact, busying fs is currently enforced by VFS_QUOTACTL protocol since UFS (the only actual quotactl provider) in some cases unbusies and then busies the mp.

It certainly doesn't prevent the unmount operations (vflush, etc) from happening, but doesn't it prevent the unmount system call from returning? That's what I observed in testing, and is corroborated by reading vfs_mount_destroy().

Why 'preventing syscall from returning' matters? What matters is that unmount destroys the private mount data pointed to by mnt_data. This data is usually vital for VFS_XXX() methods, and destroying/freeing it while these methods operate causes undefined behavior, a crash in the best case.

May 7 2021, 2:58 AM
jah added a comment to D30152: unionfs: reference the underlying FS' mount objects when using them.
In D30152#676937, @jah wrote:

A simpler approach would be to directly store the underlying mount objects in struct unionfs_mount, vfs_ref() them on mount and vfs_rel() them on unmount.
But that would have the effect of blocking forcible unmount of the underlying filesystems in vfs_mount_destroy(). Meanwhile, the underlying FS' vnodes would still be flushed before this happens so the underlying filesystems would be no more usable than they are with this approach.

May 7 2021, 12:51 AM

May 6 2021

jah added a comment to D30152: unionfs: reference the underlying FS' mount objects when using them.

A simpler approach would be to directly store the underlying mount objects in struct unionfs_mount, vfs_ref() them on mount and vfs_rel() them on unmount.
But that would have the effect of blocking forcible unmount of the underlying filesystems in vfs_mount_destroy(). Meanwhile, the underlying FS' vnodes would still be flushed before this happens so the underlying filesystems would be no more usable than they are with this approach.

May 6 2021, 9:57 PM
jah requested review of D30152: unionfs: reference the underlying FS' mount objects when using them.
May 6 2021, 9:54 PM

Mar 31 2021

jah committed rG8dc8feb53da0: Clean up a couple of MD warts in vm_fault_populate(): (authored by jah).
Clean up a couple of MD warts in vm_fault_populate():
Mar 31 2021, 1:18 AM
jah closed D29439: Clean up a couple of MD warts in vm_fault_populate():.
Mar 31 2021, 1:18 AM

Mar 27 2021

jah updated the diff for D29439: Clean up a couple of MD warts in vm_fault_populate():.

Adjust wording in comment, rearrange return value assertion

Mar 27 2021, 8:42 PM
jah accepted D29442: vm_fault: handle KERN_PROTECTION_FAILURE.
Mar 27 2021, 2:00 PM
jah added inline comments to D29439: Clean up a couple of MD warts in vm_fault_populate():.
Mar 27 2021, 3:23 AM
jah added reviewers for D29439: Clean up a couple of MD warts in vm_fault_populate():: kib, markj, PowerPC, MIPS.
Mar 27 2021, 3:19 AM
jah requested review of D29439: Clean up a couple of MD warts in vm_fault_populate():.
Mar 27 2021, 3:17 AM
jah added inline comments to D28717: vm_page_grab*: Consolidate common logic into vm_page_grab_release().
Mar 27 2021, 2:46 AM

Mar 21 2021

jah committed rGd22883d71544: Remove PCPU_INC (authored by jah).
Remove PCPU_INC
Mar 21 2021, 2:30 AM
jah closed D29308: Remove PCPU_INC.
Mar 21 2021, 2:30 AM

Mar 17 2021

jah requested review of D29308: Remove PCPU_INC.
Mar 17 2021, 1:25 AM

Mar 16 2021

jah closed D29151: factor out PT page allocation/freeing.
Mar 16 2021, 12:15 AM
jah committed rGc2460d7cfe9f: factor out PT page allocation/freeing (authored by jah).
factor out PT page allocation/freeing
Mar 16 2021, 12:15 AM

Mar 14 2021

jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 14 2021, 3:50 PM

Mar 13 2021

jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 13 2021, 7:19 PM
jah updated the diff for D29151: factor out PT page allocation/freeing.

Fix la57 table accounting

Mar 13 2021, 5:28 PM
jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 13 2021, 5:26 PM
jah updated the diff for D29151: factor out PT page allocation/freeing.

--remove unnecessary include
--add la57 bootstrap accounting
--further cleanup to improve code reuse

Mar 13 2021, 6:22 AM
jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 13 2021, 4:24 AM
jah updated the diff for D29151: factor out PT page allocation/freeing.

Revert accidentally-committed PCID counter removal, incorporate resident_count

Mar 13 2021, 2:40 AM

Mar 10 2021

jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 10 2021, 4:50 PM
jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 10 2021, 5:05 AM
jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 10 2021, 2:59 AM
jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 10 2021, 2:52 AM

Mar 9 2021

jah added inline comments to D29151: factor out PT page allocation/freeing.
Mar 9 2021, 6:00 PM
jah requested review of D29151: factor out PT page allocation/freeing.
Mar 9 2021, 5:56 PM
jah committed rGe4b8deb22227: amd64 pmap: convert to counter(9), add PV and pagetable page counts (authored by jah).
amd64 pmap: convert to counter(9), add PV and pagetable page counts
Mar 9 2021, 5:36 PM
jah closed D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
Mar 9 2021, 5:35 PM

Mar 3 2021

jah added a comment to D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
In D28923#650048, @kib wrote:

I probably should have been more explicit, I proposed to drop the pt_page_count at all. But I hope that you will follow up with pmap_pt_page_alloc() patch so this does not matter much.

Mar 3 2021, 4:47 PM
jah updated the diff for D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
  • Revert "Remove PCID save count, factor out PT page allocation/freeing"
  • Fix NULL check in pmap_large_map_getptp_unlocked()
Mar 3 2021, 4:04 AM

Mar 1 2021

jah accepted D28869: multimedia/cx88: Fix build with default PIE..
Mar 1 2021, 8:28 PM
jah updated the diff for D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
  • Remove PCID save count, factor out PT page allocation/freeing
Mar 1 2021, 4:42 PM

Feb 27 2021

jah added inline comments to D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
Feb 27 2021, 6:07 PM

Feb 26 2021

jah added inline comments to D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
Feb 26 2021, 3:03 PM

Feb 25 2021

jah added inline comments to D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
Feb 25 2021, 5:41 PM
jah requested review of D28923: amd64 pmap: convert to counter(9), add PV and pagetable page counts.
Feb 25 2021, 5:37 PM

Feb 24 2021

jah committed rG941747f63cfa: Fix divide-by-zero panic when ASLR is enabled and superpages disabled (authored by jah).
Fix divide-by-zero panic when ASLR is enabled and superpages disabled
Feb 24 2021, 12:02 AM
jah committed rGfc6c898ec5f4: Fix divide-by-zero panic when ASLR is enabled and superpages disabled (authored by jah).
Fix divide-by-zero panic when ASLR is enabled and superpages disabled
Feb 24 2021, 12:00 AM

Feb 15 2021

jah committed rG41032835dc2d: Fix divide-by-zero panic when ASLR is enabled and superpages disabled (authored by jah).
Fix divide-by-zero panic when ASLR is enabled and superpages disabled
Feb 15 2021, 6:37 PM
jah closed D28678: Fix divide-by-zero panic when ALSR is enabled and superpages disabled.
Feb 15 2021, 6:37 PM
jah requested review of D28678: Fix divide-by-zero panic when ALSR is enabled and superpages disabled.
Feb 15 2021, 3:09 AM

Feb 11 2021

jah added a comment to D28592: Add basic stats for vm_fault() busy-page waits.
In D28592#640118, @mjg wrote:

I have no comments about usefulness of adding these counters. I have to note the patch negatively affects scalability as it adds loads from the page form something which gets modified by other threads. If adding these stats, it would have to happen inside of vm_page_busy_sleep.

Feb 11 2021, 7:00 PM
jah requested review of D28592: Add basic stats for vm_fault() busy-page waits.
Feb 11 2021, 6:03 PM

Jan 26 2021

jah committed rG70cdab054c8f: rctl(4): support throttling resource usage to 0 (authored by jah).
rctl(4): support throttling resource usage to 0
Jan 26 2021, 3:56 AM

Jan 15 2021

jah accepted D28147: Add malloc_domainset_aligned(9) and use it in x86 busdma bounce..
Jan 15 2021, 6:31 AM

Jan 14 2021

jah added inline comments to D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 14 2021, 3:27 AM
jah added inline comments to D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 14 2021, 1:26 AM
jah accepted D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 14 2021, 1:22 AM
jah added inline comments to D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 14 2021, 12:59 AM
jah added inline comments to D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 14 2021, 12:17 AM

Jan 13 2021

jah added inline comments to D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 13 2021, 8:03 PM

Jan 12 2021

jah accepted D28108: x86 busdma_bounce: do not make assumptions about alignment of malloc(9) results..
Jan 12 2021, 12:02 AM

Jan 11 2021

jah closed D27858: rctl(4): support throttling resource usage to 0.
Jan 11 2021, 11:38 PM
jah committed rGe8a5a1ad7154: rctl(4): support throttling resource usage to 0 (authored by jah).
rctl(4): support throttling resource usage to 0
Jan 11 2021, 11:38 PM

Jan 9 2021

jah added reviewers for D27858: rctl(4): support throttling resource usage to 0: kib, mjg.
Jan 9 2021, 10:52 PM

Dec 30 2020

jah added a reviewer for D27858: rctl(4): support throttling resource usage to 0: trasz.
Dec 30 2020, 11:51 PM
jah requested review of D27858: rctl(4): support throttling resource usage to 0.
Dec 30 2020, 11:49 PM

Oct 6 2020

jah committed rP551561: multimedia/libtuner: update to 1.1.5.
multimedia/libtuner: update to 1.1.5
Oct 6 2020, 7:12 AM

Sep 12 2020

jah committed rS365652: amd64: prevent KCSan false positives on LAPIC mapping.
amd64: prevent KCSan false positives on LAPIC mapping
Sep 12 2020, 7:04 AM
jah closed D26354: amd64: prevent KCSan false positives on LAPIC mapping.
Sep 12 2020, 7:04 AM

Sep 8 2020

jah added reviewers for D26354: amd64: prevent KCSan false positives on LAPIC mapping: kib, gbe, andrew.
Sep 8 2020, 1:00 AM
jah updated the diff for D26354: amd64: prevent KCSan false positives on LAPIC mapping.

Whitespace

Sep 8 2020, 12:57 AM
jah requested review of D26354: amd64: prevent KCSan false positives on LAPIC mapping.
Sep 8 2020, 12:56 AM

Sep 1 2020

jah added a comment to D26282: Modernize spkr(4).

Seemed like a cute driver and a fun thing to do with some spare time while I was traveling.
I've verified that spkrtest(8) cycles through the notes without error, but since I'm away from the one machine I have with an actual speaker, I haven't been able to test by ear.

Sep 1 2020, 5:08 PM
jah added a reviewer for D26282: Modernize spkr(4): imp.
Sep 1 2020, 5:06 PM
jah requested review of D26282: Modernize spkr(4).
Sep 1 2020, 5:06 PM

Aug 14 2020

jah committed rS364239: kenv: avoid sleepable alloc for integer tunables.
kenv: avoid sleepable alloc for integer tunables
Aug 14 2020, 9:37 PM
jah closed D26010: kenv: avoid sleepable alloc for integer tunables.
Aug 14 2020, 9:37 PM

Aug 9 2020

jah retitled D26010: kenv: avoid sleepable alloc for integer tunables from kenv: avoid sleepable malloc for integer tunables to kenv: avoid sleepable alloc for integer tunables.
Aug 9 2020, 8:30 AM
jah retitled D26010: kenv: avoid sleepable alloc for integer tunables from kern_environment: avoid sleepable malloc for integer tunables, switch to rmlock to kenv: avoid sleepable malloc for integer tunables, switch to rmlock.
Aug 9 2020, 8:27 AM
jah retitled D26010: kenv: avoid sleepable alloc for integer tunables from kenv: avoid sleepable malloc for integer tunables, switch to rmlock to kenv: avoid sleepable malloc for integer tunables.
Aug 9 2020, 8:27 AM
jah updated the diff for D26010: kenv: avoid sleepable alloc for integer tunables.

Factor locking/unlocking into kenv_acquire() and kenv_release(), and use them for some light cleanup

Aug 9 2020, 8:23 AM
jah updated the summary of D26010: kenv: avoid sleepable alloc for integer tunables.
Aug 9 2020, 4:37 AM
jah updated the diff for D26010: kenv: avoid sleepable alloc for integer tunables.

Return kenv_lock to a mutex

Aug 9 2020, 4:37 AM
jah added a comment to D26010: kenv: avoid sleepable alloc for integer tunables.
In D26010#576845, @mjg wrote:

The statement was that rmlocks distribute the lock per-CPU which means increased memory use. There are cases where this is perfectly warranted of course, I just doubt this one qualifies.

kenv should almost never be used past boot and even then I highly doubt the lock is contended enough to warrant any non-trivial changes. There may be offenders which keep re-reading the same value when they could do it once, but I don't think they are worth tracking down either. I do suspect there are nice wins to get like avoiding memory alloc (which also happen to fix bugs), but past that I would suggest not messing with the area.

In my opinion justifying this particular conversion would require a real world workload running into the problem which happens to not abuse the interface (like aforementioned re-reads of the same stuff), but I doubt there is something legitimate like this out there. However, I'm not going to stand in the way.

Aug 9 2020, 2:15 AM
jah added a comment to D26010: kenv: avoid sleepable alloc for integer tunables.
In D26010#576843, @mjg wrote:

Is kenv frequently used to begin with? rm lock would add memory use per-cpu, so arguably it would be a pessimization. I also suspect we may be able to get away without any locks to begin with with some trickery.

Either way, I think the change to strtok in place is a good idea and an equivalent should be done for other routines if applicable.

That said, can you please open a separate review for the locking change and only keep the actual bugfix here?

Aug 9 2020, 1:34 AM
jah added reviewers for D26010: kenv: avoid sleepable alloc for integer tunables: sjg, kevans, mjg.
Aug 9 2020, 1:08 AM
jah requested review of D26010: kenv: avoid sleepable alloc for integer tunables.
Aug 9 2020, 1:03 AM

Aug 2 2020

jah closed D25564: vt(4): CONS_HISTORY/CONS_CLRHIST should operate on issuing terminal.
Aug 2 2020, 8:18 PM
jah committed rS363784: vt(4): CONS_HISTORY/CONS_CLRHIST should operate on issuing terminal.
vt(4): CONS_HISTORY/CONS_CLRHIST should operate on issuing terminal
Aug 2 2020, 8:18 PM

Jul 19 2020

jah added a comment to D25564: vt(4): CONS_HISTORY/CONS_CLRHIST should operate on issuing terminal.

ping

Jul 19 2020, 8:41 AM

Jul 4 2020

jah requested review of D25564: vt(4): CONS_HISTORY/CONS_CLRHIST should operate on issuing terminal.
Jul 4 2020, 10:22 PM

Jun 3 2020

jah added inline comments to D25107: Remove unnecessary WITNESS check in x86 bounce_bus_dmamem_alloc().
Jun 3 2020, 2:31 AM
jah committed rS361741: Remove unnecessary WITNESS check in x86 bus_dma.
Remove unnecessary WITNESS check in x86 bus_dma
Jun 3 2020, 12:16 AM
jah closed D25107: Remove unnecessary WITNESS check in x86 bounce_bus_dmamem_alloc().
Jun 3 2020, 12:16 AM