Page MenuHomeFreeBSD

kib (Konstantin Belousov)
User

Projects

User Details

User Since
May 16 2014, 7:35 PM (549 w, 2 d)

Recent Activity

Yesterday

kib accepted D47718: vm_map: replace list links with iterator.
Sun, Nov 24, 8:02 AM

Sat, Nov 23

kib requested review of D47717: Tweaks for pmap_qremove() and transient mappings.
Sat, Nov 23, 9:07 PM
kib added inline comments to D47678: arm64: Implement pmap_map_io_transient.
Sat, Nov 23, 6:54 PM
kib committed rG253a1fa16b98: mlx5: Fix handling of port_module_event (authored by Ariel Ehrenberg <aehrenberg@nvidia.com>).
mlx5: Fix handling of port_module_event
Sat, Nov 23, 11:01 AM
kib committed rG0d38b0bc8fbc: mlx5en: fix the sign of mlx5e_tls_st_init() error, convert from Linux to BSD (authored by kib).
mlx5en: fix the sign of mlx5e_tls_st_init() error, convert from Linux to BSD
Sat, Nov 23, 10:22 AM
kib committed rG81b38bce0794: mlx5e tls: Ensure all allocated tags have a hw context associated (authored by gallatin).
mlx5e tls: Ensure all allocated tags have a hw context associated
Sat, Nov 23, 10:05 AM
kib committed rG7fbc896e28e4: vm_page.c: remove transiently defined vm_page_free_toq_impl() prototype (authored by kib).
vm_page.c: remove transiently defined vm_page_free_toq_impl() prototype
Sat, Nov 23, 10:05 AM
kib committed rG64bf5a431cbe: mlx5_en: style function prototype (authored by kib).
mlx5_en: style function prototype
Sat, Nov 23, 10:05 AM

Fri, Nov 22

kib added inline comments to D47678: arm64: Implement pmap_map_io_transient.
Fri, Nov 22, 11:22 PM
kib added inline comments to D47678: arm64: Implement pmap_map_io_transient.
Fri, Nov 22, 8:50 AM
kib added inline comments to D47694: amd64 efi rt: handle #BP.
Fri, Nov 22, 8:46 AM

Thu, Nov 21

kib committed rGe6ec41fa86d8: amd64 efi rt: handle #BP (authored by kib).
amd64 efi rt: handle #BP
Thu, Nov 21, 10:06 PM
kib committed rGa03957a706a0: efirt: mark dynamic region executing the RT code with the TDP_EFIRT flag (authored by kib).
efirt: mark dynamic region executing the RT code with the TDP_EFIRT flag
Thu, Nov 21, 10:06 PM
kib closed D47694: amd64 efi rt: handle #BP.
Thu, Nov 21, 10:06 PM
kib added inline comments to D47694: amd64 efi rt: handle #BP.
Thu, Nov 21, 8:09 PM
kib updated the diff for D47694: amd64 efi rt: handle #BP.

Mark rt call region with TDP_EFIRT. It allows to not depend on the implementation detail of disabling page faults in the region.

Thu, Nov 21, 7:43 PM
kib accepted D47696: buf: Add a runningbufclaim() helper.
Thu, Nov 21, 7:37 PM
kib added a comment to D47694: amd64 efi rt: handle #BP.

Reformulating what @imp said, loader is executing in EFI boot services environment, while EFI RT is EFI runtime services client. The switch is supposed to pass ownership of the machine to OS, and also the rt code must be relocated. The later is known to be often buggy. This is why I implemented onfault handling for RT calls.

Thu, Nov 21, 7:27 PM
kib updated the diff for D47694: amd64 efi rt: handle #BP.

Reorder checks. Explain why I did not wanted to do it initially.

Thu, Nov 21, 4:07 PM
kib accepted D47692: device_pager: user iterators to free device pages.
Thu, Nov 21, 10:34 AM
kib updated the diff for D47694: amd64 efi rt: handle #BP.

Add some debugging

