osmo-trx and gpsdo

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Max msuraev at sysmocom.de
Mon Oct 17 16:13:14 UTC 2016


Here are some more details:

./Transceiver52M/osmo-trx -c 2 -l INFO -g

INFO 3041433344 18:06:51.9 UHDDevice.cpp:743:parse_dev_type: Using USRP1
type transmit window for B-Series Device B210
terminate called after throwing an instance of 'uhd::key_error'
  what():  LookupError: KeyError: update_clock_source: unknown source: gpsdo

Program received signal SIGABRT, Aborted.

#0  0xb7fdd428 in __kernel_vsyscall ()
#1  0xb7108687 in __GI_raise (sig=sig at entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
#2  0xb710bab3 in __GI_abort () at abort.c:89
#3  0xb7339405 in __gnu_cxx::__verbose_terminate_handler() () from
/usr/lib/i386-linux-gnu/libstdc++.so.6
#4  0xb7337063 in ?? () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#5  0xb733709f in std::terminate() () from
/usr/lib/i386-linux-gnu/libstdc++.so.6
#6  0xb7337306 in __cxa_throw () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#7  0xb7b3cdaf in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
#8  0xb7b5fb29 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
#9  0xb76edaa5 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
#10 0xb76eddb7 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
#11 0xb77d138a in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
#12 0xb77d1406 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
#13 0x0807f912 in uhd_device::open (this=0x81720e8, args="", ref=2,
swap_channels=false) at UHDDevice.cpp:848
#14 0x08052f8f in main (argc=6, argv=0xbffffc34) at osmo-trx.cpp:528

or full trace:

#0  0xb7fdd428 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7108687 in __GI_raise (sig=sig at entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
        resultvar = <optimized out>
        resultvar = <optimized out>
        pid = -1222094848
        selftid = 7509
#2  0xb710bab3 in __GI_abort () at abort.c:89
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x819e604,
sa_sigaction = 0x819e604}, sa_mask = {__val = {65, 3071582317,
              3072874848, 3087003648, 3086538904, 5, 3221221200,
3086926177, 3086539344, 3041440256, 1, 5, 0, 3072872448, 3072874848,
              3072878732, 3221221172, 3074215964, 3073382156,
3073321628, 135792864, 3072872448, 3072874848, 3071148324, 3072874848,
              3071545388, 3074215936, 3074215936, 135521124, 135915012,
135793824, 3086951616}}, sa_flags = 135792816,
          sa_restorer = 0xb710b970 <__GI_abort>}
        sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0xb7339405 in __gnu_cxx::__verbose_terminate_handler() () from
