linux-2.6
16 years ago[S390] Cleanup vmcp printk messages.
Christian Borntraeger [Mon, 14 Jul 2008 07:59:43 +0000 (09:59 +0200)] 
[S390] Cleanup vmcp printk messages.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup lcs printk messages.
Klaus-D. Wacker [Mon, 14 Jul 2008 07:59:42 +0000 (09:59 +0200)] 
[S390] Cleanup lcs printk messages.

Cc: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Klaus-D. Wacker <kdwacker@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup kprobes printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:41 +0000 (09:59 +0200)] 
[S390] Cleanup kprobes printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup vmwatch printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:40 +0000 (09:59 +0200)] 
[S390] Cleanup vmwatch printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup dcssblk printk messages.
Hongjie Yang [Mon, 14 Jul 2008 07:59:39 +0000 (09:59 +0200)] 
[S390] Cleanup dcssblk printk messages.

Signed-off-by: Hongjie Yang <hongjie@us.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup zfcp dumper printk messages.
Michael Holzheu [Mon, 14 Jul 2008 07:59:38 +0000 (09:59 +0200)] 
[S390] Cleanup zfcp dumper printk messages.

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup vmlogrdr printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:37 +0000 (09:59 +0200)] 
[S390] Cleanup vmlogrdr printk messages.

The message descriptions are still missing though ..

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup s390 debug feature print messages.
Michael Holzheu [Mon, 14 Jul 2008 07:59:36 +0000 (09:59 +0200)] 
[S390] Cleanup s390 debug feature print messages.

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup monreader printk messages.
Gerald Schaefer [Mon, 14 Jul 2008 07:59:35 +0000 (09:59 +0200)] 
[S390] Cleanup monreader printk messages.

Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup appldata printk messages.
Gerald Schaefer [Mon, 14 Jul 2008 07:59:34 +0000 (09:59 +0200)] 
[S390] Cleanup appldata printk messages.

Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup smsgiucv printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:33 +0000 (09:59 +0200)] 
[S390] Cleanup smsgiucv printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup cpacf printk messages.
Jan Glauber [Mon, 14 Jul 2008 07:59:32 +0000 (09:59 +0200)] 
[S390] Cleanup cpacf printk messages.

Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup qeth print messages.
Frank Blaschka [Mon, 14 Jul 2008 07:59:31 +0000 (09:59 +0200)] 
[S390] Cleanup qeth print messages.

Cc: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup netiucv printk messages.
Ursula Braun [Mon, 14 Jul 2008 07:59:30 +0000 (09:59 +0200)] 
[S390] Cleanup netiucv printk messages.

Cc: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Cleanup iucv printk messages.
Ursula Braun [Mon, 14 Jul 2008 07:59:29 +0000 (09:59 +0200)] 
[S390] Cleanup iucv printk messages.

Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup sclp printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:28 +0000 (09:59 +0200)] 
[S390] Cleanup sclp printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup zcrypt printk messages.
Felix Beck [Mon, 14 Jul 2008 07:59:27 +0000 (09:59 +0200)] 
[S390] Cleanup zcrypt printk messages.

Signed-off-by: Felix Beck <felix.beck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup 3215 printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:26 +0000 (09:59 +0200)] 
[S390] Cleanup 3215 printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup 3270 printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:25 +0000 (09:59 +0200)] 
[S390] Cleanup 3270 printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup xpram printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:24 +0000 (09:59 +0200)] 
[S390] Cleanup xpram printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup vtime printk messages.
Martin Schwidefsky [Mon, 14 Jul 2008 07:59:23 +0000 (09:59 +0200)] 
[S390] Cleanup vtime printk messages.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Cleanup cio printk messages.
Michael Ernst [Mon, 14 Jul 2008 07:59:22 +0000 (09:59 +0200)] 
[S390] Cleanup cio printk messages.

Unnecessary dev_info, dev_warn and printk messages are removed.

Signed-off-by: Michael Ernst <mernst@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Move memory detection code to own file.
Heiko Carstens [Mon, 14 Jul 2008 07:59:21 +0000 (09:59 +0200)] 
[S390] Move memory detection code to own file.

Move memory detection code to own file and also simplify it.
Also add an interface which can be called at any time to get the
current memory layout. This interface is needed by our kernel
internal system dumper.

Cc: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Cc: Michael Holzheu <holzheu@de.ibm.com>
Cc: Frank Munzert <munzert@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] cio: fix double unregistering of subchannels
Sebastian Ott [Mon, 14 Jul 2008 07:59:20 +0000 (09:59 +0200)] 
[S390] cio: fix double unregistering of subchannels

