Page MenuHomeFreeBSD

kib (Konstantin Belousov)
User

Projects

User Details

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

Recent Activity

Yesterday

kib accepted D45143: rtld-elf: Use a proper struct type for tlsdesc entries.
Thu, May 9, 8:06 PM
kib accepted D45142: uio: Use switch statements when handling UIO_READ vs UIO_WRITE.
Thu, May 9, 8:02 PM
kib updated the diff for D44219: ipsec_accel: kernel infrastructure.

Latest version after the rounds of bugfixes

Thu, May 9, 7:19 PM
kib added a comment to D45119: tmpfs: recalculate OBJ_TMPFS_VREF on reinstantiating node' vnode.

I do not see how this solves the problem that @pho found. There, vm_map_process_deferred() was releasing writecounts, and in one case the backing vnode was doomed, so OBJ_TMPFS_VREF was clear.

Thu, May 9, 5:16 PM

Wed, May 8

kib added inline comments to D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.
Wed, May 8, 7:00 PM
kib updated the diff for D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.

Reduce scope for object1 and color variables.
Assign OBJT_DEAD type to object before deallocating it on the path after failing ctr, since we do not want to have the device dtr called.

Wed, May 8, 6:38 PM
kib updated the diff for D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.

Use vm_object_deallocate() instead of _terminate() on cleanup path.
Defer OBJ_COLORED setting after ctr provides the color.

Wed, May 8, 5:54 PM
kib added a comment to D45058: linuxkpi: Fix arch_io_reserve_memtype_wc.

I spent yesterday and today on this but it's taking too much time to familiarise myself with the code so I won't be able to fix this in a timely manner. It's also too risky to make changes to drm-*-kmod this close to 14.1. So I've created D45125 which should be safe to MFC.

Are the following statements correct:

  • Physical RAM may be divided in segments with address ranges that are separated from each other.

Right

Wed, May 8, 4:34 PM
kib accepted D45125: linuxkpi: Make arch_io_*_memtype_wc amd64-only.
Wed, May 8, 4:16 PM
kib updated the diff for D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.

Remove refcount.h

Wed, May 8, 2:15 PM
kib accepted D45126: libthr: avoid varargs in fcntl and openat interposers.
Wed, May 8, 2:13 PM
kib updated subscribers of D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.
Wed, May 8, 2:09 PM
kib updated the diff for D45119: tmpfs: recalculate OBJ_TMPFS_VREF on reinstantiating node' vnode.

Remove invalid assert about zero writemappings of the object for the new vnode (since node might be old).
Add asserts that we do not underflow writemapping counters for swap pagers.

Wed, May 8, 2:04 PM
kib added inline comments to D45119: tmpfs: recalculate OBJ_TMPFS_VREF on reinstantiating node' vnode.
Wed, May 8, 2:02 PM
kib added a comment to D44306: linuxkpi: Provide a non-NULL value for THIS_MODULE.

I believe that would work and I agree it would be much simpler. @kib is there something the (b) variant provides that (a) would be missing if we went with @jhb's proposal? It seems like they provide the same functionality?

Wed, May 8, 9:32 AM
kib accepted D44869: rtld: Add support for arm64 variant pcs.
Wed, May 8, 3:58 AM
kib added inline comments to D45117: rtld: Add arch_digest_dynamic.
Wed, May 8, 3:57 AM
kib added inline comments to D45116: rtld: Add MD_OBJ_ENTRY to extend Struct_Obj_Entry.
Wed, May 8, 3:56 AM
kib requested review of D45119: tmpfs: recalculate OBJ_TMPFS_VREF on reinstantiating node' vnode.
Wed, May 8, 3:10 AM

Tue, May 7

kib updated the diff for D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.

Check for object == NULL

Tue, May 7, 4:08 PM
kib added inline comments to D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.
Tue, May 7, 4:06 PM
kib updated the diff for D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.

Use vm_object_deallocate()

Tue, May 7, 2:47 PM
kib added inline comments to D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.
Tue, May 7, 2:46 PM
kib updated the diff for D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.

Handle first batch of comments.

Tue, May 7, 2:16 PM
kib added inline comments to D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.
Tue, May 7, 2:14 PM
kib requested review of D45113: cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once.
Tue, May 7, 1:27 PM
kib committed rGf73055ab1e2f: rtld.1: clarify interaction between -u and -o (authored by kib).
rtld.1: clarify interaction between -u and -o
Tue, May 7, 9:00 AM
kib committed rG10484ee13a36: rtld: add direct-exec option -o (authored by kib).
rtld: add direct-exec option -o
Tue, May 7, 9:00 AM
kib committed rGe45b440633f9: rtld direct exec: make -u behavior match the description (authored by kib).
rtld direct exec: make -u behavior match the description
Tue, May 7, 9:00 AM

