From: John Garry <john.garry@huawei.com>
To: <xuwei5@huawei.com>
Cc: <bhelgaas@google.com>, <linuxarm@huawei.com>,
<linux-kernel@vger.kernel.org>, <arnd@arndb.de>, <olof@lixom.net>,
<stable@vger.kernel.org>, John Garry <john.garry@huawei.com>
Subject: [PATCH v4 0/5] Fixes for HiSilicon LPC driver and logical PIO code
Date: Tue, 30 Jul 2019 21:29:51 +0800 [thread overview]
Message-ID: <1564493396-92195-1-git-send-email-john.garry@huawei.com> (raw)
As reported in [1], the hisi-lpc driver has certain issues in handling
logical PIO regions, specifically unregistering regions.
This series add a method to unregister a logical PIO region, and fixes up
the driver to use them.
RCU usage in logical PIO code looks to always have been broken, so that
is fixed also. This is not a major fix as the list which RCU protects
would be rarely modified.
At this point, there are still separate ongoing discussions about how to
stop the logical PIO and PCI host bridge code leaking ranges, as in [2],
which I haven't had a chance to look at recently.
Hopefully this series can go through the arm soc tree and the maintainers
have no issue with that. I'm talking specifically about the logical PIO
code, which went through PCI tree on only previous upstreaming.
[1] https://lore.kernel.org/lkml/1560770148-57960-1-git-send-email-john.garry@huawei.com/
[2] https://lore.kernel.org/lkml/4b24fd36-e716-7c5e-31cc-13da727802e7@huawei.com/
Changes since v3:
https://lore.kernel.org/lkml/1561566418-22714-1-git-send-email-john.garry@huawei.com/
- drop optimisation patch (lib: logic_pio: Enforce LOGIC_PIO_INDIRECT
region ops are set at registration)
Not a fix
- rebase to v5.3-rc2
- cc stable
Change since v2:
- Add hisi_lpc_acpi_remove() stub to fix build for !CONFIG_ACPI
Changes since v1:
- Add more reasoning in RCU fix patch
- Create separate patch to change LOGIC_PIO_CPU_MMIO registration to
accomodate unregistration
John Garry (5):
lib: logic_pio: Fix RCU usage
lib: logic_pio: Avoid possible overlap for unregistering regions
lib: logic_pio: Add logic_pio_unregister_range()
bus: hisi_lpc: Unregister logical PIO range to avoid potential
use-after-free
bus: hisi_lpc: Add .remove method to avoid driver unbind crash
drivers/bus/hisi_lpc.c | 47 +++++++++++++++++++++----
include/linux/logic_pio.h | 1 +
lib/logic_pio.c | 73 +++++++++++++++++++++++++++++----------
3 files changed, 96 insertions(+), 25 deletions(-)
--
2.17.1
next reply other threads:[~2019-07-30 13:32 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-30 13:29 John Garry [this message]
2019-07-30 13:29 ` [PATCH v4 1/5] lib: logic_pio: Fix RCU usage John Garry
2019-07-30 13:29 ` [PATCH v4 2/5] lib: logic_pio: Avoid possible overlap for unregistering regions John Garry
2019-07-30 13:29 ` [PATCH v4 3/5] lib: logic_pio: Add logic_pio_unregister_range() John Garry
2019-07-30 13:29 ` [PATCH v4 4/5] bus: hisi_lpc: Unregister logical PIO range to avoid potential use-after-free John Garry
2019-07-30 13:29 ` [PATCH v4 5/5] bus: hisi_lpc: Add .remove method to avoid driver unbind crash John Garry
2019-08-16 2:35 ` [PATCH v4 0/5] Fixes for HiSilicon LPC driver and logical PIO code Wei Xu
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=1564493396-92195-1-git-send-email-john.garry@huawei.com \
--to=john.garry@huawei.com \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=olof@lixom.net \
--cc=stable@vger.kernel.org \
--cc=xuwei5@huawei.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).