In some cases where the channel subsystem decides to drop a subchannel
device device_unregister may be called twice, which results in an oops.
The patch prevents this by only unregistering registered devices.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Add support for memory hot-add via sclp.
Heiko Carstens [Mon, 14 Jul 2008 07:59:19 +0000 (09:59 +0200)] 
[S390] Add support for memory hot-add via sclp.

Cc: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Add support for memory hot-add.
Heiko Carstens [Mon, 14 Jul 2008 07:59:18 +0000 (09:59 +0200)] 
[S390] Add support for memory hot-add.

Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] s390: use memory_read_from_buffer()
Akinobu Mita [Mon, 14 Jul 2008 07:59:17 +0000 (09:59 +0200)] 
[S390] s390: use memory_read_from_buffer()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] s390: use simple_read_from_buffer()
Akinobu Mita [Mon, 14 Jul 2008 07:59:16 +0000 (09:59 +0200)] 
[S390] s390: use simple_read_from_buffer()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] s390/cio: use memory_read_from_buffer()
Akinobu Mita [Mon, 14 Jul 2008 07:59:15 +0000 (09:59 +0200)] 
[S390] s390/cio: use memory_read_from_buffer()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] s390/vmcp: use simple_read_from_buffer()
Akinobu Mita [Mon, 14 Jul 2008 07:59:14 +0000 (09:59 +0200)] 
[S390] s390/vmcp: use simple_read_from_buffer()

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] drivers/s390: Eliminate NULL test and memset after alloc_bootmem
Julia Lawall [Mon, 14 Jul 2008 07:59:13 +0000 (09:59 +0200)] 
[S390] drivers/s390: Eliminate NULL test and memset after alloc_bootmem

As noted by Akinobu Mita in patch b1fceac2b9e04d278316b2faddf276015fc06e3b,
alloc_bootmem and related functions never return NULL and always return a
zeroed region of memory.  Thus a NULL test or memset after calls to these
functions is unnecessary.

 drivers/s390/char/raw3270.c  |   11 +----------
 drivers/s390/char/sclp_con.c |    2 --
 2 files changed, 1 insertion(+), 12 deletions(-)

This was fixed using the following semantic patch.
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
expression E;
statement S;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
... when != E
(
- BUG_ON (E == NULL);
|
- if (E == NULL) S
)

@@
expression E,E1;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
... when != E
- memset(E,0,E1);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] arch/s390: Eliminate NULL test and memset after alloc_bootmem
Julia Lawall [Mon, 14 Jul 2008 07:59:12 +0000 (09:59 +0200)] 
[S390] arch/s390: Eliminate NULL test and memset after alloc_bootmem

As noted by Akinobu Mita in patch b1fceac2b9e04d278316b2faddf276015fc06e3b,
alloc_bootmem and related functions never return NULL and always return a
zeroed region of memory.  Thus a NULL test or memset after calls to these
functions is unnecessary.

 arch/s390/kernel/topology.c |    2 --
 1 file changed, 2 deletions(-)

This was fixed using the following semantic patch.
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
expression E;
statement S;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
... when != E
(
- BUG_ON (E == NULL);
|
- if (E == NULL) S
)

@@
expression E,E1;
@@

E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\)(...)
... when != E
- memset(E,0,E1);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Add sched.h include to asm-s390/pgtable.h.
Heiko Carstens [Mon, 14 Jul 2008 07:59:11 +0000 (09:59 +0200)] 
[S390] Add sched.h include to asm-s390/pgtable.h.

Some macros in pgtable.h access members from struct task_struct.
Currently always works since sched.h seems always to be included
before asm/pgtable.h. Unfortunately that is not anymore true with
Jeremy Fitzhardinge's ptep_modify_prot transaction abstraction patch.
So fix this.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] zcrypt: Add additional card IDs to CEX2C and CEX2A
Ralph Wuerthner [Mon, 14 Jul 2008 07:59:10 +0000 (09:59 +0200)] 
[S390] zcrypt: Add additional card IDs to CEX2C and CEX2A

Add support for new micro code load of CEX2C and CEX2A adapters,
which uses different IDs.  This patch just adds the IDs to the
existing drivers.

Signed-off-by: Ralph Wuerthner <ralph.wuerthner@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Extra Kernel Parameters via VMPARM
Hendrik Brueckner [Mon, 14 Jul 2008 07:59:09 +0000 (09:59 +0200)] 
[S390] Extra Kernel Parameters via VMPARM