Mon, May 6

kib committed rG0d4750124623: rtld.1: clarify interaction between -u and -o (authored by kib).
rtld.1: clarify interaction between -u and -o
Mon, May 6, 4:43 AM
kib committed rG6c85003139a4: rtld direct exec: make -u behavior match the description (authored by kib).
rtld direct exec: make -u behavior match the description
Mon, May 6, 4:43 AM
kib committed rGd63c680d39f5: rtld: add direct-exec option -o (authored by kib).
rtld: add direct-exec option -o
Mon, May 6, 4:43 AM
kib added inline comments to D45053: tests/fusefs: fix all tests that depend on kern.maxphys.
Mon, May 6, 4:01 AM
kib committed rGc097967b9af9: mlx5en: add diagnostic in one more case of failed eeprom read preparation (authored by kib).
mlx5en: add diagnostic in one more case of failed eeprom read preparation
Mon, May 6, 3:16 AM

Sat, May 4

kib added inline comments to D45043: vm_reserv: introduce unmanaged reservations.
Sat, May 4, 11:13 PM
kib added inline comments to D45084: uma: deduplicate uma_small_alloc.
Sat, May 4, 9:04 PM
kib added a comment to D45058: linuxkpi: Fix arch_io_reserve_memtype_wc.

Include missing headers sys/queue.h from vm/_vm_phys.h for TAILQ, and sys/param.h from vm/vm_phys.h for NULL so linux/io.h doesn't have to include them.

I think this part should be committed separately.

arch_io_reserve_memtype_wc is implemented using PHYS_TO_DMAP and pmap_change_attr but not all architectures have a DMAP and this doesn't match the upstream implementation.

Looking at Linux, the old version of this diff actually does partially match the implementation. If the platform doesn't have a direct map, or the PA range isn't backed by RAM, then it does nothing. Otherwise it updates the mapping type of the range in the direct map, presumably to avoid the UB that kib mentions.

I think what this function is supposed to do is check whether the PA range is covered by the vm_page_array and update the direct map if so, otherwise register a fictitious range. Perhaps this is best implemented in the VM system rather than the LinuxKPI?

Sat, May 4, 2:48 AM
kib accepted D45090: ofed: don't expose symbols twice.
Sat, May 4, 12:09 AM

Fri, May 3

kib committed rGb27eb9ce96b8: __cxa_thread_call_dtors(3): fix dtor pointer validity check (authored by kib).
__cxa_thread_call_dtors(3): fix dtor pointer validity check
Fri, May 3, 11:24 PM
kib closed D45074: __cxa_thread_call_dtors(3): fix dtor pointer validity check.
Fri, May 3, 11:24 PM
kib added a comment to D45074: __cxa_thread_call_dtors(3): fix dtor pointer validity check.
In D45074#1027845, @dim wrote:

Does the cxa_thread_dtor::dso field serve any function after this change? I couldn't see any other references to it.

Fri, May 3, 10:57 AM
kib requested review of D45074: __cxa_thread_call_dtors(3): fix dtor pointer validity check.
Fri, May 3, 9:38 AM
kib added a comment to D45058: linuxkpi: Fix arch_io_reserve_memtype_wc.

As I noted, I am not sure that vm_phys_fictitious_reg() KPI is prepared for such use. IMO it needs to be enhanced to check if the registering range is already backed by some vm_page_t storage and not create an overlap. Right now there are only minor piece of such care, for the case where the range intersects with vm_page_array[]. Otherwise the result is UB both for memattr use, and for consequent RBTREE manipulations.

Fri, May 3, 2:46 AM
kib accepted D45045: malloc(9): introduce M_NEVERFREED.

Mentioning the supposed scope of use for flag in the review would be best. BTW if it is internal to vm allocators, why not call it M_VM_NOFREE?

Fri, May 3, 12:36 AM
kib accepted D45057: linuxkpi: Fix set_memory_*.
Fri, May 3, 12:34 AM
kib committed rGd9ec850bde3c: rtld snprintf: do not erronously skip a char at the buffer boundary (authored by kib).
rtld snprintf: do not erronously skip a char at the buffer boundary
Fri, May 3, 12:27 AM
kib committed rGcf2750be9e32: kcmp_pget(): do not accept TIDs (authored by kib).
kcmp_pget(): do not accept TIDs
Fri, May 3, 12:27 AM
kib committed rG6b667b46ab19: kcmp_pget(): add an assert that we did not hold the current process (authored by kib).
kcmp_pget(): add an assert that we did not hold the current process
Fri, May 3, 12:27 AM
kib committed rG44debee9fc1f: rtld snprintf: do not erronously skip a char at the buffer boundary (authored by kib).
rtld snprintf: do not erronously skip a char at the buffer boundary
Fri, May 3, 12:26 AM
kib committed rG33cac296a266: kcmp_pget(): do not accept TIDs (authored by kib).
kcmp_pget(): do not accept TIDs
Fri, May 3, 12:26 AM
kib committed rG66e0bf766854: kcmp_pget(): add an assert that we did not hold the current process (authored by kib).
kcmp_pget(): add an assert that we did not hold the current process
Fri, May 3, 12:26 AM

