Page MenuHomeFreeBSD

kib (Konstantin Belousov)
User

Projects

User Details

User Since
May 16 2014, 7:35 PM (612 w, 6 d)

Recent Activity

Today

kib committed rGcb81a9c18db9: x86: provide extended description for x86_msr_op(9) (authored by kib).
x86: provide extended description for x86_msr_op(9)
Fri, Feb 13, 8:19 AM
kib committed rG36ceb5509d01: x86_msr_op(9): consistently return the value read from MSR (authored by kib).
x86_msr_op(9): consistently return the value read from MSR
Fri, Feb 13, 8:18 AM
kib closed D55045: x86: add a safe variant of MSR_OP_SCHED* operations.
Fri, Feb 13, 8:18 AM
kib committed rGaf99e40af1dd: x86: add a safe variant of MSR_OP_SCHED* operations for x86_msr_op(9) (authored by kib).
x86: add a safe variant of MSR_OP_SCHED* operations for x86_msr_op(9)
Fri, Feb 13, 8:18 AM
kib added inline comments to D55264: filt_timerexpire_l(): re-insert restarted timer into head instead of tail.
Fri, Feb 13, 7:16 AM

Yesterday

kib requested review of D55264: filt_timerexpire_l(): re-insert restarted timer into head instead of tail.
Thu, Feb 12, 8:33 PM
kib added inline comments to D55230: fusefs: redo vnode attribute locking.
Thu, Feb 12, 7:09 PM
kib added a comment to D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

https://reviews.freebsd.org/D55045

Thu, Feb 12, 3:29 PM
kib added inline comments to D55045: x86: add a safe variant of MSR_OP_SCHED* operations.
Thu, Feb 12, 3:23 PM
kib added inline comments to D55230: fusefs: redo vnode attribute locking.
Thu, Feb 12, 3:10 PM
kib added a comment to D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

Feel free to ignore this suggestion: rather than having MSR_OP_SAFE, I would instead introduce x86_msr_op_safe(). Then x86_msr_op() can keep the void return type.

I prefer to expose one function. There is no harm from returning unused value.

Thu, Feb 12, 3:04 PM
kib updated the diff for D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

Keep interrupts disabled around ops for SCHED.
Allow SAFE variants of RENDEZVOUS.

Thu, Feb 12, 12:57 PM
kib added a comment to D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

Ok, I give up to make some progress. I still disagree with this approach.

Thu, Feb 12, 12:55 PM
kib added a comment to D55255: libsys/arm: include ARM EABI unwind bits into libsys.

I understand that libsys might be the last frame.
However, this also means that the unwinder is supposed to call the function aeabi_unwind_cpp_pr0, found in the .ARM.exidx section of the corresponding object.
In your case, this is
buildin_trap().
Is this right?

This is the last question, I promise.

Thu, Feb 12, 10:00 AM
kib added a comment to D55255: libsys/arm: include ARM EABI unwind bits into libsys.

We do want the unwind info generated for libsys. Although libsys cannot generate exceptions synchronously, it still might be the last frame for stack where signal is delivered for process that slept in the slow syscall. The unwinding info is needed for any dwarf stack unwinders then, like gdb, libunwind, etc, even in its armv7 variant, as far as I understand.

Thu, Feb 12, 8:45 AM
kib committed rG10fde719587c: lib/libc/net/sockatmark.3: fix groff mdoc warning (authored by kib).
lib/libc/net/sockatmark.3: fix groff mdoc warning
Thu, Feb 12, 7:58 AM
kib committed rGc67d8acca30e: sbin/setkey/setkey.8: cleanup groff mdoc warnings (authored by kib).
sbin/setkey/setkey.8: cleanup groff mdoc warnings
Thu, Feb 12, 7:52 AM
kib added inline comments to D55230: fusefs: redo vnode attribute locking.
Thu, Feb 12, 6:48 AM
kib accepted D55250: arm64: Have a common call to userret.

IMHO the control flow could be made less confusing. Right now it is 'break' -> userret, and in one place it is goto no_userret. I suggest to add a control variable like 'use_userret', set to true, assigned from svc_handler() return value. Then instead of goto no userret. check the value of use_userret around userret() call. Hope it is understandable.

