Skip to content

Commit

Permalink
mm: cma: constify and use correct signness in mm/cma.c
Browse files Browse the repository at this point in the history
Constify function parameters and use correct signness where needed.

Signed-off-by: Sasha Levin <[email protected]>
Cc: Michal Nazarewicz <[email protected]>
Cc: Marek Szyprowski <[email protected]>
Cc: Joonsoo Kim <[email protected]>
Cc: Laurent Pinchart <[email protected]>
Acked-by: Gregory Fong <[email protected]>
Cc: Pintu Kumar <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
sashalevin authored and torvalds committed Apr 14, 2015
1 parent 6e276d2 commit ac17382
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 16 deletions.
12 changes: 6 additions & 6 deletions include/linux/cma.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,16 @@
struct cma;

extern unsigned long totalcma_pages;
extern phys_addr_t cma_get_base(struct cma *cma);
extern unsigned long cma_get_size(struct cma *cma);
extern phys_addr_t cma_get_base(const struct cma *cma);
extern unsigned long cma_get_size(const struct cma *cma);

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 base,
phys_addr_t size, int order_per_bit,
extern int cma_init_reserved_mem(phys_addr_t base, phys_addr_t size,
unsigned 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);
extern struct page *cma_alloc(struct cma *cma, unsigned int count, unsigned int align);
extern bool cma_release(struct cma *cma, const struct page *pages, unsigned int count);
#endif
24 changes: 14 additions & 10 deletions mm/cma.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,17 +41,18 @@ struct cma cma_areas[MAX_CMA_AREAS];
unsigned cma_area_count;
static DEFINE_MUTEX(cma_mutex);

phys_addr_t cma_get_base(struct cma *cma)
phys_addr_t cma_get_base(const struct cma *cma)
{
return PFN_PHYS(cma->base_pfn);
}

unsigned long cma_get_size(struct cma *cma)
unsigned long cma_get_size(const struct cma *cma)
{
return cma->count << PAGE_SHIFT;
}

static unsigned long cma_bitmap_aligned_mask(struct cma *cma, int align_order)
static unsigned long cma_bitmap_aligned_mask(const struct cma *cma,
int align_order)
{
if (align_order <= cma->order_per_bit)
return 0;
Expand All @@ -62,7 +63,8 @@ static unsigned long cma_bitmap_aligned_mask(struct cma *cma, int align_order)
* Find a PFN aligned to the specified order and return an offset represented in
* order_per_bits.
*/
static unsigned long cma_bitmap_aligned_offset(struct cma *cma, int align_order)
static unsigned long cma_bitmap_aligned_offset(const struct cma *cma,
int align_order)
{
if (align_order <= cma->order_per_bit)
return 0;
Expand All @@ -71,13 +73,14 @@ static unsigned long cma_bitmap_aligned_offset(struct cma *cma, int align_order)
- cma->base_pfn) >> cma->order_per_bit;
}

static unsigned long cma_bitmap_pages_to_bits(struct cma *cma,
unsigned long pages)
static unsigned long cma_bitmap_pages_to_bits(const struct cma *cma,
unsigned long pages)
{
return ALIGN(pages, 1UL << cma->order_per_bit) >> cma->order_per_bit;
}

static void cma_clear_bitmap(struct cma *cma, unsigned long pfn, int count)
static void cma_clear_bitmap(struct cma *cma, unsigned long pfn,
unsigned int count)
{
unsigned long bitmap_no, bitmap_count;

Expand Down Expand Up @@ -162,7 +165,8 @@ core_initcall(cma_init_reserved_areas);
* This function creates custom contiguous area from already reserved memory.
*/
int __init cma_init_reserved_mem(phys_addr_t base, phys_addr_t size,
int order_per_bit, struct cma **res_cma)
unsigned int order_per_bit,
struct cma **res_cma)
{
struct cma *cma;
phys_addr_t alignment;
Expand Down Expand Up @@ -353,7 +357,7 @@ int __init cma_declare_contiguous(phys_addr_t base,
* This function allocates part of contiguous memory on specific
* contiguous memory area.
*/
struct page *cma_alloc(struct cma *cma, int count, unsigned int align)
struct page *cma_alloc(struct cma *cma, unsigned int count, unsigned int align)
{
unsigned long mask, offset, pfn, start = 0;
unsigned long bitmap_maxno, bitmap_no, bitmap_count;
Expand Down Expand Up @@ -424,7 +428,7 @@ struct page *cma_alloc(struct cma *cma, int count, unsigned int align)
* It returns false when provided pages do not belong to contiguous area and
* true otherwise.
*/
bool cma_release(struct cma *cma, struct page *pages, int count)
bool cma_release(struct cma *cma, const struct page *pages, unsigned int count)
{
unsigned long pfn;

Expand Down

0 comments on commit ac17382

Please sign in to comment.