Thu, May 2

kib added a comment to D45053: tests/fusefs: fix all tests that depend on kern.maxphys.

u_long

Thu, May 2, 6:00 AM

Wed, May 1

kib accepted D44216: Make WITHOUT_UNDEFINED_VERSION the default.
Wed, May 1, 10:33 PM
kib accepted D32306: Import _FORTIFY_SOURCE implementation from NetBSD.
Wed, May 1, 10:30 PM
kib added a comment to D45045: malloc(9): introduce M_NEVERFREED.

Why not M_NOFREE?

Wed, May 1, 10:25 PM
kib added inline comments to D45044: uma: retire UMA_MD_SMALL_ALLOC.
Wed, May 1, 10:15 PM
kib accepted D44893: Simplify signal handling code in libthr by removing use of SYS_sigreturn.
Wed, May 1, 2:59 PM
kib added a comment to D44893: Simplify signal handling code in libthr by removing use of SYS_sigreturn.

Please upload patches with full context.

Wed, May 1, 10:01 AM

Tue, Apr 30

kib added inline comments to D44271: bsd.lib.mk: add targets to detect symbol changes.
Tue, Apr 30, 10:46 PM
kib added inline comments to D44271: bsd.lib.mk: add targets to detect symbol changes.
Tue, Apr 30, 10:13 PM
kib added a comment to D44893: Simplify signal handling code in libthr by removing use of SYS_sigreturn.

Can you upload the full context for the diff?

