summaryrefslogtreecommitdiff
path: root/sys/rump
AgeCommit message (Collapse)Author
2023-07-05mk.conf(5): document rump variableslukem
Update mk.conf(5) with the rump variables from - lib/librumpuser/README.compileopts - sys/rump/README.compileopts Add cross-references back to mk.conf(5) in those files. Ensure that the Default: is listed last in a description, for consistency with the convention in this file.
2023-06-27remove double/tripple o in comments, where it likely was not added on purpose.andvar
2023-06-23rump: KASSERT(x && y) -> KASSERT(x); KASSERT(y)riastradh
Add some KASSERTMSG while here.
2023-06-15Regen.hannken
2023-06-03adapt to ${CC_WNO_IMPLICIT_FALLTHROUGH}lukem
Use ${CC_WNO_IMPLICIT_FALLTHROUGH} instead of the older style more complex expressions.
2023-06-03adapt to ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}lukem
Simplify CWARNFLAGS to use ${CC_WNO_ADDRESS_OF_PACKED_MEMBER} which works for both clang and gcc, and remove compiler-specific equivalents.
2023-06-03bsd.own.mk: rename GCC_NO_* to CC_WNO_*lukem
Rename compiler-warning-disable variables from GCC_NO_warning to CC_WNO_warning where warning is the full warning name as used by the compiler. GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH Using the convention CC_compilerflag, where compilerflag is based on the full compiler flag name.
2023-06-03bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBERlukem
Provide a single variable CC_WNO_ADDRESS_OF_PACKED_MEMBER with options for both clang and gcc, to replace CLANG_NO_ADDR_OF_PACKED_MEMBER CC_NO_ADDR_OF_PACKED_MEMBER GCC_NO_ADDR_OF_PACKED_MEMBER Using the convention CC_compilerflag, where compilerflag is based on the full compiler flag name.
2023-04-23rumpdev: Catch up to buf_syncwait -> vfs_syncwait rename.riastradh
Do similarly with a do_sys_sync weak stub so we can drop the rumpvfs dependency.
2023-04-22rumpvfs: Link in secmodel_extensions_vfs.c as intended, like kernel.riastradh
Forgot to commit this part when splitting up secmodel_extensions.c.
2023-04-22rump: Move vnode_if.c from rumpkern to rumpvfs.riastradh
This has become increasingly less of a `fully dynamic interface', and the need for it in the rest of sys/kern/ has been obviated, so let's put it where it belongs in rumpvfs.
2023-04-22secmodel_extensions: Split vfs part into separate .c file.riastradh
This way we can provide weak rumpkern stubs that don't require rumpvfs for things that are relevant to vfs, but if you do link rumpvfs then you get the same logic in secmodel extensions.
2023-04-22rump: Move ubc_uiomove, ubc_zerorange from rumpvfs to rumpkern.riastradh
Needed by kern_ksyms.c. We could split kern_ksyms.c up into kernel- internal interfaces and the user/kernel /dev/ksyms interface, but there's nothing vfs-specific about ubc_uiomove and ubc_zerorange anyway, so let's just define them in rumpkern.
2023-04-22rumpkern: Provide stub pnbuf_cache weak alias.riastradh
Needed only by sys_module.c handle_modctl_load, which won't work if there's no rumpvfs linked in anyway.
2023-04-22rumpkern: Provide stub uvm_vnodeops weak alias.riastradh
Needed for UVM_OBJ_IS_VNODE, but not for anything else in rumpkern without rumpvfs.
2023-04-22rumpkern: Provide fs_filtops weak alias.riastradh
We should introduce a link set for sys_kfilters, but this works around the problem for now -- librump's dependency on librumpvfs symbols.
2023-04-12kern: Nix mutex_owner.riastradh
There is no valid reason to use this except in assertions of the form KASSERT(mutex_owner(lock) == curlwp), which is more obviously spelled as KASSERT(mutex_owned(lock)). Exception: There's one horrible kludge in zfs that abuses this, which should be eliminated. XXX kernel revbump -- deleting symbol PR kern/47114
2023-02-26nkmempages should be size_tskrll
2023-02-22rump: Nix membar_enter/exit after/before RUMPUSER_LWP_CREATE/DESTROY.riastradh
These make no sense and are obviously not needed for any of the rumpuser implementations in-tree. (For single-threaded fiber and pth_dummy, no barriers needed; for pth, RUMPUSER_LWP_CREATE/DESTROY use pthread_mutex so don't need any barriers.) It _might_ make sense to do membar_release/acquire around just RUMPUSER_LWP_DESTROY, perhaps if there's some reference-counting business involved. But if a rumpuser implementation really needs that it can do it itself.
2023-02-22rumpkern/lwproc.c: Nix trailing whitespace.riastradh
2022-11-02rump: don't touch p_nlwps without holding p_lockozaki-r
There was a race condition on p_nlwps. Heavy thread switching could cause a kernel panic like: panic: kernel diagnostic assertion "LIST_EMPTY(&p->p_lwps)" failed: file "(hidden)/src/lib/librump/../../sys/rump/librump/rumpkern/lwproc.c", line 177
2022-10-26sys/filedesc.h: New home for extern cwdi0.riastradh
2022-10-26rwlock(9): Nix extern _rw_init in .c; use sys/rwlock.h.riastradh
2022-10-26sys/*: Get module_map consistently from sys/module.h.riastradh
2022-10-26mutex(9): Properly declare _mutex_init in sys/mutex.h.riastradh
2022-09-20tcp: separate syn cache stuffs into tcp_syncache.[ch] filesozaki-r
No functional change.
2022-09-03Machete-waving to fix mpls rump build after pktqueue changes.thorpej
2022-09-03netisr.c is gone.mlelstv
2022-09-03Garbage-collect everything related to struct domain::dom_ifqueuesthorpej
(except dom_ifqueues itself, until the next kernel version bump). It's no longer used now that nothing uses the legacy netisr mechanism.
2022-09-03Garbage-collect the remaining vestiges of netisr.thorpej
2022-09-03Convert MPLS from a legacy netisr to pktqueue.thorpej
2022-09-03Convert CAN from a legacy netisr to pktqueue.thorpej
2022-09-03Convert ARP from a legacy netisr to pktqueue.thorpej
2022-08-22provide pmap_wired_count macro.mlelstv
2022-08-21rump: Define pmap_resident_count, pmap_wired_count conditionally.riastradh
These definitions will not be used by anything yet because on every architecture except x86 as of yeterday, pmap_resident_count and pmap_wired_count are defined as macros anyway. But if more struct pmaps are made private these definitions will get used.
2022-08-21Add stubs for pmap_resident_count, pmap_wired_count.mlelstv
2022-08-21rump/x86: Add stubs for pmap_resident_count, pmap_wired_count.riastradh
These are no longer static inlines, now that struct pmap is private.
2022-08-21rump libsysproxy: More workarounds for pmap abuse.riastradh
2022-08-21rumpkern: Abusing struct pmap internals now requires extra effort.riastradh
(as it should)
2022-08-21rump/x86: Need x86/cpufunc.h for declaration of wbinvd.riastradh
2022-07-18Regen for:thorpej
Make kqueue event status for vnodes shareable, and for stacked file systems like nullfs, make the upper vnode share that status with the lower vnode. And, lo, NetBSD 9.99.99. Fixes PR kern/56713.
2022-07-09s/desciption/description/andvar
2022-06-30Fix rump build failure after sleepq.h:r1.35.knakahara
2022-06-06build system: Revert all the recent additions of MK[...] knobs thatnia
allow conditionally disabling the building of certain user space programs in the 'base' set. There is not enough consensus that this is the right way and a few people had strong objections, see source-changes-d@.
2022-05-27... and more MKLFS herenia
2022-05-03libwsemul_vt100: Rumpified wscons vt100 emulator (wsvt25).uwe
This library provides wscons vt100 emulation (aka TERM=wsvt25). This is internal module, not a device, so there's no RUMP_COMPONENT. The public interface provided by this module is wsemul_vt100_ops and it needs the user to provide (in rump namespace) wsdisplay_emulinput and wsdisplay_emulbell, provided in the real kernel by wsdisplay. This subdirectory is not hooked into the build.
2022-05-03Regen.hannken
2022-05-03Regen.hannken
2022-05-03Make option VNODE_LOCKDEBUG more functional.hannken
- Add "LOCKED=EXCL" option for vnode operations needing exclusive locked nodes. - As it is impossible to check for shared locks held by current thread avoid false assertions by testing for exclusive lock only in the "LOCKED=NO" case. - New option "RUMP_VNODE_LOCKDEBUG" enables VNODE_LOCKDEBUG for the rump kernel.
2022-04-14Split some common stuff into scsi_subr module. This enables loadingpgoyette
of the iscsi module whether or not there are any scsi things built into the kernel. Addresses the iscsi portion of kern/56772