diff options
| -rw-r--r-- | kernel/sched.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 3de3deab8095..36cc05a76947 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
| @@ -9855,13 +9855,15 @@ int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent) | |||
| 9855 | se = kzalloc_node(sizeof(struct sched_entity), | 9855 | se = kzalloc_node(sizeof(struct sched_entity), |
| 9856 | GFP_KERNEL, cpu_to_node(i)); | 9856 | GFP_KERNEL, cpu_to_node(i)); |
| 9857 | if (!se) | 9857 | if (!se) |
| 9858 | goto err; | 9858 | goto err_free_rq; |
| 9859 | 9859 | ||
| 9860 | init_tg_cfs_entry(tg, cfs_rq, se, i, 0, parent->se[i]); | 9860 | init_tg_cfs_entry(tg, cfs_rq, se, i, 0, parent->se[i]); |
| 9861 | } | 9861 | } |
| 9862 | 9862 | ||
| 9863 | return 1; | 9863 | return 1; |
| 9864 | 9864 | ||
| 9865 | err_free_rq: | ||
| 9866 | kfree(cfs_rq); | ||
| 9865 | err: | 9867 | err: |
| 9866 | return 0; | 9868 | return 0; |
| 9867 | } | 9869 | } |
| @@ -9943,13 +9945,15 @@ int alloc_rt_sched_group(struct task_group *tg, struct task_group *parent) | |||
| 9943 | rt_se = kzalloc_node(sizeof(struct sched_rt_entity), | 9945 | rt_se = kzalloc_node(sizeof(struct sched_rt_entity), |
| 9944 | GFP_KERNEL, cpu_to_node(i)); | 9946 | GFP_KERNEL, cpu_to_node(i)); |
| 9945 | if (!rt_se) | 9947 | if (!rt_se) |
| 9946 | goto err; | 9948 | goto err_free_rq; |
| 9947 | 9949 | ||
| 9948 | init_tg_rt_entry(tg, rt_rq, rt_se, i, 0, parent->rt_se[i]); | 9950 | init_tg_rt_entry(tg, rt_rq, rt_se, i, 0, parent->rt_se[i]); |
| 9949 | } | 9951 | } |
| 9950 | 9952 | ||
| 9951 | return 1; | 9953 | return 1; |
| 9952 | 9954 | ||
| 9955 | err_free_rq: | ||
| 9956 | kfree(rt_rq); | ||
| 9953 | err: | 9957 | err: |
| 9954 | return 0; | 9958 | return 0; |
| 9955 | } | 9959 | } |
