1. 09 11月, 2013 5 次提交
    • C
      ARM: 7868/1: arm/arm64: remove atomic_clear_mask() in "include/asm/atomic.h" · aed3a4ed
      Chen Gang 提交于
      In current kernel wide source code, except other architectures, only
      s390 scsi drivers use atomic_clear_mask(), and arm/arm64 need not
      support s390 drivers.
      
      So remove atomic_clear_mask() from "arm[64]/include/asm/atomic.h".
      Signed-off-by: NChen Gang <gang.chen@asianux.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      aed3a4ed
    • C
      ARM: 7867/1: include: asm: use 'int' instead of 'unsigned long' for 'oldval' in atomic_cmpxchg(). · 4dcc1cf7
      Chen Gang 提交于
      For atomic_cmpxchg(), the type of 'oldval' need be 'int' to match the
      type of "*ptr" (used by 'ldrex' instruction) and 'old' (used by 'teq'
      instruction).
      Reviewed-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NChen Gang <gang.chen@asianux.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      4dcc1cf7
    • C
      ARM: 7866/1: include: asm: use 'long long' instead of 'u64' within atomic.h · 237f1233
      Chen Gang 提交于
      atomic* value is signed value, and atomic* functions need also process
      signed value (parameter value, and return value), so 32-bit arm need
      use 'long long' instead of 'u64'.
      
      After replacement, it will also fix a bug for atomic64_add_negative():
      "u64 is never less than 0".
      
      The modifications are:
      
        in vim, use "1,% s/\<u64\>/long long/g" command.
        remove '__aligned(8)' which is useless for 64-bit.
        be sure of 80 column limitation after replacement.
      Acked-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NChen Gang <gang.chen@asianux.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      237f1233
    • M
      ARM: 7871/1: amba: Extend number of IRQS · 4d8981f6
      Michal Simek 提交于
      Xilinx Zynq pl330 dma driver has 9 irqs which all have to
      be used by the driver to get it work properly.
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      4d8981f6
    • S
      ARM: 7887/1: Don't smp_cross_call() on UP devices in arch_irq_work_raise() · c682e51d
      Stephen Boyd 提交于
      If we're running a kernel compiled with SMP_ON_UP=y and the
      hardware only supports UP operation there isn't any
      smp_cross_call function assigned. Unfortunately, we call
      smp_cross_call() unconditionally in arch_irq_work_raise() and
      crash the kernel on UP devices. Check to make sure we're running
      on an SMP device before calling smp_cross_call() here.
      
      Unable to handle kernel NULL pointer dereference at virtual address 00000000
      pgd = c0004000
      [00000000] *pgd=00000000
      Internal error: Oops: 80000005 [#1] SMP ARM
      Modules linked in:
      CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.12.0-rc6-00018-g8d451442-dirty #16
      task: de05b440 ti: de05c000 task.ti: de05c000
      PC is at 0x0
      LR is at arch_irq_work_raise+0x3c/0x48
      pc : [<00000000>]    lr : [<c0019590>]    psr: 60000193
      sp : de05dd60  ip : 00000001  fp : 00000000
      r10: c085e2f0  r9 : de05c000  r8 : c07be0a4
      r7 : de05c000  r6 : de05c000  r5 : c07c5778  r4 : c0824554
      r3 : 00000000  r2 : 00000000  r1 : 00000006  r0 : c0529a58
      Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM Segment kernel
      Control: 10c5387d  Table: 80004019  DAC: 00000017
      Process swapper/0 (pid: 1, stack limit = 0xde05c248)
      Stack: (0xde05dd60 to 0xde05e000)
      dd60: c07b9dbc c00cb2dc 00000001 c08242c0 c08242c0 60000113 c07be0a8 c00b0590
      dd80: de05c000 c085e2f0 c08242c0 c08242c0 c1414c28 c00b07cc de05b440 c1414c28
      dda0: c08242c0 c00b0af8 c0862bb0 c0862db0 c1414cd8 de05c028 c0824840 de05ddb8
      ddc0: 00000000 00000009 00000001 00000024 c07be0a8 c07be0a4 de05c000 c085e2f0
      dde0: 00000000 c004a4b0 00000010 de00d2dc 00000054 00000100 00000024 00000000
      de00: de05c028 0000000a ffff8ae7 00200040 00000016 de05c000 60000193 de05c000
      de20: 00000054 00000000 00000000 00000000 00000000 c004a704 00000000 de05c008
      de40: c07ba254 c004aa1c c07c5778 c0014b70 fa200000 00000054 de05de80 c0861244
      de60: 00000000 c0008634 de05b440 c051c778 20000113 ffffffff de05deb4 c051d0a4
      de80: 00000001 00000001 00000000 de05b440 c082afac de057ac0 de057ac0 de0443c0
      dea0: 00000000 00000000 00000000 00000000 c082afbc de05dec8 c009f2a0 c051c778
      dec0: 20000113 ffffffff 00000000 c016edb0 00000000 000002b0 de057ac0 de057ac0
      dee0: 00000000 c016ee40 c0875e50 de05df2e de057ac0 00000000 00000013 00000000
      df00: 00000000 c016f054 de043600 de0443c0 c008eb38 de004ec0 c0875e50 c008eb44
      df20: 00000012 00000000 00000000 3931f0f8 00000000 00000000 00000014 c0822e84
      df40: 00000000 c008ed2c 00000000 00000000 00000000 c07b7490 c07b7490 c075ab3c
      df60: 00000000 c00701ac 00000002 00000000 c0070160 dffadb73 7bf8edb4 00000000
      df80: c051092c 00000000 00000000 00000000 00000000 00000000 00000000 c0510934
      dfa0: de05aa40 00000000 c051092c c0013ce8 00000000 00000000 00000000 00000000
      dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
      dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 07efffe5 4dfac6f5
      [<c0019590>] (arch_irq_work_raise+0x3c/0x48) from [<c00cb2dc>] (irq_work_queue+0xe4/0xf8)
      [<c00cb2dc>] (irq_work_queue+0xe4/0xf8) from [<c00b0590>] (rcu_accelerate_cbs+0x1d4/0x1d8)
      [<c00b0590>] (rcu_accelerate_cbs+0x1d4/0x1d8) from [<c00b07cc>] (rcu_start_gp+0x34/0x48)
      [<c00b07cc>] (rcu_start_gp+0x34/0x48) from [<c00b0af8>] (rcu_process_callbacks+0x318/0x608)
      [<c00b0af8>] (rcu_process_callbacks+0x318/0x608) from [<c004a4b0>] (__do_softirq+0x114/0x2a0)
      [<c004a4b0>] (__do_softirq+0x114/0x2a0) from [<c004a704>] (do_softirq+0x6c/0x74)
      [<c004a704>] (do_softirq+0x6c/0x74) from [<c004aa1c>] (irq_exit+0xac/0x100)
      [<c004aa1c>] (irq_exit+0xac/0x100) from [<c0014b70>] (handle_IRQ+0x54/0xb4)
      [<c0014b70>] (handle_IRQ+0x54/0xb4) from [<c0008634>] (omap3_intc_handle_irq+0x60/0x74)
      [<c0008634>] (omap3_intc_handle_irq+0x60/0x74) from [<c051d0a4>] (__irq_svc+0x44/0x5c)
      Exception stack(0xde05de80 to 0xde05dec8)
      de80: 00000001 00000001 00000000 de05b440 c082afac de057ac0 de057ac0 de0443c0
      dea0: 00000000 00000000 00000000 00000000 c082afbc de05dec8 c009f2a0 c051c778
      dec0: 20000113 ffffffff
      [<c051d0a4>] (__irq_svc+0x44/0x5c) from [<c051c778>] (_raw_spin_unlock_irq+0x28/0x2c)
      [<c051c778>] (_raw_spin_unlock_irq+0x28/0x2c) from [<c016edb0>] (proc_alloc_inum+0x30/0xa8)
      [<c016edb0>] (proc_alloc_inum+0x30/0xa8) from [<c016ee40>] (proc_register+0x18/0x130)
      [<c016ee40>] (proc_register+0x18/0x130) from [<c016f054>] (proc_mkdir_data+0x44/0x6c)
      [<c016f054>] (proc_mkdir_data+0x44/0x6c) from [<c008eb44>] (register_irq_proc+0x6c/0x128)
      [<c008eb44>] (register_irq_proc+0x6c/0x128) from [<c008ed2c>] (init_irq_proc+0x74/0xb0)
      [<c008ed2c>] (init_irq_proc+0x74/0xb0) from [<c075ab3c>] (kernel_init_freeable+0x84/0x1c8)
      [<c075ab3c>] (kernel_init_freeable+0x84/0x1c8) from [<c0510934>] (kernel_init+0x8/0x150)
      [<c0510934>] (kernel_init+0x8/0x150) from [<c0013ce8>] (ret_from_fork+0x14/0x2c)
      Code: bad PC value
      
      Fixes: bf18525f "ARM: 7872/1: Support arch_irq_work_raise() via self IPIs"
      Reported-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
      Tested-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      c682e51d
  2. 07 11月, 2013 1 次提交
  3. 31 10月, 2013 1 次提交
    • R
      ARM: footbridge: fix build warnings for netwinder · 8d451442
      Russell King 提交于
      arch/arm/mach-footbridge/netwinder-hw.c:695:2: warning: passing argument 1 of 'spinlock_check' from incompatible pointer type
      arch/arm/mach-footbridge/netwinder-hw.c:702:2: warning: passing argument 1 of 'spin_unlock_irqrestore' from incompatible pointer type
      arch/arm/mach-footbridge/netwinder-hw.c:712:2: warning: passing argument 1 of 'spinlock_check' from incompatible pointer type
      arch/arm/mach-footbridge/netwinder-hw.c:714:2: warning: passing argument 1 of 'spin_unlock_irqrestore' from incompatible pointer type
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      8d451442
  4. 29 10月, 2013 17 次提交
  5. 20 10月, 2013 1 次提交
  6. 19 10月, 2013 4 次提交
  7. 18 10月, 2013 11 次提交
    • R
      Merge branch 'acpi-fixes' · 981984cb
      Rafael J. Wysocki 提交于
      * acpi-fixes:
        ACPI / PM: Drop two functions that are not used any more
        ATA / ACPI: remove power dependent device handling
        ACPI / power: Drop automaitc resume of power resource dependent devices
        ACPI: remove /proc/acpi/event from ACPI_BUTTON help
        ACPI / power: Release resource_lock after acpi_power_get_state() return error
      981984cb
    • R
      Merge branch 'pm-fixes' · bdbff716
      Rafael J. Wysocki 提交于
      * pm-fixes:
        cpufreq: s3c64xx: Rename index to driver_data
        intel_pstate: Fix type mismatch warning
        cpufreq / intel_pstate: Fix max_perf_pct on resume
      bdbff716
    • L
      Merge branch 'for-linus' of git://git.samba.org/sfrench/cifs-2.6 · 04919afb
      Linus Torvalds 提交于
      Pull CIFS fixes from Steve French:
       "Five small cifs fixes (includes fixes for: unmount hang, 2 security
        related, symlink, large file writes)"
      
      * 'for-linus' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: ntstatus_to_dos_map[] is not terminated
        cifs: Allow LANMAN auth method for servers supporting unencapsulated authentication methods
        cifs: Fix inability to write files >2GB to SMB2/3 shares
        cifs: Avoid umount hangs with smb2 when server is unresponsive
        do not treat non-symlink reparse points as valid symlinks
      04919afb
    • L
      Merge tag 'driver-core-3.12-rc6' of... · 83f11a9c
      Linus Torvalds 提交于
      Merge tag 'driver-core-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fix from Greg KH:
       "Here is one fix for the hotplug memory path that resolves a regression
        when removing memory that showed up in 3.12-rc1"
      
      * tag 'driver-core-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        driver core: Release device_hotplug_lock when store_mem_state returns EINVAL
      83f11a9c
    • L
      Merge tag 'usb-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 02a3250f
      Linus Torvalds 提交于
      Pull USB fixes from Greg KH:
       "Here are some USB fixes and new device ids for 3.12-rc6
      
        The largest change here is a bunch of new device ids for the option
        USB serial driver for new Huawei devices.  Other than that, just some
        small bug fixes for issues that people have reported (run-time and
        build-time), nothing major"
      
      * tag 'usb-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: usb_phy_gen: refine conditional declaration of usb_nop_xceiv_register
        usb: misc: usb3503: Fix compile error due to incorrect regmap depedency
        usb/chipidea: fix oops on memory allocation failure
        usb-storage: add quirk for mandatory READ_CAPACITY_16
        usb: serial: option: blacklist Olivetti Olicard200
        USB: quirks: add touchscreen that is dazzeled by remote wakeup
        Revert "usb: musb: gadget: fix otg active status flag"
        USB: quirks.c: add one device that cannot deal with suspension
        USB: serial: option: add support for Inovia SEW858 device
        USB: serial: ti_usb_3410_5052: add Abbott strip port ID to combined table as well.
        USB: support new huawei devices in option.c
        usb: musb: start musb on the udc side, too
        xhci: Fix spurious wakeups after S5 on Haswell
        xhci: fix write to USB3_PSSEN and XUSB2PRM pci config registers
        xhci: quirk for extra long delay for S4
        xhci: Don't enable/disable RWE on bus suspend/resume.
      02a3250f
    • L
      Merge tag 'tty-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 7b4a5155
      Linus Torvalds 提交于
      Pull serial driver fixes from Greg KH:
       "Here are two serial driver fixes for your tree.  One is a revert of a
        patch that causes a build error, the other is a fix to provide the
        correct brace placement which resolves a bug where the driver was not
        working properly"
      
      * tag 'tty-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        serial: vt8500: add missing braces
        Revert "serial: i.MX: evaluate linux,stdout-path property"
      7b4a5155
    • L
      Merge tag 'char-misc-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 66eb411e
      Linus Torvalds 提交于
      Pull char/misc driver fixes from Greg KH:
       "Here are some small iio and w1 driver fixes for 3.12-rc6.
      
        There is also a hyper-v fix in here, which turned out to be incorrect,
        so it was reverted.  That will probably have to wait unto 3.13-rc1 to
        get accepted as it's still being discussed"
      
      * tag 'char-misc-3.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        Revert "Drivers: hv: vmbus: Fix a bug in channel rescind code"
        Drivers: hv: vmbus: Fix a bug in channel rescind code
        iio:buffer: Free active scan mask in iio_disable_all_buffers()
        iio: frequency: adf4350: add missing clk_disable_unprepare() on error in adf4350_probe()
        w1 - call request_module with w1 master mutex unlocked
        w1 - fix fops in w1_bus_notify
      66eb411e
    • L
      Merge tag 'sound-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 630db0e3
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "All reasonably small fixes as rc6: a HD-audio mic fix, a us122l mmap
        regression fix, and kernel memory leak fix in hdsp driver.  Hopefully
        this will be the last pull request for 3.12..."
      
      * tag 'sound-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hdsp - info leak in snd_hdsp_hwdep_ioctl()
        ALSA: us122l: Fix pcm_usb_stream mmapping regression
        ALSA: hda - Fix inverted internal mic not indicated on some machines
      630db0e3
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · b2118ea9
      Linus Torvalds 提交于
      Pull apparmor fixes from James Morris:
       "A couple more regressions fixed"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        apparmor: fix bad lock balance when introspecting policy
        apparmor: fix memleak of the profile hash
      b2118ea9
    • G
      Merge tag 'iio-fixes-for-3.12c' of... · e13cef8d
      Greg Kroah-Hartman 提交于
      Merge tag 'iio-fixes-for-3.12c' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-linus
      
      Jonathan writes:
      
      Third set of IIO fixes for the 3.12 cycle.
      
      Two little ones this time:
      
      1) A missing clk_unprepare in adf4350.
      2) A missing free of the active_scan_mask when iio_disable_all_buffers is
      called during an unexpected device removal.  This leak was introduced by
      the fix
      a87c82e4 iio: Stop sampling when the device is removed
      and hence is a regression fix.
      e13cef8d
    • G
      usb: usb_phy_gen: refine conditional declaration of usb_nop_xceiv_register · 94468783
      Guenter Roeck 提交于
      Commit 3fa4d734 (usb: phy: rename nop_usb_xceiv => usb_phy_gen_xceiv)
      changed the conditional around the declaration of usb_nop_xceiv_register
      from
      	#if defined(CONFIG_NOP_USB_XCEIV) ||
      		(defined(CONFIG_NOP_USB_XCEIV_MODULE) && defined(MODULE))
      to
      	#if IS_ENABLED(CONFIG_NOP_USB_XCEIV)
      
      While that looks the same, it is semantically different. The first expression
      is true if CONFIG_NOP_USB_XCEIV is built as module and if the including
      code is built as module. The second expression is true if code depending on
      CONFIG_NOP_USB_XCEIV if built as module or into the kernel.
      
      As a result, the arm:allmodconfig build fails with
      
      arch/arm/mach-omap2/built-in.o: In function `omap3_evm_init':
      arch/arm/mach-omap2/board-omap3evm.c:703: undefined reference to
      	`usb_nop_xceiv_register'
      
      Fix the problem by reverting to the old conditional.
      
      Cc: Josh Boyer <jwboyer@redhat.com>
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      94468783