Hello Everyone for Spain
I have some problems in the startup or running Dectmon. I use the lasted drivers (today 20101008) packets on http://dect.osmocom.org. This is my runbook:
1) I compile dectmon with this:
#sh autogen.sh
#sh configure
#make
#make install
2)I getup the interface:
#dect-cluster-add --name cluster0 --emc 0x12f5 --fpn 0x0be9f --mode PP
#dect-cell-add --name cell0 --cluster cluster0 --flags monitor
#dect-transceiver-bind --transceiver trx0 --cell cell0
Added: 0: DECT Cluster cluster0:
Mode: PP
PARI: class A (residential) EMC: 12f5 FPN: 0be9f
Added: 0: DECT Cell cell0@cluster0: <monitor>
Bound: DECT Transceiver trx0@cell0:
RF-band: 00000
Events: busy: 0 late: 0
3)I can see in the log that the device is correct getup (some fragment):
[ 3709.832225] extended fixed part capabilities: fpc: 00022 hlc: 000000
[ 3710.099164] extended fixed part capabilities: fpc: 00020 hlc: 000000
[ 3710.914148] identities information: e: 0 class: 0 emc: 1106 fpn: 08f71 rpn: 0
[ 3711.382176] identities information: e: 0 class: 0 emc: 065f fpn: 1d9d8 rpn: 0
[ 3712.039334] identities information: e: 0 class: 0 emc: 0f73 fpn: 1066a rpn: 0
[ 3712.120434] identities information: e: 0 class: 0 emc: 0d24 fpn: 04834 rpn: 0
[ 3713.079207] identities information: e: 0 class: 0 emc: 1056 fpn: 158ee rpn: 0
[ 3713.345455] identities information: e: 0 class: 0 emc: 1133 fpn: 1e399 rpn: 0
[ 3713.467939] identities information: e: 0 class: 0 emc: 0de9 fpn: 1bc8c rpn: 0
[ 3713.550437] page: RFPI: 241a0 bearer description: bt: 5000000000 sn: 2 sp: 0 cn: 4
[ 3713.632170] identities information: e: 0 class: 0 emc: 065f fpn: 1d9d8 rpn: 0
[ 3713.877937] identities information: e: 0 class: 0 emc: 0de9 fpn: 1bc8c rpn: 0
[ 3714.736021] identities information: e: 0 class: 0 emc: 0726 fpn: 16bc9 rpn: 0
[ 3714.960698] page: RFPI: cf0b0 blind full slots: 2aa
[ 3715.329202] identities information: e: 0 class: 0 emc: 1056 fpn: 158ee rpn: 0
[ 3715.390439] static system information: nr: 0 sn: 2 cn: 4 pscn: 4
[ 3716.044455] identities information: e: 0 class: 0 emc: 12fd fpn: 1b11b rpn: 0
[ 3716.166016] identities information: e: 0 class: 0 emc: 0726 fpn: 16bc9 rpn: 0
[ 3716.576015] full/long page: extend: 0 length: 4000000000000000
[ 3716.986016] identities information: e: 0 class: 0 emc: 0726 fpn: 16bc9 rpn: 0
[ 3717.230442] page: RFPI: 241a0 bearer description: bt: 5000000000 sn: 2 sp: 0 cn: 4
[ 3717.392245] identities information: e: 0 class: 0 emc: 101b fpn: 13012 rpn: 0
[ 3717.432942] identities information: e: 0 class: 0 emc: 1133 fpn: 1e399 rpn: 0
[ 3717.757908] identities information: e: 0 class: 0 emc: 0de9 fpn: 1bc8c rpn: 0
[ 3718.023878] identities information: e: 0 class: 0 emc: 14d4 fpn: 18fc7 rpn: 0
[ 3718.779329] identities information: e: 0 class: 0 emc: 0f73 fpn: 1066a rpn: 0
[ 3719.086319] identities information: e: 0 class: 0 emc: 0747 fpn: 06960 rpn: 0
[ 3719.433269] identities information: e: 0 class: 0 emc: 0a6d fpn: 061c7 rpn: 0
[ 3719.494174] identities information: e: 0 class: 0 emc: 1106 fpn: 08f71 rpn: 0
[ 3719.657595] identities information: e: 0 class: 0 emc: 07ef fpn: 17322 rpn: 0
4) Launch Dectmon return a segment fault
root@DECT:/usr/src/dectmon# src/dectmon
*** glibc detected *** ./dectmon: free(): invalid next size (normal): 0x084d15c8 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6(+0x6b281)[0xb772d281]
/lib/i686/cmov/libc.so.6(+0x6cad8)[0xb772ead8]
/lib/i686/cmov/libc.so.6(cfree+0x6d)[0xb7731bbd]
/usr/local/lib/libnl.so.3(nlmsg_free+0x83)[0xb784a1d3]
/usr/local/lib/libnl-dect.so.3(nl_dect_cluster_query+0x50)[0xb78570b0]
/usr/lib/libdect.so.0(+0x1cc9d)[0xb7830c9d]
/usr/lib/libdect.so.0(dect_open_handle+0xbd)[0xb7818e5d]
./dectmon[0x804cbec]
/lib/i686/cmov/libc.so.6(__libc_start_main+0xe6)[0xb76d8c76]
./dectmon[0x8049021]
======= Memory map: ========
08048000-0804e000 r-xp 00000000 03:01 794829 /usr/src/dectmon/src/dectmon
0804e000-0804f000 rw-p 00006000 03:01 794829 /usr/src/dectmon/src/dectmon
084d1000-084f2000 rw-p 00000000 00:00 0 [heap]
b7500000-b7521000 rw-p 00000000 00:00 0
b7521000-b7600000 ---p 00000000 00:00 0
b7669000-b7686000 r-xp 00000000 03:01 2154538 /lib/libgcc_s.so.1
b7686000-b7687000 rw-p 0001c000 03:01 2154538 /lib/libgcc_s.so.1
b769b000-b769c000 rw-p 00000000 00:00 0
b769c000-b76c0000 r-xp 00000000 03:01 2171097 /lib/i686/cmov/libm-2.11.2.so
b76c0000-b76c1000 r--p 00023000 03:01 2171097 /lib/i686/cmov/libm-2.11.2.so
b76c1000-b76c2000 rw-p 00024000 03:01 2171097 /lib/i686/cmov/libm-2.11.2.so
b76c2000-b7802000 r-xp 00000000 03:01 2171331 /lib/i686/cmov/libc-2.11.2.so
b7802000-b7804000 r--p 0013f000 03:01 2171331 /lib/i686/cmov/libc-2.11.2.so
b7804000-b7805000 rw-p 00141000 03:01 2171331 /lib/i686/cmov/libc-2.11.2.so
b7805000-b7808000 rw-p 00000000 00:00 0
b7808000-b7813000 r-xp 00000000 03:01 2048785 /usr/lib/libev.so.3.0.0
b7813000-b7814000 rw-p 0000b000 03:01 2048785 /usr/lib/libev.so.3.0.0
b7814000-b783a000 r-xp 00000000 03:01 2048792 /usr/lib/libdect.so.0.0.1
b783a000-b783e000 rw-p 00025000 03:01 2048792 /usr/lib/libdect.so.0.0.1
b783e000-b783f000 rw-p 00000000 00:00 0
b783f000-b7851000 r-xp 00000000 03:01 762960 /usr/local/lib/libnl.so.3.0.0
b7851000-b7852000 rw-p 00012000 03:01 762960 /usr/local/lib/libnl.so.3.0.0
b7852000-b785b000 r-xp 00000000 03:01 762976 /usr/local/lib/libnl-dect.so.3.0.0
b785b000-b785c000 rw-p 00009000 03:01 762976 /usr/local/lib/libnl-dect.so.3.0.0
b7870000-b7872000 rw-p 00000000 00:00 0
b7872000-b7873000 r-xp 00000000 00:00 0 [vdso]
b7873000-b788e000 r-xp 00000000 03:01 2155169 /lib/ld-2.11.2.so
b788e000-b788f000 r--p 0001a000 03:01 2155169 /lib/ld-2.11.2.so
b788f000-b7890000 rw-p 0001b000 03:01 2155169 /lib/ld-2.11.2.so
bfcae000-bfccf000 rw-p 00000000 00:00 0 [stack]
5) I use Valgrid to see a problem, but valgrid fails, i think that is a problem with the malloc when it get memory for the stack:
root@DECT:/usr/src/dectmon# valgrind src/dectmon
==10731== Memcheck, a memory error detector
==10731== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==10731== Using Valgrind-3.6.0 and LibVEX; rerun with -h for copyright info
==10731== Command: src/dectmon
==10731==
==10731== Invalid write of size 2
==10731== at 0x408E568: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d8 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid write of size 4
==10731== at 0x408E57C: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7c0 is 0 bytes after a block of size 88 alloc'd
==10731== at 0x4023FE0: malloc (vg_replace_malloc.c:236)
==10731== by 0x407897D: dect_malloc (utils.c:21)
==10731== by 0x4078486: dect_fd_alloc (io.c:56)
==10731== by 0x4077BBF: dect_netlink_init (netlink.c:352)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731==
==10731== Invalid write of size 4
==10731== at 0x408E582: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7cc is 12 bytes after a block of size 88 alloc'd
==10731== at 0x4023FE0: malloc (vg_replace_malloc.c:236)
==10731== by 0x407897D: dect_malloc (utils.c:21)
==10731== by 0x4078486: dect_fd_alloc (io.c:56)
==10731== by 0x4077BBF: dect_netlink_init (netlink.c:352)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731==
==10731== Invalid write of size 4
==10731== at 0x408E589: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d0 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid write of size 4
==10731== at 0x408E590: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7c8 is 8 bytes after a block of size 88 alloc'd
==10731== at 0x4023FE0: malloc (vg_replace_malloc.c:236)
==10731== by 0x407897D: dect_malloc (utils.c:21)
==10731== by 0x4078486: dect_fd_alloc (io.c:56)
==10731== by 0x4077BBF: dect_netlink_init (netlink.c:352)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731==
==10731== Invalid write of size 4
==10731== at 0x408E593: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7c4 is 4 bytes after a block of size 88 alloc'd
==10731== at 0x4023FE0: malloc (vg_replace_malloc.c:236)
==10731== by 0x407897D: dect_malloc (utils.c:21)
==10731== by 0x4078486: dect_fd_alloc (io.c:56)
==10731== by 0x4077BBF: dect_netlink_init (netlink.c:352)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731==
==10731== Invalid write of size 4
==10731== at 0x408E596: event_set (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804940E: register_fd (event_ops.c:35)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d4 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid read of size 2
==10731== at 0x408EC70: event_add (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804941E: register_fd (event_ops.c:36)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d8 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid read of size 4
==10731== at 0x408ECD3: event_add (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804941E: register_fd (event_ops.c:36)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7c8 is 8 bytes after a block of size 88 alloc'd
==10731== at 0x4023FE0: malloc (vg_replace_malloc.c:236)
==10731== by 0x407897D: dect_malloc (utils.c:21)
==10731== by 0x4078486: dect_fd_alloc (io.c:56)
==10731== by 0x4077BBF: dect_netlink_init (netlink.c:352)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731==
==10731== Invalid read of size 4
==10731== at 0x408ECF0: event_add (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804941E: register_fd (event_ops.c:36)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d4 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid read of size 4
==10731== at 0x408ED2F: event_add (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804941E: register_fd (event_ops.c:36)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d4 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid write of size 4
==10731== at 0x408ED35: event_add (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804941E: register_fd (event_ops.c:36)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d4 is not stack'd, malloc'd or (recently) free'd
==10731==
==10731== Invalid write of size 4
==10731== at 0x408ECB5: event_add (in /usr/lib/libev.so.3.0.0)
==10731== by 0x804941E: register_fd (event_ops.c:36)
==10731== by 0x4078361: dect_fd_register (io.c:103)
==10731== by 0x4077C14: dect_netlink_init (netlink.c:358)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
==10731== Address 0x41ff7d4 is not stack'd, malloc'd or (recently) free'd
==10731==
--10731-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) - exiting
--10731-- si_code=1; Faulting address: 0x74616874; sp: 0x62bdea58
valgrind: the 'impossible' happened:
Killed by fatal signal
==10731== at 0x3809F551: myvprintf_str (m_debuglog.c:530)
==10731== by 0x3809FD32: vgPlain_debugLog_vprintf (m_debuglog.c:877)
==10731== by 0x3802A555: vprintf_WRK (m_libcprint.c:111)
==10731== by 0x3802A617: vgPlain_printf (m_libcprint.c:143)
==10731== by 0x380286C6: vgPlain_assert_fail (m_libcassert.c:261)
==10731== by 0x656C501F: ???
sched status:
running_tid=1
Thread 1: status = VgTs_Runnable
==10731== at 0x402331F: calloc (vg_replace_malloc.c:467)
==10731== by 0x4055394: nl_object_alloc (object.c:49)
==10731== by 0x404284F: nl_dect_cluster_alloc (cluster_obj.c:64)
==10731== by 0x4077C34: dect_netlink_init (netlink.c:148)
==10731== by 0x405FE5C: dect_open_handle (libdect.c:66)
==10731== by 0x804CBEB: main (main.c:108)
Thanks for help me