OpenWrt/LEDE Project

  • Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Build Failure
  • Category Packages
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version openwrt-19.07
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by Yuxiang Zhu - 20.06.2020

FS#3193 - official bird2 build on ipq806x doesn't start and has bus error

Hi all,

I am running bird2 on Netgear R7800 for OSPF routing but it doesn’t start. Following are error messages I got:

# bird -c /etc/bird.conf -d
Bus error

# logread
Sat Jun 20 12:24:09 2020 daemon.info bird: Started
Sat Jun 20 12:24:09 2020 kern.err kernel: [572809.062848] Alignment trap: not handling instruction f44c0a1f at [<0006bb88>]
Sat Jun 20 12:24:09 2020 kern.alert kernel: [572809.062907] Unhandled fault: alignment exception (0x801) at 0x017c9634
Sat Jun 20 12:24:09 2020 kern.alert kernel: [572809.069111] pgd = d7668000
Sat Jun 20 12:24:09 2020 kern.alert kernel: [572809.075597] [017c9634] *pgd=5c0c6835, *pte=5ad3475f, *ppte=5ad34c7f


# dmesg
[571421.877597] Alignment trap: not handling instruction f44c0a1f at [<0006bb88>]
[571421.877645] Unhandled fault: alignment exception (0x801) at 0x0111b624
[571421.883832] pgd = dc258000
[571421.890385] [0111b624] *pgd=5e63a835, *pte=5c72975f, *ppte=5c729c7f

Environment
- OpenWrt 19.07.3, r11063-85e04e9f46
- bird2 - 2.0.7-2
- target ipq806x
- model Netgear R7800

# /etc/bird.conf
log syslog all;
router id 192.168.1.1;                                                                                                                                        
protocol device {                                                                                                                                       
}                                                                                                                                                       
protocol bfd {                                                                                                                                          
}                                                                                                                                                       
protocol direct {                                                                                                                                      
        interface "br-lan";                                                                                                                             
        ipv4;                   # Connect to default IPv4 table                                                                                         
        ipv6;                   # ... and to default IPv6 table                                                                                         
}                                                                                                                                                       
                                                                                                                                                        
# The Kernel protocol is not a real routing protocol. Instead of communicating                                                                          
# with other routers in the network, it performs synchronization of BIRD                                                                                
# routing tables with the OS kernel. One instance per table.                                                                                            
protocol kernel {                                                                                                                                       
        scan time 10;                                                                                                                                   
        merge paths;                                                                                                                                    
        ipv4 {                  # Connect protocol to IPv4 table by channel                                                                             
#             table master4;    # Default IPv4 table is master4                                                                                         
#             import all;       # Import to table, default is import all                                                                                
              export all;       # Export to protocol. default is export none                                                                            
        };                                                                                                                                              
#       learn;                  # Learn alien routes from the kernel                                                                                    
#       kernel table 10;        # Kernel table to synchronize with (default: main)                                                                      
}                                                                                                                                                       
                                                                                                                                                        
# Another instance for IPv6, skipping default options                                                                                                   
protocol kernel {                                                                                                                                       
        scan time 10;                                                                                                                                   
        merge paths;                                                                                                                                    
        ipv6 { export all; };                                                                                                                           
}                                                                                                                                                       
                                                                                                                                                        
# OSPF example, both OSPFv2 and OSPFv3 are supported                                                                                                    
protocol ospf v2 ospf4 {                                                                                                                                
        ipv4 {                                                                                                                                          
        };                                                                                                                                              
        area 0 {                                                                                                                                        
                interface "br-lan" {bfd;};                                                                                                              
        };                                                                                                                                              
}

This issue can be reproduced with the latest OpenWrt release 19.07.3, but it has been there for a long time.
A custom build of bird2 package with OpenWRT SDK doesn’t have this issue.

I am not sure this is the right place to report this issue. Could anyone help with this?

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing