> Could you please give me some hint on how to investigate the cause deeply? Shortening the call trace to the relevant lines: > Jul 3 10:23:31 yx kernel: [ 1176.166252] Call Trace: > Jul 3 10:23:31 yx kernel: [ 1176.166261] _raw_spin_lock+0x20/0x30 > Jul 3 10:23:31 yx kernel: [ 1176.166270] can_write+0x6c/0x2c0 [advcan] > Jul 3 10:23:31 yx kernel: [ 1176.166292] __vfs_write+0x3a/0x190 You get into function can_write() in module advcan. That tries to take a spinlock, while something else already has it. The spinlock call is (roughly) 15% of the way through the function can_write(). The 'modules linked in' list includes "advcan(OE)". The 'O' tells us it's an out-of-tree module, which means you need to talk to whoever wrote the module and find out why it's hanging on a spin lock (most likely something else is failing to release it). And that's about as far as we can hint, since we don't have the source for your out-of-tree module. If the people who wrote it would clean it up and get it into the base Linux tree, then we'd all have access to it and be able to help in much greater detail.