Thu, Feb 12, 6:37 AM
kib added a comment to D55255: libsys/arm: include ARM EABI unwind bits into libsys.

Should not these symbols also be marked as weak? Hidden symbols are not 'overloaded' in the same library. kib, jrtc27 any comment about this, please?

Thu, Feb 12, 6:04 AM

Wed, Feb 11

kib committed rG89589b6d3fba: amd64: add LASS support (authored by kib).
amd64: add LASS support
Wed, Feb 11, 4:05 PM
kib closed D55218: amd64: add LASS support.
Wed, Feb 11, 4:05 PM
kib updated the diff for D55218: amd64: add LASS support.

Expand LASS in the comment.

Wed, Feb 11, 3:15 PM
kib added a comment to D55218: amd64: add LASS support.

We'll want to add a note to mitigations(7) as well; I can take a look at that.

Wed, Feb 11, 3:15 PM
kib updated the diff for D55218: amd64: add LASS support.

Drop unneeded chunk.

Wed, Feb 11, 2:47 PM
kib added inline comments to D53472: Add loader support for xhci debug.
Wed, Feb 11, 1:59 PM
kib added inline comments to D55230: fusefs: redo vnode attribute locking.
Wed, Feb 11, 1:49 PM
kib updated the diff for D55218: amd64: add LASS support.

Add comment why SMAP is required.

Wed, Feb 11, 10:59 AM
kib updated the diff for D55218: amd64: add LASS support.

Require SMAP for LASS.

