当前位置: 首页>>代码示例>>C++>>正文


C++ rcu_sched_qs函数代码示例

本文整理汇总了C++中rcu_sched_qs函数的典型用法代码示例。如果您正苦于以下问题:C++ rcu_sched_qs函数的具体用法?C++ rcu_sched_qs怎么用?C++ rcu_sched_qs使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了rcu_sched_qs函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: rcu_check_callbacks

/*
 * Check to see if the scheduling-clock interrupt came from an extended
 * quiescent state, and, if so, tell RCU about it.  This function must
 * be called from hardirq context.  It is normally called from the
 * scheduling-clock interrupt.
 */
void rcu_check_callbacks(int user)
{
	RCU_TRACE(check_cpu_stalls());
	if (user || rcu_is_cpu_rrupt_from_idle()) {
		rcu_sched_qs();
	}
	else if (!in_softirq()) {
		rcu_bh_qs();
	}
	if (user) {
		rcu_note_voluntary_context_switch(current);
	}
}
开发者ID:agroce,项目名称:cbmcmutate,代码行数:19,代码来源:mutant100026_mytiny.c

示例2: rcu_check_callbacks

/*
 * Check to see if the scheduling-clock interrupt came from an extended
 * quiescent state, and, if so, tell RCU about it.  This function must
 * be called from hardirq context.  It is normally called from the
 * scheduling-clock interrupt.
 */
void rcu_check_callbacks(int user)
{
	RCU_TRACE(check_cpu_stalls());
 mutant_covered = 1;
 /* MUTANT (negate) */	if(! (user || rcu_is_cpu_rrupt_from_idle())) {
		rcu_sched_qs();
	}
	else if (!in_softirq()) {
		rcu_bh_qs();
	}
	if (user) {
		rcu_note_voluntary_context_switch(current);
	}
}
开发者ID:agroce,项目名称:cbmcmutate,代码行数:20,代码来源:COVER_mutant100121_mytiny.c

示例3: rcu_check_callbacks

/*
 * Check to see if the scheduling-clock interrupt came from an extended
 * quiescent state, and, if so, tell RCU about it.  This function must
 * be called from hardirq context.  It is normally called from the
 * scheduling-clock interrupt.
 */
void rcu_check_callbacks(int user)
{
	RCU_TRACE(check_cpu_stalls());
	if (user || rcu_is_cpu_rrupt_from_idle()) {
		if (!__covered11) {__covered11 = 1; total_covered += 1;}
		rcu_sched_qs();
	}
	else if (!in_softirq()) {
		if (!__covered12) {__covered12 = 1; total_covered += 1;}
		rcu_bh_qs();
	}
	if (user) {
		if (!__covered13) {__covered13 = 1; total_covered += 1;}
		rcu_note_voluntary_context_switch(current);
	}
}
开发者ID:agroce,项目名称:cbmcmutate,代码行数:22,代码来源:BRANCHCOV_mutant100059_mytiny.c

示例4: rcu_idle_enter_common

/* Common code for rcu_idle_enter() and rcu_irq_exit(), see kernel/rcutree.c. */
static void rcu_idle_enter_common(long long oldval)
{
	if (rcu_dynticks_nesting) {
		RCU_TRACE(trace_rcu_dyntick("--=",
					    oldval, rcu_dynticks_nesting));
		return;
	}
	RCU_TRACE(trace_rcu_dyntick("Start", oldval, rcu_dynticks_nesting));
	if (!is_idle_task(current)) {
		struct task_struct *idle = idle_task(smp_processor_id());

		RCU_TRACE(trace_rcu_dyntick("Error on entry: not idle task",
					    oldval, rcu_dynticks_nesting));
		ftrace_dump(DUMP_ALL);
		WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s",
			  current->pid, current->comm,
			  idle->pid, idle->comm); /* must be idle task! */
	}
	rcu_sched_qs(0); /* implies rcu_bh_qsctr_inc(0) */
}
开发者ID:openube,项目名称:android_kernel_sony_c2305,代码行数:21,代码来源:rcutiny.c

示例5: rcu_idle_enter_common

/* Common code for rcu_idle_enter() and rcu_irq_exit(), see kernel/rcu/tree.c. */
static void rcu_idle_enter_common(long long newval)
{
	if (newval) {
		RCU_TRACE(trace_rcu_dyntick(TPS("--="),
					    rcu_dynticks_nesting, newval));
		rcu_dynticks_nesting = newval;
		return;
	}
	RCU_TRACE(trace_rcu_dyntick(TPS("Start"),
				    rcu_dynticks_nesting, newval));
	if (IS_ENABLED(CONFIG_RCU_TRACE) && !is_idle_task(current)) {
		struct task_struct *idle __maybe_unused = idle_task(smp_processor_id());

		RCU_TRACE(trace_rcu_dyntick(TPS("Entry error: not idle task"),
					    rcu_dynticks_nesting, newval));
		ftrace_dump(DUMP_ALL);
		WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s",
			  current->pid, current->comm,
			  idle->pid, idle->comm); /* must be idle task! */
	}
	rcu_sched_qs(); /* implies rcu_bh_inc() */
	barrier();
	rcu_dynticks_nesting = newval;
}
开发者ID:agroce,项目名称:cbmcmutate,代码行数:25,代码来源:COVER_mutant100173_tiny.c

示例6: rcu_enter_nohz

/*
 * Enter dynticks-idle mode, which is an extended quiescent state
 * if we have fully entered that mode (i.e., if the new value of
 * dynticks_nesting is zero).
 */
void rcu_enter_nohz(void)
{
	if (--rcu_dynticks_nesting == 0)
		rcu_sched_qs(0); /* implies rcu_bh_qsctr_inc(0) */
}
开发者ID:Ntemis,项目名称:LG_X3_P880_v20a,代码行数:10,代码来源:rcutiny.c

示例7: rcu_note_context_switch

void rcu_note_context_switch(int cpu)
{
	rcu_sched_qs(cpu);
	rcu_preempt_note_context_switch(cpu);
}
开发者ID:flwh,项目名称:Alcatel_OT_985_kernel,代码行数:5,代码来源:rcutree.c


注:本文中的rcu_sched_qs函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。