Now it is possible to specify additional kernel parameters on the IPL
command line using the IPL PARM option.
If the Linux system is already running, the new reipl sysfs attribute
'parm' can be used to change kernel parameters for the next reboot.
Examples:
  IPL    C PARM dasd=1234 root=/dev/dasda1
  IPL 1234 PARM savesys=mylnxnss
  echo "init=/bin/bash" > /sys/firmware/reipl/ccw/parm

Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] ap: Use high-resolution timer for polling
Felix Beck [Mon, 14 Jul 2008 07:59:08 +0000 (09:59 +0200)] 
[S390] ap: Use high-resolution timer for polling

The ap poll mechanism is converted to use a high-resolution timer for
polling. This allows more specific polling. With this a new sysfs
attribute is introduced to specify the polling rate in nanoseconds.

Signed-off-by: Felix Beck <felix.beck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] sclp: simplify vt220 cleanup logic
Peter Oberparleiter [Mon, 14 Jul 2008 07:59:07 +0000 (09:59 +0200)] 
[S390] sclp: simplify vt220 cleanup logic

Fix a number of sclp_vt220 cleanup problems:
* fix list_empty check after list_del()
* mark init-only flag as __initdata
* remove implicit dependency between slab_available() and num_pages
* straighten multiple init handling (use init count)

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] idle: remove idle notifier chain.
Heiko Carstens [Mon, 14 Jul 2008 07:59:06 +0000 (09:59 +0200)] 
[S390] idle: remove idle notifier chain.

The idle notifier chain consists of at most one element. So there's
no point in having a notifier chain. Remove it and directly call the
function.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] cio: Add chsc subchannel driver.
Cornelia Huck [Mon, 14 Jul 2008 07:59:05 +0000 (09:59 +0200)] 
[S390] cio: Add chsc subchannel driver.

This patch adds a driver for subchannels of type chsc.

A device /dev/chsc is created which may be used to issue ioctls to:
- obtain information about the machine's I/O configuration
- dynamically change the machine's I/O configuration via
  asynchronous chsc commands

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: suppress chpid event in case of configure error
Peter Oberparleiter [Mon, 14 Jul 2008 07:59:04 +0000 (09:59 +0200)] 
[S390] cio: suppress chpid event in case of configure error

Do not send CHP_ONLINE/CHP_OFFLINE events to subchannel drivers when a
channel-path configure request failed.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] css: Use css_device_id for bus matching.
Cornelia Huck [Mon, 14 Jul 2008 07:59:03 +0000 (09:59 +0200)] 
[S390] css: Use css_device_id for bus matching.

css_device_id exists, so use it for determining the right driver
(and add a match_flags which is always 1 for valid types).

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Repair chpid event handling.
Cornelia Huck [Mon, 14 Jul 2008 07:59:02 +0000 (09:59 +0200)] 
[S390] cio: Repair chpid event handling.

Passing the affected chpid in chp_event() worked only by
chance since chpid is the first element in res_acc_data.
Make it work properly by generalizing res_acc_data as
chp_link and always passing around a properly filled out
chp_link structure in chp_event().

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Use isc_{register,unregister}.
Cornelia Huck [Mon, 14 Jul 2008 07:59:01 +0000 (09:59 +0200)] 
[S390] cio: Use isc_{register,unregister}.

Use the new isc registration functions for all places that need
an I/O interruption subclass.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: introduce isc_(un)register functions.
Sebastian Ott [Mon, 14 Jul 2008 07:59:00 +0000 (09:59 +0200)] 
[S390] cio: introduce isc_(un)register functions.

This interface makes it easy for drivers to register usage of different
I/O interruption subclasses without needing to worry about possible
other users of the same isc.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Allow adapter interrupt handlers per isc.
Cornelia Huck [Mon, 14 Jul 2008 07:58:59 +0000 (09:58 +0200)] 
[S390] cio: Allow adapter interrupt handlers per isc.

Enhance the adapter interruption API so that device drivers can
register a handler for a specific interruption subclass. This
will allow different device drivers to move to differently
prioritized subclasses in order to avoid congestion.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Introduce abstract isc definitions.
Cornelia Huck [Mon, 14 Jul 2008 07:58:58 +0000 (09:58 +0200)] 
[S390] cio: Introduce abstract isc definitions.

Replace the numeric values for I/O interruption subclass usage
with abstract definitions and collect them all in asm/isc.h.
This gives us a better overview of which iscs are actually used
and makes it possible to better spread out isc usage in the
future.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Get rid of css_characteristics_avail.
Cornelia Huck [Mon, 14 Jul 2008 07:58:57 +0000 (09:58 +0200)] 
[S390] cio: Get rid of css_characteristics_avail.

Checking for the validity of the css_*_characteristics is
superfluous since they stay 0 for non-successful scsc.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] stp support.
Martin Schwidefsky [Mon, 14 Jul 2008 07:58:56 +0000 (09:58 +0200)] 
[S390] stp support.

Add support for clock synchronization with the server time protocol.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] initrd vs bss section clearing.
Heiko Carstens [Mon, 14 Jul 2008 07:58:55 +0000 (09:58 +0200)] 
[S390] initrd vs bss section clearing.

In case the initrd is located within the bss section it will be
overwritten when the section is cleared. To prevent this just move
the initrd right behind the bss section if it starts within the
section.
The current code already moves the initrd if the bootmem allocator
bitmap would overwrite it. With this patch we should be safe against
initrd corruptions.

Cc: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Introduce user_regset accessors for s390
Martin Schwidefsky [Mon, 14 Jul 2008 07:58:54 +0000 (09:58 +0200)] 
[S390] Introduce user_regset accessors for s390

Add the user_regset definitions for normal and compat processes, replace
the dump_regs core dump cruft with the generic CORE_DUMP_USER_REGSET and
replace binfmt_elf32.c with the generic compat_binfmt_elf.c implementation.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: remove lock from ccw_device_oper_notify.
Sebastian Ott [Mon, 14 Jul 2008 07:58:53 +0000 (09:58 +0200)] 
[S390] cio: remove lock from ccw_device_oper_notify.

Remove unnecessary ccw device locking inside ccw_device_oper_notify.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: provide helper functions for fcx enabled I/O
Peter Oberparleiter [Mon, 14 Jul 2008 07:58:52 +0000 (09:58 +0200)] 
[S390] cio: provide helper functions for fcx enabled I/O

Provide functions which can be used to incrementally construct fcx
enabled I/O control blocks.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: provide functions for fcx enabled I/O
Peter Oberparleiter [Mon, 14 Jul 2008 07:58:51 +0000 (09:58 +0200)] 
[S390] cio: provide functions for fcx enabled I/O

Provide functions for assembling and starting fcx enabled I/O request
blocks.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: introduce fcx enabled scsw format
Peter Oberparleiter [Mon, 14 Jul 2008 07:58:50 +0000 (09:58 +0200)] 
[S390] cio: introduce fcx enabled scsw format

Extend the scsw data structure to the format required by fcx. Also
provide helper functions for easier access to fields which are present
in both the traditional as well as the modified format.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: introduce fcx bit to chsc characteristics
Peter Oberparleiter [Mon, 14 Jul 2008 07:58:49 +0000 (09:58 +0200)] 
[S390] cio: introduce fcx bit to chsc characteristics

Introduce fcx bit to chsc characteristics.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Base message subchannel handling.
Cornelia Huck [Mon, 14 Jul 2008 07:58:48 +0000 (09:58 +0200)] 
[S390] cio: Base message subchannel handling.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Export some symbols for modular css drivers.
Cornelia Huck [Mon, 14 Jul 2008 07:58:47 +0000 (09:58 +0200)] 
[S390] cio: Export some symbols for modular css drivers.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Cleanup crw interface.
Cornelia Huck [Mon, 14 Jul 2008 07:58:46 +0000 (09:58 +0200)] 
[S390] cio: Cleanup crw interface.

Eliminate the need for the machine check handler to call into
the common I/O layer directly by introducing an interface to
register handlers for crws per rsc.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Rework css driver.
Cornelia Huck [Mon, 14 Jul 2008 07:58:45 +0000 (09:58 +0200)] 
[S390] cio: Rework css driver.

Rework the css driver methods to provide sane callbacks for
subchannels of all types.

As a bonus, this cleans up and simplyfies the machine check
handling for I/O subchannels a lot.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Introduce modalias for css bus.
Cornelia Huck [Mon, 14 Jul 2008 07:58:44 +0000 (09:58 +0200)] 
[S390] cio: Introduce modalias for css bus.

Add modalias and subchannel type attributes for all subchannels.
I/O subchannel specific attributes are now created in
io_subchannel_probe(). modalias and subchannel type are also
added to the uevent for the css bus. Also make the css modalias
known.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Register all subchannels.
Cornelia Huck [Mon, 14 Jul 2008 07:58:43 +0000 (09:58 +0200)] 
[S390] cio: Register all subchannels.

Register all valid subchannels, not only I/O subchannels.
Move I/O subchannel specific initialization to io_subchannel_probe().

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] Remove ipldelay kernel parameter.
Heiko Carstens [Mon, 14 Jul 2008 07:57:29 +0000 (09:57 +0200)] 
[S390] Remove ipldelay kernel parameter.

Using the ipldelay kernel parameter leads to a crash at IPL time.
Since this is broken since a long time it looks like nobody is using
it anymore. So remove it instead of fixing it.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] sclp: fix possible deadlock on cpu rescan.
Heiko Carstens [Mon, 14 Jul 2008 07:57:28 +0000 (09:57 +0200)] 
[S390] sclp: fix possible deadlock on cpu rescan.

smp_rescan_cpus() calls get_online_cpus() from a multithreaded
workqueue context. This may deadlock. This is the same bug as in
arch/s390/kernel/topology.c. This patch can be reverted as soon as
Oleg's patch gets merged.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] make appldata compile w/o CONFIG_SWAP
Gerald Schaefer [Mon, 14 Jul 2008 07:57:27 +0000 (09:57 +0200)] 
[S390] make appldata compile w/o CONFIG_SWAP

Avoid compile error by using EXPORT_SYMBOL_GPL(si_swapinfo) only if
CONFIG_SWAP is set.

Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] sclp: keep facility mask up to date.
Heiko Carstens [Mon, 14 Jul 2008 07:57:26 +0000 (09:57 +0200)] 
[S390] sclp: keep facility mask up to date.

In case the supported sclp facilities change
the new mask should be saved.

Cc: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] qdio: Repair timeout handling for qdio_shutdown
Ursula Braun [Mon, 14 Jul 2008 07:57:25 +0000 (09:57 +0200)] 
[S390] qdio: Repair timeout handling for qdio_shutdown

If qdio shutdown runs in parallel with a channel error,
the qdio_timeout_handler might not be triggered.
In this case neither state INACTIVE nor state ERR
is reached and the following wait_event hangs forever.
Solution: do not make use of ccw_device_set_timeout(),
but add a timeout to the following wait_event.
And make sure, wake_up is called in case of an
i/o error on the qdio-device.

Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Use locks when accessing /sys/firmware/cpi data.
Michael Ernst [Mon, 14 Jul 2008 07:57:24 +0000 (09:57 +0200)] 
[S390] cio: Use locks when accessing /sys/firmware/cpi data.

Mutex locks are used to avoid problems when /sys/firmware/cpi data
are accessed to in parallel.

Signed-off-by: Michael Ernst <mernst@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] cio: Clear correct bit in cio_release_console().
Cornelia Huck [Mon, 14 Jul 2008 07:57:23 +0000 (09:57 +0200)] 
[S390] cio: Clear correct bit in cio_release_console().

Fallout from the console isc 7 -> 1 change.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years agopcmcia: Fix ide-cs sparse warning
Larry Finger [Sun, 13 Jul 2008 17:46:36 +0000 (12:46 -0500)] 
pcmcia: Fix ide-cs sparse warning

Sparse shows the following warning:

  CHECK   drivers/ide/legacy/ide-cs.c
drivers/ide/legacy/ide-cs.c:378:6: warning: symbol 'ide_release' was
not declared. Should it be static?

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
CC: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
16 years agoALSA: Release v1.0.17
Jaroslav Kysela [Mon, 14 Jul 2008 07:54:43 +0000 (09:54 +0200)] 
ALSA: Release v1.0.17

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agox86: make 64bit hpet_set_mapping to use ioremap too, v2
Yinghai Lu [Sun, 13 Jul 2008 21:50:56 +0000 (14:50 -0700)] 
x86: make 64bit hpet_set_mapping to use ioremap too, v2

keep the one for VSYSCALL_HPET

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: get x86_phys_bits early
Yinghai Lu [Sun, 13 Jul 2008 21:30:35 +0000 (14:30 -0700)] 
x86: get x86_phys_bits early

when try to make hpet_enable use io_remap instead fixmap got

ioremap: invalid physical address fed00000
------------[ cut here ]------------
WARNING: at arch/x86/mm/ioremap.c:161 __ioremap_caller+0x8c/0x2f3()
Modules linked in:
Pid: 0, comm: swapper Not tainted 2.6.26-rc9-tip-01873-ga9827e7-dirty #358

