On a powerpc 8xx, 'btc' fails as follows:
Entering kdb (current=0x(ptrval), pid 282) due to Keyboard Entry
kdb> btc
btc: cpu status: Currently on cpu 0
Available cpus: 0
kdb_getarea: Bad address 0x0
when booting the kernel with 'debug_boot_weak_hash', it fails as well
Entering kdb (current=0xba99ad80, pid 284) due to Keyboard Entry
kdb> btc
btc: cpu status: Currently on cpu 0
Available cpus: 0
kdb_getarea: Bad address 0xba99ad80
On other platforms, Oopses have been observed too, see
https://github.com/linuxppc/linux/issues/139
This is due to btc calling 'btt' with %p pointer as an argument.
This patch replaces %p by %px to get the real pointer value as
expected by 'btt'
Fixes: ad67b74d2469 ("printk: hash addresses printed with %p")
Cc: <stable(a)vger.kernel.org>
Reviewed-by: Daniel Thompson <daniel.thompson(a)linaro.org>
Signed-off-by: Christophe Leroy <christophe.leroy(a)c-s.fr>
---
v2: Added fixes: and Daniel's reviewed-by: in commit's log. No code change.
kernel/debug/kdb/kdb_bt.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/debug/kdb/kdb_bt.c b/kernel/debug/kdb/kdb_bt.c
index 6ad4a9fcbd6f..7921ae4fca8d 100644
--- a/kernel/debug/kdb/kdb_bt.c
+++ b/kernel/debug/kdb/kdb_bt.c
@@ -179,14 +179,14 @@ kdb_bt(int argc, const char **argv)
kdb_printf("no process for cpu %ld\n", cpu);
return 0;
}
- sprintf(buf, "btt 0x%p\n", KDB_TSK(cpu));
+ sprintf(buf, "btt 0x%px\n", KDB_TSK(cpu));
kdb_parse(buf);
return 0;
}
kdb_printf("btc: cpu status: ");
kdb_parse("cpu\n");
for_each_online_cpu(cpu) {
- sprintf(buf, "btt 0x%p\n", KDB_TSK(cpu));
+ sprintf(buf, "btt 0x%px\n", KDB_TSK(cpu));
kdb_parse(buf);
touch_nmi_watchdog();
}
--
2.13.3
Hi,
We would like to request inclusion of updated DualShock 4 device ids for hid-sony
in Linux 3.18. Existing devices on older kernels already support the original
DualShock 4, but not recent hardware revisions. A similar backport was submitted
for 4.4/4.9. Kernels newer than 4.12 already include these patches.
The patches were cherry-picked from upstream and modified to apply cleanly and
compile.
Thanks,
Roderick Colenbrander
Roderick Colenbrander (2):
HID: sony: Update device ids
HID: sony: Support DS4 dongle
drivers/hid/hid-core.c | 3 +++
drivers/hid/hid-ids.h | 2 ++
drivers/hid/hid-sony.c | 6 ++++++
3 files changed, 11 insertions(+)
--
2.17.1
On 9/27/18 9:57 AM, 国炬方 wrote:
> Yes, Guoju Fang. Thx. :)
OK, I made that change and committed it. Just be sure to use your full
name in the future for signoffs, etc.
--
Jens Axboe
Since 'commit 02e389e63e35 ("pinctrl: mcp23s08: fix irq setup order")' the
irq request isn't the last devm_* allocation. Without a deeper look at
the irq and testing this isn't a good solution. Since this driver relies
on the devm mechanism, requesting a interrupt should be the last thing
to avoid memory corruptions during unbinding.
'Commit 02e389e63e35 ("pinctrl: mcp23s08: fix irq setup order")' fixed the
order for the interrupt-controller use case only. The
mcp23s08_irq_setup() must be split into two to fix it for the
interrupt-controller use case and to register the irq at last. So the
irq will be freed first during unbind.
Cc: stable(a)vger.kernel.org
Cc: Dmitry Mastykin <mastichi(a)gmail.com>
Cc: Sebastian Reichel <sebastian.reichel(a)collabora.co.uk>
Fixes: 82039d244f87 ("pinctrl: mcp23s08: add pinconf support")
Fixes: 02e389e63e35 ("pinctrl: mcp23s08: fix irq setup order")
Signed-off-by: Marco Felsch <m.felsch(a)pengutronix.de>
---
drivers/pinctrl/pinctrl-mcp23s08.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/pinctrl/pinctrl-mcp23s08.c b/drivers/pinctrl/pinctrl-mcp23s08.c
index 472746931ea8..367b648be7c7 100644
--- a/drivers/pinctrl/pinctrl-mcp23s08.c
+++ b/drivers/pinctrl/pinctrl-mcp23s08.c
@@ -636,6 +636,14 @@ static int mcp23s08_irq_setup(struct mcp23s08 *mcp)
return err;
}
+ return 0;
+}
+
+static int mcp23s08_irqchip_setup(struct mcp23s08 *mcp)
+{
+ struct gpio_chip *chip = &mcp->chip;
+ int err;
+
err = gpiochip_irqchip_add_nested(chip,
&mcp23s08_irq_chip,
0,
@@ -908,8 +916,8 @@ static int mcp23s08_probe_one(struct mcp23s08 *mcp, struct device *dev,
goto fail;
}
- if (mcp->irq && mcp->irq_controller) {
- ret = mcp23s08_irq_setup(mcp);
+ if (mcp->irq_controller) {
+ ret = mcp23s08_irqchip_setup(mcp);
if (ret)
goto fail;
}
@@ -941,6 +949,9 @@ static int mcp23s08_probe_one(struct mcp23s08 *mcp, struct device *dev,
goto fail;
}
+ if (mcp->irq)
+ ret = mcp23s08_irq_setup(mcp);
+
fail:
if (ret < 0)
dev_dbg(dev, "can't setup chip %d, --> %d\n", addr, ret);
--
2.19.0
Do you have needs for your photos cutting out and retouching?
We do editing for e-commerce photos, portrait photos and wedding photos.
You may choose to send us one or tow photos, we will provide testing to
check quality.
Thanks,
Jessica
Hi,
We would like to request inclusion of updated DualShock 4 device ids for hid-sony
in Linux 4.4. Existing devices on older kernels already support the original
DualShock 4, but not recent hardware revisions. A similar backport was submitted
for 3.18/4.9. Kernels newer than 4.12 already include these patches.
The patches were cherry-picked from upstream and modified to apply cleanly and
compile.
Thanks,
Roderick Colenbrander
Roderick Colenbrander (2):
HID: sony: Update device ids
HID: sony: Support DS4 dongle
drivers/hid/hid-core.c | 3 +++
drivers/hid/hid-ids.h | 2 ++
drivers/hid/hid-sony.c | 6 ++++++
3 files changed, 11 insertions(+)
--
2.17.1