From: Mihai Carabas <mihai.carabas@oracle.com>
To: linux-kernel@vger.kernel.org
Cc: gregkh@linuxfoundation.org, arnd@arndb.de,
bobo.shaobowang@huawei.com, rdunlap@infradead.org,
Mihai Carabas <mihai.carabas@oracle.com>
Subject: [PATCH v8] add support for pci in the pvpanic driver
Date: Wed, 24 Mar 2021 16:49:13 +0200 [thread overview]
Message-ID: <1616597356-20696-1-git-send-email-mihai.carabas@oracle.com> (raw)
This patchset adds support for PCI in the pvpanic driver. The device already
got in qemu [1].
v2:
- mmio -> MMIO, pci -> PCI suggested by Randy Dunlap.
- group pvpanic-common.c and mmio.c in the same module. The intention was to
have only one module and the common code splitted up to be re-used by the
pvpanic-pci module in the next patch.
- add a new patch where add the licenses for the new files (when I moved the
code to mmio.c I preserved the original licenses there)
- properly clean-up PCI device when driver removed.
v3:
- drop patch 3 with licenses and add them when creating files
- create a new patch (2/3) which allowes multiple pvpanic instances
v4:
- fix Makefile in patch 1/3 and 3/3 for pvpanic.o as suggested by Arnd
v5:
- rebase on 5.12
- fix a warning caused by one of the patches
v6:
- remove pr_fmt as were not used
- "remove" functions of type void
- moved events/capability per-device structure
v7:
- rebased on char-misc-next
v8:
- fixed build error while compiling only the first patch (accept
my apologizes Greg)
- build and tested pvpanic functionality after each applied patch
How to test:
Run a VM with latest qemu which has the pvpanic-pci device:
qemu-system-aarch64 -device pvpanic-pci
Generate a panic in the guest:
echo 1 > /proc/sys/kernel/sysrq
echo c > /proc/sysrq-trigger
Observe in the QMP console the panic events received by the device:
{"timestamp": {"seconds": 1613122186, "microseconds": 141729}, "event":
"GUEST_PANICKED", "data": {"action": "pause"}}
{"timestamp": {"seconds": 1613122186, "microseconds": 141833}, "event":
"GUEST_PANICKED", "data": {"action": "poweroff"}}
{"timestamp": {"seconds": 1613122186, "microseconds": 141896}, "event":
"SHUTDOWN", "data": {"guest": true, "reason": "guest-panic"}}
[1] https://github.com/qemu/qemu/commit/9df52f58e76e904fb141b10318362d718f470db2
Mihai Carabas (3):
misc/pvpanic: split-up generic and platform dependent code
misc/pvpanic: probe multiple instances
misc/pvpanic: add PCI driver
.../ABI/testing/sysfs-bus-pci-devices-pvpanic | 4 +-
drivers/misc/Kconfig | 9 +-
drivers/misc/Makefile | 2 +-
drivers/misc/pvpanic.c | 161 ---------------------
drivers/misc/pvpanic/Kconfig | 27 ++++
drivers/misc/pvpanic/Makefile | 8 +
drivers/misc/pvpanic/pvpanic-mmio.c | 144 ++++++++++++++++++
drivers/misc/pvpanic/pvpanic-pci.c | 125 ++++++++++++++++
drivers/misc/pvpanic/pvpanic.c | 113 +++++++++++++++
drivers/misc/pvpanic/pvpanic.h | 21 +++
10 files changed, 443 insertions(+), 171 deletions(-)
delete mode 100644 drivers/misc/pvpanic.c
create mode 100644 drivers/misc/pvpanic/Kconfig
create mode 100644 drivers/misc/pvpanic/Makefile
create mode 100644 drivers/misc/pvpanic/pvpanic-mmio.c
create mode 100644 drivers/misc/pvpanic/pvpanic-pci.c
create mode 100644 drivers/misc/pvpanic/pvpanic.c
create mode 100644 drivers/misc/pvpanic/pvpanic.h
--
1.8.3.1
next reply other threads:[~2021-03-24 15:38 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-24 14:49 Mihai Carabas [this message]
2021-03-24 14:49 ` [PATCH v8 1/3] misc/pvpanic: split-up generic and platform dependent code Mihai Carabas
2021-03-24 14:49 ` [PATCH v8 2/3] misc/pvpanic: probe multiple instances Mihai Carabas
2021-03-24 14:49 ` [PATCH v8 3/3] misc/pvpanic: add PCI driver Mihai Carabas
2021-03-28 12:57 ` [PATCH v8] add support for pci in the pvpanic driver Greg KH
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=1616597356-20696-1-git-send-email-mihai.carabas@oracle.com \
--to=mihai.carabas@oracle.com \
--cc=arnd@arndb.de \
--cc=bobo.shaobowang@huawei.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rdunlap@infradead.org \
/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.