Call Trace:
 [<ffffffff8026615e>] warn_on_slowpath+0x6c/0xa7
 [<ffffffff802e2313>] ? __slab_alloc+0x20a/0x3fb
 [<ffffffff802d85c5>] ? mpol_new+0x88/0x17d
 [<ffffffff8022a4f4>] ? mcount_call+0x5/0x31
 [<ffffffff8022a4f4>] ? mcount_call+0x5/0x31
 [<ffffffff8024b0d2>] __ioremap_caller+0x8c/0x2f3
 [<ffffffff80e86dbd>] ? hpet_enable+0x39/0x241
 [<ffffffff8022a4f4>] ? mcount_call+0x5/0x31
 [<ffffffff8024b466>] ioremap_nocache+0x2a/0x40
 [<ffffffff80e86dbd>] hpet_enable+0x39/0x241
 [<ffffffff80e7a1f6>] hpet_time_init+0x21/0x4e
 [<ffffffff80e730e9>] start_kernel+0x302/0x395
 [<ffffffff80e722aa>] x86_64_start_reservations+0xb9/0xd4
 [<ffffffff80e722fe>] ? x86_64_init_pda+0x39/0x4f
 [<ffffffff80e72400>] x86_64_start_kernel+0xec/0x107

---[ end trace a7919e7f17c0a725 ]---

it seems for amd system that is set later...
try to move setting early in early_identify_cpu.
and remove same code for intel and centaur.

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: max_low_pfn_mapped fix #4
Yinghai Lu [Sun, 13 Jul 2008 21:29:41 +0000 (14:29 -0700)] 
x86: max_low_pfn_mapped fix #4

only add direct mapping for aperture

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoALSA: correct kcalloc usage
Milton Miller [Sun, 13 Jul 2008 11:58:12 +0000 (13:58 +0200)] 
ALSA: correct kcalloc usage

kcalloc is supposed to be called with the count as its first argument and the
element size as the second.

Both arguments are size_t so does not affect correctness.  This callsite is
during module_init and therefore not performance critical.  Another patch will
optimize the case when the count is variable but the size is fixed.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ALSA driver for SGI O2 audio board
Thomas Bogendoerfer [Sat, 12 Jul 2008 20:43:50 +0000 (22:43 +0200)] 
ALSA: ALSA driver for SGI O2 audio board

This patch adds a new ALSA driver for the audio device found inside
most of the SGI O2 workstation. The hardware uses a SGI custom chip,
which feeds a AD codec chip.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.
Liam Girdwood [Fri, 11 Jul 2008 13:05:17 +0000 (14:05 +0100)] 
ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.

We don't want to see ASoC platform menus for other non selected
architectures in our config.

Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ALSA driver for SGI HAL2 audio device
Thomas Bogendoerfer [Sat, 12 Jul 2008 10:12:20 +0000 (12:12 +0200)] 
ALSA: ALSA driver for SGI HAL2 audio device

This patch adds a new ALSA driver for the audio device found inside
many older SGI workstation (Indy, Indigo2). The hardware uses a SGI
custom chip, which feeds two codec chips, an IEC chip and a synth chip.
Currently only one of the codecs is supported. This driver already has
the same functionality as the HAL2 OSS driver and will replace it.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Fix FSC V5505 model
Takashi Iwai [Sat, 12 Jul 2008 10:05:25 +0000 (12:05 +0200)] 
ALSA: hda - Fix FSC V5505 model

model=laptop-hpmicsense matches better to FSC V5505 laptop.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Fix missing init for unsol events on micsense model
Takashi Iwai [Sat, 12 Jul 2008 10:04:05 +0000 (12:04 +0200)] 
ALSA: hda - Fix missing init for unsol events on micsense model

Fixed the missing initialization for unsolicited events on
Cx5045 micsense model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Fix internal mic vref pin setup
Takashi Iwai [Sat, 12 Jul 2008 10:02:45 +0000 (12:02 +0200)] 
ALSA: hda - Fix internal mic vref pin setup

Set the vref80 to the internal mic pin 0x12 for Cx5045.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: 92hd71bxx PC Beep
Matthew Ranostay [Thu, 10 Jul 2008 15:49:11 +0000 (17:49 +0200)] 
ALSA: hda: 92hd71bxx PC Beep

Added volume controls for the analog PC Beep on 92hd71bxx codecs.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosecurity: remove register_security hook
James Morris [Thu, 10 Jul 2008 08:02:07 +0000 (17:02 +0900)] 
security: remove register_security hook

The register security hook is no longer required, as the capability
module is always registered.  LSMs wishing to stack capability as
a secondary module should do so explicitly.

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agosecurity: remove dummy module fix
Miklos Szeredi [Thu, 10 Jul 2008 09:10:09 +0000 (11:10 +0200)] 
security: remove dummy module fix

