Hi,

hm, you're right, the only way that can happen is if either the input or
the tap pointers are invalid; strange.

Since the line in question,
 465           out[i+d_out_idx] =
d_filters[d_filtnum]->filter(&in[count+d_out_idx]);
in pfb_clock_sync_ccf.cc isn't all that suspicious, let's harass GDB for
a moment.

1. since you're in stack frame #0 by default, can you see whether you
can `print number` from the gdb shell? It's possible that GCC optimized
that variable away, so try `print bPtr`, too.
2. From 1. we know whether this happens on the first loop iteration or a
subsequent one; that will show in which direction we'd look for bugs
3. `frame 1` brings us into the context of the fir_filter_ccf::filter
function. `print al` and `print d_ntaps`, please!
4. We're getting a bit fancy here with gdb, but whatever :) `print
d_aligned_taps[al]`

Hope this gives us a push forward!

Greetings,
Marcus


On 12/06/2016 07:24 PM, devin kelly wrote:
> I changed my volk_config like so
>
> volk_32fc_32f_dot_prod_32fc generic generic
>
> And I still get a segfault:
>
> gdb python core.8035
>
>  .....
>
> Program terminated with signal 11, Segmentation fault.
> #0  0x00007f116379277f in volk_32fc_32f_dot_prod_32fc_generic
> (result=0x56de260, input=0x7f1126cac680, taps=0x56ea860,
>     num_points=45) at
> /local_disk/spectrum_challenge_src/volk/kernels/volk/volk_32fc_32f_dot_prod_32fc.h:83
> 83          *realpt += ((*aPtr++) * (*bPtr));
> Missing separate debuginfos, use: debuginfo-install
> python-2.7.5-48.el7.x86_64
> (gdb) bt
> #0  0x00007f116379277f in volk_32fc_32f_dot_prod_32fc_generic
> (result=0x56de260, input=0x7f1126cac680, taps=0x56ea860,
> num_points=45) at
> /local_disk/spectrum_challenge_src/volk/kernels/volk/volk_32fc_32f_dot_prod_32fc.h:83
> #1  0x00007f114ffff74f in
> gr::filter::kernel::fir_filter_ccf::filter(std::complex<float> const*) ()
>     at
> /local_disk/spectrum_challenge/lib64/libgnuradio-filter-3.7.10.1.so.0.0.0
> #2  0x00007f1150356b41 in
> gr::digital::pfb_clock_sync_ccf_impl::general_work(int,
> std::vector<int, std::allocator<int> >&, std::vector<void const*,
> std::allocator<void const*> >&, std::vector<void*,
> std::allocator<void*> >&) ()
>     at
> /local_disk/spectrum_challenge/lib64/libgnuradio-digital-3.7.10.1.so.0.0.0
> #3  0x00007f1163d14d80 in gr::block_executor::run_one_iteration() ()
>     at
> /local_disk/spectrum_challenge/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
> #4  0x00007f1163d56090 in
> gr::tpb_thread_body::tpb_thread_body(boost::shared_ptr<gr::block>, int) ()
>     at
> /local_disk/spectrum_challenge/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
> #5  0x00007f1163d49791 in
> boost::detail::function::void_function_obj_invoker0<gr::thread::thread_body_wrapper<gr::tpb_container>,
> void>::invoke(boost::detail::function::function_buffer&) ()
>     at
> /local_disk/spectrum_challenge/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
> #6  0x00007f1163cfae60 in
> boost::detail::thread_data<boost::function0<void> >::run() ()
>     at
> /local_disk/spectrum_challenge/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
> #7  0x00007f11627f927a in thread_proxy () at
> /lib64/libboost_thread-mt.so.1.53.0
> #8  0x00007f117e4d8dc5 in start_thread () at /lib64/libpthread.so.0
> #9  0x00007f117dafe73d in clone () at /lib64/libc.so.6
> (gdb) f 0
> #0  0x00007f116379277f in volk_32fc_32f_dot_prod_32fc_generic
> (result=0x56de260, input=0x7f1126cac680, taps=0x56ea860,
> num_points=45) at
> /local_disk/spectrum_challenge_src/volk/kernels/volk/volk_32fc_32f_dot_prod_32fc.h:83
> 83          *realpt += ((*aPtr++) * (*bPtr));
> (gdb) info locals
> res = {0, 0}
> realpt = 0x7f114680f570
> imagpt = 0x7f114680f574
> aPtr = 0x7f1126cac684
> bPtr = 0x56ea860
> number = 0
> (gdb) print realpt
> $1 = (float *) 0x7f114680f570
> (gdb) print *realpt
> $2 = 0
> (gdb) print aPtr
> $3 = (const float *) 0x7f1126cac684
> (gdb) print *aPtr
> Cannot access memory at address 0x7f1126cac684
> (gdb) print bPtr
> $4 = (const float *) 0x56ea860
> (gdb) print *bPtr
> $5 = 0.000685208186
>
>
> The fault happens here:
>
> https://github.com/gnuradio/volk/blob/master/kernels/volk/volk_32fc_32f_dot_prod_32fc.h#L83
>
>
> Since aPtr is just
>
> const float* aPtr = (float*)input;
>
> Maybe the issue is with pfb_clock_sync_ccf_impl?  I'm not sure.
>
> Devin
>
> On Tue, Dec 6, 2016 at 1:06 PM, devin kelly <dwwke...@gmail.com
> <mailto:dwwke...@gmail.com>> wrote:
>
>     It's a bit of both.  The segfault usually happens on packet
>     between packets 2 and 3 (I send one packet per second on my
>     transmitter) but sometimes will happen a few packets later.  It
>     also always segfaults, I've gotten it to segfault about 20 times
>     or so.
>
>     On Tue, Dec 6, 2016 at 12:24 PM, West, Nathan
>     <n...@ostatemail.okstate.edu <mailto:n...@ostatemail.okstate.edu>>
>     wrote:
>
>         Honestly, my money would be on GCC 4.8.5 being less buggy than
>         6.2, but that's a separate topic.
>
>         You can configure VOLK to not use this protokernel and there's
>         some documentation on how to do it
>         here: http://gnuradio.org/doc/doxygen/volk_guide.html#volk_tuning
>         <http://gnuradio.org/doc/doxygen/volk_guide.html#volk_tuning>
>
>         This is fairly concerning though... are you able to
>         consistently trigger a segfault or is it a seemingly random
>         event that you can't trigger?
>
>         On Tue, Dec 6, 2016 at 11:48 AM, devin kelly
>         <dwwke...@gmail.com <mailto:dwwke...@gmail.com>> wrote:
>
>             OK, I tried a brand new GR/Volk install and still had the
>             same problem.  So no problem with re-linking Volk to GR. 
>             Could this be an issue with Volk on GCC 4.8.5?  The newest
>             GCC is 6.2 so 4.8.5 is pretty old, though the newest for
>             Red Hat 7.  Is there any way to reconfigure volk to not
>             use volk_32fc_32f_dot_prod_32fc_a_avx?
>
>             Here's volk-config-info:
>
>             $ volk-config-info --all --prefix --cc --cflags
>             --avail-machines --machine --alignment --malloc
>             /local_disk/spectrum_challenge
>             cc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11)
>             Copyright (C) 2015 Free Software Foundation, Inc.
>             This is free software see the source for copying
>             conditions.  There is NO
>             warranty not even for MERCHANTABILITY or FITNESS FOR A
>             PARTICULAR PURPOSE.
>             /usr/bin/cc:::  -Wall
>             /usr/bin/c++:::  -Wall
>             generic_orc:::GNU:::-g  -Wall 
>             sse2_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse -msse2
>             sse3_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse -msse2
>             -msse3
>             ssse3_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse -msse2
>             -msse3 -mssse3
>             sse4_a_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse
>             -msse2 -msse3 -msse4a -mpopcnt
>             sse4_1_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse
>             -msse2 -msse3 -mssse3 -msse4.1
>             sse4_2_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse
>             -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mpopcnt
>             avx_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse -msse2
>             -msse3 -mssse3 -msse4.1 -msse4.2 -mpopcnt -mavx
>             avx2_64_mmx_orc:::GNU:::-g  -Wall -m64 -mmmx -msse -msse2
>             -msse3 -mssse3 -msse4.1 -msse4.2 -mpopcnt -mavx -mfma -mavx2
>             
> generic_orc;sse2_64_mmx_orc;sse3_64_mmx_orc;ssse3_64_mmx_orc;sse4_a_64_mmx_orc;sse4_1_64_mmx_orc;sse4_2_64_mmx_orc;avx_64_mmx_orc;avx2_64_mmx_orc;
>             
> generic_orc;sse2_64_mmx_orc;sse3_64_mmx_orc;ssse3_64_mmx_orc;sse4_1_64_mmx_orc;sse4_2_64_mmx_orc;avx_64_mmx_orc;avx2_64_mmx_orc;
>             avx2_64_mmx_orc
>             Alignment in bytes: 32
>             Used malloc implementation: posix_memalign
>
>
>             Thanks again for any help,
>             Devin
>
>
>             On Fri, Dec 2, 2016 at 10:04 AM, Marcus Müller
>             <marcus.muel...@ettus.com
>             <mailto:marcus.muel...@ettus.com>> wrote:
>
>                 Oh, that's pretty interesting! Well, no
>                 misconfiguration should segfault, so I'm a bit stumped
>                 at the moment.
>
>
>                 On 12/01/2016 06:14 PM, devin kelly wrote:
>>                 Marcus,
>>
>>                 Thanks for taking the time.  It is possible I
>>                 re-installed a new version of VOLK.  I'll try a fresh
>>                 build and see what that gets me. 
>>
>>                 I also should have mentioned that the filter works OK
>>                 for a while then segfaults.  A couple of packets
>>                 always pass through the clock sync block I'm using
>>                 before I get the segfault.  Finally, the segfault
>>                 occurs in the polyphase clock sync block, do you
>>                 think I could have mis-configured the block in some
>>                 way that will get me this error?  I think the PF
>>                 clock sync block is pretty popular so if there's a
>>                 bug in that block that's causing this I'd be surprised.
>>
>>                 Devin
>>
>>                 On Thu, Dec 1, 2016 at 11:47 AM, Marcus Müller
>>                 <marcus.muel...@ettus.com
>>                 <mailto:marcus.muel...@ettus.com>> wrote:
>>
>>                     Hi Devin,
>>
>>                     I don't think it's a kernel problem – all your
>>                     calculations happen in userland, and the kernel
>>                     has not much to say with respect to the
>>                     instructions used.
>>
>>                     The most common reason for this kind of
>>                     misbehaviour is in fact a problem with how the
>>                     application (in this case, your GNU Radio
>>                     application's block) calls into the library
>>                     function (in this case the VOLK dot product).
>>
>>                     Is it possible that for some reason, GNU Radio
>>                     used a previous version of VOLK when you linked
>>                     it, and then the new version of VOLK was installed?
>>
>>                     Best regards,
>>
>>                     Marcus
>>
>>
>>                     On 12/01/2016 05:23 PM, devin kelly wrote:
>>>                     Hello,
>>>
>>>                     I'm having a problem with the above VOLK
>>>                     function segfaulting.  I don't think I'm passing
>>>                     any incorrect values to VOLK.  My problem could
>>>                     be that I'm on RHEL7 with (obviously) an older
>>>                     kernel:
>>>
>>>                     $ uname -a
>>>                     Linux 520842-mitll 3.10.0-327.10.1.el7.x86_64 #1
>>>                     SMP Sat Jan 23 04:54:55 EST 2016 x86_64 x86_64
>>>                     x86_64 GNU/Linux
>>>
>>>                     I'm on VOLK 1.3 and GR 3.7.10.1.
>>>
>>>                     it segfaults here:
>>>                     
>>> https://github.com/gnuradio/volk/blob/maint/kernels/volk/volk_32fc_32f_dot_prod_32fc.h#L119
>>>                     
>>> <https://github.com/gnuradio/volk/blob/maint/kernels/volk/volk_32fc_32f_dot_prod_32fc.h#L119>
>>>                     It looks like aPtr (0x7fea5c3014c0) is somehow
>>>                     not valid.  GR passes this pointer to VOLK so
>>>                     maybe it's a GR problem?
>>>
>>>                     I've copied the output of a GDB session and my
>>>                     CPU info below.
>>>
>>>                     Thanks for any help,
>>>                     Devin
>>>
>>>
>>>
>>>                     Program terminated with signal 11, Segmentation
>>>                     fault.
>>>                     #0  0x00007fea7b1bd8b7 in _mm256_load_ps
>>>                     (__P=0x7fea5c3014c0) at
>>>                     
>>> /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/avxintrin.h:835
>>>                     835       return *(__m256 *)__P;
>>>                     Missing separate debuginfos, use:
>>>                     debuginfo-install python-2.7.5-48.el7.x86_64
>>>                     (gdb) bt
>>>                     #0  0x00007fea7b1bd8b7 in
>>>                     volk_32fc_32f_dot_prod_32fc_a_avx
>>>                     (__P=0x7fea5c3014c0) at
>>>                     
>>> /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/avxintrin.h:835
>>>                     #1  0x00007fea7b1bd8b7 in
>>>                     volk_32fc_32f_dot_prod_32fc_a_avx
>>>                     (result=0x3665160, input=0x7fea5c3014c0,
>>>                     taps=0x3671a00, num_points=47) at
>>>                     
>>> /local_disk/gr_3.7.10.1_src/volk/kernels/volk/volk_32fc_32f_dot_prod_32fc.h:119
>>>                     #2  0x00007fea6661d88f in
>>>                     
>>> gr::filter::kernel::fir_filter_ccf::filter(std::complex<float>
>>>                     const*) () at
>>>                     
>>> /local_disk/gr_3.7.10.1/lib64/libgnuradio-filter-3.7.10.1.so
>>>                     <http://libgnuradio-filter-3.7.10.1.so>.0.0.0
>>>                     #3  0x00007fea66c01d01 in
>>>                     gr::digital::pfb_clock_sync_ccf_impl::general_work(int,
>>>                     std::vector<int, std::allocator<int> >&,
>>>                     std::vector<void const*, std::allocator<void
>>>                     const*> >&, std::vector<void*,
>>>                     std::allocator<void*> >&) ()
>>>                         at
>>>                     
>>> /local_disk/gr_3.7.10.1/lib64/libgnuradio-digital-3.7.10.1.so.0.0.0
>>>                     #4  0x00007fea7b73fe10 in
>>>                     gr::block_executor::run_one_iteration() () at
>>>                     
>>> /local_disk/gr_3.7.10.1/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
>>>                     #5  0x00007fea7b781120 in
>>>                     
>>> gr::tpb_thread_body::tpb_thread_body(boost::shared_ptr<gr::block>,
>>>                     int) () at
>>>                     
>>> /local_disk/gr_3.7.10.1/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
>>>                     #6  0x00007fea7b774821 in
>>>                     
>>> boost::detail::function::void_function_obj_invoker0<gr::thread::thread_body_wrapper<gr::tpb_container>,
>>>                     void>::invoke(boost::detail::function::function_buffer&)
>>>                     () at
>>>                     
>>> /local_disk/gr_3.7.10.1/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
>>>                     #7  0x00007fea7b725ef0 in
>>>                     boost::detail::thread_data<boost::function0<void>
>>>                     >::run() () at
>>>                     
>>> /local_disk/gr_3.7.10.1/lib64/libgnuradio-runtime-3.7.10.1.so.0.0.0
>>>                     #8  0x00007fea7a22427a in thread_proxy () at
>>>                     /lib64/libboost_thread-mt.so.1.53.0
>>>                     #9  0x00007fea960f3dc5 in start_thread () at
>>>                     /lib64/libpthread.so.0
>>>                     #10 0x00007fea9571973d in clone () at
>>>                     /lib64/libc.so.6
>>>                     (gdb) print __P
>>>                     $1 = (const float *) 0x7fea5c3014c0
>>>                     (gdb) print *__P
>>>                     Cannot access memory at address 0x7fea5c3014c0
>>>                     (gdb) print *(__m256 *)__P
>>>                     Cannot access memory at address 0x7fea5c3014c0
>>>                     (gdb) f 1
>>>                     #1  volk_32fc_32f_dot_prod_32fc_a_avx
>>>                     (result=0x3665160, input=0x7fea5c3014c0,
>>>                     taps=0x3671a00, num_points=47) at
>>>                     
>>> /local_disk/gr_3.7.10.1_src/volk/kernels/volk/volk_32fc_32f_dot_prod_32fc.h:119
>>>                     119         a0Val = _mm256_load_ps(aPtr);
>>>                     (gdb) info locals
>>>                     number = 0
>>>                     sixteenthPoints = 2
>>>                     res = {-1.30492652e+29, 0.0779444203}
>>>                     realpt = 0x7fea57ffde50
>>>                     imagpt = 0x7fea57ffde54
>>>                     aPtr = 0x7fea5c3014c0
>>>                     bPtr = 0x3671a00
>>>                     a0Val = {-0.656753004, -0.658071458,
>>>                     -0.760932922, -0.762304127, -0.869615495,
>>>                     -0.869560063, -0.887507021, -0.885902643}
>>>                     a1Val = {-0.744178772, -0.742508531,
>>>                     -0.437728733, -0.437706977, -0.0328192525,
>>>                     -0.0346645005, 0.376206338, 0.374125361}
>>>                     a2Val = {0.711783648, 0.711464763, 0.931477308,
>>>                     0.933318734, 1.01744843, 1.01973152,
>>>                     0.954917312, 0.955377996}
>>>                     a3Val = {0.734342158, 0.732418418, 0.374049634,
>>>                     0.371605545, -0.0585254543, -0.0588675328,
>>>                     -0.461206883, -0.458686352}
>>>                     b0Val = {0.0023738991, 0.0023738991,
>>>                     -0.00534401694, -0.00534401694, 0.00242348039,
>>>                     0.00242348039, 0.00727195293, 0.00727195293}
>>>                     b1Val = {-0.0158917159, -0.0158917159,
>>>                     0.00614725193, 0.00614725193, 0.0485430211,
>>>                     0.0485430211, -0.22138992, -0.22138992}
>>>                     b2Val = {0, 0, 0.22138992, 0.22138992,
>>>                     -0.0485430211, -0.0485430211, -0.00614725193,
>>>                     -0.00614725193}
>>>                     b3Val = {0.0158917159, 0.0158917159,
>>>                     -0.00727195293, -0.00727195293, -0.00242348039,
>>>                     -0.00242348039, 0.00534401694, 0.00534401694}
>>>                     x0Val = {0.0023738991, -0.00534401694,
>>>                     0.00242348039, 0.00727195293, -0.0158917159,
>>>                     0.00614725193, 0.0485430211, -0.22138992}
>>>                     x1Val = {0, 0.22138992, -0.0485430211,
>>>                     -0.00614725193, 0.0158917159, -0.00727195293,
>>>                     -0.00242348039, 0.00534401694}
>>>                     x0loVal = {0.0023738991, 0.0023738991,
>>>                     -0.00534401694, -0.00534401694, -0.0158917159,
>>>                     -0.0158917159, 0.00614725193, 0.00614725193}
>>>                     x0hiVal = {0.00242348039, 0.00242348039,
>>>                     0.00727195293, 0.00727195293, 0.0485430211,
>>>                     0.0485430211, -0.22138992, -0.22138992}
>>>                     x1loVal = {0, 0, 0.22138992, 0.22138992,
>>>                     0.0158917159, 0.0158917159, -0.00727195293,
>>>                     -0.00727195293}
>>>                     x1hiVal = {-0.0485430211, -0.0485430211,
>>>                     -0.00614725193, -0.00614725193, -0.00242348039,
>>>                     -0.00242348039, 0.00534401694, 0.00534401694}
>>>                     c0Val = {-0.00155906542, -0.00156219525,
>>>                     0.00406643841, 0.00407376606, -0.00210749614,
>>>                     -0.0021073618, -0.00645390945, -0.0064422423}
>>>                     c1Val = {0.0118262777, 0.011799735,
>>>                     -0.00269082887, -0.00269069499, -0.00159314566,
>>>                     -0.00168271956, -0.0832882896, -0.082827583}
>>>                     c2Val = {0, 0, 0.206219688, 0.206627354,
>>>                     -0.0493900217, -0.0495008491, -0.00587011734,
>>>                     -0.00587294903}
>>>                     c3Val = {0.0116699571, 0.0116393855,
>>>                     -0.00272007124, -0.00270229811, 0.000141835291,
>>>                     0.000142664314, -0.00246469746, -0.00245122775}
>>>                     dotProdVal0 = {0, 0, 0, 0, 0, 0, 0, 0}
>>>                     dotProdVal1 = {0, 0, 0, 0, 0, 0, 0, 0}
>>>                     dotProdVal2 = {0, 0, 0, 0, 0, 0, 0, 0}
>>>                     dotProdVal3 = {0, 0, 0, 0, 0, 0, 0, 0}
>>>                     dotProductVector = {0.0218032673, 0.0217418969,
>>>                     0.204074427, 0.204509094, -0.0519821495,
>>>                     -0.0521854945, -0.0983558819, -0.097870864}
>>>                     (gdb) print *aPtr
>>>                     Cannot access memory at address 0x7fea5c3014c0
>>>
>>>
>>>
>>>
>>>                     $ lscpu
>>>                     Architecture:          x86_64
>>>                     CPU op-mode(s):        32-bit, 64-bit
>>>                     Byte Order:            Little Endian
>>>                     CPU(s):                4
>>>                     On-line CPU(s) list:   0-3
>>>                     Thread(s) per core:    2
>>>                     Core(s) per socket:    2
>>>                     Socket(s):             1
>>>                     NUMA node(s):          1
>>>                     Vendor ID:             GenuineIntel
>>>                     CPU family:            6
>>>                     Model:                 61
>>>                     Model name:            Intel(R) Core(TM)
>>>                     i7-5600U CPU @ 2.60GHz
>>>                     Stepping:              4
>>>                     CPU MHz:               2038.664
>>>                     BogoMIPS:              5187.61
>>>                     Virtualization:        VT-x
>>>                     L1d cache:             32K
>>>                     L1i cache:             32K
>>>                     L2 cache:              256K
>>>                     L3 cache:              4096K
>>>                     NUMA node0 CPU(s):     0-3
>>>
>>>
>>>
>>>                     _______________________________________________
>>>                     Discuss-gnuradio mailing list
>>>                     Discuss-gnuradio@gnu.org
>>>                     <mailto:Discuss-gnuradio@gnu.org>
>>>                     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>                     
>>> <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio>
>>                     _______________________________________________
>>                     Discuss-gnuradio mailing list
>>                     Discuss-gnuradio@gnu.org
>>                     <mailto:Discuss-gnuradio@gnu.org>
>>                     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>                     <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio>
>>
>>
>>                 _______________________________________________
>>                 Discuss-gnuradio mailing list
>>                 Discuss-gnuradio@gnu.org
>>                 <mailto:Discuss-gnuradio@gnu.org>
>>                 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>                 <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio>
>                 _______________________________________________
>                 Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org
>                 <mailto:Discuss-gnuradio@gnu.org>
>                 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>                 <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio> 
>
>             _______________________________________________
>             Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org
>             <mailto:Discuss-gnuradio@gnu.org>
>             https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>             <https://lists.gnu.org/mailman/listinfo/discuss-gnuradio> 
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to