From owner-svn-src-projects@FreeBSD.ORG Mon Nov 5 05:56:11 2012
Return-Path: <owner-svn-src-projects@FreeBSD.ORG>
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
by hub.freebsd.org (Postfix) with ESMTP id 09593CAD;
Mon, 5 Nov 2012 05:56:11 +0000 (UTC) (envelope-from mav@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org
[IPv6:2001:1900:2254:2068::e6a:0])
by mx1.freebsd.org (Postfix) with ESMTP id E282C8FC12;
Mon, 5 Nov 2012 05:56:10 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id qA55uAHI038660;
Mon, 5 Nov 2012 05:56:10 GMT (envelope-from mav@svn.freebsd.org)
Received: (from mav@localhost)
by svn.freebsd.org (8.14.5/8.14.5/Submit) id qA55uAL2038656;
Mon, 5 Nov 2012 05:56:10 GMT (envelope-from mav@svn.freebsd.org)
Message-Id: <201211050556.qA55uAL2038656@svn.freebsd.org>
From: Alexander Motin <mav@FreeBSD.org>
Date: Mon, 5 Nov 2012 05:56:10 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject: svn commit: r242598 - projects/calloutng/sys/kern
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree" <svn-src-projects.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-projects>,
<mailto:svn-src-projects-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-projects>
List-Post: <mailto:svn-src-projects@freebsd.org>
List-Help: <mailto:svn-src-projects-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>,
<mailto:svn-src-projects-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 05 Nov 2012 05:56:11 -0000
Author: mav
Date: Mon Nov 5 05:56:10 2012
New Revision: 242598
URL: http://svnweb.freebsd.org/changeset/base/242598
Log:
C_DIRECT_EXEC is the flag of callouts, so move it to the places where it
really belongs.
Modified:
projects/calloutng/sys/kern/kern_time.c
projects/calloutng/sys/kern/subr_sleepqueue.c
projects/calloutng/sys/kern/sys_generic.c
Modified: projects/calloutng/sys/kern/kern_time.c
==============================================================================
--- projects/calloutng/sys/kern/kern_time.c Mon Nov 5 02:36:10 2012 (r242597)
+++ projects/calloutng/sys/kern/kern_time.c Mon Nov 5 05:56:10 2012 (r242598)
@@ -494,8 +494,7 @@ kern_nanosleep(struct thread *td, struct
timespec2bintime(rqt, &tmp);
bintime_add(&bt,&tmp);
for (;;) {
- error = tsleep_bt(&nanowait, PWAIT | PCATCH, "nanslp", &bt,
- C_DIRECT_EXEC);
+ error = tsleep_bt(&nanowait, PWAIT | PCATCH, "nanslp", &bt, 0);
binuptime(&bt2);
if (error != EWOULDBLOCK) {
if (error == ERESTART)
Modified: projects/calloutng/sys/kern/subr_sleepqueue.c
==============================================================================
--- projects/calloutng/sys/kern/subr_sleepqueue.c Mon Nov 5 02:36:10 2012 (r242597)
+++ projects/calloutng/sys/kern/subr_sleepqueue.c Mon Nov 5 05:56:10 2012 (r242598)
@@ -376,11 +376,11 @@ _sleepq_set_timeout(void *wchan, struct
MPASS(td->td_sleepqueue == NULL);
MPASS(wchan != NULL);
if (bt == NULL)
- callout_reset_flags_on(&td->td_slpcallout, timo,
- sleepq_timeout, td, PCPU_GET(cpuid), flags);
+ callout_reset_flags_on(&td->td_slpcallout, timo,
+ sleepq_timeout, td, PCPU_GET(cpuid), flags | C_DIRECT_EXEC);
else
- callout_reset_bt_on(&td->td_slpcallout, bt,
- sleepq_timeout, td, PCPU_GET(cpuid), flags);
+ callout_reset_bt_on(&td->td_slpcallout, bt,
+ sleepq_timeout, td, PCPU_GET(cpuid), flags | C_DIRECT_EXEC);
}
/*
Modified: projects/calloutng/sys/kern/sys_generic.c
==============================================================================
--- projects/calloutng/sys/kern/sys_generic.c Mon Nov 5 02:36:10 2012 (r242597)
+++ projects/calloutng/sys/kern/sys_generic.c Mon Nov 5 05:56:10 2012 (r242598)
@@ -1666,8 +1666,8 @@ seltdwait(struct thread *td, struct bint
if (bt == NULL && timo > 0)
error = cv_timedwait_sig(&stp->st_wait, &stp->st_mtx, timo);
else if (bt != NULL)
- error = cv_timedwait_bt_sig(&stp->st_wait, &stp->st_mtx,
- bt, C_DIRECT_EXEC);
+ error = cv_timedwait_bt_sig(&stp->st_wait, &stp->st_mtx,
+ bt, 0);
else
error = cv_wait_sig(&stp->st_wait, &stp->st_mtx);
mtx_unlock(&stp->st_mtx);