1. 02 12月, 2008 16 次提交
  2. 01 12月, 2008 24 次提交
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 · b4dcfbee
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
        USB: serial: add more Onda device ids to option driver
        USB: usb-storage: unusual_devs entry for Nikon D2H
        USB: storage: unusual_devs entry for Mio C520-GPS
        USB: fsl_usb2_udc: Report disconnect before unbinding
        USB: fsl_qe_udc: Report disconnect before unbinding
        USB: fix SB600 USB subsystem hang bug
        Revert "USB: improve ehci_watchdog's side effect in CPU power management"
      b4dcfbee
    • L
      ecf318cc
    • J
      vmscan: protect zone rotation stats by lru lock · 2a1dc509
      Johannes Weiner 提交于
      The zone's rotation statistics must not be accessed without the
      corresponding LRU lock held.  Fix an unprotected write in
      shrink_active_list().
      Acked-by: NRik van Riel <riel@redhat.com>
      Reviewed-by: NKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      Signed-off-by: NJohannes Weiner <hannes@saeurebad.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      2a1dc509
    • L
      Revert "of_platform_driver noise on sparce" · 33b07db9
      Linus Torvalds 提交于
      This reverts commit e669dae6, since it
      is incomplete, and clashes with fuller patches and the sparc 32/64
      unification effort.
      Requested-by: NDavid Miller <davem@davemloft.net>
      Acked-by: NAl Viro <viro@ZenIV.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      33b07db9
    • T
      ALSA: soc - Remove obsoleted sound/driver.h inclusion · f5d4c67e
      Takashi Iwai 提交于
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f5d4c67e
    • T
      ALSA: soc - Fix compile warnings in wm8903.c · 9171e5e6
      Takashi Iwai 提交于
      Hide annoying uninitialized warnings:
        sound/soc/codecs/wm8903.c:382: warning: ‘reg’ may be used uninitialized in this function
        sound/soc/codecs/wm8903.c:383: warning: ‘shift’ may be used uninitialized in this function
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      9171e5e6
    • G
      USB: serial: add more Onda device ids to option driver · 5bb4bd98
      Greg Kroah-Hartman 提交于
      Thanks to Domenico Riccio for pointing these out.
      
      Cc: Domenico Riccio <domenico.riccio@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      5bb4bd98
    • T
      USB: usb-storage: unusual_devs entry for Nikon D2H · 621b239d
      Tobias Kunze Briseño 提交于
      This patch adds an unusual_devs entry for the Nikon D2H camera.
      
      From: Tobias Kunze Briseño <t@fictive.com>,
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      621b239d
    • A
      USB: storage: unusual_devs entry for Mio C520-GPS · a6b7b034
      Alan Stern 提交于
      This patch (as1176) adds an unusual_devs entry for the Mio C520 GPS
      unit.  Other devices also based on the Mitac hardware use the same USB
      interface firmware, so the Vendor and Product names are generalized.
      
      This fixes Bugzilla #11583.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Tested-by: NTamas Kerecsen <kerecsen@bigfoot.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a6b7b034
    • A
      USB: fsl_usb2_udc: Report disconnect before unbinding · 1f15a506
      Anton Vorontsov 提交于
      Gadgets disable endpoints in their disconnect callbacks, so
      we must call disconnect before unbinding.
      
      The patch fixes following badness:
      
      root@b1:~# insmod fsl_usb2_udc.ko
      Freescale High-Speed USB SOC Device Controller driver (Apr 20, 2007)
      root@b1:~# insmod g_ether.ko
      g_ether gadget: using random self ethernet address
      g_ether gadget: using random host ethernet address
      usb0: MAC 26:07:ba:c0:44:33
      usb0: HOST MAC 96:81:0c:05:4d:e3
      g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
      g_ether gadget: g_ether ready
      fsl-usb2-udc: bind to driver g_ether
      g_ether gadget: high speed config #1: CDC Ethernet (ECM)
      root@b1:~# rmmod g_ether.ko
      ------------[ cut here ]------------
      Badness at drivers/usb/gadget/composite.c:871
      [...]
      NIP [e10c3454] composite_unbind+0x24/0x15c [g_ether]
      LR [e10aa454] usb_gadget_unregister_driver+0x13c/0x164 [fsl_usb2_udc]
      Call Trace:
      [df145e80] [ffffff94] 0xffffff94 (unreliable)
      [df145eb0] [e10aa454] usb_gadget_unregister_driver+0x13c/0x164 [fsl_usb2_udc]
      [df145ed0] [e10c4c40] usb_composite_unregister+0x3c/0x4c [g_ether]
      [df145ee0] [c006bcc0] sys_delete_module+0x130/0x19c
      [df145f40] [c00142d8] ret_from_syscall+0x0/0x38
      [...]
      unregistered gadget driver 'g_ether'
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Acked-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      1f15a506
    • A
      USB: fsl_qe_udc: Report disconnect before unbinding · 9ac36da3
      Anton Vorontsov 提交于
      Gadgets disable endpoints in their disconnect callbacks, so
      we must call disconnect before unbinding. This also fixes
      muram memory leak, since we free muram in the qe_ep_disable().
      
      But mainly the patch fixes following badness:
      
      root@b1:~# insmod fsl_qe_udc.ko
      fsl_qe_udc: Freescale QE/CPM USB Device Controller driver, 1.0
      fsl_qe_udc e01006c0.usb: QE USB controller initialized as device
      root@b1:~# insmod g_ether.ko
      g_ether gadget: using random self ethernet address
      g_ether gadget: using random host ethernet address
      usb0: MAC be:2d:3c:fa:be:f0
      usb0: HOST MAC 62:b8:6a:df:38:66
      g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
      g_ether gadget: g_ether ready
      fsl_qe_udc e01006c0.usb: fsl_qe_udc bind to driver g_ether
      g_ether gadget: high speed config #1: CDC Ethernet (ECM)
      root@b1:~# rmmod g_ether.ko
      ------------[ cut here ]------------
      Badness at drivers/usb/gadget/composite.c:871
      [...]
      NIP [d10c1374] composite_unbind+0x24/0x15c [g_ether]
      LR [d10a82f4] usb_gadget_unregister_driver+0x128/0x168 [fsl_qe_udc]
      Call Trace:
      [cfb93e80] [cfb1f3a0] 0xcfb1f3a0 (unreliable)
      [cfb93eb0] [d10a82f4] usb_gadget_unregister_driver+0x128/0x168 [fsl_qe_udc]
      [cfb93ed0] [d10c2a3c] usb_composite_unregister+0x3c/0x4c [g_ether]
      [cfb93ee0] [c006bde0] sys_delete_module+0x130/0x19c
      [cfb93f40] [c00142d8] ret_from_syscall+0x0/0x38
      [...]
      fsl_qe_udc e01006c0.usb: unregistered gadget driver 'g_ether'
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Acked-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      9ac36da3
    • S
      USB: fix SB600 USB subsystem hang bug · 0a99e8ac
      Shane Huang 提交于
      This patch is required for all AMD SB600 revisions to avoid USB subsystem hang
      symptom. The USB subsystem hang symptom is observed when the system has
      multiple USB devices connected to it. In some cases a USB hub may be required
      to observe this symptom.
      
      Reported in bugzilla as #11599, the similar patch for SB700 old revision is:
      commit b09bc6cbReported-by: Nraffaele <ralfconn@tele2.it>
      Tested-by: NRoman Mamedov <roman@rm.pp.ru>
      Signed-off-by: NShane Huang <shane.huang@amd.com>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      0a99e8ac
    • G
      Revert "USB: improve ehci_watchdog's side effect in CPU power management" · 269f0532
      Greg Kroah-Hartman 提交于
      This reverts commit f0d781d5.
      
      It was the wrong thing to do, and does not really do what it said
      it did.
      
      Cc: Yi Yang <yi.y.yang@intel.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: Alan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      269f0532
    • M
      powerpc: Fix build for 32-bit SMP configs · a1e0eb10
      Milton Miller 提交于
      attr_smt_snooze_delay is only defined for CONFIG_PPC64, so protect the
      attribute removal with the same condition.  This fixes this build error
      on 32-bit SMP configurations:
      
      /data/home/miltonm/next.git/arch/powerpc/kernel/sysfs.c: In function ‘unregister_cpu_online’:
      /data/home/miltonm/next.git/arch/powerpc/kernel/sysfs.c:722: error: ‘attr_smt_snooze_delay’ undeclared (first use in this function)
      /data/home/miltonm/next.git/arch/powerpc/kernel/sysfs.c:722: error: (Each undeclared identifier is reported only once
      /data/home/miltonm/next.git/arch/powerpc/kernel/sysfs.c:722: error: for each function it appears in.)
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      a1e0eb10
    • L
      Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · d9d060a9
      Linus Torvalds 提交于
      * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/i915: Fix copy'n'pasteo that broke VT switch if flushing was non-empty.
      d9d060a9
    • L
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc · 03cfdb86
      Linus Torvalds 提交于
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
        powerpc: Fix system calls on Cell entered with XER.SO=1
        powerpc/cell: Fix GDB watchpoints, again
        powerpc/mpic: Don't reset affinity for secondary MPIC on boot
        powerpc/cell/axon-msi: Retry on missing interrupt
        powerpc: Fix boot freeze on machine with empty memory node
        powerpc: Fix IRQ assignment for some PCIe devices
        powerpc/spufs: Fix spinning in spufs_ps_fault on signal
        powerpc/mpc832x_rdb: fix swapped ethernet ids
        powerpc: Use generic PHY driver for Marvell 88E1111 PHY on GE Fanuc SBC610
        powerpc/85xx: L2 cache size wrong in 8572DS dts
        powerpc/virtex: Update defconfigs
        powerpc/52xx: update defconfigs
        xsysace: Fix driver to use resource_size_t instead of unsigned long
        powerpc/virtex: fix various format/casting printk mismatches
        powerpc/mpc5200: fix bestcomm Kconfig dependencies
        powerpc/44x: Fix 460EX/460GT machine check handling
        powerpc/40x: Limit allocable DRAM during early mapping
      03cfdb86
    • L
      Merge master.kernel.org:/home/rmk/linux-2.6-arm · 4ec8f077
      Linus Torvalds 提交于
      * master.kernel.org:/home/rmk/linux-2.6-arm:
        Allow architectures to override copy_user_highpage()
        [ARM] pxa/palmtx: misc fixes to use generic GPIO API
        ARM: OMAP: Fixes for suspend / resume GPIO wake-up handling
        [ARM] pxa/corgi: update default config to exclude tosa from being built
        [ARM] pxa/pcm990: use negative number for an invalid GPIO in camera data
        ARM: OMAP: Typo fix for clock_allow_idle
        ARM: OMAP: Remove broken LCD driver for SX1
        [ARM] 5335/1: pxa25x_udc: Fix is_vbus_present to return 1 or 0
        [ARM] pxa/MioA701: bluetooth resume fix
        [ARM] pxa/MioA701: fix memory corruption.
      4ec8f077
    • E
      drm/i915: Fix copy'n'pasteo that broke VT switch if flushing was non-empty. · 151903d5
      Eric Anholt 提交于
      Introduced in the "Avoid BUG_ONs on VT switch" commit.
      Signed-off-by: NEric Anholt <eric@anholt.net>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      151903d5
    • P
      powerpc: Fix system calls on Cell entered with XER.SO=1 · ab598b66
      Paul Mackerras 提交于
      It turns out that on Cell, on a kernel with CONFIG_VIRT_CPU_ACCOUNTING
      = y, if a program sets the SO (summary overflow) bit in the XER and
      then does a system call, the SO bit in CR0 will be set on return
      regardless of whether the system call detected an error.  Since CR0.SO
      is used as the error indication from the system call, this means that
      all system calls appear to fail.
      
      The reason is that the workaround for the timebase bug on Cell uses a
      compare instruction.  With CONFIG_VIRT_CPU_ACCOUNTING = y, the
      ACCOUNT_CPU_USER_ENTRY macro reads the timebase, so we end up doing a
      compare instruction, which copies XER.SO to CR0.SO.  Since we were
      doing this in the system call entry patch after clearing CR0.SO but
      before saving the CR, this meant that the saved CR image had CR0.SO
      set if XER.SO was set on entry.
      
      This fixes it by moving the clearing of CR0.SO to after the
      ACCOUNT_CPU_USER_ENTRY call in the system call entry path.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      ab598b66
    • A
      powerpc/cell: Fix GDB watchpoints, again · 960cedb4
      Arnd Bergmann 提交于
      An earlier patch from Jens Osterkamp attempted to fix GDB
      watchpoints by enabling the DABRX register at boot time.
      Unfortunately, this did not work on SMP setups, where
      secondary CPUs were still using the power-on DABRX value.
      
      This introduces the same change for secondary CPUs on cell
      as well.
      Reported-by: NUlrich Weigand <Ulrich.Weigand@de.ibm.com>
      Tested-by: NUlrich Weigand <Ulrich.Weigand@de.ibm.com>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      960cedb4
    • A
      powerpc/mpic: Don't reset affinity for secondary MPIC on boot · cc353c30
      Arnd Bergmann 提交于
      Kexec/kdump currently fails on the IBM QS2x blades when the kexec happens
      on a CPU other than the initial boot CPU.  It turns out that this is the
      result of mpic_init trying to set affinity of each interrupt vector to the
      current boot CPU.
      
      As far as I can tell,  the same problem is likely to exist on any
      secondary MPIC, because they have to deliver interrupts to the first
      output all the time. There are two potential solutions for this: either
      not set up affinity at all for secondary MPICs, or assume that a single
      CPU output is connected to the upstream interrupt controller and hardcode
      affinity to that per architecture.
      
      This patch implements the second approach, defaulting to the first output.
      Currently, all known secondary MPICs are routed to their upstream port
      using the first destination, so we hardcode that.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      cc353c30
    • A
      powerpc/cell/axon-msi: Retry on missing interrupt · d015fe99
      Arnd Bergmann 提交于
      The MSI capture logic for the axon bridge can sometimes
      lose interrupts in case of high DMA and interrupt load,
      when it signals an MSI interrupt to the MPIC interrupt
      controller while we are already handling another MSI.
      
      Each MSI vector gets written into a FIFO buffer in main
      memory using DMA, and that DMA access is normally flushed
      by the actual interrupt packet on the IOIF.  An MMIO
      register in the MSIC holds the position of the last
      entry in the FIFO buffer that was written.  However,
      reading that position does not flush the DMA, so that
      we can observe stale data in the buffer.
      
      In a stress test, we have observed the DMA to arrive
      up to 14 microseconds after reading the register.
      
      This patch works around this problem by retrying the
      access to the FIFO buffer.
      
      We can reliably detect the conditioning by writing
      an invalid MSI vector into the FIFO buffer after
      reading from it, assuming that all MSIs we get
      are valid.  After detecting an invalid MSI vector,
      we udelay(1) in the interrupt cascade for up to
      100 times before giving up.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      d015fe99
    • D
      powerpc: Fix boot freeze on machine with empty memory node · 4a618669
      Dave Hansen 提交于
      I got a bug report about a distro kernel not booting on a particular
      machine.  It would freeze during boot:
      
      > ...
      > Could not find start_pfn for node 1
      > [boot]0015 Setup Done
      > Built 2 zonelists in Node order, mobility grouping on.  Total pages: 123783
      > Policy zone: DMA
      > Kernel command line:
      > [boot]0020 XICS Init
      > [boot]0021 XICS Done
      > PID hash table entries: 4096 (order: 12, 32768 bytes)
      > clocksource: timebase mult[7d0000] shift[22] registered
      > Console: colour dummy device 80x25
      > console handover: boot [udbg0] -> real [hvc0]
      > Dentry cache hash table entries: 1048576 (order: 7, 8388608 bytes)
      > Inode-cache hash table entries: 524288 (order: 6, 4194304 bytes)
      > freeing bootmem node 0
      
      I've reproduced this on 2.6.27.7.  It is caused by commit
      8f64e1f2 ("powerpc: Reserve in bootmem
      lmb reserved regions that cross NUMA nodes").
      
      The problem is that Jon took a loop which was (in pseudocode):
      
      	for_each_node(nid)
      		NODE_DATA(nid) = careful_alloc(nid);
      		setup_bootmem(nid);
      		reserve_node_bootmem(nid);
      
      and broke it up into:
      
      	for_each_node(nid)
      		NODE_DATA(nid) = careful_alloc(nid);
      		setup_bootmem(nid);
      	for_each_node(nid)
      		reserve_node_bootmem(nid);
      
      The issue comes in when the 'careful_alloc()' is called on a node with
      no memory.  It falls back to using bootmem from a previously-initialized
      node.  But, bootmem has not yet been reserved when Jon's patch is
      applied.  It gives back bogus memory (0xc000000000000000) and pukes
      later in boot.
      
      The following patch collapses the loop back together.  It also breaks
      the mark_reserved_regions_for_nid() code out into a function and adds
      some comments.  I think a huge part of introducing this bug is because
      for loop was too long and hard to read.
      
      The actual bug fix here is the:
      
      +		if (end_pfn <= node->node_start_pfn ||
      +		    start_pfn >= node_end_pfn)
      +			continue;
      Signed-off-by: NDave Hansen <dave@linux.vnet.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      4a618669
    • A
      powerpc: Fix IRQ assignment for some PCIe devices · 4b824de9
      Adhemerval Zanella 提交于
      Currently, some PCIe devices on POWER6 machines do not get interrupts
      assigned correctly.  The problem is that OF doesn't create an
      "interrupt" property for them.  The fix is for of_irq_map_pci to fall
      back to using the value in the PCI interrupt-pin register in config
      space, as we do when there is no OF device-tree node for the device.
      
      I have verified that this works fine with a pair of Squib-E SAS
      adapter on a P6-570.
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      4b824de9