Linux v3.14-rc6
- Disable debugging options.
This commit is contained in:
parent
94c7eab835
commit
0ec726eb5e
@ -1,175 +0,0 @@
|
|||||||
Bugzilla: 1003602
|
|
||||||
Upstream-status: Queued for 3.15 https://git.kernel.org/cgit/linux/kernel/git/rafael/linux-pm.git/commit/?id=27095111cbafd3212c7e9a4a8cef1099b7520ca8
|
|
||||||
|
|
||||||
From 27095111cbafd3212c7e9a4a8cef1099b7520ca8 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Kieran Clancy <clancy.kieran@gmail.com>
|
|
||||||
Date: Fri, 28 Feb 2014 14:12:28 +0000
|
|
||||||
Subject: ACPI / EC: Clear stale EC events on Samsung systems
|
|
||||||
|
|
||||||
A number of Samsung notebooks (530Uxx/535Uxx/540Uxx/550Pxx/900Xxx/etc)
|
|
||||||
continue to log events during sleep (lid open/close, AC plug/unplug,
|
|
||||||
battery level change), which accumulate in the EC until a buffer fills.
|
|
||||||
After the buffer is full (tests suggest it holds 8 events), GPEs stop
|
|
||||||
being triggered for new events. This state persists on wake or even on
|
|
||||||
power cycle, and prevents new events from being registered until the EC
|
|
||||||
is manually polled.
|
|
||||||
|
|
||||||
This is the root cause of a number of bugs, including AC not being
|
|
||||||
detected properly, lid close not triggering suspend, and low ambient
|
|
||||||
light not triggering the keyboard backlight. The bug also seemed to be
|
|
||||||
responsible for performance issues on at least one user's machine.
|
|
||||||
|
|
||||||
Juan Manuel Cabo found the cause of bug and the workaround of polling
|
|
||||||
the EC manually on wake.
|
|
||||||
|
|
||||||
The loop which clears the stale events is based on an earlier patch by
|
|
||||||
Lan Tianyu (see referenced attachment).
|
|
||||||
|
|
||||||
This patch:
|
|
||||||
- Adds a function acpi_ec_clear() which polls the EC for stale _Q
|
|
||||||
events at most ACPI_EC_CLEAR_MAX (currently 100) times. A warning is
|
|
||||||
logged if this limit is reached.
|
|
||||||
- Adds a flag EC_FLAGS_CLEAR_ON_RESUME which is set to 1 if the DMI
|
|
||||||
system vendor is Samsung. This check could be replaced by several
|
|
||||||
more specific DMI vendor/product pairs, but it's likely that the bug
|
|
||||||
affects more Samsung products than just the five series mentioned
|
|
||||||
above. Further, it should not be harmful to run acpi_ec_clear() on
|
|
||||||
systems without the bug; it will return immediately after finding no
|
|
||||||
data waiting.
|
|
||||||
- Runs acpi_ec_clear() on initialisation (boot), from acpi_ec_add()
|
|
||||||
- Runs acpi_ec_clear() on wake, from acpi_ec_unblock_transactions()
|
|
||||||
|
|
||||||
References: https://bugzilla.kernel.org/show_bug.cgi?id=44161
|
|
||||||
References: https://bugzilla.kernel.org/show_bug.cgi?id=45461
|
|
||||||
References: https://bugzilla.kernel.org/show_bug.cgi?id=57271
|
|
||||||
References: https://bugzilla.kernel.org/attachment.cgi?id=126801
|
|
||||||
Suggested-by: Juan Manuel Cabo <juanmanuel.cabo@gmail.com>
|
|
||||||
Signed-off-by: Kieran Clancy <clancy.kieran@gmail.com>
|
|
||||||
Reviewed-by: Lan Tianyu <tianyu.lan@intel.com>
|
|
||||||
Reviewed-by: Dennis Jansen <dennis.jansen@web.de>
|
|
||||||
Tested-by: Kieran Clancy <clancy.kieran@gmail.com>
|
|
||||||
Tested-by: Juan Manuel Cabo <juanmanuel.cabo@gmail.com>
|
|
||||||
Tested-by: Dennis Jansen <dennis.jansen@web.de>
|
|
||||||
Tested-by: Maurizio D'Addona <mauritiusdadd@gmail.com>
|
|
||||||
Tested-by: San Zamoyski <san@plusnet.pl>
|
|
||||||
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
|
|
||||||
---
|
|
||||||
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
|
|
||||||
index 959d41a..d7d32c2 100644
|
|
||||||
--- a/drivers/acpi/ec.c
|
|
||||||
+++ b/drivers/acpi/ec.c
|
|
||||||
@@ -67,6 +67,8 @@ enum ec_command {
|
|
||||||
#define ACPI_EC_DELAY 500 /* Wait 500ms max. during EC ops */
|
|
||||||
#define ACPI_EC_UDELAY_GLK 1000 /* Wait 1ms max. to get global lock */
|
|
||||||
#define ACPI_EC_MSI_UDELAY 550 /* Wait 550us for MSI EC */
|
|
||||||
+#define ACPI_EC_CLEAR_MAX 100 /* Maximum number of events to query
|
|
||||||
+ * when trying to clear the EC */
|
|
||||||
|
|
||||||
enum {
|
|
||||||
EC_FLAGS_QUERY_PENDING, /* Query is pending */
|
|
||||||
@@ -116,6 +118,7 @@ EXPORT_SYMBOL(first_ec);
|
|
||||||
static int EC_FLAGS_MSI; /* Out-of-spec MSI controller */
|
|
||||||
static int EC_FLAGS_VALIDATE_ECDT; /* ASUStec ECDTs need to be validated */
|
|
||||||
static int EC_FLAGS_SKIP_DSDT_SCAN; /* Not all BIOS survive early DSDT scan */
|
|
||||||
+static int EC_FLAGS_CLEAR_ON_RESUME; /* Needs acpi_ec_clear() on boot/resume */
|
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------
|
|
||||||
Transaction Management
|
|
||||||
@@ -440,6 +443,29 @@ acpi_handle ec_get_handle(void)
|
|
||||||
|
|
||||||
EXPORT_SYMBOL(ec_get_handle);
|
|
||||||
|
|
||||||
+static int acpi_ec_query_unlocked(struct acpi_ec *ec, u8 *data);
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
+ * Clears stale _Q events that might have accumulated in the EC.
|
|
||||||
+ * Run with locked ec mutex.
|
|
||||||
+ */
|
|
||||||
+static void acpi_ec_clear(struct acpi_ec *ec)
|
|
||||||
+{
|
|
||||||
+ int i, status;
|
|
||||||
+ u8 value = 0;
|
|
||||||
+
|
|
||||||
+ for (i = 0; i < ACPI_EC_CLEAR_MAX; i++) {
|
|
||||||
+ status = acpi_ec_query_unlocked(ec, &value);
|
|
||||||
+ if (status || !value)
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (unlikely(i == ACPI_EC_CLEAR_MAX))
|
|
||||||
+ pr_warn("Warning: Maximum of %d stale EC events cleared\n", i);
|
|
||||||
+ else
|
|
||||||
+ pr_info("%d stale EC events cleared\n", i);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void acpi_ec_block_transactions(void)
|
|
||||||
{
|
|
||||||
struct acpi_ec *ec = first_ec;
|
|
||||||
@@ -463,6 +489,10 @@ void acpi_ec_unblock_transactions(void)
|
|
||||||
mutex_lock(&ec->mutex);
|
|
||||||
/* Allow transactions to be carried out again */
|
|
||||||
clear_bit(EC_FLAGS_BLOCKED, &ec->flags);
|
|
||||||
+
|
|
||||||
+ if (EC_FLAGS_CLEAR_ON_RESUME)
|
|
||||||
+ acpi_ec_clear(ec);
|
|
||||||
+
|
|
||||||
mutex_unlock(&ec->mutex);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -821,6 +851,13 @@ static int acpi_ec_add(struct acpi_device *device)
|
|
||||||
|
|
||||||
/* EC is fully operational, allow queries */
|
|
||||||
clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags);
|
|
||||||
+
|
|
||||||
+ /* Clear stale _Q events if hardware might require that */
|
|
||||||
+ if (EC_FLAGS_CLEAR_ON_RESUME) {
|
|
||||||
+ mutex_lock(&ec->mutex);
|
|
||||||
+ acpi_ec_clear(ec);
|
|
||||||
+ mutex_unlock(&ec->mutex);
|
|
||||||
+ }
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -922,6 +959,30 @@ static int ec_enlarge_storm_threshold(const struct dmi_system_id *id)
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
+/*
|
|
||||||
+ * On some hardware it is necessary to clear events accumulated by the EC during
|
|
||||||
+ * sleep. These ECs stop reporting GPEs until they are manually polled, if too
|
|
||||||
+ * many events are accumulated. (e.g. Samsung Series 5/9 notebooks)
|
|
||||||
+ *
|
|
||||||
+ * https://bugzilla.kernel.org/show_bug.cgi?id=44161
|
|
||||||
+ *
|
|
||||||
+ * Ideally, the EC should also be instructed NOT to accumulate events during
|
|
||||||
+ * sleep (which Windows seems to do somehow), but the interface to control this
|
|
||||||
+ * behaviour is not known at this time.
|
|
||||||
+ *
|
|
||||||
+ * Models known to be affected are Samsung 530Uxx/535Uxx/540Uxx/550Pxx/900Xxx,
|
|
||||||
+ * however it is very likely that other Samsung models are affected.
|
|
||||||
+ *
|
|
||||||
+ * On systems which don't accumulate _Q events during sleep, this extra check
|
|
||||||
+ * should be harmless.
|
|
||||||
+ */
|
|
||||||
+static int ec_clear_on_resume(const struct dmi_system_id *id)
|
|
||||||
+{
|
|
||||||
+ pr_debug("Detected system needing EC poll on resume.\n");
|
|
||||||
+ EC_FLAGS_CLEAR_ON_RESUME = 1;
|
|
||||||
+ return 0;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
static struct dmi_system_id ec_dmi_table[] __initdata = {
|
|
||||||
{
|
|
||||||
ec_skip_dsdt_scan, "Compal JFL92", {
|
|
||||||
@@ -965,6 +1026,9 @@ static struct dmi_system_id ec_dmi_table[] __initdata = {
|
|
||||||
ec_validate_ecdt, "ASUS hardware", {
|
|
||||||
DMI_MATCH(DMI_SYS_VENDOR, "ASUSTek Computer Inc."),
|
|
||||||
DMI_MATCH(DMI_PRODUCT_NAME, "L4R"),}, NULL},
|
|
||||||
+ {
|
|
||||||
+ ec_clear_on_resume, "Samsung hardware", {
|
|
||||||
+ DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD.")}, NULL},
|
|
||||||
{},
|
|
||||||
};
|
|
||||||
|
|
||||||
--
|
|
||||||
cgit v0.9.2
|
|
@ -1,50 +0,0 @@
|
|||||||
From 1b4b61e873240faea96995cd87cfbe7bc51a2b39 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sarah Sharp <sarah.a.sharp@linux.intel.com>
|
|
||||||
Date: Tue, 04 Mar 2014 22:23:47 +0000
|
|
||||||
Subject: Revert "USBNET: ax88179_178a: enable tso if usb host supports sg dma"
|
|
||||||
|
|
||||||
This reverts commit 3804fad45411b48233b48003e33a78f290d227c8.
|
|
||||||
|
|
||||||
The xHCI driver does not implement TD fragment rules yet, so we can't
|
|
||||||
properly support arbitrary-length scatter gather. USB storage seems
|
|
||||||
immune to these issues, and only the ASIX host seems to hit them, so
|
|
||||||
disable scatter gather.
|
|
||||||
|
|
||||||
Note that we can't simply work around this by clearing the
|
|
||||||
no_sg_constraint flag for 1.0 xHCI hosts that need TD fragments (and
|
|
||||||
thus would cause the ASIX chipsets to drop packets). We tried that with
|
|
||||||
commit 247bf557273d "xhci 1.0: Limit arbitrarily-aligned scatter
|
|
||||||
gather." We found that commit breaks USB 3.0 mass storage devices. It
|
|
||||||
needs to get reverted, and this commit needs to get reverted before it
|
|
||||||
to avoid dropped packets with the ASIX ethernet adapters.
|
|
||||||
|
|
||||||
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
|
|
||||||
Cc: stable@vger.kernel.org # 3.12
|
|
||||||
---
|
|
||||||
diff --git a/drivers/net/usb/ax88179_178a.c b/drivers/net/usb/ax88179_178a.c
|
|
||||||
index 955df81..42085e6 100644
|
|
||||||
--- a/drivers/net/usb/ax88179_178a.c
|
|
||||||
+++ b/drivers/net/usb/ax88179_178a.c
|
|
||||||
@@ -1029,20 +1029,12 @@ static int ax88179_bind(struct usbnet *dev, struct usb_interface *intf)
|
|
||||||
dev->mii.phy_id = 0x03;
|
|
||||||
dev->mii.supports_gmii = 1;
|
|
||||||
|
|
||||||
- if (usb_device_no_sg_constraint(dev->udev))
|
|
||||||
- dev->can_dma_sg = 1;
|
|
||||||
-
|
|
||||||
dev->net->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
|
|
||||||
NETIF_F_RXCSUM;
|
|
||||||
|
|
||||||
dev->net->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
|
|
||||||
NETIF_F_RXCSUM;
|
|
||||||
|
|
||||||
- if (dev->can_dma_sg) {
|
|
||||||
- dev->net->features |= NETIF_F_SG | NETIF_F_TSO;
|
|
||||||
- dev->net->hw_features |= NETIF_F_SG | NETIF_F_TSO;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
/* Enable checksum offload */
|
|
||||||
*tmp = AX_RXCOE_IP | AX_RXCOE_TCP | AX_RXCOE_UDP |
|
|
||||||
AX_RXCOE_TCPV6 | AX_RXCOE_UDPV6;
|
|
||||||
--
|
|
||||||
cgit v0.9.2
|
|
@ -1,86 +0,0 @@
|
|||||||
From 7efb6dbd0d825899955fd4035504823bb5c1124c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sarah Sharp <sarah.a.sharp@linux.intel.com>
|
|
||||||
Date: Tue, 04 Mar 2014 22:28:16 +0000
|
|
||||||
Subject: Revert "xhci 1.0: Limit arbitrarily-aligned scatter gather."
|
|
||||||
|
|
||||||
This reverts commit 247bf557273dd775505fb9240d2d152f4f20d304, since it
|
|
||||||
causes USB 3.0 mass storage devices to fail on xHCI 1.0 hosts.
|
|
||||||
|
|
||||||
The block layer may submit scatter-gather lists with entries that
|
|
||||||
are multiples of 512-byte blocks. That's fine for USB 2.0 devices,
|
|
||||||
where the bulk endpoint max packet size is 512 bytes. But USB 3.0
|
|
||||||
devices have bulk endpoints with a 1024 byte max packet size.
|
|
||||||
|
|
||||||
That means when the block layer submits a scatter-gather list with one
|
|
||||||
entry that includes, say, three 512-byte blocks, this code will reject
|
|
||||||
the URB if it's submitted to a USB 3.0 bulk endpoint:
|
|
||||||
|
|
||||||
int usb_submit_urb(struct urb *urb, gfp_t mem_flags)
|
|
||||||
{
|
|
||||||
...
|
|
||||||
max = usb_endpoint_maxp(&ep->desc);
|
|
||||||
...
|
|
||||||
} else if (urb->num_sgs && !urb->dev->bus->no_sg_constraint &&
|
|
||||||
dev->speed != USB_SPEED_WIRELESS) {
|
|
||||||
struct scatterlist *sg;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
for_each_sg(urb->sg, sg, urb->num_sgs - 1, i)
|
|
||||||
if (sg->length % max)
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
This results in failures with USB 3.0 drives. For me, a failure to
|
|
||||||
auto-mount the device. For others, a read or write SCSI command
|
|
||||||
failure.
|
|
||||||
|
|
||||||
This commit was put in place so that we could get scatter-gather support
|
|
||||||
for the ASIX USB ethernet adapter on non-1.0 hosts. It was a quick fix
|
|
||||||
until we implemented TD fragments properly in the driver. Since it
|
|
||||||
breaks USB 3.0 mass storage, we need to revert it, and revert
|
|
||||||
scatter-gather support for the ASIX devices.
|
|
||||||
|
|
||||||
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
|
|
||||||
Cc: stable@vger.kernel.org # 3.12
|
|
||||||
---
|
|
||||||
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
|
|
||||||
index 652be21..8fe4e12 100644
|
|
||||||
--- a/drivers/usb/host/xhci.c
|
|
||||||
+++ b/drivers/usb/host/xhci.c
|
|
||||||
@@ -4762,6 +4762,9 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
|
|
||||||
/* Accept arbitrarily long scatter-gather lists */
|
|
||||||
hcd->self.sg_tablesize = ~0;
|
|
||||||
|
|
||||||
+ /* support to build packet from discontinuous buffers */
|
|
||||||
+ hcd->self.no_sg_constraint = 1;
|
|
||||||
+
|
|
||||||
/* XHCI controllers don't stop the ep queue on short packets :| */
|
|
||||||
hcd->self.no_stop_on_short = 1;
|
|
||||||
|
|
||||||
@@ -4786,14 +4789,6 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
|
|
||||||
/* xHCI private pointer was set in xhci_pci_probe for the second
|
|
||||||
* registered roothub.
|
|
||||||
*/
|
|
||||||
- xhci = hcd_to_xhci(hcd);
|
|
||||||
- /*
|
|
||||||
- * Support arbitrarily aligned sg-list entries on hosts without
|
|
||||||
- * TD fragment rules (which are currently unsupported).
|
|
||||||
- */
|
|
||||||
- if (xhci->hci_version < 0x100)
|
|
||||||
- hcd->self.no_sg_constraint = 1;
|
|
||||||
-
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -4822,9 +4817,6 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
|
|
||||||
if (xhci->hci_version > 0x96)
|
|
||||||
xhci->quirks |= XHCI_SPURIOUS_SUCCESS;
|
|
||||||
|
|
||||||
- if (xhci->hci_version < 0x100)
|
|
||||||
- hcd->self.no_sg_constraint = 1;
|
|
||||||
-
|
|
||||||
/* Make sure the HC is halted. */
|
|
||||||
retval = xhci_halt(xhci);
|
|
||||||
if (retval)
|
|
||||||
--
|
|
||||||
cgit v0.9.2
|
|
@ -1661,13 +1661,13 @@ CONFIG_B43_SDIO=y
|
|||||||
CONFIG_B43_BCMA=y
|
CONFIG_B43_BCMA=y
|
||||||
# CONFIG_B43_BCMA_EXTRA is not set
|
# CONFIG_B43_BCMA_EXTRA is not set
|
||||||
CONFIG_B43_BCMA_PIO=y
|
CONFIG_B43_BCMA_PIO=y
|
||||||
CONFIG_B43_DEBUG=y
|
# CONFIG_B43_DEBUG is not set
|
||||||
CONFIG_B43_PHY_LP=y
|
CONFIG_B43_PHY_LP=y
|
||||||
CONFIG_B43_PHY_N=y
|
CONFIG_B43_PHY_N=y
|
||||||
CONFIG_B43_PHY_HT=y
|
CONFIG_B43_PHY_HT=y
|
||||||
# CONFIG_B43_FORCE_PIO is not set
|
# CONFIG_B43_FORCE_PIO is not set
|
||||||
CONFIG_B43LEGACY=m
|
CONFIG_B43LEGACY=m
|
||||||
CONFIG_B43LEGACY_DEBUG=y
|
# CONFIG_B43LEGACY_DEBUG is not set
|
||||||
CONFIG_B43LEGACY_DMA=y
|
CONFIG_B43LEGACY_DMA=y
|
||||||
CONFIG_B43LEGACY_PIO=y
|
CONFIG_B43LEGACY_PIO=y
|
||||||
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
|
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
|
||||||
@ -3502,7 +3502,7 @@ CONFIG_USB_STORAGE_REALTEK=m
|
|||||||
CONFIG_REALTEK_AUTOPM=y
|
CONFIG_REALTEK_AUTOPM=y
|
||||||
CONFIG_USB_STORAGE_ENE_UB6250=m
|
CONFIG_USB_STORAGE_ENE_UB6250=m
|
||||||
# CONFIG_USB_LIBUSUAL is not set
|
# CONFIG_USB_LIBUSUAL is not set
|
||||||
CONFIG_USB_UAS=m
|
# CONFIG_USB_UAS is not set
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -4570,7 +4570,7 @@ CONFIG_PM_DEBUG=y
|
|||||||
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
|
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
|
||||||
CONFIG_PM_TRACE=y
|
CONFIG_PM_TRACE=y
|
||||||
CONFIG_PM_TRACE_RTC=y
|
CONFIG_PM_TRACE_RTC=y
|
||||||
CONFIG_PM_TEST_SUSPEND=y
|
# CONFIG_PM_TEST_SUSPEND is not set
|
||||||
CONFIG_PM_RUNTIME=y
|
CONFIG_PM_RUNTIME=y
|
||||||
# CONFIG_PM_OPP is not set
|
# CONFIG_PM_OPP is not set
|
||||||
# CONFIG_PM_AUTOSLEEP is not set
|
# CONFIG_PM_AUTOSLEEP is not set
|
||||||
|
112
config-nodebug
112
config-nodebug
@ -2,98 +2,98 @@ CONFIG_SND_VERBOSE_PRINTK=y
|
|||||||
CONFIG_SND_DEBUG=y
|
CONFIG_SND_DEBUG=y
|
||||||
CONFIG_SND_PCM_XRUN_DEBUG=y
|
CONFIG_SND_PCM_XRUN_DEBUG=y
|
||||||
|
|
||||||
CONFIG_DEBUG_ATOMIC_SLEEP=y
|
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_MUTEXES=y
|
# CONFIG_DEBUG_MUTEXES is not set
|
||||||
CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y
|
# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
|
||||||
CONFIG_DEBUG_RT_MUTEXES=y
|
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||||
CONFIG_DEBUG_LOCK_ALLOC=y
|
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||||
CONFIG_PROVE_LOCKING=y
|
# CONFIG_PROVE_LOCKING is not set
|
||||||
CONFIG_DEBUG_SPINLOCK=y
|
# CONFIG_DEBUG_SPINLOCK is not set
|
||||||
CONFIG_PROVE_RCU=y
|
# CONFIG_PROVE_RCU is not set
|
||||||
# CONFIG_PROVE_RCU_REPEATEDLY is not set
|
# CONFIG_PROVE_RCU_REPEATEDLY is not set
|
||||||
CONFIG_DEBUG_PER_CPU_MAPS=y
|
# CONFIG_DEBUG_PER_CPU_MAPS is not set
|
||||||
CONFIG_CPUMASK_OFFSTACK=y
|
CONFIG_CPUMASK_OFFSTACK=y
|
||||||
|
|
||||||
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
|
# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set
|
||||||
|
|
||||||
CONFIG_FAULT_INJECTION=y
|
# CONFIG_FAULT_INJECTION is not set
|
||||||
CONFIG_FAILSLAB=y
|
# CONFIG_FAILSLAB is not set
|
||||||
CONFIG_FAIL_PAGE_ALLOC=y
|
# CONFIG_FAIL_PAGE_ALLOC is not set
|
||||||
CONFIG_FAIL_MAKE_REQUEST=y
|
# CONFIG_FAIL_MAKE_REQUEST is not set
|
||||||
CONFIG_FAULT_INJECTION_DEBUG_FS=y
|
# CONFIG_FAULT_INJECTION_DEBUG_FS is not set
|
||||||
CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y
|
# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set
|
||||||
CONFIG_FAIL_IO_TIMEOUT=y
|
# CONFIG_FAIL_IO_TIMEOUT is not set
|
||||||
CONFIG_FAIL_MMC_REQUEST=y
|
# CONFIG_FAIL_MMC_REQUEST is not set
|
||||||
|
|
||||||
CONFIG_LOCK_STAT=y
|
# CONFIG_LOCK_STAT is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_STACK_USAGE=y
|
# CONFIG_DEBUG_STACK_USAGE is not set
|
||||||
|
|
||||||
CONFIG_ACPI_DEBUG=y
|
# CONFIG_ACPI_DEBUG is not set
|
||||||
# CONFIG_ACPI_DEBUG_FUNC_TRACE is not set
|
# CONFIG_ACPI_DEBUG_FUNC_TRACE is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_SG=y
|
# CONFIG_DEBUG_SG is not set
|
||||||
|
|
||||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_WRITECOUNT=y
|
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||||
CONFIG_DEBUG_OBJECTS=y
|
# CONFIG_DEBUG_OBJECTS is not set
|
||||||
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
||||||
CONFIG_DEBUG_OBJECTS_FREE=y
|
# CONFIG_DEBUG_OBJECTS_FREE is not set
|
||||||
CONFIG_DEBUG_OBJECTS_TIMERS=y
|
# CONFIG_DEBUG_OBJECTS_TIMERS is not set
|
||||||
CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
|
# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set
|
||||||
CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
|
CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
|
||||||
|
|
||||||
CONFIG_X86_PTDUMP=y
|
# CONFIG_X86_PTDUMP is not set
|
||||||
|
|
||||||
CONFIG_CAN_DEBUG_DEVICES=y
|
# CONFIG_CAN_DEBUG_DEVICES is not set
|
||||||
|
|
||||||
CONFIG_MODULE_FORCE_UNLOAD=y
|
# CONFIG_MODULE_FORCE_UNLOAD is not set
|
||||||
|
|
||||||
CONFIG_SYSCTL_SYSCALL_CHECK=y
|
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_NOTIFIERS=y
|
# CONFIG_DEBUG_NOTIFIERS is not set
|
||||||
|
|
||||||
CONFIG_DMA_API_DEBUG=y
|
# CONFIG_DMA_API_DEBUG is not set
|
||||||
|
|
||||||
CONFIG_MMIOTRACE=y
|
# CONFIG_MMIOTRACE is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_CREDENTIALS=y
|
# CONFIG_DEBUG_CREDENTIALS is not set
|
||||||
|
|
||||||
# off in both production debug and nodebug builds,
|
# off in both production debug and nodebug builds,
|
||||||
# on in rawhide nodebug builds
|
# on in rawhide nodebug builds
|
||||||
CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y
|
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||||
|
|
||||||
CONFIG_EXT4_DEBUG=y
|
# CONFIG_EXT4_DEBUG is not set
|
||||||
|
|
||||||
# CONFIG_XFS_WARN is not set
|
# CONFIG_XFS_WARN is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_PERF_USE_VMALLOC=y
|
# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
|
||||||
|
|
||||||
CONFIG_JBD2_DEBUG=y
|
# CONFIG_JBD2_DEBUG is not set
|
||||||
|
|
||||||
CONFIG_NFSD_FAULT_INJECTION=y
|
# CONFIG_NFSD_FAULT_INJECTION is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_BLK_CGROUP=y
|
# CONFIG_DEBUG_BLK_CGROUP is not set
|
||||||
|
|
||||||
CONFIG_DRBD_FAULT_INJECTION=y
|
# CONFIG_DRBD_FAULT_INJECTION is not set
|
||||||
|
|
||||||
CONFIG_ATH_DEBUG=y
|
# CONFIG_ATH_DEBUG is not set
|
||||||
CONFIG_CARL9170_DEBUGFS=y
|
# CONFIG_CARL9170_DEBUGFS is not set
|
||||||
CONFIG_IWLWIFI_DEVICE_TRACING=y
|
# CONFIG_IWLWIFI_DEVICE_TRACING is not set
|
||||||
|
|
||||||
# CONFIG_RTLWIFI_DEBUG is not set
|
# CONFIG_RTLWIFI_DEBUG is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_OBJECTS_WORK=y
|
# CONFIG_DEBUG_OBJECTS_WORK is not set
|
||||||
|
|
||||||
CONFIG_DMADEVICES_DEBUG=y
|
# CONFIG_DMADEVICES_DEBUG is not set
|
||||||
CONFIG_DMADEVICES_VDEBUG=y
|
# CONFIG_DMADEVICES_VDEBUG is not set
|
||||||
|
|
||||||
CONFIG_PM_ADVANCED_DEBUG=y
|
CONFIG_PM_ADVANCED_DEBUG=y
|
||||||
|
|
||||||
CONFIG_CEPH_LIB_PRETTYDEBUG=y
|
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
|
||||||
CONFIG_QUOTA_DEBUG=y
|
# CONFIG_QUOTA_DEBUG is not set
|
||||||
|
|
||||||
CONFIG_PCI_DEFAULT_USE_CRS=y
|
CONFIG_PCI_DEFAULT_USE_CRS=y
|
||||||
|
|
||||||
@ -101,18 +101,18 @@ CONFIG_KGDB_KDB=y
|
|||||||
CONFIG_KDB_KEYBOARD=y
|
CONFIG_KDB_KEYBOARD=y
|
||||||
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
||||||
|
|
||||||
CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
|
# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set
|
||||||
# CONFIG_PERCPU_TEST is not set
|
# CONFIG_PERCPU_TEST is not set
|
||||||
CONFIG_TEST_LIST_SORT=y
|
# CONFIG_TEST_LIST_SORT is not set
|
||||||
# CONFIG_TEST_STRING_HELPERS is not set
|
# CONFIG_TEST_STRING_HELPERS is not set
|
||||||
|
|
||||||
CONFIG_DETECT_HUNG_TASK=y
|
# CONFIG_DETECT_HUNG_TASK is not set
|
||||||
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
|
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
|
||||||
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
|
||||||
|
|
||||||
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
|
# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
|
||||||
|
|
||||||
CONFIG_DEBUG_KMEMLEAK=y
|
# CONFIG_DEBUG_KMEMLEAK is not set
|
||||||
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024
|
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024
|
||||||
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
|
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
|
||||||
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
||||||
@ -123,7 +123,7 @@ CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
|||||||
|
|
||||||
# CONFIG_SPI_DEBUG is not set
|
# CONFIG_SPI_DEBUG is not set
|
||||||
|
|
||||||
CONFIG_X86_DEBUG_STATIC_CPU_HAS=y
|
# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set
|
||||||
|
|
||||||
# CONFIG_SCHEDSTATS is not set
|
# CONFIG_SCHEDSTATS is not set
|
||||||
# CONFIG_LATENCYTOP is not set
|
# CONFIG_LATENCYTOP is not set
|
||||||
|
@ -334,7 +334,7 @@ CONFIG_SP5100_TCO=m
|
|||||||
|
|
||||||
# CONFIG_MEMTEST is not set
|
# CONFIG_MEMTEST is not set
|
||||||
# CONFIG_DEBUG_TLBFLUSH is not set
|
# CONFIG_DEBUG_TLBFLUSH is not set
|
||||||
CONFIG_MAXSMP=y
|
# CONFIG_MAXSMP is not set
|
||||||
|
|
||||||
|
|
||||||
CONFIG_HP_ILO=m
|
CONFIG_HP_ILO=m
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
Bugzilla: 993744
|
|
||||||
Upstream-status: ??
|
|
||||||
|
|
||||||
diff --git a/drivers/md/dm-cache-policy-mq.c b/drivers/md/dm-cache-policy-mq.c
|
|
||||||
index 416b7b7..9105771 100644
|
|
||||||
--- a/drivers/md/dm-cache-policy-mq.c
|
|
||||||
+++ b/drivers/md/dm-cache-policy-mq.c
|
|
||||||
@@ -866,7 +866,7 @@ static void mq_destroy(struct dm_cache_policy *p)
|
|
||||||
{
|
|
||||||
struct mq_policy *mq = to_mq_policy(p);
|
|
||||||
|
|
||||||
- kfree(mq->table);
|
|
||||||
+ vfree(mq->table);
|
|
||||||
epool_exit(&mq->cache_pool);
|
|
||||||
epool_exit(&mq->pre_cache_pool);
|
|
||||||
kfree(mq);
|
|
||||||
@@ -1221,7 +1221,7 @@ static struct dm_cache_policy *mq_create(dm_cblock_t cache_size,
|
|
||||||
|
|
||||||
mq->nr_buckets = next_power(from_cblock(cache_size) / 2, 16);
|
|
||||||
mq->hash_bits = ffs(mq->nr_buckets) - 1;
|
|
||||||
- mq->table = kzalloc(sizeof(*mq->table) * mq->nr_buckets, GFP_KERNEL);
|
|
||||||
+ mq->table = vzalloc(sizeof(*mq->table) * mq->nr_buckets);
|
|
||||||
if (!mq->table)
|
|
||||||
goto bad_alloc_table;
|
|
||||||
|
|
36
kernel.spec
36
kernel.spec
@ -59,9 +59,9 @@ Summary: The Linux kernel
|
|||||||
# The next upstream release sublevel (base_sublevel+1)
|
# The next upstream release sublevel (base_sublevel+1)
|
||||||
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
||||||
# The rc snapshot level
|
# The rc snapshot level
|
||||||
%define rcrev 5
|
%define rcrev 6
|
||||||
# The git snapshot level
|
# The git snapshot level
|
||||||
%define gitrev 2
|
%define gitrev 0
|
||||||
# Set rpm version accordingly
|
# Set rpm version accordingly
|
||||||
%define rpmversion 3.%{upstream_sublevel}.0
|
%define rpmversion 3.%{upstream_sublevel}.0
|
||||||
%endif
|
%endif
|
||||||
@ -122,7 +122,7 @@ Summary: The Linux kernel
|
|||||||
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
|
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
|
||||||
# and 0 for rawhide (all kernels are debug kernels).
|
# and 0 for rawhide (all kernels are debug kernels).
|
||||||
# See also 'make debug' and 'make release'.
|
# See also 'make debug' and 'make release'.
|
||||||
%define debugbuildsenabled 0
|
%define debugbuildsenabled 1
|
||||||
|
|
||||||
# Want to build a vanilla kernel build without any non-upstream patches?
|
# Want to build a vanilla kernel build without any non-upstream patches?
|
||||||
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
|
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
|
||||||
@ -631,18 +631,12 @@ Patch22000: weird-root-dentry-name-debug.patch
|
|||||||
|
|
||||||
Patch25047: drm-radeon-Disable-writeback-by-default-on-ppc.patch
|
Patch25047: drm-radeon-Disable-writeback-by-default-on-ppc.patch
|
||||||
|
|
||||||
#rhbz 993744
|
|
||||||
Patch25128: dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
|
|
||||||
|
|
||||||
#CVE-2014-0069 rhbz 1064253 1062578
|
#CVE-2014-0069 rhbz 1064253 1062578
|
||||||
Patch25201: cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
Patch25201: cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
||||||
|
|
||||||
#rhbz 1068862
|
#rhbz 1068862
|
||||||
Patch25002: cifs-mask-off-top-byte-in-get_rfc1002_length.patch
|
Patch25002: cifs-mask-off-top-byte-in-get_rfc1002_length.patch
|
||||||
|
|
||||||
#CVE-2014-0102 rhbz 1071396
|
|
||||||
Patch25026: keyring-fix.patch
|
|
||||||
|
|
||||||
#rhbz 1071998
|
#rhbz 1071998
|
||||||
Patch25034: bug-1071998.patch
|
Patch25034: bug-1071998.patch
|
||||||
|
|
||||||
@ -652,13 +646,6 @@ Patch25035: Bluetooth-allocate-static-minor-for-vhci.patch
|
|||||||
#Fixes module loading on ppc64le
|
#Fixes module loading on ppc64le
|
||||||
Patch25036: ppc64le_module_fix.patch
|
Patch25036: ppc64le_module_fix.patch
|
||||||
|
|
||||||
#rhbz 1003602
|
|
||||||
Patch25037: ACPI-EC-Clear-stale-EC-events-on-Samsung-systems.patch
|
|
||||||
|
|
||||||
#rhbz 1073180
|
|
||||||
Patch25038: Revert-USBNET-ax88179_178a-enable-tso-if-usb-host-supports-sg-dma.patch
|
|
||||||
Patch25039: Revert-xhci-1.0-Limit-arbitrarily-aligned-scatter-gather.patch
|
|
||||||
|
|
||||||
# END OF PATCH DEFINITIONS
|
# END OF PATCH DEFINITIONS
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
@ -1297,18 +1284,12 @@ ApplyPatch ath9k_rx_dma_stop_check.patch
|
|||||||
|
|
||||||
ApplyPatch drm-radeon-Disable-writeback-by-default-on-ppc.patch
|
ApplyPatch drm-radeon-Disable-writeback-by-default-on-ppc.patch
|
||||||
|
|
||||||
#rhbz 993744
|
|
||||||
ApplyPatch dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
|
|
||||||
|
|
||||||
#CVE-2014-0069 rhbz 1064253 1062578
|
#CVE-2014-0069 rhbz 1064253 1062578
|
||||||
ApplyPatch cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
ApplyPatch cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
||||||
|
|
||||||
#rhbz 1068862
|
#rhbz 1068862
|
||||||
ApplyPatch cifs-mask-off-top-byte-in-get_rfc1002_length.patch
|
ApplyPatch cifs-mask-off-top-byte-in-get_rfc1002_length.patch
|
||||||
|
|
||||||
#CVE-2014-0102 rhbz 1071396
|
|
||||||
ApplyPatch keyring-fix.patch
|
|
||||||
|
|
||||||
#rhbz 1071998
|
#rhbz 1071998
|
||||||
ApplyPatch bug-1071998.patch
|
ApplyPatch bug-1071998.patch
|
||||||
|
|
||||||
@ -1318,13 +1299,6 @@ ApplyPatch Bluetooth-allocate-static-minor-for-vhci.patch
|
|||||||
# Fixes module loading on ppc64le
|
# Fixes module loading on ppc64le
|
||||||
ApplyPatch ppc64le_module_fix.patch
|
ApplyPatch ppc64le_module_fix.patch
|
||||||
|
|
||||||
#rhbz 1003602
|
|
||||||
ApplyPatch ACPI-EC-Clear-stale-EC-events-on-Samsung-systems.patch
|
|
||||||
|
|
||||||
#rhbz 1073180
|
|
||||||
ApplyPatch Revert-USBNET-ax88179_178a-enable-tso-if-usb-host-supports-sg-dma.patch
|
|
||||||
ApplyPatch Revert-xhci-1.0-Limit-arbitrarily-aligned-scatter-gather.patch
|
|
||||||
|
|
||||||
# END OF PATCH APPLICATIONS
|
# END OF PATCH APPLICATIONS
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
@ -2104,6 +2078,10 @@ fi
|
|||||||
# ||----w |
|
# ||----w |
|
||||||
# || ||
|
# || ||
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Mar 10 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.14.0-0.rc6.git0.1
|
||||||
|
- Linux v3.14-rc6
|
||||||
|
- Disable debugging options.
|
||||||
|
|
||||||
* Fri Mar 07 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
* Fri Mar 07 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||||
- Revert two xhci fixes that break USB mass storage (rhbz 1073180)
|
- Revert two xhci fixes that break USB mass storage (rhbz 1073180)
|
||||||
|
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
@@ -, +, @@
|
|
||||||
---
|
|
||||||
--- a/security/keys/keyring.c
|
|
||||||
+++ a/security/keys/keyring.c
|
|
||||||
@@ -1000,7 +1000,11 @@ static int keyring_detect_cycle_iterator(const void *object,
|
|
||||||
|
|
||||||
kenter("{%d}", key->serial);
|
|
||||||
|
|
||||||
- BUG_ON(key != ctx->match_data);
|
|
||||||
+ /* We might get a keyring with matching index-key that is nonetheless a
|
|
||||||
+ * different keyring. */
|
|
||||||
+ if (key != ctx->match_data)
|
|
||||||
+ return 0;
|
|
||||||
+
|
|
||||||
ctx->result = ERR_PTR(-EDEADLK);
|
|
||||||
return 1;
|
|
||||||
}
|
|
3
sources
3
sources
@ -1,4 +1,3 @@
|
|||||||
0ecbaf65c00374eb4a826c2f9f37606f linux-3.13.tar.xz
|
0ecbaf65c00374eb4a826c2f9f37606f linux-3.13.tar.xz
|
||||||
732d1952898b28d5ccc264cad77b0619 perf-man-3.13.tar.gz
|
732d1952898b28d5ccc264cad77b0619 perf-man-3.13.tar.gz
|
||||||
61a5fb480f0fddeafbaa50dd1e88985f patch-3.14-rc5.xz
|
cb06761a64fd9328add06577943e6b37 patch-3.14-rc6.xz
|
||||||
0ee4723fb89e4f73668a0e35927de9d5 patch-3.14-rc5-git2.xz
|
|
||||||
|
Loading…
Reference in New Issue
Block a user