Commit 2ca5b6e2 authored by Gerald Schaefer's avatar Gerald Schaefer Committed by Heiko Carstens

[S390] Cleanup monreader printk messages.

Signed-off-by: default avatarGerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
parent d3ae942d
...@@ -3,9 +3,8 @@ ...@@ -3,9 +3,8 @@
* *
* Character device driver for reading z/VM *MONITOR service records. * Character device driver for reading z/VM *MONITOR service records.
* *
* Copyright 2004 IBM Corporation, IBM Deutschland Entwicklung GmbH. * Copyright IBM Corp. 2004, 2008
* * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com>
* Author: Gerald Schaefer <geraldsc@de.ibm.com>
*/ */
#include <linux/module.h> #include <linux/module.h>
...@@ -18,12 +17,11 @@ ...@@ -18,12 +17,11 @@
#include <linux/ctype.h> #include <linux/ctype.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/poll.h>
#include <net/iucv/iucv.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/ebcdic.h> #include <asm/ebcdic.h>
#include <asm/extmem.h> #include <asm/extmem.h>
#include <linux/poll.h>
#include <net/iucv/iucv.h>
//#define MON_DEBUG /* Debug messages on/off */ //#define MON_DEBUG /* Debug messages on/off */
...@@ -152,10 +150,7 @@ static int mon_check_mca(struct mon_msg *monmsg) ...@@ -152,10 +150,7 @@ static int mon_check_mca(struct mon_msg *monmsg)
(mon_mca_end(monmsg) > mon_dcss_end) || (mon_mca_end(monmsg) > mon_dcss_end) ||
(mon_mca_start(monmsg) < mon_dcss_start) || (mon_mca_start(monmsg) < mon_dcss_start) ||
((mon_mca_type(monmsg, 1) == 0) && (mon_mca_type(monmsg, 2) == 0))) ((mon_mca_type(monmsg, 1) == 0) && (mon_mca_type(monmsg, 2) == 0)))
{
P_DEBUG("READ, IGNORED INVALID MCA\n\n");
return -EINVAL; return -EINVAL;
}
return 0; return 0;
} }
...@@ -164,10 +159,6 @@ static int mon_send_reply(struct mon_msg *monmsg, ...@@ -164,10 +159,6 @@ static int mon_send_reply(struct mon_msg *monmsg,
{ {
int rc; int rc;
P_DEBUG("read, REPLY: pathid = 0x%04X, msgid = 0x%08X, trgcls = "
"0x%08X\n\n",
monpriv->path->pathid, monmsg->msg.id, monmsg->msg.class);
rc = iucv_message_reply(monpriv->path, &monmsg->msg, rc = iucv_message_reply(monpriv->path, &monmsg->msg,
IUCV_IPRMDATA, NULL, 0); IUCV_IPRMDATA, NULL, 0);
atomic_dec(&monpriv->msglim_count); atomic_dec(&monpriv->msglim_count);
...@@ -202,15 +193,12 @@ static struct mon_private *mon_alloc_mem(void) ...@@ -202,15 +193,12 @@ static struct mon_private *mon_alloc_mem(void)
struct mon_private *monpriv; struct mon_private *monpriv;
monpriv = kzalloc(sizeof(struct mon_private), GFP_KERNEL); monpriv = kzalloc(sizeof(struct mon_private), GFP_KERNEL);
if (!monpriv) { if (!monpriv)
P_ERROR("no memory for monpriv\n");
return NULL; return NULL;
}
for (i = 0; i < MON_MSGLIM; i++) { for (i = 0; i < MON_MSGLIM; i++) {
monpriv->msg_array[i] = kzalloc(sizeof(struct mon_msg), monpriv->msg_array[i] = kzalloc(sizeof(struct mon_msg),
GFP_KERNEL); GFP_KERNEL);
if (!monpriv->msg_array[i]) { if (!monpriv->msg_array[i]) {
P_ERROR("open, no memory for msg_array\n");
mon_free_mem(monpriv); mon_free_mem(monpriv);
return NULL; return NULL;
} }
...@@ -218,41 +206,10 @@ static struct mon_private *mon_alloc_mem(void) ...@@ -218,41 +206,10 @@ static struct mon_private *mon_alloc_mem(void)
return monpriv; return monpriv;
} }
static inline void mon_read_debug(struct mon_msg *monmsg,
struct mon_private *monpriv)
{
#ifdef MON_DEBUG
u8 msg_type[2], mca_type;
unsigned long records_len;
records_len = mon_rec_end(monmsg) - mon_rec_start(monmsg) + 1;
memcpy(msg_type, &monmsg->msg.class, 2);
EBCASC(msg_type, 2);
mca_type = mon_mca_type(monmsg, 0);
EBCASC(&mca_type, 1);
P_DEBUG("read, mon_read_index = %i, mon_write_index = %i\n",
monpriv->read_index, monpriv->write_index);
P_DEBUG("read, pathid = 0x%04X, msgid = 0x%08X, trgcls = 0x%08X\n",
monpriv->path->pathid, monmsg->msg.id, monmsg->msg.class);
P_DEBUG("read, msg_type = '%c%c', mca_type = '%c' / 0x%X / 0x%X\n",
msg_type[0], msg_type[1], mca_type ? mca_type : 'X',
mon_mca_type(monmsg, 1), mon_mca_type(monmsg, 2));
P_DEBUG("read, MCA: start = 0x%lX, end = 0x%lX\n",
mon_mca_start(monmsg), mon_mca_end(monmsg));
P_DEBUG("read, REC: start = 0x%X, end = 0x%X, len = %lu\n\n",
mon_rec_start(monmsg), mon_rec_end(monmsg), records_len);
if (mon_mca_size(monmsg) > 12)
P_DEBUG("READ, MORE THAN ONE MCA\n\n");
#endif
}
static inline void mon_next_mca(struct mon_msg *monmsg) static inline void mon_next_mca(struct mon_msg *monmsg)
{ {
if (likely((mon_mca_size(monmsg) - monmsg->mca_offset) == 12)) if (likely((mon_mca_size(monmsg) - monmsg->mca_offset) == 12))
return; return;
P_DEBUG("READ, NEXT MCA\n\n");
monmsg->mca_offset += 12; monmsg->mca_offset += 12;
monmsg->pos = 0; monmsg->pos = 0;
} }
...@@ -269,7 +226,6 @@ static struct mon_msg *mon_next_message(struct mon_private *monpriv) ...@@ -269,7 +226,6 @@ static struct mon_msg *mon_next_message(struct mon_private *monpriv)
monmsg->msglim_reached = 0; monmsg->msglim_reached = 0;
monmsg->pos = 0; monmsg->pos = 0;
monmsg->mca_offset = 0; monmsg->mca_offset = 0;
P_WARNING("read, message limit reached\n");
monpriv->read_index = (monpriv->read_index + 1) % monpriv->read_index = (monpriv->read_index + 1) %
MON_MSGLIM; MON_MSGLIM;
atomic_dec(&monpriv->read_ready); atomic_dec(&monpriv->read_ready);
...@@ -286,10 +242,6 @@ static void mon_iucv_path_complete(struct iucv_path *path, u8 ipuser[16]) ...@@ -286,10 +242,6 @@ static void mon_iucv_path_complete(struct iucv_path *path, u8 ipuser[16])
{ {
struct mon_private *monpriv = path->private; struct mon_private *monpriv = path->private;
P_DEBUG("IUCV connection completed\n");
P_DEBUG("IUCV ACCEPT (from *MONITOR): Version = 0x%02X, Event = "
"0x%02X, Sample = 0x%02X\n",
ipuser[0], ipuser[1], ipuser[2]);
atomic_set(&monpriv->iucv_connected, 1); atomic_set(&monpriv->iucv_connected, 1);
wake_up(&mon_conn_wait_queue); wake_up(&mon_conn_wait_queue);
} }
...@@ -310,7 +262,6 @@ static void mon_iucv_message_pending(struct iucv_path *path, ...@@ -310,7 +262,6 @@ static void mon_iucv_message_pending(struct iucv_path *path,
{ {
struct mon_private *monpriv = path->private; struct mon_private *monpriv = path->private;
P_DEBUG("IUCV message pending\n");
memcpy(&monpriv->msg_array[monpriv->write_index]->msg, memcpy(&monpriv->msg_array[monpriv->write_index]->msg,
msg, sizeof(*msg)); msg, sizeof(*msg));
if (atomic_inc_return(&monpriv->msglim_count) == MON_MSGLIM) { if (atomic_inc_return(&monpriv->msglim_count) == MON_MSGLIM) {
...@@ -375,7 +326,6 @@ static int mon_open(struct inode *inode, struct file *filp) ...@@ -375,7 +326,6 @@ static int mon_open(struct inode *inode, struct file *filp)
rc = -EIO; rc = -EIO;
goto out_path; goto out_path;
} }
P_INFO("open, established connection to *MONITOR service\n\n");
filp->private_data = monpriv; filp->private_data = monpriv;
return nonseekable_open(inode, filp); return nonseekable_open(inode, filp);
...@@ -400,8 +350,6 @@ static int mon_close(struct inode *inode, struct file *filp) ...@@ -400,8 +350,6 @@ static int mon_close(struct inode *inode, struct file *filp)
rc = iucv_path_sever(monpriv->path, user_data_sever); rc = iucv_path_sever(monpriv->path, user_data_sever);
if (rc) if (rc)
P_ERROR("close, iucv_sever failed with rc = %i\n", rc); P_ERROR("close, iucv_sever failed with rc = %i\n", rc);
else
P_INFO("close, terminated connection to *MONITOR service\n");
atomic_set(&monpriv->iucv_severed, 0); atomic_set(&monpriv->iucv_severed, 0);
atomic_set(&monpriv->iucv_connected, 0); atomic_set(&monpriv->iucv_connected, 0);
...@@ -442,10 +390,8 @@ static ssize_t mon_read(struct file *filp, char __user *data, ...@@ -442,10 +390,8 @@ static ssize_t mon_read(struct file *filp, char __user *data,
monmsg = monpriv->msg_array[monpriv->read_index]; monmsg = monpriv->msg_array[monpriv->read_index];
} }
if (!monmsg->pos) { if (!monmsg->pos)
monmsg->pos = mon_mca_start(monmsg) + monmsg->mca_offset; monmsg->pos = mon_mca_start(monmsg) + monmsg->mca_offset;
mon_read_debug(monmsg, monpriv);
}
if (mon_check_mca(monmsg)) if (mon_check_mca(monmsg))
goto reply; goto reply;
...@@ -531,7 +477,6 @@ static int __init mon_init(void) ...@@ -531,7 +477,6 @@ static int __init mon_init(void)
P_ERROR("failed to register with iucv driver\n"); P_ERROR("failed to register with iucv driver\n");
return rc; return rc;
} }
P_INFO("open, registered with IUCV\n");
rc = segment_type(mon_dcss_name); rc = segment_type(mon_dcss_name);
if (rc < 0) { if (rc < 0) {
...@@ -555,13 +500,8 @@ static int __init mon_init(void) ...@@ -555,13 +500,8 @@ static int __init mon_init(void)
dcss_mkname(mon_dcss_name, &user_data_connect[8]); dcss_mkname(mon_dcss_name, &user_data_connect[8]);
rc = misc_register(&mon_dev); rc = misc_register(&mon_dev);
if (rc < 0 ) { if (rc < 0 )
P_ERROR("misc_register failed, rc = %i\n", rc);
goto out; goto out;
}
P_INFO("Loaded segment %s from %p to %p, size = %lu Byte\n",
mon_dcss_name, (void *) mon_dcss_start, (void *) mon_dcss_end,
mon_dcss_end - mon_dcss_start + 1);
return 0; return 0;
out: out:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment