Function report | 
Source Code:kernel\sched\deadline.c | 
Create Date:2022-07-28 09:40:31 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:We must be sure that accepting a new task (or allowing changing the* parameters of an existing one) is consistent with the bandwidth* constraints. If yes, this function also accordingly updates the currently
Proto:int sched_dl_overflow(struct task_struct *p, int policy, const struct sched_attr *attr)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct task_struct * | p | |
| int | policy | |
| const struct sched_attr * | attr | 
| 2553 | period = If sched_period Else sched_deadline | 
| 2554 | runtime = SCHED_DEADLINE | 
| 2556 | err = -1 | 
| 2562 | If new_bw == dl_runtime / dl_period && task_has_dl_policy(p) Then Return 0 | 
| 2570 | raw_spin_lock( & lock) | 
| 2571 | cpus = dl_bw_cpus(task_cpu(p)) | 
| 2572 | If dl_policy(policy) && Not task_has_dl_policy(p) && Not __dl_overflow(dl_b, cpus, 0, new_bw) Then | 
| 2577 | err = 0 | 
| 2578 | Else if dl_policy(policy) && task_has_dl_policy(p) && Not __dl_overflow(dl_b, cpus, dl_runtime / dl_period , new_bw) Then | 
| 2587 | __dl_sub(dl_b, dl_runtime / dl_period , cpus) | 
| 2589 | dl_change_utilization(p, new_bw) | 
| 2590 | err = 0 | 
| 2591 | Else if Not dl_policy(policy) && task_has_dl_policy(p) Then | 
| 2597 | err = 0 | 
| 2599 | raw_spin_unlock( & lock) | 
| 2601 | Return err | 
| Name | Describe | 
|---|---|
| __sched_setscheduler | 
| Source code conversion tool public plug-in interface  | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion  |