mirror of https://gitee.com/openkylin/linux.git
mm/zbud.c: make size unsigned like unique callsite
zbud_alloc is only called by zswap_frontswap_store with unsigned int len. Change function parameter + update >= 0 check. Signed-off-by: Fabian Frederick <fabf@skynet.be> Acked-by: Seth Jennings <sjennings@variantweb.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
38515c7339
commit
50417c5556
|
@ -11,7 +11,7 @@ struct zbud_ops {
|
||||||
|
|
||||||
struct zbud_pool *zbud_create_pool(gfp_t gfp, struct zbud_ops *ops);
|
struct zbud_pool *zbud_create_pool(gfp_t gfp, struct zbud_ops *ops);
|
||||||
void zbud_destroy_pool(struct zbud_pool *pool);
|
void zbud_destroy_pool(struct zbud_pool *pool);
|
||||||
int zbud_alloc(struct zbud_pool *pool, int size, gfp_t gfp,
|
int zbud_alloc(struct zbud_pool *pool, unsigned int size, gfp_t gfp,
|
||||||
unsigned long *handle);
|
unsigned long *handle);
|
||||||
void zbud_free(struct zbud_pool *pool, unsigned long handle);
|
void zbud_free(struct zbud_pool *pool, unsigned long handle);
|
||||||
int zbud_reclaim_page(struct zbud_pool *pool, unsigned int retries);
|
int zbud_reclaim_page(struct zbud_pool *pool, unsigned int retries);
|
||||||
|
|
|
@ -247,7 +247,7 @@ void zbud_destroy_pool(struct zbud_pool *pool)
|
||||||
* gfp arguments are invalid or -ENOMEM if the pool was unable to allocate
|
* gfp arguments are invalid or -ENOMEM if the pool was unable to allocate
|
||||||
* a new page.
|
* a new page.
|
||||||
*/
|
*/
|
||||||
int zbud_alloc(struct zbud_pool *pool, int size, gfp_t gfp,
|
int zbud_alloc(struct zbud_pool *pool, unsigned int size, gfp_t gfp,
|
||||||
unsigned long *handle)
|
unsigned long *handle)
|
||||||
{
|
{
|
||||||
int chunks, i, freechunks;
|
int chunks, i, freechunks;
|
||||||
|
@ -255,7 +255,7 @@ int zbud_alloc(struct zbud_pool *pool, int size, gfp_t gfp,
|
||||||
enum buddy bud;
|
enum buddy bud;
|
||||||
struct page *page;
|
struct page *page;
|
||||||
|
|
||||||
if (size <= 0 || gfp & __GFP_HIGHMEM)
|
if (!size || (gfp & __GFP_HIGHMEM))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
if (size > PAGE_SIZE - ZHDR_SIZE_ALIGNED - CHUNK_SIZE)
|
if (size > PAGE_SIZE - ZHDR_SIZE_ALIGNED - CHUNK_SIZE)
|
||||||
return -ENOSPC;
|
return -ENOSPC;
|
||||||
|
|
Loading…
Reference in New Issue