* replacement of tasklet_hrtimer_init in RT
@ 2017-10-24 16:33 Chris Caudle
2017-10-25 5:34 ` Henrik Austad
2017-10-26 15:40 ` Sebastian Andrzej Siewior
0 siblings, 2 replies; 6+ messages in thread
From: Chris Caudle @ 2017-10-24 16:33 UTC (permalink / raw)
To: linux-rt-users
I recently began helping someone test a new multimedia driver (network
audio) and found that the driver would not compile on my machine running
an RT kernel because the driver used tasklet_hrtimer_init(), but that
function is not defined in interrupt.h in the RT patched kernel.
What should be used in place of that, and where should be look for
documentation describing any differences that need to be accomodated?
--
Chris Caudle
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: replacement of tasklet_hrtimer_init in RT
2017-10-24 16:33 replacement of tasklet_hrtimer_init in RT Chris Caudle
@ 2017-10-25 5:34 ` Henrik Austad
2017-10-25 16:50 ` Chris Caudle
2017-10-26 15:40 ` Sebastian Andrzej Siewior
1 sibling, 1 reply; 6+ messages in thread
From: Henrik Austad @ 2017-10-25 5:34 UTC (permalink / raw)
To: Chris Caudle; +Cc: linux-rt-users
[-- Attachment #1: Type: text/plain, Size: 1038 bytes --]
Hi Chris,
On Tue, Oct 24, 2017 at 11:33:46AM -0500, Chris Caudle wrote:
> I recently began helping someone test a new multimedia driver (network
> audio) and found that the driver would not compile on my machine running
> an RT kernel because the driver used tasklet_hrtimer_init(), but that
> function is not defined in interrupt.h in the RT patched kernel.
/me eyes include/linux/interupt.h and kernel/softirq.c and finds
tasklet_hrtimer_init().
It is marked EXPORT_SYMBOL_GPL() though, so if you do not export the
modules as GPL, it won't resolve that symbol.
If this is not the case, please provide which kernel-version and PREEMPT-RT
patch version you are using. A .config would probably also be helpful.
> What should be used in place of that, and where should be look for
> documentation describing any differences that need to be accomodated?
Using tasklets is somewhat frowned upon -have you tried using a
kernelthread instead? (You can adjust priority and set affinity for
threads)
-Henrik
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: replacement of tasklet_hrtimer_init in RT
2017-10-25 5:34 ` Henrik Austad
@ 2017-10-25 16:50 ` Chris Caudle
2017-10-25 19:40 ` Chris Caudle
2017-10-25 20:48 ` Henrik Austad
0 siblings, 2 replies; 6+ messages in thread
From: Chris Caudle @ 2017-10-25 16:50 UTC (permalink / raw)
To: Henrik Austad; +Cc: linux-rt-users
On Wed, October 25, 2017 12:34 am, Henrik Austad wrote:
> /me eyes include/linux/interupt.h and kernel/softirq.c and finds
> tasklet_hrtimer_init().
Are you sure? I previously sent a copy of my interrupt.h to the list, may
have been rejected because I attached the file rather than copied inline.
I downloaded the patches file for 4.11.12-rt14 and searching for
tasklet_hrtimer_init() I find this reference:
0022-softirq-Remove-tasklet_hrtimer.patch:-tasklet_hrtimer_init(struct
tasklet_hrtimer *ttimer,
The very top lines of that 0022 patch file are these:
---------
From: Thomas Gleixner <tglx@linutronix.de>
Date: Thu, 31 Aug 2017 11:03:11 +0000
Subject: [PATCH 22/25] softirq: Remove tasklet_hrtimer
There are no more tasklet_hrtimer users of this interface.
Remove it.
---------
It looks to me like the tasklet_hrtimer interface is being intentionally
removed.
--
Chris Caudle
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: replacement of tasklet_hrtimer_init in RT
2017-10-25 16:50 ` Chris Caudle
@ 2017-10-25 19:40 ` Chris Caudle
2017-10-25 20:48 ` Henrik Austad
1 sibling, 0 replies; 6+ messages in thread
From: Chris Caudle @ 2017-10-25 19:40 UTC (permalink / raw)
To: Henrik Austad, linux-rt-users, tglx
On Wed, October 25, 2017 11:50 am, Chris Caudle wrote:
> I downloaded the patches file for 4.11.12-rt14 and searching for
> tasklet_hrtimer_init() I find this reference:
>
> 0022-softirq-Remove-tasklet_hrtimer.patch:-tasklet_hrtimer_init(struct
> tasklet_hrtimer *ttimer,
>
> The very top lines of that 0022 patch file are these:
>
> ---------
> From: Thomas Gleixner <tglx@linutronix.de>
> Date: Thu, 31 Aug 2017 11:03:11 +0000
> Subject: [PATCH 22/25] softirq: Remove tasklet_hrtimer
>
> There are no more tasklet_hrtimer users of this interface.
> Remove it.
Does anyone on this list know whether the tasklet_hrtimer interface will
be deprecated for mainline kernel as well?
Can anyone suggest a document that describes (hopefully simply enough for
a kernel beginner to understand) how to convert an existing implementation
from tasklet_hrtimer to an alternative?
thank you,
Chris Caudle
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: replacement of tasklet_hrtimer_init in RT
2017-10-25 16:50 ` Chris Caudle
2017-10-25 19:40 ` Chris Caudle
@ 2017-10-25 20:48 ` Henrik Austad
1 sibling, 0 replies; 6+ messages in thread
From: Henrik Austad @ 2017-10-25 20:48 UTC (permalink / raw)
To: Chris Caudle; +Cc: linux-rt-users
[-- Attachment #1: Type: text/plain, Size: 1249 bytes --]
On Wed, Oct 25, 2017 at 11:50:01AM -0500, Chris Caudle wrote:
> On Wed, October 25, 2017 12:34 am, Henrik Austad wrote:
> > /me eyes include/linux/interupt.h and kernel/softirq.c and finds
> > tasklet_hrtimer_init().
>
> Are you sure? I previously sent a copy of my interrupt.h to the list, may
> have been rejected because I attached the file rather than copied inline.
do'h! you're right, I was looking in the wrong version (for some reason I
was looking at v4.9.33-rt23) - it has since been removed.
> I downloaded the patches file for 4.11.12-rt14 and searching for
> tasklet_hrtimer_init() I find this reference:
>
> 0022-softirq-Remove-tasklet_hrtimer.patch:-tasklet_hrtimer_init(struct
> tasklet_hrtimer *ttimer,
>
> The very top lines of that 0022 patch file are these:
yeah, I see it, my bad, sorry
-Henrik
> ---------
> From: Thomas Gleixner <tglx@linutronix.de>
> Date: Thu, 31 Aug 2017 11:03:11 +0000
> Subject: [PATCH 22/25] softirq: Remove tasklet_hrtimer
>
> There are no more tasklet_hrtimer users of this interface.
> Remove it.
> ---------
>
> It looks to me like the tasklet_hrtimer interface is being intentionally
> removed.
>
> --
> Chris Caudle
>
>
--
Henrik Austad
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: replacement of tasklet_hrtimer_init in RT
2017-10-24 16:33 replacement of tasklet_hrtimer_init in RT Chris Caudle
2017-10-25 5:34 ` Henrik Austad
@ 2017-10-26 15:40 ` Sebastian Andrzej Siewior
1 sibling, 0 replies; 6+ messages in thread
From: Sebastian Andrzej Siewior @ 2017-10-26 15:40 UTC (permalink / raw)
To: Chris Caudle; +Cc: linux-rt-users
On 2017-10-24 11:33:46 [-0500], Chris Caudle wrote:
> I recently began helping someone test a new multimedia driver (network
> audio) and found that the driver would not compile on my machine running
> an RT kernel because the driver used tasklet_hrtimer_init(), but that
> function is not defined in interrupt.h in the RT patched kernel.
>
> What should be used in place of that, and where should be look for
> documentation describing any differences that need to be accomodated?
So what you want to do in -RT right now is to use something like the
mac80211_hwsim.c:
https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git/commit/?h=linux-4.13.y-rt&id=29158ad20a5363c581110497f430fa98b4280c5c
but I will update that softirq patch I have now in tree with the
version which is staged for upstream and then it will change slightly:
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=WIP.timers&id=77d37439a5b64036c1c168752a95e80f6ebe241a
Sebastian
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2017-10-26 15:40 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-24 16:33 replacement of tasklet_hrtimer_init in RT Chris Caudle
2017-10-25 5:34 ` Henrik Austad
2017-10-25 16:50 ` Chris Caudle
2017-10-25 19:40 ` Chris Caudle
2017-10-25 20:48 ` Henrik Austad
2017-10-26 15:40 ` Sebastian Andrzej Siewior
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox