NetBSD/sys/kern
jdolecek 508f8978c8 according to benchmark extracting pkgsrc.tar, using FUA and hence waiting
for each transfer to write through to the medium is way slower than just
letting the drive use a cached write and doing DIOCCACHESYNC on the end

Results were (fs block 32KB / frag 4KB, partition aligned on 32KB boundary):
HDD at siisata(4):  no-FUA: 108 sec w/FUA: 294 sec
SSD at ahcisata(4): no-FUA:  73 sec w/FUA: 502 sec

change the flag so that FUA is only used for the commit block write;
for journal data write, only pass DPO, rely on the cache flush to get them
to media
2017-12-02 17:29:55 +00:00
..
bufq_disksort.c Use consistently "bufq_private(bufq)" instead of "bufq->bq_private" 2017-05-04 11:03:27 +00:00
bufq_fcfs.c Use consistently "bufq_private(bufq)" instead of "bufq->bq_private" 2017-05-04 11:03:27 +00:00
bufq_priocscan.c Use consistently "bufq_private(bufq)" instead of "bufq->bq_private" 2017-05-04 11:03:27 +00:00
bufq_readprio.c Use consistently "bufq_private(bufq)" instead of "bufq->bq_private" 2017-05-04 11:03:27 +00:00
cnmagic.c Correct typo in the comment 2017-05-04 11:01:16 +00:00
core_elf32.c Set clear comment about EI_OSABI and EI_ABIVERSION 2017-05-04 11:12:23 +00:00
core_elf64.c
core_netbsd.c Introduce new ptrace(2) interface: PT_SET_SIGINFO and PT_GET_SIGINFO 2017-01-06 22:53:17 +00:00
exec_aout.c
exec_ecoff.c
exec_elf32.c The argument length is in bytes; don't use howmany() 2017-01-25 17:56:45 +00:00
exec_elf64.c The argument length is in bytes; don't use howmany() 2017-01-25 17:56:45 +00:00
exec_elf.c Store full executable path in p->p_path as discussed in tech-kern. 2017-11-07 19:44:04 +00:00
exec_script.c
exec_subr.c Export the guard size of the main thread via vm.guard_size. Add a 2017-07-02 16:41:32 +00:00
files.kern Introduce new localcount(9) reference-count primitives. 2017-05-19 00:01:33 +00:00
genlintstub.awk
init_main.c Revert printf return value change. 2017-10-27 12:25:14 +00:00
init_sysctl_base.c Allow architectures to define a macro PROC_MACHINE_ARCH(P) and 2017-10-31 12:37:23 +00:00
init_sysctl.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
init_sysent.c regen 2017-05-10 06:19:47 +00:00
kern_acct.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_auth.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_cctr.c
kern_cfglock.c
kern_clock.c Add a KASSERT, otherwise it looks like a NULL deref; from Mootja. 2017-02-12 18:43:56 +00:00
kern_condvar.c Apply same treatment to cv_timedwaitbt. 2017-11-12 20:04:51 +00:00
kern_core.c KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
kern_cpu.c Don't decrement the number of offline cpus if we fail to shut down one. 2015-08-29 12:24:00 +00:00
kern_ctf.c KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
kern_descrip.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_drvctl.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
kern_event.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
kern_exec.c grab a copy of the absolute pathbuf, before namei() munges it. 2017-11-13 22:01:45 +00:00
kern_exit.c Store full executable path in p->p_path as discussed in tech-kern. 2017-11-07 19:44:04 +00:00
kern_fileassoc.c
kern_fork.c Store full executable path in p->p_path as discussed in tech-kern. 2017-11-07 19:44:04 +00:00
kern_history.c Remove the ABI version-and-length check that was recently introduced; 2017-11-03 22:45:14 +00:00
kern_hook.c
kern_idle.c
kern_ksyms_buf.c Use makeoptions_COPY_SYMTAB via opt_copy_symtab.h in sources. Remove a hack 2015-08-30 01:46:02 +00:00
kern_ksyms.c use Elf_Sym ** instead of casting. 2017-11-04 22:17:55 +00:00
kern_kthread.c - Propagate the signal mask from the ucontext_t to the newly created thread 2017-04-21 15:10:34 +00:00
kern_ktrace_vfs.c
kern_ktrace.c If we go to allocate and find someone else has at the same time, don't 2017-08-28 04:57:11 +00:00
kern_lock.c Implement debugging feature for pserialize(9) 2017-11-21 08:49:14 +00:00
kern_lwp.c Unwrap two lines. NFC. 2017-06-22 09:05:09 +00:00
kern_malloc.c Avoid integer overflow in kern_malloc(). Reported by Ilja Van Sprundel. 2017-07-28 12:28:48 +00:00
kern_module_vfs.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_module.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_mutex_obj.c
kern_mutex.c more const 2017-09-16 23:55:33 +00:00
kern_ntptime.c Cast argument to uint64_t first before shifting to avoid UB for 2015-11-23 23:45:44 +00:00
kern_pax.c fix typo 2017-06-25 04:10:47 +00:00
kern_physio.c Don't check if constant-sized KM_SLEEP allocations succeeded. 2015-04-21 10:54:52 +00:00
kern_pmf.c KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
kern_proc.c If no auxv is present, don't kmem_alloc(0). Easy to panic the kernel by 2017-11-30 18:44:16 +00:00
kern_prot.c Make p_ppid contain the original parent's pid even for traced processes. 2016-11-13 15:25:01 +00:00
kern_ras.c Make the execution flow canonical instead of jumping back and forth, and 2016-07-04 07:56:07 +00:00
kern_rate.c
kern_resource.c Add new sysctl variable proc.curproc.paxflags so a process can determine 2017-03-24 21:43:20 +00:00
kern_rndpool.c Turn a kassert into a more appropriately placed ctassert. 2015-04-21 04:41:36 +00:00
kern_rndq.c Ask on-demand entropy sources to produce enough data to fill buffer. 2016-05-21 15:27:15 +00:00
kern_rndsink.c Use rnd_getmore as intended. No more essay needed here. 2016-05-21 15:33:40 +00:00
kern_runq.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_rwlock_obj.c
kern_rwlock.c more const 2017-09-16 23:55:33 +00:00
kern_sdt.c fix inconsistency about "sdt" provider which was declared but not defined. 2016-04-04 03:53:25 +00:00
kern_sig.c Use C99 initializer for filterops 2017-10-25 08:12:37 +00:00
kern_sleepq.c GSoC 2016 Charles Cui: Implement thread priority protection based on work 2016-07-03 14:24:58 +00:00
kern_softint.c Increase the size of softint's data to prevent panic on big machine. Nowadays, 2017-11-22 02:20:21 +00:00
kern_ssp.c void duplicate definition on statically linking libc+ssp and rumpkern+ssp. 2016-12-06 02:55:42 +00:00
kern_stub.c * Split sys/kern/sys_process.c into three parts: 2016-11-02 00:11:59 +00:00
kern_subr.c Include "flash" in list of block devices that don't use partitions. 2017-11-14 14:14:29 +00:00
kern_synch.c use the same string for the log and uprintf. 2017-08-06 09:14:14 +00:00
kern_syscall.c Instead of copying parts of sigswitch to process_stoptrace, use it directly. 2017-03-24 17:40:44 +00:00
kern_sysctl.c Add a check to ensure that a new sysctl node was attached in the tree 2017-04-25 22:07:10 +00:00
kern_tc.c C99ify initialization of dummy_timecounter. 2017-11-02 15:28:23 +00:00
kern_time.c Adjust clock_nanosleep(2) to not copyout remaining time struct if 2016-11-11 15:29:36 +00:00
kern_timeout.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
kern_todr.c <sys/rnd.h> -> <sys/rndsource.h> in kern_todr.c. 2015-04-13 16:36:54 +00:00
kern_turnstile.c
kern_uidinfo.c Need membar_datadep_consumer here. 2017-03-18 05:49:56 +00:00
kern_uuid.c Get arguments in the right order for copyout. (Oops!) 2014-10-05 10:00:03 +00:00
kern_veriexec.c Add two utility functions to help use kmem with strings: kmem_strdupsize, 2017-11-07 18:35:57 +00:00
kern_xxx.c Update the kernhist(9) kernel history code to address issues identified 2017-10-28 00:37:11 +00:00
kgdb_stub.c Wait for the next character forever as kgdb wants. 2015-06-26 14:26:38 +00:00
Make.tags.inc
Makefile Adjust for systrace based on the FreeBSD code: 2015-03-07 16:38:07 +00:00
makesyscalls.sh Forward-declare struct lwp' so we can use struct lwp *' here. 2017-05-10 06:08:56 +00:00
sched_4bsd.c Should be loadfactor(). 2017-07-14 13:23:48 +00:00
sched_m2.c
subr_autoconf.c Revert printf return value change. 2017-10-27 12:25:14 +00:00
subr_blist.c fix number of arguments of kmem_alloc and kmem_zalloc macro. ok skrll. 2017-02-13 16:53:41 +00:00
subr_bufq.c By popular request, don't bother initializing a static pointer to NULL. 2016-11-18 02:37:33 +00:00
subr_callback.c
subr_copy.c Introduce security.pax.mprotect.ptrace sysctl which can be used to bypass 2016-05-25 17:43:58 +00:00
subr_cprng.c Allow attaching for write, but return no events. 2017-12-01 19:05:49 +00:00
subr_cpufreq.c
subr_debug.c
subr_device.c The use of root_device is not limited to vfs, so don't supply it in 2015-03-09 15:35:11 +00:00
subr_devsw.c Add two utility functions to help use kmem with strings: kmem_strdupsize, 2017-11-07 18:35:57 +00:00
subr_disk_mbr.c PR kern/51208 2017-02-19 07:43:42 +00:00
subr_disk_open.c Replace DIOCGPART -> DIOCGPARTINFO which returns the data needed instead of 2015-12-08 20:36:14 +00:00
subr_disk.c Revert printf return value change. 2017-10-27 12:25:14 +00:00
subr_evcnt.c
subr_exec_fd.c
subr_extent.c don't pass 0 to the pool flags 2017-11-09 21:57:06 +00:00
subr_hash.c Add HASH_PSLIST (pslist(9)) type for hashinit() 2016-07-06 05:20:48 +00:00
subr_humanize.c
subr_interrupt.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
subr_iostat.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
subr_ipi.c Implement ipi_trigger_multi(9); requested by cherry@. 2015-01-18 23:16:35 +00:00
subr_kcpuset.c
subr_kmem.c Assert KM_SLEEP xor KM_NOSLEEP in all kmem allocation. 2017-11-09 23:20:12 +00:00
subr_kobj_vfs.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
subr_kobj.c use Elf_Sym ** instead of casting. 2017-11-04 22:17:55 +00:00
subr_localcount.c Implement a debugging facility (overflow/underflow detection) for localcount 2017-11-17 09:26:36 +00:00
subr_lockdebug.c more const 2017-09-16 23:55:33 +00:00
subr_log.c Use C99 initializer for filterops 2017-10-25 08:12:37 +00:00
subr_lwp_specificdata.c
subr_once.c
subr_optstr.c David Binderman in PR kern/51189: simplify loop conditions 2016-05-30 11:24:40 +00:00
subr_pcq.c Use membar_datadep_consumer where code inspection reveals it necessary. 2015-01-08 23:39:57 +00:00
subr_pcu.c PR port-arm/52603: 2017-10-16 15:03:57 +00:00
subr_percpu.c vmem_alloc() with VM_SLEEP cannot fail, so percpu_alloc() cannot fail either. 2017-05-31 23:54:17 +00:00
subr_physmap.c
subr_pool.c add two new members to uvmexp_sysctl{}: bootpages and poolpages. 2017-12-02 08:15:42 +00:00
subr_prf.c Revert printf return value change. 2017-10-27 12:25:14 +00:00
subr_prof.c
subr_pserialize.c Implement debugging feature for pserialize(9) 2017-11-21 08:49:14 +00:00
subr_psref.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
subr_specificdata.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
subr_spldebug.c
subr_syscall_stats.c
subr_tftproot.c The mbuf is freed by the protocol even on error, so always NULL the pointer 2016-10-31 15:27:24 +00:00
subr_time.c Use the new magic BINTIME_SCALE_* macros instead of magic numbers. 2017-01-05 23:29:14 +00:00
subr_userconf.c
subr_vmem.c assert that vmem_alloc() with VM_SLEEP does not fail. 2017-05-31 23:53:30 +00:00
subr_workqueue.c
subr_xcall.c Change a KASSERT to KASSERTMSG and print the xcall function to be 2017-06-21 07:39:04 +00:00
sys_aio.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
sys_descrip.c
sys_generic.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
sys_lwp.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
sys_module.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
sys_mqueue.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
sys_pipe.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
sys_pmc.c
sys_process.c Paranoia... keep vmspace reference while doing pmap_procwr 2017-04-13 07:58:45 +00:00
sys_pset.c Don't forget to unlock the LWP. 2015-07-30 08:11:44 +00:00
sys_ptrace_common.c Remove the filesystem tracing feature 2017-08-28 00:46:06 +00:00
sys_ptrace.c Introduce PT_GETDBREGS and PT_SETDBREGS in ptrace(2) on i386 and amd64 2017-02-23 03:34:22 +00:00
sys_sched.c Fix reversed test. 2016-07-30 15:38:17 +00:00
sys_select.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
sys_sig.c Realtime signal support from GSoC 2016, Charles Cui. 2016-08-04 06:43:43 +00:00
sys_socket.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
sys_syscall.c regen 2015-03-07 16:38:49 +00:00
syscalls_autoload.c regen 2017-05-10 06:19:47 +00:00
syscalls.c regen 2017-05-10 06:19:47 +00:00
syscalls.conf Include non-portable <sys/idtype.h> inside RUMP_CLIENT protection. 2016-05-06 10:17:34 +00:00
syscalls.master * Split sys/kern/sys_process.c into three parts: 2016-11-02 00:11:59 +00:00
systrace_args.c regen 2017-05-10 06:19:47 +00:00
sysv_ipc.c When unloading the module, clear the address of the kauth_listener 2015-12-05 00:51:42 +00:00
sysv_msg.c don't forget to destroy a cv 2016-09-05 14:13:50 +00:00
sysv_sem.c In sysv_sem.c, defer establishment of exithook so we can initialize the 2015-11-06 02:26:42 +00:00
sysv_shm.c We never exec(2) with a kernel vmspace, so do not test for that, but instead 2015-11-26 13:15:34 +00:00
tty_bsdpty.c
tty_conf.c
tty_ptm.c to garnish, dust with _KERNEL_OPT 2015-08-24 22:50:32 +00:00
tty_pty.c Use C99 initializer for filterops 2017-10-25 08:12:37 +00:00
tty_subr.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
tty_tty.c
tty.c Use C99 initializer for filterops 2017-10-25 08:12:37 +00:00
uipc_accf.c
uipc_domain.c Fix a race between sysctl_unpcblist and closef. 2017-09-09 14:41:19 +00:00
uipc_mbuf2.c
uipc_mbuf.c Don't use 0 for PR_NOWAIT 2017-11-09 22:21:27 +00:00
uipc_proto.c
uipc_sem.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
uipc_socket2.c move the timestamp stuff to uipc_socket.c because it already has the compat 2017-07-06 17:42:39 +00:00
uipc_socket.c Use C99 initializer for filterops 2017-10-25 08:12:37 +00:00
uipc_syscalls.c Change len type to be unsigned int for consistency with the input type. 2017-06-20 20:34:49 +00:00
uipc_usrreq.c include opt_compat_netbsd.h, so that eg COMPAT_70 will be set. 2017-12-02 08:22:04 +00:00
vfs_bio.c Update the kernhist(9) kernel history code to address issues identified 2017-10-28 00:37:11 +00:00
vfs_cache.c Summarize lifetime of cache entries. 2017-03-18 22:36:56 +00:00
vfs_cwd.c
vfs_dirhash.c
vfs_getcwd.c Don't walk off the end of the dirent buffer. 2017-07-28 15:37:23 +00:00
vfs_hooks.c
vfs_init.c Remove miscfs/syncfs and 2015-05-06 15:57:07 +00:00
vfs_lockf.c
vfs_lookup.c Fix vnode leak on error, introduced by the openat family changes in -r1.200. 2017-07-09 22:48:44 +00:00
vfs_mount.c Change forced unmount to revert open device vnodes to anonymous devices. 2017-08-21 09:00:21 +00:00
vfs_quotactl.c
vfs_subr.c Revert printf return value change. 2017-10-27 12:25:14 +00:00
vfs_syscalls.c We computed the length of the string already, so use it... 2017-11-07 15:57:38 +00:00
vfs_trans.c Make the fast path of fstrans_get_lwp_info() "static inline". 2017-06-18 14:00:17 +00:00
vfs_vnode.c Fix non-DIAGNOSTICS build by adjusting _vstate_assert here too. 2017-09-22 06:05:20 +00:00
vfs_vnops.c add fo_name so we can identify the fileops in a simple way. 2017-11-30 20:25:54 +00:00
vfs_wapbl.c according to benchmark extracting pkgsrc.tar, using FUA and hence waiting 2017-12-02 17:29:55 +00:00
vfs_xattr.c
vnode_if.c Regen. 2017-07-12 09:31:59 +00:00
vnode_if.sh Operations fstrans_start() and fstrans_start_nowait() now always 2017-06-04 08:03:26 +00:00
vnode_if.src As VOP_ADVLOCK() may block indefinitely we cannot take fstrans here. 2017-07-12 09:31:07 +00:00