Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b026188e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: (28 commits)
  [S390] rework of channel measurement facility.
  [S390] appldata enhancements.
  [S390] Add vmpanic parameter.
  [S390] add PAV support to the dasd driver.
  [S390] remove export of sys_call_table
  [S390] remove unused macros from binfmt_elf32.c
  [S390] fix duplicate export of overflow{ug}id
  [S390] cio chpid offline.
  [S390] avenrun export in appdata_base.c
  Convert s390_collect_crw_info() in s390mach.c from being started
  [S390] dasd eer data format.
  [S390] preempt_count initialization.
  [S390] head.S code moving.
  [S390] dasd whitespace and other cosmetics.
  [S390] virtual cpu accounting vs. machine checks.
  [S390] add __cpuinit to appldata cpu hotplug notifier.
  [S390] dasd_eckd_dump_sense bug.
  [S390] missing check in dasd_eer_open.
  [S390] modular 3270 driver.
  [S390] console_unblank woes.
  ...
parents 1903ac54 94bb0633
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -1689,9 +1689,14 @@ running once the system is up.
			decrease the size and leave more room for directly
			mapped kernel RAM.

	vmhalt=		[KNL,S390]
	vmhalt=		[KNL,S390] Perform z/VM CP command after system halt.
			Format: <command>

	vmpoff=		[KNL,S390]
	vmpanic=	[KNL,S390] Perform z/VM CP command after kernel panic.
			Format: <command>

	vmpoff=		[KNL,S390] Perform z/VM CP command after power off.
			Format: <command>

	waveartist=	[HW,OSS]
			Format: <io>,<irq>,<dma>,<dma2>
+22 −2
Original line number Diff line number Diff line
@@ -3,9 +3,9 @@
 *
 * Definitions and interface for Linux - z/VM Monitor Stream.
 *
 * Copyright (C) 2003 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 * Copyright (C) 2003,2006 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 *
 * Author: Gerald Schaefer <geraldsc@de.ibm.com>
 * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com>
 */

//#define APPLDATA_DEBUG			/* Debug messages on/off */
@@ -29,6 +29,22 @@
#define CTL_APPLDATA_NET_SUM	2125
#define CTL_APPLDATA_PROC	2126

#ifndef CONFIG_64BIT

#define APPLDATA_START_INTERVAL_REC 0x00	/* Function codes for */
#define APPLDATA_STOP_REC	    0x01	/* DIAG 0xDC	  */
#define APPLDATA_GEN_EVENT_RECORD   0x02
#define APPLDATA_START_CONFIG_REC   0x03

#else

#define APPLDATA_START_INTERVAL_REC 0x80
#define APPLDATA_STOP_REC	    0x81
#define APPLDATA_GEN_EVENT_RECORD   0x82
#define APPLDATA_START_CONFIG_REC   0x83

#endif /* CONFIG_64BIT */

#define P_INFO(x...)	printk(KERN_INFO MY_PRINT_NAME " info: " x)
#define P_ERROR(x...)	printk(KERN_ERR MY_PRINT_NAME " error: " x)
#define P_WARNING(x...)	printk(KERN_WARNING MY_PRINT_NAME " status: " x)
@@ -53,7 +69,11 @@ struct appldata_ops {
	void *data;				/* record data */
	unsigned int size;			/* size of record */
	struct module *owner;			/* THIS_MODULE */
	char mod_lvl[2];			/* modification level, EBCDIC */
};

extern int appldata_register_ops(struct appldata_ops *ops);
extern void appldata_unregister_ops(struct appldata_ops *ops);
extern int appldata_diag(char record_nr, u16 function, unsigned long buffer,
			 u16 length, char *mod_lvl);
+14 −28
Original line number Diff line number Diff line
@@ -5,9 +5,9 @@
 * Exports appldata_register_ops() and appldata_unregister_ops() for the
 * data gathering modules.
 *
 * Copyright (C) 2003 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 * Copyright (C) 2003,2006 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 *
 * Author: Gerald Schaefer <geraldsc@de.ibm.com>
 * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com>
 */

#include <linux/config.h>
@@ -40,22 +40,6 @@

#define TOD_MICRO	0x01000			/* nr. of TOD clock units
						   for 1 microsecond */
#ifndef CONFIG_64BIT

#define APPLDATA_START_INTERVAL_REC 0x00   	/* Function codes for */
#define APPLDATA_STOP_REC	    0x01	/* DIAG 0xDC	  */
#define APPLDATA_GEN_EVENT_RECORD   0x02
#define APPLDATA_START_CONFIG_REC   0x03

#else

#define APPLDATA_START_INTERVAL_REC 0x80
#define APPLDATA_STOP_REC   	    0x81
#define APPLDATA_GEN_EVENT_RECORD   0x82
#define APPLDATA_START_CONFIG_REC   0x83

#endif /* CONFIG_64BIT */


/*
 * Parameter list for DIAGNOSE X'DC'
@@ -195,8 +179,8 @@ static void appldata_work_fn(void *data)
 *
 * prepare parameter list, issue DIAG 0xDC
 */
static int appldata_diag(char record_nr, u16 function, unsigned long buffer,
			u16 length)
