summaryrefslogtreecommitdiff
path: root/drivers/s390
AgeCommit message (Collapse)AuthorFilesLines
2007-07-10[S390] vmlogrdr function annotation.Christian Borntraeger1-2/+2
Use __init and __exit for vmlogrdr. Both functions are only referenced by the module_init exit macros, so this change should be fine. Acked-by: Stefan Weinhuber <wein@de.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] zcrypt: fix request timeout handlingRalph Wuerthner6-90/+140
Under very high load zcrypt requests may timeout while waiting on the request queue. Modify zcrypt that timeouts are based on crypto adapter responses. A timeout occurs only if a crypto adapter does not respond within a given time frame to sumitted requests. Signed-off-by: Ralph Wuerthner <rwuerthn@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] dasd: Avoid compile warnings on !CONFIG_DASD_PROFILEHeiko Carstens1-0/+4
drivers/s390/block/dasd_proc.c:33: warning: 'dasd_get_user_string' defined but not used drivers/s390/block/dasd_proc.c:172: warning: 'dasd_statistics_array' defined but not used Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] Program check in diag 210 under 31 bitMichael Holzheu1-15/+7
If a virtual address is passed to the diag210 function under 31 bit, we get a programming exception, since diag 210 only works with physical addresses. To fix this, the content of the diag210 data structure is copied to a local structure and the physical address of that structure is passed to diagnose 210. Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] zcore: Fix __user annotation.Heiko Carstens1-1/+1
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] sclp: Test facility list before executing a service call.Heiko Carstens3-0/+18
Check if a command is available before executing. Saves some superfluous service calls that won't succeed anyway. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] sclp: introduce some new interfaces.Heiko Carstens2-29/+86
Introduce some new interfaces so that random subsystems don't have to mess around with sclp internal structures. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-07-10[S390] vmcp cleanupRobert P. J. Day1-7/+6
No need to use the "&" prefix and, since you're calling nonseekable_open(), there is no need to use no_llseek(). Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-06-21s390: netiucv inlining cleanupMartin Schwidefsky1-15/+3
The recent iucv rework patches re-introduced some unnecessary inlines. Remove them again. Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: netiucv spinlock initializer cleanupThomas Gleixner1-1/+1
spinlock initializer cleanup in netiucv.c Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: don't call iucv_path_connect from tasklet contextUrsula Braun1-1/+2
net/iucv/iucv.c creates the requirement for iucv_path_connect not to be called from tasklet context anymore. An extra checking is added in case of a failing netiucv_tx to fulfil this requirement for netiucv. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: Use ccw_device_get_id() in qeth/claw driversCornelia Huck2-14/+11
Use ccw_device_get_id() to get a device number instead of parsing the ccw device's bus id. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: qeth: wrong packet length in qdio headerFrank Pavlic1-2/+1
Packets Length in qdio header is broken when using EDDP on Layer2 devices. This leads to skb_under_panic on receiver system when running on z/VM GuestLAN devices. Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: avoid inconsistent lock state in qethUrsula Braun1-4/+4
ipv6_regen_rndid in net/ipv6/addrconf.c makes use of "write_lock_bh" for its inet6_dev->lock. It may run in softirq-context. qeth makes use of "read_lock" for the same inet6_dev->lock. To avoid a potential deadlock situation, qeth should make use of "read_lock_bh" for its usages of inet6_dev->lock. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: qeth driver does not recoverUrsula Braun1-6/+6
While first recovery continues, the card issues a STARTLAN command itself. In this case qeth schedules another recovery. This second recovery is cancelled because of an already running first recovery. Stop first recovery in case of 0xe080. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-21s390: print correct level for HiperSockets devicesUrsula Braun1-9/+11
For real HiperSockets the EBCDIC-ASCII conversion is not necessary. This is only needed for z/VM GuestLAN devices. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-06-19[S390] Fix zfcpdump headerMichael Holzheu1-0/+3
Added members for volume number and real memory size to header information. Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-31[S390] cio: deregister ccw device when pgid disband failedPeter Oberparleiter1-0/+6
Deregister ccw device when device failure is detected during offline- processing (e.g. when no last-path-gone indication was presented by the hardware) to prevent the device from entering a non-recoverable not-operational state. Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-31[S390] cio: Use device_schedule_callback() for removing disconnected devices.Cornelia Huck1-11/+38
We can't deregister disconnected and orphaned devices directly from the online attribute's store method, but must take a detour. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-31[S390] raw3270: use mutex instead of semaphoreChristoph Hellwig1-5/+5
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-31[S390] dasd_eer: use mutex instead of semaphoreChristoph Hellwig1-8/+8
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-16[SCSI] zfcp: IO stall after deleting and path checker changes after ↵Michael Loehr3-4/+5
reenabling zfcp devices IO stall after deleting and path checker changes after reenabling zfcp device Setting one zfcp device offline using chccwdev in a multipath environment and waiting will lead to IO stall on all paths. After setting the zfcp device back online using chccwdev, the devices with io stall will have a different path checker. Devices corresponding to the deleted units are never freed. This has the effect that 'slave_destroy' is never called and zfcp still thinks that this unit is registered (ZFCP_STATUS_UNIT_REGISTERED is still set). Hence the erp routine is not called correctly and the unit is not enabled properly. Do not delete rport and the sdev. Just set the host to block on 'offline'. Setting host online again will then remove the blocked status and everything is fine again. Signed-off-by: Michael Loehr <mloehr2@linux.vnet.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-16[SCSI] zfcp: avoid clutter in erp_dbfMartin Peschke1-27/+13
avoid clutter in erp_dbf cleanup zfcp_fsf_req_dismiss functions: - avoid clutter in erp_dbf (reqs_active is always 0) - fold called three-line function into calling function - add meaningful comment - coding style Signed-off-by: Martin Peschke <mp3@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-10[S390] Kconfig: use common Kconfig files for s390.Martin Schwidefsky3-103/+27
Disband drivers/s390/Kconfig, use the common Kconfig files. The s390 specific config options from drivers/s390/Kconfig are moved to the respective common Kconfig files. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-10[S390] qdio: re-add lost perf_stats.tl_runs change in qdio_handle_pciUrsula Braun1-0/+1
Statement has been inadvertently lost with commit 00c0c6466c66bdf05f2a3dcf59e6895179ea8b76. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-10[S390] Avoid sparse warnings.Heiko Carstens8-24/+23
Monthly sparse warning avoidance patch. Sigh. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
2007-05-10[S390] dasd: Fix modular build.Cornelia Huck1-0/+1
Add missing export of dasd_generic_read_dev_chars(). Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-10[S390] monreader inlining cleanup.Martin Schwidefsky1-7/+7
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-10[S390] cio: Make some structures and a function static.Cornelia Huck3-6/+3
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-10[S390] cio: Get rid of _ccw_device_get_device_number().Cornelia Huck4-7/+23
The function shouldn't have existed in the first place (not MSS-aware). Introduce a new function ccw_device_get_id() that extracts the ccw_dev_id structure of a ccw device and convert all users of _ccw_device_get_device_number to ccw_device_get_id. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-09Fix occurrences of "the the "Michael Opdenacker3-3/+3
Signed-off-by: Michael Opdenacker <michael@free-electrons.com> Signed-off-by: Adrian Bunk <bunk@stusta.de>
2007-05-09Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6Linus Torvalds7-158/+174
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (58 commits) [SCSI] zfcp: clear boxed flag on unit reopen. [SCSI] zfcp: clear adapter failed flag if an fsf request times out. [SCSI] zfcp: rework request ID management. [SCSI] zfcp: Fix deadlock between zfcp ERP and SCSI [SCSI] zfcp: Locking for req_no and req_seq_no [SCSI] zfcp: print S_ID and D_ID with 3 bytes [SCSI] ipr: Use PCI-E reset API for new ipr adapter [SCSI] qla2xxx: Update version number to 8.01.07-k7. [SCSI] qla2xxx: Add MSI support. [SCSI] qla2xxx: Correct pci_set_msi() usage semantics. [SCSI] qla2xxx: Attempt to stop firmware only if it had been previously executed. [SCSI] qla2xxx: Honor NVRAM port-down-retry-count settings. [SCSI] qla2xxx: Error-out during probe() if we're unable to complete HBA initialization. [SCSI] zfcp: Stop system after memory corruption [SCSI] mesh: cleanup variable usage in interrupt handler [SCSI] megaraid: replace yield() with cond_resched() [SCSI] megaraid: fix warnings when CONFIG_PROC_FS=n [SCSI] aacraid: correct SUN products to README [SCSI] aacraid: superfluous adapter reset for IBM 8 series ServeRAID controllers [SCSI] aacraid: kexec fix (reset interrupt handler) ...
2007-05-08[SCSI] zfcp: clear boxed flag on unit reopen.Heiko Carstens1-0/+1
The boxed flag for units was never cleared. This doesn't hurt, but on ACL updates the error recovery could reopen more units than needed. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08[SCSI] zfcp: clear adapter failed flag if an fsf request times out.Heiko Carstens1-1/+1
Must clear adapter failed flag if an fsf request times out. This is necessary because on link down situations the failed flags gets set but the QDIO queues are still up. Since an adapter reopen will be skipped if the failed flag is set an adapter_reopen that is issued on fsf request timeout has no effect if the local link is down. Might lead to locked up system if the SCSI stack is waiting for abort completion. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08[SCSI] zfcp: rework request ID management.Heiko Carstens7-89/+59
Simplify request ID management and make sure that frequently used functions are inlined. Also fix a memory leak in zfcp_adapter_enqueue() which only gets hit in error handling. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08[SCSI] zfcp: Fix deadlock between zfcp ERP and SCSIChristof Schmitt4-4/+72
The SCSI stack requires low level drivers to register and unregister devices. For zfcp this leads to the situation where zfcp calls the SCSI stack, the SCSI tries to scan the new device and the scan SCSI command fails. This would require the zfcp erp, but the erp thread is already blocked in the register call. The fix is to make sure that the calls from the ERP thread to the SCSI stack do not block the ERP thread. In detail: 1) Use a workqueue to avoid blocking of the scsi_scan_target calls. 2) When removing a unit make sure that no scsi_scan_target call is pending. 3) Replace scsi_flush_work with scsi_target_unblock. This avoids blocking and has the same result. Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08[SCSI] zfcp: Locking for req_no and req_seq_noChristof Schmitt1-9/+8
There is a possible race condition while generating the unique request ids and sequence numbers. Both might be read at the same time and have the same value. Fix this by serializing the access through the queue lock of the adapter: First call zfcp_fsf_req_sbal_get that acquires the lock, then read and increment the unique ids. Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08[SCSI] zfcp: print S_ID and D_ID with 3 bytesChristof Schmitt3-28/+28
S_ID and D_ID are defined in the FCP spec as 3 byte fields. Change the output in zfcp print statements accordingly to print them with only 3 bytes. Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08[SCSI] zfcp: Stop system after memory corruptionChristof Schmitt1-28/+6
For each request that is sent to the FCP adapter, zfcp allocates memory. Status information and data that is being read from the device is written to this memory by the hardware. After that, the hardware signals this via the response queue and zfcp continues processing. Now, if zfcp detects that there is a signal for an incoming response from the hardware, but there is no outstanding request for that request id, then some memory that can be in use anywhere in the system has just been overwritten. This should never happen, but if it does, stop the system with a panic. Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2007-05-08s390: qeth driver hardware specs adaptionsPeter Tiedemann3-99/+247
s390: qeth driver hardware specs adaptions - according to the latest OSA hardware specification incorporate actual IPA command and return codes into qeth. - whitespaces removed from qeth_mpc.h Signed-off-by: Peter Tiedemann <ptiedem@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-05-08s390: fix Oops when unloading module netiucvUrsula Braun1-2/+3
don't remove an entry from iucv_connection_list in netiucv_exit(). netiucv_free_netdevice is called anyway, which takes care of entry removal. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-05-08s390: free skbs in finite amount of time in qethUrsula Braun3-17/+38
Free sent skbs in some finite amount of time. Affected are asynchronous queue of Hipersockets devices and the output queues of all eth-devices respectively. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-05-08s390: qeth driver connection hangUrsula Braun4-7/+7
Frank Pavlic <fpavlic@de.ibm.com> Connection hangs when using EDDP mode because sk_protocol is NULL when skb has been copied via skb_copy. This results in dropping packets. Also keep MAC address after recovery of Virtual NICs so that traffic can flow again and duplicate statements in qeth_dev_set_route_store removed. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-05-06Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6Linus Torvalds2-5/+7
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (87 commits) [SCSI] fusion: fix domain validation loops [SCSI] qla2xxx: fix regression on sparc64 [SCSI] modalias for scsi devices [SCSI] sg: cap reserved_size values at max_sectors [SCSI] BusLogic: stop using check_region [SCSI] tgt: fix rdma transfer bugs [SCSI] aacraid: fix aacraid not finding device [SCSI] aacraid: Correct SMC products in aacraid.txt [SCSI] scsi_error.c: Add EH Start Unit retry [SCSI] aacraid: [Fastboot] Panics for AACRAID driver during 'insmod' for kexec test. [SCSI] ipr: Driver version to 2.3.2 [SCSI] ipr: Faster sg list fetch [SCSI] ipr: Return better qc_issue errors [SCSI] ipr: Disrupt device error [SCSI] ipr: Improve async error logging level control [SCSI] ipr: PCI unblock config access fix [SCSI] ipr: Fix for oops following SATA request sense [SCSI] ipr: Log error for SAS dual path switch [SCSI] ipr: Enable logging of debug error data for all devices [SCSI] ipr: Add new PCI-E IDs to device table ...
2007-05-04[S390] tape: New read configuration data.Michael Holzheu4-5/+32
Instead of the deprecated read_conf_data(), implement a new function tape_3590_read_dev_chars(). Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-04[S390] qeth: New read configuration data.Cornelia Huck3-5/+76
Instead of the deprecated read_conf_data(), implement a new function qeth_read_conf_data(). Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-04[S390] dasd: New read device characteristics and read configuration data.Cornelia Huck4-4/+126
Instead of the deprecated read_dev_chars() and read_conf_data_lpm(), implement dasd_generic_read_dev_chars() and dasd_eckd_read_conf_lpm(). These should even recover better from error than the original cio functions. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-05-04[S390] qdio: make qdio statistics SMP-capableUrsula Braun2-118/+174
Use atomic_t/atomic64_t to make qdio performance statistics smp safe. Remove temporarily calculation of "total time of inbound actions". Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2007-04-27s390: cio: Delay uevents for subchannelsCornelia Huck1-0/+6
We often have the situation that we register a subchannel and start device recognition, only to find out that the device is not usable after all, which triggers an unregister of the subchannel. This often happens on hundreds of subchannels on a LPAR, leading to a storm of events which aren't of any use. Therefore, use uevent_suppress to delay the KOBJ_ADD uevent for a subchannel until we know that its ccw_device is to be registered. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Eric Rannaud <eric.rannaud@gmail.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-04-27qeth: Remove usage of subsys.rwsemCornelia Huck1-2/+0
the current driver tree contains the removal of subsys.rwsem. Unfortunately, this breaks qeth. However, it should be no problem to fix the walking of the devices for /proc/qeth: No need to take subsys.rwsem during walking the devices, driver_find_devices() should already suffice. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>