usrp2 work-in-progress
authoreb <eb@221aa14e-8319-0410-a670-987f0aec2ac5>
Tue, 23 Sep 2008 21:57:31 +0000 (21:57 +0000)
committereb <eb@221aa14e-8319-0410-a670-987f0aec2ac5>
Tue, 23 Sep 2008 21:57:31 +0000 (21:57 +0000)
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@9643 221aa14e-8319-0410-a670-987f0aec2ac5

gruel/src/lib/realtime.cc
usrp2/host/lib/usrp2_impl.cc

index d1907b3c14f450accbb7a9dc34894fb0b9b7ee52..7397cf3d34981f3212330a887e7804f7ea4c0a2e 100644 (file)
@@ -1,6 +1,6 @@
 /* -*- c++ -*- */
 /*
- * Copyright 2006,2007 Free Software Foundation, Inc.
+ * Copyright 2006,2007,2008 Free Software Foundation, Inc.
  * 
  * This file is part of GNU Radio
  * 
@@ -73,6 +73,9 @@ namespace gruel {
     int max_real_pri = sched_get_priority_max(policy);
     int pri = rescale_virtual_pri(p.priority, min_real_pri, max_real_pri);
 
+    // FIXME check hard and soft limits with getrlimit, and limit the value we ask for.
+    // fprintf(stderr, "pthread_setschedparam: policy = %d, pri = %d\n", policy, pri);
+
     struct sched_param param;
     memset (&param, 0, sizeof (param));
     param.sched_priority = pri;
@@ -106,6 +109,9 @@ namespace gruel {
     int max_real_pri = sched_get_priority_max(policy);
     int pri = rescale_virtual_pri(p.priority, min_real_pri, max_real_pri);
 
+    // FIXME check hard and soft limits with getrlimit, and limit the value we ask for.
+    // fprintf(stderr, "sched_setscheduler: policy = %d, pri = %d\n", policy, pri);
+
     int pid = 0;  // this process
     struct sched_param param;
     memset(&param, 0, sizeof(param));
index 68cf676c6bc0c311e6ae0b7799c5e7761e63fcdc..eb52242f8826724c433ebaa0b3567a578dde1cf0 100644 (file)
@@ -856,6 +856,10 @@ namespace usrp2 {
       iov[1].iov_base = const_cast<uint32_t *>(&items[n]);
       iov[1].iov_len = i * sizeof(uint32_t);
 
+      size_t total = iov[0].iov_len + iov[1].iov_len;
+      if (total < 64)
+       fprintf(stderr, "usrp2::tx_raw: FIXME: short packet: %zd items (%zd bytes)\n", i, total);
+
       if (d_eth_buf->tx_framev(iov, 2) != eth_buffer::EB_OK){
        return false;
       }