Merge branch 'virtio' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux...
[pandora-kernel.git] / arch / powerpc / platforms / iseries / pci.c
index b841c9a..3fc2e64 100644 (file)
@@ -32,6 +32,7 @@
 #include <linux/module.h>
 #include <linux/pci.h>
 #include <linux/of.h>
+#include <linux/ratelimit.h>
 
 #include <asm/types.h>
 #include <asm/io.h>
@@ -584,14 +585,9 @@ static inline struct device_node *xlate_iomm_address(
 
        orig_addr = (unsigned long __force)addr;
        if ((orig_addr < BASE_IO_MEMORY) || (orig_addr >= max_io_memory)) {
-               static unsigned long last_jiffies;
-               static int num_printed;
+               static DEFINE_RATELIMIT_STATE(ratelimit, 60 * HZ, 10);
 
-               if (time_after(jiffies, last_jiffies + 60 * HZ)) {
-                       last_jiffies = jiffies;
-                       num_printed = 0;
-               }
-               if (num_printed++ < 10)
+               if (__ratelimit(&ratelimit))
                        printk(KERN_ERR
                                "iSeries_%s: invalid access at IO address %p\n",
                                func, addr);