summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'merge' of ↵Linus Torvalds2011-04-0115-223/+272
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: kdump: Allow shrinking of kdump region to be overridden powerpc/pmac/smp: Remove no-longer needed preempt workaround powerpc/smp: Increase vdso_data->processorCount, not just decrease it powerpc/smp: Create idle threads on demand and properly reset them powerpc/smp: Don't expose per-cpu "cpu_state" array powerpc/pmac/smp: Fix CPU hotplug crashes on some machines powerpc/smp: Add a smp_ops->bringup_up() done callback powerpc/pmac: Rename cpu_state in therm_pm72 to avoid collision powerpc/pmac/smp: Properly NAP offlined CPU on G5 powerpc/pmac/smp: Remove HMT changes for PowerMac offline code powerpc/pmac/smp: Consolidate 32-bit and 64-bit PowerMac cpu_die in one file powerpc/pmac/smp: Fixup smp_core99_cpu_disable() and use it on 64-bit powerpc/pmac/smp: Rename fixup_irqs() to migrate_irqs() and use it on ppc32 powerpc/pmac/smp: Fix 32-bit PowerMac cpu_die powerpc/smp: Remove unused smp_ops->cpu_enable() powerpc/smp: Remove unused generic_cpu_enable() powerpc/smp: Fix generic_mach_cpu_die() powerpc/smp: soft-replugged CPUs must go back to start_secondary powerpc: Make decrementer interrupt robust against offlined CPUs
| * kdump: Allow shrinking of kdump region to be overriddenAnton Blanchard2011-04-012-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | On ppc64 the crashkernel region almost always overlaps an area of firmware. This works fine except when using the sysfs interface to reduce the kdump region. If we free the firmware area we are guaranteed to crash. Rename free_reserved_phys_range to crash_free_reserved_phys_range and make it a weak function so we can override it. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Remove no-longer needed preempt workaroundBenjamin Herrenschmidt2011-04-011-7/+0
| | | | | | | | | | | | | | The generic code properly re-initializes the preempt count in the idle thread now Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: Increase vdso_data->processorCount, not just decrease itBenjamin Herrenschmidt2011-04-011-0/+4
| | | | | | | | Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: Create idle threads on demand and properly reset themBenjamin Herrenschmidt2011-04-011-22/+78
| | | | | | | | | | | | | | | | | | Instead of creating idle threads at boot for all possible CPUs, we create them on demand, like x86 or ARM, and we properly call init_idle to re-initialize an idle thread when a CPU was unplugged and is now re-plugged. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: Don't expose per-cpu "cpu_state" arrayBenjamin Herrenschmidt2011-04-013-6/+15
| | | | | | | | | | | | | | | | Instead, keep it static, expose an accessor and use that from the PowerMac code. Avoids easy namespace collisions and will make it easier to consolidate with other implementations. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Fix CPU hotplug crashes on some machinesBenjamin Herrenschmidt2011-04-011-16/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | On some machines that use i2c to synchronize the timebases (such as PowerMac7,2/7,3 G5 machines), hotplug CPU would crash when putting back a new CPU online due to the underlying i2c bus being closed. This uses the newly added bringup_done() callback to move the close along with other housekeeping calls, and adds a CPU notifier to re-open the i2c bus around subsequent hotplug operations Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: Add a smp_ops->bringup_up() done callbackBenjamin Herrenschmidt2011-04-012-0/+5
| | | | | | | | | | | | | | | | This allows us to stop abusing smp_ops->setup_cpu() for cleanup tasks that have to take place after the initial boot time CPU bringup. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac: Rename cpu_state in therm_pm72 to avoid collisionBenjamin Herrenschmidt2011-04-011-30/+30
| | | | | | | | | | | | | | This collides with the cpu_state in our SMP code, use processor_state instead. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Properly NAP offlined CPU on G5Benjamin Herrenschmidt2011-04-014-28/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current code soft-disables, and then goes to NAP mode which turns interrupts on. That means that if an interrupt occurs, we will hit the masked interrupt code path which isn't what we want, as it will return with EE off, which will either get us out of NAP mode, or fail to enter it (according to spec). Instead, let's just rely on the fact that it is safe to take decrementer interrupts on an offline CPU and leave interrupts enabled. We can also get rid of the special case in asm for power4_cpu_offline_powersave() and just use power4_idle(). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Remove HMT changes for PowerMac offline codeBenjamin Herrenschmidt2011-04-011-4/+0
| | | | | | | | | | | | | | Those instructions do nothing on non-threaded processors such as 970's used on those machines. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Consolidate 32-bit and 64-bit PowerMac cpu_die in one fileBenjamin Herrenschmidt2011-04-013-60/+55
| | | | | | | | Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Fixup smp_core99_cpu_disable() and use it on 64-bitBenjamin Herrenschmidt2011-04-011-12/+5
| | | | | | | | | | | | | | | | | | | | Use the generic code, just add the MPIC priority setting, I don't see any use in mucking around with the decrementer, as 32-bit will have EE off all along, and 64-bit will be able to deal with it. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Rename fixup_irqs() to migrate_irqs() and use it on ppc32Benjamin Herrenschmidt2011-04-013-3/+4
| | | | | | | | Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/pmac/smp: Fix 32-bit PowerMac cpu_dieBenjamin Herrenschmidt2011-04-012-20/+6
| | | | | | | | | | | | Use generic cpu_state, call idle_task_exit() properly, and remove smp_core99_cpu_die() which isn't useful, the generic function does the job just fine.
| * powerpc/smp: Remove unused smp_ops->cpu_enable()Benjamin Herrenschmidt2011-04-013-13/+0
| | | | | | | | | | | | | | Remove the last remnants of cpu_enable(), everybody uses the normal __cpu_up() path now Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: Remove unused generic_cpu_enable()Benjamin Herrenschmidt2011-04-012-23/+0
| | | | | | | | | | | | | | Nobody uses it, besides we should always use the normal __cpu_up path anyways Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: Fix generic_mach_cpu_die()Benjamin Herrenschmidt2011-04-011-2/+1
| | | | | | | | | | | | | | | | | | This is used by some "soft" hotplug implementations. I needs to call idle_task_exit() when the CPU is going away, and we remove the now no-longer needed set_cpu_online() and local_irq_enable() which are handled by the return to start_secondary Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc/smp: soft-replugged CPUs must go back to start_secondaryBenjamin Herrenschmidt2011-04-014-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Various thing are torn down when a CPU is hot-unplugged. That CPU is expected to go back to start_secondary when re-plugged to re initialize everything, such as clock sources, maps, ... Some implementations just return from cpu_die() callback in the idle loop when the CPU is "re-plugged". This is not enough. We fix it using a little asm trampoline which resets the stack and calls back into start_secondary as if we were all fresh from boot. The trampoline already existed on ppc64, but we add it for ppc32 Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * powerpc: Make decrementer interrupt robust against offlined CPUsBenjamin Herrenschmidt2011-04-011-4/+11
| | | | | | | | | | | | | | | | With some implementations, it is possible that a timer interrupt occurs every few seconds on an offline CPU. In this case, just re-arm the decrementer and return immediately Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
* | Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6Linus Torvalds2011-04-0117-41/+32
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc32: Pass task_struct to schedule_tail() in ret_from_fork apbuart: Depend upon sparc. sparc64: Fix section mis-match errors. sparc32,leon: Fixed APBUART frequency detection sparc32, leon: APBUART driver must use archdata to get IRQ number sparc: Hook up syncfs system call.
| * | sparc32: Pass task_struct to schedule_tail() in ret_from_forkTkhai Kirill2011-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to pass task_struct of previous process to function schedule_tail(). Currently in ret_from_fork previous thread_info is passed: switch_to: mov %g6, %g3 /* previous thread_info in g6 */ ret_from_fork: call schedule_tail mov %g3, %o0 /* previous thread_info is passed */ void schedule_tail(struct task_struct *prev); Signed-off-by: Tkhai Kirill <tkhai@yandex.ru> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | apbuart: Depend upon sparc.David S. Miller2011-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | It absolutely needs to be able to get at pdev_archdata members which are sparc specific. Signed-off-by: David S. Miller <davem@davemloft.net> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
| * | sparc64: Fix section mis-match errors.David S. Miller2011-03-3011-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix all of the problems spotted by CONFIG_DEBUG_SECTION_MISMATCH under arch/sparc during a 64-bit defconfig build. They fall into two categorites: 1) of_device_id is marked as __initdata, and we can never do this since these objects sit in the device core data structures way past boot. So even if a driver will never be reloaded, we have to keep the device ID table around. Mark such cases const instead. 2) The bootmem alloc/free handling code in mdesc.c was not fully marked __init as it should be, thus generating a reference to free_bootmem_late() (which is __init) from non-__init code. Signed-off-by: David S. Miller <davem@davemloft.net>
| * | sparc32,leon: Fixed APBUART frequency detectionDaniel Hellstrom2011-03-301-17/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The UARTs may be located on different APB buses, thus have different UART clock frequency. The system frequency is not the same (but often) as the UART frequency, rather the APB bus frequency that the APBUART is located at has the same frequency, so this looks at the "freq" property instead. Signed-off-by: Daniel Hellstrom <daniel@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | sparc32, leon: APBUART driver must use archdata to get IRQ numberDaniel Hellstrom2011-03-301-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See Commit id 1636f8ac2b08410df4766449f7c86b912443cd99 (sparc/of: Move of_device fields into struct pdev_archdata), this patch is similar to 19e4875fb21a69fbf620e84769a74d189c69c58d (of/sparc: fix build regression from of_device changes) Signed-off-by: Daniel Hellstrom <daniel@gaisler.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | sparc: Hook up syncfs system call.David S. Miller2011-03-293-2/+5
| | | | | | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds2011-04-0129-224/+543
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: appletalk: Fix OOPS in atalk_release(). mlx4: Fixing bad size of event queue buffer mlx4: Fixing use after free bonding:typo in comment sctp: Pass __GFP_NOWARN to hash table allocation attempts. connector: convert to synchronous netlink message processing fib: add rtnl locking in ip_fib_net_exit atm/solos-pci: Don't flap VCs when carrier state changes atm/solos-pci: Don't include frame pseudo-header on transmit hex-dump atm/solos-pci: Use VPI.VCI notation uniformly. Atheros, atl2: Fix mem leaks in error paths of atl2_set_eeprom netdev: fix mtu check when TSO is enabled net/usb: Ethernet quirks for the LG-VL600 4G modem phylib: phy_attach_direct: phy_init_hw can fail, add cleanup bridge: mcast snooping, fix length check of snooped MLDv1/2 via-ircc: Pass PCI device pointer to dma_{alloc, free}_coherent() via-ircc: Use pci_{get, set}_drvdata() instead of static pointer variable net: gre: provide multicast mappings for ipv4 and ipv6 bridge: Fix compilation warning in function br_stp_recalculate_bridge_id() net: Fix warnings caused by MAX_SKB_FRAGS change.
| * | appletalk: Fix OOPS in atalk_release().David S. Miller2011-03-311-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 60d9f461a20ba59219fdcdc30cbf8e3a4ad3f625 ("appletalk: remove the BKL") added a dereference of "sk" before checking for NULL in atalk_release(). Guard the code block completely, rather than partially, with the NULL check. Reported-by: Dave Jones <davej@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | mlx4: Fixing bad size of event queue bufferYevgeny Petrilin2011-03-311-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should reduce the number of reserved completion queues from the total number of entries. Since the queue size is power of two, not reducing the reserved entries, caused a double queue size, which may lead to allocation failures in some cases. Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | mlx4: Fixing use after freeYevgeny Petrilin2011-03-311-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of allocation failure, tried to use the promiscuous QP entry that was previously freed. Now freeing this entry only in case we will not put it back to the list of promiscuous entries. Reported-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Yevgeny Petrilin <yevgenyp@mellanox.co.il> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | bonding:typo in commentPeter Pan(潘卫平)2011-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | use accumulates instead of acumulates. Signed-off-by: Pan Weiping <panweiping3@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | sctp: Pass __GFP_NOWARN to hash table allocation attempts.David S. Miller2011-03-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like DCCP and other similar pieces of code, there are mechanisms here to try allocating smaller hash tables if the allocation fails. So pass in __GFP_NOWARN like the others do instead of emitting a scary message. Reported-by: Dave Jones <davej@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | connector: convert to synchronous netlink message processingPatrick McHardy2011-03-303-89/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commits 01a16b21 (netlink: kill eff_cap from struct netlink_skb_parms) and c53fa1ed (netlink: kill loginuid/sessionid/sid members from struct netlink_skb_parms) removed some members from struct netlink_skb_parms that depend on the current context, all netlink users are now required to do synchronous message processing. connector however queues received messages and processes them in a work queue, which is not valid anymore. This patch converts connector to do synchronous message processing by invoking the registered callback handler directly from the netlink receive function. In order to avoid invoking the callback with connector locks held, a reference count is added to struct cn_callback_entry, the reference is taken when finding a matching callback entry on the device's queue_list and released after the callback handler has been invoked. Signed-off-by: Patrick McHardy <kaber@trash.net> Acked-by: Evgeniy Polyakov <zbr@ioremap.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | fib: add rtnl locking in ip_fib_net_exitEric Dumazet2011-03-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Daniel J Blueman reported a lockdep splat in trie_firstleaf(), caused by RTNL being not locked before a call to fib_table_flush() Reported-by: Daniel J Blueman <daniel.blueman@gmail.com> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | atm/solos-pci: Don't flap VCs when carrier state changesPhilip A. Prindeville2011-03-303-25/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't flap VCs when carrier state changes; higher-level protocols can detect loss of connectivity and act accordingly. This is more consistent with how other network interfaces work. We no longer use release_vccs() so we can delete it. release_vccs() was duplicated from net/atm/common.c; make the corresponding function exported, since other code duplicates it and could leverage it if it were public. Signed-off-by: Philip A. Prindeville <philipp@redfish-solutions.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | atm/solos-pci: Don't include frame pseudo-header on transmit hex-dumpPhilip A. Prindeville2011-03-301-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Omit pkt_hdr preamble when dumping transmitted packet as hex-dump; we can pull this up because the frame has already been sent, and dumping it is the last thing we do with it before freeing it. Also include the size, vpi, and vci in the debug as is done on receive. Use "port" consistently instead of "device" intermittently. Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | atm/solos-pci: Use VPI.VCI notation uniformly.Philip A. Prindeville2011-03-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Use VPI.VCI notation consistently throughout the module. This is the one remaining place where the VCI is used before the VPI in any output. Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | Atheros, atl2: Fix mem leaks in error paths of atl2_set_eepromJesper Juhl2011-03-301-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | We leak in some error paths of drivers/net/atlx/atl2.c:atl2_set_eeprom(). The memory allocated to 'eeprom_buff' is not freed when we return -EIO. This patch fixes that up and also removes a pointless explicit cast. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | netdev: fix mtu check when TSO is enabledDaniel Lezcano2011-03-301-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case the device where is coming from the packet has TSO enabled, we should not check the mtu size value as this one could be bigger than the expected value. This is the case for the macvlan driver when the lower device has TSO enabled. The macvlan inherit this feature and forward the packets without fragmenting them. Then the packets go through dev_forward_skb and are dropped. This patch fix this by checking TSO is not enabled when we want to check the mtu size. Signed-off-by: Daniel Lezcano <daniel.lezcano@free.fr> Acked-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net/usb: Ethernet quirks for the LG-VL600 4G modemAndrzej Zaborowski2011-03-306-9/+387
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a driver for the CDC Ethernet part of this modem. The device's ID is blacklisted in cdc_ether.c and is white-listed in this new driver because of the quirks needed to make it useful. The modem's firmware exposes a CDC ACM port for modem control and a CDC Ethernet port for network data. The descriptors look fine but both ports actually are some sort of multiplexers requiring non- standard headers added/removed from every packet or they get ignored. All information is based on a usb traffic log from a Windows machine. On the Verizon 4G network I've seen speeds up to 1.1MB/s so far with this driver, a speed-o-meter site reports 16.2Mbps/10.5Mbps. Userspace scripts are required to talk to the CDC ACM port. Signed-off-by: Andrzej Zaborowski <balrogg@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | phylib: phy_attach_direct: phy_init_hw can fail, add cleanupMarc Kleine-Budde2011-03-301-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function phy_attach_direct attaches the phy and calls phy_init_hw. phy_init_hw can fail, but the phy is still marked as attached. Successive calls to phy_attach_direct will fail because the phy is busy. [ 1.020000] eth0: Freescale FEC PHY driver [Generic PHY] (mii_bus:phy_addr=1:00, irq=-1) [ 1.030000] eth1: Freescale FEC PHY driver [Generic PHY] (mii_bus:phy_addr=1:01, irq=-1) [ 2.050000] Sending DHCP requests . [ 3.020000] PHY: 1:00 - Link is Up - 100/Full [ 5.110000] ..... timed out! [ 87.660000] IP-Config: Reopening network devices... [ 88.190000] FEC: MDIO read timeout [ 88.190000] eth0: could not attach to PHY [ 88.190000] IP-Config: Failed to open eth0 [ 88.210000] FEC: MDIO read timeout [ 88.210000] eth1: could not attach to PHY [ 88.210000] IP-Config: Failed to open eth1 [ 88.220000] IP-Config: No network devices available. [ 88.220000] Freeing init memory: 6968K [...] starting network interfaces... ip: RTNETLINK answers: File exists [ 94.000000] net eth0: PHY already attached [ 94.010000] eth0: could not attach to PHY ip: SIOCSIFFLAGS: Device or resource busy This patch adds phy_detach to clean up if phy_init_hw fails. Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | bridge: mcast snooping, fix length check of snooped MLDv1/2Linus Lüssing2011-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "len = ntohs(ip6h->payload_len)" does not include the length of the ipv6 header itself, which the rest of this function assumes, though. This leads to a length check less restrictive as it should be in the following line for one thing. For another, it very likely leads to an integer underrun when substracting the offset and therefore to a very high new value of 'len' due to its unsignedness. This will ultimately lead to the pskb_trim_rcsum() practically never being called, even in the cases where it should. Signed-off-by: Linus Lüssing <linus.luessing@web.de> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | via-ircc: Pass PCI device pointer to dma_{alloc, free}_coherent()Ben Hutchings2011-03-301-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | via-ircc has been passing a NULL pointer to DMA allocation functions, which is completely invalid and results in a BUG on PowerPC. Now that we always have the device pointer available, pass it in. Reference: http://bugs.debian.org/619450 Reported-by: Andrew Buckeridge <andrewb@bgc.com.au> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Tested-by: Andrew Buckeridge <andrewb@bgc.com.au> [against 2.6.32] Signed-off-by: David S. Miller <davem@davemloft.net>
| * | via-ircc: Use pci_{get, set}_drvdata() instead of static pointer variableBen Hutchings2011-03-301-67/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | via-ircc still maintains its own array of device pointers in Linux 2.4 style. Worse, it always uses index 0, so it will crash if there are multiple suitable devices in the system. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net: gre: provide multicast mappings for ipv4 and ipv6Timo Teräs2011-03-304-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My commit 6d55cb91a0020ac0 (gre: fix hard header destination address checking) broke multicast. The reason is that ip_gre used to get ipgre_header() calls with zero destination if we have NOARP or multicast destination. Instead the actual target was decided at ipgre_tunnel_xmit() time based on per-protocol dissection. Instead of allowing the "abuse" of ->header() calls with invalid destination, this creates multicast mappings for ip_gre. This also fixes "ip neigh show nud noarp" to display the proper multicast mappings used by the gre device. Reported-by: Doug Kehn <rdkehn@yahoo.com> Signed-off-by: Timo Teräs <timo.teras@iki.fi> Acked-by: Doug Kehn <rdkehn@yahoo.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | bridge: Fix compilation warning in function br_stp_recalculate_bridge_id()Balaji G2011-03-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | net/bridge/br_stp_if.c: In function ‘br_stp_recalculate_bridge_id’: net/bridge/br_stp_if.c:216:3: warning: ‘return’ with no value, in function returning non-void Signed-off-by: G.Balaji <balajig81@gmail.com> Acked-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net: Fix warnings caused by MAX_SKB_FRAGS change.David S. Miller2011-03-291-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After commit a715dea3c8e9ef2771c534e05ee1d36f65987e64 ("net: Always allocate at least 16 skb frags regardless of page size"), the value of MAX_SKB_FRAGS can now take on either an "unsigned long" or an "int" value. This causes warnings like: net/packet/af_packet.c: In function ‘tpacket_fill_skb’: net/packet/af_packet.c:948: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘int’ Fix by forcing the constant to be unsigned long, otherwise we have a situation where the type of a system wide constant is variable. Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'release' of ↵Linus Torvalds2011-03-301-42/+0
|\ \ | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Fix build breakage - sn_force_interrupt_flag: undefined
| * | [IA64] Fix build breakage - sn_force_interrupt_flag: undefinedTony Luck2011-03-291-42/+0
| |/ | | | | | | | | | | | | | | Latest irq changes removed the need for this forcing flag, and the definition - but missed the code that allowed it to be tweaked via /proc. Delete accessor functions too. Signed-off-by: Tony Luck <tony.luck@intel.com>
OpenPOWER on IntegriCloud