Fix small oversight in "security: remove dummy module":
CONFIG_SECURITY_FILE_CAPABILITIES doesn't depend on CONFIG_SECURITY

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agosecurity: remove dummy module
Miklos Szeredi [Thu, 3 Jul 2008 18:56:05 +0000 (20:56 +0200)] 
security: remove dummy module

Remove the dummy module and make the "capability" module the default.

Compile and boot tested.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agosecurity: remove unused sb_get_mnt_opts hook
Miklos Szeredi [Thu, 3 Jul 2008 18:56:04 +0000 (20:56 +0200)] 
security: remove unused sb_get_mnt_opts hook

The sb_get_mnt_opts() hook is unused, and is superseded by the
sb_show_options() hook.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Acked-by: James Morris <jmorris@namei.org>
16 years agoLSM/SELinux: show LSM mount options in /proc/mounts
Eric Paris [Thu, 3 Jul 2008 23:47:13 +0000 (09:47 +1000)] 
LSM/SELinux: show LSM mount options in /proc/mounts

This patch causes SELinux mount options to show up in /proc/mounts.  As
with other code in the area seq_put errors are ignored.  Other LSM's
will not have their mount options displayed until they fill in their own
security_sb_show_options() function.

Signed-off-by: Eric Paris <eparis@redhat.com>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoSELinux: allow fstype unknown to policy to use xattrs if present
Eric Paris [Wed, 18 Jun 2008 13:50:04 +0000 (09:50 -0400)] 
SELinux: allow fstype unknown to policy to use xattrs if present

Currently if a FS is mounted for which SELinux policy does not define an
fs_use_* that FS will either be genfs labeled or not labeled at all.
This decision is based on the existence of a genfscon rule in policy and
is irrespective of the capabilities of the filesystem itself.  This
patch allows the kernel to check if the filesystem supports security
xattrs and if so will use those if there is no fs_use_* rule in policy.
An fstype with a no fs_use_* rule but with a genfs rule will use xattrs
if available and will follow the genfs rule.

This can be particularly interesting for things like ecryptfs which
actually overlays a real underlying FS.  If we define excryptfs in
policy to use xattrs we will likely get this wrong at times, so with
this path we just don't need to define it!

Overlay ecryptfs on top of NFS with no xattr support:
SELinux: initialized (dev ecryptfs, type ecryptfs), uses genfs_contexts
Overlay ecryptfs on top of ext4 with xattr support:
SELinux: initialized (dev ecryptfs, type ecryptfs), uses xattr

It is also useful as the kernel adds new FS we don't need to add them in
policy if they support xattrs and that is how we want to handle them.

Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agosecurity: fix return of void-valued expressions
James Morris [Wed, 11 Jun 2008 15:00:10 +0000 (01:00 +1000)] 
security: fix return of void-valued expressions

Fix several warnings generated by sparse of the form
"returning void-valued expression".

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Casey Schaufler <casey@schaufler-ca.com>
Acked-by: Serge Hallyn <serue@us.ibm.com>
16 years agoSELinux: use do_each_thread as a proper do/while block
James Morris [Wed, 11 Jun 2008 15:42:35 +0000 (01:42 +1000)] 
SELinux: use do_each_thread as a proper do/while block

Use do_each_thread as a proper do/while block.  Sparse complained.

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
16 years agoSELinux: remove unused and shadowed addrlen variable
James Morris [Wed, 11 Jun 2008 15:39:58 +0000 (01:39 +1000)] 
SELinux: remove unused and shadowed addrlen variable

Remove unused and shadowed addrlen variable.  Picked up by sparse.

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Acked-by: Paul Moore <paul.moore@hp.com>
16 years agoSELinux: more user friendly unknown handling printk
Eric Paris [Mon, 9 Jun 2008 20:51:37 +0000 (16:51 -0400)] 
SELinux: more user friendly unknown handling printk

I've gotten complaints and reports about people not understanding the
meaning of the current unknown class/perm handling the kernel emits on
every policy load.  Hopefully this will make make it clear to everyone
the meaning of the message and won't waste a printk the user won't care
about anyway on systems where the kernel and the policy agree on
everything.

Signed-off-by: Eric Paris <eparis@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoselinux: change handling of invalid classes (Was: Re: 2.6.26-rc5-mm1 selinux whine)
Stephen Smalley [Mon, 9 Jun 2008 20:03:56 +0000 (16:03 -0400)] 
selinux: change handling of invalid classes (Was: Re: 2.6.26-rc5-mm1 selinux whine)

