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_EXTRA is not set
|
||||
CONFIG_B43_BCMA_PIO=y
|
||||
CONFIG_B43_DEBUG=y
|
||||
# CONFIG_B43_DEBUG is not set
|
||||
CONFIG_B43_PHY_LP=y
|
||||
CONFIG_B43_PHY_N=y
|
||||
CONFIG_B43_PHY_HT=y
|
||||
# CONFIG_B43_FORCE_PIO is not set
|
||||
CONFIG_B43LEGACY=m
|
||||
CONFIG_B43LEGACY_DEBUG=y
|
||||
# CONFIG_B43LEGACY_DEBUG is not set
|
||||
CONFIG_B43LEGACY_DMA=y
|
||||
CONFIG_B43LEGACY_PIO=y
|
||||
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
|
||||
@ -3502,7 +3502,7 @@ CONFIG_USB_STORAGE_REALTEK=m
|
||||
CONFIG_REALTEK_AUTOPM=y
|
||||
CONFIG_USB_STORAGE_ENE_UB6250=m
|
||||
# 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_PM_TRACE=y
|
||||
CONFIG_PM_TRACE_RTC=y
|
||||
CONFIG_PM_TEST_SUSPEND=y
|
||||
# CONFIG_PM_TEST_SUSPEND is not set
|
||||
CONFIG_PM_RUNTIME=y
|
||||
# CONFIG_PM_OPP 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_PCM_XRUN_DEBUG=y
|
||||
|
||||
CONFIG_DEBUG_ATOMIC_SLEEP=y
|
||||
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
|
||||
|
||||
CONFIG_DEBUG_MUTEXES=y
|
||||
CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y
|
||||
CONFIG_DEBUG_RT_MUTEXES=y
|
||||
CONFIG_DEBUG_LOCK_ALLOC=y
|
||||
CONFIG_PROVE_LOCKING=y
|
||||
CONFIG_DEBUG_SPINLOCK=y
|
||||
CONFIG_PROVE_RCU=y
|
||||
# CONFIG_DEBUG_MUTEXES is not set
|
||||
# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
|
||||
# CONFIG_DEBUG_RT_MUTEXES is not set
|
||||
# CONFIG_DEBUG_LOCK_ALLOC is not set
|
||||
# CONFIG_PROVE_LOCKING is not set
|
||||
# CONFIG_DEBUG_SPINLOCK is not set
|
||||
# CONFIG_PROVE_RCU 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_CPU_NOTIFIER_ERROR_INJECT=m
|
||||
# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set
|
||||
|
||||
CONFIG_FAULT_INJECTION=y
|
||||
CONFIG_FAILSLAB=y
|
||||
CONFIG_FAIL_PAGE_ALLOC=y
|
||||
CONFIG_FAIL_MAKE_REQUEST=y
|
||||
CONFIG_FAULT_INJECTION_DEBUG_FS=y
|
||||
CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y
|
||||
CONFIG_FAIL_IO_TIMEOUT=y
|
||||
CONFIG_FAIL_MMC_REQUEST=y
|
||||
# CONFIG_FAULT_INJECTION is not set
|
||||
# CONFIG_FAILSLAB is not set
|
||||
# CONFIG_FAIL_PAGE_ALLOC is not set
|
||||
# CONFIG_FAIL_MAKE_REQUEST is not set
|
||||
# CONFIG_FAULT_INJECTION_DEBUG_FS is not set
|
||||
# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set
|
||||
# CONFIG_FAIL_IO_TIMEOUT is not set
|
||||
# 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_DEBUG_SG=y
|
||||
# CONFIG_DEBUG_SG is not set
|
||||
|
||||
# CONFIG_DEBUG_PAGEALLOC is not set
|
||||
|
||||
CONFIG_DEBUG_WRITECOUNT=y
|
||||
CONFIG_DEBUG_OBJECTS=y
|
||||
# CONFIG_DEBUG_WRITECOUNT is not set
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
|
||||
CONFIG_DEBUG_OBJECTS_FREE=y
|
||||
CONFIG_DEBUG_OBJECTS_TIMERS=y
|
||||
CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
|
||||
# CONFIG_DEBUG_OBJECTS_FREE is not set
|
||||
# CONFIG_DEBUG_OBJECTS_TIMERS is not set
|
||||
# CONFIG_DEBUG_OBJECTS_RCU_HEAD is not set
|
||||
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,
|
||||
# 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_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_CARL9170_DEBUGFS=y
|
||||
CONFIG_IWLWIFI_DEVICE_TRACING=y
|
||||
# CONFIG_ATH_DEBUG is not set
|
||||
# CONFIG_CARL9170_DEBUGFS is not set
|
||||
# CONFIG_IWLWIFI_DEVICE_TRACING 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_VDEBUG=y
|
||||
# CONFIG_DMADEVICES_DEBUG is not set
|
||||
# CONFIG_DMADEVICES_VDEBUG is not set
|
||||
|
||||
CONFIG_PM_ADVANCED_DEBUG=y
|
||||
|
||||
CONFIG_CEPH_LIB_PRETTYDEBUG=y
|
||||
CONFIG_QUOTA_DEBUG=y
|
||||
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
|
||||
# CONFIG_QUOTA_DEBUG is not set
|
||||
|
||||
CONFIG_PCI_DEFAULT_USE_CRS=y
|
||||
|
||||
@ -101,18 +101,18 @@ CONFIG_KGDB_KDB=y
|
||||
CONFIG_KDB_KEYBOARD=y
|
||||
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_TEST_LIST_SORT=y
|
||||
# CONFIG_TEST_LIST_SORT 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_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_TEST is not set
|
||||
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
||||
@ -123,7 +123,7 @@ CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
|
||||
|
||||
# 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_LATENCYTOP is not set
|
||||
|
@ -334,7 +334,7 @@ CONFIG_SP5100_TCO=m
|
||||
|
||||
# CONFIG_MEMTEST is not set
|
||||
# CONFIG_DEBUG_TLBFLUSH is not set
|
||||
CONFIG_MAXSMP=y
|
||||
# CONFIG_MAXSMP is not set
|
||||
|
||||
|
||||
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)
|
||||
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
||||
# The rc snapshot level
|
||||
%define rcrev 5
|
||||
%define rcrev 6
|
||||
# The git snapshot level
|
||||
%define gitrev 2
|
||||
%define gitrev 0
|
||||
# Set rpm version accordingly
|
||||
%define rpmversion 3.%{upstream_sublevel}.0
|
||||
%endif
|
||||
@ -122,7 +122,7 @@ Summary: The Linux kernel
|
||||
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
|
||||
# and 0 for rawhide (all kernels are debug kernels).
|
||||
# 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?
|
||||
%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
|
||||
|
||||
#rhbz 993744
|
||||
Patch25128: dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
|
||||
|
||||
#CVE-2014-0069 rhbz 1064253 1062578
|
||||
Patch25201: cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
||||
|
||||
#rhbz 1068862
|
||||
Patch25002: cifs-mask-off-top-byte-in-get_rfc1002_length.patch
|
||||
|
||||
#CVE-2014-0102 rhbz 1071396
|
||||
Patch25026: keyring-fix.patch
|
||||
|
||||
#rhbz 1071998
|
||||
Patch25034: bug-1071998.patch
|
||||
|
||||
@ -652,13 +646,6 @@ Patch25035: Bluetooth-allocate-static-minor-for-vhci.patch
|
||||
#Fixes module loading on ppc64le
|
||||
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
|
||||
|
||||
%endif
|
||||
@ -1297,18 +1284,12 @@ ApplyPatch ath9k_rx_dma_stop_check.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
|
||||
ApplyPatch cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
||||
|
||||
#rhbz 1068862
|
||||
ApplyPatch cifs-mask-off-top-byte-in-get_rfc1002_length.patch
|
||||
|
||||
#CVE-2014-0102 rhbz 1071396
|
||||
ApplyPatch keyring-fix.patch
|
||||
|
||||
#rhbz 1071998
|
||||
ApplyPatch bug-1071998.patch
|
||||
|
||||
@ -1318,13 +1299,6 @@ ApplyPatch Bluetooth-allocate-static-minor-for-vhci.patch
|
||||
# Fixes module loading on ppc64le
|
||||
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
|
||||
|
||||
%endif
|
||||
@ -2104,6 +2078,10 @@ fi
|
||||
# ||----w |
|
||||
# || ||
|
||||
%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>
|
||||
- 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;
|
||||
}
|
Loading…
Reference in New Issue
Block a user