Wed, Feb 11, 10:55 AM
kib committed rG164d8af43ecf: i386: Fix build and remove empty unused macro (authored by jrtc27).
i386: Fix build and remove empty unused macro
Wed, Feb 11, 5:19 AM
kib committed rG8cec47467a99: Re-introduce kern.sched.topology_spec (authored by kib).
Re-introduce kern.sched.topology_spec
Wed, Feb 11, 5:19 AM
kib committed rG68feaa1cf268: SCHED_4BSD: maybe_resched() cannot schedule ast() for curthread (authored by kib).
SCHED_4BSD: maybe_resched() cannot schedule ast() for curthread
Wed, Feb 11, 5:19 AM
kib committed rG4e5c15f3107e: tuning.7: document schedulers knobs (authored by kib).
tuning.7: document schedulers knobs
Wed, Feb 11, 5:19 AM
kib committed rG20f2249d3913: kern/sched: deduplicate dtrace hook vars (authored by kib).
kern/sched: deduplicate dtrace hook vars
Wed, Feb 11, 5:18 AM
kib committed rGa3fb3d08872b: kern/sched: deduplicate sdt probes (authored by kib).
kern/sched: deduplicate sdt probes
Wed, Feb 11, 5:18 AM
kib committed rGa3b5daf4242f: sys: enable both SCHED_ULE and SCHED_4BSD for some configs (authored by kib).
sys: enable both SCHED_ULE and SCHED_4BSD for some configs
Wed, Feb 11, 5:18 AM
kib committed rGbd74830ba874: sched_shim: restore kern.ccpu sysctl (authored by kib).
sched_shim: restore kern.ccpu sysctl
Wed, Feb 11, 5:18 AM
kib committed rG916cc3877e30: kern/sched: move duplicate preemption stat vars into sched_shim.c (authored by kib).
kern/sched: move duplicate preemption stat vars into sched_shim.c
Wed, Feb 11, 5:18 AM
kib committed rG1d4bc1895f88: sysctl kern.sched.ule.topology_spec: allow to run if ULE is not initialized (authored by kib).
sysctl kern.sched.ule.topology_spec: allow to run if ULE is not initialized
Wed, Feb 11, 5:18 AM
kib committed rGe642bf4f6dab: net/iflib.c: move out scheduler-depended code into the hook (authored by kib).
net/iflib.c: move out scheduler-depended code into the hook
Wed, Feb 11, 5:18 AM
kib committed rGf491e0d2a85a: x86/cpu_machdep.c: unconditionally fence (authored by kib).
x86/cpu_machdep.c: unconditionally fence
Wed, Feb 11, 5:18 AM
kib committed rGac5ea31b474a: x86/local_apic.c: remove direct SCHED_ULE use (authored by kib).
x86/local_apic.c: remove direct SCHED_ULE use
Wed, Feb 11, 5:18 AM
kib committed rG29512eb203ae: cpu_switch(): unconditionally wait on the blocked mutex transient (authored by kib).
cpu_switch(): unconditionally wait on the blocked mutex transient
Wed, Feb 11, 5:18 AM
kib committed rG684091fa5e3a: kern/sched_shim.c: Add sysctl kern.sched.available (authored by kib).
kern/sched_shim.c: Add sysctl kern.sched.available
Wed, Feb 11, 5:18 AM
kib committed rG6300032ff6e9: sys: Move 4BSD sysctls under kern.sched.4bsd (authored by kib).
sys: Move 4BSD sysctls under kern.sched.4bsd
Wed, Feb 11, 5:18 AM
kib committed rG22515fb38f99: sys: Make sched_4bsd a sched instance (authored by kib).
sys: Make sched_4bsd a sched instance
Wed, Feb 11, 5:18 AM
kib committed rGd19ddc36e01d: sys: Move ULE sysctls under kern.sched.ule (authored by kib).
sys: Move ULE sysctls under kern.sched.ule
Wed, Feb 11, 5:18 AM
kib committed rGec10524db95a: sys: Make sched_ule a sched instance (authored by kib).
sys: Make sched_ule a sched instance
Wed, Feb 11, 5:18 AM
kib committed rG89388d56afb6: kern/sched_shim.c: provide required SYSINIT hooks (authored by kib).
kern/sched_shim.c: provide required SYSINIT hooks
Wed, Feb 11, 5:18 AM
kib committed rG9c5067a07b2e: Add kern/sched_shim.c (authored by kib).
Add kern/sched_shim.c
Wed, Feb 11, 5:18 AM
kib committed rG159a66aecc9c: kern/sched_shim.c: Provide a scheduler selection machinery (authored by kib).
kern/sched_shim.c: Provide a scheduler selection machinery
Wed, Feb 11, 5:18 AM
kib committed rG77be529eab3a: sys/sched.h: add SCHED_STAT_DECLARE() (authored by kib).
sys/sched.h: add SCHED_STAT_DECLARE()
Wed, Feb 11, 5:18 AM
kib committed rG32a6b274b42d: kern/sched_{ule,4bsd}.c: cleanup headers (authored by kib).
kern/sched_{ule,4bsd}.c: cleanup headers
Wed, Feb 11, 5:18 AM
kib committed rG90548e0a899f: sched_4bsd: remove unused function sched_pctcpu_delta() (authored by kib).
sched_4bsd: remove unused function sched_pctcpu_delta()
Wed, Feb 11, 5:18 AM
kib committed rGd62afc2e38b5: sys/sched.h: make sched_clear_tdname() function prototypes unconditional (authored by kib).
sys/sched.h: make sched_clear_tdname() function prototypes unconditional
Wed, Feb 11, 5:18 AM
kib committed rG87dbcdcb712a: maybe_preempt(): make static in sched_4bsd.c (authored by kib).
maybe_preempt(): make static in sched_4bsd.c
Wed, Feb 11, 5:18 AM
kib committed rG22ef6c1ab582: amd64/machdep.c: remove extra empty line (authored by kib).
amd64/machdep.c: remove extra empty line
Wed, Feb 11, 5:18 AM
kib committed rG5ea48d669304: arm, riscv: add a preprocessor symbol indicating missed support of ifunc (authored by kib).
arm, riscv: add a preprocessor symbol indicating missed support of ifunc
Wed, Feb 11, 5:18 AM
kib updated the diff for D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

Bump prio around SCHED

Wed, Feb 11, 4:29 AM
kib added a comment to D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

Well, I said that the kernel is real-time, not that the system is. One of the reason why it is not is the frivolous use of the sections with disabled interrupts, and I do not see why adding more of it.
For instance, RENDEZVOUS which disables interrupts must wait for all CPUs to leave the sections of disabled interrupts, which is accumulating and causes even longer delays.

