Re: [PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-24 Thread David Riley
On Fri, Nov 21, 2014 at 11:44 AM, John Stultz  wrote:
> Kees requested that this test module be renamed for consistency sake,
> so this patch renames the udelay_test.c file (recently added to
> tip/timers/core for 3.17) to test_udelay.c
>
> Cc: Kees Cook 
> Cc: Greg KH 
> Cc: Stephen Rothwell 
> Cc: Thomas Gleixner 
> Cc: Ingo Molnar 
> Cc: Linux-Next 
> Cc: David Riley 
> Signed-off-by: John Stultz 

Reviewed-by: David Riley 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-24 Thread David Riley
On Fri, Nov 21, 2014 at 11:44 AM, John Stultz john.stu...@linaro.org wrote:
 Kees requested that this test module be renamed for consistency sake,
 so this patch renames the udelay_test.c file (recently added to
 tip/timers/core for 3.17) to test_udelay.c

 Cc: Kees Cook keesc...@chromium.org
 Cc: Greg KH g...@kroah.com
 Cc: Stephen Rothwell s...@canb.auug.org.au
 Cc: Thomas Gleixner t...@linutronix.de
 Cc: Ingo Molnar mi...@elte.hu
 Cc: Linux-Next linux-n...@vger.kernel.org
 Cc: David Riley davidri...@chromium.org
 Signed-off-by: John Stultz john.stu...@linaro.org

Reviewed-by: David Riley davidri...@chromium.org
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-21 Thread Greg KH
On Fri, Nov 21, 2014 at 03:30:51PM -0800, Kees Cook wrote:
> On Fri, Nov 21, 2014 at 11:44 AM, John Stultz  wrote:
> > Kees requested that this test module be renamed for consistency sake,
> > so this patch renames the udelay_test.c file (recently added to
> > tip/timers/core for 3.17) to test_udelay.c
> >
> > Cc: Kees Cook 
> > Cc: Greg KH 
> > Cc: Stephen Rothwell 
> > Cc: Thomas Gleixner 
> > Cc: Ingo Molnar 
> > Cc: Linux-Next 
> > Cc: David Riley 
> > Signed-off-by: John Stultz 
> 
> Reviewed-by: Kees Cook 


Acked-by: Greg Kroah-Hartman 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-21 Thread Kees Cook
On Fri, Nov 21, 2014 at 11:44 AM, John Stultz  wrote:
> Kees requested that this test module be renamed for consistency sake,
> so this patch renames the udelay_test.c file (recently added to
> tip/timers/core for 3.17) to test_udelay.c
>
> Cc: Kees Cook 
> Cc: Greg KH 
> Cc: Stephen Rothwell 
> Cc: Thomas Gleixner 
> Cc: Ingo Molnar 
> Cc: Linux-Next 
> Cc: David Riley 
> Signed-off-by: John Stultz 

Reviewed-by: Kees Cook 

Yes please! :)

-Kees

