From: tip-bot for Toshi Kani <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: dvlasenk@redhat.com, bp@suse.de, peterz@infradead.org,
luto@amacapital.net, jiang.liu@linux.intel.com, mcgrof@suse.com,
brgerst@gmail.com, dan.j.williams@intel.com, toshi.kani@hp.com,
jsitnicki@gmail.com, linux-kernel@vger.kernel.org,
rafael.j.wysocki@intel.com, linux-mm@kvack.org,
vinod.koul@intel.com, akpm@linux-foundation.org,
toshi.kani@hpe.com, hpa@zytor.com, torvalds@linux-foundation.org,
tglx@linutronix.de, bp@alien8.de, mingo@kernel.org
Subject: [tip:core/resources] resource: Handle resource flags properly
Date: Sat, 30 Jan 2016 01:28:23 -0800 [thread overview]
Message-ID: <tip-a3650d53ba16ec412185abb98f231e9ba6bcdc65@git.kernel.org> (raw)
In-Reply-To: <1453841853-11383-3-git-send-email-bp@alien8.de>
Commit-ID: a3650d53ba16ec412185abb98f231e9ba6bcdc65
Gitweb: http://git.kernel.org/tip/a3650d53ba16ec412185abb98f231e9ba6bcdc65
Author: Toshi Kani <toshi.kani@hpe.com>
AuthorDate: Tue, 26 Jan 2016 21:57:18 +0100
Committer: Ingo Molnar <mingo@kernel.org>
CommitDate: Sat, 30 Jan 2016 09:49:56 +0100
resource: Handle resource flags properly
I/O resource flags consist of I/O resource types and modifier
bits. Therefore, checking an I/O resource type in 'flags' must
be performed with a bitwise operation.
Fix find_next_iomem_res() and region_intersects() that simply
compare 'flags' against a given value.
Also change __request_region() to set 'res->flags' from
resource_type() and resource_ext_type() of the parent, so that
children nodes will inherit the extended I/O resource type.
Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jakub Sitnicki <jsitnicki@gmail.com>
Cc: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Luis R. Rodriguez <mcgrof@suse.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Toshi Kani <toshi.kani@hp.com>
Cc: Vinod Koul <vinod.koul@intel.com>
Cc: linux-arch@vger.kernel.org
Cc: linux-mm <linux-mm@kvack.org>
Link: http://lkml.kernel.org/r/1453841853-11383-3-git-send-email-bp@alien8.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
kernel/resource.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/kernel/resource.c b/kernel/resource.c
index 09c0597..96afc80 100644
--- a/kernel/resource.c
+++ b/kernel/resource.c
@@ -358,7 +358,7 @@ static int find_next_iomem_res(struct resource *res, char *name,
read_lock(&resource_lock);
for (p = iomem_resource.child; p; p = next_resource(p, sibling_only)) {
- if (p->flags != res->flags)
+ if ((p->flags & res->flags) != res->flags)
continue;
if (name && strcmp(p->name, name))
continue;
@@ -519,7 +519,8 @@ int region_intersects(resource_size_t start, size_t size, const char *name)
read_lock(&resource_lock);
for (p = iomem_resource.child; p ; p = p->sibling) {
- bool is_type = strcmp(p->name, name) == 0 && p->flags == flags;
+ bool is_type = strcmp(p->name, name) == 0 &&
+ ((p->flags & flags) == flags);
if (start >= p->start && start <= p->end)
is_type ? type++ : other++;
@@ -1071,7 +1072,7 @@ struct resource * __request_region(struct resource *parent,
res->name = name;
res->start = start;
res->end = start + n - 1;
- res->flags = resource_type(parent);
+ res->flags = resource_type(parent) | resource_ext_type(parent);
res->flags |= IORESOURCE_BUSY | flags;
write_lock(&resource_lock);
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: tip-bot for Toshi Kani <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: dvlasenk@redhat.com, bp@suse.de, peterz@infradead.org,
luto@amacapital.net, jiang.liu@linux.intel.com, mcgrof@suse.com,
brgerst@gmail.com, dan.j.williams@intel.com, toshi.kani@hp.com,
jsitnicki@gmail.com, linux-kernel@vger.kernel.org,
rafael.j.wysocki@intel.com, linux-mm@kvack.org,
vinod.koul@intel.com, akpm@linux-foundation.org,
toshi.kani@hpe.com, hpa@zytor.com, torvalds@linux-foundation.org,
tglx@linutronix.de, bp@alien8.de, mingo@kernel.org
Subject: [tip:core/resources] resource: Handle resource flags properly
Date: Sat, 30 Jan 2016 01:28:23 -0800 [thread overview]
Message-ID: <tip-a3650d53ba16ec412185abb98f231e9ba6bcdc65@git.kernel.org> (raw)
In-Reply-To: <1453841853-11383-3-git-send-email-bp@alien8.de>
Commit-ID: a3650d53ba16ec412185abb98f231e9ba6bcdc65
Gitweb: http://git.kernel.org/tip/a3650d53ba16ec412185abb98f231e9ba6bcdc65
Author: Toshi Kani <toshi.kani@hpe.com>
AuthorDate: Tue, 26 Jan 2016 21:57:18 +0100
Committer: Ingo Molnar <mingo@kernel.org>
CommitDate: Sat, 30 Jan 2016 09:49:56 +0100
resource: Handle resource flags properly
I/O resource flags consist of I/O resource types and modifier
bits. Therefore, checking an I/O resource type in 'flags' must
be performed with a bitwise operation.
Fix find_next_iomem_res() and region_intersects() that simply
compare 'flags' against a given value.
Also change __request_region() to set 'res->flags' from
resource_type() and resource_ext_type() of the parent, so that
children nodes will inherit the extended I/O resource type.
Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jakub Sitnicki <jsitnicki@gmail.com>
Cc: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Luis R. Rodriguez <mcgrof@suse.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Toshi Kani <toshi.kani@hp.com>
Cc: Vinod Koul <vinod.koul@intel.com>
Cc: linux-arch@vger.kernel.org
Cc: linux-mm <linux-mm@kvack.org>
Link: http://lkml.kernel.org/r/1453841853-11383-3-git-send-email-bp@alien8.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
kernel/resource.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/kernel/resource.c b/kernel/resource.c
index 09c0597..96afc80 100644
--- a/kernel/resource.c
+++ b/kernel/resource.c
@@ -358,7 +358,7 @@ static int find_next_iomem_res(struct resource *res, char *name,
read_lock(&resource_lock);
for (p = iomem_resource.child; p; p = next_resource(p, sibling_only)) {
- if (p->flags != res->flags)
+ if ((p->flags & res->flags) != res->flags)
continue;
if (name && strcmp(p->name, name))
continue;
@@ -519,7 +519,8 @@ int region_intersects(resource_size_t start, size_t size, const char *name)
read_lock(&resource_lock);
for (p = iomem_resource.child; p ; p = p->sibling) {
- bool is_type = strcmp(p->name, name) == 0 && p->flags == flags;
+ bool is_type = strcmp(p->name, name) == 0 &&
+ ((p->flags & flags) == flags);
if (start >= p->start && start <= p->end)
is_type ? type++ : other++;
@@ -1071,7 +1072,7 @@ struct resource * __request_region(struct resource *parent,
res->name = name;
res->start = start;
res->end = start + n - 1;
- res->flags = resource_type(parent);
+ res->flags = resource_type(parent) | resource_ext_type(parent);
res->flags |= IORESOURCE_BUSY | flags;
write_lock(&resource_lock);
next prev parent reply other threads:[~2016-01-30 9:29 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-26 20:57 [PATCH 00/17] tip-queue: 2016-01-26, mm stuff Borislav Petkov
2016-01-26 20:57 ` [PATCH 01/17] resource: Add System RAM resource type Borislav Petkov
2016-01-30 9:28 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:28 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 02/17] resource: Handle resource flags properly Borislav Petkov
2016-01-30 9:28 ` tip-bot for Toshi Kani [this message]
2016-01-30 9:28 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 03/17] resource: Add I/O resource descriptor Borislav Petkov
2016-01-30 9:28 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:28 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 04/17] x86/e820: Set System RAM type and descriptor Borislav Petkov
2016-01-30 9:29 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:29 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 05/17] ia64: " Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:29 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:29 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 06/17] arch: Set IORESOURCE_SYSTEM_RAM flag for System RAM Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:29 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:29 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 07/17] kexec: Set IORESOURCE_SYSTEM_RAM " Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:30 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:30 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 08/17] xen, mm: Set IORESOURCE_SYSTEM_RAM to " Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:30 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:30 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 09/17] drivers: Initialize resource entry to zero Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:31 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:31 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 10/17] resource: Change walk_system_ram() to use System RAM type Borislav Petkov
2016-01-30 9:31 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:31 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 11/17] arm/samsung: Change s3c_pm_run_res() " Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:31 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:31 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 12/17] memremap: Change region_intersects() to take @flags and @desc Borislav Petkov
2016-01-26 21:08 ` Dan Williams
2016-01-26 21:08 ` Dan Williams
2016-01-30 9:32 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:32 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 13/17] resource: Add walk_iomem_res_desc() Borislav Petkov
2016-01-30 9:32 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:32 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 14/17] x86, kexec, nvdimm: Use walk_iomem_res_desc() for iomem search Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:32 ` [tip:core/resources] x86, kexec, nvdimm: Use walk_iomem_res_desc( ) " tip-bot for Toshi Kani
2016-01-30 9:32 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 15/17] x86/kexec: Remove walk_iomem_res() call with GART type Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:33 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:33 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 16/17] resource: Kill walk_iomem_res() Borislav Petkov
2016-01-30 9:33 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:33 ` tip-bot for Toshi Kani
2016-01-26 20:57 ` [PATCH 17/17] ACPI/EINJ: Allow memory error injection to NVDIMM Borislav Petkov
2016-01-26 20:57 ` Borislav Petkov
2016-01-30 9:33 ` [tip:core/resources] " tip-bot for Toshi Kani
2016-01-30 9:33 ` tip-bot for Toshi Kani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=tip-a3650d53ba16ec412185abb98f231e9ba6bcdc65@git.kernel.org \
--to=tipbot@zytor.com \
--cc=akpm@linux-foundation.org \
--cc=bp@alien8.de \
--cc=bp@suse.de \
--cc=brgerst@gmail.com \
--cc=dan.j.williams@intel.com \
--cc=dvlasenk@redhat.com \
--cc=hpa@zytor.com \
--cc=jiang.liu@linux.intel.com \
--cc=jsitnicki@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=mcgrof@suse.com \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=rafael.j.wysocki@intel.com \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
--cc=toshi.kani@hp.com \
--cc=toshi.kani@hpe.com \
--cc=vinod.koul@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.