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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1613121426-15585-1-git-send-email-mihai.carabas@oracle.com>
Date:   Fri, 12 Feb 2021 11:17:03 +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 v2] 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.

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: add PCI driver
  misc/pvpanic: add license

 drivers/misc/Kconfig                  |   9 +--
 drivers/misc/Makefile                 |   2 +-
 drivers/misc/pvpanic.c                | 111 ----------------------------------
 drivers/misc/pvpanic/Kconfig          |  27 +++++++++
 drivers/misc/pvpanic/Makefile         |  11 ++++
 drivers/misc/pvpanic/mmio.c           |  83 +++++++++++++++++++++++++
 drivers/misc/pvpanic/pci.c            |  56 +++++++++++++++++
 drivers/misc/pvpanic/pvpanic-common.c |  60 ++++++++++++++++++
 drivers/misc/pvpanic/pvpanic.h        |  17 ++++++
 9 files changed, 256 insertions(+), 120 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/mmio.c
 create mode 100644 drivers/misc/pvpanic/pci.c
 create mode 100644 drivers/misc/pvpanic/pvpanic-common.c
 create mode 100644 drivers/misc/pvpanic/pvpanic.h

-- 
1.8.3.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