int appldata_diag(char record_nr, u16 function, unsigned long buffer,
			u16 length, char *mod_lvl)
{
	unsigned long ry;
	struct appldata_product_id {
@@ -214,7 +198,7 @@ static int appldata_diag(char record_nr, u16 function, unsigned long buffer,
		.record_nr  = record_nr,
		.version_nr = {0xF2, 0xF6},		/* "26" */
		.release_nr = {0xF0, 0xF1},		/* "01" */
		.mod_lvl    = {0xF0, 0xF0},		/* "00" */
		.mod_lvl    = {mod_lvl[0], mod_lvl[1]},
	};
	struct appldata_parameter_list appldata_parameter_list = {
				.diag = 0xDC,
@@ -467,24 +451,25 @@ appldata_generic_handler(ctl_table *ctl, int write, struct file *filp,
			module_put(ops->owner);
			return -ENODEV;
		}
		ops->active = 1;
		ops->callback(ops->data);	// init record
		rc = appldata_diag(ops->record_nr,
					APPLDATA_START_INTERVAL_REC,
					(unsigned long) ops->data, ops->size);
					(unsigned long) ops->data, ops->size,
					ops->mod_lvl);
		if (rc != 0) {
			P_ERROR("START DIAG 0xDC for %s failed, "
				"return code: %d\n", ops->name, rc);
			module_put(ops->owner);
			ops->active = 0;
		} else {
			P_INFO("Monitoring %s data enabled, "
				"DIAG 0xDC started.\n", ops->name);
			ops->active = 1;
		}
	} else if ((buf[0] == '0') && (ops->active == 1)) {
		ops->active = 0;
		rc = appldata_diag(ops->record_nr, APPLDATA_STOP_REC,
				(unsigned long) ops->data, ops->size);
				(unsigned long) ops->data, ops->size,
				ops->mod_lvl);
		if (rc != 0) {
			P_ERROR("STOP DIAG 0xDC for %s failed, "
				"return code: %d\n", ops->name, rc);
@@ -633,7 +618,7 @@ appldata_offline_cpu(int cpu)
	spin_unlock(&appldata_timer_lock);
}

static int
static int __cpuinit
appldata_cpu_notify(struct notifier_block *self,
		    unsigned long action, void *hcpu)
{
@@ -710,7 +695,8 @@ static void __exit appldata_exit(void)
	list_for_each(lh, &appldata_ops_list) {
		ops = list_entry(lh, struct appldata_ops, list);
		rc = appldata_diag(ops->record_nr, APPLDATA_STOP_REC,
				(unsigned long) ops->data, ops->size);
				(unsigned long) ops->data, ops->size,
				ops->mod_lvl);
		if (rc != 0) {
			P_ERROR("STOP DIAG 0xDC for %s failed, "
				"return code: %d\n", ops->name, rc);
@@ -739,6 +725,7 @@ MODULE_DESCRIPTION("Linux-VM Monitor Stream, base infrastructure");

EXPORT_SYMBOL_GPL(appldata_register_ops);
EXPORT_SYMBOL_GPL(appldata_unregister_ops);
EXPORT_SYMBOL_GPL(appldata_diag);

#ifdef MODULE
/*
@@ -779,7 +766,6 @@ unsigned long nr_iowait(void)
#endif /* MODULE */
EXPORT_SYMBOL_GPL(si_swapinfo);
EXPORT_SYMBOL_GPL(nr_threads);
EXPORT_SYMBOL_GPL(avenrun);
EXPORT_SYMBOL_GPL(get_full_page_state);
EXPORT_SYMBOL_GPL(nr_running);
EXPORT_SYMBOL_GPL(nr_iowait);
+3 −2
Original line number Diff line number Diff line
@@ -4,9 +4,9 @@
 * Data gathering module for Linux-VM Monitor Stream, Stage 1.
 * Collects data related to memory management.
 *
 * Copyright (C) 2003 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 * Copyright (C) 2003,2006 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 *
 * Author: Gerald Schaefer <geraldsc@de.ibm.com>
 * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com>
 */

#include <linux/config.h>
@@ -152,6 +152,7 @@ static struct appldata_ops ops = {
	.callback  = &appldata_get_mem_data,
	.data      = &appldata_mem_data,
	.owner     = THIS_MODULE,
	.mod_lvl   = {0xF0, 0xF0},		/* EBCDIC "00" */
};


+3 −2
Original line number Diff line number Diff line
@@ -5,9 +5,9 @@
 * Collects accumulated network statistics (Packets received/transmitted,
 * dropped, errors, ...).
 *
 * Copyright (C) 2003 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 * Copyright (C) 2003,2006 IBM Corporation, IBM Deutschland Entwicklung GmbH.
 *
 * Author: Gerald Schaefer <geraldsc@de.ibm.com>
 * Author: Gerald Schaefer <gerald.schaefer@de.ibm.com>
 */

#include <linux/config.h>
@@ -152,6 +152,7 @@ static struct appldata_ops ops = {
	.callback  = &appldata_get_net_sum_data,
	.data      = &appldata_net_sum_data,
	.owner     = THIS_MODULE,
	.mod_lvl   = {0xF0, 0xF0},		/* EBCDIC "00" */
};


Loading