Thu, Nov 21, 10:24 AM
kib requested review of D47694: amd64 efi rt: handle #BP.
Thu, Nov 21, 5:01 AM

Wed, Nov 20

kib accepted D47681: sh(1): add -l option.
Wed, Nov 20, 12:31 PM
kib committed rG5bc24fd7a21f: rtld: drop RTLD_INIT_PAGESIZES_EARLY (authored by kib).
rtld: drop RTLD_INIT_PAGESIZES_EARLY
Wed, Nov 20, 8:17 AM
kib added inline comments to D47678: arm64: Implement pmap_map_io_transient.
Wed, Nov 20, 7:54 AM
kib accepted D47678: arm64: Implement pmap_map_io_transient.
Wed, Nov 20, 6:15 AM

Tue, Nov 19

kib accepted D47672: vfs: Fix vop_stdis_text().
Tue, Nov 19, 4:01 PM
kib accepted D47672: vfs: Fix vop_stdis_text().

So currently ETXTBSY does not work?

Tue, Nov 19, 3:14 PM
kib committed rGab2dfb93e372: ps.1: remove stray tab which breaks columns alignment (authored by kib).
ps.1: remove stray tab which breaks columns alignment
Tue, Nov 19, 5:21 AM
kib committed rG8925ea58c206: mlx5en: improve reporting of kernel TLS, IPSEC offload, and ratelimit caps (authored by kib).
mlx5en: improve reporting of kernel TLS, IPSEC offload, and ratelimit caps
Tue, Nov 19, 5:20 AM
kib closed D47523: SU+J: all writes to SU journal must be exempt from runningbufspace throttling.
Tue, Nov 19, 1:21 AM

Mon, Nov 18

kib committed rG645f8bcba9c8: ps.1: remove stray tab which breaks columns alignment (authored by kib).
ps.1: remove stray tab which breaks columns alignment
Mon, Nov 18, 12:25 PM
kib accepted D47647: Speed up syncer shutdown.
Mon, Nov 18, 12:38 AM

Sun, Nov 17

kib accepted D47644: vm: static-ize vm_page_alloc_after().
Sun, Nov 17, 5:49 AM

Sat, Nov 16

kib accepted D47630: atomic.9: Document atomic_testand*_64 and atomic_testandset_acq_long.
Sat, Nov 16, 7:01 PM
kib accepted D47629: atomic(9): Remove fcmpset-based fallback for atomic_testand(clear|set).
Sat, Nov 16, 6:59 PM
kib accepted D47628: arm: Implement atomic_testandset_acq_long as a simple wrapper.
Sat, Nov 16, 6:58 PM
kib accepted D47627: riscv: Add implementations of atomic_testand(set|clear)_(32|64|long).
Sat, Nov 16, 6:57 PM
kib accepted D47632: rangelock: Use atomic_testandset_ptr.
Sat, Nov 16, 1:50 AM
kib accepted D47631: atomic(9): Implement atomic_testand(clear|set)_ptr.
Sat, Nov 16, 1:49 AM
kib committed rG9b2226eef29a: SU+J: all writes to SU journal must be exempt from runningbufspace throttling (authored by kib).
SU+J: all writes to SU journal must be exempt from runningbufspace throttling
Sat, Nov 16, 1:42 AM
kib committed rGff7de7aa49fa: bufwrite(): adjust the comment (authored by kib).
bufwrite(): adjust the comment
Sat, Nov 16, 1:41 AM
kib committed rG9d9a14c5b612: bufwrite(): style (authored by kib).
bufwrite(): style
Sat, Nov 16, 1:41 AM

Fri, Nov 15

kib accepted D47588: fork: document _Fork as POSIX 2024.
In D47588#1085785, @kib wrote:

My feeling is that it is strange to claim that fork is 2024. It costs nothing to say there specifically that it is -p1003.1 (might be even -88, but I do not have the text).

Fri, Nov 15, 10:46 PM
kib added a comment to D47588: fork: document _Fork as POSIX 2024.

