Now that the enabled/disabled states for the preemption functions are declared alongside their definitions, the core PREEMPT_DYNAMIC logic is no longer tied to GENERIC_ENTRY, and can safely be selected so long as an architecture provides enabled/disabled states for irqentry_exit_cond_resched(). Make it possible to select HAVE_PREEMPT_DYNAMIC without GENERIC_ENTRY. For existing users of HAVE_PREEMPT_DYNAMIC there should be no functional change as a result of this patch.
Unified · Split
| @@ -1279,7 +1279,6 @@ config HAVE_STATIC_CALL_INLINE · 1278 unmodified lines | |||
| 1279 | config HAVE_PREEMPT_DYNAMIC | 1279 | config HAVE_PREEMPT_DYNAMIC |
| 1280 | bool | 1280 | bool |
| 1281 | depends on HAVE_STATIC_CALL | 1281 | depends on HAVE_STATIC_CALL |
| 1282 | depends on GENERIC_ENTRY | ||
| 1283 | help | 1282 | help |
| 1284 | Select this if the architecture support boot time preempt setting | 1283 | Select this if the architecture support boot time preempt setting |
| 1285 | on top of static calls. It is strongly advised to support inline | 1284 | on top of static calls. It is strongly advised to support inline |
| @@ -8149,7 +8149,9 @@ EXPORT_SYMBOL(__cond_resched_rwlock_write); · 8148 unmodified lines | |||
| 8149 | 8149 | ||
| 8150 | #ifdef CONFIG_PREEMPT_DYNAMIC | 8150 | #ifdef CONFIG_PREEMPT_DYNAMIC |
| 8151 | 8151 | ||
| 8152 | #ifdef CONFIG_GENERIC_ENTRY | ||
| 8152 | #include <linux/entry-common.h> | 8153 | #include <linux/entry-common.h> |
| 8154 | #endif | ||
| 8153 | 8155 | ||
| 8154 | /* | 8156 | /* |
| 8155 | * SC:cond_resched | 8157 | * SC:cond_resched |