28 Jan, 2013

4 commits

  • We do need to start the lease recovery thread prior to waiting for the
    client initialisation to complete in NFSv4.1.

    Signed-off-by: Trond Myklebust
    Cc: Chuck Lever
    Cc: Ben Greear
    Cc: stable@vger.kernel.org [>=3.7]

    Trond Myklebust
     
  • If walking the list in nfs4[01]_walk_client_list fails, then the most
    likely explanation is that the server dropped the clientid before we
    actually managed to confirm it. As long as our nfs_client is the very
    last one in the list to be tested, the caller can be assured that this
    is the case when the final return value is NFS4ERR_STALE_CLIENTID.

    Reported-by: Ben Greear
    Signed-off-by: Trond Myklebust
    Cc: Chuck Lever
    Cc: stable@vger.kernel.org [>=3.7]
    Tested-by: Ben Greear

    Trond Myklebust
     
  • The reference counting in nfs4_init_client assumes wongly that it
    is safe for nfs4_discover_server_trunking() to return a pointer to a
    nfs_client prior to bumping the reference count.

    Signed-off-by: Trond Myklebust
    Cc: Chuck Lever
    Cc: Ben Greear
    Cc: stable@vger.kernel.org [>=3.7]

    Trond Myklebust
     
  • Currently, nfs_xdev_mount converts all errors from clone_server() to
    ENOMEM, which can then leak to userspace (for instance to 'mount'). Fix that.
    Also ensure that if nfs_fs_mount_common() returns an error, we
    don't dprintk(0)...

    The regression originated in commit 3d176e3fe4f6dc379b252bf43e2e146a8f7caf01
    (NFS: Use nfs_fs_mount_common() for xdev mounts)

    Signed-off-by: Trond Myklebust
    Cc: stable@vger.kernel.org [>= 3.5]

    Trond Myklebust
     

26 Jan, 2013

2 commits

  • Linus Torvalds
     
  • Pull btrfs fixes from Chris Mason:
    "It turns out that we had two crc bugs when running fsx-linux in a
    loop. Many thanks to Josef, Miao Xie, and Dave Sterba for nailing it
    all down. Miao also has a new OOM fix in this v2 pull as well.

    Ilya fixed a regression Liu Bo found in the balance ioctls for pausing
    and resuming a running balance across drives.

    Josef's orphan truncate patch fixes an obscure corruption we'd see
    during xfstests.

    Arne's patches address problems with subvolume quotas. If the user
    destroys quota groups incorrectly the FS will refuse to mount.

    The rest are smaller fixes and plugs for memory leaks."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (30 commits)
    Btrfs: fix repeated delalloc work allocation
    Btrfs: fix wrong max device number for single profile
    Btrfs: fix missed transaction->aborted check
    Btrfs: Add ACCESS_ONCE() to transaction->abort accesses
    Btrfs: put csums on the right ordered extent
    Btrfs: use right range to find checksum for compressed extents
    Btrfs: fix panic when recovering tree log
    Btrfs: do not allow logged extents to be merged or removed
    Btrfs: fix a regression in balance usage filter
    Btrfs: prevent qgroup destroy when there are still relations
    Btrfs: ignore orphan qgroup relations
    Btrfs: reorder locks and sanity checks in btrfs_ioctl_defrag
    Btrfs: fix unlock order in btrfs_ioctl_rm_dev
    Btrfs: fix unlock order in btrfs_ioctl_resize
    Btrfs: fix "mutually exclusive op is running" error code
    Btrfs: bring back balance pause/resume logic
    btrfs: update timestamps on truncate()
    btrfs: fix btrfs_cont_expand() freeing IS_ERR em
    Btrfs: fix a bug when llseek for delalloc bytes behind prealloc extents
    Btrfs: fix off-by-one in lseek
    ...

    Linus Torvalds
     

25 Jan, 2013

