forked from Minki/linux
Last-minute ACPI and power management fixes for 3.12
- Revert epoll and select commits related to the freezer, introduced during the 3.11 cycle, that cause mysterious user space breakage to occur during resume from suspend to RAM for multiple users of 32-bit x86 systems. Material for 3.11.y stable kernels. - Revert a recent ACPI-based PCI hotplug (ACPIPHP) commit that was part of boot problem fixes for one machine, but turns out to cause issues with hotplug on Thunderbolt chains with multiple devices. It also turns out to be unnecessary after another fix in the same area that went in later. From Mika Westerberg. / -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) iQIcBAABCAAGBQJSclBPAAoJEILEb/54YlRxB0IQAI9Iq9VxxeGyXyK6xtEsZcoK PCEkuGBrZf0Ih6dyuijQ3PEQvTLIIGSzJmnkFdpn5k9YFF3GiUg+sIs1wFnry1lA LKxhsaRyXMv8J1yoByJYczRZNwtFSNKAC0U78BSLALZGqlw+kbVrcb7sYg1TodUJ nYKogS4SphSv3Jjccbw9PSUsW2FHJ6x0wUJ4WXPFQE+mO7VH5wGTmbv6lK5wOrKZ JAMW1RxkVffW3NLEIJHZ0sFFjn4Cp0oo6o/bV+rQx5XEHRfLDUSOMezpQim/+qPf NVHN1+8ydFL6bjpm+nX2Mtvy9j8x+E1iRp4EVpQOst2JaxpHXTkGWGKm8qxQ/eRO ksA0M09neoQKlN8uKcQ1Ank8BpX02ZKrZ3Jx/VwCvLQRk1UYAy5442WsTmnvOGlO /WFkhbqYFqAxngCVdiTT1ptdeT0a4VTtIZBXmA3j7qHrbo3RKSFDFDX8/82VeU8W GjMlFooQ6p4HgzBxNsPkBgI9d45U9lpRgdmBZK3T95AbFk+az79hm94/c4LUKnfk KsTOhhZ+B29LFHS9Dqz0jGkW1mXj3rXNE5Z01VA1qeWxWT6xdGsnLlgbJdvJwyZS lHP91ELAmPKnoxd3E36nocRRLAMZ9zq1b4kPJY155ig866kDpUaNqWjojZYBkHdC qGfRTBw0/35CEhdHEvgB =8S79 -----END PGP SIGNATURE----- Merge tag 'pm+acpi-3.12-late' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm Pull ACPI and power management fixes from Rafael J Wysocki: "Last-minute ACPI and power management fixes for 3.12 - Revert epoll and select commits related to the freezer, introduced during the 3.11 cycle, that cause mysterious user space breakage to occur during resume from suspend to RAM for multiple users of 32-bit x86 systems. Material for 3.11.y stable kernels. - Revert a recent ACPI-based PCI hotplug (ACPIPHP) commit that was part of boot problem fixes for one machine, but turns out to cause issues with hotplug on Thunderbolt chains with multiple devices. It also turns out to be unnecessary after another fix in the same area that went in later. From Mika Westerberg" * tag 'pm+acpi-3.12-late' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: Revert "ACPI / hotplug / PCI: Avoid doing too much for spurious notifies" Revert "select: use freezable blocking call" Revert "epoll: use freezable blocking call"
This commit is contained in:
commit
e7647027bd
@ -552,9 +552,8 @@ static void __ref enable_slot(struct acpiphp_slot *slot)
|
||||
struct acpiphp_func *func;
|
||||
int max, pass;
|
||||
LIST_HEAD(add_list);
|
||||
int nr_found;
|
||||
|
||||
nr_found = acpiphp_rescan_slot(slot);
|
||||
acpiphp_rescan_slot(slot);
|
||||
max = acpiphp_max_busnr(bus);
|
||||
for (pass = 0; pass < 2; pass++) {
|
||||
list_for_each_entry(dev, &bus->devices, bus_list) {
|
||||
@ -574,9 +573,6 @@ static void __ref enable_slot(struct acpiphp_slot *slot)
|
||||
}
|
||||
}
|
||||
__pci_bus_assign_resources(bus, &add_list, NULL);
|
||||
/* Nothing more to do here if there are no new devices on this bus. */
|
||||
if (!nr_found && (slot->flags & SLOT_ENABLED))
|
||||
return;
|
||||
|
||||
acpiphp_sanitize_bus(bus);
|
||||
acpiphp_set_hpp_values(bus);
|
||||
|
@ -34,7 +34,6 @@
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/anon_inodes.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/freezer.h>
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/mman.h>
|
||||
@ -1605,8 +1604,7 @@ fetch_events:
|
||||
}
|
||||
|
||||
spin_unlock_irqrestore(&ep->lock, flags);
|
||||
if (!freezable_schedule_hrtimeout_range(to, slack,
|
||||
HRTIMER_MODE_ABS))
|
||||
if (!schedule_hrtimeout_range(to, slack, HRTIMER_MODE_ABS))
|
||||
timed_out = 1;
|
||||
|
||||
spin_lock_irqsave(&ep->lock, flags);
|
||||
|
@ -238,8 +238,7 @@ int poll_schedule_timeout(struct poll_wqueues *pwq, int state,
|
||||
|
||||
set_current_state(state);
|
||||
if (!pwq->triggered)
|
||||
rc = freezable_schedule_hrtimeout_range(expires, slack,
|
||||
HRTIMER_MODE_ABS);
|
||||
rc = schedule_hrtimeout_range(expires, slack, HRTIMER_MODE_ABS);
|
||||
__set_current_state(TASK_RUNNING);
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user