2010-08-22 23:44:30

by Nikitas Angelinas

[permalink] [raw]
Subject: [PATCH] kernel: time: use ARRAY_SIZE macro in timecompare.c

Replace sizeof(buffer)/sizeof(buffer[0]) with ARRAY_SIZE(buffer) in
kernel/time/timecompare.c

Signed-off-by: Nikitas Angelinas <[email protected]>
---
kernel/time/timecompare.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/kernel/time/timecompare.c b/kernel/time/timecompare.c
index ac38fbb..a9ae369 100644
--- a/kernel/time/timecompare.c
+++ b/kernel/time/timecompare.c
@@ -21,6 +21,7 @@
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/math64.h>
+#include <linux/kernel.h>

/*
* fixed point arithmetic scale factor for skew
@@ -57,11 +58,11 @@ int timecompare_offset(struct timecompare *sync,
int index;
int num_samples = sync->num_samples;

- if (num_samples > sizeof(buffer)/sizeof(buffer[0])) {
+ if (num_samples > ARRAY_SIZE(buffer)) {
samples = kmalloc(sizeof(*samples) * num_samples, GFP_ATOMIC);
if (!samples) {
samples = buffer;
- num_samples = sizeof(buffer)/sizeof(buffer[0]);
+ num_samples = ARRAY_SIZE(buffer);
}
} else {
samples = buffer;
--
1.7.1.1


2010-08-23 01:01:59

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH] kernel: time: use ARRAY_SIZE macro in timecompare.c

On Aug 22, 2010, at 4:43 PM, Nikitas Angelinas <[email protected]
> wrote:

> Replace sizeof(buffer)/sizeof(buffer[0]) with ARRAY_SIZE(buffer) in
> kernel/time/timecompare.c
>
> Signed-off-by: Nikitas Angelinas <[email protected]>
> ---
> kernel/time/timecompare.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/time/timecompare.c b/kernel/time/timecompare.c
> index ac38fbb..a9ae369 100644
> --- a/kernel/time/timecompare.c
> +++ b/kernel/time/timecompare.c
> @@ -21,6 +21,7 @@
> #include <linux/module.h>
> #include <linux/slab.h>
> #include <linux/math64.h>
> +#include <linux/kernel.h>
>
> /*
> * fixed point arithmetic scale factor for skew
> @@ -57,11 +58,11 @@ int timecompare_offset(struct timecompare *sync,
> int index;
> int num_samples = sync->num_samples;
>
> - if (num_samples > sizeof(buffer)/sizeof(buffer[0])) {
> + if (num_samples > ARRAY_SIZE(buffer)) {
> samples = kmalloc(sizeof(*samples) * num_samples, GFP_ATOMIC);

That should be kcalloc while you are at it.

Thanks.

--
Dmitry

2010-08-23 23:26:32

by Nikitas Angelinas

[permalink] [raw]
Subject: Re: [PATCH] kernel: time: use ARRAY_SIZE macro in timecompare.c



On Sun, 22 Aug 2010, Dmitry Torokhov wrote:

> On Aug 22, 2010, at 4:43 PM, Nikitas Angelinas
> <[email protected]> wrote:
>
> >Replace sizeof(buffer)/sizeof(buffer[0]) with ARRAY_SIZE(buffer) in
> >kernel/time/timecompare.c
> >
> >Signed-off-by: Nikitas Angelinas <[email protected]>
> >---
> >kernel/time/timecompare.c | 5 +++--
> >1 files changed, 3 insertions(+), 2 deletions(-)
> >
> >diff --git a/kernel/time/timecompare.c b/kernel/time/timecompare.c
> >index ac38fbb..a9ae369 100644
> >--- a/kernel/time/timecompare.c
> >+++ b/kernel/time/timecompare.c
> >@@ -21,6 +21,7 @@
> >#include <linux/module.h>
> >#include <linux/slab.h>
> >#include <linux/math64.h>
> >+#include <linux/kernel.h>
> >
> >/*
> >* fixed point arithmetic scale factor for skew
> >@@ -57,11 +58,11 @@ int timecompare_offset(struct timecompare *sync,
> > int index;
> > int num_samples = sync->num_samples;
> >
> >- if (num_samples > sizeof(buffer)/sizeof(buffer[0])) {
> >+ if (num_samples > ARRAY_SIZE(buffer)) {
> > samples = kmalloc(sizeof(*samples) * num_samples, GFP_ATOMIC);
>
> That should be kcalloc while you are at it.
>
> Thanks.
>
> --
> Dmitry
>
>

Thanks for pointing that out; however, the code as is does not do a
memset to 0; is it worth using kcalloc in this case considering it has
to go through an 'unlikely' and a subsequent memset?

If required, I guess I should post a patch on a separate thread so that
Git picks up the correct patch title?

Kind Regards,
Nikitas

2010-08-27 07:37:26

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH] kernel: time: use ARRAY_SIZE macro in timecompare.c

On Tue, Aug 24, 2010 at 12:27:08AM +0100, Nikitas Angelinas wrote:
>
>
> On Sun, 22 Aug 2010, Dmitry Torokhov wrote:
>
> > On Aug 22, 2010, at 4:43 PM, Nikitas Angelinas
> > <[email protected]> wrote:
> >
> > >Replace sizeof(buffer)/sizeof(buffer[0]) with ARRAY_SIZE(buffer) in
> > >kernel/time/timecompare.c
> > >
> > >Signed-off-by: Nikitas Angelinas <[email protected]>
> > >---
> > >kernel/time/timecompare.c | 5 +++--
> > >1 files changed, 3 insertions(+), 2 deletions(-)
> > >
> > >diff --git a/kernel/time/timecompare.c b/kernel/time/timecompare.c
> > >index ac38fbb..a9ae369 100644
> > >--- a/kernel/time/timecompare.c
> > >+++ b/kernel/time/timecompare.c
> > >@@ -21,6 +21,7 @@
> > >#include <linux/module.h>
> > >#include <linux/slab.h>
> > >#include <linux/math64.h>
> > >+#include <linux/kernel.h>
> > >
> > >/*
> > >* fixed point arithmetic scale factor for skew
> > >@@ -57,11 +58,11 @@ int timecompare_offset(struct timecompare *sync,
> > > int index;
> > > int num_samples = sync->num_samples;
> > >
> > >- if (num_samples > sizeof(buffer)/sizeof(buffer[0])) {
> > >+ if (num_samples > ARRAY_SIZE(buffer)) {
> > > samples = kmalloc(sizeof(*samples) * num_samples, GFP_ATOMIC);
> >
> > That should be kcalloc while you are at it.
> >
> > Thanks.
> >
> > --
> > Dmitry
> >
> >
>
> Thanks for pointing that out; however, the code as is does not do a
> memset to 0; is it worth using kcalloc in this case considering it has
> to go through an 'unlikely' and a subsequent memset?
>

Ah, I see. Ignore me then.

Thanks.

--
Dmitry