svn commit: r295925 - head/usr.sbin/pwd_mkdb
David Malone
dwmalone at FreeBSD.org
Tue Feb 23 15:28:14 UTC 2016
Author: dwmalone
Date: Tue Feb 23 15:28:13 2016
New Revision: 295925
URL: https://svnweb.freebsd.org/changeset/base/295925
Log:
Following revision r295924, the changes to a db file should be fsynced
before the file is closed. Consequently, it shouldn't be necessary to
open the file with O_SYNC any more.
This improves the performance of building large .db files for large
password files a lot and should resolve this problem:
https://forums.freebsd.org/threads/10-2-pre-pwd_mkdb-slow-on-larger-master-passwd.52700/
Differential Revision: https://reviews.freebsd.org/D5186
Reviewed by: garga, vangyzen, bapt, se
MFC after: 1 week
Modified:
head/usr.sbin/pwd_mkdb/pwd_mkdb.c
Modified: head/usr.sbin/pwd_mkdb/pwd_mkdb.c
==============================================================================
--- head/usr.sbin/pwd_mkdb/pwd_mkdb.c Tue Feb 23 15:21:13 2016 (r295924)
+++ head/usr.sbin/pwd_mkdb/pwd_mkdb.c Tue Feb 23 15:28:13 2016 (r295925)
@@ -228,14 +228,14 @@ main(int argc, char *argv[])
clean = FILE_INSECURE;
cp(buf2, buf, PERM_INSECURE);
dp = dbopen(buf,
- O_RDWR|O_EXCL|O_SYNC, PERM_INSECURE, DB_HASH, &openinfo);
+ O_RDWR|O_EXCL, PERM_INSECURE, DB_HASH, &openinfo);
if (dp == NULL)
error(buf);
clean = FILE_SECURE;
cp(sbuf2, sbuf, PERM_SECURE);
sdp = dbopen(sbuf,
- O_RDWR|O_EXCL|O_SYNC, PERM_SECURE, DB_HASH, &openinfo);
+ O_RDWR|O_EXCL, PERM_SECURE, DB_HASH, &openinfo);
if (sdp == NULL)
error(sbuf);
@@ -292,13 +292,13 @@ main(int argc, char *argv[])
method = 0;
} else {
dp = dbopen(buf,
- O_RDWR|O_CREAT|O_EXCL|O_SYNC, PERM_INSECURE, DB_HASH, &openinfo);
+ O_RDWR|O_CREAT|O_EXCL, PERM_INSECURE, DB_HASH, &openinfo);
if (dp == NULL)
error(buf);
clean = FILE_INSECURE;
sdp = dbopen(sbuf,
- O_RDWR|O_CREAT|O_EXCL|O_SYNC, PERM_SECURE, DB_HASH, &openinfo);
+ O_RDWR|O_CREAT|O_EXCL, PERM_SECURE, DB_HASH, &openinfo);
if (sdp == NULL)
error(sbuf);
clean = FILE_SECURE;
More information about the svn-src-all
mailing list