Blocked kworker in single core RT system

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

 



Hi,
We're running Linux with the RT patch on our single core ARM embedded system, kernel version 3.14. Our application has several threads, of which some are running in mode SCHED_RR, with different priorities.

One of the higher prio SCHED_RR threads is dependent on data from the TTY driver. In the driver, a workqueue is used to deliver the data received, which is serviced by a kworker. The kworker runs in mode SCHED_OTHER. If one of the lower priority SCHED_RR threads is running, it will therefore block the kworker, and indirectly the higher prio SCHED_RR thread.

Our tests show that the problem can be solved by setting mode SCHED_RR for the kworker, which makes sense. However, this is not easily implemented in the real system, as kworkers are created and destroyed dynamically. Also, as the kworkers performs work for other drivers also, this might not be optimal.

What is the recommended way to solve this problem? Is there some kernel option that solves this, or do we need to make our own implementation?

Regards,

 Rasmus Ahlberg
 Software Developer, R&D
 Electrolux Small Appliances
 Cell phone: +46-(0)738-857392

 S:t Göransgatan 143
 SE-105 45 Stockholm
 Sweden


This email and any attached files is for the attention of the intended recipient. The email and any attachments may contain material that is confidential, privileged and/or attorney work product. If you are not the intended recipient: (a) contact the sender immediately and delete from your system all copies of the email including any attachments. (b) do not read, print, retain, copy or disseminate this message or any part of it. Any such unauthorized use may be unlawful. E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore can not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. If verification is required please request a hard-copy version. The Electrolux Group www.electrolux.com
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux