diff options
| author | Vladimir Zapolskiy <[email protected]> | 2015-09-04 15:47:43 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2015-09-04 16:54:41 -0700 |
| commit | 73858173593c31cb94bce63fe1c24eb803bb04e6 (patch) | |
| tree | d9843d5b2c3ec648501ae18821f52d78fe87aadf /include/linux | |
| parent | c0a294988322a804901fe24222027fe8a34defcb (diff) | |
genalloc: add name arg to gen_pool_get() and devm_gen_pool_create()
This change modifies gen_pool_get() and devm_gen_pool_create() client
interfaces adding one more argument "name" of a gen_pool object.
Due to implementation gen_pool_get() is capable to retrieve only one
gen_pool associated with a device even if multiple gen_pools are created,
fortunately right at the moment it is sufficient for the clients, hence
provide NULL as a valid argument on both producer devm_gen_pool_create()
and consumer gen_pool_get() sides.
Because only one created gen_pool per device is addressable, explicitly
add a restriction to devm_gen_pool_create() to create only one gen_pool
per device, this implies two possible error codes returned by the
function, account it on client side (only misc/sram). This completes
client side changes related to genalloc updates.
[[email protected]: gen_pool_get() cleanup]
Signed-off-by: Vladimir Zapolskiy <[email protected]>
Cc: Philipp Zabel <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: Russell King <[email protected]>
Cc: Nicolas Ferre <[email protected]>
Cc: Alexandre Belloni <[email protected]>
Cc: Jean-Christophe Plagniol-Villard <[email protected]>
Cc: Shawn Guo <[email protected]>
Cc: Sascha Hauer <[email protected]>
Cc: Mauro Carvalho Chehab <[email protected]>
Cc: Arnd Bergmann <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/genalloc.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/genalloc.h b/include/linux/genalloc.h index 5383bb1394a1..6afa65e6cdb7 100644 --- a/include/linux/genalloc.h +++ b/include/linux/genalloc.h @@ -118,8 +118,8 @@ extern unsigned long gen_pool_best_fit(unsigned long *map, unsigned long size, unsigned long start, unsigned int nr, void *data); extern struct gen_pool *devm_gen_pool_create(struct device *dev, - int min_alloc_order, int nid); -extern struct gen_pool *gen_pool_get(struct device *dev); + int min_alloc_order, int nid, const char *name); +extern struct gen_pool *gen_pool_get(struct device *dev, const char *name); bool addr_in_gen_pool(struct gen_pool *pool, unsigned long start, size_t size); |