Linux v3.8-3040-ga0b1c42
This commit is contained in:
parent
3704ea2fb1
commit
0b030fad7e
File diff suppressed because it is too large
Load Diff
@ -1,30 +0,0 @@
|
||||
From 80524f083e2c3e70057f5bb476db92baa14cb22b Mon Sep 17 00:00:00 2001
|
||||
From: Kamal Mostafa <kamal@canonical.com>
|
||||
Date: Tue, 20 Nov 2012 23:04:35 -0800
|
||||
Subject: [PATCH] Input: increase struct ps2dev cmdbuf[] to 8 bytes
|
||||
|
||||
Cypress PS/2 Trackpad (drivers/input/mouse/cypress_ps2.c) needs
|
||||
this larger cmdbuf[] to handle 8-byte packet responses.
|
||||
|
||||
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
include/linux/libps2.h | 2 +-
|
||||
1 files changed, 1 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/include/linux/libps2.h b/include/linux/libps2.h
|
||||
index 79603a6..4ad06e8 100644
|
||||
--- a/include/linux/libps2.h
|
||||
+++ b/include/linux/libps2.h
|
||||
@@ -36,7 +36,7 @@ struct ps2dev {
|
||||
wait_queue_head_t wait;
|
||||
|
||||
unsigned long flags;
|
||||
- unsigned char cmdbuf[6];
|
||||
+ unsigned char cmdbuf[8];
|
||||
unsigned char cmdcnt;
|
||||
unsigned char nak;
|
||||
};
|
||||
--
|
||||
1.7.7.6
|
||||
|
2246
alps-v2.patch
2246
alps-v2.patch
File diff suppressed because it is too large
Load Diff
@ -1,37 +0,0 @@
|
||||
This fixes the following error when building for arm-imx:
|
||||
> ERROR: "__clk_get_name" [drivers/staging/imx-drm/ipu-v3/imx-ipu-v3.ko] undefined!
|
||||
> make[1]: *** [__modpost] Error 1
|
||||
> make: *** [modules] Error 2
|
||||
|
||||
There are valid usecases to get the name of a clock, be it for debugging
|
||||
purposes or to register a children of a clock like done in this IPU driver.
|
||||
Therefore exporting __clk_get_name() and make it available for others makes
|
||||
sense.
|
||||
|
||||
Reported-by: Peter Robinson <pbrobinson at gmail.com>
|
||||
CC: Sascha Hauer <s.hauer at pengutronix.de>
|
||||
CC: Mike Turquette <mturquette at linaro.org>
|
||||
Signed-off-by: Niels de Vos <ndevos at redhat.com>
|
||||
---
|
||||
drivers/clk/clk.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
|
||||
index 251e45d..fbe0f3a 100644
|
||||
--- a/drivers/clk/clk.c
|
||||
+++ b/drivers/clk/clk.c
|
||||
@@ -259,10 +259,11 @@ late_initcall(clk_disable_unused);
|
||||
|
||||
/*** helper functions ***/
|
||||
|
||||
-inline const char *__clk_get_name(struct clk *clk)
|
||||
+const char *__clk_get_name(struct clk *clk)
|
||||
{
|
||||
return !clk ? NULL : clk->name;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__clk_get_name);
|
||||
|
||||
inline struct clk_hw *__clk_get_hw(struct clk *clk)
|
||||
{
|
||||
--
|
||||
1.7.11.7
|
@ -111,6 +111,7 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
|
||||
CONFIG_GPIO_GENERIC_PLATFORM=m
|
||||
CONFIG_PINCTRL_SINGLE=m
|
||||
CONFIG_POWER_RESET_GPIO=y
|
||||
CONFIG_POWER_RESET_RESTART=y
|
||||
|
||||
CONFIG_USB_ULPI=y
|
||||
|
||||
@ -314,6 +315,7 @@ CONFIG_REGULATOR_ANATOP=m
|
||||
CONFIG_REGULATOR_FAN53555=m
|
||||
CONFIG_REGULATOR_ISL6271A=m
|
||||
CONFIG_REGULATOR_LP3972=m
|
||||
CONFIG_REGULATOR_LP8755=m
|
||||
CONFIG_REGULATOR_MAX1586=m
|
||||
CONFIG_REGULATOR_MAX8649=m
|
||||
CONFIG_REGULATOR_MAX8660=m
|
||||
@ -401,3 +403,4 @@ CONFIG_EXTCON_GPIO=m
|
||||
# CONFIG_CS89x0 is not set
|
||||
# CONFIG_DVB_USB_PCTV452E is not set
|
||||
# CONFIG_PINCTRL_EXYNOS is not set
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
|
@ -72,3 +72,4 @@ CONFIG_PINCTRL_KIRKWOOD=y
|
||||
|
||||
|
||||
CONFIG_FB_XGI=m
|
||||
CONFIG_POWER_RESET_QNAP=y
|
||||
|
@ -354,3 +354,5 @@ CONFIG_CRYPTO_DEV_OMAP_AES=m
|
||||
|
||||
# CONFIG_OMAP2_DSS_DEBUG is not set
|
||||
# CONFIG_OMAP2_DSS_DEBUGFS is not set
|
||||
# CONFIG_ARM_PSCI is not set
|
||||
# CONFIG_WILINK_PLATFORM_DATA is not set
|
||||
|
@ -107,3 +107,4 @@ CONFIG_OF_PCI=y
|
||||
CONFIG_OF_PCI_IRQ=y
|
||||
|
||||
# CONFIG_DRM_TEGRA_DEBUG is not set
|
||||
# CONFIG_ARM_PSCI is not set
|
||||
|
27
config-armv7
27
config-armv7
@ -425,6 +425,25 @@ CONFIG_PERF_EVENTS=y
|
||||
# CONFIG_MFD_MAX8907 is not set
|
||||
# CONFIG_REGULATOR_FAN53555 is not set
|
||||
# CONFIG_REGULATOR_ANATOP is not set
|
||||
# CONFIG_REGULATOR_DUMMY is not set
|
||||
# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
|
||||
# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
|
||||
# CONFIG_REGULATOR_GPIO is not set
|
||||
# CONFIG_REGULATOR_AD5398 is not set
|
||||
# CONFIG_REGULATOR_ISL6271A is not set
|
||||
# CONFIG_REGULATOR_MAX1586 is not set
|
||||
# CONFIG_REGULATOR_MAX8649 is not set
|
||||
# CONFIG_REGULATOR_MAX8660 is not set
|
||||
# CONFIG_REGULATOR_MAX8952 is not set
|
||||
# CONFIG_REGULATOR_MAX8973 is not set
|
||||
# CONFIG_REGULATOR_LP3971 is not set
|
||||
# CONFIG_REGULATOR_LP3972 is not set
|
||||
# CONFIG_REGULATOR_LP8755 is not set
|
||||
# CONFIG_REGULATOR_TPS51632 is not set
|
||||
# CONFIG_REGULATOR_TPS62360 is not set
|
||||
# CONFIG_REGULATOR_TPS65023 is not set
|
||||
# CONFIG_REGULATOR_TPS6507X is not set
|
||||
# CONFIG_REGULATOR_VEXPRESS is not set
|
||||
# CONFIG_IR_RX51 is not set
|
||||
# CONFIG_VIDEO_DM6446_CCDC is not set
|
||||
# CONFIG_PANEL_TAAL is not set
|
||||
@ -436,3 +455,11 @@ CONFIG_PERF_EVENTS=y
|
||||
# CONFIG_TOUCHSCREEN_EETI is not set
|
||||
# CONFIG_TOUCHSCREEN_EGALAX is not set
|
||||
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
# CONFIG_CHARGER_MANAGER is not set
|
||||
# CONFIG_POWER_RESET_QNAP is not set
|
||||
# CONFIG_POWER_RESET_RESTART is not set
|
||||
# CONFIG_ARM_PSCI is not set
|
||||
# CONFIG_ARM_HIGHBANK_CPUFREQ is not set
|
||||
# CONFIG_RFKILL_REGULATOR is not set
|
||||
|
||||
|
@ -437,6 +437,7 @@ CONFIG_SCSI_OSD_DPRINT_SENSE=1
|
||||
# CONFIG_SCSI_OSD_DEBUG is not set
|
||||
|
||||
CONFIG_SCSI_BNX2_ISCSI=m
|
||||
CONFIG_SCSI_BNX2X_FCOE=m
|
||||
CONFIG_BE2ISCSI=m
|
||||
CONFIG_SCSI_PMCRAID=m
|
||||
|
||||
@ -761,6 +762,7 @@ CONFIG_NET_9P_RDMA=m
|
||||
# CONFIG_DECNET is not set
|
||||
CONFIG_BRIDGE=m
|
||||
CONFIG_BRIDGE_IGMP_SNOOPING=y
|
||||
CONFIG_BRIDGE_VLAN_FILTERING=y
|
||||
|
||||
# PHY timestamping adds overhead
|
||||
CONFIG_NETWORK_PHY_TIMESTAMPING=y
|
||||
@ -803,10 +805,12 @@ CONFIG_NETFILTER_XT_TARGET_TEE=m
|
||||
CONFIG_NETFILTER_XT_TARGET_TPROXY=m
|
||||
|
||||
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
|
||||
CONFIG_NETFILTER_XT_MATCH_BPF=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
|
||||
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CPU=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
|
||||
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
|
||||
@ -996,6 +1000,7 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
|
||||
CONFIG_ATM=m
|
||||
CONFIG_VLAN_8021Q=m
|
||||
CONFIG_VLAN_8021Q_GVRP=y
|
||||
CONFIG_VLAN_8021Q_MVRP=y
|
||||
CONFIG_LLC=m
|
||||
# CONFIG_LLC2 is not set
|
||||
CONFIG_IPX=m
|
||||
@ -1093,6 +1098,7 @@ CONFIG_BATMAN_ADV_BLA=y
|
||||
CONFIG_BATMAN_ADV_DAT=y
|
||||
# CONFIG_BATMAN_ADV_DEBUG is not set
|
||||
CONFIG_OPENVSWITCH=m
|
||||
CONFIG_VSOCKETS=m
|
||||
CONFIG_NETPRIO_CGROUP=m
|
||||
|
||||
|
||||
@ -1260,6 +1266,7 @@ CONFIG_E100=m
|
||||
CONFIG_E1000=m
|
||||
CONFIG_E1000E=m
|
||||
CONFIG_IGB=m
|
||||
CONFIG_IGB_HWMON=y
|
||||
CONFIG_IGB_DCA=y
|
||||
CONFIG_IGB_PTP=y
|
||||
CONFIG_IGBVF=m
|
||||
@ -1412,6 +1419,8 @@ CONFIG_NET_PCI=y
|
||||
CONFIG_B44=m
|
||||
CONFIG_B44_PCI=y
|
||||
CONFIG_BNX2=m
|
||||
CONFIG_BNX2X=m
|
||||
CONFIG_BNX2X_SRIOV=y
|
||||
CONFIG_CNIC=m
|
||||
CONFIG_FEALNX=m
|
||||
CONFIG_NET_POCKET=y
|
||||
@ -1579,6 +1588,8 @@ CONFIG_LIBERTAS_SDIO=m
|
||||
# CONFIG_LIBERTAS_THINFIRM is not set
|
||||
CONFIG_LIBERTAS_MESH=y
|
||||
CONFIG_IWLWIFI=m
|
||||
CONFIG_IWLDVM=m
|
||||
CONFIG_IWLMVM=m
|
||||
CONFIG_IWLWIFI_DEBUG=y
|
||||
CONFIG_IWLWIFI_DEBUGFS=y
|
||||
CONFIG_IWLWIFI_DEVICE_SVTOOL=y
|
||||
@ -1620,7 +1631,6 @@ CONFIG_RT2800PCI_RT53XX=y
|
||||
CONFIG_RT73USB=m
|
||||
CONFIG_RTL8180=m
|
||||
CONFIG_RTL8187=m
|
||||
# CONFIG_RTLWIFI_DEBUG is not set
|
||||
# CONFIG_USB_ZD1201 is not set
|
||||
CONFIG_USB_NET_RNDIS_WLAN=m
|
||||
CONFIG_USB_NET_KALMIA=m
|
||||
@ -1641,6 +1651,8 @@ CONFIG_WL1251=m
|
||||
CONFIG_WL1251_SPI=m
|
||||
CONFIG_WL1251_SDIO=m
|
||||
|
||||
CONFIG_RTLWIFI=m
|
||||
# CONFIG_RTLWIFI_DEBUG is not set
|
||||
CONFIG_RTL8192CE=m
|
||||
CONFIG_RTL8192SE=m
|
||||
CONFIG_RTL8192CU=m
|
||||
@ -1701,9 +1713,11 @@ CONFIG_NFC_LLCP=y
|
||||
#
|
||||
# Near Field Communication (NFC) devices
|
||||
#
|
||||
CONFIG_PN544_NFC=m
|
||||
CONFIG_PN544_HCI_NFC=m
|
||||
CONFIG_NFC_PN544=m
|
||||
CONFIG_NFC_PN544_I2C=m
|
||||
CONFIG_NFC_PN533=m
|
||||
CONFIG_NFC_MICROREAD=m
|
||||
CONFIG_NFC_MICROREAD_I2C=m
|
||||
|
||||
#
|
||||
# IrDA (infrared) support
|
||||
@ -1998,6 +2012,7 @@ CONFIG_MOUSE_APPLETOUCH=m
|
||||
CONFIG_MOUSE_BCM5974=m
|
||||
CONFIG_MOUSE_SYNAPTICS_I2C=m
|
||||
CONFIG_MOUSE_SYNAPTICS_USB=m
|
||||
CONFIG_MOUSE_CYAPA=m
|
||||
CONFIG_INPUT_JOYSTICK=y
|
||||
CONFIG_JOYSTICK_ANALOG=m
|
||||
CONFIG_JOYSTICK_A3D=m
|
||||
@ -2285,6 +2300,7 @@ CONFIG_SENSORS_LM93=m
|
||||
CONFIG_SENSORS_LTC4245=m
|
||||
CONFIG_SENSORS_MAX1619=m
|
||||
CONFIG_SENSORS_MAX6650=m
|
||||
CONFIG_SENSORS_MAX6697=m
|
||||
CONFIG_SENSORS_MCP3021=m
|
||||
CONFIG_SENSORS_NTC_THERMISTOR=m
|
||||
CONFIG_SENSORS_PC87360=m
|
||||
@ -2325,6 +2341,7 @@ CONFIG_SENSORS_WM831X=m
|
||||
CONFIG_SENSORS_LM73=m
|
||||
CONFIG_SENSORS_AMC6821=m
|
||||
CONFIG_SENSORS_INA2XX=m
|
||||
CONFIG_SENSORS_INA209=m
|
||||
CONFIG_SENSORS_ADT7411=m
|
||||
CONFIG_SENSORS_ASC7621=m
|
||||
CONFIG_SENSORS_EMC1403=m
|
||||
@ -4305,6 +4322,7 @@ CONFIG_APM_POWER=m
|
||||
# CONFIG_BATTERY_BQ27x00 is not set
|
||||
# CONFIG_BATTERY_MAX17040 is not set
|
||||
# CONFIG_BATTERY_MAX17042 is not set
|
||||
# CONFIG_BATTERY_GOLDFISH is not set
|
||||
|
||||
# CONFIG_CHARGER_ISP1704 is not set
|
||||
# CONFIG_CHARGER_MAX8903 is not set
|
||||
@ -4350,9 +4368,6 @@ CONFIG_LIRC_TTUSBIR=m
|
||||
|
||||
# CONFIG_DEVKMEM is not set
|
||||
|
||||
CONFIG_BNX2X=m
|
||||
CONFIG_SCSI_BNX2X_FCOE=m
|
||||
|
||||
CONFIG_NOZOMI=m
|
||||
# CONFIG_TPS65010 is not set
|
||||
|
||||
@ -4641,6 +4656,8 @@ CONFIG_BCMA_DRIVER_GPIO=y
|
||||
# CONFIG_INTEL_MID_PTI is not set
|
||||
CONFIG_IOMMU_SUPPORT=y
|
||||
|
||||
# CONFIG_MAILBOX is not set
|
||||
|
||||
# CONFIG_HSI is not set
|
||||
|
||||
# CONFIG_PM_DEVFREQ is not set
|
||||
|
@ -67,7 +67,7 @@ CONFIG_ACPI_AC=y
|
||||
# CONFIG_ACPI_ASUS is not set
|
||||
CONFIG_ACPI_BATTERY=y
|
||||
CONFIG_ACPI_BUTTON=y
|
||||
CONFIG_ACPI_CONTAINER=m
|
||||
CONFIG_ACPI_CONTAINER=y
|
||||
CONFIG_ACPI_DOCK=y
|
||||
CONFIG_ACPI_FAN=y
|
||||
CONFIG_ACPI_NUMA=y
|
||||
@ -94,6 +94,7 @@ CONFIG_ACPI_IPMI=m
|
||||
CONFIG_ACPI_CUSTOM_METHOD=m
|
||||
CONFIG_ACPI_BGRT=y
|
||||
|
||||
CONFIG_X86_INTEL_PSTATE=y
|
||||
CONFIG_X86_ACPI_CPUFREQ=y
|
||||
CONFIG_X86_PCC_CPUFREQ=y
|
||||
CONFIG_X86_ACPI_CPUFREQ_CPB=y
|
||||
@ -427,6 +428,8 @@ CONFIG_INTEL_MEI=m
|
||||
# Maybe enable in debug kernels?
|
||||
# CONFIG_DEBUG_NMI_SELFTEST is not set
|
||||
|
||||
# CONFIG_X86_INTEL_LPSS is not set
|
||||
|
||||
CONFIG_MPILIB=y
|
||||
CONFIG_PKCS7_MESSAGE_PARSER=y
|
||||
CONFIG_PE_FILE_PARSER=y
|
||||
|
@ -1,103 +0,0 @@
|
||||
From 70277f47b58b174a6b0b891dcd06ae5125afb73b Mon Sep 17 00:00:00 2001
|
||||
From: Stanislaw Gruszka <sgruszka@redhat.com>
|
||||
Date: Thu, 20 Dec 2012 14:31:51 +0100
|
||||
Subject: [PATCH] iwlegacy: add flush callback
|
||||
|
||||
Dump implementation of flush, which just wait until all TX queues
|
||||
become empty.
|
||||
|
||||
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
|
||||
Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
||||
---
|
||||
drivers/net/wireless/iwlegacy/3945-mac.c | 1 +
|
||||
drivers/net/wireless/iwlegacy/4965-mac.c | 1 +
|
||||
drivers/net/wireless/iwlegacy/common.c | 36 ++++++++++++++++++++++++++++++
|
||||
drivers/net/wireless/iwlegacy/common.h | 1 +
|
||||
4 files changed, 39 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/iwlegacy/3945-mac.c b/drivers/net/wireless/iwlegacy/3945-mac.c
|
||||
index d604b40..962400a 100644
|
||||
--- a/drivers/net/wireless/iwlegacy/3945-mac.c
|
||||
+++ b/drivers/net/wireless/iwlegacy/3945-mac.c
|
||||
@@ -3474,6 +3474,7 @@ struct ieee80211_ops il3945_mac_ops = {
|
||||
.sta_add = il3945_mac_sta_add,
|
||||
.sta_remove = il_mac_sta_remove,
|
||||
.tx_last_beacon = il_mac_tx_last_beacon,
|
||||
+ .flush = il_mac_flush,
|
||||
};
|
||||
|
||||
static int
|
||||
diff --git a/drivers/net/wireless/iwlegacy/4965-mac.c b/drivers/net/wireless/iwlegacy/4965-mac.c
|
||||
index 6a86ed4..c40020c 100644
|
||||
--- a/drivers/net/wireless/iwlegacy/4965-mac.c
|
||||
+++ b/drivers/net/wireless/iwlegacy/4965-mac.c
|
||||
@@ -6308,6 +6308,7 @@ const struct ieee80211_ops il4965_mac_ops = {
|
||||
.sta_remove = il_mac_sta_remove,
|
||||
.channel_switch = il4965_mac_channel_switch,
|
||||
.tx_last_beacon = il_mac_tx_last_beacon,
|
||||
+ .flush = il_mac_flush,
|
||||
};
|
||||
|
||||
static int
|
||||
diff --git a/drivers/net/wireless/iwlegacy/common.c b/drivers/net/wireless/iwlegacy/common.c
|
||||
index 7e16d10..56b8021 100644
|
||||
--- a/drivers/net/wireless/iwlegacy/common.c
|
||||
+++ b/drivers/net/wireless/iwlegacy/common.c
|
||||
@@ -4707,6 +4707,42 @@ out:
|
||||
}
|
||||
EXPORT_SYMBOL(il_mac_change_interface);
|
||||
|
||||
+void
|
||||
+il_mac_flush(struct ieee80211_hw *hw, bool drop)
|
||||
+{
|
||||
+ struct il_priv *il = hw->priv;
|
||||
+ unsigned long timeout = jiffies + msecs_to_jiffies(500);
|
||||
+ int i;
|
||||
+
|
||||
+ mutex_lock(&il->mutex);
|
||||
+ D_MAC80211("enter\n");
|
||||
+
|
||||
+ if (il->txq == NULL)
|
||||
+ goto out;
|
||||
+
|
||||
+ for (i = 0; i < il->hw_params.max_txq_num; i++) {
|
||||
+ struct il_queue *q;
|
||||
+
|
||||
+ if (i == il->cmd_queue)
|
||||
+ continue;
|
||||
+
|
||||
+ q = &il->txq[i].q;
|
||||
+ if (q->read_ptr == q->write_ptr)
|
||||
+ continue;
|
||||
+
|
||||
+ if (time_after(jiffies, timeout)) {
|
||||
+ IL_ERR("Failed to flush queue %d\n", q->id);
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ msleep(20);
|
||||
+ }
|
||||
+out:
|
||||
+ D_MAC80211("leave\n");
|
||||
+ mutex_unlock(&il->mutex);
|
||||
+}
|
||||
+EXPORT_SYMBOL(il_mac_flush);
|
||||
+
|
||||
/*
|
||||
* On every watchdog tick we check (latest) time stamp. If it does not
|
||||
* change during timeout period and queue is not empty we reset firmware.
|
||||
diff --git a/drivers/net/wireless/iwlegacy/common.h b/drivers/net/wireless/iwlegacy/common.h
|
||||
index a9a569f..37fe553 100644
|
||||
--- a/drivers/net/wireless/iwlegacy/common.h
|
||||
+++ b/drivers/net/wireless/iwlegacy/common.h
|
||||
@@ -1723,6 +1723,7 @@ void il_mac_remove_interface(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif);
|
||||
int il_mac_change_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||
enum nl80211_iftype newtype, bool newp2p);
|
||||
+void il_mac_flush(struct ieee80211_hw *hw, bool drop);
|
||||
int il_alloc_txq_mem(struct il_priv *il);
|
||||
void il_free_txq_mem(struct il_priv *il);
|
||||
|
||||
--
|
||||
1.7.7.6
|
||||
|
25
kernel.spec
25
kernel.spec
@ -95,7 +95,7 @@ Summary: The Linux kernel
|
||||
# The rc snapshot level
|
||||
%define rcrev 0
|
||||
# The git snapshot level
|
||||
%define gitrev 1
|
||||
%define gitrev 2
|
||||
# Set rpm version accordingly
|
||||
%define rpmversion 3.%{upstream_sublevel}.0
|
||||
%endif
|
||||
@ -660,7 +660,6 @@ Patch460: serial-460800.patch
|
||||
Patch470: die-floppy-die.patch
|
||||
|
||||
Patch510: silence-noise.patch
|
||||
Patch520: quiet-apm.patch
|
||||
Patch530: silence-fbcon-logo.patch
|
||||
|
||||
Patch800: crash-driver.patch
|
||||
@ -713,7 +712,6 @@ Patch21000: arm-export-read_current_timer.patch
|
||||
Patch21001: arm-allnoconfig-error-__LINUX_ARM_ARCH__-undeclared.patch
|
||||
|
||||
# IMX
|
||||
Patch21003: arm-imx-fixdrm.patch
|
||||
|
||||
# ARM tegra
|
||||
Patch21004: arm-tegra-nvec-kconfig.patch
|
||||
@ -727,17 +725,9 @@ Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
|
||||
#rhbz 859485
|
||||
Patch21226: vt-Drop-K_OFF-for-VC_MUTE.patch
|
||||
|
||||
#rhbz 799564
|
||||
Patch21240: Input-increase-struct-ps2dev-cmdbuf-to-8-bytes.patch
|
||||
Patch21241: Input-add-support-for-Cypress-PS2-Trackpads.patch
|
||||
|
||||
# https://fedoraproject.org/wiki/Features/Checkpoint_Restore
|
||||
Patch21242: criu-no-expert.patch
|
||||
|
||||
#rhbz 830151
|
||||
Patch21243: mac80211-improve-latency-and-throughput-while-software.patch
|
||||
Patch21244: iwlegacy-add-flush-callback.patch
|
||||
|
||||
#rhbz 892811
|
||||
Patch21247: ath9k_rx_dma_stop_check.patch
|
||||
|
||||
@ -1320,7 +1310,6 @@ ApplyPatch arm-export-read_current_timer.patch
|
||||
ApplyPatch arm-allnoconfig-error-__LINUX_ARM_ARCH__-undeclared.patch
|
||||
# ApplyPatch arm-tegra-nvec-kconfig.patch
|
||||
ApplyPatch arm-tegra-usb-no-reset-linux33.patch
|
||||
ApplyPatch arm-imx-fixdrm.patch
|
||||
|
||||
#
|
||||
# bugfixes to drivers and filesystems
|
||||
@ -1403,7 +1392,6 @@ ApplyPatch drm-i915-dp-stfu.patch
|
||||
|
||||
# silence the ACPI blacklist code
|
||||
ApplyPatch silence-acpi-blacklist.patch
|
||||
ApplyPatch quiet-apm.patch
|
||||
|
||||
# V4L/DVB updates/fixes/experimental drivers
|
||||
# apply if non-empty
|
||||
@ -1437,17 +1425,9 @@ ApplyPatch selinux-apply-different-permission-to-ptrace-child.patch
|
||||
#rhbz 859485
|
||||
ApplyPatch vt-Drop-K_OFF-for-VC_MUTE.patch
|
||||
|
||||
#rhbz 799564
|
||||
ApplyPatch Input-increase-struct-ps2dev-cmdbuf-to-8-bytes.patch
|
||||
ApplyPatch Input-add-support-for-Cypress-PS2-Trackpads.patch
|
||||
|
||||
# https://fedoraproject.org/wiki/Features/Checkpoint_Restore
|
||||
ApplyPatch criu-no-expert.patch
|
||||
|
||||
#rhbz 830151
|
||||
ApplyPatch mac80211-improve-latency-and-throughput-while-software.patch
|
||||
ApplyPatch iwlegacy-add-flush-callback.patch
|
||||
|
||||
#rhbz 892811
|
||||
ApplyPatch ath9k_rx_dma_stop_check.patch
|
||||
|
||||
@ -2318,6 +2298,9 @@ fi
|
||||
# ||----w |
|
||||
# || ||
|
||||
%changelog
|
||||
* Thu Feb 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git2.1
|
||||
- Linux v3.8-3040-ga0b1c42
|
||||
|
||||
* Thu Feb 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git1.1
|
||||
- Linux v3.8-523-gece8e0b
|
||||
- Reenable debugging options.
|
||||
|
@ -1,142 +0,0 @@
|
||||
From c790794fcb461842e6ae1d764b7f68e9a789d149 Mon Sep 17 00:00:00 2001
|
||||
From: Stanislaw Gruszka <sgruszka@redhat.com>
|
||||
Date: Wed, 23 Jan 2013 12:32:45 +0100
|
||||
Subject: [PATCH] mac80211: improve latency and throughput while software
|
||||
scanning
|
||||
|
||||
Patch vastly improve latency while scanning. Slight throughput
|
||||
improvements were observed as well. Is intended for improve performance
|
||||
of voice and video applications, when scan is periodically requested by
|
||||
user space (i.e. default NetworkManager behaviour).
|
||||
|
||||
Patch remove latency requirement based on PM_QOS_NETWORK_LATENCY,
|
||||
this value is 2000 seconds by default (i.e. approximately 0.5 hour !?!).
|
||||
|
||||
Also remove listen interval requirement, which based on beaconing and
|
||||
depending on BSS parameters. It can make we stay off-channel for a
|
||||
second or more.
|
||||
|
||||
Instead try to offer the best latency that we could, i.e. be off-channel
|
||||
no longer than PASSIVE channel scan time: 125 ms. That mean we will
|
||||
scan two ACTIVE channels and go back to on-channel, and one PASSIVE
|
||||
channel, and go back to on-channel.
|
||||
|
||||
Patch also decrease PASSIVE channel scan time to about 110 ms.
|
||||
|
||||
As drawback patch increase overall scan time. On my tests, when scanning
|
||||
both 2GHz and 5GHz bands, scanning time increase from 5 seconds up to 10
|
||||
seconds. Since that increase happen only when we are associated, I think
|
||||
it can be acceptable. If eventually better scan time is needed for
|
||||
situations when we lose signal and quickly need to decide to which AP
|
||||
roam, additional scan flag or parameter can be introduced.
|
||||
|
||||
I tested patch by doing:
|
||||
|
||||
while true; do iw dev wlan0 scan; sleep 3; done > /dev/null
|
||||
|
||||
and
|
||||
|
||||
ping -i0.2 -c 1000 HOST
|
||||
|
||||
on remote and local machine, results are as below:
|
||||
|
||||
* Ping from local periodically scanning machine to AP:
|
||||
Unpatched: rtt min/avg/max/mdev = 0.928/24.946/182.135/36.873 ms
|
||||
Patched: rtt min/avg/max/mdev = 0.928/19.678/150.845/33.130 ms
|
||||
|
||||
* Ping from remote machine to periodically scanning machine:
|
||||
Unpatched: rtt min/avg/max/mdev = 1.637/120.683/709.139/164.337 ms
|
||||
Patched: rtt min/avg/max/mdev = 1.807/26.893/201.435/40.284 ms
|
||||
|
||||
Throughput measured by scp show following results.
|
||||
|
||||
* Upload to periodically scanning machine:
|
||||
Unpatched: 3.9MB/s 03:15
|
||||
Patched: 4.3MB/s 02:58
|
||||
|
||||
* Download from periodically scanning machine:
|
||||
Unpatched: 5.5MB/s 02:17
|
||||
Patched: 6.2MB/s 02:02
|
||||
|
||||
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
|
||||
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
||||
---
|
||||
net/mac80211/scan.c | 32 +++++---------------------------
|
||||
1 file changed, 5 insertions(+), 27 deletions(-)
|
||||
|
||||
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c
|
||||
index bf82e69..e6b2ebc 100644
|
||||
--- a/net/mac80211/scan.c
|
||||
+++ b/net/mac80211/scan.c
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
#define IEEE80211_PROBE_DELAY (HZ / 33)
|
||||
#define IEEE80211_CHANNEL_TIME (HZ / 33)
|
||||
-#define IEEE80211_PASSIVE_CHANNEL_TIME (HZ / 8)
|
||||
+#define IEEE80211_PASSIVE_CHANNEL_TIME (HZ / 9)
|
||||
|
||||
static void ieee80211_rx_bss_free(struct cfg80211_bss *cbss)
|
||||
{
|
||||
@@ -547,8 +547,6 @@ static void ieee80211_scan_state_decision(struct ieee80211_local *local,
|
||||
bool associated = false;
|
||||
bool tx_empty = true;
|
||||
bool bad_latency;
|
||||
- bool listen_int_exceeded;
|
||||
- unsigned long min_beacon_int = 0;
|
||||
struct ieee80211_sub_if_data *sdata;
|
||||
struct ieee80211_channel *next_chan;
|
||||
enum mac80211_scan_state next_scan_state;
|
||||
@@ -567,11 +565,6 @@ static void ieee80211_scan_state_decision(struct ieee80211_local *local,
|
||||
if (sdata->u.mgd.associated) {
|
||||
associated = true;
|
||||
|
||||
- if (sdata->vif.bss_conf.beacon_int <
|
||||
- min_beacon_int || min_beacon_int == 0)
|
||||
- min_beacon_int =
|
||||
- sdata->vif.bss_conf.beacon_int;
|
||||
-
|
||||
if (!qdisc_all_tx_empty(sdata->dev)) {
|
||||
tx_empty = false;
|
||||
break;
|
||||
@@ -588,34 +581,19 @@ static void ieee80211_scan_state_decision(struct ieee80211_local *local,
|
||||
* see if we can scan another channel without interfering
|
||||
* with the current traffic situation.
|
||||
*
|
||||
- * Since we don't know if the AP has pending frames for us
|
||||
- * we can only check for our tx queues and use the current
|
||||
- * pm_qos requirements for rx. Hence, if no tx traffic occurs
|
||||
- * at all we will scan as many channels in a row as the pm_qos
|
||||
- * latency allows us to. Additionally we also check for the
|
||||
- * currently negotiated listen interval to prevent losing
|
||||
- * frames unnecessarily.
|
||||
- *
|
||||
- * Otherwise switch back to the operating channel.
|
||||
+ * Keep good latency, do not stay off-channel more than 125 ms.
|
||||
*/
|
||||
|
||||
bad_latency = time_after(jiffies +
|
||||
- ieee80211_scan_get_channel_time(next_chan),
|
||||
- local->leave_oper_channel_time +
|
||||
- usecs_to_jiffies(pm_qos_request(PM_QOS_NETWORK_LATENCY)));
|
||||
-
|
||||
- listen_int_exceeded = time_after(jiffies +
|
||||
- ieee80211_scan_get_channel_time(next_chan),
|
||||
- local->leave_oper_channel_time +
|
||||
- usecs_to_jiffies(min_beacon_int * 1024) *
|
||||
- local->hw.conf.listen_interval);
|
||||
+ ieee80211_scan_get_channel_time(next_chan),
|
||||
+ local->leave_oper_channel_time + HZ / 8);
|
||||
|
||||
if (associated && !tx_empty) {
|
||||
if (local->scan_req->flags & NL80211_SCAN_FLAG_LOW_PRIORITY)
|
||||
next_scan_state = SCAN_ABORT;
|
||||
else
|
||||
next_scan_state = SCAN_SUSPEND;
|
||||
- } else if (associated && (bad_latency || listen_int_exceeded)) {
|
||||
+ } else if (associated && bad_latency) {
|
||||
next_scan_state = SCAN_SUSPEND;
|
||||
} else {
|
||||
next_scan_state = SCAN_SET_CHANNEL;
|
||||
--
|
||||
1.8.1
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git a/arch/x86/kernel/apm_32.c b/arch/x86/kernel/apm_32.c
|
||||
index 8d7012b..eb9d320 100644
|
||||
--- a/arch/x86/kernel/apm_32.c
|
||||
+++ b/arch/x86/kernel/apm_32.c
|
||||
@@ -905,7 +905,7 @@ static void apm_cpu_idle(void)
|
||||
unsigned int jiffies_since_last_check = jiffies - last_jiffies;
|
||||
unsigned int bucket;
|
||||
|
||||
- WARN_ONCE(1, "deprecated apm_cpu_idle will be deleted in 2012");
|
||||
+ printk_once(KERN_INFO "deprecated apm_cpu_idle will be deleted in 2012");
|
||||
recalc:
|
||||
task_cputime(current, NULL, &stime);
|
||||
if (jiffies_since_last_check > IDLE_CALC_LIMIT) {
|
Loading…
Reference in New Issue
Block a user