The "if" clause can fit to one line. Also while we're here, fix the end
pfn print (use %#lx instead of #%lx).
Signed-off-by: Max Gurtovoy <[email protected]>
---
mm/memory_hotplug.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 70620d0dd923..8c3b423c1141 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -288,10 +288,9 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
min_align = PAGES_PER_SUBSECTION;
else
min_align = PAGES_PER_SECTION;
- if (!IS_ALIGNED(pfn, min_align)
- || !IS_ALIGNED(nr_pages, min_align)) {
- WARN(1, "Misaligned __%s_pages start: %#lx end: #%lx\n",
- reason, pfn, pfn + nr_pages - 1);
+ if (!IS_ALIGNED(pfn, min_align) || !IS_ALIGNED(nr_pages, min_align)) {
+ WARN(1, "Misaligned __%s_pages start: %#lx end: %#lx\n",
+ reason, pfn, pfn + nr_pages - 1);
return -EINVAL;
}
return 0;
--
2.18.1
The warning only prints the start and end pfns. Add min_align to the
warning print to add more info regarding the failure.
Signed-off-by: Max Gurtovoy <[email protected]>
---
mm/memory_hotplug.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 8c3b423c1141..9e86e9ee0a10 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -289,8 +289,8 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
else
min_align = PAGES_PER_SECTION;
if (!IS_ALIGNED(pfn, min_align) || !IS_ALIGNED(nr_pages, min_align)) {
- WARN(1, "Misaligned __%s_pages start: %#lx end: %#lx\n",
- reason, pfn, pfn + nr_pages - 1);
+ WARN(1, "Misaligned __%s_pages min_align: %#lx start: %#lx end: %#lx\n",
+ reason, min_align, pfn, pfn + nr_pages - 1);
return -EINVAL;
}
return 0;
--
2.18.1
On 02.06.21 10:47, Max Gurtovoy wrote:
> The warning only prints the start and end pfns. Add min_align to the
> warning print to add more info regarding the failure.
>
> Signed-off-by: Max Gurtovoy <[email protected]>
> ---
> mm/memory_hotplug.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index 8c3b423c1141..9e86e9ee0a10 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -289,8 +289,8 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
> else
> min_align = PAGES_PER_SECTION;
> if (!IS_ALIGNED(pfn, min_align) || !IS_ALIGNED(nr_pages, min_align)) {
> - WARN(1, "Misaligned __%s_pages start: %#lx end: %#lx\n",
> - reason, pfn, pfn + nr_pages - 1);
> + WARN(1, "Misaligned __%s_pages min_align: %#lx start: %#lx end: %#lx\n",
> + reason, min_align, pfn, pfn + nr_pages - 1);
> return -EINVAL;
> }
> return 0;
>
Not sure if we really care. I expect only developers will run into that
hacking on something new, and they will have to dig deeper either way.
While at it, I'd suggest converting this to pr_warn(), as WARN() is
frowned upon as it can crash the kernel with panic_on_warn as set by
some distros.
Reviewed-by: David Hildenbrand <[email protected]>
--
Thanks,
David / dhildenb
On 02.06.21 10:47, Max Gurtovoy wrote:
> The "if" clause can fit to one line. Also while we're here, fix the end
> pfn print (use %#lx instead of #%lx).
>
I think the subject could be more expressive. I'd suggest
"mm,memory_hotplug: cleanup alignment checks in check_pfn_span"
Reviewed-by: David Hildenbrand <[email protected]>
> Signed-off-by: Max Gurtovoy <[email protected]>
> ---
> mm/memory_hotplug.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index 70620d0dd923..8c3b423c1141 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -288,10 +288,9 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
> min_align = PAGES_PER_SUBSECTION;
> else
> min_align = PAGES_PER_SECTION;
> - if (!IS_ALIGNED(pfn, min_align)
> - || !IS_ALIGNED(nr_pages, min_align)) {
> - WARN(1, "Misaligned __%s_pages start: %#lx end: #%lx\n",
> - reason, pfn, pfn + nr_pages - 1);
> + if (!IS_ALIGNED(pfn, min_align) || !IS_ALIGNED(nr_pages, min_align)) {
> + WARN(1, "Misaligned __%s_pages start: %#lx end: %#lx\n",
> + reason, pfn, pfn + nr_pages - 1);
> return -EINVAL;
> }
> return 0;
>
--
Thanks,
David / dhildenb