Skip to content
  1. Oct 05, 2009
    • Vikram Pandita's avatar
      OMAP3: PM: USBHOST: clear wakeup events on both hosts · 71a80775
      Vikram Pandita authored
      
      
      USBHOST module has 2 fclocks (for HOST1 and HOST2), only one iclock
      and only a single bit in the WKST register to indicate a wakeup event.
      
      Because of the single WKST bit, we cannot know whether a wakeup event
      was on HOST1 or HOST2, so enable both fclocks before clearing the
      wakeup event to ensure both hosts can properly clear the event.
      
      Signed-off-by: default avatarVikram Pandita <vikram.pandita@ti.com>
      Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
      71a80775
    • Paul Walmsley's avatar
      OMAP3: PM: PRCM interrupt: only handle selected PRCM interrupts · 8cb0ac99
      Paul Walmsley authored
      
      
      Clearing wakeup sources is now only done when the PRM indicates a
      wakeup source interrupt.  Since we don't handle any other types of
      PRCM interrupts right now, warn if we get any other type of PRCM
      interrupt.  Either code needs to be added to the PRCM interrupt
      handler to react to these, or these other interrupts should be masked
      off at init.
      
      Updated after Jon Hunter's PRCM IRQ rework by Kevin Hilman.
      
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
      8cb0ac99
    • Paul Walmsley's avatar
      OMAP3: PM: PRCM interrupt: check MPUGRPSEL register · 5d805978
      Paul Walmsley authored
      
      
      PM_WKST register contents should be ANDed with the contents of the
      MPUGRPSEL registers.  Otherwise the MPU PRCM interrupt handler could
      wind up clearing wakeup events meant for the IVA PRCM interrupt
      handler. A future revision to this code should be to read a cached
      version of MPUGRPSEL from the powerdomain code, since PRM reads are
      relatively slow.
      
      Updated after Jon Hunter's PRCM IRQ change by Kevin Hilman
      
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
      5d805978
    • Jon Hunter's avatar
      OMAP3: PM: Prevent hang in prcm_interrupt_handler · 77da2d91
      Jon Hunter authored
      
      
      There are two scenarios where a race condition could result in a hang
      in the prcm_interrupt handler. These are:
      
      1). Waiting for PRM_IRQSTATUS_MPU register to clear.
      Bit 0 of the PRM_IRQSTATUS_MPU register indicates that a wake-up event
      is pending for the MPU. This bit can only be cleared if the all the
      wake-up events latched in the various PM_WKST_x registers have been
      cleared. If a wake-up event occurred during the processing of the prcm
      interrupt handler, after the corresponding PM_WKST_x register was
      checked but before the PRM_IRQSTATUS_MPU was cleared, then the CPU
      would be stuck forever waiting for bit 0 in PRM_IRQSTATUS_MPU to be
      cleared.
      
      2). Waiting for the PM_WKST_x register to clear.
      Some power domains have more than one wake-up source. The PM_WKST_x
      registers indicate the source of a wake-up event and need to be cleared
      after a wake-up event occurs. When the PM_WKST_x registers are read and
      before they are cleared, it is possible that another wake-up event
      could occur causing another bit to be set in one of the PM_WKST_x
      registers. If this did occur after reading a PM_WKST_x register then
      the CPU would miss this event and get stuck forever in a loop waiting
      for that PM_WKST_x register to clear.
      
      This patch address the above race conditions that would result in a
      hang.
      
      Signed-off-by: default avatarJon Hunter <jon-hunter@ti.com>
      Reviewed-by: default avatarPaul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
      77da2d91
  2. Sep 27, 2009
  3. Sep 26, 2009
  4. Sep 25, 2009
  5. Sep 24, 2009
    • Ivan Kokshaysky's avatar
      alpha: AGP update (fixes compile failure) · d68721eb
      Ivan Kokshaysky authored
      
      
      This brings Alpha AGP platforms in sync with the change to struct
      agp_memory (unsigned long *memory => struct page **pages).
      
      Only compile tested (I don't have titan/marvel hardware), but this change
      looks pretty straightforward, so hopefully it's ok.
      
      Signed-off-by: default avatarIvan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Dave Airlie <airlied@linux.ie>
      Cc: <stable@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d68721eb
    • Alexey Dobriyan's avatar
      sysctl: remove "struct file *" argument of ->proc_handler · 8d65af78
      Alexey Dobriyan authored
      
      
      It's unused.
      
      It isn't needed -- read or write flag is already passed and sysctl
      shouldn't care about the rest.
      
      It _was_ used in two places at arch/frv for some reason.
      
      Signed-off-by: default avatarAlexey Dobriyan <adobriyan@gmail.com>
      Cc: David Howells <dhowells@redhat.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: James Morris <jmorris@namei.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8d65af78
    • Peter Zijlstra's avatar
      fcntl: add F_[SG]ETOWN_EX · ba0a6c9f
      Peter Zijlstra authored
      
      
      In order to direct the SIGIO signal to a particular thread of a
      multi-threaded application we cannot, like suggested by the manpage, put a
      TID into the regular fcntl(F_SETOWN) call.  It will still be send to the
      whole process of which that thread is part.
      
      Since people do want to properly direct SIGIO we introduce F_SETOWN_EX.
      
      The need to direct SIGIO comes from self-monitoring profiling such as with
      perf-counters.  Perf-counters uses SIGIO to notify that new sample data is
      available.  If the signal is delivered to the same task that generated the
      new sample it can augment that data by inspecting the task's user-space
      state right after it returns from the kernel.  This is esp.  convenient
      for interpreted or virtual machine driven environments.
      
      Both F_SETOWN_EX and F_GETOWN_EX take a pointer to a struct f_owner_ex
      as argument:
      
      struct f_owner_ex {
      	int   type;
      	pid_t pid;
      };
      
      Where type is one of F_OWNER_TID, F_OWNER_PID or F_OWNER_GID.
      
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Reviewed-by: default avatarOleg Nesterov <oleg@redhat.com>
      Tested-by: default avatarstephane eranian <eranian@googlemail.com>
      Cc: Michael Kerrisk <mtk.manpages@googlemail.com>
      Cc: Roland McGrath <roland@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Christoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ba0a6c9f
    • Rusty Russell's avatar
      x86: Remove redundant non-NUMA topology functions · b0c6fbe4
      Rusty Russell authored
      
      
      arch/x86/include/asm/topology.h declares inline fns cpu_to_node and
      cpumask_of_node for !NUMA, even though they are then declared as
      macros by asm-generic/topology.h, which is #included just below.
      
      The macros (which are the same) end up being used; these functions
      are just confusing.
      
      Noticed-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
      Cc: "Greg Kroah-Hartman" <gregkh@suse.de>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Tejun Heo <tj@kernel.org>
      LKML-Reference: <200909241748.45629.rusty@rustcorp.com.au>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      b0c6fbe4
    • Jason Wessel's avatar
      x86: early_printk: Protect against using the same device twice · 429a6e5e
      Jason Wessel authored
      
      
      If you use the kernel argument:
      
        earlyprintk=serial,ttyS0,115200
      
      This will cause a recursive hang printing the same line
      again and again:
      
       BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
       BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
       BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
      bootconsole [earlyser0] enabled
      Linux version 2.6.31-07863-gb64ada6 (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6 (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6 (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6 (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      Linux version 2.6.31-07863-gb64ada6 (mingo@sirius) (gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC) ) #16789 SMP Wed Sep 23 21:09:43 CEST 2009
      
      Instead warn the end user that they specified the device
      a second time, and ignore that second console.
      
      Reported-by: default avatarIngo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarJason Wessel <jason.wessel@windriver.com>
      Cc: Len Brown <lenb@kernel.org>
      Cc: Greg KH <gregkh@suse.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      LKML-Reference: <4ABAAB89.1080407@windriver.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      429a6e5e
    • Roland Dreier's avatar
      x86: Reduce verbosity of "PAT enabled" kernel message · e23a8b6a
      Roland Dreier authored
      
      
      On modern systems, the kernel prints the message
      
          x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
      
      once for every CPU.
      
      This gets kind of ridiculous on huge systems; for example, on a
      64-thread system I was lucky enough to get:
      
          dmesg| grep 'PAT enabled' | wc
               64     704    5174
      
      There is already a BUG() if non-boot CPUs have PAT capabilities
      that don't match the boot CPU, so just print the message on the
      boot CPU. (I kept the print after the wrmsrl() that enables PAT,
      so that the log output continues to mean that the system survived
      enabling PAT on the boot CPU)
      
      Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
      Cc: Suresh Siddha <suresh.b.siddha@intel.com>
      Cc: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      LKML-Reference: <adavdj92sso.fsf@cisco.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      e23a8b6a
    • Roland Dreier's avatar
      x86: Reduce verbosity of "TSC is reliable" message · ea01c0d7
      Roland Dreier authored
      
      
      On modern systems, the kernel prints the message
      
          Skipping synchronization checks as TSC is reliable.
      
      once for every non-boot CPU.
      
      This gets kind of ridiculous on huge systems; for example, on a
      64-thread system I was lucky enough to get:
      
          $ dmesg | grep 'TSC is reliable' | wc
               63     567    4221
      
      There's no point to doing this for every CPU, since the code is
      just checking the boot CPU anyway, so change this to a
      printk_once() to make the message appears only once.
      
      Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
      LKML-Reference: <adazl8l2swc.fsf@cisco.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      ea01c0d7
    • Paul Mundt's avatar
      sh: Fix up uninitialized variable use caught by gcc 4.4. · 40258ee9
      Paul Mundt authored
      
      
      In the unaligned kernel exception fixup case the printk() was ordered
      before the copy_from_user(), resulting in a nonsensical instruction
      value. This fixes up the ordering properly.
      
      Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
      40258ee9
    • Paul Mundt's avatar
      sh: Handle unaligned 16-bit instructions on SH-2A. · 23c4c821
      Paul Mundt authored
      
      
      This adds some sanity checking in the unaligned instruction handler to
      verify the instruction size, which enables basic support for 16-bit
      fixups on SH-2A parts.
      
      Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
      23c4c821
    • Michal Simek's avatar
      microblaze: Disable heartbeat/enable emaclite in defconfigs · bfc81258
      Michal Simek authored
      
      
      I need to disable heartbeat function because this features
      breaks testing in Qemu.
      
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      bfc81258
    • Michal Simek's avatar
      microblaze: Support simpleImage.dts make target · f05131cd
      Michal Simek authored
      
      
      Instead of remembering to specify DTB= on the make commandline, this commit
      allows the much friendlier make simpleImage.<dts>
      where <dts>.dts is expected to be found in arch/microblaze/boot/dts/
      The resulting vmlinux, with the compiled DTS linked in, will be copied to
      boot/simpleImage.<dts>
      
      This mirrors the same functionality as on PowerPC,
      albeit achieving it in a slightly different way.
      
      + strip simpleImage file
      The size of output file is very similar to linux.bin.
      
      vmlinux - full elf without fdt blob
      simpleImage.<dtb name>.unstrip - full elf with fdt blob
      simpleImage.<dtb name> - stripped elf with fdt blob
      
      Add symlink to generic system.dts in platform folder
      
      Signed-off-by: default avatarJohn Williams <john.williams@petalogix.com>
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      f05131cd
Loading