summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] ipmi: Increment driver version to v39.0Corey Minyard2006-03-261-1/+1
| | | | | | | | | | | Need to increment the version number because of the new PCI and sysfs capabilities of the driver. People maintaining things for distros have asked that I do this after interface or major functional changes. Signed-off-by: Corey Minyard <minyard@acm.org> Acked-by: Matt Domsch <Matt_Domsch@dell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ipmi: add full sysfs supportCorey Minyard2006-03-265-54/+664
| | | | | | | | | | | | | | | | | | | | | | | | Add full driver model support for the IPMI driver. It links in the proper bus and device support. It adds an "ipmi" driver interface that has each BMC discovered by the driver (as a device). These BMCs appear in the devices/platform directory. If there are multiple interfaces to the same BMC, the driver should discover this and will only have one BMC entry. The BMC entry will have pointers to each interface device that connects to it. The device information (statistics and config information) has not yet been ported over to the driver model from proc, that will come later. This work was based on work by Yani Ioannou. I basically rewrote it using that code as a guide, but he still deserves credit :). [bunk@stusta.de: make ipmi_find_bmc_guid() static] Signed-off-by: Corey Minyard <minyard@acm.org> Signed-off-by: Yani Ioannou <yani.ioannou@gmail.com> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ipmi: add generic PCI handlingCorey Minyard2006-03-262-454/+496
| | | | | | | | | | | | | Modify the PCI hanling code for the IPMI driver to use the new method of tables and registering, and adds more generic PCI handling for IPMI. Unfortunately, this required a rather large rework of the way the driver did detection so it would be more event-driven. [bunk@stusta.de: make a struct static] Signed-off-by: Corey Minyard <minyard@acm.org> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] sem2mutex: misc static one-file mutexesIngo Molnar2006-03-269-71/+78
| | | | | | | | | | | | | | | | | | | | | | Semaphore to mutex conversion. The conversion was generated via scripts, and the result was validated automatically via a script as well. Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: Dave Jones <davej@codemonkey.org.uk> Cc: Paul Mackerras <paulus@samba.org> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Jens Axboe <axboe@suse.de> Cc: Neil Brown <neilb@cse.unsw.edu.au> Acked-by: Alasdair G Kergon <agk@redhat.com> Cc: Greg KH <greg@kroah.com> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Cc: Adam Belay <ambx1@neo.rr.com> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: "David S. Miller" <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ACPI: clean up memory attribute checking for map/read/writeBjorn Helgaas2006-03-261-43/+11
| | | | | | | | | | | | | | ia64 ioremap is now smart enough to use the correct memory attributes, so remove the EFI checks from osl.c. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Matt Domsch <Matt_Domsch@dell.com> Cc: "Tolentino, Matthew E" <matthew.e.tolentino@intel.com> Cc: "Brown, Len" <len.brown@intel.com> Cc: Andi Kleen <ak@muc.de> Acked-by: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] EFI fixesTolentino, Matthew E2006-03-261-1/+2
| | | | | | | | | | | | | | Here's a patch that fixes EFI boot for x86 on 2.6.16-rc5-mm3. The off-by-one is admittedly my fault, but the other two fix up the rest. Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Matt Domsch <Matt_Domsch@dell.com> Cc: "Tolentino, Matthew E" <matthew.e.tolentino@intel.com> Cc: "Brown, Len" <len.brown@intel.com> Cc: Andi Kleen <ak@muc.de> Cc: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] EFI: keep physical table addresses in efi structureBjorn Helgaas2006-03-263-27/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | Almost all users of the table addresses from the EFI system table want physical addresses. So rather than doing the pa->va->pa conversion, just keep physical addresses in struct efi. This fixes a DMI bug: the efi structure contained the physical SMBIOS address on x86 but the virtual address on ia64, so dmi_scan_machine() used ioremap() on a virtual address on ia64. This is essentially the same as an earlier patch by Matt Tolentino: http://marc.theaimsgroup.com/?l=linux-kernel&m=112130292316281&w=2 except that this changes all table addresses, not just ACPI addresses. Matt's original patch was backed out because it caused MCAs on HP sx1000 systems. That problem is resolved by the ioremap() attribute checking added for ia64. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Matt Domsch <Matt_Domsch@dell.com> Cc: "Tolentino, Matthew E" <matthew.e.tolentino@intel.com> Cc: "Brown, Len" <len.brown@intel.com> Cc: Andi Kleen <ak@muc.de> Acked-by: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] EFI, /dev/mem: simplify efi_mem_attribute_range()Bjorn Helgaas2006-03-261-12/+6
| | | | | | | | | | | | | | | | | | Pass the size, not a pointer to the size, to efi_mem_attribute_range(). This function validates memory regions for the /dev/mem read/write/mmap paths. The pointer allows arches to reduce the size of the range, but I think that's unnecessary complexity. Simplifying it will let me use efi_mem_attribute_range() to improve the ia64 ioremap() implementation. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Matt Domsch <Matt_Domsch@dell.com> Cc: "Tolentino, Matthew E" <matthew.e.tolentino@intel.com> Cc: "Brown, Len" <len.brown@intel.com> Cc: Andi Kleen <ak@muc.de> Acked-by: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] drivers/block/floppy.c: dont free_irq() from irq contextIngo Molnar2006-03-261-1/+22
| | | | | | | | | | | | | | free_irq() should not be executed from softirq context. Found by the lock validator. The fix is to push fd_free_irq() into keventd. The code validates fine with this patch applied. (akpm: this is revolting, but so is floppy.c) [akpm@osdl.org: added flush_scheduled_work()] Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge master.kernel.org:/home/rmk/linux-2.6-serialLinus Torvalds2006-03-254-253/+50
|\ | | | | | | | | | | | | | | * master.kernel.org:/home/rmk/linux-2.6-serial: [ARM] 3383/3: ixp2000: ixdp2x01 platform serial conversion [SERIAL] amba-pl010: Remove accessor macros [SERIAL] remove 8250_acpi (replaced by 8250_pnp and PNPACPI) [SERIAL] icom: select FW_LOADER
| * [SERIAL] amba-pl010: Remove accessor macrosRussell King2006-03-251-61/+49
| | | | | | | | | | | | | | Remove unnecessary accessor macros, using readb/writel directly instead. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * [SERIAL] remove 8250_acpi (replaced by 8250_pnp and PNPACPI)Bjorn Helgaas2006-03-253-192/+0
| | | | | | | | | | | | | | With the combination of PNPACPI and 8250_pnp, we no longer need 8250_acpi. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * [SERIAL] icom: select FW_LOADERmaximilian attems2006-03-251-0/+1
| | | | | | | | | | | | | | | | The icom driver uses request_firmware() and thus needs to select FW_LOADER. Signed-off-by: maximilian attems <maks@sternwelten.at> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* | [PATCH] Fix compilation of processor_idle.c on IA64Andi Kleen2006-03-251-2/+4
| | | | | | | | | | | | | | | | | | | | Broken earlier by me by a x86-64 patch. The code was optimized away, but the compiler still complained about an undeclared function. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/aoe-2.6Linus Torvalds2006-03-257-120/+235
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/aoe-2.6: [PATCH] aoe [3/3]: update version to 22 [PATCH] aoe [2/3]: don't request ATA device ID on ATA error [PATCH] aoe [1/3]: support multiple AoE listeners [PATCH] aoe: do not stop retransmit timer when device goes down [PATCH] aoe [8/8]: update driver version number [PATCH] aoe [7/8]: update driver compatibility string [PATCH] aoe [6/8]: update device information on last close [PATCH] aoe [5/8]: allow network interface migration on packet retransmit [PATCH] aoe [4/8]: use less confusing driver name [PATCH] aoe [3/8]: increase allowed outstanding packets [PATCH] aoe [2/8]: support dynamic resizing of AoE devices [PATCH] aoe [1/8]: zero packet data after skb allocation
| * | [PATCH] aoe [3/3]: update version to 22Ed L. Cashin2006-03-231-1/+1
| | | | | | | | | | | | | | | | | | Increase version number to 22. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
| * | [PATCH] aoe [2/3]: don't request ATA device ID on ATA errorEd L. Cashin2006-03-231-1/+2
| | | | | | | | | | | | | | | | | | | | | On an ATA error response, take the device down instead of sending another ATA device identify command. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
| * | [PATCH] aoe [1/3]: support multiple AoE listenersEd L. Cashin2006-03-231-17/+5
| | | | | | | | | | | | | | | | | | | | | | | | Always clone incoming skbs, allowing other AoE listeners to exist in the kernel. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe: do not stop retransmit timer when device goes downEd L. Cashin2006-03-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | This patch is a bugfix that follows and depends on the eight aoe driver patches sent January 19th. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [8/8]: update driver version numberEd L. Cashin2006-03-231-1/+1
| | | | | | | | | | | | | | | | | | | | | Update aoe driver version number. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [7/8]: update driver compatibility stringEd L. Cashin2006-03-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The aoe driver is not compatible with 2.6 kernels older than 2.6.2. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [6/8]: update device information on last closeEd L. Cashin2006-03-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of making the user wait or do it manually, refresh device information on its last close by issuing a config query to the device. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [5/8]: allow network interface migration on packet retransmitEd L. Cashin2006-03-231-0/+2
| | | | | | | | | | | | | | | | | | Retransmit to the current network interface for an AoE device. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
| * | [PATCH] aoe [4/8]: use less confusing driver nameEd L. Cashin2006-03-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Users were confused by the driver being called "aoe-2.6-$version". This form looks less like a Linux kernel version number. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [3/8]: increase allowed outstanding packetsEd L. Cashin2006-03-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Increase the number of AoE packets per device that can be outstanding at one time, increasing performance. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [2/8]: support dynamic resizing of AoE devicesEd L. Cashin2006-03-235-97/+220
| | | | | | | | | | | | | | | | | | | | | | | | | | | Allow the driver to recognize AoE devices that have changed size. Devices not in use are updated automatically, and devices that are in use are updated at user request. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | [PATCH] aoe [1/8]: zero packet data after skb allocationEd L. Cashin2006-03-231-0/+1
| | | | | | | | | | | | | | | | | | | | | Zero the data in new socket buffers to prevent leaking information. Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* | | Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgartLinus Torvalds2006-03-2519-106/+103
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart: [AGPGART] x86_64: Enable VIA AGP driver on x86-64 for VIA P4 chipsets [AGPGART] x86_64: Fix wrong PCI ID for ALI M1695 AGP bridge [AGPGART] ATI RS350 support. [AGPGART] Lots of CodingStyle/whitespace cleanups.
| * | | [AGPGART] x86_64: Enable VIA AGP driver on x86-64 for VIA P4 chipsetsAndi Kleen2006-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Untested so far [davej: but needed for some newer EM64T systems] Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Dave Jones <davej@redhat.com>
| * | | [AGPGART] x86_64: Fix wrong PCI ID for ALI M1695 AGP bridgeHenrik Kretzschmar2006-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [description by AK] Made a cut'n'paste error when adding the entry for the ALI M1695 AGP bridge and added a second entry for the 1689 Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Dave Jones <davej@redhat.com>
| * | | [AGPGART] ATI RS350 support.Dave Jones2006-03-011-0/+4
| | | | | | | | | | | | | | | | | | | | From: Julien Tous <julien.tous@gmail.com> Signed-off-by: Dave Jones <davej@redhat.com>
| * | | [AGPGART] Lots of CodingStyle/whitespace cleanups.Dave Jones2006-02-2819-105/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminate trailing whitespace. s/if(/if (/ s/for(/for (/ Signed-off-by: Dave Jones <davej@redhat.com>
* | | | [PATCH] x86_64: Force broadcast timer on AMD systems with C3 too.Andi Kleen2006-03-251-10/+15
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | | [PATCH] x86_64: Clean up and tweak ACPI blacklist year codeAndi Kleen2006-03-251-21/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Move the core parser into dmi_scan.c. It can be useful for other subsystems too. - Differentiate between field doesn't exist and field is 0 or unparseable. The first case is likely an old BIOS with broken ACPI, the later is likely a slightly buggy BIOS where someone forget to edit the date. Don't blacklist in the later case. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | | [PATCH] x86_64: Implement compat code for raw1394 read/writeAndi Kleen2006-03-251-5/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not for the ioctls so far because I was too lazy. Cc: bcollins@debian.org Cc: dan@dennedy.org Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | | [PATCH] x86_64: Fix wrong PCI ID for ALI M1695 AGP bridgeHenrik Kretzschmar2006-03-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [description by AK] Made a cut'n'paste error when adding the entry for the ALI M1695 AGP bridge and added a second entry for the 1689 Cc: Dave Jones <davej@redhat.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | | Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreqLinus Torvalds2006-03-257-91/+136
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] kzalloc conversion for gx-suspmod [CPUFREQ] Whitespace cleanup [CPUFREQ] Mark longhaul driver as broken. [PATCH] cpufreq: fix section mismatch warnings [CPUFREQ] Fix the p4-clockmod N60 errata workaround. [CPUFREQ] Fix handling for CPU hotplug [CPUFREQ] powernow-k8: Let cpufreq driver handle affected CPUs [CPUFREQ] Lots of whitespace & CodingStyle cleanup. [CPUFREQ] Remove duplicate cpuinfo struct [CPUFREQ] Silence powernow-k8 warning on k7's.
| * | | | [PATCH] cpufreq: fix section mismatch warningsSam Ravnborg2006-03-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cpufreq are the only remaining bit to be solved for me to have a modpost clean build for sparc64 - so I took one more look at it. changelog entry: Fix section mismatch warnings in cpufreq: WARNING: drivers/cpufreq/cpufreq_stats.o - Section mismatch: reference to .init.text: from .data between 'cpufreq_stat_cpu_notifier' (at offset 0xa8) and 'notifier_policy_block' WARNING: drivers/cpufreq/cpufreq_stats.o - Section mismatch: reference to .init.text: from .exit.text after 'cleanup_module' (at offset 0x30) The culprint is the function: cpufreq_stat_cpu_callback It is marked __cpuinit which get's redefined to __init in case HOTPLUG_CPU is not enabled as per. init.h: #ifdef CONFIG_HOTPLUG_CPU #define __cpuinit #else #define __cpuinit __init #endif $> grep HOTPLUG .config CONFIG_HOTPLUG=y But cpufreq_stat_cpu_callback() is used in: __exit cpufreq_stats_exit() static struct notifier_block cpufreq_stat_cpu_notifier cpufreq_stat_cpu_notifier is again used in: __init cpufreq_stats_init() __exit cpufreq_stats_exit() So in both cases used from both __init and __exit context. Only solution seems to drop __cpuinit tag. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Dave Jones <davej@redhat.com>
| * | | | [CPUFREQ] Fix handling for CPU hotplugDave Jones2006-03-051-2/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds proper logic to cpufreq driver in order to handle CPU Hotplug. When CPUs go on/offline, the affected CPUs data, cpufreq_policy->cpus, is not updated properly. This causes sysfs directories and symlinks to be in an incorrect state after few CPU on/offlines. Signed-off-by: Jacob Shin <jacob.shin@amd.com> Signed-off-by: Dave Jones <davej@redhat.com>
| * | | | [CPUFREQ] Lots of whitespace & CodingStyle cleanup.Dave Jones2006-02-287-88/+86
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Dave Jones <davej@redhat.com>
* | | | | Merge branch 'for-linus' of ↵Linus Torvalds2006-03-258-119/+170
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IPoIB: P_Key change event handling IB/mthca: Fix modify QP error path IPoIB: Fix network interface "RUNNING" status IB/mthca: Fix indentation IB/mthca: Fix uninitialized variable in mthca_alloc_qp() IB/mthca: Check SRQ limit in modify SRQ operation IB/mthca: Check that SRQ WQE size does not exceed device's max value IB/mthca: Check that sgid_index and path_mtu are valid in modify_qp IB/srp: Use a fake scatterlist for non-SG SCSI commands IPoIB: Pass correct pointer when flushing child interfaces
| * | | | | IPoIB: P_Key change event handlingLeonid Arsh2006-03-244-19/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch causes the network interface to respond to P_Key change events correctly. As a result, you'll see a child interface in the "RUNNING" state (netif_carrier_on()) only when the corresponding P_Key is configured by the SM. When SM removes a P_Key, the "RUNNING" state will be disabled for the corresponding network interface. To implement this, I added IB_EVENT_PKEY_CHANGE event handling. To prevent flushing the device before the device is open by the "delay open" mechanism, I added an additional device flag called IPOIB_FLAG_INITIALIZED. This also prevents the child network interface from trying to join to multicast groups until the PKEY is configured. We used to get error messages like: ib0.f2f2: couldn't attach QP to multicast group ff12:401b:f2f2:0:0:0:ffff:ffff in this case. To fix this, I just check IPOIB_FLAG_OPER_UP flag in ipoib_set_mcast_list(). Signed-off-by: Leonid Arsh <leonida@voltaire.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/mthca: Fix modify QP error pathRoland Dreier2006-03-241-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the call to mthca_MODIFY_QP() failed, then mthca_modify_qp() would still do some things it shouldn't, such as store away attributes for special QPs. Fix this, and simplify the code, by simply jumping to the exit path if mthca_MODIFY_QP() fails. Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IPoIB: Fix network interface "RUNNING" statusLeonid Arsh2006-03-241-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the current IPoIB driver, the status of network interfaces stays "RUNNING" even if the link goes down (for example because a cable is unplugged). Fix this by flushing the IPoIB interface when the link goes down. Signed-off-by: Leonid Arsh <leonida@voltaire.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/mthca: Fix indentationRoland Dreier2006-03-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix some whitespace damage (indenting with spaces) that snuck in. Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/mthca: Fix uninitialized variable in mthca_alloc_qp()Jack Morgenstein2006-03-241-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mthca_alloc_sqp() by mthca_set_qp_size() need to set qp->transport before calling mthca_set_qp_size(), since the value is used there. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/mthca: Check SRQ limit in modify SRQ operationJack Morgenstein2006-03-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When setting the shared receive queue (SRQ) watermark in a modify SRQ operation, make sure that the supplied value is not larger than the full size of the SRQ. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/mthca: Check that SRQ WQE size does not exceed device's max valueJack Morgenstein2006-03-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Guarantee the calculated work queue entry size does not exceed the max allowable WQE size when creating an SRQ. This is a problem with Arbel in Tavor-compatibility mode because the current WQE size computation method rounds up to next power of 2. Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/mthca: Check that sgid_index and path_mtu are valid in modify_qpDotan Barak2006-03-241-4/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a check that the modify QP parameters sgid_index and path_mtu are valid, since they might come from userspace. Signed-off-by: Dotan Barak <dotanb@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
| * | | | | IB/srp: Use a fake scatterlist for non-SG SCSI commandsRoland Dreier2006-03-242-77/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the SCSI midlayer is moving towards entirely getting rid of commands with use_sg == 0, we should treat this case as an exception. Therefore, change the IB SRP initiator to create a fake scatterlist for these commands with sg_init_one(). This simplifies the flow of DMA mapping and unmapping, since SRP can just use dma_map_sg() and dma_unmap_sg() unconditionally, rather than having to choose between the dma_{map,unmap}_sg() and dma_{map,unmap}_single() variants. Signed-off-by: Roland Dreier <rolandd@cisco.com>