aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/memremap.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/memremap.c')
-rw-r--r--kernel/memremap.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/kernel/memremap.c b/kernel/memremap.c
index 9d6b55587eaa..7658d32c5c78 100644
--- a/kernel/memremap.c
+++ b/kernel/memremap.c
@@ -124,9 +124,10 @@ void *devm_memremap(struct device *dev, resource_size_t offset,
124{ 124{
125 void **ptr, *addr; 125 void **ptr, *addr;
126 126
127 ptr = devres_alloc(devm_memremap_release, sizeof(*ptr), GFP_KERNEL); 127 ptr = devres_alloc_node(devm_memremap_release, sizeof(*ptr), GFP_KERNEL,
128 dev_to_node(dev));
128 if (!ptr) 129 if (!ptr)
129 return NULL; 130 return ERR_PTR(-ENOMEM);
130 131
131 addr = memremap(offset, size, flags); 132 addr = memremap(offset, size, flags);
132 if (addr) { 133 if (addr) {
@@ -141,9 +142,8 @@ EXPORT_SYMBOL(devm_memremap);
141 142
142void devm_memunmap(struct device *dev, void *addr) 143void devm_memunmap(struct device *dev, void *addr)
143{ 144{
144 WARN_ON(devres_destroy(dev, devm_memremap_release, devm_memremap_match, 145 WARN_ON(devres_release(dev, devm_memremap_release,
145 addr)); 146 devm_memremap_match, addr));
146 memunmap(addr);
147} 147}
148EXPORT_SYMBOL(devm_memunmap); 148EXPORT_SYMBOL(devm_memunmap);
149 149
@@ -176,8 +176,8 @@ void *devm_memremap_pages(struct device *dev, struct resource *res)
176 if (is_ram == REGION_INTERSECTS) 176 if (is_ram == REGION_INTERSECTS)
177 return __va(res->start); 177 return __va(res->start);
178 178
179 page_map = devres_alloc(devm_memremap_pages_release, 179 page_map = devres_alloc_node(devm_memremap_pages_release,
180 sizeof(*page_map), GFP_KERNEL); 180 sizeof(*page_map), GFP_KERNEL, dev_to_node(dev));
181 if (!page_map) 181 if (!page_map)
182 return ERR_PTR(-ENOMEM); 182 return ERR_PTR(-ENOMEM);
183 183
@@ -185,7 +185,7 @@ void *devm_memremap_pages(struct device *dev, struct resource *res)
185 185
186 nid = dev_to_node(dev); 186 nid = dev_to_node(dev);
187 if (nid < 0) 187 if (nid < 0)
188 nid = 0; 188 nid = numa_mem_id();
189 189
190 error = arch_add_memory(nid, res->start, resource_size(res), true); 190 error = arch_add_memory(nid, res->start, resource_size(res), true);
191 if (error) { 191 if (error) {