I ran into the exact same problem described in this thread:
https://marc.info/?l=linux-can&m=144803311311632&w=4. I am using the
exact same kernel, j1939 stack and target.
Unlike what it was done in this thread, I did not remove the
put_session() function called in j1939tp_rxtask since it introduce a
memory leak.
I managed to get it work by applying the following patch but I'm not
sure if what this change entails ?
diff --git a/net/can/sj1939/transport.c b/net/can/sj1939/transport.c
index 26eccc0..d336083 100644
--- a/net/can/sj1939/transport.c
+++ b/net/can/sj1939/transport.c
@@ -119,8 +119,8 @@ static inline void j1939session_destroy(struct
session *session)
kfree_skb(session->skb);
hrtimer_cancel(&session->rxtimer);
hrtimer_cancel(&session->txtimer);
- tasklet_disable(&session->rxtask);
- tasklet_disable(&session->txtask);
+ tasklet_disable_nosync(&session->rxtask);
+ tasklet_disable_nosync(&session->txtask);
kfree(session);
}
Le 10/07/2018 à 06:54, Oleksij Rempel a écrit :
Hi,
On 09.07.2018 17:50, bacor@xxxxxxxx wrote:
Hello,
I can't find any information on j1939 support on preempt_rt kernel. Does
anybody know if we j1939 is actually supported on a preempt_rt kernel ?
i have never tested it on preempt_rt and did any related optimization.
Testing and fixes are welcome.
--
To unsubscribe from this list: send the line "unsubscribe linux-can" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html