Messages in this thread | | | Subject | Re: [PATCH v4 0/5] Fixes for HiSilicon LPC driver and logical PIO code | From | Wei Xu <> | Date | Fri, 16 Aug 2019 10:35:12 +0800 |
| |
Hi John,
On 2019/7/30 21:29, John Garry wrote: > 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/
Thanks! Series applied to the hisilicon fixes tree.
Best Regards, Wei
> 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(-) >
| |