Suggested by Paolo, add a module parameter that can be used to limit
which capabilities the driver uses.

Finally, the pvpanic guest driver works by the limitation of both
device capability and user setting.

Signed-off-by: zhenwei pi <pizhen...@bytedance.com>
---
 drivers/misc/pvpanic.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/misc/pvpanic.c b/drivers/misc/pvpanic.c
index e1023c7b8fb0..417f1086e764 100644
--- a/drivers/misc/pvpanic.c
+++ b/drivers/misc/pvpanic.c
@@ -19,6 +19,10 @@
 #include <uapi/misc/pvpanic.h>
 
 static void __iomem *base;
+static unsigned int events = PVPANIC_PANICKED | PVPANIC_CRASH_LOADED;
+module_param(events, uint, 0644);
+MODULE_PARM_DESC(events, "set event limitation of pvpanic device");
+
 static unsigned int capability = PVPANIC_PANICKED | PVPANIC_CRASH_LOADED;
 
 static ssize_t capability_show(struct device *dev,
@@ -48,7 +52,7 @@ MODULE_LICENSE("GPL");
 static void
 pvpanic_send_event(unsigned int event)
 {
-       if (event & capability)
+       if (event & capability & events)
                iowrite8(event, base);
 }
 
-- 
2.25.1

Reply via email to