Re: [PATCH v5] usb: typec: tcpm: Migrate workqueue to RT priority for processing events

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/18/20 3:58 AM, Greg Kroah-Hartman wrote:
> On Thu, Jul 30, 2020 at 11:58:30PM -0700, Badhri Jagan Sridharan wrote:
>> "tReceiverResponse 15 ms Section 6.6.2
>> The receiver of a Message requiring a response Shall respond
>> within tReceiverResponse in order to ensure that the
>> sender’s SenderResponseTimer does not expire."
>>
>> When the cpu complex is busy running other lower priority
>> work items, TCPM's work queue sometimes does not get scheduled
>> on time to meet the above requirement from the spec.
>> Moving to kthread_work apis to run with real time priority.
>> Just lower than the default threaded irq priority,
>> MAX_USER_RT_PRIO/2 + 1. (Higher number implies lower priority).
>>
>> Further, as observed in 1ff688209e2e, moving to hrtimers to
>> overcome scheduling latency while scheduling the delayed work.
>>
>> TCPM has three work streams:
>> 1. tcpm_state_machine
>> 2. vdm_state_machine
>> 3. event_work
>>
>> tcpm_state_machine and vdm_state_machine both schedule work in
>> future i.e. delayed. Hence each of them have a corresponding
>> hrtimer, tcpm_state_machine_timer & vdm_state_machine_timer.
>>
>> When work is queued right away kthread_queue_work is used.
>> Else, the relevant timer is programmed and made to queue
>> the kthread_work upon timer expiry.
>>
>> kthread_create_worker only creates one kthread worker thread,
>> hence single threadedness of workqueue is retained.
>>
>> Signed-off-by: Badhri Jagan Sridharan <badhri@xxxxxxxxxx>
>> Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
>> Reviewed-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
>> ---
> 
> With this patch applied I get the following build breakage:
> 
> ERROR: modpost: "sched_setscheduler" [drivers/usb/typec/tcpm/tcpm.ko] undefined!
> 

Needs to call sched_set_fifo() now. See upstream commit 94beddacb53cd
("sched,watchdog: Convert to sched_set_fifo()").

Guenter

> Please fix up and resend against 5.9-rc1.
> 
> thanks,
> 
> greg k-h
> 




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux