diff options
| author | Takashi Iwai <tiwai@suse.de> | 2013-06-28 13:36:22 +0200 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2013-06-28 13:36:22 +0200 |
| commit | accaf69da1d1e64bd77ac0caad77e4cfc3b654c7 (patch) | |
| tree | 0402e4fad9cecd428c8c3c228a08f9e31eb63470 /include/linux/preempt.h | |
| parent | 975cc02a904ae385721f1bdb65eb1bcf707dfaf1 (diff) | |
| parent | 27516080b21cbcb936440d2a3171867860b9a881 (diff) | |
Merge tag 'asoc-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-next
ASoC: More updates for v3.11
Some more fixes and enhancements, and also a bunch of refectoring for
AC'97 support which enables more than one AC'97 controller driver to be
built in.
Diffstat (limited to 'include/linux/preempt.h')
| -rw-r--r-- | include/linux/preempt.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/include/linux/preempt.h b/include/linux/preempt.h index 87a03c746f17..f5d4723cdb3d 100644 --- a/include/linux/preempt.h +++ b/include/linux/preempt.h @@ -33,9 +33,25 @@ do { \ preempt_schedule(); \ } while (0) +#ifdef CONFIG_CONTEXT_TRACKING + +void preempt_schedule_context(void); + +#define preempt_check_resched_context() \ +do { \ + if (unlikely(test_thread_flag(TIF_NEED_RESCHED))) \ + preempt_schedule_context(); \ +} while (0) +#else + +#define preempt_check_resched_context() preempt_check_resched() + +#endif /* CONFIG_CONTEXT_TRACKING */ + #else /* !CONFIG_PREEMPT */ #define preempt_check_resched() do { } while (0) +#define preempt_check_resched_context() do { } while (0) #endif /* CONFIG_PREEMPT */ @@ -88,7 +104,7 @@ do { \ do { \ preempt_enable_no_resched_notrace(); \ barrier(); \ - preempt_check_resched(); \ + preempt_check_resched_context(); \ } while (0) #else /* !CONFIG_PREEMPT_COUNT */ |
