|
@@ -11,6 +11,7 @@
|
|
|
|
|
|
#include <linux/of.h>
|
|
|
#include <linux/lmb.h>
|
|
|
+#include <linux/vmalloc.h>
|
|
|
#include <asm/firmware.h>
|
|
|
#include <asm/machdep.h>
|
|
|
#include <asm/pSeries_reconfig.h>
|
|
@@ -54,6 +55,12 @@ static int pseries_remove_lmb(unsigned long base, unsigned int lmb_size)
|
|
|
*/
|
|
|
start = (unsigned long)__va(base);
|
|
|
ret = remove_section_mapping(start, start + lmb_size);
|
|
|
+
|
|
|
+ /* Ensure all vmalloc mappings are flushed in case they also
|
|
|
+ * hit that section of memory
|
|
|
+ */
|
|
|
+ vm_unmap_aliases();
|
|
|
+
|
|
|
return ret;
|
|
|
}
|
|
|
|