Kludge Tracker: Gnuradio - v3.4.0-101-g7e2b45b

Parent Directory (gnuradio)

Kludge Summary of gnuradio/gcell

Total Kludges 24
Total Subdirs 10

All Directories within gnuradio/gcell

All Files within gnuradio/gcell

Kludge Snippets in gnuradio/gcell

gnuradio/gcell/apps/gen_script.py

Category FIXME
Committer Johnathan Corgan
Commit ID 2af86109a0645d5f014205f519f50da22cc7cda9
56            if len(args) != 0:
57                parser.print_help()
58                sys.exit(1)
59        
60            #FIXME to use git now
61            svn_rev = get_svn_rev()
62        
63            os.environ['TZ'] = 'PST8PDT'        # always pacific
64            time.tzset()
				

gnuradio/gcell/include/gcell/gc_jd_queue_data.h

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
33         * This is the main data structure shared between PPEs and SPEs.
34         * It is used to enqueue work for SPEs.  SPEs or PPEs may enqueue
35         * work.  SPE's dequeue from here.
36         *
37         * FIXME make it lock free ;)  For now, use a spin lock.
38         *
39         * (Fills a single cache line)
40         */
41        typedef struct gc_jd_queue
				

gnuradio/gcell/lib/general/spu/qa_memset.c

Category FIXME
Committer eb
Commit ID d5e5244a9ce8c5c3847c133c1107fba2af0e90c3
30        #define	MAX_OFFSET    32
31        #define	ALIGNMENT     16
32        #define	K	      0xA5
33        
34        // FIXME should be passed at gcell init time
35        //static const int TIMEBASE = 79800000; // ps3
36        static const int TIMEBASE = 26666666; // qs21
37        
38        typedef void* (*memset_fptr)(void *s, int val, size_t n);
				

gnuradio/gcell/lib/runtime/gc_jd_stack.c

