netdev: Enforce a floor "linux-htb" min-rate
authorJustin Pettit <jpettit@nicira.com>
Fri, 8 Oct 2010 21:18:28 +0000 (14:18 -0700)
committerJustin Pettit <jpettit@nicira.com>
Fri, 8 Oct 2010 21:30:31 +0000 (14:30 -0700)
lib/netdev-linux.c
vswitchd/vswitch.xml

index dfea605d8763199c830a91361a07a95a6985ce0b..06f739cdc0f9ca39a0229776e7ad93ddb309aa58 100644 (file)
@@ -2415,13 +2415,13 @@ htb_parse_class_details__(struct netdev *netdev,
     const char *priority_s = shash_find_data(details, "priority");
     int mtu;
 
-    /* min-rate */
+    /* min-rate.  Don't allow a min-rate below 1500 bytes/s. */
     if (!min_rate_s) {
         /* min-rate is required. */
         return EINVAL;
     }
     hc->min_rate = strtoull(min_rate_s, NULL, 10) / 8;
-    hc->min_rate = MAX(hc->min_rate, 0);
+    hc->min_rate = MAX(hc->min_rate, 1500);
     hc->min_rate = MIN(hc->min_rate, htb->max_rate);
 
     /* max-rate */
index 8b2221b83450de9d5d6fa44d564c82f1ad90e867..bbe4af151e304a592453f32fdc3827f0ce8bc991 100644 (file)
         column="type"/> of <code>min-rate</code> are:</p>
       <dl>
         <dt><code>min-rate</code></dt>
-        <dd>Minimum guaranteed bandwidth, in bit/s.  Required.</dd>
+        <dd>Minimum guaranteed bandwidth, in bit/s.  Required.  The
+          floor value is 1500 bytes/s (12,000 bit/s).</dd>
       </dl>
       <p>The key-value pairs defined for <ref table="QoS"/> <ref table="QoS"
         column="type"/> of <code>linux-htb</code> are:</p>