Wed, Feb 11, 4:18 AM
kib accepted D55224: sys: ELF: Rename SHN_FBSD_CACHED => SHN_FREEBSD_CACHED.
Wed, Feb 11, 3:24 AM
kib accepted D55231: fusefs: remove the obsolete rename_lock.
Wed, Feb 11, 3:23 AM
kib updated the diff for D55218: amd64: add LASS support.

Move setting CR4.LASS into initializecpu()

Wed, Feb 11, 3:22 AM
kib added inline comments to D55230: fusefs: redo vnode attribute locking.
Wed, Feb 11, 3:21 AM

Tue, Feb 10

kib updated subscribers of D55218: amd64: add LASS support.
Tue, Feb 10, 1:58 PM
kib requested review of D55218: amd64: add LASS support.
Tue, Feb 10, 1:57 PM
kib committed rGbf603dbbb2c9: dev/mfi: include sys/abi_compat.h unconditionally (authored by kib).
dev/mfi: include sys/abi_compat.h unconditionally
Tue, Feb 10, 7:10 AM
kib committed rG5f3192b3fddd: amd64/acpica/acpi_wakeup.c: do not store to WARMBOOT_OFF in efi_boot case (authored by kib).
amd64/acpica/acpi_wakeup.c: do not store to WARMBOOT_OFF in efi_boot case
Tue, Feb 10, 2:45 AM
kib closed D55205: amd64/acpica/acpi_wakeup.c: do not store to WARMBOOT_OFF in efi_boot case.
Tue, Feb 10, 2:44 AM
kib added inline comments to D45404: biosboot: Detect memory disks from PXE.
Tue, Feb 10, 2:43 AM
kib added a comment to D55056: fusefs: Take mnt_ref when mounting.

I have no idea what is double-release.

Calling vfs_rel twice on the same struct mp, or something like that.

My concern is that the pointer to mp, stored somewhere in fusefs data, gets reused for other mount.

How could this happen? My understanding is that it can't happen until we unmount and the unmounting may happen for two reasons:

  • User called umount
  • A FUSE process terminates abnormally, but has passed -o auto_unmount.

In both cases we perform the unmounting and then set fdata = NULL. So, for example, if the daemon first performs a proper umount and then dies due to SIGKILL, we won't touch fdata->mp in the destructor.

I too can't find a way for Konstantin's fear to happen. But keeping the mountpoint reference is still a good defensive coding practice.

Tue, Feb 10, 2:37 AM
kib committed rGecadac729a1b: sys/event.h: reduce namespace pollution from sys/abi_compat.h (authored by kib).
sys/event.h: reduce namespace pollution from sys/abi_compat.h
Tue, Feb 10, 2:11 AM
kib closed D55202: sys/event.h: reduce namespace pollution from sys/abi_compat.h.
Tue, Feb 10, 2:11 AM
kib updated the diff for D55205: amd64/acpica/acpi_wakeup.c: do not store to WARMBOOT_OFF in efi_boot case.

And remove stale comment

Tue, Feb 10, 1:53 AM
kib updated the diff for D55205: amd64/acpica/acpi_wakeup.c: do not store to WARMBOOT_OFF in efi_boot case.

Remove blank line

Tue, Feb 10, 1:52 AM
kib requested review of D55205: amd64/acpica/acpi_wakeup.c: do not store to WARMBOOT_OFF in efi_boot case.
Tue, Feb 10, 1:49 AM

Mon, Feb 9

kib added inline comments to D45404: biosboot: Detect memory disks from PXE.
Mon, Feb 9, 8:27 PM
kib added a comment to D55169: kldload.2: Spell kld in lowercase.

Thank you! Do you think that kld(4) would be an appropriate place for this description? I guess I can incorporate it there.

Mon, Feb 9, 8:21 PM · manpages, docs
kib requested review of D55202: sys/event.h: reduce namespace pollution from sys/abi_compat.h.
Mon, Feb 9, 8:18 PM
kib added a comment to D55045: x86: add a safe variant of MSR_OP_SCHED* operations.

Ping?

