]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
Merge tag 'sched-urgent-2023-09-02' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 2 Sep 2023 15:49:08 +0000 (08:49 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 2 Sep 2023 15:49:08 +0000 (08:49 -0700)
Pull scheduler fixes from Ingo Molnar:
 "Miscellaneous scheduler fixes: a reporting fix, a static symbol fix,
  and a kernel-doc fix"

* tag 'sched-urgent-2023-09-02' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  sched/core: Report correct state for TASK_IDLE | TASK_FREEZABLE
  sched/fair: Make update_entity_lag() static
  sched/core: Add kernel-doc for set_cpus_allowed_ptr()

include/linux/sched.h
kernel/sched/fair.c

index 177b3f3676ef84c3a2a40a2e69f39e6c0f2f2a33..77f01ac385f7a57695c2e9af5b826cb4f9b39f6a 100644 (file)
@@ -1671,7 +1671,7 @@ static inline unsigned int __task_state_index(unsigned int tsk_state,
 
        BUILD_BUG_ON_NOT_POWER_OF_2(TASK_REPORT_MAX);
 
-       if (tsk_state == TASK_IDLE)
+       if ((tsk_state & TASK_IDLE) == TASK_IDLE)
                state = TASK_REPORT_IDLE;
 
        /*
@@ -1679,7 +1679,7 @@ static inline unsigned int __task_state_index(unsigned int tsk_state,
         * to userspace, we can make this appear as if the task has gone through
         * a regular rt_mutex_lock() call.
         */
-       if (tsk_state == TASK_RTLOCK_WAIT)
+       if (tsk_state & TASK_RTLOCK_WAIT)
                state = TASK_UNINTERRUPTIBLE;
 
        return fls(state);
@@ -1858,7 +1858,17 @@ extern int task_can_attach(struct task_struct *p);
 extern int dl_bw_alloc(int cpu, u64 dl_bw);
 extern void dl_bw_free(int cpu, u64 dl_bw);
 #ifdef CONFIG_SMP
+
+/* do_set_cpus_allowed() - consider using set_cpus_allowed_ptr() instead */
 extern void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask);
+
+/**
+ * set_cpus_allowed_ptr - set CPU affinity mask of a task
+ * @p: the task
+ * @new_mask: CPU affinity mask
+ *
+ * Return: zero if successful, or a negative error code
+ */
 extern int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask);
 extern int dup_user_cpus_ptr(struct task_struct *dst, struct task_struct *src, int node);
 extern void release_user_cpus_ptr(struct task_struct *p);
index 911d0063763cbdbfef36eb9dd6bafc552343efa1..8dbff6e7ad4f53af8965f5ab5ace0c1f2a758c63 100644 (file)
@@ -699,7 +699,7 @@ u64 avg_vruntime(struct cfs_rq *cfs_rq)
  *
  * XXX could add max_slice to the augmented data to track this.
  */
-void update_entity_lag(struct cfs_rq *cfs_rq, struct sched_entity *se)
+static void update_entity_lag(struct cfs_rq *cfs_rq, struct sched_entity *se)
 {
        s64 lag, limit;