network deadlock in Linux kernel 4.9 (IPSEC)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

network deadlock in Linux kernel 4.9 (IPSEC)

589 Views
wolfgang_muees
Contributor II

Hi,

I am using Linux kernel 4.9 on the i.MX6 series.

If using ethernet MAC and IPSEC (for VPN), sometimes the system goes into deadlock.

The problem is in xfrm_input.c, in the  xfrm_input() function.

This function is called for each incomming network packet, and also for each decrypted packet.

Both calls came from (different) soft irqs, and as the resources were protected with spin_lock(), there will be a deadlock if both calls came at the same time.

The solution is to convert all spinlock functions in  xfrm_input() to use spinlock_bh() funktions.

Look at this patch:

https://patchwork.ozlabs.org/project/netdev/patch/20090511184739.6e497f29@penta.localdomain/

regards

Wolfgang

Labels (1)
0 Kudos
1 Reply

575 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello wolfgang,

You should try one of the latest BSP 5.4.47 or 5.9 since it has more stable network, and must include the ethernet bug patch.

 

Regards

 

0 Kudos