bird2: Fix bus error on OSPF on IPQ806X 712/head
authorMatt Reeve <matt@mreeve.com>
Tue, 10 Aug 2021 11:41:04 +0000 (12:41 +0100)
committerMatt Reeve <matt@mreeve.com>
Wed, 11 Aug 2021 13:46:06 +0000 (14:46 +0100)
commit166b6ea77b30f82eb880ce43a9e9ff343b79fe2e
treef012a1be149711b9b2d3ec91909195b9a5666948
parent79a8e562a3a30dbb430a4e5f4009b8f47cea12b4
bird2: Fix bus error on OSPF on IPQ806X

On a Netgear R7800, if ospf v2 or v3 is configured in bird.conf, it fails to start with this error:

Fri Jun 11 14:41:11 2021 daemon.info bird: Started
Fri Jun 11 14:41:11 2021 kern.err kernel: [ 3500.853248] Alignment trap: not handling instruction f44c0a1f at [<00035848>] Fri Jun 11 14:41:11 2021 kern.alert kernel: [ 3500.853283] 8<--- cut here ---
Fri Jun 11 14:41:11 2021 kern.alert kernel: [ 3500.859363] Unhandled fault: alignment exception (0x801) at 0x007e0624
Fri Jun 11 14:41:11 2021 kern.alert kernel: [ 3500.862443] pgd = 0bbef4fd
Fri Jun 11 14:41:11 2021 kern.alert kernel: [ 3500.868821] [007e0624] *pgd=5d6ca835, *pte=5c40b75f, *ppte=5c40bc7f

The problem is due to a struct not being properly aligned on the ARMv7 architecture.

This patch fixes the problem by adding the "PACKED" macro to the affected struct. Note
that upstream may later fix this in another way, in which case this patch will not be required.

Signed-off-by: Matt Reeve <matt@mreeve.com>
bird2/Makefile
bird2/patches/000-ospf-bus-error.patch [new file with mode: 0644]