diff --git a/examples/limit.py b/examples/limit.py
index 0b23ca1de1eb67f2555d4e23fc993aa6189b8631..4984bb9427d822436fe5a65253551351ee6f8df5 100755
--- a/examples/limit.py
+++ b/examples/limit.py
@@ -8,15 +8,14 @@
 from mininet.link import TCIntf
 from mininet.node import CPULimitedHost
 from mininet.topolib import TreeTopo
-from mininet.util import custom
-from mininet.log import setLogLevel
+from mininet.util import custom, quietRun
+from mininet.log import setLogLevel, info
 
 
 def testLinkLimit( net, bw ):
     "Run bandwidth limit test"
-    print '*** Testing network %.2f Mbps bandwidth limit' % bw
-    net.iperf( )
-
+    info( '*** Testing network %.2f Mbps bandwidth limit\n' % bw )
+    net.iperf()
 
 def limit( bw=10, cpu=.1 ):
     """Example/test of link and CPU bandwidth limits
@@ -25,7 +24,13 @@ def limit( bw=10, cpu=.1 ):
     intf = custom( TCIntf, bw=bw )
     myTopo = TreeTopo( depth=1, fanout=2 )
     for sched in 'rt', 'cfs':
-        print '*** Testing with', sched, 'bandwidth limiting'
+        info( '*** Testing with', sched, 'bandwidth limiting\n' )
+        if sched == 'rt':
+            release = quietRun( 'uname -r' ).strip('\r\n')
+            output = quietRun( 'grep CONFIG_RT_GROUP_SCHED /boot/config-%s' % release )
+            if output == '# CONFIG_RT_GROUP_SCHED is not set\n':
+                info( '*** RT Scheduler is not enabled in your kernel. Skipping this test\n' )
+                continue
         host = custom( CPULimitedHost, sched=sched, cpu=cpu )
         net = Mininet( topo=myTopo, intf=intf, host=host )
         net.start()
diff --git a/mininet/node.py b/mininet/node.py
index aa8b33314bb147ecea6a5479571b70cbeaadcb91..ea9b8d04b93e07f85784e6fb910057a87b662d1e 100644
--- a/mininet/node.py
+++ b/mininet/node.py
@@ -617,6 +617,12 @@ def __init__( self, name, sched='cfs', **kwargs ):
         # still does better with larger period values.
         self.period_us = kwargs.get( 'period_us', 100000 )
         self.sched = sched
+        if self.sched == 'rt':
+            release = quietRun( 'uname -r' ).strip('\r\n')
+            output = quietRun( 'grep CONFIG_RT_GROUP_SCHED /boot/config-%s' % release )
+            if output == '# CONFIG_RT_GROUP_SCHED is not set\n':
+                error( '\n*** error: please enable RT_GROUP_SCHED in your kernel\n' )
+                exit( 1 )
         self.rtprio = 20
 
     def cgroupSet( self, param, value, resource='cpu' ):