svn commit: r297508 - in head/cddl/contrib/opensolaris/lib/libzpool/common: . sys
Alexander Motin
mav at FreeBSD.org
Sat Apr 2 08:34:17 UTC 2016
Author: mav
Date: Sat Apr 2 08:34:15 2016
New Revision: 297508
URL: https://svnweb.freebsd.org/changeset/base/297508
Log:
MFV r297505:
6739 userland version of cv_timedwait_hires() always assumes absolute time
Reviewed by: Paul Dagnelie <pcd at delphix.com>
Reviewed by: Matthew Ahrens <mahrens at delphix.com>
Reviewed by: Dan McDonald <danmcd at omniti.com>
Reviewed by: Robert Mustacchi <rm at joyent.com>
Approved by: Robert Mustacchi <rm at joyent.com>
Author: George Wilson <george.wilson at delphix.com>
illumos/illumos-gate at 41c6413cb54bf338d7a59ed789ec2e0e44c35e6f
Modified:
head/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c
head/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
Directory Properties:
head/cddl/contrib/opensolaris/ (props changed)
Modified: head/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c
==============================================================================
--- head/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Sat Apr 2 08:28:46 2016 (r297507)
+++ head/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Sat Apr 2 08:34:15 2016 (r297508)
@@ -366,10 +366,13 @@ cv_timedwait_hires(kcondvar_t *cv, kmute
timestruc_t ts;
hrtime_t delta;
- ASSERT(flag == 0);
+ ASSERT(flag == 0 || flag == CALLOUT_FLAG_ABSOLUTE);
top:
- delta = tim - gethrtime();
+ delta = tim;
+ if (flag & CALLOUT_FLAG_ABSOLUTE)
+ delta -= gethrtime();
+
if (delta <= 0)
return (-1);
Modified: head/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
==============================================================================
--- head/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Sat Apr 2 08:28:46 2016 (r297507)
+++ head/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Sat Apr 2 08:34:15 2016 (r297508)
@@ -20,7 +20,7 @@
*/
/*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2014 by Delphix. All rights reserved.
+ * Copyright (c) 2012, 2015 by Delphix. All rights reserved.
* Copyright (c) 2012, Joyent, Inc. All rights reserved.
*/
/*
@@ -324,6 +324,7 @@ extern gid_t *crgetgroups(cred_t *cr);
typedef cond_t kcondvar_t;
#define CV_DEFAULT USYNC_THREAD
+#define CALLOUT_FLAG_ABSOLUTE 0x2
extern void cv_init(kcondvar_t *cv, char *name, int type, void *arg);
extern void cv_destroy(kcondvar_t *cv);
More information about the svn-src-head
mailing list