+#ifdef CONFIG_MEMORY_HOTPLUG
+static void mem_mark_immovable(char *str)
+{
+ int i = 0;
+
you have use num_immovable_region, 'i' is useless. just remove it.
Using num_immovable_region makes code too long. Using i will be
clear and make sure shoter than 80 characters.
Oh, God, that's horrific. Did you find that your code is wrong?
num_immovable_region will be reset each time.
Did you test?