Category FIXME
Committer eb
Commit ID 06e7a0313a09ee812061d855a47206ed303eac7f
23        #include <gcell/memory_barrier.h>
24        
25        /*
26         * begin extract from ppu_intrinics.h
27         * FIXME handle this a different way
28         */
29        
30        #if !defined(__PPU__) && !defined(__ppc__) && !defined(__ppc64__)
31            && !defined(__GNUC__)
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 1

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
63        
64        static const unsigned int DEFAULT_MAX_JOBS = 128;
65        static const unsigned int DEFAULT_MAX_CLIENT_THREADS = 64;
66        
67        // FIXME this really depends on the SPU code...
68        static const unsigned int MAX_TOTAL_INDIRECT_LENGTH = 16 * 1024;
69        
70        
71        static bool          s_key_initialized = false;
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 2

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
179        	// If we're gang scheduling we'll never get scheduled if we
180        	// ask for more than are available.
181        	throw std::out_of_range("gang_scheduling: not enough spes available");
182              }
183              else {	// FIXME clamp to usable.  problem on PS3 when overcommited
184        	fprintf(stderr, "gc_job_manager: clamping nspes to %d\n", nusable_spes);
185        	d_options.nspes = nusable_spes;
186              }
187            }
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 3

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
246        		   | SPE_CFG_SIGNOTIFY1_OR
247        		   | SPE_CFG_SIGNOTIFY2_OR);
248          
249          for (unsigned int i = 0; i < d_options.nspes; i++){
250            // FIXME affinity stuff goes here
251            d_worker[i].spe_ctx = spe_context_create(spe_flags, d_gang.get());;
252            if (d_worker[i].spe_ctx == 0){
253              perror("spe_context_create");
254              throw std::runtime_error("spe_context_create");
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 4

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
644        
645              if (mode == GC_WAIT_ALL && ndone == njobs)
646        	break;
647        
648              // FIXME what happens when somebody calls shutdown?
649        
650              cti->d_cond.wait(l);	// wait for event handler to wake us up
651            }
652        
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 5

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
736          pthread_attr_t attr;
737          pthread_attr_init(&attr);
738          pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
739        
740          // FIXME save sigprocmask
741          // FIXME set sigprocmask
742        
743          int r = pthread_create(thread, &attr, start_routine, arg);
744            
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 6

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
737          pthread_attr_init(&attr);
738          pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
739        
740          // FIXME save sigprocmask
741          // FIXME set sigprocmask
742        
743          int r = pthread_create(thread, &attr, start_routine, arg);
744            
745          // FIXME restore sigprocmask
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 7

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
741          // FIXME set sigprocmask
742        
743          int r = pthread_create(thread, &attr, start_routine, arg);
744            
745          // FIXME restore sigprocmask
746        
747          if (r != 0){
748            pthread_create_failure_msg(r, msg);
749            return false;
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 8

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
819          }
820        
821          if (!ok){
822            //
823            // FIXME Clean up the mess.  Need to terminate event handler and all workers.
824            //
825            // this should cause the workers to exit, unless they're seriously broken
826            send_all_spes(MK_MBOX_MSG(OP_EXIT, 0));
827        
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 9

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
953            if (cti != last_cti){	// new client?
954        
955              // yes.  signal old client, unlock old, lock new
956        
957              // FIXME we could distinguish between CT_WAIT_ALL & CT_WAIT_ANY
958        
959              if (last_cti->d_state == CT_WAIT_ANY || last_cti->d_state == CT_WAIT_ALL)
960        	last_cti->d_cond.notify_one();	// wake client thread up
961        
				

gnuradio/gcell/lib/runtime/gc_job_manager_impl.cc — 10

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
1135            int nevents = spe_event_wait(d_spe_event_handler.ptr,
1136        				 events, MAX_EVENTS, TIMEOUT);
1137            if (nevents < 0){
1138              perror("spe_wait_event");
1139              // FIXME bail?
1140            }
1141            for (int i = 0; i < nevents; i++){
1142              handle_event(&events[i]);
1143            }
				

gnuradio/gcell/lib/runtime/qa_jd_queue.cc — 1

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
64        
65          CPPUNIT_ASSERT(gc_jd_queue_dequeue(&queue) == 0);
66        }
67        
68        // FIXME multithreaded (running on PPE)
69        void
70        qa_jd_queue::t2()
71        {
72        }
				

gnuradio/gcell/lib/runtime/qa_jd_queue.cc — 2

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
70        qa_jd_queue::t2()
71        {
72        }
73        
74        // FIXME multithreaded (running on PPE & SPE)
75        void
76        qa_jd_queue::t3()
77        {
78        }
				

gnuradio/gcell/lib/runtime/qa_jd_stack.cc

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
59        
60          CPPUNIT_ASSERT(gc_jd_stack_pop(&stack) == 0);
61        }
62        
63        // FIXME multithreaded (running on PPE)
64        void
65        qa_jd_stack::t2()
66        {
67        }
				

gnuradio/gcell/lib/runtime/spu/gc_main.c

Category FIXME
Committer eb
Commit ID 28361a1bfc8f155a7b1367a234c9256b7b69da38
375        		   && dma_len <= (eaa->arg[i].get_size + offset + CACHE_LINE_SIZE - 1));
376        	  }
377        
378        	  // add to dma get list 
379        	  // FIXME (someday) the dma list is where the JS_BAD_EAH limitation comes from
380        
381        	  while (dma_len != 0){
382        	    int n = MIN(dma_len, MFC_MAX_DMA_SIZE);
383        	    dma_get_list[gli].size = n;
				

gnuradio/gcell/lib/wrapper/qa_gcp_fft_1d_r2.cc — 1

Category FIXME
Committer eb
Commit ID b9ba2711addfc9057c136b520afc9e121ec19be9
101        
102        void
103        qa_gcp_fft_1d_r2::t3()
104        {
105          // FIXME Test fwd and inv with windowing option
106        }
107        
108        void
109        qa_gcp_fft_1d_r2::t4()
				

gnuradio/gcell/lib/wrapper/qa_gcp_fft_1d_r2.cc — 2

Category FIXME
Committer eb
Commit ID b9ba2711addfc9057c136b520afc9e121ec19be9
107        
108        void
109        qa_gcp_fft_1d_r2::t4()
110        {
111          // FIXME Test fwd and inv with shift option
112        }
113        
114        static inline float
115        abs_diff(std::complex<float> x, std::complex<float> y)
				

gnuradio/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c — 1

Category FIXME
Committer eb
Commit ID b9ba2711addfc9057c136b520afc9e121ec19be9
48          int log2_fft_length = input->arg[0].u32;
49          int shift = input->arg[1].u32;	// non-zero if we should apply fftshift
50        
51          if (eaa->arg[3].get_size){	// apply window
52            // FIXME pointwise multiply in *= window
53            assert(0);
54          }
55        
56          fft_1d_r2(out, in, twiddle, log2_fft_length);
				

gnuradio/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c — 2

Category FIXME
Committer eb
Commit ID b9ba2711addfc9057c136b520afc9e121ec19be9
55        
56          fft_1d_r2(out, in, twiddle, log2_fft_length);
57        
58          if (shift){
59            // FIXME apply "fftshift" to output data in-place
60            assert(0);
61          }
62        }
63        
				

gnuradio/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c — 3

Category FIXME
Committer eb
Commit ID b9ba2711addfc9057c136b520afc9e121ec19be9
76          int log2_fft_length = input->arg[0].u32;
77          int shift = input->arg[1].u32;	// non-zero if we should apply fftshift
78        
79          if (eaa->arg[3].get_size){	// apply window
80            // FIXME pointwise multiply in *= window
81            assert(0);
82          }
83        
84          if (shift){
				

gnuradio/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c — 4

Category FIXME
Committer eb
Commit ID b9ba2711addfc9057c136b520afc9e121ec19be9
81            assert(0);
82          }
83        
84          if (shift){
85            // FIXME apply "fftshift" to input data in-place
86            assert(0);
87          }
88        
89          conjugate_vector(in, 1 << (log2_fft_length - 1));