Commits on Jun 3, 2012
  1. Linux 3.5-rc1

    committed Jun 3, 2012
  2. Merge tag 'dm-3.5-changes-1' of git://…

    Pull device-mapper updates from Alasdair G Kergon:
     "Improve multipath's retrying mechanism in some defined circumstances
      and provide a simple reserve/release mechanism for userspace tools to
      access thin provisioning metadata while the pool is in use."
    * tag 'dm-3.5-changes-1' of git://
      dm thin: provide userspace access to pool metadata
      dm thin: use slab mempools
      dm mpath: allow ioctls to trigger pg init
      dm mpath: delay retry of bypassed pg
      dm mpath: reduce size of struct multipath
    committed Jun 3, 2012
Commits on Jun 2, 2012
  1. dm thin: provide userspace access to pool metadata

    This patch implements two new messages that can be sent to the thin
    pool target allowing it to take a snapshot of the _metadata_.  This,
    read-only snapshot can be accessed by userland, concurrently with the
    live target.
    Only one metadata snapshot can be held at a time.  The pool's status
    line will give the block location for the current msnap.
    Since version 0.1.5 of the userland thin provisioning tools, the
    thin_dump program displays the msnap as follows:
        thin_dump -m <msnap root> <metadata dev>
    Available here:
    Now that userland can access the metadata we can do various things
    that have traditionally been kernel side tasks:
         i) Incremental backups.
         By using metadata snapshots we can work out what blocks have
         changed over time.  Combined with data snapshots we can ensure
         the data doesn't change while we back it up.
         A short proof of concept script can be found here:
         ii) Migration of thin devices from one pool to another.
         iii) Merging snapshots back into an external origin.
         iv) Asyncronous replication.
    Signed-off-by: Joe Thornber <>
    Signed-off-by: Alasdair G Kergon <>
    jthornber committed with kergon Jun 2, 2012
  2. dm thin: use slab mempools

    Use dedicated caches prefixed with a "dm_" name rather than relying on
    kmalloc mempools backed by generic slab caches so the memory usage of
    thin provisioning (and any leaks) can be accounted for independently.
    Signed-off-by: Mike Snitzer <>
    Signed-off-by: Alasdair G Kergon <>
    snitm committed with kergon Jun 2, 2012
  3. dm mpath: allow ioctls to trigger pg init

    After the failure of a group of paths, any alternative paths that
    need initialising do not become available until further I/O is sent to
    the device.  Until this has happened, ioctls return -EAGAIN.
    With this patch, new paths are made available in response to an ioctl
    too.  The processing of the ioctl gets delayed until this has happened.
    Instead of returning an error, we submit a work item to kmultipathd
    (that will potentially activate the new path) and retry in ten
    Note that the patch doesn't retry an ioctl if the ioctl itself fails due
    to a path failure.  Such retries should be handled intelligently by the
    code that generated the ioctl in the first place, noting that some SCSI
    commands should not be retried because they are not idempotent (XOR write
    commands).  For commands that could be retried, there is a danger that
    if the device rejected the SCSI command, the path could be errorneously
    marked as failed, and the request would be retried on another path which
    might fail too.  It can be determined if the failure happens on the
    device or on the SCSI controller, but there is no guarantee that all
    SCSI drivers set these flags correctly.
    Signed-off-by: Mikulas Patocka <>
    Signed-off-by: Alasdair G Kergon <>
    Mikulas Patocka committed with kergon Jun 2, 2012
  4. dm mpath: delay retry of bypassed pg

    If I/O needs retrying and only bypassed priority groups are available,
    set the pg_init_delay_retry flag to wait before retrying.
    If, for example, the reason for the bypass is that the controller is
    getting reset or there is a firmware upgrade happening, retrying right
    away would cause a flood of log messages and retries for what could be a
    few seconds or even several minutes.
    Signed-off-by: Mike Christie <>
    Acked-by: Mike Snitzer <>
    Signed-off-by: Alasdair G Kergon <>
    Mike Christie committed with kergon Jun 2, 2012
  5. dm mpath: reduce size of struct multipath

    Move multipath structure's 'lock' and 'queue_size' members to eliminate
    two 4-byte holes.  Also use a bit within a single unsigned int for each
    existing flag (saves 8-bytes).  This allows future flags to be added
    without each consuming an unsigned int.
    Signed-off-by: Mike Snitzer <>
    Acked-by: Hannes Reinecke <>
    Signed-off-by: Alasdair G Kergon <>
    snitm committed with kergon Jun 2, 2012
  6. Merge git://

    Pull networking updates from David Miller:
     1) Make syn floods consume significantly less resources by
        a) Not pre-COW'ing routing metrics for SYN/ACKs
        b) Mirroring the device queue mapping of the SYN for the SYN/ACK
        Both from Eric Dumazet.
     2) Fix calculation errors in Byte Queue Limiting, from Hiroaki SHIMODA.
     3) Validate the length requested when building a paged SKB for a
        socket, so we don't overrun the page vector accidently.  From Jason
     4) When netlabel is disabled, we abort all IP option processing when we
        see a CIPSO option.  This isn't the right thing to do, we should
        simply skip over it and continue processing the remaining options
        (if any).  Fix from Paul Moore.
     5) SRIOV fixes for the mellanox driver from Jack orgenstein and Marcel
     6) 8139cp enables the receiver before the ring address is properly
        programmed, which potentially lets the device crap over random
        memory.  Fix from Jason Wang.
     7) e1000/e1000e fixes for i217 RST handling, and an improper buffer
        address reference in jumbo RX frame processing from Bruce Allan and
        Sebastian Andrzej Siewior, respectively.
    * git://
      fec_mpc52xx: fix timestamp filtering
      mcs7830: Implement link state detection
      e1000e: fix Rapid Start Technology support for i217
      e1000: look into the page instead of skb->data for e1000_tbi_adjust_stats()
      r8169: call netif_napi_del at errpaths and at driver unload
      tcp: reflect SYN queue_mapping into SYNACK packets
      tcp: do not create inetpeer on SYNACK message
      8139cp/8139too: terminate the eeprom access with the right opmode
      8139cp: set ring address before enabling receiver
      cipso: handle CIPSO options correctly when NetLabel is disabled
      net: sock: validate data_len before allocating skb in sock_alloc_send_pskb()
      bql: Avoid possible inconsistent calculation.
      bql: Avoid unneeded limit decrement.
      bql: Fix POSDIFF() to integer overflow aware.
      net/mlx4_core: Fix obscure mlx4_cmd_box parameter in QUERY_DEV_CAP
      net/mlx4_core: Check port out-of-range before using in mlx4_slave_cap
      net/mlx4_core: Fixes for VF / Guest startup flow
      net/mlx4_en: Fix improper use of "port" parameter in mlx4_en_event
      net/mlx4_core: Fix number of EQs used in ICM initialisation
      net/mlx4_core: Fix the slave_id out-of-range test in mlx4_eq_int
    committed Jun 2, 2012
  7. Merge branch 'x86-urgent-for-linus' of git://…

    Pull straggler x86 fixes from Peter Anvin:
     "Three groups of patches:
      - EFI boot stub documentation and the ability to print error messages;
      - Removal for PTRACE_ARCH_PRCTL for x32 (obsolete interface which
        should never have been ported, and the port is broken and
        potentially dangerous.)
      - ftrace stack corruption fixes.  I'm not super-happy about the
        technical implementation, but it is probably the least invasive in
        the short term.  In the future I would like a single method for
        nesting the debug stack, however."
    * 'x86-urgent-for-linus' of git://
      x86, x32, ptrace: Remove PTRACE_ARCH_PRCTL for x32
      x86, efi: Add EFI boot stub documentation
      x86, efi; Add EFI boot stub console support
      x86, efi: Only close open files in error path
      ftrace/x86: Do not change stacks in DEBUG when calling lockdep
      x86: Allow nesting of the debug stack IDT setting
      x86: Reset the debug_stack update counter
      ftrace: Use breakpoint method to update ftrace caller
      ftrace: Synchronize variable setting with breakpoints
    committed Jun 2, 2012
  8. tty: Revert the tty locking series, it needs more work

    This reverts the tty layer change to use per-tty locking, because it's
    not correct yet, and fixing it will require some more deep surgery.
    The main revert is d29f3ef ("tty_lock: Localise the lock"), but
    there are several smaller commits that built upon it, they also get
    reverted here. The list of reverted commits is:
      fde86d3 - tty: add lockdep annotations
      8f6576a - tty: fix ldisc lock inversion trace
      d3ca8b6 - pty: Fix lock inversion
      b1d679a - tty: drop the pty lock during hangup
      abcefe5 - tty/amiserial: Add missing argument for tty_unlock()
      fd11b42 - cris: fix missing tty arg in wait_event_interruptible_tty call
      d29f3ef - tty_lock: Localise the lock
    The revert had a trivial conflict in the 68360serial.c staging driver
    that got removed in the meantime.
    Signed-off-by: Linus Torvalds <>
    committed Jun 2, 2012
  9. fec_mpc52xx: fix timestamp filtering

    skb_defer_rx_timestamp was called with a freshly allocated skb but must
    be called with rskb instead.
    Signed-off-by: Stephan Gatzka <>
    Cc: stable <>
    Acked-by: Richard Cochran <>
    Signed-off-by: David S. Miller <>
    Stephan Gatzka committed with davem330 Jun 2, 2012
  10. mcs7830: Implement link state detection

    Add .status callback that detects link state changes.
    Tested with MCS7832CV-AA chip (9710:7830, identified as rev.C by the driver).
    Signed-off-by: Ondrej Zary <>
    Signed-off-by: David S. Miller <>
    Ondrej Zary committed with davem330 Jun 1, 2012
  11. Merge 'for-linus' branches from git://…

    Pull vfs fix and a fix from the signal changes for frv from Al Viro.
    The __kernel_nlink_t for powerpc got scrogged because 64-bit powerpc
    actually depended on the default "unsigned long", while 32-bit powerpc
    had an explicit override to "unsigned short".  Al didn't notice, and
    made both of them be the unsigned short.
    The frv signal fix is fallout from simplifying the do_notify_resume()
    code, and leaving an extra parenthesis.
    * 'for-linus' of git://
      powerpc: Fix size of st_nlink on 64bit
    * 'for-linus' of git://
      frv: Remove bogus closing parenthesis
    committed Jun 2, 2012
  12. powerpc: Fix size of st_nlink on 64bit

    commit e57f93c (powerpc: get rid of nlink_t uses, switch to
    explicitly-sized type) changed the size of st_nlink on ppc64 from
    a long to a short, resulting in boot failures.
    Signed-off-by: Anton Blanchard <>
    Signed-off-by: Al Viro <>
    antonblanchard committed with Al Viro Jun 2, 2012
  13. frv: Remove bogus closing parenthesis

    Introduced by commit 6fd84c0
    ("TIF_RESTORE_SIGMASK can be set only when TIF_SIGPENDING is set")
    Signed-off-by: Geert Uytterhoeven <>
    Signed-off-by: Al Viro <>
    geertu committed with Al Viro Jun 2, 2012
  14. e1000e: fix Rapid Start Technology support for i217

    The definition of I217_PROXY_CTRL must use the BM_PHY_REG() macro instead
    of the PHY_REG() macro for PHY page 800 register 70 since it is for a PHY
    register greater than the maximum allowed by the latter macro, and fix a
    typo setting the I217_MEMPWR register in e1000_suspend_workarounds_ich8lan.
    Also for clarity, rename a few defines as bit definitions instead of masks.
    Signed-off-by: Bruce Allan <>
    Tested-by: Aaron Brown <>
    Signed-off-by: Jeff Kirsher <>
    bwallan committed with Jkirsher May 10, 2012
  15. e1000: look into the page instead of skb->data for e1000_tbi_adjust_s…

    This is another fixup where the data is not transfered into buffer
    addressed by skb->data but into a page.
    Signed-off-by: Sebastian Andrzej Siewior <>
    Tested-by: Aaron Brown <>
    Signed-off-by: Jeff Kirsher <>
    Sebastian Andrzej Siewior committed with Jkirsher May 15, 2012
  16. Merge branch 'akpm' (Fixups for Andrew's patchbomb)

    Merge fixups for the mac NLS tables from Andrew.
    * emailed from Andrew Morton, and one cleanup by me:
      nls: fix (and rename) mac NLS table files and config options
      fs/nls/Makefile: remove bogus CONFIG_ assignments
    committed Jun 2, 2012
  17. nls: fix (and rename) mac NLS table files and config options

    The config options in the Kconfig file (with _CODEPAGE_ in the name)
    didn't match the config option name in the Makefile (no _CODEPAGE_).
    And both of them were of the hard-to-read MACXYZZY variety, which made
    them hard to parse for normal humans: MACROMAN easily reads as "macro
    man", not as "Mac Roman".
    So rename the options to be consistent, and be NLS_MAC_xyzzy.  Rename
    the files to be mac-xyzzy.c too, and drop the "nls" part entirely (it's
    already in the directory name).
    Signed-off-by: Linus Torvalds <>
    committed Jun 2, 2012
  18. fs/nls/Makefile: remove bogus CONFIG_ assignments

    These were debug things which snuck through.
    Reported-by: Yinghai Lu <>
    Cc: Vladimir Serbinenko <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Andrew Morton committed with Jun 1, 2012
Commits on Jun 1, 2012
  1. Merge tag 'fbdev-updates-for-3.5' of git://…

    Pull fbdev updates from Florian Tobias Schandinat:
     - driver for AUO-K1900 and AUO-K1901 epaper controller
     - large updates for OMAP (e.g. decouple HDMI audio and video)
     - some updates for Exynos and SH Mobile
     - various other small fixes and cleanups
    * tag 'fbdev-updates-for-3.5' of git:// (130 commits)
      video: bfin_adv7393fb: Fix cleanup code
      video: exynos_dp: reduce delay time when configuring video setting
      video: exynos_dp: move sw reset prioir to enabling sw defined function
      video: exynos_dp: use devm_ functions
      fb: handle NULL pointers in framebuffer release
      OMAPDSS: HDMI: OMAP4: Update IRQ flags for the HPD IRQ request
      OMAPDSS: Apply VENC timings even if panel is disabled
      OMAPDSS: VENC/DISPC: Delay dividing Y resolution for managers connected to VENC
      OMAPDSS: DISPC: Support rotation through TILER
      OMAPDSS: VRFB: remove compiler warnings when CONFIG_BUG=n
      OMAPFB: remove compiler warnings when CONFIG_BUG=n
      OMAPDSS: remove compiler warnings when CONFIG_BUG=n
      OMAPDSS: DISPC: fix usage of dispc_ovl_set_accu_uv
      OMAPDSS: use DSI_FIFO_BUG workaround only for manual update displays
      OMAPDSS: DSI: Support command mode interleaving during video mode blanking periods
      OMAPDSS: DISPC: Update Accumulator configuration for chroma plane
      drivers/video: fsl-diu-fb: don't initialize the THRESHOLDS registers
      video: exynos mipi dsi: support reverse panel type
      video: exynos mipi dsi: Properly interpret the interrupt source flags
      video: exynos mipi dsi: Avoid races in probe()
    committed Jun 1, 2012
  2. Merge tag 'for-linus-3.5-20120601' of git://

    Pull mtd update from David Woodhouse:
     - More robust parsing especially of xattr data in JFFS2
     - Updates to mxc_nand and gpmi drivers to support new boards and device tree
     - Improve consistency of information about ECC strength in NAND devices
     - Clean up partition handling of plat_nand
     - Support NAND drivers without dedicated access to OOB area
     - BCH hardware ECC support for OMAP
     - Other fixes and cleanups, and a few new device IDs
    Fixed trivial conflict in drivers/mtd/nand/gpmi-nand/gpmi-nand.c due to
    added include files next to each other.
    * tag 'for-linus-3.5-20120601' of git:// (75 commits)
      mtd: mxc_nand: move ecc strengh setup before nand_scan_tail
      mtd: block2mtd: fix recursive call of mtd_writev
      mtd: gpmi-nand: define ecc.strength
      mtd: of_parts: fix breakage in Kconfig
      mtd: nand: fix scan_read_raw_oob
      mtd: docg3 fix in-middle of blocks reads
      mtd: cfi_cmdset_0002: Slight cleanup of fixup messages
      mtd: add fixup for S29NS512P NOR flash.
      jffs2: allow to complete xattr integrity check on first GC scan
      jffs2: allow to discriminate between recoverable and non-recoverable errors
      mtd: nand: omap: add support for hardware BCH ecc
      ARM: OMAP3: gpmc: add BCH ecc api and modes
      mtd: nand: check the return code of 'read_oob/read_oob_raw'
      mtd: nand: remove 'sndcmd' parameter of 'read_oob/read_oob_raw'
      mtd: m25p80: Add support for Winbond W25Q80BW
      jffs2: get rid of jffs2_sync_super
      jffs2: remove unnecessary GC pass on sync
      jffs2: remove unnecessary GC pass on umount
      jffs2: remove lock_super
      mtd: gpmi: add gpmi support for mx6q
    committed Jun 1, 2012
  3. Merge branch 'for_linus' of git://…

    Pull x86 platform driver updates from Matthew Garrett:
     "Some significant improvements for the Sony driver on newer machines,
      but other than that mostly just minor fixes and a patch to remove the
      broken rfkill code from the Dell driver."
    * 'for_linus' of git:// (35 commits)
      apple-gmux: Fix up the suspend/resume patch
      dell-laptop: Remove rfkill code
      toshiba_acpi: Fix mis-merge
      dell-laptop: Add touchpad led support for Dell V3450
      acer-wmi: add 3 laptops to video backlight vendor mode quirk table
      sony-laptop: add touchpad enable/disable function
      sony-laptop: add missing Fn key combos for 0x100 handlers
      sony-laptop: add support for more WWAN modems
      sony-laptop: new keyboard backlight handle
      sony-laptop: add high speed battery charging function
      sony-laptop: support automatic resume on lid open
      sony-laptop: adjust error handling in finding SNC handles
      sony-laptop: add thermal profiles support
      sony-laptop: support battery care functions
      sony-laptop: additional debug statements
      sony-laptop: improve SNC initialization and acpi notify callback code
      sony-laptop: use kstrtoul to parse sysfs values
      sony-laptop: generalise ACPI calls into SNC functions
      sony-laptop: fix return path when no ACPI buffer is allocated
      sony-laptop: use soft rfkill status stored in hw
    committed Jun 1, 2012
  4. Merge branch 'slab/for-linus' of git://…

    Pull slab updates from Pekka Enberg:
     "Mainly a bunch of SLUB fixes from Joonsoo Kim"
    * 'slab/for-linus' of git://
      slub: use __SetPageSlab function to set PG_slab flag
      slub: fix a memory leak in get_partial_node()
      slub: remove unused argument of init_kmem_cache_node()
      slub: fix a possible memory leak
      Documentations: Fix slabinfo.c directory in vm/slub.txt
      slub: fix incorrect return type of get_any_partial()
    committed Jun 1, 2012
  5. Merge remote-tracking branch 'rostedt/tip/perf/urgent-2' into x86-urg…

    H. Peter Anvin committed Jun 1, 2012
  6. Merge branch 'ux500/hickup' of git://…

    Pull arm fixes for ux500 mismerge mishap from Arnd Bergmann:
     "The device tree conversion for arm/ux500 in 3.5 turns out to be
      incomplete because of a mismerge done by Linus Walleij that I failed
      to notice early enough and that Lee Jones as the original author of
      those patches did not manage to fix during the -next cycle.  While we
      originally to get a much larger set of ux500 device tree enablement
      patches merged, this did not happen in time.
      After some discussion at Linaro Connect conference this week, Lee has
      been able to do damage control and provide a series to put the broken
      platform back into usable shape for both DT and non-DT based booting.
      This series has not been part of linux-next and is based on top of the
      current state of the upstream kernel rather than an -rc, but this is
      the best we could manage given the earlier breakage."
    * 'ux500/hickup' of git://
      ARM: ux500: Enable probing of pinctrl through Device Tree
      ARM: ux500: Add support for ab8500 regulators into the Device Tree
      ARM: ux500: Provide regulator support for SMSC911x via Device Tree
      ARM: ux500: Allow PRCMU regulator to be probed during a DT enabled boot
      ARM: ux500: Apply db8500-prcmu regulator information to db8500 Device Tree
      ARM: ux500: Only initialise STE's UIBs on boards which support them
      ARM: ux500: Disable platform setup of the ab8500 when DT is enabled
      ARM: ux500: Use correct format for dynamic IRQ assignment
      ARM: ux500: Re-enable SMSC911x platform code registration during non-DT boots
      ARM: ux500: PRCMU related configuration and layout corrections for Device Tree
      ARM: ux500: Remove DB8500 PRCMU platform registration when DT is enabled
      ARM: ux500: Disable SMSC911x platform code registration when DT is enabled
      ARM: ux500: New DT:ed u8500_init_devices for one-by-one device enablement
      ARM: ux500: New DT:ed snowball_platform_devs for one-by-one device enablement
      pinctrl-nomadik: Allow Device Tree driver probing
    committed Jun 1, 2012
  7. r8169: call netif_napi_del at errpaths and at driver unload

    when register_netdev fails, the init'ed NAPIs by netif_napi_add must be
    deleted with netif_napi_del, and also when driver unloads, it should
    delete the NAPI before unregistering netdevice using unregister_netdev.
    Signed-off-by: Devendra Naga <>
    Signed-off-by: David S. Miller <>
    DevNaga committed with davem330 May 31, 2012
  8. Merge branch 'drm-fixes' of git://

    Pull drm fixes from Dave Airlie:
     "A bunch of fixes:
       - vmware memory corruption
       - ttm spinlock balance
       - cirrus/mgag200 work in the presence of efifb
      and finally Alex and Jerome managed to track down a magic set of bits
      that on certain rv740 and evergreen cards allow the correct use of the
      complete set of render backends, this makes the cards operate
      correctly in a number of scenarios we had issues in before, it also
      manages to boost speed on benchmarks my large amounts on these
      specific gpus."
    * 'drm-fixes' of git://
      drm/edid: Make the header fixup threshold tunable
      drm/radeon: fix regression in UMS CS ioctl
      drm/vmwgfx: Fix nasty write past alloced memory area
      drm/ttm: Fix spinlock imbalance
      drm/radeon: fixup tiling group size and backendmap on r6xx-r9xx (v4)
      drm/radeon: fix HD6790, HD6570 backend programming
      drm/radeon: properly program gart on rv740, juniper, cypress, barts, hemlock
      drm/radeon: fix bank information in tiling config
      drm/mgag200: kick off conflicting framebuffers earlier.
      drm/cirrus: kick out conflicting framebuffers earlier
      cirrus: avoid crash if driver fails to load
    committed Jun 1, 2012
  9. Merge tag 'sound-3.5' of git://…

    Pull sound fixes from Takashi Iwai:
     "Just a few trivial driver-specific fixes."
    * tag 'sound-3.5' of git://
      ALSA: hdspm - Work around broken DDS value on PCI RME MADI
      ALSA: usb-audio: fix rate_list memory leak
      ASoC: fsi: bugfix: ensure dma is terminated
      ASoC: fsi: bugfix: correct dma area
      ASoC: fsi: bugfix: enable master clock control on DMA stream
      ASoC: imx-ssi: Use clk_prepare_enable/clk_disable_unprepare
    committed Jun 1, 2012
  10. x86, x32, ptrace: Remove PTRACE_ARCH_PRCTL for x32

    When I added x32 ptrace to 3.4 kernel, I also include PTRACE_ARCH_PRCTL
    support for x32 GDB  For ARCH_GET_FS/GS, it takes a pointer to int64.  But
    at user level, ARCH_GET_FS/GS takes a pointer to int32.  So I have to add
    x32 ptrace to glibc to handle it with a temporary int64 passed to kernel and
    copy it back to GDB as int32.  Roland suggested that PTRACE_ARCH_PRCTL
    is obsolete and x32 GDB should use fs_base and gs_base fields of
    user_regs_struct instead.
    Accordingly, remove PTRACE_ARCH_PRCTL completely from the x32 code to
    avoid possible memory overrun when pointer to int32 is passed to
    Signed-off-by: H. Peter Anvin <>
    Cc: <> v3.4
    hjl-tools committed with H. Peter Anvin May 22, 2012
  11. mtd: mxc_nand: move ecc strengh setup before nand_scan_tail

    Since commit 6a918ba, the mxc_nand driver
    fails with:
    Driver must set ecc.strength when using hardware ECC
    This is because nand_scan_tail checks for correct ecc strength
    settings, so we must set them up before nand_scan_tail.
    Signed-off-by: Sascha Hauer <>
    Cc: [3.4+]
    Signed-off-by: Artem Bityutskiy <>
    Signed-off-by: David Woodhouse <>
    saschahauer committed with dwmw2 May 25, 2012
  12. mtd: block2mtd: fix recursive call of mtd_writev

    The 'mtd_writev' interface calls the function assigned
    to the '_write' field of a given mtd device if that is
    not NULL. The block2mtd driver sets the '_writev' field
    to the 'mtd_writev' function itself and thus causes a
    endless loop.
    This is caused by 1dbebd3
    (mtd: harmonize mtd_writev usage).
    Remove the assignment from the block2mtd driver to fix the
    Signed-off-by: Gabor Juhos <>
    Cc: [3.3+]
    Signed-off-by: Artem Bityutskiy <>
    Signed-off-by: David Woodhouse <>
    juhosg committed with dwmw2 May 23, 2012
  13. mtd: gpmi-nand: define ecc.strength

    Fix an issue which was introduced by the recent addition of ecc.strength.
    The ecc.strength wasn't set in gpmi-nand, resulting in the following crash:
    [    2.550000] kernel BUG at drivers/mtd/nand/nand_base.c:3347!
    [    2.550000] [<c020841c>] (nand_scan_tail+0x328/0x650) from [<c02f68e0>] (gpmi_nand_probe+0x43c/0x5a4)
    [    2.550000] [<c02f68e0>] (gpmi_nand_probe+0x43c/0x5a4) from [<c01f6618>] (platform_drv_probe+0x14/0x18)
    [    2.550000] [<c01f6618>] (platform_drv_probe+0x14/0x18) from [<c01f55b0>] (driver_probe_device+0x74/0x1fc)
    [    2.550000] [<c01f55b0>] (driver_probe_device+0x74/0x1fc) from [<c01f57cc>] (__driver_attach+0x94/0x98)
    [    2.550000] [<c01f57cc>] (__driver_attach+0x94/0x98) from [<c01f3d40>] (bus_for_each_dev+0x50/0x80)
    [    2.550000] [<c01f3d40>] (bus_for_each_dev+0x50/0x80) from [<c01f4e18>] (bus_add_driver+0x188/0x25c)
    [    2.550000] [<c01f4e18>] (bus_add_driver+0x188/0x25c) from [<c01f5a70>] (driver_register+0x78/0x138)
    [    2.550000] [<c01f5a70>] (driver_register+0x78/0x138) from [<c043dc7c>] (gpmi_nand_init+0xc/0x30)
    [    2.550000] [<c043dc7c>] (gpmi_nand_init+0xc/0x30) from [<c0008824>] (do_one_initcall+0x108/0x17c)
    [    2.550000] [<c0008824>] (do_one_initcall+0x108/0x17c) from [<c042a8b8>] (kernel_init+0xfc/0x1bc)
    [    2.550000] [<c042a8b8>] (kernel_init+0xfc/0x1bc) from [<c000fab4>] (kernel_thread_exit+0x0/0x8)
    Signed-off-by: Marek Vasut <>
    Signed-off-by: Artem Bityutskiy <>
    Signed-off-by: David Woodhouse <>
    Marek Vasut committed with dwmw2 May 21, 2012
  14. apple-gmux: Fix up the suspend/resume patch

    I incorporated the wrong version of the suspend/resume patch for gmux,
    and so lost David Woodhouse's fix to leave the backlight level unchanged
    over suspend/resume. This fixes it up to v2.
    Signed-off-by: Matthew Garrett <>
    Matthew Garrett committed Jun 1, 2012
  15. mtd: of_parts: fix breakage in Kconfig

    MTD_OF_PARTS and the default setting is not working due to using 'Y'
    instead of 'y', introduced in commit
    d6137ba. This made our board, and
    possibly other boards using DTS defined partitions and not having
    CONFIG_MTD_OF_PARTS=y defined in the defconfig, fail to mount root.
    Signed-off-by: Frank Svendsboe <>
    Cc: [3.2+]
    Signed-off-by: Artem Bityutskiy <>
    Signed-off-by: David Woodhouse <>
    fsvend committed with dwmw2 May 17, 2012