aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-04-04USB: ehci-atmel: add needed of.h header fileNicolas Ferre1-0/+1
Compilation error in case of non-DT configuration without this of.h header file. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Acked-by: Alan Stern <[email protected]>
2012-04-04ARM: at91/NAND DT bindings: add commentsNicolas Ferre1-5/+5
Add comments to NAND "gpios" property to make it clearer. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
2012-04-04ARM: at91/at91sam9x5.dtsi: fix NAND ale/cle in DT fileNicolas Ferre1-2/+2
Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
2012-04-04USB: ohci-at91: trivial return code name changeNicolas Ferre1-4/+3
Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Acked-by: Alan Stern <[email protected]>
2012-04-04USB: ohci-at91: change maximum number of portsNicolas Ferre2-36/+43
Change number of ports to 3 for newer SoCs. Modify pdata structure and ohci-at91 code that was dealing with ports information and check of port indexes. Several coding style errors have been addresses as the patch was touching affected lines of code and was producing errors while run through checkpatch.pl. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Acked-by: Alan Stern <[email protected]>
2012-04-04USB: ohci-at91: rework and fix initializationNicolas Ferre1-42/+46
The DT information are filled in a pdata structure and then passed on to the usual check code of the probe function. Thus we do not need to redo the gpio checking and irq configuration in the DT-related code. On the other hand, we setup GPIO direction in driver for vbus and overcurrent. It will be useful when moving to pinctrl subsystem. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Acked-by: Alan Stern <[email protected]>
2012-04-04ARM: at91/dts: USB host vbus is active lowNicolas Ferre2-4/+4
Change vbus gpio configuration in .dts files to switch to active low configuration. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Cc: stable <[email protected]>
2012-04-04ARM: at91/USB host: specify and handle properly vbus_pin_active_lowNicolas Ferre4-3/+8
Due to an error while handling vbus_pin_active_low in ohci-at91 driver, the specification of this property was not good in devices/board files. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Cc: stable <[email protected]> [3.2+]
2012-04-04USB: ohci-at91: fix vbus_pin_active_low handlingNicolas Ferre1-2/+2
The information is not properly taken into account for {get|set}_power() functions. Signed-off-by: Nicolas Ferre <[email protected]> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]> Acked-by: Alan Stern <[email protected]> Cc: stable <[email protected]> [3.2+]
2012-04-04ARM: EXYNOS: use chip_id reg in uncompress to select uart base physDima Zavin1-1/+16
Signed-off-by: Dima Zavin <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
2012-04-04ARM: EXYNOS: fix CONFIG_DEBUG_LLColin Cross1-4/+3
addruart cannot read from the physical address of the chipid register, that will fail as soon as the mmu is turned on. Fixing it to read from the physical or virtual address depending on the mmu state also does not work, because there is a period between head.S and exynos_map_io where the mmu is on, the uart is mapped and used, but the chipid mapping is not yet present. Fix addruart to use the ARM Main ID cp15 register to determine if the core is Cortex A15 (EXYNOS5) or not (EXYNOS4). Signed-off-by: Colin Cross <[email protected]> Tested-by: Marek Szyprowski <[email protected]> Tested-by: Thomas Abraham <[email protected]> Signed-off-by: Kukjin Kim <[email protected]>
2012-04-04Merge tag 'hwmon-for-linus' of ↵Linus Torvalds9-29/+42
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging Pull hwmon patches from Guenter Roeck: - Fix crash in ad7314 driver - Add support for AMD Trinity CPUs to k10temp driver - Fix __initdata/__initconst mixup in w83627ehf driver - Fix runtime warnings in acpi_power_meter and max6639 drivers - Fix build warnings in adm1031, f75375s, sht15, and gpio-fan drivers * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: hwmon: (ad7314) Adds missing spi_dev initialization hwmon: (k10temp) Add support for AMD Trinity CPUs hwmon: (w83627ehf) mark const init data with __initconst instead of __initdata hwmon: (acpi_power_meter) fix lockdep spew due to non-static lock class hwmon: (adm1031) Fix compiler warning hwmon: (f75375s) Fix warning message seen in some configurations hwmon: (max6639) Convert to dev_pm_ops hwmon: (sht15) Fix Kconfig dependencies hwmon: (gpio-fan) Fix Kconfig dependencies
2012-04-04Merge tag 'mce-fix-for-3.4' of ↵Linus Torvalds1-4/+2
git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp Pull MCE fixlet from Borislav Petkov: "One fix which makes MCE decoding much more "liberal" wrt families." * tag 'mce-fix-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: MCE, AMD: Drop too granulary family model checks
2012-04-04ARM: OMAP AM3517/3505: clock data: change EMAC clocks aliasesIlya Yanok1-2/+2
Rename EMAC clocks to match driver expectations: both davinci_emac and davinci_mdio drivers call clk_get(dev, NULL) so we have to provide ("davinci_emac", NULL) and ("davinci_mdio.0", NULL) clocks instead of ("davinci_emac", "emac_clk") and ("davinci_emac", "phy_clk") resp. Cc: Paul Walmsley <[email protected]> Signed-off-by: Ilya Yanok <[email protected]> Tested-by: Yegor Yefremov <[email protected]> Tested-by: Matt Porter <[email protected]> Signed-off-by: Paul Walmsley <[email protected]>
2012-04-04Merge tag 'md-3.4-fixes' of git://neil.brown.name/mdLinus Torvalds5-35/+75
Pull assorted md fixes from Neil Brown: - some RAID levels didn't clear up properly if md_integrity_register failed - a 'check' of RAID5/RAID6 doesn't actually read any data since a recent patch - so fix that (and mark for -stable) - a couple of other minor bugs. * tag 'md-3.4-fixes' of git://neil.brown.name/md: md/raid1,raid10: don't compare excess byte during consistency check. md/raid5: Fix a bug about judging if the operation is syncing or replacing md/raid1:Remove unnecessary rcu_dereference(conf->mirrors[i].rdev). md: Avoid OOPS when reshaping raid1 to raid0 md/raid5: fix handling of bad blocks during recovery. md/raid1: If md_integrity_register() failed,run() must free the mem md/raid0: If md_integrity_register() fails, raid0_run() must free the mem. md/linear: If md_integrity_register() fails, linear_run() must free the mem.
2012-04-04Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-armLinus Torvalds6-4/+8
Pull ARM fixes from Russell King: "Nothing too big here, just small fixes." * 'fixes' of git://git.linaro.org/people/rmk/linux-arm: ARM: fix more fallout from 9f97da78bf (Disintegrate asm/system.h for ARM) ARM: fix bios32.c build warning ARM: 7337/1: ptrace: fix ptrace_read_user for !CONFIG_MMU platforms ARM: fix missing bug.h include in arch/arm/kernel/insn.c ARM: sa11x0: fix build errors from DMA engine API updates
2012-04-04Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparcLinus Torvalds2-4/+4
Pull Sparc fixes from David Miller: "One build regression and one serial probe regression fix on sparc." * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: serial/sunzilog: fix keyboard on SUN SPARCstation sparc: pgtable_64: change include order
2012-04-04avr32: fix nop compile fails from system.h split upPaul Gortmaker2-13/+2
To fix: In file included from kernel/exit.c:61: arch/avr32/include/asm/mmu_context.h: In function 'enable_mmu': arch/avr32/include/asm/mmu_context.h:135: error: implicit declaration of function 'nop' It needs an include of the new file created in commit ae4739465866 ("Disintegrate asm/system.h for AVR32"), but since that file only contains "nop", and since other arch already have precedent of putting nop in asm/barrier.h we should just delete the new file and put nop in barrier.h Suggested-and-acked-by: David Howells <[email protected]> Cc: Haavard Skinnemoen <[email protected]> Cc: Hans-Christian Egtvedt <[email protected]> Signed-off-by: Paul Gortmaker <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2012-04-04ARM: OMAP: clock: fix race in disable all clocksNishanth Menon1-2/+3
clk_disable_unused is invoked when CONFIG_OMAP_RESET_CLOCKS=y. Since clk_disable_unused is called as lateinitcall, there can be more than a few workqueues executing off secondary CPU(s). The current code does the following: a) checks if clk is unused b) holds lock c) disables clk d) unlocks Between (a) and (b) being executed on CPU0, It is possible to have a driver executing on CPU1 which could do a get_sync->clk_get (and increase the use_count) of the clock which was just about to be disabled by clk_disable_unused. We ensure instead that the entire list traversal is protected by the lock allowing for parent child clock traversal which could be potentially be done by runtime operations to be safe as well. Reported-by: Todd Poynor <[email protected]> Signed-off-by: Nishanth Menon <[email protected]> Signed-off-by: Paul Walmsley <[email protected]>
2012-04-04Revert "nouveau/bios: Fix tracking of BIOS image data"Linus Torvalds1-3/+1
This reverts commit d06221c0617ab6d0bc41c4980cefdd9c8cc9a1c1. It turns out to trigger the "BUG_ON(!PageCompound(page))" in kfree(), apparently because the code ends up trying to free somethng that was never kmalloced in the first place. BenH points out that the patch was untested and wasn't meant to go into the upstream kernel that quickly in the first place. Backtrace: bios_shadow bios_shadow_prom nv_mask init_io bios_shadow nouveau_bios_init NVReadVgaCrtc NVSetOwner nouveau_card_init nouveau_load Reported-by: Meelis Roos <[email protected]> Requested-by: Dave Airlie <[email protected]> Acked-by: Benjamin Herrenschmidt <[email protected]> Cc: Ben Skeggs <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2012-04-04ARM: OMAP4: hwmod data: Add aliases for McBSP fclk clocksPaul Walmsley1-0/+28
CLKS signal for McBSP ports can be selected from internal (PRCM) or external (ABE_CLKS pin) source. To be able to use existing code we need to create clock aliases consistent among OMAP2/3/4. Based on a patch from Péter Ujfalusi <[email protected]>; the patch description above is his. Signed-off-by: Paul Walmsley <[email protected]> Cc: Péter Ujfalusi <[email protected]> Cc: Tony Lindgren <[email protected]> Acked-by: Peter Ujfalusi <[email protected]>
2012-04-05sh: fix clock-sh7757 for the latest sh_mobile_sdhi driverShimoda, Yoshihiro1-1/+1
The commit 996bc8aebd2cd5b6d4c5d85085f171fa2447f364 (mmc: sh_mobile_sdhi: do not manage PM clocks manually) modified the sh_mobile_sdhi driver to remove the clk_enable/clk_disable. So, we need to change the "CLKDEV_CON_ID" to "CLKDEV_DEV_ID". If we don't change this, we will see the following error from the driver: sh_mobile_sdhi sh_mobile_sdhi.0: timeout waiting for hardware interrupt (CMD52) Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Paul Mundt <[email protected]>
2012-04-04ARM: OMAP3xxx: clock data: fix DPLL4 CLKSEL masksGrazvydas Ignotas1-4/+4
Commit 2a9f5a4d455 "OMAP3 clock: remove unnecessary duplicate of dpll4_m2_ck, added for 36xx" consolidated dpll4 clock structures between 34xx and 36xx, but left 34xx CLKSEL masks for most dpll4 related clocks, which causes clock code to not behave correctly when booting on DM3730 with higher (36xx only) divisors set: [ 0.000000] WARNING: at arch/arm/mach-omap2/clkt_clksel.c:375 omap2_init_clksel_parent+0x104/0x114() [ 0.000000] clock: dpll4_m3_ck: init parent: could not find regval 0 [ 0.000000] WARNING: at arch/arm/mach-omap2/clkt_clksel.c:194 omap2_clksel_recalc+0xd4/0xe4() [ 0.000000] clock: Could not find fieldval 0 for clock dpll4_m3_ck parent dpll4_ck Fix this by switching to 36xx masks, as valid divisors will be limited by clksel_rate lists. Cc: Paul Walmsley <[email protected]> Signed-off-by: Grazvydas Ignotas <[email protected]> Signed-off-by: Paul Walmsley <[email protected]>
2012-04-04ARM: OMAP3xxx: HSMMC: avoid erratum workaround when transceiver is attachedGrazvydas Ignotas1-0/+7
If transceiver is attached to a MMC host of ES2.1 OMAP35xx, it seems 2.1.1.128 erratum doesn't apply and there is no data corruption, probably because of different signal timing. The workaround for this erratum disables multiblock reads, which causes dramatic loss of performance (over 75% slower), so avoid it when transceiver is present. Cc: Paul Walmsley <[email protected]> Signed-off-by: Grazvydas Ignotas <[email protected]> [[email protected]: edited commit message slightly] Signed-off-by: Paul Walmsley <[email protected]>
2012-04-04ARM: OMAP44xx: clockdomain data: correct the emu_sys_clkdm CLKTRCTRL dataPaul Walmsley1-1/+1
According to the 4430 ES2.0 TRM vX Table 3-744 "CM_EMU_CLKSTCTRL", the emu_sys clockdomain data in mainline is incorrect. The emu_sys clockdomain does not support the DISABLE_AUTO state, and instead it supports the FORCE_WAKEUP state. Signed-off-by: Paul Walmsley <[email protected]> Cc: Benoît Cousson <[email protected]> Cc: Kevin Hilman <[email protected]> Cc: Santosh Shilimkar <[email protected]> Cc: Ming Lei <[email protected]> Cc: Will Deacon <[email protected]>
2012-04-04MCE, AMD: Drop too granulary family model checksBorislav Petkov1-4/+2
MCA details seldom change inbetween the models of a family so don't be too conservative and enable decoding on everything starting from K8 onwards. Minor adjustments can come in later but most importantly, we have some decoding infrastructure in place for upcoming models by default. Signed-off-by: Borislav Petkov <[email protected]>
2012-04-04serial/sunzilog: fix keyboard on SUN SPARCstationSam Ravnborg1-2/+2
The keyboard on my SUN SPARCstation 5 no longer worked. The culprint was: d4e33fac2408d37f7b52e80ca2a89f9fb482914f ("serial: Kill off NO_IRQ") Fix up logic for no irq / irq so the keyboard works again. Signed-off-by: Sam Ravnborg <[email protected]> Cc: Alan Cox <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03Fix UNC parsing on mountSachin Prabhu1-7/+7
The code cleanup of cifs_parse_mount_options resulted in a new bug being introduced in the parsing of the UNC. This results in vol->UNC being modified before vol->UNC was allocated. Reported-by: Steve French <[email protected]> Signed-off-by: Sachin Prabhu <[email protected]> Signed-off-by: Steve French <[email protected]>
2012-04-03hwmon: (ad7314) Adds missing spi_dev initializationGraeme Smecher1-0/+1
This driver was recently moved from IIO (where it worked) to hwmon (where it doesn't.) This breakage occured because the hwmon version neglected to correctly initialize a reference to spi_dev in its drvdata. The result is a segfault every time the temperature is queried. Signed-off-by: Graeme Smecher <[email protected]> Cc: [email protected] # 3.2+ Signed-off-by: Guenter Roeck <[email protected]>
2012-04-03netfilter: nf_conntrack: fix count leak in error path of __nf_conntrack_allocPablo Neira Ayuso1-0/+1
We have to decrement the conntrack counter if we fail to access the zone extension. Reported-by: Tetsuo Handa <[email protected]> Signed-off-by: Pablo Neira Ayuso <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03netfilter: xt_CT: fix missing put timeout object in error pathPablo Neira Ayuso1-5/+19
The error path misses putting the timeout object. This patch adds new function xt_ct_tg_timeout_put() to put the timeout object. Reported-by: Tetsuo Handa <[email protected]> Signed-off-by: Pablo Neira Ayuso <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03netfilter: xt_CT: allocation has to be GFP_ATOMIC under rcu_read_lock sectionPablo Neira Ayuso1-1/+1
Reported-by: Tetsuo Handa <[email protected]> Signed-off-by: Pablo Neira Ayuso <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03Merge branch 'master' of git://1984.lsi.us.es/netDavid S. Miller3-3/+5
2012-04-03r8169: enable napi on resume.Artem Savkov1-0/+3
NAPI is disabled during suspend and needs to be enabled on resume. Without this the driver locks up during resume in rtl_reset_work() trying to disable NAPI again. Signed-off-by: Artem Savkov <[email protected]> Acked-by: Francois Romieu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03Remove unnecessary check for NULL in password parserSachin Prabhu1-2/+1
The password parser has an unnecessary check for a NULL value which triggers warnings in source checking tools. The code contains artifacts from the old parsing code which are no longer required. Signed-off-by: Sachin Prabhu <[email protected]> Reviewed-by: Jeff Layton <[email protected]> Reported-by: Dan Carpenter <[email protected]> Signed-off-by: Steve French <[email protected]>
2012-04-03bnx2x: correction to firmware interfaceYuval Mintz1-55/+55
Commit 621b4d6 updated the bnx2x driver to a new FW version, but lacked a commit to a header file with changes to the firmware's interface. The missing interface change causes iscsi and fcoe to misbehave with the updated firmware. Signed-off-by: Yuval Mintz <[email protected]> Signed-off-by: Dmitry Kravkov <[email protected]> Signed-off-by: Eilon Greenstein <[email protected]> CC: Michael Chan <[email protected]> CC: Bhanu Prakash Gollapudi <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03phy:icplus:fix Auto Power Saving in ip101a_config_init.Srinivas Kandagatla1-1/+2
This patch fixes Auto Power Saving configuration in ip101a_config_init which was broken as there is no phy register write followed after setting IP101A_APS_ON flag. This patch also fixes the return value of ip101a_config_init. Without this patch ip101a_config_init returns 2 which is not an error accroding to IS_ERR and the mac driver will continue accessing 2 as valid pointer to phy_dev resulting in memory fault. Signed-off-by: Srinivas Kandagatla <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03Merge branch 'master' of ↵David S. Miller3-84/+112
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net
2012-04-03e1000e: Guarantee descriptor writeback flush success.Matthew Vick1-0/+17
In rare circumstances, a descriptor writeback flush may not work if it arrives on a specific clock cycle as a writeback request is going out. Signed-off-by: Matthew Vick <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2012-04-03e1000e: prevent oops when adapter is being closed and reset simultaneouslyBruce Allan2-0/+15
When the adapter is closed while it is simultaneously going through a reset, it can cause a null-pointer dereference when the two different code paths simultaneously cleanup up the Tx/Rx resources. Signed-off-by: Bruce Allan <[email protected]> Tested-by: Aaron Brown <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2012-04-03ixgbe: driver fix for link flapMultanen, Eric W1-84/+80
Fix up code so that changes in DCB settings are detected only when ixgbe_dcbnl_set_all is called. Previously, a series of 'change' commands followed by a call to ixgbe_dcbnl_set_all() would always be handled as a HW change - even if the net change was zero. This patch checks for this case of no actual change and skips going through the HW set process. Without this fix, the link could reset and result in a link flap. The core change in this patch is to check for changes in the ixgbe_copy_dcb_cfg() routine - and return a bitmask of detected changes. The other places where changes were detected previously can be removed. Signed-off-by: Eric Multanen <[email protected]> Tested-by: Ross Brattain <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]>
2012-04-03bpf jit: Let the x86 jit handle negative offsetsJan Seiffert2-48/+115
Now the helper function from filter.c for negative offsets is exported, it can be used it in the jit to handle negative offsets. First modify the asm load helper functions to handle: - know positive offsets - know negative offsets - any offset then the compiler can be modified to explicitly use these helper when appropriate. This fixes the case of a negative X register and allows to lift the restriction that bpf programs with negative offsets can't be jited. Signed-of-by: Jan Seiffert <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03bpf jit: Make the filter.c::__load_pointer helper non-static for the jitsJan Seiffert1-3/+6
The function is renamed to make it a little more clear what it does. It is not added to any .h because it is not for general consumption, only for bpf internal use (and so by the jits). Signed-of-by: Jan Seiffert <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03TCP: update ip_local_port_range documentationFernando Luis Vazquez Cao1-9/+2
The explanation of ip_local_port_range in Documentation/networking/ip-sysctl.txt contains several factual errors: - The default value of ip_local_port_range does not depend on the amount of memory available in the system. - tcp_tw_recycle is not enabled by default. - 1024-4999 is not the default value. - Etc. Clean up the mess. Signed-off-by: Fernando Luis Vazquez Cao <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03tcp: allow splice() to build full TSO packetsEric Dumazet1-1/+1
vmsplice()/splice(pipe, socket) call do_tcp_sendpages() one page at a time, adding at most 4096 bytes to an skb. (assuming PAGE_SIZE=4096) The call to tcp_push() at the end of do_tcp_sendpages() forces an immediate xmit when pipe is not already filled, and tso_fragment() try to split these skb to MSS multiples. 4096 bytes are usually split in a skb with 2 MSS, and a remaining sub-mss skb (assuming MTU=1500) This makes slow start suboptimal because many small frames are sent to qdisc/driver layers instead of big ones (constrained by cwnd and packets in flight of course) In fact, applications using sendmsg() (adding an additional memory copy) instead of vmsplice()/splice()/sendfile() are a bit faster because of this anomaly, especially if serving small files in environments with large initial [c]wnd. Call tcp_push() only if MSG_MORE is not set in the flags parameter. This bit is automatically provided by splice() internals but for the last page, or on all pages if user specified SPLICE_F_MORE splice() flag. In some workloads, this can reduce number of sent logical packets by an order of magnitude, making zero-copy TCP actually faster than one-copy :) Reported-by: Tom Herbert <[email protected]> Cc: Nandita Dukkipati <[email protected]> Cc: Neal Cardwell <[email protected]> Cc: Tom Herbert <[email protected]> Cc: Yuchung Cheng <[email protected]> Cc: H.K. Jerry Chu <[email protected]> Cc: Maciej Żenczykowski <[email protected]> Cc: Mahesh Bandewar <[email protected]> Cc: Ilpo Järvinen <[email protected]> Signed-off-by: Eric Dumazet <eric.dumazet@gmail>com> Signed-off-by: David S. Miller <[email protected]>
2012-04-03ppp: Don't stop and restart queue on every TX packetDavid Woodhouse1-5/+9
For every transmitted packet, ppp_start_xmit() will stop the netdev queue and then, if appropriate, restart it. This causes the TX softirq to run, entirely gratuitously. This is "only" a waste of CPU time in the normal case, but it's actively harmful when the PPP device is a TEQL slave — the wakeup will cause the offending device to receive the next TX packet from the TEQL queue, when it *should* have gone to the next slave in the list. We end up seeing large bursts of packets on just *one* slave device, rather than using the full available bandwidth over all slaves. This patch fixes the problem by *not* unconditionally stopping the queue in ppp_start_xmit(). It adds a return value from ppp_xmit_process() which indicates whether the queue should be stopped or not. It *doesn't* remove the call to netif_wake_queue() from ppp_xmit_process(), because other code paths (especially from ppp_output_wakeup()) need it there and it's messy to push it out to the other callers to do it based on the return value. So we leave it in place — it's a no-op in the case where the queue wasn't stopped, so it's harmless in the TX path. Signed-off-by: David Woodhouse <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03net: fix /proc/net/dev regressionEric Dumazet3-48/+15
Commit f04565ddf52 (dev: use name hash for dev_seq_ops) added a second regression, as some devices are missing from /proc/net/dev if many devices are defined. When seq_file buffer is filled, the last ->next/show() method is canceled (pos value is reverted to value prior ->next() call) Problem is after above commit, we dont restart the lookup at right position in ->start() method. Fix this by removing the internal 'pos' pointer added in commit, since we need to use the 'loff_t *pos' provided by seq_file layer. This also reverts commit 5cac98dd0 (net: Fix corruption in /proc/*/net/dev_mcast), since its not needed anymore. Reported-by: Ben Greear <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> Cc: Mihai Maruseac <[email protected]> Tested-by: Ben Greear <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-03Merge branch 'for_3.4/fixes/pm' of ↵Tony Lindgren4-23/+31
git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into fixes
2012-04-03Merge branch 'fixes-smsc911x' into fixesTony Lindgren9-81/+68
2012-04-03ARM: OMAP: fix section mismatches in usb-host.cIgor Grinberg1-4/+6
Fix the below section mismatch warning and alike: WARNING: vmlinux.o(.text+0x281d4): Section mismatch in reference from the function setup_ehci_io_mux() to the function .init.text:omap_mux_init_signal() The function setup_ehci_io_mux() references the function __init omap_mux_init_signal(). This is often because setup_ehci_io_mux lacks a __init annotation or the annotation of omap_mux_init_signal is wrong. Signed-off-by: Igor Grinberg <[email protected]> Reviewed-by: Shubhrajyoti D <[email protected]> Acked-by: Felipe Balbi <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>