Mon, Feb 9, 7:58 PM
kib committed rGec6cf0c52698: sys/user.h: remove XXXSKE markers (authored by kib).
sys/user.h: remove XXXSKE markers
Mon, Feb 9, 7:07 PM
kib committed rG87632ddf67b0: openzfs sys/types32.h: use abi_compat.h for time32_t (authored by kib).
openzfs sys/types32.h: use abi_compat.h for time32_t
Mon, Feb 9, 7:07 PM
kib committed rG31fab773613b: sys/compat/freebsd32: use freebsd32_uint64_t for struct kinfo_proc32 (authored by kib).
sys/compat/freebsd32: use freebsd32_uint64_t for struct kinfo_proc32
Mon, Feb 9, 7:07 PM
kib committed rGbeee89472e3e: sys/compat/freebsd32: use freebsd32_uint64_t for several struct stat's (authored by kib).
sys/compat/freebsd32: use freebsd32_uint64_t for several struct stat's
Mon, Feb 9, 7:07 PM
kib committed rG154778e35851: sys/compat/freebsd32: ki_pd is missing from struct kinfo_proc32 (authored by kib).
sys/compat/freebsd32: ki_pd is missing from struct kinfo_proc32
Mon, Feb 9, 7:07 PM
kib committed rG3dc72107d29d: sys/compat/freebsd32: use freebsd32_uint64_t for struct ffclock_estimate32 (authored by kib).
sys/compat/freebsd32: use freebsd32_uint64_t for struct ffclock_estimate32
Mon, Feb 9, 7:07 PM
kib committed rG485e916a67b4: sys/compat/freebsd32: use freebsd32_uint64_t for struct kinfo_knote32 (authored by kib).
sys/compat/freebsd32: use freebsd32_uint64_t for struct kinfo_knote32
Mon, Feb 9, 7:07 PM
kib committed rG9ce0c190d8b3: sys/abi_compat.h: add Foundation copyright for uint64_t stuff (authored by kib).
sys/abi_compat.h: add Foundation copyright for uint64_t stuff
Mon, Feb 9, 7:07 PM
kib committed rGad639400dc9f: sys/event.h: use freebsd32_uint64_t for kevent32 64bit members (authored by kib).
sys/event.h: use freebsd32_uint64_t for kevent32 64bit members
Mon, Feb 9, 7:07 PM
kib committed rGc3a04a9585ae: sys/abi_compat.h: normalize include guard name (authored by kib).
sys/abi_compat.h: normalize include guard name
Mon, Feb 9, 7:07 PM
kib committed rGe651c64bcab0: sys/abi_compat.h: move freebsd32_uint64_t and FU64_CP() there (authored by kib).
sys/abi_compat.h: move freebsd32_uint64_t and FU64_CP() there
Mon, Feb 9, 7:07 PM
kib closed D55135: Sprinkle the use of freebsd32_uint64_t over compat32.
Mon, Feb 9, 7:07 PM
kib added a reverting change for D55149: pcb: mark fields that should be preserved for kernel debuggers: rG24038d696e50: Revert "pcb.h: mark struct pcb to be preserved".
Mon, Feb 9, 6:59 PM
kib added a reverting change for rG8f23665fed2f: pcb.h: mark struct pcb to be preserved: rG24038d696e50: Revert "pcb.h: mark struct pcb to be preserved".
Mon, Feb 9, 6:59 PM
kib committed rG24038d696e50: Revert "pcb.h: mark struct pcb to be preserved" (authored by kib).
Revert "pcb.h: mark struct pcb to be preserved"
Mon, Feb 9, 6:58 PM
kib closed D55197: kern/vfs_unmount.c: promote flags to uint64_t.
Mon, Feb 9, 6:49 PM
kib committed rG8066b8923ebf: kern/vfs_unmount.c: promote flags to uint64_t (authored by kib).
kern/vfs_unmount.c: promote flags to uint64_t
Mon, Feb 9, 6:49 PM
kib requested review of D55197: kern/vfs_unmount.c: promote flags to uint64_t.
Mon, Feb 9, 6:13 PM
kib committed rG97ce8f7d2b8e: amd64: define and use STACKALIGN and REDZONE_SZ (authored by kib).
amd64: define and use STACKALIGN and REDZONE_SZ
Mon, Feb 9, 5:58 PM
kib closed D55151: amd64: define and use STACKALIGN and REDZONE_SZ.
Mon, Feb 9, 5:57 PM