/usr/lib/i386-linux-gnu/libstdc++.so.6
No symbol table info available.
#4  0xb7337063 in ?? () from /usr/lib/i386-linux-gnu/libstdc++.so.6
No symbol table info available.
#5  0xb733709f in std::terminate() () from
/usr/lib/i386-linux-gnu/libstdc++.so.6
No symbol table info available.
#6  0xb7337306 in __cxa_throw () from /usr/lib/i386-linux-gnu/libstdc++.so.6
No symbol table info available.
#7  0xb7b3cdaf in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
No symbol table info available.
#8  0xb7b5fb29 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
No symbol table info available.
#9  0xb76edaa5 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
No symbol table info available.
#10 0xb76eddb7 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
No symbol table info available.
#11 0xb77d138a in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
No symbol table info available.
#12 0xb77d1406 in ?? () from /usr/lib/i386-linux-gnu/libuhd.so.003
No symbol table info available.
#13 0x0807f912 in uhd_device::open (this=0x81720e8, args="", ref=2,
swap_channels=false) at UHDDevice.cpp:848
        refstr = <optimized out>
        __FUNCTION__ = "open"
        _rx_rate = <optimized out>
        _tx_rate = <optimized out>
        addr = {<uhd::dict<std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, std::basic_string<char,
std::char_traits<char>, std::allocator<char> > >> = {_map = empty
std::list}, <No data fields>}
        dev_addrs = std::vector of length 1, capacity 1 = {
          {<uhd::dict<std::basic_string<char, std::char_traits<char>,
std::allocator<char> >, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > >> = {_map = std::list = {[0] = {first = "type",
second = "b200"}, [1] = {first = "name",
                  second = "MyB210"}, [2] = {first = "serial", second =
"30AC26A"}, [3] = {first = "product",
                  second = "B210"}}}, <No data fields>}}
        stream_args = {cpu_format = "", otw_format = "",
          args = {<uhd::dict<std::basic_string<char,
std::char_traits<char>, std::allocator<char> >, std::basic_string<char,
std::char_traits<char>, std::allocator<char> > >> = {_map = std::list =
{[0] = {
                  first = <error reading variable: Cannot access memory
at address 0xfffffff4>,
                  second = <error reading variable: Cannot access memory
at address 0xfffffff4>}, [1] = {
                  first = <error reading variable: Cannot access memory
at address 0xfffffff5>,
                  second =
"H{\367\267\020\a\030\b\330C\030\bXG\027\b\030\002\030\b\000ice", '\000'
<repeats 12 times>,
"\061\000\000\000/lib/i386-linux-gnu/libnss_files.so.2\000_minim\231",
'\000' <repeats 35 times>,
"\202\364\374\267\205\317c\t\000\000\000\000\000\000\000\000\272\364\374\267\020ii\r\000\000\000\000f\364\374\267\260\364\374\267\022ii\r\000\000\000\000f\364\374\267\202\364\374\267\205\317c\t\000\000\000\000f\364\374\267\246\364\374\267\021ii\r\000\000\000\000f\364",
<incomplete sequence \374\267>...}, [2] = {
                  first = "", second = ""}, [3] = {first = <error
reading variable: Cannot access memory at address 0x8b007bc4>,
                  second = <error reading variable: Cannot access memory
at address 0x8d042438>}<error reading variable: Cannot access memory at
address 0xec2ea7e8>...}}, <No data fields>}, channels = std::vector of
length 149430, capacity -33734559 = {3515007873,
            4135911432, 2206953844, 1216, 1853145221, 1352696715,
76087296, 2526079012, 881459199, 3902013220, 2332033028, 5300371,
            1002580224, 5310611, 3767765248, 2113929296, 143886598,
2332033105, 5309571, 32015104, 1361871675, 2206793728, 20740,
            2206795390, 20780, 4280562825, 319635, 2692975360,
2298478672, 2548573188, 2214592406, 1583027396, 881430723, 3767795492,
            2197815300, 1583027396, 827822275, 3330889471, 283935571,
535298187, 2181036619, 147906499, 1958774016, 607422734,
            3338948863, 6, 2311555328, 803742772, 2214592511,
4169732292, 3277807195, 46733, 2304049152, 2304137173, 3968029638,
            1256253484, 3280076794, 577696, 2215624837, 338, 2383401605,
394, 4202807345, 2147483391, 16682767, 881393664,
            3902013220, 2298478596, 1149838380, 2482964516, 1260,
4035561353, 136608827, 14320655, 2475360256, 1216, 2215629445, 218,
            1352696715, 76087296, 2506942500, 2872836095, 20764,
1358211977, 108920832, 1360833417, 4169728000, 136594475, 203703433,
            1356891019, 1418395648, 3246984228, 2300574145, 2299798604,
536461777, 405034121, 1352962955, 1284046848, 2341149732,
            20648, 405034027, 472140827, 337923129, 270812297, 8686863,
2089353216, 881394724, 3834904356, 2231369732, 264407488,
            38276, 605325568, 203707529, 82351103, 1418395648,
1143671844, 2198013988, 20704, 1359512379, 2206793728, 20704,
            2206795390, 20744, 1352696715, 1418264576, 76089380,
2501175332, 1418461183, 3498641444, 1529660547, 3277676382, 46733,
            2089353216, 881394724, 3834904356, 2197815300, 1583033540,
2378390879, 142540918, 2182074425, 4294967154, 203703435,
            4288071144, 4284803583, 3296985087, 1540393260, 3915210590,
4294964050, 2206961766, 20652, 2423570565, 2682841225,
            2315255702, 2298750076, 2482971700, 1252, 3263807621,
4285694991, 1055522815, 2382364671, 76087414, 4251510820,
            3224502271, 4294931433, 1465225471, 1405520214, 2334977155,
535322744, 2181036617, 147775427, 609519872, 2111256860,
            108560390, 822834432, 751076288, 1566531163, 1416335555,
2334923812, 65559616, 2315255806, 506053, 3984916480,
            1150017396, 3614120996, 608487212, 4, 33040640, 750808042,
2300843145, 2300060756, 3892847684, 4294562882, 405034123,
            3948703369, 2383384683, 178, 1116285577, 877038340,
405034121, 3088597641...}}
#14 0x08052f8f in main (argc=6, argv=0xbffffc34) at osmo-trx.cpp:528
        type = <optimized out>
        chans = <optimized out>
        ref = 2
        usrp = 0x81720e8
        radio = 0x0
        config = {log_level = "INFO", addr = "127.0.0.1", dev_args = "",
port = 5700, tx_sps = 4, rx_sps = 1, chans = 2, rtsc = 0,
          rach_delay = 0, extref = false, gpsref = true, filler =
Transceiver::FILLER_ZERO, diversity = false, mcbts = false,
          offset = 0, rssi_offset = 0, swap_channels = false, edge = false}
        __FUNCTION__ = "main"
        trx = 0x0
        iface = <optimized out>