My feeling is that it is strange to claim that fork is 2024. It costs nothing to say there specifically that it is -p1003.1 (might be even -88, but I do not have the text).

Fri, Nov 15, 10:17 PM
kib accepted D47583: aio: remove write-only jobid & kernelinfo.
Fri, Nov 15, 5:09 AM
kib added a comment to D47581: libc: indicate existing functions in POSIX 2024.

Also _Fork()

Fri, Nov 15, 3:55 AM

Thu, Nov 14

kib committed rG209fd89a2810: _dl_iterate_phdr_locked(): fix libc and libdl (authored by kib).
_dl_iterate_phdr_locked(): fix libc and libdl
Thu, Nov 14, 4:58 AM
kib closed D47563: _dl_iterate_phdr_locked(): fix libc and libdl.
Thu, Nov 14, 4:58 AM
kib requested review of D47563: _dl_iterate_phdr_locked(): fix libc and libdl.
Thu, Nov 14, 3:59 AM
kib committed rG092e2ff33be2: ps.1: restore always true if predicate (authored by kib).
ps.1: restore always true if predicate
Thu, Nov 14, 2:42 AM
kib closed D47561: ps.1: restore always true if predicate.
Thu, Nov 14, 2:42 AM
kib added inline comments to rG62e6ca0f07e4: ps(1): clean up after swapout removal.
Thu, Nov 14, 2:27 AM
kib requested review of D47561: ps.1: restore always true if predicate.
Thu, Nov 14, 2:24 AM
kib added a comment to D47350: libc, libthr: coordinate stubs for pthread_{suspend,resume}_all_np.
In D47350#1084710, @kib wrote:

Why abandon? This is useful in general.

I wasn't sure if it was worth doing if I don't have a consumer in mind now that I have lsan off of it- I'm more than happy to go ahead and push it if you think it's still useful.

Thu, Nov 14, 2:10 AM
kib added a comment to D47350: libc, libthr: coordinate stubs for pthread_{suspend,resume}_all_np.

Why abandon? This is useful in general.

Thu, Nov 14, 1:34 AM
kib accepted D47518: aio: improve lock contention on the aio_job_mtx.
Thu, Nov 14, 12:50 AM
kib committed rG5f52fa2ac30e: ps.1: document rest of flag2 bits (authored by kib).
ps.1: document rest of flag2 bits
Thu, Nov 14, 12:44 AM
kib committed rG087558ec3e01: ps.1: visually align process flags hex values by filling leading zeroes (authored by kib).
ps.1: visually align process flags hex values by filling leading zeroes
Thu, Nov 14, 12:44 AM
kib committed rGb01067349311: struct proc: add locking annotation for p_pendingcnt (authored by kib).
struct proc: add locking annotation for p_pendingcnt
Thu, Nov 14, 12:44 AM
kib committed rG5eda09abc32f: sys/proc.h: add comments to the flag2 bits (authored by kib).
sys/proc.h: add comments to the flag2 bits
Thu, Nov 14, 12:44 AM
kib committed rGa2d4e8b93ea2: rtld_get_var.3: fix typo (authored by kib).
rtld_get_var.3: fix typo
Thu, Nov 14, 12:43 AM
kib committed rGdcdc0d716715: rtld.1: cross-reference rtld_get_var.3 (authored by kib).
rtld.1: cross-reference rtld_get_var.3
Thu, Nov 14, 12:43 AM
kib committed rGcc3978cb74d6: Document rtld_get_var(3) (authored by kib).
Document rtld_get_var(3)
Thu, Nov 14, 12:43 AM
kib committed rG86a2abab0a8e: rtld: add rtld_{get,set}_var (authored by kib).
rtld: add rtld_{get,set}_var
Thu, Nov 14, 12:43 AM
kib committed rGdb21e6980b92: rtld: make it easier to add sparce non-default members to ld_env_var_desc (authored by kib).
rtld: make it easier to add sparce non-default members to ld_env_var_desc
Thu, Nov 14, 12:43 AM
kib committed rG287995f1086e: sys/link_elf.h: remove extern linkage specifier from dl_iterate_phdr() prototype (authored by kib).
sys/link_elf.h: remove extern linkage specifier from dl_iterate_phdr() prototype
Thu, Nov 14, 12:43 AM
kib committed rG8ee3da8e738b: rtld: 1-bit for bool is enough (authored by kib).
rtld: 1-bit for bool is enough
Thu, Nov 14, 12:43 AM
kib accepted D47558: rtld: implement _dl_iterate_phdr_locked.
Thu, Nov 14, 12:41 AM
kib added inline comments to D47558: rtld: implement _dl_iterate_phdr_locked.
Thu, Nov 14, 12:15 AM
kib added a comment to D47556: sched_getcpu: add man page.

