aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/device.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/device.h')
-rw-r--r--include/linux/device.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/include/linux/device.h b/include/linux/device.h
index 5d7bc6349930..b8f411b57dcb 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -604,13 +604,21 @@ typedef void (*dr_release_t)(struct device *dev, void *res);
604typedef int (*dr_match_t)(struct device *dev, void *res, void *match_data); 604typedef int (*dr_match_t)(struct device *dev, void *res, void *match_data);
605 605
606#ifdef CONFIG_DEBUG_DEVRES 606#ifdef CONFIG_DEBUG_DEVRES
607extern void *__devres_alloc(dr_release_t release, size_t size, gfp_t gfp, 607extern void *__devres_alloc_node(dr_release_t release, size_t size, gfp_t gfp,
608 const char *name); 608 int nid, const char *name);
609#define devres_alloc(release, size, gfp) \ 609#define devres_alloc(release, size, gfp) \
610 __devres_alloc(release, size, gfp, #release) 610 __devres_alloc_node(release, size, gfp, NUMA_NO_NODE, #release)
611#define devres_alloc_node(release, size, gfp, nid) \
612 __devres_alloc_node(release, size, gfp, nid, #release)
611#else 613#else
612extern void *devres_alloc(dr_release_t release, size_t size, gfp_t gfp); 614extern void *devres_alloc_node(dr_release_t release, size_t size, gfp_t gfp,
615 int nid);
616static inline void *devres_alloc(dr_release_t release, size_t size, gfp_t gfp)
617{
618 return devres_alloc_node(release, size, gfp, NUMA_NO_NODE);
619}
613#endif 620#endif
621
614extern void devres_for_each_res(struct device *dev, dr_release_t release, 622extern void devres_for_each_res(struct device *dev, dr_release_t release,
615 dr_match_t match, void *match_data, 623 dr_match_t match, void *match_data,
616 void (*fn)(struct device *, void *, void *), 624 void (*fn)(struct device *, void *, void *),