> ---
>  kernel/time/Makefile  |   2 +-
>  kernel/time/test_udelay.c | 168 
> ++
>  kernel/time/udelay_test.c | 168 
> --
>  3 files changed, 169 insertions(+), 169 deletions(-)
>  create mode 100644 kernel/time/test_udelay.c
>  delete mode 100644 kernel/time/udelay_test.c
>
> diff --git a/kernel/time/Makefile b/kernel/time/Makefile
> index 7347426..f622cf2 100644
> --- a/kernel/time/Makefile
> +++ b/kernel/time/Makefile
> @@ -13,7 +13,7 @@ obj-$(CONFIG_TICK_ONESHOT)+= 
> tick-oneshot.o
>  obj-$(CONFIG_TICK_ONESHOT) += tick-sched.o
>  obj-$(CONFIG_TIMER_STATS)  += timer_stats.o
>  obj-$(CONFIG_DEBUG_FS) += timekeeping_debug.o
> -obj-$(CONFIG_TEST_UDELAY)  += udelay_test.o
> +obj-$(CONFIG_TEST_UDELAY)  += test_udelay.o
>
>  $(obj)/time.o: $(obj)/timeconst.h
>
> diff --git a/kernel/time/test_udelay.c b/kernel/time/test_udelay.c
> new file mode 100644
> index 000..e622ba3
> --- /dev/null
> +++ b/kernel/time/test_udelay.c
> @@ -0,0 +1,168 @@
> +/*
> + * udelay() test kernel module
> + *
> + * Test is executed by writing and reading to /sys/kernel/debug/udelay_test
> + * Tests are configured by writing: USECS ITERATIONS
> + * Tests are executed by reading from the same file.
> + * Specifying usecs of 0 or negative values will run multiples tests.
> + *
> + * Copyright (C) 2014 Google, Inc.
> + *
> + * This software is licensed under the terms of the GNU General Public
> + * License version 2, as published by the Free Software Foundation, and
> + * may be copied, distributed, and modified under those terms.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> + * GNU General Public License for more details.
> + */
> +
> +#include 
> +#include 
> +#include 
> +#include 
> +#include 
> +
> +#define DEFAULT_ITERATIONS 100
> +
> +#define DEBUGFS_FILENAME "udelay_test"
> +
> +static DEFINE_MUTEX(udelay_test_lock);
> +static struct dentry *udelay_test_debugfs_file;
> +static int udelay_test_usecs;
> +static int udelay_test_iterations = DEFAULT_ITERATIONS;
> +
> +static int udelay_test_single(struct seq_file *s, int usecs, uint32_t iters)
> +{
> +   int min = 0, max = 0, fail_count = 0;
> +   uint64_t sum = 0;
> +   uint64_t avg;
> +   int i;
> +   /* Allow udelay to be up to 0.5% fast */
> +   int allowed_error_ns = usecs * 5;
> +
> +   for (i = 0; i < iters; ++i) {
> +   struct timespec ts1, ts2;
> +   int time_passed;
> +
> +   ktime_get_ts();
> +   udelay(usecs);
> +   ktime_get_ts();
> +   time_passed = timespec_to_ns() - timespec_to_ns();
> +
> +   if (i == 0 || time_passed < min)
> +   min = time_passed;
> +   if (i == 0 || time_passed > max)
> +   max = time_passed;
> +   if ((time_passed + allowed_error_ns) / 1000 < usecs)
> +   ++fail_count;
> +   WARN_ON(time_passed < 0);
> +   sum += time_passed;
> +   }
> +
> +   avg = sum;
> +   do_div(avg, iters);
> +   seq_printf(s, "%d usecs x %d: exp=%d allowed=%d min=%d avg=%lld 
> max=%d",
> +   usecs, iters, usecs * 1000,
> +   (usecs * 1000) - allowed_error_ns, min, avg, max);
> +   if (fail_count)
> +   seq_printf(s, " FAIL=%d", fail_count);
> +   seq_puts(s, "\n");
> +
> +   return 0;
> +}
> +
> +static int udelay_test_show(struct seq_file *s, void *v)
> +{
> +   int usecs;
> +   int iters;
> +   int ret = 0;
> +
> +   mutex_lock(_test_lock);
> +   usecs = udelay_test_usecs;
> +   iters = udelay_test_iterations;
> +   mutex_unlock(_test_lock);
> +
> +   if (usecs > 0 && iters > 0) {
> +   return udelay_test_single(s, usecs, iters);
> +   } else if (usecs == 0) {
> +   struct timespec ts;
> +
> +   ktime_get_ts();
> +   seq_printf(s, "udelay() test (lpj=%ld kt=%ld.%09ld)\n",
> +   loops_per_jiffy, ts.tv_sec, ts.tv_nsec);
> +   seq_puts(s, "usage:\n");
> +   seq_puts(s, "echo USECS [ITERS] > " DEBUGFS_FILENAME "\n");

[PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-21 Thread John Stultz
Kees requested that this test module be renamed for consistency sake,
so this patch renames the udelay_test.c file (recently added to
tip/timers/core for 3.17) to test_udelay.c

Cc: Kees Cook 
Cc: Greg KH 
Cc: Stephen Rothwell 
Cc: Thomas Gleixner 
Cc: Ingo Molnar 
Cc: Linux-Next 
Cc: David Riley 
Signed-off-by: John Stultz 
---
 kernel/time/Makefile  |   2 +-
 kernel/time/test_udelay.c | 168 ++
 kernel/time/udelay_test.c | 168 --
 3 files changed, 169 insertions(+), 169 deletions(-)
 create mode 100644 kernel/time/test_udelay.c
 delete mode 100644 kernel/time/udelay_test.c

diff --git a/kernel/time/Makefile b/kernel/time/Makefile
index 7347426..f622cf2 100644
--- a/kernel/time/Makefile
+++ b/kernel/time/Makefile
@@ -13,7 +13,7 @@ obj-$(CONFIG_TICK_ONESHOT)+= 
tick-oneshot.o
 obj-$(CONFIG_TICK_ONESHOT) += tick-sched.o
 obj-$(CONFIG_TIMER_STATS)  += timer_stats.o
 obj-$(CONFIG_DEBUG_FS) += timekeeping_debug.o
-obj-$(CONFIG_TEST_UDELAY)  += udelay_test.o
+obj-$(CONFIG_TEST_UDELAY)  += test_udelay.o
 
 $(obj)/time.o: $(obj)/timeconst.h
 
diff --git a/kernel/time/test_udelay.c b/kernel/time/test_udelay.c
new file mode 100644
index 000..e622ba3
--- /dev/null
+++ b/kernel/time/test_udelay.c
@@ -0,0 +1,168 @@
+/*
+ * udelay() test kernel module
+ *
+ * Test is executed by writing and reading to /sys/kernel/debug/udelay_test
+ * Tests are configured by writing: USECS ITERATIONS
+ * Tests are executed by reading from the same file.
+ * Specifying usecs of 0 or negative values will run multiples tests.
+ *
+ * Copyright (C) 2014 Google, Inc.
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#define DEFAULT_ITERATIONS 100
+
+#define DEBUGFS_FILENAME "udelay_test"
+
+static DEFINE_MUTEX(udelay_test_lock);
+static struct dentry *udelay_test_debugfs_file;
+static int udelay_test_usecs;
+static int udelay_test_iterations = DEFAULT_ITERATIONS;
+
+static int udelay_test_single(struct seq_file *s, int usecs, uint32_t iters)
+{
+   int min = 0, max = 0, fail_count = 0;
+   uint64_t sum = 0;
+   uint64_t avg;
+   int i;
+   /* Allow udelay to be up to 0.5% fast */
+   int allowed_error_ns = usecs * 5;
+
+   for (i = 0; i < iters; ++i) {
+   struct timespec ts1, ts2;
+   int time_passed;
+
+   ktime_get_ts();
+   udelay(usecs);
+   ktime_get_ts();
+   time_passed = timespec_to_ns() - timespec_to_ns();
+
+   if (i == 0 || time_passed < min)
+   min = time_passed;
+   if (i == 0 || time_passed > max)
+   max = time_passed;
+   if ((time_passed + allowed_error_ns) / 1000 < usecs)
+   ++fail_count;
+   WARN_ON(time_passed < 0);
+   sum += time_passed;
+   }
+
+   avg = sum;
+   do_div(avg, iters);
+   seq_printf(s, "%d usecs x %d: exp=%d allowed=%d min=%d avg=%lld max=%d",
+   usecs, iters, usecs * 1000,
+   (usecs * 1000) - allowed_error_ns, min, avg, max);
+   if (fail_count)
+   seq_printf(s, " FAIL=%d", fail_count);
+   seq_puts(s, "\n");
+
+   return 0;
+}
+
+static int udelay_test_show(struct seq_file *s, void *v)
+{
+   int usecs;
+   int iters;
+   int ret = 0;
+
+   mutex_lock(_test_lock);
+   usecs = udelay_test_usecs;
+   iters = udelay_test_iterations;
+   mutex_unlock(_test_lock);
+
+   if (usecs > 0 && iters > 0) {
+   return udelay_test_single(s, usecs, iters);
+   } else if (usecs == 0) {
+   struct timespec ts;
+
+   ktime_get_ts();
+   seq_printf(s, "udelay() test (lpj=%ld kt=%ld.%09ld)\n",
+   loops_per_jiffy, ts.tv_sec, ts.tv_nsec);
+   seq_puts(s, "usage:\n");
+   seq_puts(s, "echo USECS [ITERS] > " DEBUGFS_FILENAME "\n");
+   seq_puts(s, "cat " DEBUGFS_FILENAME "\n");
+   }
+
+   return ret;
+}
+
+static int udelay_test_open(struct inode *inode, struct file *file)
+{
+   return single_open(file, udelay_test_show, inode->i_private);
+}
+
+static ssize_t udelay_test_write(struct file *file, const char __user *buf,
+   size_t count, loff_t *pos)
+{
+   

[PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-21 Thread John Stultz
Kees requested that this test module be renamed for consistency sake,
so this patch renames the udelay_test.c file (recently added to
tip/timers/core for 3.17) to test_udelay.c

Cc: Kees Cook keesc...@chromium.org
Cc: Greg KH g...@kroah.com
Cc: Stephen Rothwell s...@canb.auug.org.au
Cc: Thomas Gleixner t...@linutronix.de
Cc: Ingo Molnar mi...@elte.hu
Cc: Linux-Next linux-n...@vger.kernel.org
Cc: David Riley davidri...@chromium.org
Signed-off-by: John Stultz john.stu...@linaro.org
---
 kernel/time/Makefile  |   2 +-
 kernel/time/test_udelay.c | 168 ++
 kernel/time/udelay_test.c | 168 --
 3 files changed, 169 insertions(+), 169 deletions(-)
 create mode 100644 kernel/time/test_udelay.c
 delete mode 100644 kernel/time/udelay_test.c

diff --git a/kernel/time/Makefile b/kernel/time/Makefile
index 7347426..f622cf2 100644
--- a/kernel/time/Makefile
+++ b/kernel/time/Makefile
@@ -13,7 +13,7 @@ obj-$(CONFIG_TICK_ONESHOT)+= 
tick-oneshot.o
 obj-$(CONFIG_TICK_ONESHOT) += tick-sched.o
 obj-$(CONFIG_TIMER_STATS)  += timer_stats.o
 obj-$(CONFIG_DEBUG_FS) += timekeeping_debug.o
-obj-$(CONFIG_TEST_UDELAY)  += udelay_test.o
+obj-$(CONFIG_TEST_UDELAY)  += test_udelay.o
 
 $(obj)/time.o: $(obj)/timeconst.h
 
diff --git a/kernel/time/test_udelay.c b/kernel/time/test_udelay.c
new file mode 100644
index 000..e622ba3
--- /dev/null
+++ b/kernel/time/test_udelay.c
@@ -0,0 +1,168 @@
+/*
+ * udelay() test kernel module
+ *
+ * Test is executed by writing and reading to /sys/kernel/debug/udelay_test
+ * Tests are configured by writing: USECS ITERATIONS
+ * Tests are executed by reading from the same file.
+ * Specifying usecs of 0 or negative values will run multiples tests.
+ *
+ * Copyright (C) 2014 Google, Inc.
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#include linux/debugfs.h
+#include linux/delay.h
+#include linux/ktime.h
+#include linux/module.h
+#include linux/uaccess.h
+
+#define DEFAULT_ITERATIONS 100
+
+#define DEBUGFS_FILENAME udelay_test
+
+static DEFINE_MUTEX(udelay_test_lock);
+static struct dentry *udelay_test_debugfs_file;
+static int udelay_test_usecs;
+static int udelay_test_iterations = DEFAULT_ITERATIONS;
+
+static int udelay_test_single(struct seq_file *s, int usecs, uint32_t iters)
+{
+   int min = 0, max = 0, fail_count = 0;
+   uint64_t sum = 0;
+   uint64_t avg;
+   int i;
+   /* Allow udelay to be up to 0.5% fast */
+   int allowed_error_ns = usecs * 5;
+
+   for (i = 0; i  iters; ++i) {
+   struct timespec ts1, ts2;
+   int time_passed;
+
+   ktime_get_ts(ts1);
+   udelay(usecs);
+   ktime_get_ts(ts2);
+   time_passed = timespec_to_ns(ts2) - timespec_to_ns(ts1);
+
+   if (i == 0 || time_passed  min)
+   min = time_passed;
+   if (i == 0 || time_passed  max)
+   max = time_passed;
+   if ((time_passed + allowed_error_ns) / 1000  usecs)
+   ++fail_count;
+   WARN_ON(time_passed  0);
+   sum += time_passed;
+   }
+
+   avg = sum;
+   do_div(avg, iters);
+   seq_printf(s, %d usecs x %d: exp=%d allowed=%d min=%d avg=%lld max=%d,
+   usecs, iters, usecs * 1000,
+   (usecs * 1000) - allowed_error_ns, min, avg, max);
+   if (fail_count)
+   seq_printf(s,  FAIL=%d, fail_count);
+   seq_puts(s, \n);
+
+   return 0;
+}
+
+static int udelay_test_show(struct seq_file *s, void *v)
+{
+   int usecs;
+   int iters;
+   int ret = 0;
+
+   mutex_lock(udelay_test_lock);
+   usecs = udelay_test_usecs;
+   iters = udelay_test_iterations;
+   mutex_unlock(udelay_test_lock);
+
+   if (usecs  0  iters  0) {
+   return udelay_test_single(s, usecs, iters);
+   } else if (usecs == 0) {
+   struct timespec ts;
+
+   ktime_get_ts(ts);
+   seq_printf(s, udelay() test (lpj=%ld kt=%ld.%09ld)\n,
+   loops_per_jiffy, ts.tv_sec, ts.tv_nsec);
+   seq_puts(s, usage:\n);
+   seq_puts(s, echo USECS [ITERS]   DEBUGFS_FILENAME \n);
+   seq_puts(s, cat  DEBUGFS_FILENAME \n);
+   }
+
+   return ret;
+}
+
+static int udelay_test_open(struct inode *inode, struct 

Re: [PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-21 Thread Kees Cook
On Fri, Nov 21, 2014 at 11:44 AM, John Stultz john.stu...@linaro.org wrote:
 Kees requested that this test module be renamed for consistency sake,
 so this patch renames the udelay_test.c file (recently added to
 tip/timers/core for 3.17) to test_udelay.c

 Cc: Kees Cook keesc...@chromium.org
 Cc: Greg KH g...@kroah.com
 Cc: Stephen Rothwell s...@canb.auug.org.au
 Cc: Thomas Gleixner t...@linutronix.de
 Cc: Ingo Molnar mi...@elte.hu
 Cc: Linux-Next linux-n...@vger.kernel.org
 Cc: David Riley davidri...@chromium.org
 Signed-off-by: John Stultz john.stu...@linaro.org

Reviewed-by: Kees Cook keesc...@chromium.org

Yes please! :)

-Kees

 ---
  kernel/time/Makefile  |   2 +-
  kernel/time/test_udelay.c | 168 
 ++
  kernel/time/udelay_test.c | 168 
 --
  3 files changed, 169 insertions(+), 169 deletions(-)
  create mode 100644 kernel/time/test_udelay.c
  delete mode 100644 kernel/time/udelay_test.c

 diff --git a/kernel/time/Makefile b/kernel/time/Makefile
 index 7347426..f622cf2 100644
 --- a/kernel/time/Makefile
 +++ b/kernel/time/Makefile
 @@ -13,7 +13,7 @@ obj-$(CONFIG_TICK_ONESHOT)+= 
 tick-oneshot.o
  obj-$(CONFIG_TICK_ONESHOT) += tick-sched.o
  obj-$(CONFIG_TIMER_STATS)  += timer_stats.o
  obj-$(CONFIG_DEBUG_FS) += timekeeping_debug.o
 -obj-$(CONFIG_TEST_UDELAY)  += udelay_test.o
 +obj-$(CONFIG_TEST_UDELAY)  += test_udelay.o

  $(obj)/time.o: $(obj)/timeconst.h

 diff --git a/kernel/time/test_udelay.c b/kernel/time/test_udelay.c
 new file mode 100644
 index 000..e622ba3
 --- /dev/null
 +++ b/kernel/time/test_udelay.c
 @@ -0,0 +1,168 @@
 +/*
 + * udelay() test kernel module
 + *
 + * Test is executed by writing and reading to /sys/kernel/debug/udelay_test
 + * Tests are configured by writing: USECS ITERATIONS
 + * Tests are executed by reading from the same file.
 + * Specifying usecs of 0 or negative values will run multiples tests.
 + *
 + * Copyright (C) 2014 Google, Inc.
 + *
 + * This software is licensed under the terms of the GNU General Public
 + * License version 2, as published by the Free Software Foundation, and
 + * may be copied, distributed, and modified under those terms.
 + *
 + * This program is distributed in the hope that it will be useful,
 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 + * GNU General Public License for more details.
 + */
 +
 +#include linux/debugfs.h
 +#include linux/delay.h
 +#include linux/ktime.h
 +#include linux/module.h
 +#include linux/uaccess.h
 +
 +#define DEFAULT_ITERATIONS 100
 +
 +#define DEBUGFS_FILENAME udelay_test
 +
 +static DEFINE_MUTEX(udelay_test_lock);
 +static struct dentry *udelay_test_debugfs_file;
 +static int udelay_test_usecs;
 +static int udelay_test_iterations = DEFAULT_ITERATIONS;
 +
 +static int udelay_test_single(struct seq_file *s, int usecs, uint32_t iters)
 +{
 +   int min = 0, max = 0, fail_count = 0;
 +   uint64_t sum = 0;
 +   uint64_t avg;
 +   int i;
 +   /* Allow udelay to be up to 0.5% fast */
 +   int allowed_error_ns = usecs * 5;
 +
 +   for (i = 0; i  iters; ++i) {
 +   struct timespec ts1, ts2;
 +   int time_passed;
 +
 +   ktime_get_ts(ts1);
 +   udelay(usecs);
 +   ktime_get_ts(ts2);
 +   time_passed = timespec_to_ns(ts2) - timespec_to_ns(ts1);
 +
 +   if (i == 0 || time_passed  min)
 +   min = time_passed;
 +   if (i == 0 || time_passed  max)
 +   max = time_passed;
 +   if ((time_passed + allowed_error_ns) / 1000  usecs)
 +   ++fail_count;
 +   WARN_ON(time_passed  0);
 +   sum += time_passed;
 +   }
 +
 +   avg = sum;
 +   do_div(avg, iters);
 +   seq_printf(s, %d usecs x %d: exp=%d allowed=%d min=%d avg=%lld 
 max=%d,
 +   usecs, iters, usecs * 1000,
 +   (usecs * 1000) - allowed_error_ns, min, avg, max);
 +   if (fail_count)
 +   seq_printf(s,  FAIL=%d, fail_count);
 +   seq_puts(s, \n);
 +
 +   return 0;
 +}
 +
 +static int udelay_test_show(struct seq_file *s, void *v)
 +{
 +   int usecs;
 +   int iters;
 +   int ret = 0;
 +
 +   mutex_lock(udelay_test_lock);
 +   usecs = udelay_test_usecs;
 +   iters = udelay_test_iterations;
 +   mutex_unlock(udelay_test_lock);
 +
 +   if (usecs  0  iters  0) {
 +   return udelay_test_single(s, usecs, iters);
 +   } else if (usecs == 0) {
 +   struct timespec ts;
 +
 +   ktime_get_ts(ts);
 +   seq_printf(s, udelay() test (lpj=%ld kt=%ld.%09ld)\n,
 +   loops_per_jiffy, 

Re: [PATCH 01/12] time: Rename udelay_test.c to test_udelay.c

2014-11-21 Thread Greg KH
On Fri, Nov 21, 2014 at 03:30:51PM -0800, Kees Cook wrote:
 On Fri, Nov 21, 2014 at 11:44 AM, John Stultz john.stu...@linaro.org wrote:
  Kees requested that this test module be renamed for consistency sake,
  so this patch renames the udelay_test.c file (recently added to
  tip/timers/core for 3.17) to test_udelay.c
 
  Cc: Kees Cook keesc...@chromium.org
  Cc: Greg KH g...@kroah.com
  Cc: Stephen Rothwell s...@canb.auug.org.au
  Cc: Thomas Gleixner t...@linutronix.de
  Cc: Ingo Molnar mi...@elte.hu
  Cc: Linux-Next linux-n...@vger.kernel.org
  Cc: David Riley davidri...@chromium.org
  Signed-off-by: John Stultz john.stu...@linaro.org
 
 Reviewed-by: Kees Cook keesc...@chromium.org


Acked-by: Greg Kroah-Hartman gre...@linuxfoundation.org
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/