If you move the page to section 3, it should be in lib/libc/gen.

I wondered about that, but the implementation is in libsys and there are a small number of section 3 pages in libsys, like getpagesize.3, so should be the same for sched_getcpu, no?

Thu, Nov 14, 12:08 AM

Wed, Nov 13

kib accepted D47556: sched_getcpu: add man page.

If you move the page to section 3, it should be in lib/libc/gen.

Wed, Nov 13, 11:50 PM
kib added a comment to D47558: rtld: implement _dl_iterate_phdr_locked.

Now after a fresh look, I suggest to change the new function to be read-only. What I mean, is to remove hold/unhold_object and marker linkage. I believe this is 'better' in the sense that it would induce the UB memory accesses on the caller, but other threads would not see unlocked updates.

Wed, Nov 13, 11:12 PM
kib committed rGde7a92756f0a: mlx5en: improve reporting of kernel TLS, IPSEC offload, and ratelimit caps (authored by kib).
mlx5en: improve reporting of kernel TLS, IPSEC offload, and ratelimit caps
Wed, Nov 13, 10:57 PM
kib added inline comments to D47556: sched_getcpu: add man page.
Wed, Nov 13, 10:21 PM
kib added a comment to D47523: SU+J: all writes to SU journal must be exempt from runningbufspace throttling.
In D47523#1084446, @kib wrote:

Well, I initally mean to simply convert B_ASYNC to sync by clearing the flag, if runningbufspace limit would be hit. My reasoning to switch to TDP_NORBS is to be more like existing solution for the buffer daemon instead, to not provide two separate hacks for the same problem. I do not think that B_ASYNCWAIT is needed.

This is what I tried first, it doesn't work. bufdone() needs to know about this special case, since it handles completion differently depending on whether B_ASYNC was set or not.

Wed, Nov 13, 7:45 PM
kib committed rG46f02c4282ff: SU+J: all writes to SU journal must be exempt from runningbufspace throttling (authored by kib).
SU+J: all writes to SU journal must be exempt from runningbufspace throttling
Wed, Nov 13, 7:36 PM
kib committed rGd0b41249bfbe: bufwrite(): adjust the comment (authored by kib).
bufwrite(): adjust the comment
Wed, Nov 13, 7:36 PM
kib committed rGc1d93f81e49c: bufwrite(): style (authored by kib).
bufwrite(): style
Wed, Nov 13, 7:36 PM
kib added a comment to D47523: SU+J: all writes to SU journal must be exempt from runningbufspace throttling.

I think this change is probably ok.

The larger invariant to preserve is that the filesystem cannot issue async I/O to implement bstrategy(). If it does, then the maximum number of recursive I/Os must be less than lorunningspace/maxphys (on small memory systems this can be 0), OR, the code issuing the async writes must set TDP_NORUNNINGSPACE.

I tried implementing your suggestion to make bufwait(B_ASYNC) block if the write exceeds the hirunningspace threshold. I think this solves the problem, but it's hard to be sure, as the bawrite() in softdep_process_journal() is hard to trigger (normally this work is handled by the flushing thread). It is a bit complex (requires a new B_ASYNCWAIT buf flag and some locking to synchronize the sleep/wakeup), but I believe it relaxes this invariant. I'm not sure whether to continue working on it.

