s390/diag: add a statistic for diagnose calls
Introduce /sys/debug/kernel/diag_stat with a statistic how many diagnose calls have been done by each CPU in the system. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
@@ -28,6 +28,7 @@
|
||||
#include <linux/io.h>
|
||||
#include <linux/kvm_para.h>
|
||||
#include <linux/notifier.h>
|
||||
#include <asm/diag.h>
|
||||
#include <asm/setup.h>
|
||||
#include <asm/irq.h>
|
||||
#include <asm/cio.h>
|
||||
@@ -366,9 +367,9 @@ static void virtio_ccw_drop_indicator(struct virtio_ccw_device *vcdev,
|
||||
kfree(thinint_area);
|
||||
}
|
||||
|
||||
static inline long do_kvm_notify(struct subchannel_id schid,
|
||||
unsigned long queue_index,
|
||||
long cookie)
|
||||
static inline long __do_kvm_notify(struct subchannel_id schid,
|
||||
unsigned long queue_index,
|
||||
long cookie)
|
||||
{
|
||||
register unsigned long __nr asm("1") = KVM_S390_VIRTIO_CCW_NOTIFY;
|
||||
register struct subchannel_id __schid asm("2") = schid;
|
||||
@@ -383,6 +384,14 @@ static inline long do_kvm_notify(struct subchannel_id schid,
|
||||
return __rc;
|
||||
}
|
||||
|
||||
static inline long do_kvm_notify(struct subchannel_id schid,
|
||||
unsigned long queue_index,
|
||||
long cookie)
|
||||
{
|
||||
diag_stat_inc(DIAG_STAT_X500);
|
||||
return __do_kvm_notify(schid, queue_index, cookie);
|
||||
}
|
||||
|
||||
static bool virtio_ccw_kvm_notify(struct virtqueue *vq)
|
||||
{
|
||||
struct virtio_ccw_vq_info *info = vq->priv;
|
||||
|
Reference in New Issue
Block a user