On Mon, 2008-06-09 at 01:24 -0700, Andrew Morton wrote:
> Getting a few of these with FC5:
>
> SELinux: context_struct_compute_av:  unrecognized class 69
> SELinux: context_struct_compute_av:  unrecognized class 69
>
> one came out when I logged in.
>
> No other symptoms, yet.

Change handling of invalid classes by SELinux, reporting class values
unknown to the kernel as errors (w/ ratelimit applied) and handling
class values unknown to policy as normal denials.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Acked-by: Eric Paris <eparis@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoSELinux: drop load_mutex in security_load_policy
Eric Paris [Mon, 9 Jun 2008 19:58:04 +0000 (15:58 -0400)] 
SELinux: drop load_mutex in security_load_policy

We used to protect against races of policy load in security_load_policy
by using the load_mutex.  Since then we have added a new mutex,
sel_mutex, in sel_write_load() which is always held across all calls to
security_load_policy we are covered and can safely just drop this one.

Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoSELinux: fix off by 1 reference of class_to_string in context_struct_compute_av
Eric Paris [Mon, 9 Jun 2008 19:43:12 +0000 (15:43 -0400)] 
SELinux: fix off by 1 reference of class_to_string in context_struct_compute_av

The class_to_string array is referenced by tclass.  My code mistakenly
was using tclass - 1.  If the proceeding class is a userspace class
rather than kernel class this may cause a denial/EINVAL even if unknown
handling is set to allow.  The bug shouldn't be allowing excess
privileges since those are given based on the contents of another array
which should be correctly referenced.

At this point in time its pretty unlikely this is going to cause
problems.  The most recently added kernel classes which could be
affected are association, dccp_socket, and peer.  Its pretty unlikely
any policy with handle_unknown=allow doesn't have association and
dccp_socket undefined (they've been around longer than unknown handling)
and peer is conditionalized on a policy cap which should only be defined
if that class exists in policy.

Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoSELinux: open code sidtab lock
James Morris [Fri, 6 Jun 2008 08:50:12 +0000 (18:50 +1000)] 
SELinux: open code sidtab lock

Open code sidtab lock to make Andrew Morton happy.

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
16 years agoSELinux: open code load_mutex
James Morris [Fri, 6 Jun 2008 08:43:26 +0000 (18:43 +1000)] 
SELinux: open code load_mutex

Open code load_mutex as suggested by Andrew Morton.

Signed-off-by: James Morris <jmorris@namei.org>
16 years agoSELinux: open code policy_rwlock
James Morris [Fri, 6 Jun 2008 08:40:29 +0000 (18:40 +1000)] 
SELinux: open code policy_rwlock

Open code policy_rwlock, as suggested by Andrew Morton.

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
16 years agoselinux: fix endianness bug in network node address handling
Stephen Smalley [Thu, 5 Jun 2008 13:48:51 +0000 (09:48 -0400)] 
selinux: fix endianness bug in network node address handling

Fix an endianness bug in the handling of network node addresses by
SELinux.  This yields no change on little endian hardware but fixes
the incorrect handling on big endian hardware.  The network node
addresses are stored in network order in memory by checkpolicy, not in
cpu/host order, and thus should not have cpu_to_le32/le32_to_cpu
conversions applied upon policy write/read unlike other data in the
policy.

Bug reported by John Weeks of Sun, who noticed that binary policy
files built from the same policy source on x86 and sparc differed and
tracked it down to the ipv4 address handling in checkpolicy.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoselinux: simplify ioctl checking
Stephen Smalley [Thu, 5 Jun 2008 13:21:28 +0000 (09:21 -0400)] 
selinux: simplify ioctl checking

Simplify and improve the robustness of the SELinux ioctl checking by
using the "access mode" bits of the ioctl command to determine the
permission check rather than dealing with individual command values.
This removes any knowledge of specific ioctl commands from SELinux
and follows the same guidance we gave to Smack earlier.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
16 years agoSELinux: enable processes with mac_admin to get the raw inode contexts
Stephen Smalley [Wed, 21 May 2008 18:16:12 +0000 (14:16 -0400)] 
SELinux: enable processes with mac_admin to get the raw inode contexts

Enable processes with CAP_MAC_ADMIN + mac_admin permission in policy
to get undefined contexts on inodes.  This extends the support for
deferred mapping of security contexts in order to permit restorecon
and similar programs to see the raw file contexts unknown to the
system policy in order to check them.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>