1. 17 10月, 2013 1 次提交
    • R
      ACPI / power: Drop automaitc resume of power resource dependent devices · 41863fce
      Rafael J. Wysocki 提交于
      The mechanism causing devices depending on a given power resource
      (that is, devices that can be in D0 only if that power resource is
      on) to be resumed automatically when the power resource is turned
      on (and their "inferred" power state becomes D0 as a result) is
      inherently racy and in fact unnecessary.
      
      It is racy, because if the power resource is turned on and then
      immediately off, the device resume triggered by the first transition
      to "on" may still happen, causing the power resource to be turned
      on again.  That again will trigger the "resume of dependent devices"
      mechanism, but if the devices in question are not in use, they will
      be suspended in the meantime causing the power resource to be turned
      off.  However, the "resume of dependent devices" will next resume
      them again and so on.  In some cases (USB port PM in particular) that
      leads to an endless busy loop of flipping the resource on and off
      continuously.
      
      It is needless, because whoever turns a power resource on will most
      likely turn it off at some point and the devices that go into "D0"
      as a result of turning it on will then go back into D3cold
      (generally, the state they were in before).
      
      Moreover, turning on all power resources a device needs to go into
      D0 is not sufficient for a full transition into D0 in general.
      Namely, _PS0 may need to be executed in addition to that in some
      cases.  This means that the whole rationale of the "resume of
      dependent devices" mechanism was incorrect to begin with and it's
      best to remove it entirely.
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      41863fce
  2. 16 10月, 2013 2 次提交
  3. 15 10月, 2013 1 次提交
    • L
      Merge tag 'pm+acpi-3.12-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 35f9162d
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from Rafael Wysocki:
       "These fix two recent bugs in ACPIPHP (ACPI-based PCI hotplug) and
        update a bunch of web links and e-mail addresses in MAINTAINERS, docs
        and Kconfig that either are stale or will expire soon.
      
        Specifics:
      
         - The WARN_ON() in acpiphp_enumerate_slots() triggers as a false
           positive in some cases, so drop it.
      
         - Add a missing pci_dev_put() to an error code path in
           acpiphp_enumerate_slots().
      
         - Replace my old e-mail address that's going to expire with a new
           one.
      
         - Update ACPI web links and git tree information in MAINTAINERS.
      
         - Update links to the Linux-ACPI project's page in MAINTAINERS.
      
         - Update some stale links and e-mail addresses under Documentation
           and in the ACPI Kconfig file"
      
      * tag 'pm+acpi-3.12-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / hotplug / PCI: Drop WARN_ON() from acpiphp_enumerate_slots()
        ACPI / hotplug / PCI: Fix error code path in acpiphp_enumerate_slots()
        ACPI / PM / Documentation: Replace outdated project links and addresses
        MAINTAINERS / ACPI: Update links to the Linux-ACPI project web page
        MAINTAINERS / ACPI: Update links and git tree information
        MAINTAINERS / Documentation: Update Rafael's e-mail address
      35f9162d
  4. 14 10月, 2013 10 次提交
  5. 13 10月, 2013 16 次提交
  6. 12 10月, 2013 6 次提交
    • R
      Merge branch 'acpi-pci-hotplug' · 2c5bfce8
      Rafael J. Wysocki 提交于
      * acpi-pci-hotplug:
        ACPI / hotplug / PCI: Drop WARN_ON() from acpiphp_enumerate_slots()
        ACPI / hotplug / PCI: Fix error code path in acpiphp_enumerate_slots()
      2c5bfce8
    • V
      ARC: Ignore ptrace SETREGSET request for synthetic register "stop_pc" · 5b242828
      Vineet Gupta 提交于
      ARCompact TRAP_S insn used for breakpoints, commits before exception is
      taken (updating architectural PC). So ptregs->ret contains next-PC and
      not the breakpoint PC itself. This is different from other restartable
      exceptions such as TLB Miss where ptregs->ret has exact faulting PC.
      gdb needs to know exact-PC hence ARC ptrace GETREGSET provides for
      @stop_pc which returns ptregs->ret vs. EFA depending on the
      situation.
      
      However, writing stop_pc (SETREGSET request), which updates ptregs->ret
      doesn't makes sense stop_pc doesn't always correspond to that reg as
      described above.
      
      This was not an issue so far since user_regs->ret / user_regs->stop_pc
      had same value and both writing to ptregs->ret was OK, needless, but NOT
      broken, hence not observed.
      
      With gdb "jump", they diverge, and user_regs->ret updating ptregs is
      overwritten immediately with stop_pc, which this patch fixes.
      Reported-by: NAnton Kolesov <akolesov@synopsys.com>
      Signed-off-by: NVineet Gupta <vgupta@synopsys.com>
      5b242828
    • R
      ACPI / hotplug / PCI: Drop WARN_ON() from acpiphp_enumerate_slots() · fd3cfebe
      Rafael J. Wysocki 提交于
      The WARN_ON() in acpiphp_enumerate_slots() triggers unnecessarily for
      devices whose bridges are going to be handled by native PCIe hotplug
      (pciehp) and the simplest way to prevent that from happening is to
      drop the WARN_ON().
      
      References: https://bugzilla.kernel.org/show_bug.cgi?id=62831Reported-by: NSteven Rostedt <rostedt@goodmis.org>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      fd3cfebe
    • R
      ACPI / hotplug / PCI: Fix error code path in acpiphp_enumerate_slots() · 5d449457
      Rafael J. Wysocki 提交于
      One of the error code paths in acpiphp_enumerate_slots() is missing
      a pci_dev_put(bridge->pci_dev) call, so add it.
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Acked-by: NBjorn Helgaas <bhelgaas@google.com>
      5d449457
    • L
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 46f37519
      Linus Torvalds 提交于
      Pull MIPS fix from Ralf Baechle:
       "Just one fix.  The stack protector was loading the value of the canary
        instead of its address"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: stack protector: Fix per-task canary switch
      46f37519
    • L
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · cd4edf7a
      Linus Torvalds 提交于
      Pull drm fixes from Dave Airlie:
       "All over the map..
      
         - nouveau:
           disable MSI, needs more work, will try again next merge window
         - radeon:
            audio + uvd regression fixes, dpm fixes, reset fixes
         - i915:
           the dpms fix might fix your haswell
      
        And one pain in the ass revert, so we have VGA arbitration that when
        implemented 4-5 years ago really hoped that GPUs could remove
        themselves from arbitration completely once they had a kernel driver.
      
        It seems Intel hw designers decided that was too nice a facility to
        allow us to have so they removed it when they went on-die (so since
        Ironlake at least).  Now Alex Williamson added support for VGA
        arbitration for newer GPUs however this now exposes itself to
        userspace as requireing arbitration of GPU VGA regions and the X
        server gets involved and disables things that it can't handle when VGA
        access is possibly required around every operation.
      
        So in order to not break userspace we just reverted things back to the
        old known broken status so maybe we can try and design out way out.
      
        Ville also had a patch to use stop machine for the two times Intel
        needs to access VGA space, that might be acceptable with some rework,
        but for now myself and Daniel agreed to just go back"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (23 commits)
        Revert "i915: Update VGA arbiter support for newer devices"
        Revert "drm/i915: Delay disabling of VGA memory until vgacon->fbcon handoff is done"
        drm/radeon: re-enable sw ACR support on pre-DCE4
        drm/radeon/dpm: disable bapm on TN asics
        drm/radeon: improve soft reset on CIK
        drm/radeon: improve soft reset on SI
        drm/radeon/dpm: off by one in si_set_mc_special_registers()
        drm/radeon/dpm/btc: off by one in btc_set_mc_special_registers()
        drm/radeon: forever loop on error in radeon_do_test_moves()
        drm/radeon: fix hw contexts for SUMO2 asics
        drm/radeon: fix typo in CP DMA register headers
        drm/radeon/dpm: disable multiple UVD states
        drm/radeon: use hw generated CTS/N values for audio
        drm/radeon: fix N/CTS clock matching for audio
        drm/radeon: use 64-bit math to calculate CTS values for audio (v2)
        drm/edid: catch kmalloc failure in drm_edid_to_speaker_allocation
        Revert "drm/fb-helper: don't sleep for screen unblank when an oops is in progress"
        drm/gma500: fix things after get/put page helpers
        drm/nouveau/mc: disable msi support by default, it's busted in tons of places
        drm/i915: Only apply DPMS to the encoder if enabled
        ...
      cd4edf7a
  7. 11 10月, 2013 4 次提交