Could this have something to do with uhd version
(UHD_003.010.000.000-release) I'm using? It seems like SIGABRT happens
somewhere deep in uhd intestines.

Or maybe it's some obvious misconfiguration which I've failed to notice
so far?


On 10/13/2016 01:43 PM, Max wrote:
> Hi.
>
> While trying to make osmo-trx work in multichannel configuration I've
> found following:
> - running "./Transceiver52M/osmo-trx -m -c 2 -l INFO" works but
> - running "./Transceiver52M/osmo-trx -m -c 2 -l INFO -g" gives following:
> linux; GNU C++ version 4.8.4; Boost_105400; UHD_003.010.000.000-release
>                                   
> opening configuration table from path :memory:
> Config Settings                   
>    Log Level............... INFO  
>    Device args.............       
>    TRX Base Port........... 5700  
>    TRX Address............. 127.0.0.1
>    Channels................ 2     
>    Tx Samples-per-Symbol... 4     
>    Rx Samples-per-Symbol... 4     
>    EDGE support............ Disabled
>    Reference............... GPS   
>    C0 Filler Table......... Disabled
>    Multi-Carrier........... Enabled
>    Diversity............... Disabled
>    Tuning offset........... 0     
>    RSSI to dBm offset...... 0     
>    Swap channels........... 0     
>                                   
> INFO 3032180480 13:36:38.4 UHDDevice.cpp:786:open: Using discovered UHD
> device type=b200,name=MyB210,serial=30AC26A,product=B210
> -- Detected Device: B210          
> -- Operating over USB 2.          
> -- Initialize CODEC control...    
> -- Initialize Radio control...    
> -- Performing register loopback test... pass
> -- Performing register loopback test... pass
> -- Performing CODEC loopback test... pass
> -- Performing CODEC loopback test... pass
> -- Setting master clock rate selection to 'automatic'.
> -- Asking for clock rate 16.000000 MHz...
> -- Actually got clock rate 16.000000 MHz.
> -- Performing timer loopback test... pass
> -- Performing timer loopback test... pass
> INFO 3032180480 13:36:41.6 UHDDevice.cpp:743:parse_dev_type: Using USRP1
> type transmit window for B-Series Device B210
> terminate called after throwing an instance of 'uhd::key_error'
>   what():  LookupError: KeyError: update_clock_source: unknown source: gpsdo
> Aborted (core dumped)             
>
> The tests were performed with usrp B210 and rather recent uhd (see
> above). Is this some know error/hw incompatibility?
>

-- 
Max Suraev <msuraev at sysmocom.de> http://www.sysmocom.de/
======================================================================= 
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93 
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B 
* Geschaeftsfuehrer / Managing Director: Harald Welte 




More information about the OpenBSC mailing list