17 commits

  • Pull cifs fixes from Steve French:
    "Two small cifs fixes"

    * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
    fs/cifs/cifs_dfs_ref.c: fix potential memory leakage
    cifs: fix srcip_matches() for ipv6

    Linus Torvalds
     
  • Pull kvm fixlet from Marcelo Tosatti.

    * git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: PPC: Emulate dcbf

    Linus Torvalds
     
  • Pull ARM fixes from Russell King:
    "A number of fixes:

    Patrik found a problem with preempt counting in the VFP assembly
    functions which can cause the preempt count to be upset.

    Nicolas fixed a problem with the parsing of the DT when it straddles a
    1MB boundary.

    Subhash Jadavani reported a problem with sparsemem and our highmem
    support for cache maintanence for DMA areas, and TI found a bug in
    their strongly ordered memory mapping type.

    Also, three fixes by way of Will Deacon's tree from Dave Martin for
    instruction compatibility and Marc Zyngier to fix hypervisor boot mode
    issues."

    * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
    ARM: 7629/1: mm: Fix missing XN flag for for MT_MEMORY_SO
    ARM: DMA: Fix struct page iterator in dma_cache_maint() to work with sparsemem
    ARM: 7628/1: head.S: map one extra section for the ATAG/DTB area
    ARM: 7627/1: Predicate preempt logic on PREEMP_COUNT not PREEMPT alone
    ARM: virt: simplify __hyp_stub_install epilog
    ARM: virt: boot secondary CPUs through the right entry point
    ARM: virt: Avoid bx instruction for compatibility with <=ARMv4

    Linus Torvalds
     
  • Pull ARM SoC fixes from Olof Johansson:
    "Here's a long-pending fixes pull request for arm-soc (I didn't send
    one in the -rc4 cycle).

    The larger deltas are from:

    - A fixup of error paths in the mvsdio driver

    - Header file move for a driver that hadn't been properly converted
    to multiplatform on i.MX, which was causing build failures when
    included

    - Device tree updates for at91 dealing mostly with their new pinctrl
    setup merged in 3.8 and mistakes in those initial configs

    The rest are the normal mix of small fixes all over the place; sunxi,
    omap, imx, mvebu, etc, etc."

    * tag 'fixes-for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (40 commits)
    mfd: vexpress-sysreg: Don't skip initialization on probe
    ARM: vexpress: Enable A7 cores in V2P-CA15_A7's Device Tree
    ARM: vexpress: extend the MPIDR range used for pen release check
    ARM: at91/dts: correct comment in at91sam9x5.dtsi for mii
    ARM: at91/at91_dt_defconfig: add at91sam9n12 SoC to DT defconfig
    ARM: at91/at91_dt_defconfig: remove memory specification to cmdline
    ARM: at91/dts: add macb mii pinctrl config for kizbox
    ARM: at91: rm9200: remake the BGA as default version
    ARM: at91: fix gpios on i2c-gpio for RM9200 DT
    ARM: at91/at91sam9x5 DTS: add SCK USART pins
    ARM: at91/at91sam9x5 DTS: correct wrong PIO BANK values on u(s)arts
    ARM: at91/at91-pinctrl documentation: fix typo and add some details
    ARM: kirkwood: fix missing #interrupt-cells property
    mmc: mvsdio: use devm_ API to simplify/correct error paths.
    clk: mvebu/clk-cpu.c: fix memory leakage
    ARM: OMAP2+: omap4-panda: add UART2 muxing for WiLink shared transport
    ARM: OMAP2+: DT node Timer iteration fix
    ARM: OMAP2+: Fix section warning for omap_init_ocp2scp()
    ARM: OMAP2+: fix build break for omapdrm
    ARM: OMAP2: Fix missing omap2xxx_clkt_vps_late_init function calls
    ...

    Linus Torvalds
     
  • Pull ACPI and power management fixes from Rafael Wysocki:

    - Two cpuidle initialization fixes from Konrad Rzeszutek Wilk.

    - cpufreq regression fixes for AMD processors from Borislav Petkov,
    Stefan Bader, and Matthew Garrett.

    - ACPI cpufreq fix from Thomas Schlichter.

    - cpufreq and devfreq fixes related to incorrect usage of operating
    performance points (OPP) framework and RCU from Nishanth Menon.

    - APEI workaround for incorrect BIOS information from Lans Zhang.

    * tag 'pm+acpi-for-3.8-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    cpufreq: Add module aliases for acpi-cpufreq
    ACPI: Check MSR valid bit before using P-state frequencies
    PM / devfreq: exynos4_bus: honor RCU lock usage
    PM / devfreq: add locking documentation for recommended_opp
    cpufreq: cpufreq-cpu0: use RCU locks around usage of OPP
    cpufreq: OMAP: use RCU locks around usage of OPP
    ACPI, APEI: Fixup incorrect 64-bit access width firmware bug
    ACPI / processor: Get power info before updating the C-states
    powernow-k8: Add a kconfig dependency on acpi-cpufreq
    ACPI / cpuidle: Fix NULL pointer issues when cpuidle is disabled
    intel_idle: Don't register CPU notifier if we are not running.

    Linus Torvalds
     
  • Pull regmap fixes from Mark Brown:
    "One more oversight in the debugfs code was reported and fixed, plus a
    documentation fix."

    * tag 'regmap-fix-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
    regmap: fix small typo in regmap_bulk_write comment
    regmap: debugfs: Fix seeking from the cache

    Linus Torvalds
     
  • Pull slave-dmaengine fixes from Vinod Koul:
    "A few fixes on slave dmanengine. There are trivial fixes in imx-dma,
    tegra-dma & ioat driver"

    * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
    dma: tegra: implement flags parameters for cyclic transfer
    dmaengine: imx-dma: Disable use of hw_chain to fix sg_dma transfers.
    ioat: Fix DMA memory sync direction correct flag

    Linus Torvalds
     
  • Pill i2c fixes from Wolfram Sang:
    "Here are a few, typical driver fixes for the I2C subsystem"

    * 'i2c-embedded/for-current' of git://git.pengutronix.de/git/wsa/linux:
    i2c-designware: add missing MODULE_LICENSE
    i2c: omap: fix draining irq handling
    i2c: omap: errata i462: fix incorrect ack for arbitration lost interrupt
    i2c: muxes: fix wrong use of sizeof(ptr)
    i2c: sirf: register i2c_client from dt child-nodes in probe entry
    i2c: mxs: Fix type of error code
    i2c: mxs: Fix misuse init_completion

    Linus Torvalds
     
  • btrfs_start_delalloc_inodes() locks the delalloc_inodes list, fetches the
    first inode, unlocks the list, triggers btrfs_alloc_delalloc_work/
    btrfs_queue_worker for this inode, and then it locks the list, checks the
    head of the list again. But because we don't delete the first inode that it
    deals with before, it will fetch the same inode. As a result, this function
    allocates a huge amount of btrfs_delalloc_work structures, and OOM happens.

    Fix this problem by splice this delalloc list.

    Reported-by: Alex Lyakas
    Signed-off-by: Miao Xie
    Signed-off-by: Josef Bacik

    Miao Xie
     
  • The max device number of single profile is 1, not 0 (0 means 'as many as
    possible'). Fix it.

    Cc: Liu Bo
    Signed-off-by: Miao Xie
    Reviewed-by: Liu Bo
    Signed-off-by: Josef Bacik

    Miao Xie
     
  • First, though the current transaction->aborted check can stop the commit early
    and avoid unnecessary operations, it is too early, and some transaction handles
    don't end, those handles may set transaction->aborted after the check.

    Second, when we commit the transaction, we will wake up some worker threads to
    flush the space cache and inode cache. Those threads also allocate some transaction
    handles and may set transaction->aborted if some serious error happens.

    So we need more check for ->aborted when committing the transaction. Fix it.

    Signed-off-by: Miao Xie
    Signed-off-by: Josef Bacik

    Miao Xie
     
  • We may access and update transaction->aborted on the different CPUs without
    lock, so we need ACCESS_ONCE() wrapper to prevent the compiler from creating
    unsolicited accesses and make sure we can get the right value.

    Signed-off-by: Miao Xie
    Signed-off-by: Josef Bacik

    Miao Xie
     
  • I noticed a WARN_ON going off when adding csums because we were going over
    the amount of csum bytes that should have been allowed for an ordered
    extent. This is a leftover from when we used to hold the csums privately
    for direct io, but now we use the normal ordered sum stuff so we need to
    make sure and check if we've moved on to another extent so that the csums
    are added to the right extent. Without this we could end up with csums for
    bytenrs that don't have extents to cover them yet. Thanks,

    Signed-off-by: Josef Bacik

    Josef Bacik
     
  • For compressed extents, the range of checksum is covered by disk length,
    and the disk length is different with ram length, so we need to use disk
    length instead to get us the right checksum.

    Signed-off-by: Liu Bo
    Signed-off-by: Josef Bacik

    Liu Bo
     
  • A user reported a BUG_ON(ret) that occured during tree log replay. Ret was
    -EAGAIN, so what I think happened is that we removed an extent that covered
    a bitmap entry and an extent entry. We remove the part from the bitmap and
    return -EAGAIN and then search for the next piece we want to remove, which
    happens to be an entire extent entry, so we just free the sucker and return.
    The problem is ret is still set to -EAGAIN so we trip the BUG_ON(). The
    user used btrfs-zero-log so I'm not 100% sure this is what happened so I've
    added a WARN_ON() to catch the other possibility. Thanks,

    Reported-by: Jan Steffens
    Signed-off-by: Josef Bacik

    Josef Bacik
     
  • We drop the extent map tree lock while we're logging extents, so somebody
    could come in and merge another extent into this one and screw up our
    logging, or they could even remove us from the list which would keep us from
    logging the extent or freeing our ref on it, so we need to make sure to not
    clear LOGGING until after the extent is logged, and then we can merge it to
    adjacent extents. Thanks,

    Signed-off-by: Josef Bacik

    Josef Bacik
     
  • From Pawel Moll:
    - makes the V2P-CA15_A7 (a.k.a. TC2) work with 3.8 kernels
    - improves vexpress-sysreg.c behaviour on arm64 platforms

    * 'vexpress/fixes' of git://git.linaro.org/people/pawelmoll/linux:
    mfd: vexpress-sysreg: Don't skip initialization on probe
    ARM: vexpress: Enable A7 cores in V2P-CA15_A7's Device Tree
    ARM: vexpress: extend the MPIDR range used for pen release check

    Olof Johansson
     

24 Jan, 2013

17 commits

  • From Nicolas Ferre:
    Here are fixes for AT91 that are mainly related to device tree.
    One RM9200 setup option is the only C code change.
    Some documentation changes can clarify the pinctrl use.
    Then, some defconfig modifications are allowing the affected platforms
    to boot.

    * tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
    ARM: at91/dts: correct comment in at91sam9x5.dtsi for mii
    ARM: at91/at91_dt_defconfig: add at91sam9n12 SoC to DT defconfig
    ARM: at91/at91_dt_defconfig: remove memory specification to cmdline
    ARM: at91/dts: add macb mii pinctrl config for kizbox
    ARM: at91: rm9200: remake the BGA as default version
    ARM: at91: fix gpios on i2c-gpio for RM9200 DT
    ARM: at91/at91sam9x5 DTS: add SCK USART pins
    ARM: at91/at91sam9x5 DTS: correct wrong PIO BANK values on u(s)arts
    ARM: at91/at91-pinctrl documentation: fix typo and add some details

    Olof Johansson
     
  • The vexpress-sysreg driver does not have to be initialized
    early, when the platform doesn't require this. Unfortunately
    in such case it wasn't initialized correctly - master site
    lookup and config bridge registration were missing. Fixed now.

    Signed-off-by: Pawel Moll

    Pawel Moll
     
  • As the kernel is able to cope with multiple clusters,
    uncomment the A7 cores in the Device Tree for V2P-CA15_A7
    tile, making all 5 cores available to the user.

    Signed-off-by: Pawel Moll

    Pawel Moll
     
  • In ARM multi-cluster systems the MPIDR affinity level 0 cannot be used as a
    single cpu identifier, affinity levels 1 and 2 must be taken into account as
    well.
    This patch extends the MPIDR usage to affinity levels 1 and 2 in versatile
    secondary cores start up code in order to compare the passed pen_release
    value with the full-blown affinity mask.

    Signed-off-by: Lorenzo Pieralisi
    Signed-off-by: Liviu Dudau
    Acked-by: Nicolas Pitre
    Signed-off-by: Pawel Moll

    Lorenzo Pieralisi
     
  • Mark Brown
     
  • From Shawn Guo:

    This is yet another critical imxfb fixes held off by absence of FB
    maintainer for some time.

    * tag 'imx-fixes-3.8-3' of git://git.linaro.org/people/shawnguo/linux-2.6:
    video: imxfb: Do not crash on reboot

    Olof Johansson
     
  • From Jason Cooper:

    mvebu fixes for v3.8-rc5
    - fix memory leak in mvebu/clk-cpu.c
    - use devm_ to correct/simplify error paths in mvsdio
    - add missing #interrupt-cells property in kirkwood

    * tag 'mvebu_fixes_for_v3.8-rc5' of git://git.infradead.org/users/jcooper/linux:
    ARM: kirkwood: fix missing #interrupt-cells property
    mmc: mvsdio: use devm_ API to simplify/correct error paths.
    clk: mvebu/clk-cpu.c: fix memory leakage

    Olof Johansson
     
  • Pull more USB fixes from Greg Kroah-Hartman:
    "Here are some more USB fixes for the 3.8-rc4 tree.

    Some gadget driver fixes, and finally resolved the ehci-mxc driver
    build issues (it's just some code moving around and being deleted)."

    * tag 'usb-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
    USB: EHCI: fix build error in ehci-mxc
    USB: EHCI: add a name for the platform-private field
    USB: EHCI: fix incorrect configuration test
    USB: EHCI: Move definition of EHCI_STATS to ehci.h
    USB: UHCI: fix IRQ race during initialization
    usb: gadget: FunctionFS: Fix missing braces in parse_opts
    usb: dwc3: gadget: fix ep->maxburst for ep0
    ARM: i.MX clock: Change the connection-id for fsl-usb2-udc
    usb: gadget: fsl_mxc_udc: replace MX35_IO_ADDRESS to ioremap
    usb: gadget: fsl-mxc-udc: replace cpu_is_xxx() with platform_device_id
    usb: musb: cppi_dma: drop '__init' annotation

    Linus Torvalds
     
  • Pull drivers/misc fix from Greg Kroah-Hartman:
    "Here is a single revert for the ti-st misc driver, fixing problem that
    was introduced in 3.7-rc1 that has been bothering people."

    * tag 'char-misc-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
    Revert "drivers/misc/ti-st: remove gpio handling"

    Linus Torvalds
     
  • Pull a TTY maintainer patch from Greg Kroah-Hartman:
    "Just a MAINTAINERS update, now that Alan has left for a bit, I'll
    continue to watch over the serial drivers."

    * tag 'tty-3.8-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
    MAINTAINERS: Someone needs to watch over the serial drivers

    Linus Torvalds
     
  • Pull media fixes from Mauro Carvalho Chehab:
    - gspca: add needed delay for I2C traffic for sonixb/sonixj cameras
    - gspca: add one missing Kinect USB ID
    - usbvideo: some regression fixes
    - omap3isp: fix some build issues
    - videobuf2: fix video output handling
    - exynos s5p/m5mols: a few regression fixes.

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    [media] uvcvideo: Set error_idx properly for S_EXT_CTRLS failures
    [media] uvcvideo: Cleanup leftovers of partial revert
    [media] uvcvideo: Return -EACCES when trying to set a read-only control
    [media] omap3isp: Don't include
    [media] s5p-mfc: Fix interrupt error handling routine
    [media] s5p-fimc: Fix return value of __fimc_md_create_flite_source_links()
    [media] m5mols: Fix typo in get_fmt callback
    [media] v4l: vb2: Set data_offset to 0 for single-plane output buffers
    [media] [FOR,v3.8] omap3isp: Don't include deleted OMAP plat/ header files
    [media] gspca_sonixj: Add a small delay after i2c_w1
    [media] gspca_sonixb: Properly wait between i2c writes
    [media] gspca_kinect: add Kinect for Windows USB id

    Linus Torvalds
     
  • Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Pull m68k fixes from Geert Uytterhoeven:
    "The asm-generic changeset has been ack'ed by Arnd."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
    m68k: Wire up finit_module
    asm-generic/dma-mapping-broken.h: Provide dma_alloc_attrs()/dma_free_attrs()
    m68k: Provide dma_alloc_attrs()/dma_free_attrs()

    Linus Torvalds
     
  • Pull arm64 fixes from Catalin Marinas:
    - ELF coredump fix (more registers dumped than what user space expects)
    - SUBARCH name generation (s/aarch64/arm64/)

    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64:
    arm64: makefile: fix uname munging when setting ARCH on native machine
    arm64: elf: fix core dumping to match what glibc expects

    Linus Torvalds
     
  • This patch (as1643b) fixes a build error in ehci-hcd when compiling for
    ARM with allmodconfig:

    drivers/usb/host/ehci-hcd.c:1285:0: warning: "PLATFORM_DRIVER" redefined [enabled by default]
    drivers/usb/host/ehci-hcd.c:1255:0: note: this is the location of the previous definition
    drivers/usb/host/ehci-mxc.c:280:31: warning: 'ehci_mxc_driver' defined but not used [-Wunused-variable]
    drivers/usb/host/ehci-hcd.c:1285:0: warning: "PLATFORM_DRIVER" redefined [enabled by default]
    drivers/usb/host/ehci-hcd.c:1255:0: note: this is the location of the previous definition

    The fix is to convert ehci-mxc over to the new "ehci-hcd is a library"
    scheme so that it can coexist peacefully with the ehci-platform
    driver. As part of the conversion the ehci_mxc_priv data structure,
    which was allocated dynamically, is now placed where it belongs: in
    the private area at the end of struct ehci_hcd.

    Signed-off-by: Alan Stern
    Tested-by: Shawn Guo
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     
  • Pull sound fixes from Takashi Iwai:
    "Only a few small HD-audio fixes:
    - Addition of new Conexant codec IDs
    - Two one-liners to add fixups for Realtek codecs
    - A last-minute regression fix for auto-mute with power-saving mode
    (regressed since 3.8-rc1)"

    * tag 'sound-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda - Fix inconsistent pin states after resume
    ALSA: hda - Add Conexant CX20755/20756/20757 codec IDs
    ALSA: hda - Add fixup for Acer AO725 laptop
    ALSA: hda - Fix mute led for another HP machine

    Linus Torvalds
     
  • Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox