lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-Id: <1613245447-21495-1-git-send-email-mihai.carabas@oracle.com> Date: Sat, 13 Feb 2021 21:44:04 +0200 From: Mihai Carabas <mihai.carabas@...cle.com> To: linux-kernel@...r.kernel.org Cc: gregkh@...uxfoundation.org, arnd@...db.de, rdunlap@...radead.org, bobo.shaobowang@...wei.com, Mihai Carabas <mihai.carabas@...cle.com> Subject: [PATCH v4] add support for pci in the pvpanic driver 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 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 drivers/misc/Kconfig | 9 +- drivers/misc/Makefile | 2 +- drivers/misc/pvpanic/Kconfig | 25 +++++ drivers/misc/pvpanic/Makefile | 8 ++ drivers/misc/{pvpanic.c => pvpanic/pvpanic-mmio.c} | 43 ++------ drivers/misc/pvpanic/pvpanic-pci.c | 54 ++++++++++ drivers/misc/pvpanic/pvpanic.c | 120 +++++++++++++++++++++ drivers/misc/pvpanic/pvpanic.h | 16 +++ 8 files changed, 232 insertions(+), 45 deletions(-) create mode 100644 drivers/misc/pvpanic/Kconfig create mode 100644 drivers/misc/pvpanic/Makefile rename drivers/misc/{pvpanic.c => pvpanic/pvpanic-mmio.c} (67%) 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
Powered by blists - more mailing lists