2014-10-24 09:49:20

by Weijie Yang

[permalink] [raw]
Subject: [PATCH] mm, cma: make parameters order consistent in func declaration and definition

In the current code, the base and size parameters order is not consistent
in functions declaration and definition. If someone calls these functions
according to the declaration parameters order in cma.h, he will run into
some bug and it's hard to find the reason.

This patch makes the parameters order consistent in functions declaration
and definition.

Signed-off-by: Weijie Yang <[email protected]>
---
include/linux/cma.h | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/include/linux/cma.h b/include/linux/cma.h
index 0430ed0..a93438b 100644
--- a/include/linux/cma.h
+++ b/include/linux/cma.h
@@ -18,12 +18,12 @@ struct cma;
extern phys_addr_t cma_get_base(struct cma *cma);
extern unsigned long cma_get_size(struct cma *cma);

-extern int __init cma_declare_contiguous(phys_addr_t size,
- phys_addr_t base, phys_addr_t limit,
+extern int __init cma_declare_contiguous(phys_addr_t base,
+ phys_addr_t size, phys_addr_t limit,
phys_addr_t alignment, unsigned int order_per_bit,
bool fixed, struct cma **res_cma);
-extern int cma_init_reserved_mem(phys_addr_t size,
- phys_addr_t base, int order_per_bit,
+extern int cma_init_reserved_mem(phys_addr_t base,
+ phys_addr_t size, int order_per_bit,
struct cma **res_cma);
extern struct page *cma_alloc(struct cma *cma, int count, unsigned int align);
extern bool cma_release(struct cma *cma, struct page *pages, int count);
--
1.7.0.4


2014-10-24 16:37:30

by Michal Nazarewicz

[permalink] [raw]
Subject: Re: [PATCH] mm, cma: make parameters order consistent in func declaration and definition

On Fri, Oct 24 2014, Weijie Yang <[email protected]> wrote:
> In the current code, the base and size parameters order is not consistent
> in functions declaration and definition. If someone calls these functions
> according to the declaration parameters order in cma.h, he will run into
> some bug and it's hard to find the reason.
>
> This patch makes the parameters order consistent in functions declaration
> and definition.
>
> Signed-off-by: Weijie Yang <[email protected]>

Acked-by: Michal Nazarewicz <[email protected]>

> ---
> include/linux/cma.h | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/linux/cma.h b/include/linux/cma.h
> index 0430ed0..a93438b 100644
> --- a/include/linux/cma.h
> +++ b/include/linux/cma.h
> @@ -18,12 +18,12 @@ struct cma;
> extern phys_addr_t cma_get_base(struct cma *cma);
> extern unsigned long cma_get_size(struct cma *cma);
>
> -extern int __init cma_declare_contiguous(phys_addr_t size,
> - phys_addr_t base, phys_addr_t limit,
> +extern int __init cma_declare_contiguous(phys_addr_t base,
> + phys_addr_t size, phys_addr_t limit,
> phys_addr_t alignment, unsigned int order_per_bit,
> bool fixed, struct cma **res_cma);
> -extern int cma_init_reserved_mem(phys_addr_t size,
> - phys_addr_t base, int order_per_bit,
> +extern int cma_init_reserved_mem(phys_addr_t base,
> + phys_addr_t size, int order_per_bit,
> struct cma **res_cma);
> extern struct page *cma_alloc(struct cma *cma, int count, unsigned int align);
> extern bool cma_release(struct cma *cma, struct page *pages, int count);
> --
> 1.7.0.4
>
>

--
Best regards, _ _
.o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
..o | Computer Science, Michał “mina86” Nazarewicz (o o)
ooo +--<[email protected]>--<xmpp:[email protected]>--ooO--(_)--Ooo--

2014-10-27 12:13:59

by Marek Szyprowski

[permalink] [raw]
Subject: Re: [PATCH] mm, cma: make parameters order consistent in func declaration and definition

Hello,

On 2014-10-24 18:37, Michal Nazarewicz wrote:
> On Fri, Oct 24 2014, Weijie Yang <[email protected]> wrote:
>> In the current code, the base and size parameters order is not consistent
>> in functions declaration and definition. If someone calls these functions
>> according to the declaration parameters order in cma.h, he will run into
>> some bug and it's hard to find the reason.
>>
>> This patch makes the parameters order consistent in functions declaration
>> and definition.
>>
>> Signed-off-by: Weijie Yang <[email protected]>
> Acked-by: Michal Nazarewicz <[email protected]>

Applied to my fixes-for-v3.18 branch.

>> ---
>> include/linux/cma.h | 8 ++++----
>> 1 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/include/linux/cma.h b/include/linux/cma.h
>> index 0430ed0..a93438b 100644
>> --- a/include/linux/cma.h
>> +++ b/include/linux/cma.h
>> @@ -18,12 +18,12 @@ struct cma;
>> extern phys_addr_t cma_get_base(struct cma *cma);
>> extern unsigned long cma_get_size(struct cma *cma);
>>
>> -extern int __init cma_declare_contiguous(phys_addr_t size,
>> - phys_addr_t base, phys_addr_t limit,
>> +extern int __init cma_declare_contiguous(phys_addr_t base,
>> + phys_addr_t size, phys_addr_t limit,
>> phys_addr_t alignment, unsigned int order_per_bit,
>> bool fixed, struct cma **res_cma);
>> -extern int cma_init_reserved_mem(phys_addr_t size,
>> - phys_addr_t base, int order_per_bit,
>> +extern int cma_init_reserved_mem(phys_addr_t base,
>> + phys_addr_t size, int order_per_bit,
>> struct cma **res_cma);
>> extern struct page *cma_alloc(struct cma *cma, int count, unsigned int align);
>> extern bool cma_release(struct cma *cma, struct page *pages, int count);
>> --
>> 1.7.0.4

Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland