Hello,
I decided to connect my Nokia inSite 1900MHz E1 BTS that has been sitting
for a while. Shortly after I start OpenBSC, it crashes. I have attached my
configuration files as well as the result from gdb. I am using a Dahdi with
a TE122P set to E1 mode.
openbsc.cfg
!
! OpenBSC configuration saved from vty
! !
password foo
!
line vty
no login
!
e1_input
e1_line 0 driver dahdi
network
network country code 905
mobile network code 1
short name TNET
long name TEST
timer t3101 10
timer t3113 60
bts 0
type nokia_site
band GSM1900
cell_identity 1
location_area_code 1
base_station_id_code 63
training_sequence_code 7
oml e1 line 0 timeslot 1 sub-slot full
oml e1 tei 1
trx 0
arfcn 518
max_power_red 24
rsl e1 line 0 timeslot 2 sub-slot full
rsl e1 tei 1
timeslot 0
phys_chan_config CCCH+SDCCH4
e1 line 0 timeslot 6 sub-slot full
timeslot 1
phys_chan_config TCH/F
e1 line 0 timeslot 6 sub-slot 1
timeslot 2
phys_chan_config TCH/F
e1 line 0 timeslot 6 sub-slot 2
timeslot 3
phys_chan_config TCH/F
e1 line 0 timeslot 6 sub-slot 3
timeslot 4
phys_chan_config TCH/F
e1 line 0 timeslot 7 sub-slot 0
timeslot 5
phys_chan_config TCH/F
e1 line 0 timeslot 7 sub-slot 1
timeslot 6
phys_chan_config TCH/F
e1 line 0 timeslot 7 sub-slot 2
timeslot 7
phys_chan_config TCH/F
e1 line 0 timeslot 7 sub-slot 3
DAHDI system.conf
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Global data
#
# E1 Configuration (Jumper set on card)
#
#
span=1,0,0,ccs,hdb3,crc4
#
#
bchan=1-31
#
#
# Zone stuff
loadzone = us
defaultzone = us
Output from gdb:
root@openbsc-2:/opt/openbsc/openbsc/src# gdb ./osmo-nitb/osmo-nitb
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /opt/openbsc/openbsc/src/osmo-nitb/osmo-nitb...done.
(gdb) run
Starting program: /opt/openbsc/openbsc/src/osmo-nitb/osmo-nitb
[Thread debugging using libthread_db enabled]
Using host libthread_db library
"/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1".
<0018> input/lapd.c:212 LAPD Allocating SAP for SAPI=62 / TEI=1
<0018> input/lapd.c:223 k=1 N200=3 N201=260 T200=1.0 T203=10.0
<0018> input/lapd.c:485 LAPD DL-ESTABLISH request TEI=1 SAPI=62
DB: Database initialized.
DB: Database prepared.
<001d> sms_queue.c:220 Attempting to send 20 SMS
<0018> input/lapd.c:624 LAPD DL-ESTABLISH confirm TEI=1 SAPI=62
<0005> bts_nokia_site.c:58 bootstrapping OML for BTS 0
<0005> bts_nokia_site.c:1679 ABIS_OM_MDISC_FOM
<0005> bts_nokia_site.c:1507 (0x81) NOKIA_BTS_ACK
<0005> bts_nokia_site.c:1539 ACK = 1
<0018> input/lapd.c:513 LAPD DL-RELEASE request TEI=1 SAPI=62
<0018> input/lapd.c:628 LAPD DL-RELEASE confirm TEI=1 SAPI=62
Program received signal SIGSEGV, Segmentation fault.
0xb7f96f00 in lapd_send_i (line=line@entry=1609, lctx=<error reading
variable: Unhandled dwarf expression opcode 0xfa>,
lctx=<error reading variable: Unhandled dwarf expression opcode 0xfa>)
at lapd_core.c:1803
1803 if (!dl->tx_hist[h].msg) {
(gdb) bt full
#0 0xb7f96f00 in lapd_send_i (line=line@entry=1609, lctx=<error reading
variable: Unhandled dwarf expression opcode 0xfa>,
lctx=<error reading variable: Unhandled dwarf expression opcode 0xfa>)
at lapd_core.c:1803
dl = 0x8157510
k = 1 '\001'
msg = <optimized out>
length = <optimized out>
left = <optimized out>
rc = <optimized out>
nctx = {dl = 0x8157510, n201 = -1208330011, cr = 219 '\333', sapi =
200 '\310', tei = 245 '\365', lpd = 183 '\267',
format = 254 '\376', p_f = 255 '\377', n_send = 255
'\377', n_recv
= 255 '\377', s_u = 3 '\003',
length = -1208330011, more = 62 '>'}
#1 0xb7f99ac3 in lapd_rx_i (lctx=0xbffff9b4, msg=0x815d708) at
lapd_core.c:1609
dl = 0x8157510
ns = 0 '\000'
length = <optimized out>
rc = <optimized out>
#2 lapd_ph_data_ind (msg=msg@entry=0x815d708, lctx=lctx@entry=0xbffff9b4)
at lapd_core.c:1644
rc = <optimized out>
#3 0xb7f4aafa in lapd_receive (li=0x81333f8, msg=msg@entry=0x815d708,
error=error@entry=0xbffffa2c) at input/lapd.c:461
i = 4
lctx = {dl = 0x8157510, n201 = 260, cr = 0 '\000', sapi = 62
'>',
tei = 1 '\001', lpd = 0 '\000',
format = 1 '\001', p_f = 0 '\000', n_send = 0 '\000',
n_recv = 1
'\001', s_u = 0 '\000', length = 12,
more = 0 '\000'}
rc = 135476652
sap = <optimized out>
teip = 0x815d708
#4 0xb7f426e6 in e1inp_rx_ts_lapd (e1i_ts=e1i_ts@entry=0x8133ad4,
msg=msg@entry=0x815d708) at e1_input.c:556
sapi = 62
tei = 1
ret = 0
error = 0
#5 0xb7f460ee in handle_ts1_read (bfd=0x8134040) at input/dahdi.c:190
line = <optimized out>
msg = 0x815d708
ret = 18
ts_nr = <optimized out>
e1i_ts = 0x8133ad4
#6 dahdi_fd_cb (bfd=0x8134040, what=1) at input/dahdi.c:376
line = <optimized out>
ts_nr = <optimized out>
idx = <optimized out>
e1i_ts = <optimized out>
rc = 0
---Type <return> to continue, or q <return> to quit---
#7 0xb7f5a7e2 in osmo_select_main (polling=polling@entry=0) at select.c:158
flags = <optimized out>
ufd = 0x8134040
tmp = 0x81345c8
readset = {__fds_bits = {0 <repeats 32 times>}}
writeset = {__fds_bits = {0 <repeats 32 times>}}
exceptset = {__fds_bits = {0 <repeats 32 times>}}
work = 1
rc = <optimized out>
no_time = {tv_sec = 0, tv_usec = 0}
#8 0x0804d481 in main (argc=1, argv=0xbffffd84) at bsc_hack.c:346
rc = <optimized out>
(gdb) list
1798 }
1799
1800 h = do_mod(dl->v_send, dl->range_hist);
1801
1802 /* if we have no tx_hist yet, we create it */
1803 if (!dl->tx_hist[h].msg) {
1804 /* Get next message into send-buffer, if any */
1805 if (!dl->send_buffer) {
1806 next_message:
1807 dl->send_out = 0;
(gdb)
Regards,
Caleb