Tue, Apr 30, 10:10 PM
kib committed rG1e01650a7870: kcmp_pget(): add an assert that we did not hold the current process (authored by kib).
kcmp_pget(): add an assert that we did not hold the current process
Tue, Apr 30, 7:08 AM
kib committed rG5b3e5c6ce3e5: kcmp_pget(): do not accept TIDs (authored by kib).
kcmp_pget(): do not accept TIDs
Tue, Apr 30, 7:08 AM
kib committed rG509819691cb8: libc_private.h: use private namespace name for size_t (authored by kib).
libc_private.h: use private namespace name for size_t
Tue, Apr 30, 1:17 AM
kib committed rGa951992d1eb3: libc_private.h: use private namespace name for size_t (authored by kib).
libc_private.h: use private namespace name for size_t
Tue, Apr 30, 1:17 AM
kib committed rG6a7819e43f93: rtld.1: clarify interaction between -u and -o (authored by kib).
rtld.1: clarify interaction between -u and -o
Tue, Apr 30, 12:55 AM
kib committed rGef2694f368ce: rtld direct exec: make -u behavior match the description (authored by kib).
rtld direct exec: make -u behavior match the description
Tue, Apr 30, 12:55 AM
kib committed rGd1cd0cc32b53: rtld: add direct-exec option -o (authored by kib).
rtld: add direct-exec option -o
Tue, Apr 30, 12:55 AM
kib closed D44999: rtld direct exec: make -u behavior match the description.
Tue, Apr 30, 12:55 AM
kib closed D44988: rtld: add direct-exec option -o.
Tue, Apr 30, 12:55 AM
kib committed rGf0e8600d71e0: libc printf_render_errno(): do not use strerror() (authored by kib).
libc printf_render_errno(): do not use strerror()
Tue, Apr 30, 12:50 AM
kib committed rGa8ae94b9e2cb: libc: make strerror_rl() usable for libc (authored by kib).
libc: make strerror_rl() usable for libc
Tue, Apr 30, 12:50 AM
kib committed rGfcac864ee14b: libc: minor style, wrap long lines (authored by kib).
libc: minor style, wrap long lines
Tue, Apr 30, 12:50 AM
kib committed rG27e54c9f1628: __vprintf(): switch from strerror() to strerror_rl() (authored by kib).
__vprintf(): switch from strerror() to strerror_rl()
Tue, Apr 30, 12:50 AM
kib committed rG09bcfbd1aede: libc printf_render_errno(): do not use strerror() (authored by kib).
libc printf_render_errno(): do not use strerror()
Tue, Apr 30, 12:50 AM
kib committed rG0451d4287a92: libc: minor style, wrap long lines (authored by kib).
libc: minor style, wrap long lines
Tue, Apr 30, 12:50 AM
kib committed rGbd30b3dfd5c8: Add test for pthread_sigqueue(3) (authored by kib).
Add test for pthread_sigqueue(3)
Tue, Apr 30, 12:50 AM
kib committed rGade62d406239: __vprintf(): switch from strerror() to strerror_rl() (authored by kib).
__vprintf(): switch from strerror() to strerror_rl()
Tue, Apr 30, 12:50 AM
kib committed rG8f19af4b0955: libc: make strerror_rl() usable for libc (authored by kib).
libc: make strerror_rl() usable for libc
Tue, Apr 30, 12:50 AM
kib committed rG42b071cbc91e: pthread_sigqueue(3): document (authored by kib).
pthread_sigqueue(3): document
Tue, Apr 30, 12:49 AM
kib committed rGe449481bee5f: libthr: add pthread_sigqueue(3) (authored by kib).
libthr: add pthread_sigqueue(3)
Tue, Apr 30, 12:49 AM
kib committed rG3fbb97541cfe: sys/signal.h: move union sigval into dedicated private header sys/_sigval.h (authored by kib).
sys/signal.h: move union sigval into dedicated private header sys/_sigval.h
Tue, Apr 30, 12:49 AM
kib committed rGafc8b17816e4: sigqueue(2): Document __SIGQUEUE_TID (authored by kib).
sigqueue(2): Document __SIGQUEUE_TID
Tue, Apr 30, 12:49 AM
kib committed rGed9e2991c2da: sigqueue(2): add impl-specific flag __SIGQUEUE_TID (authored by kib).
sigqueue(2): add impl-specific flag __SIGQUEUE_TID
Tue, Apr 30, 12:49 AM
kib committed rGde4b8c8ae1a8: kern_thr.c: normalize includes (authored by kib).
kern_thr.c: normalize includes
Tue, Apr 30, 12:49 AM
kib committed rG29c4e3198456: kern_thr.c/kern_sig.c: remove sys/cdefs.h (authored by kib).
kern_thr.c/kern_sig.c: remove sys/cdefs.h
Tue, Apr 30, 12:49 AM
kib committed rG6bf819c91048: kern_thread.c: remove unneeded include of sys/param.h (authored by kib).
kern_thread.c: remove unneeded include of sys/param.h
Tue, Apr 30, 12:49 AM
kib accepted D45019: vm: Fix error handling in vm_thread_stack_back().
Tue, Apr 30, 12:19 AM
kib added inline comments to D44988: rtld: add direct-exec option -o.
Tue, Apr 30, 12:15 AM
kib added a comment to D44271: bsd.lib.mk: add targets to detect symbol changes.
In D44271#1025583, @kib wrote:

Private versioning namespace should be filtered out, I think.

I think we want to know when that set changes even if we don't consider it part of the ABI, but I probably could be persuaded otherwise. I might want to make it optional so libraries can opt in and others opt out.

Tue, Apr 30, 12:09 AM

Mon, Apr 29

kib accepted D44986: Fix new users of MAXPHYS and hide it from the kernel namespace.
Mon, Apr 29, 11:54 PM
kib added a comment to D44910: sys: Add cpu_update_pcb hook.
In D44910#1026299, @jhb wrote:
In D44910#1024125, @kib wrote:

Could the purpose of the new cpu method expressed as "move CPU state to PCB/thread save location in preparation for ..."? I think a comment like that would be due.

Where would you want that comment to go? Next to its prototype in <sys/proc.h>?

Mon, Apr 29, 10:50 PM
kib accepted D44986: Fix new users of MAXPHYS and hide it from the kernel namespace.
Mon, Apr 29, 5:45 PM

Sun, Apr 28

kib requested review of D44999: rtld direct exec: make -u behavior match the description.
Sun, Apr 28, 9:02 PM
kib updated the diff for D44988: rtld: add direct-exec option -o.

Grammar updates.

Sun, Apr 28, 8:01 PM
kib added inline comments to D44988: rtld: add direct-exec option -o.
Sun, Apr 28, 8:01 PM
kib committed rG56ee5fc43c40: rtld snprintf: do not erronously skip a char at the buffer boundary (authored by kib).
rtld snprintf: do not erronously skip a char at the buffer boundary
Sun, Apr 28, 7:44 PM
kib closed D44987: rtld snprintf: do not erronously skip a char at the buffer boundary.
Sun, Apr 28, 7:44 PM
kib requested review of D44988: rtld: add direct-exec option -o.
Sun, Apr 28, 6:55 AM
kib requested review of D44987: rtld snprintf: do not erronously skip a char at the buffer boundary.
Sun, Apr 28, 6:54 AM