Re: [PATCH 09/23] sched,ivtv: Convert to sched_set_fifo*()

From: Hans Verkuil
Date: Fri Apr 24 2020 - 05:58:46 EST


On 22/04/2020 13:27, Peter Zijlstra wrote:
> Because SCHED_FIFO is a broken scheduler model (see previous patches)
> take away the priority field, the kernel can't possibly make an
> informed decision.
>
> Effectively changes from 99 to 50.
>
> Cc: hverkuil@xxxxxxxxx
> Cc: awalls@xxxxxxxxxxxxxxxx
> Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
> Reviewed-by: Ingo Molnar <mingo@xxxxxxxxxx>

Acked-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>
Tested-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>

I didn't see any difference in behavior when I changed the prio from 99 to 50,
so it doesn't seem to be a harmful change :-)

Regards,

Hans

> ---
> drivers/media/pci/ivtv/ivtv-driver.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> --- a/drivers/media/pci/ivtv/ivtv-driver.c
> +++ b/drivers/media/pci/ivtv/ivtv-driver.c
> @@ -737,8 +737,6 @@ static void ivtv_process_options(struct
> */
> static int ivtv_init_struct1(struct ivtv *itv)
> {
> - struct sched_param param = { .sched_priority = 99 };
> -
> itv->base_addr = pci_resource_start(itv->pdev, 0);
> itv->enc_mbox.max_mbox = 2; /* the encoder has 3 mailboxes (0-2) */
> itv->dec_mbox.max_mbox = 1; /* the decoder has 2 mailboxes (0-1) */
> @@ -758,7 +756,7 @@ static int ivtv_init_struct1(struct ivtv
> return -1;
> }
> /* must use the FIFO scheduler as it is realtime sensitive */
> - sched_setscheduler(itv->irq_worker_task, SCHED_FIFO, &param);
> + sched_set_fifo(itv->irq_worker_task);
>
> kthread_init_work(&itv->irq_work, ivtv_irq_work_handler);
>
>
>