freebsd-skq/lib/libutil
asomers 9e66c6e8f0 Speed up pw operations that edit /etc/group or /etc/passwd
r285050 fixed a bug in pw that could lead to /etc/passwd or /etc/group
corruption on power loss. However, it fixed it by opening those files with
O_SYNC, which is very slow, especially on ZFS. This change replaces O_SYNC
with appropriately placed fsync()s instead, which is much faster. Using a
ZFS tmpdir, the time to run pw's kyua tests drops from 245s to 35s.

Reviewed by:	allanjude, bapt, vangyzen, garga
Tested on pfSense by:	garga
MFC after:	4 weeks
Sponsored by:	Spectra Logic Corp
Differential Revision:	https://reviews.freebsd.org/D8319
2016-11-18 16:07:08 +00:00
..
tests Use kqueue(2) instead of select(2). 2016-09-21 11:59:52 +00:00
_secure_path.3
_secure_path.c
auth.c
expand_number.3
expand_number.c
flopen.3
flopen.c
fparseln.3
fparseln.c fparseln(3): Update from NetBSD sources. 2014-07-23 14:57:15 +00:00
gr_util.c Speed up pw operations that edit /etc/group or /etc/passwd 2016-11-18 16:07:08 +00:00
hexdump.3 Add support for reading MAM attributes to camcontrol(8) and libcam(3). 2015-06-09 21:39:38 +00:00
hexdump.c
humanize_number.3
humanize_number.c
kinfo_getallproc.3 Add <sys/user.h> to the SYNOPSIS of the kinfo_get*() functions since these 2015-05-27 17:51:06 +00:00
kinfo_getallproc.c
kinfo_getfile.3 Add <sys/user.h> to the SYNOPSIS of the kinfo_get*() functions since these 2015-05-27 17:51:06 +00:00
kinfo_getfile.c Detect badly behaved coredump note helpers 2015-09-03 20:32:10 +00:00
kinfo_getproc.3 Add <sys/user.h> to the SYNOPSIS of the kinfo_get*() functions since these 2015-05-27 17:51:06 +00:00
kinfo_getproc.c
kinfo_getvmmap.3 Add <sys/user.h> to the SYNOPSIS of the kinfo_get*() functions since these 2015-05-27 17:51:06 +00:00
kinfo_getvmmap.c Fix core corruption caused by race in note_procstat_vmmap 2015-10-06 18:07:00 +00:00
kinfo_getvmobject.3 Export a list of VM objects in the system via a sysctl. The list can be 2015-05-27 18:11:05 +00:00
kinfo_getvmobject.c Export a list of VM objects in the system via a sysctl. The list can be 2015-05-27 18:11:05 +00:00
kld.3
kld.c
libutil.h revert r283969,283970 not needed anymore after r283981 2015-06-04 08:00:11 +00:00
login_auth.3
login_auth.c libutil: minor spelling fixes. 2016-05-18 15:25:45 +00:00
login_cap.3
login_cap.c libutil: minor spelling fixes. 2016-05-18 15:25:45 +00:00
login_cap.h
login_class.3 Fix handling of umtxp resource limit in sh(1)/ulimit(1), limits(1), add 2016-03-12 14:54:34 +00:00
login_class.c Fix handling of umtxp resource limit in sh(1)/ulimit(1), limits(1), add 2016-03-12 14:54:34 +00:00
login_crypt.c
login_ok.3
login_ok.c
login_times.3
login_times.c
login_tty.3
login_tty.c
login.conf.5 Fix handling of umtxp resource limit in sh(1)/ulimit(1), limits(1), add 2016-03-12 14:54:34 +00:00
Makefile First pass through library packaging. 2016-02-04 21:16:35 +00:00
Makefile.depend META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host. 2015-11-25 19:10:28 +00:00
pidfile.3 libutil: minor spelling fixes. 2016-05-18 15:25:45 +00:00
pidfile.c libutil: minor spelling fixes. 2016-05-18 15:25:45 +00:00
property.3
property.c
pty.3 Correct posix_openpt reference in pty(3) 2015-11-06 12:02:24 +00:00
pty.c
pw_util.3 Bump .Dd due to changes made in r285050 and r285053 2015-07-02 19:41:08 +00:00
pw_util.c Speed up pw operations that edit /etc/group or /etc/passwd 2016-11-18 16:07:08 +00:00
quotafile.3 mdoc: improvements to SEE ALSO. 2014-12-27 08:31:52 +00:00
quotafile.c Use strlcpy() instead of strncpy() to ensure that qf->fsname is NUL 2016-05-13 00:26:14 +00:00
realhostname_sa.3
realhostname.3
realhostname.c
stub.c
trimdomain.3
trimdomain.c
uucplock.3
uucplock.c