Wed, Nov 13, 7:32 PM
kib accepted D47539: Export the kernel API pgrp_calc_jobc.
Wed, Nov 13, 6:08 PM
kib committed rG19d23cb8acc9: vm_object: do not assume that un_pager.devp.dev is cdev (authored by kib).
vm_object: do not assume that un_pager.devp.dev is cdev
Wed, Nov 13, 6:07 PM
kib committed rG300d034b3c29: device_pager: rename the un_pager.devp.dev field to handle (authored by kib).
device_pager: rename the un_pager.devp.dev field to handle
Wed, Nov 13, 6:07 PM
kib added a comment to D47291: acpi bus: store children domain in ivar.

Ping?

Wed, Nov 13, 2:57 PM

Tue, Nov 12

kib added inline comments to D47518: aio: improve lock contention on the aio_job_mtx.
Tue, Nov 12, 11:33 PM
kib accepted D47526: swap_pager: Ensure that swapoff puts swapped-in pages in page queues.
Tue, Nov 12, 11:21 PM
kib committed rG92a9501b6be3: vm_object: do not assume that un_pager.devp.dev is cdev (authored by kib).
vm_object: do not assume that un_pager.devp.dev is cdev
Tue, Nov 12, 11:20 PM
kib committed rGc57dc755fa1a: device_pager: rename the un_pager.devp.dev field to handle (authored by kib).
device_pager: rename the un_pager.devp.dev field to handle
Tue, Nov 12, 11:20 PM
kib requested review of D47523: SU+J: all writes to SU journal must be exempt from runningbufspace throttling.
Tue, Nov 12, 6:36 AM
kib committed rG166c1fac59f0: struct proc: add locking annotation for p_pendingcnt (authored by kib).
struct proc: add locking annotation for p_pendingcnt
Tue, Nov 12, 6:07 AM
kib committed rG48d6303d9c96: amdiommu: hide HPET report under verbose (authored by kib).
amdiommu: hide HPET report under verbose
Tue, Nov 12, 12:38 AM
kib committed rG19cefbb3ddb1: amdiommu: short-circuit all amdiommu_find_unit() functions (authored by kib).
amdiommu: short-circuit all amdiommu_find_unit() functions
Tue, Nov 12, 12:38 AM

Mon, Nov 11

kib added inline comments to D47518: aio: improve lock contention on the aio_job_mtx.
Mon, Nov 11, 11:46 PM
kib added inline comments to D47518: aio: improve lock contention on the aio_job_mtx.
Mon, Nov 11, 8:17 PM

Sun, Nov 10

kib committed rG37095a500dc1: libc: remove some XXX for russian translations of errnos (authored by kib).
libc: remove some XXX for russian translations of errnos
Sun, Nov 10, 1:42 AM
kib committed rG27f51b8c5111: libc: mechanically convert ru_RU msg catalog from KOI8-R to UTF-8 (authored by kib).
libc: mechanically convert ru_RU msg catalog from KOI8-R to UTF-8
Sun, Nov 10, 1:42 AM
kib committed rGd43c3ae472ad: catopen(3): align returned errors with IEEE Std 1003.1™-2024 (authored by kib).
catopen(3): align returned errors with IEEE Std 1003.1™-2024
Sun, Nov 10, 1:42 AM

Sat, Nov 9

kib committed rG9805e5b071a1: amdiommu: short-circuit all amdiommu_find_unit() functions (authored by kib).
amdiommu: short-circuit all amdiommu_find_unit() functions
Sat, Nov 9, 10:33 PM
kib committed rG1bca58a1d40d: amdiommu: hide HPET report under verbose (authored by kib).
amdiommu: hide HPET report under verbose
Sat, Nov 9, 9:08 PM
kib committed rG0a500beeb03b: iommu: Clean up a lingering function prototype (authored by markj).
iommu: Clean up a lingering function prototype
Sat, Nov 9, 8:20 PM