aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* [PATCH] cfq-iosched: don't allow sync merges across queuesJens Axboe2006-12-20
| | | | | | | | | | | | Currently we allow any merge, even if the io originates from different processes. This can cause really bad starvation and unfairness, if those ios happen to be synchronous (reads or direct writes). So add a allow_merge hook to the io scheduler ops, so an io scheduler can help decide whether a bio/process combination may be merged with an existing request. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] Fixup blk_rq_unmap_user() APIJens Axboe2006-12-19
| | | | | | | | | The blk_rq_unmap_user() API is not very nice. It expects the caller to know that rq->bio has to be reset to the original bio, and it will silently do nothing if that is not done. Instead make it explicit that we need to pass in the first bio, by expecting a bio argument. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] __blk_rq_unmap_user() fails to return errorJens Axboe2006-12-19
| | | | | | | If the bio is user copied, the copy back could return -EFAULT. Make sure we return any error seen during unmapping. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] __blk_rq_map_user() doesn't need to grab the queue_lockJens Axboe2006-12-19
| | | | | | | It was for driver private back_merge_fn hooks, but they don't exist anymore. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] Remove queue merging hooksJens Axboe2006-12-19
| | | | | | | | We have full flexibility of merging parameters now, so we can remove the hooks that define back/front/request merge strategies. Nobody is using them anymore. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] ->nr_sectors and ->hard_nr_sectors are not used for BLOCK_PC requestsJens Axboe2006-12-19
| | | | | | | It's a file system thing, for block requests the only size used in the io paths is ->data_len as it is in bytes, not sectors. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] cciss: fix XFER_READ/XFER_WRITE in do_cciss_requestMike Miller2006-12-18
| | | | | | | | | | | | | | | This patch fixes a stupid bug. Sometime during the 2tb enhancement I ended up replacing the macros XFER_READ and XFER_WRITE with h->cciss_read and h->cciss_write respectively. It seemed to work somehow at least on x86_64 and ia64. I don't know how. But people started complaining about command timeouts on older controllers like the 64xx series and only on ia32. This resolves the issue reproduced in our lab. Please consider this for inclusion. Thanks, mikem Signed-off-by: Mike Miller <mike.miller@hp.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [PATCH] cciss: set default raid level when reading geometry failsMike Miller2006-12-18
| | | | | | | | | | | | | | This patch sets a default raid level on a volume that either does not support reading the geometry or reports an invalid geometry for whatever reason. We were always setting some values for heads and sectors but never set a raid level. This caused lots of problems on some buggy firmware. Please consider this for inclusion. Thanks, mikem Signed-off-by: Mike Miller <mike.miller@hp.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreqLinus Torvalds2006-12-17
|\ | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] longhaul compile fix. [CPUFREQ] Advise not to use longhaul on VIA C7. [CPUFREQ] set policy->curfreq on initialization [CPUFREQ] Trivial cleanup for acpi read/write port in acpi-cpufreq.c [CPUFREQ] fixes typo in cpufreq.c
| * [CPUFREQ] longhaul compile fix.Dave Jones2006-12-17
| | | | | | | | | | | | | | Some gcc's are more anal than others about empty switch labels. error: label at end of compound statement Signed-off-by: Dave Jones <davej@redhat.com>
| * [CPUFREQ] Advise not to use longhaul on VIA C7.Dave Jones2006-12-17
| | | | | | | | | | | | C7's are centrino speedstep-alike. Signed-off-by: Dave Jones <davej@redhat.com>
| * [CPUFREQ] set policy->curfreq on initializationMattia Dongili2006-12-17
| | | | | | | | | | | | | | | | | | | | Check the correct variable and set policy->cur upon acpi-cpufreq initialization to allow the userspace governor to be used as default. Signed-off-by: Mattia Dongili <malattia@linux.it> Acked-by: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dave Jones <davej@redhat.com>
| * [CPUFREQ] Trivial cleanup for acpi read/write port in acpi-cpufreq.cVenkatesh Pallipadi2006-12-13
| | | | | | | | | | | | | | Small cleanup in acpi-cpufreq. Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Dave Jones <davej@redhat.com>
| * [CPUFREQ] fixes typo in cpufreq.cDhaval Giani2006-12-13
| | | | | | | | | | | | | | This patch fixes a typo in cpufreq.c From: Dhaval Giani <dhaval.giani@gmail.com> Signed-off-by: Dave Jones <davej@redhat.com>
* | [PATCH] more work_struct fixes: tas300x sound driversAl Viro2006-12-17
| | | | | | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [SPARC]: Make bitops use same spinlocks as atomics.David S. Miller2006-12-17
| | | | | | | | | | | | | | | | | | Recent workqueue changes basically make this a formal requirement. Also, move atomic32.o from lib-y to obj-y since it exports symbols to modules. Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SPARC]: Update defconfig.David S. Miller2006-12-17
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SPARC64]: Mirror x86_64's PERCPU_ENOUGH_ROOM definition.David S. Miller2006-12-17
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SUNKBD]: Fix sunkbd_enable(sunkbd, 0); obvious.Fabrice Knevez2006-12-17
| | | | | | | | | | | | | | | | "sunkbd_enable(sunkbd, 0);" has no effect. Adding "sunkbd->enabled = enable" in sunkbd_enable (obvious) Signed-off-by: Fabrice Knevez <nuxdoors@cegetel.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [DocBook]: Fix two typos in generic IRQ docs.David S. Miller2006-12-17
| | | | | | | | | | | | desc-status --> desc->status Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SPARC64]: Minor irq handling cleanups.David S. Miller2006-12-17
| | | | | | | | | | | | | | | | Use struct irq_chip instead of hw_interrupt_type. Delete hw_resend_irq(), totally unused. Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SPARC64]: Kill no-remapping-needed code in head.SDavid S. Miller2006-12-17
| | | | | | | | | | | | | | | | | | | | | | | | It branches around some necessary prom calls, which we would need to do even if we are mapped at the correct location already. So it doesn't work. The idea was that this sort of thing could be used for the eventual kexec implementation, but it is clear that this will need to be done differently. Signed-off-by: David S. Miller <davem@davemloft.net>
* | [PATCH] sys_mincore: s/max/min/Oleg Nesterov2006-12-17
| | | | | | | | | | | | | | fix a typo, sys_mincore() needs min(). Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Linus "I'm a moron" Torvalds <torvalds@osdl.org>
* | [PATCH] m68k trivial build fixesAl Viro2006-12-17
| | | | | | | | | | | | | | | | amikbd: missing declaration sun3_NCR5380: more work_struct mess sun3_NCR5380: cast is not an lvalue Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | Fix up mm/mincore.c error value casesLinus Torvalds2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hugh Dickins correctly points out that mincore() is actually _supposed_ to fail on an unmapped hole in the user address space, rather than return valid ("empty") information about the hole. This just simplifies the problem further (I had been misled by our previous confusing and complicated way of doing mincore()). Also, in the unlikely situation that we can't allocate a temporary kernel buffer, we should actually return EAGAIN, not ENOMEM, to keep the "unmapped hole" and "allocation failure" error cases separate. Finally, add a comment about our stupid historical lack of support for anonymous mappings. I'll fix that if somebody reminds me after 2.6.20 is out. Acked-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | Merge branch 'for-linus' of ↵Linus Torvalds2006-12-16
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IB/mthca: Use DEFINE_MUTEX() instead of mutex_init() IB/mthca: Add HCA profile module parameters IB/srp: Fix FMR mapping for 32-bit kernels and addresses above 4G IB: Fix ib_dma_alloc_coherent() wrapper
| * | IB/mthca: Use DEFINE_MUTEX() instead of mutex_init()Roland Dreier2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | mthca_device_mutex() can be initialized automatically with DEFINE_MUTEX() rather than explicitly calling mutex_init(). This saves a bit of text and shrinks the source by a line, so we may as well do it.... Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | IB/mthca: Add HCA profile module parametersLeonid Arsh2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add module parameters that enable settting some of the HCA profile values, such as the number of QPs, CQs, etc. Signed-off-by: Leonid Arsh <leonida@voltaire.com> Signed-off-by: Moni Shoua <monis@voltaire.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | IB/srp: Fix FMR mapping for 32-bit kernels and addresses above 4GRoland Dreier2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | struct srp_device.fmr_page_mask was unsigned long, which means that the top part of addresses above 4G was being chopped off on 32-bit architectures. Of course nothing good happens when data from SRP targets is DMAed to the wrong place. Fix this by changing fmr_page_mask to u64, to match the addresses actually used by IB devices. Thanks to Brian Cain <Brian.Cain@ge.com> and David McMillen <davem@systemfabricworks.com> for help diagnosing the bug and testing the fix. Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | IB: Fix ib_dma_alloc_coherent() wrapperRoland Dreier2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ib_dma_alloc_coherent() wrapper uses a u64* for the dma_handle parameter, unlike dma_alloc_coherent, which uses dma_addr_t*. This means that we need a temporary variable to handle the case when ib_dma_alloc_coherent() just falls through directly to dma_alloc_coherent() on architectures where sizeof u64 != sizeof dma_addr_t. Signed-off-by: Roland Dreier <rolandd@cisco.com>
* | | Merge branch 'upstream-linus' of ↵Linus Torvalds2006-12-16
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [PATCH] pata_via: Cable detect error [PATCH] Fix help text for CONFIG_ATA_PIIX [PATCH] initializer entry defined twice in pata_rz1000 [PATCH] ata: fix platform_device_register_simple() error check [PATCH] ahci: do not mangle saved HOST_CAP while resetting controller [PATCH] libata: don't initialize sg in ata_exec_internal() if DMA_NONE (take #2) [libata] sata_svw: Disable ATAPI DMA on current boards (errata workaround) [libata] use kmap_atomic(KM_IRQ0) in SCSI simulator [PATCH] ata_piix: use piix_host_stop() in ich_pata_ops [PATCH] ata_piix: IDE mode SATA patch for Intel ICH9
| * | | [PATCH] pata_via: Cable detect errorAlan2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The UDMA66 VIA hardware has no controller side cable detect bits we can use. This patch minimally fixes the problem by reporting unknown in this case and using drive side detection. The old drivers/ide code does some additional tricks but those aren't appropriate now we are in -rc. Without this update UDMA66 via controllers run slowly. They don't fail so it's a borderline call whether this is -rc material or not. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] Fix help text for CONFIG_ATA_PIIXAlan2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > Thanks for clarifying Bill, and sorry Alan. ata_piix does indeed work > correctly. The help text is a bit confusing: > > config ATA_PIIX > tristate "Intel PIIX/ICH SATA support" > depends on PCI > help > This option enables support for ICH5/6/7/8 Serial ATA. > If PATA support was enabled previously, this enables > support for select Intel PIIX/ICH PATA host controllers. New help text Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] initializer entry defined twice in pata_rz1000Ira Snyder2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes the extra definition of the .error_handler member in the pata_rz1000 driver. Signed-off-by: Ira W. Snyder <kernel@irasnyder.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] ata: fix platform_device_register_simple() error checkAkinobu Mita2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The return value of platform_device_register_simple() should be checked by IS_ERR(). Cc: Jeff Garzik <jgarzik@pobox.com> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] ahci: do not mangle saved HOST_CAP while resetting controllerTejun Heo2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not mangle with HOST_CAP while resetting controller. The code is there for a historical reason. The mangling breaks controller feature detection and 0 PORTS_IMPL workaround code. This problem was spotted by Manoj Kasichainula. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Manoj Kasichainula <manoj@io.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] libata: don't initialize sg in ata_exec_internal() if DMA_NONE (take #2)Tejun Heo2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling sg_init_one() with NULL buf causes oops on certain configurations. Don't initialize sg in ata_exec_internal() if DMA_NONE and make the function complain if @buf is NULL when dma_dir isn't DMA_NONE. While at it, fix comment. The problem is discovered and initial patch was submitted by Arnd Bergmann. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [libata] sata_svw: Disable ATAPI DMA on current boards (errata workaround)Jeff Garzik2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current Broadcom/Serverworks SATA boards (including Apple K2 SATA) have problems with ATAPI DMA, so it is disabled. ATAPI PIO, ATA PIO, and ATA DMA continue to work just fine. Acked-by: Anantha Subramanyam <ananth@broadcom.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [libata] use kmap_atomic(KM_IRQ0) in SCSI simulatorJeff Garzik2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are inside spin_lock_irqsave(). quoth akpm's debug facility: [ 231.948000] SCSI device sda: 195371568 512-byte hdwr sectors (100030 MB) [ 232.232000] ata1.00: configured for UDMA/33 [ 232.404000] WARNING (1) at arch/i386/mm/highmem.c:47 kmap_atomic() [ 232.404000] [<c01162e6>] kmap_atomic+0xa9/0x1ab [ 232.404000] [<c0242c81>] ata_scsi_rbuf_get+0x1c/0x30 [ 232.404000] [<c0242caf>] ata_scsi_rbuf_fill+0x1a/0x87 [ 232.404000] [<c0243ab2>] ata_scsiop_mode_sense+0x0/0x309 [ 232.404000] [<c01729d5>] end_bio_bh_io_sync+0x0/0x37 [ 232.404000] [<c02311c6>] scsi_done+0x0/0x16 [ 232.404000] [<c02311c6>] scsi_done+0x0/0x16 [ 232.404000] [<c0242dcc>] ata_scsi_simulate+0xb0/0x13f [...] Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] ata_piix: use piix_host_stop() in ich_pata_opsTejun Heo2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | piix_init_one() allocates host private data which should be freed by piix_host_stop(). ich_pata_ops wasn't converted to piix_host_stop() while merging, leaking 4 bytes on driver detach. Fix it. This was spotted using Kmemleak by Catalin Marinas. Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Catalin Marinas <catalin.marinas@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | [PATCH] ata_piix: IDE mode SATA patch for Intel ICH9Jason Gaston2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This updated patch adds the Intel ICH9 IDE mode SATA controller DID's. Signed-off-by: Jason Gaston <jason.d.gaston@intel.com> Acked-by: Tejun Heo <htejun@gmail.com> Cc: Jeff Garzik <jeff@garzik.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | | Make workqueue bit operations work on "atomic_long_t"Linus Torvalds2006-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On architectures where the atomicity of the bit operations is handled by external means (ie a separate spinlock to protect concurrent accesses), just doing a direct assignment on the workqueue data field (as done by commit 4594bf159f1962cec3b727954b7c598b07e2e737) can cause the assignment to be lost due to lack of serialization with the bitops on the same word. So we need to serialize the assignment with the locks on those architectures (notably older ARM chips, PA-RISC and sparc32). So rather than using an "unsigned long", let's use "atomic_long_t", which already has a safe assignment operation (atomic_long_set()) on such architectures. This requires that the atomic operations use the same atomicity locks as the bit operations do, but that is largely the case anyway. Sparc32 will probably need fixing. Architectures (including modern ARM with LL/SC) that implement sane atomic operations for SMP won't see any of this matter. Cc: Russell King <rmk+lkml@arm.linux.org.uk> Cc: David Howells <dhowells@redhat.com> Cc: David Miller <davem@davemloft.com> Cc: Matthew Wilcox <matthew@wil.cx> Cc: Linux Arch Maintainers <linux-arch@vger.kernel.org> Cc: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | | Fix incorrect user space access locking in mincore()Linus Torvalds2006-12-16
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Doug Chapman noticed that mincore() will doa "copy_to_user()" of the result while holding the mmap semaphore for reading, which is a big no-no. While a recursive read-lock on a semaphore in the case of a page fault happens to work, we don't actually allow them due to deadlock schenarios with writers due to fairness issues. Doug and Marcel sent in a patch to fix it, but I decided to just rewrite the mess instead - not just fixing the locking problem, but making the code smaller and (imho) much easier to understand. Cc: Doug Chapman <dchapman@redhat.com> Cc: Marcel Holtmann <holtmann@redhat.com> Cc: Hugh Dickins <hugh@veritas.com> Cc: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | Fix "delayed_work_pending()" macro expansionLinus Torvalds2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | Nobody uses it, but it was still wrong. Using the macro argument name 'work' meant that when we used 'work' as a member name, that would also get replaced by the macro argument. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6Linus Torvalds2006-12-15
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] cio: css_register_subchannel race. [S390] Save prefix register for dump on panic [S390] Fix reboot hang [S390] Fix reboot hang on LPARs [S390] sclp_cpi module license. [S390] zcrypt: module unload fixes. [S390] Hipersocket multicast queue: make sure outbound handler is called [S390] hypfs fixes [S390] update default configuration
| * | | [S390] cio: css_register_subchannel race.Stefan Bader2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Asynchronous probe can release memory of a subchannel before css_get_ssd_info is called. To fix this call css_get_ssd_info before registering with driver core. Signed-off-by: Stefan Bader <shbader@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
| * | | [S390] Save prefix register for dump on panicMichael Holzheu2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The dump tools expect that the saved prefix register points to the lowcore of the dump cpu. Since we set the prefix register to 0 during reipl/dump, we have to save the original prefix register. Before we start the dump program, we copy the original prefix register to the designated location in the lowcore. Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
| * | | [S390] Fix reboot hangMichael Holzheu2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We use printks after shutting down all other cpus. This is not allowed and can lead to deadlocks. Therefore the printks have to be removed. Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
| * | | [S390] Fix reboot hang on LPARsMichael Holzheu2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reboot hangs on LPARs without diag308 support. The reason for this is, that before the reboot is done, the channel subsystem is shut down. During the reset on each possible subchannel a "store subchannel" is done. This operation can end in a program check interruption, if the specified subchannel set is not implemented by the hardware. During the reset, currently we do not have a program check handler, which leads to the described kernel bug. We install now a new program check handler for the reboot code to fix this problem. Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
| * | | [S390] sclp_cpi module license.Christian Borntraeger2006-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | sclp_cpi is GPL. Make the module not taint the kernel Signed-off-by: Christian Borntraeger <cborntra@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>