Linux v3.13.3
This commit is contained in:
parent
bc1574ae1d
commit
bf560314af
|
@ -0,0 +1,56 @@
|
|||
Bugzilla: 1046238
|
||||
Upstream-status: Queued for 3.14
|
||||
|
||||
From 1d0d6df02750b4a6f466768cbfbf860e24f4c8d4 Mon Sep 17 00:00:00 2001
|
||||
From: Ping Cheng <pinglinux@gmail.com>
|
||||
Date: Mon, 25 Nov 2013 18:43:45 -0800
|
||||
Subject: [PATCH] Input: wacom - make sure touch_max is set for touch devices
|
||||
|
||||
Old single touch Tablet PCs do not have touch_max set at
|
||||
wacom_features. Since touch device at lease supports one
|
||||
finger, assign touch_max to 1 when touch usage is defined
|
||||
in its HID Descriptor and touch_max is not pre-defined.
|
||||
|
||||
Tested-by: Jason Gerecke <killertofu@gmail.com>
|
||||
Signed-off-by: Ping Cheng <pingc@wacom.com>
|
||||
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/tablet/wacom_sys.c | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c
|
||||
index 8a90da1..3d71b60 100644
|
||||
--- a/drivers/input/tablet/wacom_sys.c
|
||||
+++ b/drivers/input/tablet/wacom_sys.c
|
||||
@@ -304,7 +304,7 @@ static int wacom_parse_hid(struct usb_interface *intf,
|
||||
struct usb_device *dev = interface_to_usbdev(intf);
|
||||
char limit = 0;
|
||||
/* result has to be defined as int for some devices */
|
||||
- int result = 0;
|
||||
+ int result = 0, touch_max = 0;
|
||||
int i = 0, usage = WCM_UNDEFINED, finger = 0, pen = 0;
|
||||
unsigned char *report;
|
||||
|
||||
@@ -351,7 +351,8 @@ static int wacom_parse_hid(struct usb_interface *intf,
|
||||
if (usage == WCM_DESKTOP) {
|
||||
if (finger) {
|
||||
features->device_type = BTN_TOOL_FINGER;
|
||||
-
|
||||
+ /* touch device at least supports one touch point */
|
||||
+ touch_max = 1;
|
||||
switch (features->type) {
|
||||
case TABLETPC2FG:
|
||||
features->pktlen = WACOM_PKGLEN_TPC2FG;
|
||||
@@ -504,6 +505,8 @@ static int wacom_parse_hid(struct usb_interface *intf,
|
||||
}
|
||||
|
||||
out:
|
||||
+ if (!features->touch_max && touch_max)
|
||||
+ features->touch_max = touch_max;
|
||||
result = 0;
|
||||
kfree(report);
|
||||
return result;
|
||||
--
|
||||
1.8.4.2
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: Nak'd, supposedly replacement coming to auto-select
|
||||
|
||||
From 0f3f5c5b4ca2eb1f41947c50bedb9b17aa1a1f80 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Mon, 11 Nov 2013 08:39:16 -0500
|
||||
Subject: [PATCH] lib/cpumask: Make CPUMASK_OFFSTACK usable without debug
|
||||
dependency
|
||||
|
||||
When CPUMASK_OFFSTACK was added in 2008, it was dependent upon
|
||||
DEBUG_PER_CPU_MAPS being enabled, or an architecture could select it.
|
||||
The debug dependency adds additional overhead that isn't required for
|
||||
operation of the feature, and we need CPUMASK_OFFSTACK to increase the
|
||||
NR_CPUS value beyond 512 on x86. We drop the current dependency and make
|
||||
sure SMP is set.
|
||||
|
||||
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
---
|
||||
lib/Kconfig | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/Kconfig b/lib/Kconfig
|
||||
index b3c8be0..50b47cd 100644
|
||||
--- a/lib/Kconfig
|
||||
+++ b/lib/Kconfig
|
||||
@@ -342,7 +342,8 @@ config CHECK_SIGNATURE
|
||||
bool
|
||||
|
||||
config CPUMASK_OFFSTACK
|
||||
- bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS
|
||||
+ bool "Force CPU masks off stack"
|
||||
+ depends on SMP
|
||||
help
|
||||
Use dynamic allocation for cpumask_var_t, instead of putting
|
||||
them on the stack. This is a bit more expensive, but avoids
|
||||
--
|
||||
1.8.3.1
|
||||
|
|
@ -0,0 +1,216 @@
|
|||
Bugzilla: 1046238
|
||||
Upstream-status: Queued for 3.14
|
||||
|
||||
From b5fd2a3e92ca5c8c1f3c20d31ac5daed3ec4d604 Mon Sep 17 00:00:00 2001
|
||||
From: Ping Cheng <pinglinux@gmail.com>
|
||||
Date: Mon, 25 Nov 2013 18:44:55 -0800
|
||||
Subject: [PATCH] Input: wacom - add support for three new Intuos devices
|
||||
|
||||
Two tablets in this series support both pen and touch. One (Intuos S)
|
||||
only supports pen. This patch also updates the driver to process wireless
|
||||
devices that do not support touch interface.
|
||||
|
||||
Tested-by: Jason Gerecke <killertofu@gmail.com>
|
||||
Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
|
||||
Signed-off-by: Ping Cheng <pingc@wacom.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/tablet/wacom_sys.c | 6 ++--
|
||||
drivers/input/tablet/wacom_wac.c | 61 ++++++++++++++++++++++++++++++----------
|
||||
drivers/input/tablet/wacom_wac.h | 2 ++
|
||||
3 files changed, 51 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c
|
||||
index 3d71b60..3a7d99c 100644
|
||||
--- a/drivers/input/tablet/wacom_sys.c
|
||||
+++ b/drivers/input/tablet/wacom_sys.c
|
||||
@@ -1198,7 +1198,8 @@ static void wacom_wireless_work(struct work_struct *work)
|
||||
goto fail;
|
||||
|
||||
/* Touch interface */
|
||||
- if (wacom_wac1->features.touch_max) {
|
||||
+ if (wacom_wac1->features.touch_max ||
|
||||
+ wacom_wac1->features.type == INTUOSHT) {
|
||||
wacom_wac2->features =
|
||||
*((struct wacom_features *)id->driver_info);
|
||||
wacom_wac2->features.pktlen = WACOM_PKGLEN_BBTOUCH3;
|
||||
@@ -1321,7 +1322,7 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i
|
||||
* HID descriptor. If this is the touch interface (wMaxPacketSize
|
||||
* of WACOM_PKGLEN_BBTOUCH3), override the table values.
|
||||
*/
|
||||
- if (features->type >= INTUOS5S && features->type <= INTUOSPL) {
|
||||
+ if (features->type >= INTUOS5S && features->type <= INTUOSHT) {
|
||||
if (endpoint->wMaxPacketSize == WACOM_PKGLEN_BBTOUCH3) {
|
||||
features->device_type = BTN_TOOL_FINGER;
|
||||
features->pktlen = WACOM_PKGLEN_BBTOUCH3;
|
||||
@@ -1391,7 +1392,6 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i
|
||||
goto fail5;
|
||||
}
|
||||
}
|
||||
-
|
||||
return 0;
|
||||
|
||||
fail5: wacom_destroy_leds(wacom);
|
||||
diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c
|
||||
index 3f75f1d..eb60a28 100644
|
||||
--- a/drivers/input/tablet/wacom_wac.c
|
||||
+++ b/drivers/input/tablet/wacom_wac.c
|
||||
@@ -1176,10 +1176,16 @@ static void wacom_bpt3_touch_msg(struct wacom_wac *wacom, unsigned char *data)
|
||||
static void wacom_bpt3_button_msg(struct wacom_wac *wacom, unsigned char *data)
|
||||
{
|
||||
struct input_dev *input = wacom->input;
|
||||
+ struct wacom_features *features = &wacom->features;
|
||||
|
||||
- input_report_key(input, BTN_LEFT, (data[1] & 0x08) != 0);
|
||||
+ if (features->type == INTUOSHT) {
|
||||
+ input_report_key(input, BTN_LEFT, (data[1] & 0x02) != 0);
|
||||
+ input_report_key(input, BTN_BACK, (data[1] & 0x08) != 0);
|
||||
+ } else {
|
||||
+ input_report_key(input, BTN_BACK, (data[1] & 0x02) != 0);
|
||||
+ input_report_key(input, BTN_LEFT, (data[1] & 0x08) != 0);
|
||||
+ }
|
||||
input_report_key(input, BTN_FORWARD, (data[1] & 0x04) != 0);
|
||||
- input_report_key(input, BTN_BACK, (data[1] & 0x02) != 0);
|
||||
input_report_key(input, BTN_RIGHT, (data[1] & 0x01) != 0);
|
||||
}
|
||||
|
||||
@@ -1217,7 +1223,7 @@ static int wacom_bpt_pen(struct wacom_wac *wacom)
|
||||
unsigned char *data = wacom->data;
|
||||
int prox = 0, x = 0, y = 0, p = 0, d = 0, pen = 0, btn1 = 0, btn2 = 0;
|
||||
|
||||
- if (data[0] != 0x02)
|
||||
+ if (data[0] != WACOM_REPORT_PENABLED)
|
||||
return 0;
|
||||
|
||||
prox = (data[1] & 0x20) == 0x20;
|
||||
@@ -1297,7 +1303,7 @@ static int wacom_wireless_irq(struct wacom_wac *wacom, size_t len)
|
||||
unsigned char *data = wacom->data;
|
||||
int connected;
|
||||
|
||||
- if (len != WACOM_PKGLEN_WIRELESS || data[0] != 0x80)
|
||||
+ if (len != WACOM_PKGLEN_WIRELESS || data[0] != WACOM_REPORT_WL)
|
||||
return 0;
|
||||
|
||||
connected = data[1] & 0x01;
|
||||
@@ -1391,6 +1397,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len)
|
||||
break;
|
||||
|
||||
case BAMBOO_PT:
|
||||
+ case INTUOSHT:
|
||||
sync = wacom_bpt_irq(wacom_wac, len);
|
||||
break;
|
||||
|
||||
@@ -1459,7 +1466,7 @@ void wacom_setup_device_quirks(struct wacom_features *features)
|
||||
|
||||
/* these device have multiple inputs */
|
||||
if (features->type >= WIRELESS ||
|
||||
- (features->type >= INTUOS5S && features->type <= INTUOSPL) ||
|
||||
+ (features->type >= INTUOS5S && features->type <= INTUOSHT) ||
|
||||
(features->oVid && features->oPid))
|
||||
features->quirks |= WACOM_QUIRK_MULTI_INPUT;
|
||||
|
||||
@@ -1771,33 +1778,43 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev,
|
||||
__set_bit(INPUT_PROP_POINTER, input_dev->propbit);
|
||||
break;
|
||||
|
||||
+ case INTUOSHT:
|
||||
case BAMBOO_PT:
|
||||
__clear_bit(ABS_MISC, input_dev->absbit);
|
||||
|
||||
- __set_bit(INPUT_PROP_POINTER, input_dev->propbit);
|
||||
-
|
||||
if (features->device_type == BTN_TOOL_FINGER) {
|
||||
- unsigned int flags = INPUT_MT_POINTER;
|
||||
|
||||
__set_bit(BTN_LEFT, input_dev->keybit);
|
||||
__set_bit(BTN_FORWARD, input_dev->keybit);
|
||||
__set_bit(BTN_BACK, input_dev->keybit);
|
||||
__set_bit(BTN_RIGHT, input_dev->keybit);
|
||||
|
||||
- if (features->pktlen == WACOM_PKGLEN_BBTOUCH3) {
|
||||
- input_set_abs_params(input_dev,
|
||||
+ if (features->touch_max) {
|
||||
+ /* touch interface */
|
||||
+ unsigned int flags = INPUT_MT_POINTER;
|
||||
+
|
||||
+ __set_bit(INPUT_PROP_POINTER, input_dev->propbit);
|
||||
+ if (features->pktlen == WACOM_PKGLEN_BBTOUCH3) {
|
||||
+ input_set_abs_params(input_dev,
|
||||
ABS_MT_TOUCH_MAJOR,
|
||||
0, features->x_max, 0, 0);
|
||||
- input_set_abs_params(input_dev,
|
||||
+ input_set_abs_params(input_dev,
|
||||
ABS_MT_TOUCH_MINOR,
|
||||
0, features->y_max, 0, 0);
|
||||
+ } else {
|
||||
+ __set_bit(BTN_TOOL_FINGER, input_dev->keybit);
|
||||
+ __set_bit(BTN_TOOL_DOUBLETAP, input_dev->keybit);
|
||||
+ flags = 0;
|
||||
+ }
|
||||
+ input_mt_init_slots(input_dev, features->touch_max, flags);
|
||||
} else {
|
||||
- __set_bit(BTN_TOOL_FINGER, input_dev->keybit);
|
||||
- __set_bit(BTN_TOOL_DOUBLETAP, input_dev->keybit);
|
||||
- flags = 0;
|
||||
+ /* buttons/keys only interface */
|
||||
+ __clear_bit(ABS_X, input_dev->absbit);
|
||||
+ __clear_bit(ABS_Y, input_dev->absbit);
|
||||
+ __clear_bit(BTN_TOUCH, input_dev->keybit);
|
||||
}
|
||||
- input_mt_init_slots(input_dev, features->touch_max, flags);
|
||||
} else if (features->device_type == BTN_TOOL_PEN) {
|
||||
+ __set_bit(INPUT_PROP_POINTER, input_dev->propbit);
|
||||
__set_bit(BTN_TOOL_RUBBER, input_dev->keybit);
|
||||
__set_bit(BTN_TOOL_PEN, input_dev->keybit);
|
||||
__set_bit(BTN_STYLUS, input_dev->keybit);
|
||||
@@ -2194,6 +2211,17 @@ static const struct wacom_features wacom_features_0x300 =
|
||||
static const struct wacom_features wacom_features_0x301 =
|
||||
{ "Wacom Bamboo One M", WACOM_PKGLEN_BBPEN, 21648, 13530, 1023,
|
||||
31, BAMBOO_PT, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
|
||||
+static const struct wacom_features wacom_features_0x302 =
|
||||
+ { "Wacom Intuos PT S", WACOM_PKGLEN_BBPEN, 15200, 9500, 1023,
|
||||
+ 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES,
|
||||
+ .touch_max = 16 };
|
||||
+static const struct wacom_features wacom_features_0x303 =
|
||||
+ { "Wacom Intuos PT M", WACOM_PKGLEN_BBPEN, 21600, 13500, 1023,
|
||||
+ 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES,
|
||||
+ .touch_max = 16 };
|
||||
+static const struct wacom_features wacom_features_0x30E =
|
||||
+ { "Wacom Intuos S", WACOM_PKGLEN_BBPEN, 15200, 9500, 1023,
|
||||
+ 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
|
||||
static const struct wacom_features wacom_features_0x6004 =
|
||||
{ "ISD-V4", WACOM_PKGLEN_GRAPHIRE, 12800, 8000, 255,
|
||||
0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES };
|
||||
@@ -2329,6 +2357,9 @@ const struct usb_device_id wacom_ids[] = {
|
||||
{ USB_DEVICE_WACOM(0x10D) },
|
||||
{ USB_DEVICE_WACOM(0x300) },
|
||||
{ USB_DEVICE_WACOM(0x301) },
|
||||
+ { USB_DEVICE_DETAILED(0x302, USB_CLASS_HID, 0, 0) },
|
||||
+ { USB_DEVICE_DETAILED(0x303, USB_CLASS_HID, 0, 0) },
|
||||
+ { USB_DEVICE_DETAILED(0x30E, USB_CLASS_HID, 0, 0) },
|
||||
{ USB_DEVICE_WACOM(0x304) },
|
||||
{ USB_DEVICE_DETAILED(0x314, USB_CLASS_HID, 0, 0) },
|
||||
{ USB_DEVICE_DETAILED(0x315, USB_CLASS_HID, 0, 0) },
|
||||
diff --git a/drivers/input/tablet/wacom_wac.h b/drivers/input/tablet/wacom_wac.h
|
||||
index fd23a37..854cceb 100644
|
||||
--- a/drivers/input/tablet/wacom_wac.h
|
||||
+++ b/drivers/input/tablet/wacom_wac.h
|
||||
@@ -54,6 +54,7 @@
|
||||
#define WACOM_REPORT_TPCST 16
|
||||
#define WACOM_REPORT_TPC1FGE 18
|
||||
#define WACOM_REPORT_24HDT 1
|
||||
+#define WACOM_REPORT_WL 128
|
||||
|
||||
/* device quirks */
|
||||
#define WACOM_QUIRK_MULTI_INPUT 0x0001
|
||||
@@ -81,6 +82,7 @@ enum {
|
||||
INTUOSPS,
|
||||
INTUOSPM,
|
||||
INTUOSPL,
|
||||
+ INTUOSHT,
|
||||
WACOM_21UX2,
|
||||
WACOM_22HD,
|
||||
DTK,
|
||||
--
|
||||
1.8.4.2
|
||||
|
|
@ -1,98 +0,0 @@
|
|||
From 3efd689c41080b0d4a9cc263a51f2868e3d5a37b Mon Sep 17 00:00:00 2001
|
||||
From: Stanislaw Gruszka <sgruszka@redhat.com>
|
||||
Date: Wed, 9 Oct 2013 15:03:57 +0200
|
||||
Subject: [PATCH] iwlwifi: don't WARN on bad firmware state
|
||||
|
||||
When we restart firmware is possible and hance firmware is marked as not
|
||||
alive, we can still get calls from mac80211. Don't WARN on in this
|
||||
situation as this triggers automatic bug reports with no valuable
|
||||
information.
|
||||
|
||||
This extend change from:
|
||||
|
||||
commit 8ca95995e64f5d270889badb3e449dca91106a2b
|
||||
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
|
||||
Date: Sun Sep 15 11:37:17 2013 +0300
|
||||
|
||||
iwlwifi: don't WARN on host commands sent when firmware is dead
|
||||
|
||||
which remove WARN_ONCE from one place, but those warnings are also
|
||||
triggered from other functions.
|
||||
|
||||
Patch adds also unlikely() statement.
|
||||
|
||||
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
|
||||
---
|
||||
drivers/net/wireless/iwlwifi/iwl-trans.h | 22 +++++++++++-----------
|
||||
1 files changed, 11 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans.h b/drivers/net/wireless/iwlwifi/iwl-trans.h
|
||||
index 80b4750..c6bac7c 100644
|
||||
--- a/drivers/net/wireless/iwlwifi/iwl-trans.h
|
||||
+++ b/drivers/net/wireless/iwlwifi/iwl-trans.h
|
||||
@@ -601,7 +601,7 @@ static inline int iwl_trans_send_cmd(struct iwl_trans *trans,
|
||||
{
|
||||
int ret;
|
||||
|
||||
- if (trans->state != IWL_TRANS_FW_ALIVE) {
|
||||
+ if (unlikely(trans->state != IWL_TRANS_FW_ALIVE)) {
|
||||
IWL_ERR(trans, "%s bad state = %d", __func__, trans->state);
|
||||
return -EIO;
|
||||
}
|
||||
@@ -640,8 +640,8 @@ static inline void iwl_trans_free_tx_cmd(struct iwl_trans *trans,
|
||||
static inline int iwl_trans_tx(struct iwl_trans *trans, struct sk_buff *skb,
|
||||
struct iwl_device_cmd *dev_cmd, int queue)
|
||||
{
|
||||
- WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE,
|
||||
- "%s bad state = %d", __func__, trans->state);
|
||||
+ if (unlikely(trans->state != IWL_TRANS_FW_ALIVE))
|
||||
+ IWL_ERR(trans, "%s bad state = %d", __func__, trans->state);
|
||||
|
||||
return trans->ops->tx(trans, skb, dev_cmd, queue);
|
||||
}
|
||||
@@ -649,16 +649,16 @@ static inline int iwl_trans_tx(struct iwl_trans *trans, struct sk_buff *skb,
|
||||
static inline void iwl_trans_reclaim(struct iwl_trans *trans, int queue,
|
||||
int ssn, struct sk_buff_head *skbs)
|
||||
{
|
||||
- WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE,
|
||||
- "%s bad state = %d", __func__, trans->state);
|
||||
+ if (unlikely(trans->state != IWL_TRANS_FW_ALIVE))
|
||||
+ IWL_ERR(trans, "%s bad state = %d", __func__, trans->state);
|
||||
|
||||
trans->ops->reclaim(trans, queue, ssn, skbs);
|
||||
}
|
||||
|
||||
static inline void iwl_trans_txq_disable(struct iwl_trans *trans, int queue)
|
||||
{
|
||||
- WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE,
|
||||
- "%s bad state = %d", __func__, trans->state);
|
||||
+ if (unlikely(trans->state != IWL_TRANS_FW_ALIVE))
|
||||
+ IWL_ERR(trans, "%s bad state = %d", __func__, trans->state);
|
||||
|
||||
trans->ops->txq_disable(trans, queue);
|
||||
}
|
||||
@@ -669,8 +669,8 @@ static inline void iwl_trans_txq_enable(struct iwl_trans *trans, int queue,
|
||||
{
|
||||
might_sleep();
|
||||
|
||||
- WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE,
|
||||
- "%s bad state = %d", __func__, trans->state);
|
||||
+ if (unlikely((trans->state != IWL_TRANS_FW_ALIVE)))
|
||||
+ IWL_ERR(trans, "%s bad state = %d", __func__, trans->state);
|
||||
|
||||
trans->ops->txq_enable(trans, queue, fifo, sta_id, tid,
|
||||
frame_limit, ssn);
|
||||
@@ -685,8 +685,8 @@ static inline void iwl_trans_ac_txq_enable(struct iwl_trans *trans, int queue,
|
||||
|
||||
static inline int iwl_trans_wait_tx_queue_empty(struct iwl_trans *trans)
|
||||
{
|
||||
- WARN_ONCE(trans->state != IWL_TRANS_FW_ALIVE,
|
||||
- "%s bad state = %d", __func__, trans->state);
|
||||
+ if (unlikely(trans->state != IWL_TRANS_FW_ALIVE))
|
||||
+ IWL_ERR(trans, "%s bad state = %d", __func__, trans->state);
|
||||
|
||||
return trans->ops->wait_tx_queue_empty(trans);
|
||||
}
|
||||
--
|
||||
1.7.1
|
||||
|
|
@ -0,0 +1,155 @@
|
|||
Bugzilla: 1046238
|
||||
Upstream-status: Queued for 3.14
|
||||
|
||||
From 961794a00eab03f4344b7d5e825e8e789e55da87 Mon Sep 17 00:00:00 2001
|
||||
From: Ping Cheng <pinglinux@gmail.com>
|
||||
Date: Thu, 5 Dec 2013 12:54:53 -0800
|
||||
Subject: [PATCH] Input: wacom - add reporting of SW_MUTE_DEVICE events
|
||||
|
||||
New Intuos series models added a hardware switch to turn touch
|
||||
data on/off. The state of the switch is reported periodically
|
||||
from the tablet. To report the state the driver will emit SW_MUTE_DEVICE
|
||||
events.
|
||||
|
||||
Reviewed_by: Chris Bagwell <chris@cnpbagwell.com>
|
||||
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
Tested-by: Jason Gerecke <killertofu@gmail.com>
|
||||
Signed-off-by: Ping Cheng <pingc@wacom.com>
|
||||
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
---
|
||||
drivers/input/tablet/wacom_sys.c | 12 ++++++++++++
|
||||
drivers/input/tablet/wacom_wac.c | 30 +++++++++++++++++++++++++++---
|
||||
drivers/input/tablet/wacom_wac.h | 5 +++++
|
||||
3 files changed, 44 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c
|
||||
index 8318826..b16ebef 100644
|
||||
--- a/drivers/input/tablet/wacom_sys.c
|
||||
+++ b/drivers/input/tablet/wacom_sys.c
|
||||
@@ -1197,6 +1197,8 @@ static void wacom_wireless_work(struct work_struct *work)
|
||||
wacom_wac1->features.device_type = BTN_TOOL_PEN;
|
||||
snprintf(wacom_wac1->name, WACOM_NAME_MAX, "%s (WL) Pen",
|
||||
wacom_wac1->features.name);
|
||||
+ wacom_wac1->shared->touch_max = wacom_wac1->features.touch_max;
|
||||
+ wacom_wac1->shared->type = wacom_wac1->features.type;
|
||||
error = wacom_register_input(wacom1);
|
||||
if (error)
|
||||
goto fail;
|
||||
@@ -1218,6 +1220,10 @@ static void wacom_wireless_work(struct work_struct *work)
|
||||
error = wacom_register_input(wacom2);
|
||||
if (error)
|
||||
goto fail;
|
||||
+
|
||||
+ if (wacom_wac1->features.type == INTUOSHT &&
|
||||
+ wacom_wac1->features.touch_max)
|
||||
+ wacom_wac->shared->touch_input = wacom_wac2->input;
|
||||
}
|
||||
|
||||
error = wacom_initialize_battery(wacom);
|
||||
@@ -1396,6 +1402,12 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i
|
||||
goto fail5;
|
||||
}
|
||||
}
|
||||
+
|
||||
+ if (wacom_wac->features.type == INTUOSHT && wacom_wac->features.touch_max) {
|
||||
+ if (wacom_wac->features.device_type == BTN_TOOL_FINGER)
|
||||
+ wacom_wac->shared->touch_input = wacom_wac->input;
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
|
||||
fail5: wacom_destroy_leds(wacom);
|
||||
diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c
|
||||
index 7655088..048e5b3 100644
|
||||
--- a/drivers/input/tablet/wacom_wac.c
|
||||
+++ b/drivers/input/tablet/wacom_wac.c
|
||||
@@ -1219,13 +1219,23 @@ static int wacom_bpt3_touch(struct wacom_wac *wacom)
|
||||
|
||||
static int wacom_bpt_pen(struct wacom_wac *wacom)
|
||||
{
|
||||
+ struct wacom_features *features = &wacom->features;
|
||||
struct input_dev *input = wacom->input;
|
||||
unsigned char *data = wacom->data;
|
||||
int prox = 0, x = 0, y = 0, p = 0, d = 0, pen = 0, btn1 = 0, btn2 = 0;
|
||||
|
||||
- if (data[0] != WACOM_REPORT_PENABLED)
|
||||
+ if (data[0] != WACOM_REPORT_PENABLED && data[0] != WACOM_REPORT_USB)
|
||||
return 0;
|
||||
|
||||
+ if (data[0] == WACOM_REPORT_USB) {
|
||||
+ if (features->type == INTUOSHT && features->touch_max) {
|
||||
+ input_report_switch(wacom->shared->touch_input,
|
||||
+ SW_MUTE_DEVICE, data[8] & 0x40);
|
||||
+ input_sync(wacom->shared->touch_input);
|
||||
+ }
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
prox = (data[1] & 0x20) == 0x20;
|
||||
|
||||
/*
|
||||
@@ -1258,8 +1268,8 @@ static int wacom_bpt_pen(struct wacom_wac *wacom)
|
||||
* touching and applying pressure; do not report negative
|
||||
* distance.
|
||||
*/
|
||||
- if (data[8] <= wacom->features.distance_max)
|
||||
- d = wacom->features.distance_max - data[8];
|
||||
+ if (data[8] <= features->distance_max)
|
||||
+ d = features->distance_max - data[8];
|
||||
|
||||
pen = data[1] & 0x01;
|
||||
btn1 = data[1] & 0x02;
|
||||
@@ -1310,6 +1320,13 @@ static int wacom_wireless_irq(struct wacom_wac *wacom, size_t len)
|
||||
if (connected) {
|
||||
int pid, battery;
|
||||
|
||||
+ if ((wacom->shared->type == INTUOSHT) &&
|
||||
+ wacom->shared->touch_max) {
|
||||
+ input_report_switch(wacom->shared->touch_input,
|
||||
+ SW_MUTE_DEVICE, data[5] & 0x40);
|
||||
+ input_sync(wacom->shared->touch_input);
|
||||
+ }
|
||||
+
|
||||
pid = get_unaligned_be16(&data[6]);
|
||||
battery = data[5] & 0x3f;
|
||||
if (wacom->pid != pid) {
|
||||
@@ -1779,6 +1796,13 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev,
|
||||
break;
|
||||
|
||||
case INTUOSHT:
|
||||
+ if (features->touch_max &&
|
||||
+ features->device_type == BTN_TOOL_FINGER) {
|
||||
+ input_dev->evbit[0] |= BIT_MASK(EV_SW);
|
||||
+ __set_bit(SW_MUTE_DEVICE, input_dev->swbit);
|
||||
+ }
|
||||
+ /* fall through */
|
||||
+
|
||||
case BAMBOO_PT:
|
||||
__clear_bit(ABS_MISC, input_dev->absbit);
|
||||
|
||||
diff --git a/drivers/input/tablet/wacom_wac.h b/drivers/input/tablet/wacom_wac.h
|
||||
index 854cceb..3600cf7 100644
|
||||
--- a/drivers/input/tablet/wacom_wac.h
|
||||
+++ b/drivers/input/tablet/wacom_wac.h
|
||||
@@ -55,6 +55,7 @@
|
||||
#define WACOM_REPORT_TPC1FGE 18
|
||||
#define WACOM_REPORT_24HDT 1
|
||||
#define WACOM_REPORT_WL 128
|
||||
+#define WACOM_REPORT_USB 192
|
||||
|
||||
/* device quirks */
|
||||
#define WACOM_QUIRK_MULTI_INPUT 0x0001
|
||||
@@ -131,6 +132,10 @@ struct wacom_features {
|
||||
struct wacom_shared {
|
||||
bool stylus_in_proximity;
|
||||
bool touch_down;
|
||||
+ /* for wireless device to access USB interfaces */
|
||||
+ unsigned touch_max;
|
||||
+ int type;
|
||||
+ struct input_dev *touch_input;
|
||||
};
|
||||
|
||||
struct wacom_wac {
|
||||
--
|
||||
1.8.4.2
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
Bugzilla: 953211
|
||||
Upstream-status: Queued for 3.14
|
||||
|
||||
From 3d3ce020cb0335e1fe5074f009cdb5818ecbc50e Mon Sep 17 00:00:00 2001
|
||||
From 4081924b7b6ce876fdb8e8049f1a5ba9c1496483 Mon Sep 17 00:00:00 2001
|
||||
From: Yunkang Tang <tommywill2011@gmail.com>
|
||||
Date: Thu, 26 Dec 2013 14:54:19 -0800
|
||||
Subject: [PATCH] Input: ALPS - add support for "Dolphin" devices
|
||||
|
@ -17,10 +17,10 @@ Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
|||
2 files changed, 179 insertions(+), 42 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
|
||||
index 7c5d72a..a914d8a 100644
|
||||
index 5cf62e3..fb15c64 100644
|
||||
--- a/drivers/input/mouse/alps.c
|
||||
+++ b/drivers/input/mouse/alps.c
|
||||
@@ -257,6 +257,57 @@ static void alps_process_packet_v1_v2(struct psmouse *psmouse)
|
||||
@@ -277,6 +277,57 @@ static void alps_process_packet_v1_v2(struct psmouse *psmouse)
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -78,7 +78,7 @@ index 7c5d72a..a914d8a 100644
|
|||
* Process bitmap data from v3 and v4 protocols. Returns the number of
|
||||
* fingers detected. A return value of 0 means at least one of the
|
||||
* bitmaps was empty.
|
||||
@@ -461,7 +512,8 @@ static void alps_decode_buttons_v3(struct alps_fields *f, unsigned char *p)
|
||||
@@ -481,7 +532,8 @@ static void alps_decode_buttons_v3(struct alps_fields *f, unsigned char *p)
|
||||
f->ts_middle = !!(p[3] & 0x40);
|
||||
}
|
||||
|
||||
|
@ -88,7 +88,7 @@ index 7c5d72a..a914d8a 100644
|
|||
{
|
||||
f->first_mp = !!(p[4] & 0x40);
|
||||
f->is_mp = !!(p[0] & 0x40);
|
||||
@@ -482,48 +534,61 @@ static void alps_decode_pinnacle(struct alps_fields *f, unsigned char *p)
|
||||
@@ -502,48 +554,61 @@ static void alps_decode_pinnacle(struct alps_fields *f, unsigned char *p)
|
||||
alps_decode_buttons_v3(f, p);
|
||||
}
|
||||
|
||||
|
@ -171,7 +171,7 @@ index 7c5d72a..a914d8a 100644
|
|||
|
||||
/*
|
||||
* There's no single feature of touchpad position and bitmap packets
|
||||
@@ -540,19 +605,38 @@ static void alps_process_touchpad_packet_v3(struct psmouse *psmouse)
|
||||
@@ -560,19 +625,38 @@ static void alps_process_touchpad_packet_v3(struct psmouse *psmouse)
|
||||
*/
|
||||
if (f.is_mp) {
|
||||
fingers = f.fingers;
|
||||
|
@ -223,7 +223,7 @@ index 7c5d72a..a914d8a 100644
|
|||
} else {
|
||||
priv->multi_packet = 0;
|
||||
}
|
||||
@@ -642,7 +726,7 @@ static void alps_process_packet_v3(struct psmouse *psmouse)
|
||||
@@ -662,7 +746,7 @@ static void alps_process_packet_v3(struct psmouse *psmouse)
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -231,8 +231,8 @@ index 7c5d72a..a914d8a 100644
|
|||
+ alps_process_touchpad_packet_v3_v5(psmouse);
|
||||
}
|
||||
|
||||
static void alps_process_packet_v4(struct psmouse *psmouse)
|
||||
@@ -1519,6 +1603,52 @@ error:
|
||||
static void alps_process_packet_v6(struct psmouse *psmouse)
|
||||
@@ -1709,6 +1793,52 @@ error:
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -285,7 +285,7 @@ index 7c5d72a..a914d8a 100644
|
|||
static int alps_hw_init_dolphin_v1(struct psmouse *psmouse)
|
||||
{
|
||||
struct ps2dev *ps2dev = &psmouse->ps2dev;
|
||||
@@ -1571,13 +1701,13 @@ static void alps_set_defaults(struct alps_data *priv)
|
||||
@@ -1763,13 +1893,13 @@ static void alps_set_defaults(struct alps_data *priv)
|
||||
break;
|
||||
case ALPS_PROTO_V5:
|
||||
priv->hw_init = alps_hw_init_dolphin_v1;
|
||||
|
@ -301,7 +301,7 @@ index 7c5d72a..a914d8a 100644
|
|||
priv->flags = 0;
|
||||
priv->x_max = 1360;
|
||||
priv->y_max = 660;
|
||||
@@ -1645,11 +1775,13 @@ static int alps_identify(struct psmouse *psmouse, struct alps_data *priv)
|
||||
@@ -1845,11 +1975,13 @@ static int alps_identify(struct psmouse *psmouse, struct alps_data *priv)
|
||||
if (alps_match_table(psmouse, priv, e7, ec) == 0) {
|
||||
return 0;
|
||||
} else if (e7[0] == 0x73 && e7[1] == 0x03 && e7[2] == 0x50 &&
|
||||
|
@ -319,12 +319,12 @@ index 7c5d72a..a914d8a 100644
|
|||
priv->proto_version = ALPS_PROTO_V3;
|
||||
alps_set_defaults(priv);
|
||||
diff --git a/drivers/input/mouse/alps.h b/drivers/input/mouse/alps.h
|
||||
index eee5985..c5c53f4 100644
|
||||
index 704f0f9..03f88b6 100644
|
||||
--- a/drivers/input/mouse/alps.h
|
||||
+++ b/drivers/input/mouse/alps.h
|
||||
@@ -18,6 +18,10 @@
|
||||
#define ALPS_PROTO_V4 4
|
||||
@@ -19,6 +19,10 @@
|
||||
#define ALPS_PROTO_V5 5
|
||||
#define ALPS_PROTO_V6 6
|
||||
|
||||
+#define DOLPHIN_COUNT_PER_ELECTRODE 64
|
||||
+#define DOLPHIN_PROFILE_XOFFSET 8 /* x-electrode offset */
|
||||
|
@ -333,7 +333,7 @@ index eee5985..c5c53f4 100644
|
|||
/**
|
||||
* struct alps_model_info - touchpad ID table
|
||||
* @signature: E7 response string to match.
|
||||
@@ -145,7 +149,8 @@ struct alps_data {
|
||||
@@ -146,7 +150,8 @@ struct alps_data {
|
||||
|
||||
int (*hw_init)(struct psmouse *psmouse);
|
||||
void (*process_packet)(struct psmouse *psmouse);
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,23 +0,0 @@
|
|||
Bugzilla: 1012025
|
||||
Upstream-status: An initial work around for the cpsw driver issue trying to access HW registers
|
||||
with clock disabled. Upstream is working on a proper fix with the hope to land it in 3.13.
|
||||
|
||||
--- linux-3.12.4-1.fc20.x86_64/drivers/net/ethernet/ti/cpsw.c.orig 2013-12-11 20:52:41.576478796 +0000
|
||||
+++ linux-3.12.4-1.fc20.x86_64/drivers/net/ethernet/ti/cpsw.c 2013-12-11 20:55:14.418692261 +0000
|
||||
@@ -2001,6 +2001,8 @@
|
||||
goto clean_cpsw_iores_ret;
|
||||
}
|
||||
priv->regs = ss_regs;
|
||||
+
|
||||
+ pm_runtime_get_sync(&pdev->dev);
|
||||
priv->version = __raw_readl(&priv->regs->id_ver);
|
||||
priv->host_port = HOST_PORT_NUM;
|
||||
|
||||
@@ -2161,6 +2163,7 @@
|
||||
goto clean_irq_ret;
|
||||
}
|
||||
}
|
||||
+ pm_runtime_put_sync(&pdev->dev);
|
||||
|
||||
return 0;
|
||||
|
|
@ -6,8 +6,12 @@ CONFIG_FB_SSD1307=m
|
|||
CONFIG_HW_PERF_EVENTS=y
|
||||
CONFIG_MMC=y
|
||||
CONFIG_NFS_FS=y
|
||||
|
||||
# CONFIG_PID_IN_CONTEXTIDR is not set
|
||||
|
||||
# CONFIG_CPU_BIG_ENDIAN is not set
|
||||
# CONFIG_BIG_LITTLE is not set
|
||||
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_SYSFS=y
|
||||
|
||||
|
@ -20,10 +24,17 @@ CONFIG_BACKLIGHT_PWM=m
|
|||
CONFIG_INPUT_PWM_BEEPER=m
|
||||
CONFIG_ARM_SP805_WATCHDOG=m
|
||||
CONFIG_ARM_ARCH_TIMER=y
|
||||
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
|
||||
# CONFIG_ARM_DT_BL_CPUFREQ is not set
|
||||
CONFIG_NR_CPUS=8
|
||||
|
||||
CONFIG_ARM_DMA_USE_IOMMU=y
|
||||
CONFIG_SWIOTLB=y
|
||||
CONFIG_DMA_VIRTUAL_CHANNELS=y
|
||||
CONFIG_FB_SIMPLE=y
|
||||
|
||||
CONFIG_HAVE_PERF_REGS=y
|
||||
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
|
||||
|
||||
# ARM AMBA generic HW
|
||||
CONFIG_ARM_AMBA=y
|
||||
|
@ -88,10 +99,12 @@ CONFIG_MTD_PHYSMAP_OF=m
|
|||
# GPIO
|
||||
CONFIG_GPIO_DEVRES=y
|
||||
CONFIG_GPIO_GENERIC=m
|
||||
CONFIG_GPIO_GENERIC_PLATFORM=m
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_MDIO_GPIO=m
|
||||
CONFIG_BACKLIGHT_GPIO=m
|
||||
CONFIG_POWER_RESET_GPIO=y
|
||||
CONFIG_POWER_RESET_RESTART=y
|
||||
|
||||
|
@ -108,17 +121,24 @@ CONFIG_I2C_MUX_PCA9541=m
|
|||
CONFIG_SENSORS_IIO_HWMON=m
|
||||
CONFIG_IIO_SYSFS_TRIGGER=m
|
||||
|
||||
# PHY framework
|
||||
CONFIG_GENERIC_PHY=m
|
||||
|
||||
# MFD
|
||||
CONFIG_MFD_CORE=m
|
||||
|
||||
CONFIG_SMC91X=m
|
||||
CONFIG_SMC911X=m
|
||||
|
||||
CONFIG_THERMAL_GOV_USER_SPACE=y
|
||||
|
||||
# CONFIG_CRYPTO_TEST is not set
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE is not set
|
||||
# CONFIG_XEN is not set
|
||||
# CONFIG_DRM_RCAR_DU is not set
|
||||
# CONFIG_I2C_RCAR is not set
|
||||
# CONFIG_DRM_SHMOBILE is not set
|
||||
# CONFIG_I2C_SH_MOBILE is not set
|
||||
# CONFIG_MMC_DW_SOCFPGA is not set
|
||||
# CONFIG_ARM_SMMU is not set
|
||||
# CONFIG_I2C_NOMADIK is not set
|
||||
|
@ -126,6 +146,10 @@ CONFIG_SMC911X=m
|
|||
# CONFIG_LEDS_RENESAS_TPU is not set
|
||||
# CONFIG_LOCK_STAT is not set
|
||||
|
||||
# CONFIG_DRM_ARMADA is not set
|
||||
# CONFIG_DRM_TEGRA is not set
|
||||
# CONFIG_SHMOBILE_IOMMU is not set
|
||||
|
||||
### turn off things which make no sense on embedded SoC
|
||||
|
||||
# core
|
||||
|
@ -150,4 +174,7 @@ CONFIG_SMC911X=m
|
|||
# CONFIG_SCSI_CXGB3_ISCSI is not set
|
||||
# CONFIG_SCSI_CXGB4_ISCSI is not set
|
||||
|
||||
# serial
|
||||
# CONFIG_SERIAL_SH_SCI is not set
|
||||
|
||||
CONFIG_CRASH=m
|
||||
|
|
69
config-armv7
69
config-armv7
|
@ -4,7 +4,9 @@
|
|||
# CONFIG_ARCH_KEYSTONE is not set
|
||||
CONFIG_ARCH_MVEBU=y
|
||||
CONFIG_ARCH_MXC=y
|
||||
CONFIG_ARCH_OMAP2PLUS=y
|
||||
# CONFIG_ARCH_OMAP2 is not set
|
||||
CONFIG_ARCH_OMAP3=y
|
||||
CONFIG_ARCH_OMAP4=y
|
||||
CONFIG_ARCH_PICOXCELL=y
|
||||
CONFIG_ARCH_ROCKCHIP=y
|
||||
CONFIG_ARCH_SOCFPGA=y
|
||||
|
@ -48,41 +50,33 @@ CONFIG_SPI_ORION=m
|
|||
CONFIG_USB_MV_UDC=m
|
||||
CONFIG_MVEBU_MBUS=y
|
||||
CONFIG_ARMADA_THERMAL=m
|
||||
CONFIG_DRM_ARMADA=m
|
||||
|
||||
# omap
|
||||
CONFIG_ARCH_OMAP2PLUS_TYPICAL=y
|
||||
# CONFIG_ARCH_OMAP2 is not set
|
||||
CONFIG_ARCH_OMAP3=y
|
||||
CONFIG_ARCH_OMAP4=y
|
||||
CONFIG_SOC_OMAP5=y
|
||||
# CONFIG_SOC_DRA7XX is not set
|
||||
# CONFIG_SOC_OMAP2420 is not set
|
||||
# CONFIG_SOC_OMAP2430 is not set
|
||||
CONFIG_SOC_OMAP3430=y
|
||||
CONFIG_SOC_TI81XX=y
|
||||
CONFIG_MACH_OMAP_GENERIC=y
|
||||
CONFIG_MACH_OMAP3_BEAGLE=y
|
||||
CONFIG_MACH_CRANEBOARD=y
|
||||
CONFIG_MACH_DEVKIT8000=y
|
||||
# CONFIG_MACH_NOKIA_RX51 is not set
|
||||
CONFIG_MACH_OMAP_3630SDP=y
|
||||
CONFIG_MACH_OMAP_GENERIC=y
|
||||
CONFIG_MACH_OMAP_LDP=y
|
||||
CONFIG_MACH_OMAP3_BEAGLE=y
|
||||
# CONFIG_MACH_OMAP3EVM is not set
|
||||
CONFIG_MACH_OMAP_3430SDP=y
|
||||
CONFIG_MACH_OMAP3530_LV_SOM=y
|
||||
# CONFIG_MACH_OMAP3517EVM is not set
|
||||
CONFIG_MACH_OMAP3_PANDORA=y
|
||||
CONFIG_MACH_OMAP3_TORPEDO=y
|
||||
CONFIG_MACH_OVERO=y
|
||||
# CONFIG_MACH_OMAP3EVM is not set
|
||||
# CONFIG_MACH_OMAP3517EVM is not set
|
||||
CONFIG_MACH_CRANEBOARD=y
|
||||
CONFIG_MACH_OMAP3_PANDORA=y
|
||||
CONFIG_MACH_TOUCHBOOK=y
|
||||
CONFIG_MACH_OMAP_3430SDP=y
|
||||
# CONFIG_MACH_NOKIA_N8X0 is not set
|
||||
# CONFIG_MACH_NOKIA_RM680 is not set
|
||||
# CONFIG_MACH_NOKIA_RX51 is not set
|
||||
CONFIG_MACH_OMAP_ZOOM2=y
|
||||
CONFIG_MACH_OMAP_ZOOM3=y
|
||||
CONFIG_MACH_CM_T35=y
|
||||
CONFIG_MACH_CM_T3517=y
|
||||
CONFIG_MACH_IGEP0030=y
|
||||
CONFIG_MACH_SBC3530=y
|
||||
CONFIG_MACH_OMAP_3630SDP=y
|
||||
# CONFIG_MACH_TI8168EVM is not set
|
||||
# CONFIG_MACH_TI8148EVM is not set
|
||||
|
||||
|
@ -107,7 +101,6 @@ CONFIG_HWSPINLOCK_OMAP=m
|
|||
CONFIG_OMAP3_EMU=y
|
||||
# CONFIG_OMAP3_SDRC_AC_TIMING is not set
|
||||
CONFIG_OMAP_WATCHDOG=m
|
||||
CONFIG_TWL4030_WATCHDOG=m
|
||||
|
||||
CONFIG_SERIAL_OMAP=y
|
||||
CONFIG_SERIAL_OMAP_CONSOLE=y
|
||||
|
@ -138,7 +131,7 @@ CONFIG_BACKLIGHT_PANDORA=m
|
|||
CONFIG_OMAP_OCP2SCP=m
|
||||
CONFIG_USB_EHCI_HCD_OMAP=m
|
||||
CONFIG_USB_OHCI_HCD_PLATFORM=m
|
||||
CONFIG_USB_OHCI_HCD_OMAP3=y
|
||||
CONFIG_USB_OHCI_HCD_OMAP3=m
|
||||
CONFIG_USB_MUSB_AM35X=m
|
||||
CONFIG_USB_MUSB_OMAP2PLUS=m
|
||||
CONFIG_OMAP_CONTROL_USB=m
|
||||
|
@ -182,7 +175,7 @@ CONFIG_TOUCHSCREEN_TI_TSCADC=m
|
|||
|
||||
# OMAP thermal temp. Can likely be built as module but doesn't autoload so build in to ensure performance on PandaES
|
||||
CONFIG_OMAP_BANDGAP=y
|
||||
CONFIG_TI_SOC_THERMAL=m
|
||||
CONFIG_TI_SOC_THERMAL=y
|
||||
CONFIG_TI_THERMAL=y
|
||||
CONFIG_OMAP4_THERMAL=y
|
||||
CONFIG_OMAP5_THERMAL=y
|
||||
|
@ -192,7 +185,7 @@ CONFIG_POWER_AVS=y
|
|||
CONFIG_POWER_AVS_OMAP=y
|
||||
CONFIG_POWER_AVS_OMAP_CLASS3=y
|
||||
|
||||
CONFIG_ARM_OMAP2PLUS_CPUFREQ=y
|
||||
# CONFIG_ARM_OMAP2PLUS_CPUFREQ is not set
|
||||
|
||||
CONFIG_PWM_TIECAP=m
|
||||
CONFIG_PWM_TIEHRPWM=m
|
||||
|
@ -202,6 +195,7 @@ CONFIG_PWM_TWL_LED=m
|
|||
CONFIG_CRYPTO_DEV_OMAP_SHAM=m
|
||||
CONFIG_CRYPTO_DEV_OMAP_AES=m
|
||||
CONFIG_HW_RANDOM_OMAP=m
|
||||
CONFIG_HW_RANDOM_OMAP3_ROM=m
|
||||
|
||||
CONFIG_DRM_OMAP=m
|
||||
CONFIG_DRM_OMAP_NUM_CRTCS=2
|
||||
|
@ -237,6 +231,7 @@ CONFIG_DISPLAY_PANEL_LGPHILIPS_LB035Q02=m
|
|||
CONFIG_DISPLAY_PANEL_SHARP_LS037V7DW01=m
|
||||
CONFIG_DISPLAY_PANEL_TPO_TD043MTEA1=m
|
||||
CONFIG_DISPLAY_PANEL_NEC_NL8048HL11=m
|
||||
CONFIG_DISPLAY_PANEL_TPO_TD028TTEC1=m
|
||||
|
||||
# Enable V4L2 drivers for OMAP2+
|
||||
CONFIG_MEDIA_CONTROLLER=y
|
||||
|
@ -301,29 +296,28 @@ CONFIG_SOC_AM33XX=y
|
|||
CONFIG_SOC_AM43XX=y
|
||||
CONFIG_AM335X_CONTROL_USB=m
|
||||
CONFIG_AM335X_PHY_USB=m
|
||||
CONFIG_USB_MUSB_AM335X_CHILD=y
|
||||
CONFIG_USB_MUSB_AM335X_CHILD=m
|
||||
CONFIG_TI_CPPI41=m
|
||||
CONFIG_USB_TI_CPPI41_DMA=y
|
||||
CONFIG_MFD_TI_AM335X_TSCADC=m
|
||||
CONFIG_TI_ST=m
|
||||
CONFIG_TI_DAC7512=m
|
||||
CONFIG_TI_DAVINCI_CPDMA=m
|
||||
CONFIG_TI_DAVINCI_EMAC=m
|
||||
CONFIG_TI_DAVINCI_MDIO=m
|
||||
CONFIG_TI_DAVINCI_CPDMA=m
|
||||
CONFIG_TI_CPSW=m
|
||||
CONFIG_TI_CPTS=y
|
||||
CONFIG_TI_CPSW_PHY_SEL=y
|
||||
# CONFIG_TI_CPTS is not set
|
||||
CONFIG_TI_EMIF=m
|
||||
CONFIG_DRM_TILCDC=m
|
||||
CONFIG_SPI_DAVINCI=m
|
||||
CONFIG_SND_DAVINCI_SOC=m
|
||||
CONFIG_REGULATOR_TI_ABB=m
|
||||
CONFIG_TI_PRIV_EDMA=y
|
||||
CONFIG_TI_EDMA=y
|
||||
# Terribly unstable so disable for now
|
||||
# CONFIG_USB_TI_CPPI41_DMA is not set
|
||||
# CONFIG_TI_CPPI41 is not set
|
||||
CONFIG_MFD_TI_AM335X_TSCADC=m
|
||||
CONFIG_CHARGER_BQ24190=m
|
||||
CONFIG_TI_ADC081C=m
|
||||
CONFIG_TI_AM335X_ADC=m
|
||||
CONFIG_PWM_TIPWMSS=y
|
||||
CONFIG_SND_AM33XX_SOC_EVM=m
|
||||
CONFIG_SND_AM335X_SOC_NXPTDA_EVM=m
|
||||
|
||||
# Allwinner a1x
|
||||
CONFIG_PINCTRL_SUNXI=y
|
||||
|
@ -331,6 +325,7 @@ CONFIG_SUNXI_WATCHDOG=m
|
|||
CONFIG_MDIO_SUN4I=m
|
||||
CONFIG_NET_VENDOR_ALLWINNER=y
|
||||
CONFIG_SUN4I_EMAC=m
|
||||
CONFIG_EEPROM_SUNXI_SID=m
|
||||
|
||||
# i.MX
|
||||
CONFIG_MXC_IRQ_PRIOR=y
|
||||
|
@ -344,6 +339,7 @@ CONFIG_MACH_IMX51_DT=y
|
|||
CONFIG_ARM_IMX6Q_CPUFREQ=m
|
||||
CONFIG_IMX_THERMAL=m
|
||||
CONFIG_PATA_IMX=m
|
||||
CONFIG_PCI_IMX6=y
|
||||
CONFIG_USB_CHIPIDEA=m
|
||||
CONFIG_USB_CHIPIDEA_UDC=y
|
||||
CONFIG_USB_CHIPIDEA_HOST=y
|
||||
|
@ -502,6 +498,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m
|
|||
CONFIG_ARCH_TEGRA_2x_SOC=y
|
||||
CONFIG_ARCH_TEGRA_3x_SOC=y
|
||||
# CONFIG_ARCH_TEGRA_114_SOC is not set
|
||||
# CONFIG_ARCH_TEGRA_124_SOC is not set
|
||||
CONFIG_ARM_TEGRA_CPUFREQ=y
|
||||
CONFIG_TEGRA20_MC=y
|
||||
CONFIG_TEGRA30_MC=y
|
||||
|
@ -542,6 +539,10 @@ CONFIG_SND_SOC_TEGRA20_AC97=m
|
|||
CONFIG_SND_SOC_TEGRA30_AHUB=m
|
||||
CONFIG_SND_SOC_TEGRA30_I2S=m
|
||||
|
||||
# bool only, upstream aiming for modular in 3.14
|
||||
# https://lkml.org/lkml/2013/11/18/47
|
||||
# CONFIG_DRM_TEGRA is not set
|
||||
|
||||
# AC100 (PAZ00)
|
||||
CONFIG_MFD_NVEC=y
|
||||
CONFIG_MFD_TPS80031=y
|
||||
|
@ -566,7 +567,6 @@ CONFIG_DRM_TEGRA=y
|
|||
|
||||
CONFIG_CRYPTO_DEV_TEGRA_AES=m
|
||||
|
||||
CONFIG_LEDS_RENESAS_TPU=y
|
||||
CONFIG_GPIO_PCA953X=m
|
||||
|
||||
# OLPC XO
|
||||
|
@ -625,7 +625,6 @@ CONFIG_REGULATOR_MAX8973=m
|
|||
|
||||
# CONFIG_BATTERY_RX51 is not set
|
||||
# CONFIG_IR_RX51 is not set
|
||||
# CONFIG_GENERIC_CPUFREQ_CPU0 is not set
|
||||
# CONFIG_MFD_SMSC is not set
|
||||
# CONFIG_MFD_SEC_CORE is not set
|
||||
# CONFIG_MFD_LP8788 is not set
|
||||
|
|
|
@ -8,6 +8,7 @@ CONFIG_ARM=y
|
|||
CONFIG_ARCH_MULTI_V7=y
|
||||
|
||||
CONFIG_CMDLINE=""
|
||||
CONFIG_CMDLINE_FROM_BOOTLOADER=y
|
||||
CONFIG_HAVE_ARM_ARCH_TIMER=y
|
||||
CONFIG_HAVE_ARM_TWD=y
|
||||
CONFIG_AEABI=y
|
||||
|
@ -51,6 +52,7 @@ CONFIG_ALWAYS_USE_PERSISTENT_CLOCK=y
|
|||
CONFIG_ARCH_HIGHBANK=y
|
||||
CONFIG_ARCH_VEXPRESS_CA9X4=y
|
||||
CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y
|
||||
# CONFIG_ARCH_VEXPRESS_SPC is not set
|
||||
# CONFIG_ARCH_BCM is not set
|
||||
# CONFIG_PLAT_SPEAR is not set
|
||||
# CONFIG_ARCH_STI is not set
|
||||
|
@ -60,12 +62,11 @@ CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y
|
|||
# CONFIG_ARCH_SHMOBILE_MULTI is not set
|
||||
|
||||
# highbank
|
||||
# 2013/04/19 - stability issues
|
||||
CONFIG_EDAC_HIGHBANK_MC=m
|
||||
CONFIG_EDAC_HIGHBANK_L2=m
|
||||
CONFIG_SATA_HIGHBANK=m
|
||||
CONFIG_ARM_HIGHBANK_CPUFREQ=m
|
||||
CONFIG_ARM_HIGHBANK_CPUIDLE=y
|
||||
# CONFIG_ARM_HIGHBANK_CPUIDLE is not set
|
||||
|
||||
# errata
|
||||
# v5/v6
|
||||
|
@ -110,16 +111,21 @@ CONFIG_RCU_FANOUT=32
|
|||
CONFIG_CPU_IDLE=y
|
||||
# CONFIG_CPU_IDLE_GOV_LADDER is not set
|
||||
CONFIG_CPU_IDLE_GOV_MENU=y
|
||||
CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
|
||||
# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
|
||||
|
||||
# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set
|
||||
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
|
||||
CONFIG_LSM_MMAP_MIN_ADDR=32768
|
||||
|
||||
CONFIG_ARM_GLOBAL_TIMER=y
|
||||
|
||||
CONFIG_XZ_DEC_ARM=y
|
||||
|
||||
# Power management
|
||||
CONFIG_PM_OPP=y
|
||||
CONFIG_ARM_CPU_SUSPEND=y
|
||||
CONFIG_GENERIC_CPUFREQ_CPU0=m
|
||||
|
||||
CONFIG_LOCAL_TIMERS=y
|
||||
CONFIG_UACCESS_WITH_MEMCPY=y
|
||||
|
@ -157,6 +163,13 @@ CONFIG_ARM_SP805_WATCHDOG=m
|
|||
CONFIG_GPIO_PL061=y
|
||||
CONFIG_PL320_MBOX=y
|
||||
|
||||
CONFIG_REGMAP=y
|
||||
CONFIG_REGMAP_I2C=m
|
||||
CONFIG_REGMAP_SPI=m
|
||||
CONFIG_REGMAP_SPMI=m
|
||||
CONFIG_REGMAP_MMIO=m
|
||||
CONFIG_REGMAP_IRQ=y
|
||||
|
||||
# usb
|
||||
CONFIG_USB_OTG=y
|
||||
# CONFIG_USB_OTG_WHITELIST is not set
|
||||
|
@ -245,23 +258,23 @@ CONFIG_GENERIC_PINCONF=y
|
|||
# CONFIG_PINCTRL_EXYNOS4 is not set
|
||||
|
||||
# GPIO
|
||||
CONFIG_GPIO_GENERIC_PLATFORM=m
|
||||
# CONFIG_GPIO_EM is not set
|
||||
CONFIG_GPIO_74X164=m
|
||||
CONFIG_GPIO_ADNP=m
|
||||
CONFIG_GPIO_MCP23S08=m
|
||||
CONFIG_SERIAL_8250_EM=m
|
||||
CONFIG_INPUT_GPIO_TILT_POLLED=m
|
||||
CONFIG_MDIO_BUS_MUX_GPIO=m
|
||||
CONFIG_MDIO_BUS_MUX_MMIOREG=m
|
||||
CONFIG_LEDS_GPIO=m
|
||||
CONFIG_GPIO_MAX7301=m
|
||||
CONFIG_GPIO_MC33880=m
|
||||
CONFIG_GPIO_74X164=m
|
||||
CONFIG_GPIO_TPS65910=y
|
||||
CONFIG_GPIO_TPS65912=m
|
||||
CONFIG_LEDS_GPIO=m
|
||||
CONFIG_MDIO_BUS_MUX_GPIO=m
|
||||
CONFIG_MDIO_BUS_MUX_MMIOREG=m
|
||||
CONFIG_INPUT_GPIO_TILT_POLLED=m
|
||||
CONFIG_INPUT_MATRIXKMAP=m
|
||||
CONFIG_KEYBOARD_GPIO=m
|
||||
CONFIG_KEYBOARD_MATRIX=m
|
||||
# CONFIG_GPIO_RCAR is not set
|
||||
CONFIG_W1_MASTER_GPIO=m
|
||||
CONFIG_CHARGER_GPIO=m
|
||||
|
||||
# SPI
|
||||
CONFIG_SPI=y
|
||||
|
@ -291,6 +304,11 @@ CONFIG_I2C_DESIGNWARE_PLATFORM=m
|
|||
# HW crypto and rng
|
||||
CONFIG_CRYPTO_SHA1_ARM=m
|
||||
CONFIG_CRYPTO_AES_ARM=m
|
||||
# CONFIG_CRYPTO_AES_ARM_BS is not set
|
||||
|
||||
# DMA
|
||||
CONFIG_TI_PRIV_EDMA=y
|
||||
CONFIG_TI_EDMA=y
|
||||
|
||||
# EDAC
|
||||
CONFIG_EDAC=y
|
||||
|
@ -338,6 +356,8 @@ CONFIG_USB_DWC3_EXYNOS=m
|
|||
CONFIG_USB_DWC3_PCI=m
|
||||
# CONFIG_USB_DWC3_DEBUG is not set
|
||||
CONFIG_DW_WATCHDOG=m
|
||||
CONFIG_PCIE_DW=y
|
||||
CONFIG_PCI_EXYNOS=y
|
||||
|
||||
# Sound
|
||||
CONFIG_SND_SOC=m
|
||||
|
@ -407,6 +427,10 @@ CONFIG_REGULATOR_TPS65912=m
|
|||
CONFIG_REGULATOR_TPS80031=m
|
||||
|
||||
CONFIG_CHARGER_MANAGER=y
|
||||
CONFIG_CHARGER_BQ2415X=m
|
||||
CONFIG_CHARGER_BQ24190=m
|
||||
CONFIG_CHARGER_BQ24735=m
|
||||
CONFIG_CHARGER_GPIO=m
|
||||
CONFIG_CHARGER_TPS65090=m
|
||||
CONFIG_PDA_POWER=m
|
||||
CONFIG_GENERIC_ADC_BATTERY=m
|
||||
|
@ -468,6 +492,7 @@ CONFIG_SRAM=y
|
|||
|
||||
# Ethernet
|
||||
CONFIG_KS8851=m
|
||||
CONFIG_KS8851_MLL=m
|
||||
CONFIG_ENC28J60=m
|
||||
CONFIG_LIBERTAS_SPI=m
|
||||
CONFIG_P54_SPI=m
|
||||
|
@ -499,8 +524,11 @@ CONFIG_UBIFS_FS_LZO=y
|
|||
CONFIG_UBIFS_FS_ZLIB=y
|
||||
# CONFIG_UBIFS_FS_DEBUG is not set
|
||||
|
||||
# Sensors
|
||||
CONFIG_SENSORS_HTU21=m
|
||||
# Chromebook
|
||||
CONFIG_MFD_CROS_EC=m
|
||||
CONFIG_MFD_CROS_EC_I2C=m
|
||||
CONFIG_MFD_CROS_EC_SPI=m
|
||||
CONFIG_KEYBOARD_CROS_EC=m
|
||||
|
||||
# Should be in generic
|
||||
CONFIG_BPF_JIT=y
|
||||
|
@ -529,6 +557,7 @@ CONFIG_BPF_JIT=y
|
|||
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
|
||||
# CONFIG_LATTICE_ECP3_CONFIG is not set
|
||||
# CONFIG_M25PXX_USE_FAST_READ is not set
|
||||
# CONFIG_SERIAL_8250_EM is not set
|
||||
# CONFIG_SERIAL_MAX3100 is not set
|
||||
# CONFIG_SERIAL_MAX310X is not set
|
||||
# CONFIG_SERIAL_IFX6X60 is not set
|
||||
|
|
|
@ -10,6 +10,7 @@ CONFIG_ARCH_EXYNOS5=y
|
|||
# CONFIG_ARCH_OMAP4 is not set
|
||||
# CONFIG_SOC_OMAP5 is not set
|
||||
# CONFIG_SOC_AM33XX is not set
|
||||
# CONFIG_SND_AM33XX_SOC_EVM is not set
|
||||
# CONFIG_SOC_AM43XX is not set
|
||||
# CONFIG_ARCH_ROCKCHIP is not set
|
||||
# CONFIG_ARCH_SOCFPGA is not set
|
||||
|
@ -58,7 +59,6 @@ CONFIG_XEN_GNTDEV=y
|
|||
CONFIG_XEN_GRANT_DEV_ALLOC=m
|
||||
CONFIG_XEN_WDT=m
|
||||
|
||||
CONFIG_MACH_EXYNOS5_DT=y
|
||||
CONFIG_SERIAL_SAMSUNG=y
|
||||
CONFIG_SERIAL_SAMSUNG_CONSOLE=y
|
||||
# CONFIG_SAMSUNG_PM_DEBUG is not set
|
||||
|
@ -69,7 +69,6 @@ CONFIG_SOC_EXYNOS5440=y
|
|||
# CONFIG_ARM_EXYNOS5250_CPUFREQ is not set
|
||||
# CONFIG_ARM_EXYNOS5440_CPUFREQ is not set
|
||||
# CONFIG_ARM_EXYNOS_CPUFREQ is not set
|
||||
# CONFIG_GENERIC_CPUFREQ_CPU0 is not set
|
||||
CONFIG_EXYNOS_THERMAL=m
|
||||
CONFIG_PCI_EXYNOS=y
|
||||
|
||||
|
@ -139,4 +138,5 @@ CONFIG_S3C_LOWLEVEL_UART_PORT=1
|
|||
# CONFIG_TEGRA_HOST1X is not set
|
||||
# CONFIG_SPI_DAVINCI is not set
|
||||
# CONFIG_I2C_DAVINCI is not set
|
||||
# CONFIG_SND_DAVINCI_SOC is not set
|
||||
# CONFIG_TI_SOC_THERMAL is not set
|
||||
|
|
|
@ -104,6 +104,7 @@ CONFIG_KDB_KEYBOARD=y
|
|||
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
||||
|
||||
CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
|
||||
CONFIG_PERCPU_TEST=m
|
||||
CONFIG_TEST_LIST_SORT=y
|
||||
CONFIG_TEST_STRING_HELPERS=m
|
||||
|
||||
|
|
|
@ -61,7 +61,7 @@ CONFIG_PID_NS=y
|
|||
CONFIG_UTS_NS=y
|
||||
CONFIG_IPC_NS=y
|
||||
CONFIG_NET_NS=y
|
||||
# CONFIG_USER_NS is not set
|
||||
CONFIG_USER_NS=y
|
||||
# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set
|
||||
|
||||
CONFIG_POSIX_MQUEUE=y
|
||||
|
@ -72,6 +72,7 @@ CONFIG_PREEMPT_VOLUNTARY=y
|
|||
CONFIG_SLUB=y
|
||||
CONFIG_SLUB_CPU_PARTIAL=y
|
||||
# CONFIG_SLUB_STATS is not set
|
||||
# CONFIG_SLUB_DEBUG_ON is not set
|
||||
|
||||
# CONFIG_AD525X_DPOT is not set
|
||||
# CONFIG_ATMEL_PWM is not set
|
||||
|
@ -309,6 +310,7 @@ CONFIG_HOTPLUG_PCI_ACPI_IBM=m
|
|||
# Block devices
|
||||
#
|
||||
CONFIG_BLK_DEV=y
|
||||
CONFIG_BLK_DEV_NULL_BLK=m
|
||||
CONFIG_BLK_DEV_FD=m
|
||||
# CONFIG_PARIDE is not set
|
||||
|
||||
|
@ -325,6 +327,7 @@ CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
|
|||
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
|
||||
CONFIG_BLK_DEV_NBD=m
|
||||
CONFIG_BLK_DEV_NVME=m
|
||||
CONFIG_BLK_DEV_SKD=m # 64-bit only but easier to put here
|
||||
CONFIG_BLK_DEV_OSD=m
|
||||
CONFIG_BLK_DEV_RAM=m
|
||||
CONFIG_BLK_DEV_RAM_COUNT=16
|
||||
|
@ -786,6 +789,7 @@ CONFIG_INET6_AH=m
|
|||
CONFIG_INET6_ESP=m
|
||||
CONFIG_INET6_IPCOMP=m
|
||||
CONFIG_IPV6_MIP6=y
|
||||
CONFIG_IPV6_VTI=m
|
||||
CONFIG_IPV6_SIT=m
|
||||
CONFIG_IPV6_SIT_6RD=y
|
||||
CONFIG_IPV6_TUNNEL=m
|
||||
|
@ -982,6 +986,30 @@ CONFIG_NF_NAT_IPV6=m
|
|||
CONFIG_IP6_NF_TARGET_MASQUERADE=m
|
||||
# CONFIG_IP6_NF_TARGET_NPT is not set
|
||||
|
||||
# nf_tables support
|
||||
CONFIG_NF_TABLES=m
|
||||
CONFIG_NFT_EXTHDR=m
|
||||
CONFIG_NFT_META=m
|
||||
CONFIG_NFT_CT=m
|
||||
CONFIG_NFT_RBTREE=m
|
||||
CONFIG_NFT_HASH=m
|
||||
CONFIG_NFT_COUNTER=m
|
||||
CONFIG_NFT_LOG=m
|
||||
CONFIG_NFT_LIMIT=m
|
||||
CONFIG_NFT_NAT=m
|
||||
CONFIG_NFT_COMPAT=m
|
||||
|
||||
CONFIG_NF_TABLES_IPV4=m
|
||||
CONFIG_NFT_REJECT_IPV4=m
|
||||
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
|
||||
CONFIG_NFT_CHAIN_NAT_IPV4=m
|
||||
CONFIG_NF_TABLES_ARP=m
|
||||
|
||||
CONFIG_NF_TABLES_IPV6=m
|
||||
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
|
||||
CONFIG_NFT_CHAIN_NAT_IPV6=m
|
||||
|
||||
CONFIG_NF_TABLES_BRIDGE=m
|
||||
#
|
||||
# Bridge: Netfilter Configuration
|
||||
#
|
||||
|
@ -1029,7 +1057,9 @@ CONFIG_IP_SET_HASH_IP=m
|
|||
CONFIG_IP_SET_HASH_IPPORT=m
|
||||
CONFIG_IP_SET_HASH_IPPORTIP=m
|
||||
CONFIG_IP_SET_HASH_IPPORTNET=m
|
||||
CONFIG_IP_SET_HASH_NETPORTNET=m
|
||||
CONFIG_IP_SET_HASH_NET=m
|
||||
CONFIG_IP_SET_HASH_NETNET=m
|
||||
CONFIG_IP_SET_HASH_NETPORT=m
|
||||
CONFIG_IP_SET_HASH_NETIFACE=m
|
||||
CONFIG_IP_SET_LIST_SET=m
|
||||
|
@ -1112,6 +1142,7 @@ CONFIG_NET_CLS=y
|
|||
CONFIG_NET_CLS_ACT=y
|
||||
CONFIG_NET_CLS_BASIC=m
|
||||
CONFIG_NET_CLS_CGROUP=y
|
||||
CONFIG_NET_CLS_BPF=m
|
||||
CONFIG_NET_CLS_FLOW=m
|
||||
CONFIG_NET_CLS_FW=m
|
||||
CONFIG_NET_CLS_IND=y
|
||||
|
@ -1594,6 +1625,8 @@ CONFIG_ATH10K_PCI=m
|
|||
# CONFIG_ATH10K_DEBUG is not set
|
||||
# CONFIG_ATH10K_TRACING is not set
|
||||
CONFIG_ATH10K_DEBUGFS=y
|
||||
CONFIG_WCN36XX=m
|
||||
# CONFIG_WCN36XX_DEBUGFS is not set
|
||||
CONFIG_WIL6210=m
|
||||
CONFIG_WIL6210_ISR_COR=y
|
||||
# CONFIG_WIL6210_TRACING is not set
|
||||
|
@ -1775,6 +1808,7 @@ CONFIG_BAYCOM_EPP=m
|
|||
CONFIG_YAM=m
|
||||
|
||||
CONFIG_NFC=m
|
||||
CONFIG_NFC_DIGITAL=m
|
||||
CONFIG_NFC_NCI=m
|
||||
CONFIG_NFC_HCI=m
|
||||
CONFIG_NFC_SHDLC=y
|
||||
|
@ -1784,6 +1818,7 @@ CONFIG_NFC_SIM=m
|
|||
#
|
||||
# Near Field Communication (NFC) devices
|
||||
#
|
||||
CONFIG_NFC_PORT100=m
|
||||
CONFIG_NFC_PN544=m
|
||||
CONFIG_NFC_PN544_I2C=m
|
||||
CONFIG_NFC_PN533=m
|
||||
|
@ -2050,6 +2085,7 @@ CONFIG_SERIO_ARC_PS2=m
|
|||
# CONFIG_SERIO_OLPC_APSP is not set
|
||||
# CONFIG_SERIO_PARKBD is not set
|
||||
# CONFIG_SERIO_PCIPS2 is not set
|
||||
# CONFIG_SERIO_LIBPS2 is not set
|
||||
|
||||
#
|
||||
# Input Device Drivers
|
||||
|
@ -2057,6 +2093,7 @@ CONFIG_SERIO_ARC_PS2=m
|
|||
CONFIG_INPUT_KEYBOARD=y
|
||||
CONFIG_KEYBOARD_ATKBD=y
|
||||
# CONFIG_KEYBOARD_SUNKBD is not set
|
||||
# CONFIG_KEYBOARD_SH_KEYSC is not set
|
||||
# CONFIG_KEYBOARD_XTKBD is not set
|
||||
# CONFIG_KEYBOARD_MATRIX is not set
|
||||
# CONFIG_KEYBOARD_NEWTON is not set
|
||||
|
@ -2141,6 +2178,7 @@ CONFIG_TOUCHSCREEN_MTOUCH=m
|
|||
CONFIG_TOUCHSCREEN_MCS5000=m
|
||||
CONFIG_TOUCHSCREEN_MK712=m
|
||||
CONFIG_TOUCHSCREEN_PENMOUNT=m
|
||||
# CONFIG_TOUCHSCREEN_SUR40 is not set
|
||||
# CONFIG_TOUCHSCREEN_TPS6507X is not set
|
||||
CONFIG_TOUCHSCREEN_TSC_SERIO=m
|
||||
CONFIG_TOUCHSCREEN_TSC2007=m
|
||||
|
@ -2161,6 +2199,7 @@ CONFIG_TOUCHSCREEN_ATMEL_MXT=m
|
|||
# CONFIG_TOUCHSCREEN_MAX11801 is not set
|
||||
CONFIG_TOUCHSCREEN_AUO_PIXCIR=m
|
||||
CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m
|
||||
CONFIG_TOUCHSCREEN_ZFORCE=m
|
||||
|
||||
CONFIG_INPUT_MISC=y
|
||||
CONFIG_INPUT_PCSPKR=m
|
||||
|
@ -2207,6 +2246,8 @@ CONFIG_TIFM_7XX1=m
|
|||
CONFIG_TCG_TPM=m
|
||||
CONFIG_TCG_TIS=m
|
||||
# CONFIG_TCG_TIS_I2C_INFINEON is not set
|
||||
# CONFIG_TCG_TIS_I2C_ATMEL is not set
|
||||
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
|
||||
CONFIG_TCG_NSC=m
|
||||
CONFIG_TCG_ATMEL=m
|
||||
# CONFIG_TCG_INFINEON is not set
|
||||
|
@ -2495,8 +2536,12 @@ CONFIG_HID_SENSOR_ENUM_BASE_QUIRKS=y
|
|||
# CONFIG_MCP4725 is not set
|
||||
# CONFIG_ITG3200 is not set
|
||||
# CONFIG_APDS9300 is not set
|
||||
# CONFIG_CM36651 is not set
|
||||
# CONFIG_GP2AP020A00F is not set
|
||||
# CONFIG_TSL2583 is not set
|
||||
# CONFIG_TSL2x7x is not set
|
||||
# CONFIG_TCS3472 is not set
|
||||
# CONFIG_TSL4531 is not set
|
||||
# CONFIG_NAU7802 is not set
|
||||
# CONFIG_TI_ADC081C is not set
|
||||
# CONFIG_EXYNOS_ADC is not set
|
||||
|
@ -2509,6 +2554,7 @@ CONFIG_IIO_ST_ACCEL_3AXIS=m
|
|||
# CONFIG_SENSORS_TSL2563 is not set
|
||||
# CONFIG_VCNL4000 is not set
|
||||
# CONFIG_AK8975 is not set
|
||||
# CONFIG_MAG3110 is not set
|
||||
# CONFIG_TMP006 is not set
|
||||
# CONFIG_IIO_ST_PRESS is not set
|
||||
# CONFIG_KXSD9 is not set
|
||||
|
@ -2520,6 +2566,7 @@ CONFIG_IIO_ST_ACCEL_3AXIS=m
|
|||
# CONFIG_AD7887 is not set
|
||||
# CONFIG_AD7923 is not set
|
||||
# CONFIG_MCP320X is not set
|
||||
# CONFIG_MCP3422 is not set
|
||||
# CONFIG_AD8366 is not set
|
||||
# CONFIG_AD5360 is not set
|
||||
# CONFIG_AD5421 is not set
|
||||
|
@ -2775,6 +2822,7 @@ CONFIG_DRM_MGAG200=m # do not enable on f17 or older
|
|||
# CONFIG_DRM_SAVAGE is not set
|
||||
CONFIG_DRM_I915=m
|
||||
CONFIG_DRM_I915_KMS=y
|
||||
CONFIG_DRM_I915_FBDEV=y
|
||||
# CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set
|
||||
CONFIG_DRM_VIA=m
|
||||
CONFIG_DRM_NOUVEAU=m
|
||||
|
@ -3329,6 +3377,7 @@ CONFIG_SND_FIREWIRE=y
|
|||
CONFIG_SND_FIREWIRE_SPEAKERS=m
|
||||
CONFIG_SND_ISIGHT=m
|
||||
CONFIG_SND_SCS1X=m
|
||||
CONFIG_SND_DICE=m
|
||||
|
||||
#
|
||||
# Open Sound System
|
||||
|
@ -3464,6 +3513,7 @@ CONFIG_HID_ROCCAT=m
|
|||
CONFIG_HID_ROCCAT_KONE=m
|
||||
CONFIG_HID_SAMSUNG=m
|
||||
CONFIG_HID_SONY=m
|
||||
CONFIG_SONY_FF=y
|
||||
CONFIG_HID_SUNPLUS=m
|
||||
CONFIG_HID_STEELSERIES=m
|
||||
CONFIG_HID_GREENASIA=m
|
||||
|
@ -3600,6 +3650,7 @@ CONFIG_USB_NET_RNDIS_HOST=m
|
|||
CONFIG_USB_NET_CDC_SUBSET=m
|
||||
CONFIG_USB_NET_CDC_EEM=m
|
||||
CONFIG_USB_NET_CDC_NCM=m
|
||||
CONFIG_USB_NET_HUAWEI_CDC_NCM=m
|
||||
CONFIG_USB_NET_CDC_MBIM=m
|
||||
CONFIG_USB_NET_ZAURUS=m
|
||||
CONFIG_USB_NET_CX82310_ETH=m
|
||||
|
@ -3727,6 +3778,9 @@ CONFIG_USB_APPLEDISPLAY=m
|
|||
# Physical Layer USB driver
|
||||
CONFIG_USB_PHY=y
|
||||
|
||||
# CONFIG_GENERIC_PHY is not set
|
||||
# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set
|
||||
# CONFIG_PHY_EXYNOS_DP_VIDEO is not set
|
||||
# CONFIG_OMAP_USB2 is not set
|
||||
# CONFIG_OMAP_USB3 is not set
|
||||
# CONFIG_OMAP_CONTROL_USB is not set
|
||||
|
@ -3830,6 +3884,7 @@ CONFIG_MFD_VIPERBOARD=m
|
|||
# CONFIG_HTC_I2CPLD is not set
|
||||
# CONFIG_MFD_MAX8925 is not set
|
||||
# CONFIG_MFD_ASIC3 is not set
|
||||
# CONFIG_MFD_AS3722 is not set
|
||||
# CONFIG_HTC_EGPIO is not set
|
||||
# CONFIG_TPS6507X is not set
|
||||
# CONFIG_ABX500_CORE is not set
|
||||
|
@ -3994,13 +4049,14 @@ CONFIG_CUSE=m
|
|||
#
|
||||
CONFIG_NETWORK_FILESYSTEMS=y
|
||||
CONFIG_NFS_FS=m
|
||||
CONFIG_NFS_V2=y
|
||||
# CONFIG_NFS_V2 is not set
|
||||
CONFIG_NFS_V3=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
CONFIG_NFS_V4=y
|
||||
CONFIG_NFS_SWAP=y
|
||||
CONFIG_NFS_V4_1=y
|
||||
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
|
||||
# CONFIG_NFS_V4_1_MIGRATION is not set
|
||||
CONFIG_NFS_V4_2=y
|
||||
CONFIG_NFSD=m
|
||||
CONFIG_NFSD_V3=y
|
||||
|
@ -4168,6 +4224,7 @@ CONFIG_OPROFILE_EVENT_MULTIPLEX=y
|
|||
CONFIG_DEBUG_KERNEL=y
|
||||
CONFIG_FRAME_WARN=1024
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0
|
||||
CONFIG_DEBUG_INFO=y
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
||||
|
@ -4354,6 +4411,7 @@ CONFIG_CRC_CCITT=m
|
|||
CONFIG_CRC_ITU_T=m
|
||||
CONFIG_CRC_T10DIF=m
|
||||
CONFIG_CRC8=m
|
||||
# CONFIG_RANDOM32_SELFTEST is not set
|
||||
# CONFIG_CRC7 is not set
|
||||
CONFIG_CORDIC=m
|
||||
# CONFIG_DDR is not set
|
||||
|
@ -4365,7 +4423,7 @@ CONFIG_ZLIB_DEFLATE=m
|
|||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_KEYS=y
|
||||
CONFIG_PERSISTENT_KEYRINGS=y
|
||||
CONFIG_BIG_KEYS=m
|
||||
CONFIG_BIG_KEYS=y
|
||||
CONFIG_TRUSTED_KEYS=m
|
||||
CONFIG_ENCRYPTED_KEYS=m
|
||||
CONFIG_KEYS_DEBUG_PROC_KEYS=y
|
||||
|
@ -4381,6 +4439,7 @@ CONFIG_BACKLIGHT_PROGEAR=m
|
|||
# CONFIG_BACKLIGHT_ADP8860 is not set
|
||||
# CONFIG_BACKLIGHT_ADP8870 is not set
|
||||
# CONFIG_BACKLIGHT_LM3630 is not set
|
||||
# CONFIG_BACKLIGHT_LM3630A is not set
|
||||
# CONFIG_BACKLIGHT_LM3639 is not set
|
||||
CONFIG_FB_NVIDIA_BACKLIGHT=y
|
||||
CONFIG_FB_RIVA_BACKLIGHT=y
|
||||
|
@ -4458,6 +4517,7 @@ CONFIG_IBMASR=m
|
|||
CONFIG_PM=y
|
||||
CONFIG_PM_STD_PARTITION=""
|
||||
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 is not set
|
||||
|
@ -4544,6 +4604,7 @@ CONFIG_LEDS_DELL_NETBOOKS=m
|
|||
# CONFIG_LEDS_PWM is not set
|
||||
# CONFIG_LEDS_LP8501 is not set
|
||||
# CONFIG_LEDS_PCA963X is not set
|
||||
# CONFIG_LEDS_PCA9685 is not set
|
||||
CONFIG_LEDS_TRIGGERS=y
|
||||
CONFIG_LEDS_TRIGGER_TIMER=m
|
||||
CONFIG_LEDS_TRIGGER_ONESHOT=m
|
||||
|
@ -4654,6 +4715,7 @@ CONFIG_APM_POWER=m
|
|||
# CONFIG_CHARGER_PCF50633 is not set
|
||||
# CONFIG_CHARGER_BQ2415X is not set
|
||||
# CONFIG_CHARGER_BQ24190 is not set
|
||||
# CONFIG_CHARGER_BQ24735 is not set
|
||||
CONFIG_POWER_RESET=y
|
||||
|
||||
# CONFIG_PDA_POWER is not set
|
||||
|
@ -4904,6 +4966,8 @@ CONFIG_IEEE802154_FAKELB=m
|
|||
CONFIG_MAC802154=m
|
||||
CONFIG_NET_MPLS_GSO=m
|
||||
|
||||
# CONFIG_HSR is not set
|
||||
|
||||
# CONFIG_EXTCON is not set
|
||||
# CONFIG_EXTCON_ADC_JACK is not set
|
||||
# CONFIG_MEMORY is not set
|
||||
|
@ -4960,6 +5024,8 @@ CONFIG_GPIO_VIPERBOARD=m
|
|||
# CONFIG_GPIO_BT8XX is not set
|
||||
# CONFIG_GPIO_SX150X is not set
|
||||
# CONFIG_GPIO_GRGPIO is not set
|
||||
# CONFIG_GPIO_PL061 is not set
|
||||
# CONFIG_GPIO_BCM_KONA is not set
|
||||
|
||||
# FIXME: Why?
|
||||
CONFIG_EVENT_POWER_TRACING_DEPRECATED=y
|
||||
|
@ -5023,8 +5089,12 @@ CONFIG_FMC_TRIVIAL=m
|
|||
CONFIG_FMC_WRITE_EEPROM=m
|
||||
CONFIG_FMC_CHARDEV=m
|
||||
|
||||
# CONFIG_POWERCAP is not set
|
||||
|
||||
# CONFIG_HSI is not set
|
||||
|
||||
# CONFIG_ARM_ARCH_TIMER_EVTSTREAM is not set
|
||||
|
||||
# CONFIG_PM_DEVFREQ is not set
|
||||
# CONFIG_MODULE_SIG is not set
|
||||
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
|
||||
|
|
|
@ -104,6 +104,7 @@ CONFIG_KDB_KEYBOARD=y
|
|||
CONFIG_KDB_CONTINUE_CATASTROPHIC=0
|
||||
|
||||
# CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER is not set
|
||||
# CONFIG_PERCPU_TEST is not set
|
||||
# CONFIG_TEST_LIST_SORT is not set
|
||||
# CONFIG_TEST_STRING_HELPERS is not set
|
||||
|
||||
|
|
|
@ -371,6 +371,7 @@ CONFIG_RCU_FANOUT_LEAF=16
|
|||
# CONFIG_OF_VIDEOMODE is not set
|
||||
|
||||
# CONFIG_POWERNV_MSI is not set
|
||||
# CONFIG_CPU_LITTLE_ENDIAN is not set
|
||||
|
||||
CONFIG_POWER_RESET_GPIO=y
|
||||
CONFIG_FB_SSD1307=m
|
||||
|
|
|
@ -14,6 +14,8 @@ CONFIG_PPC_PMAC=y
|
|||
CONFIG_PPC_POWERNV=y
|
||||
CONFIG_POWERNV_MSI=y
|
||||
CONFIG_PPC_POWERNV_RTAS=y
|
||||
CONFIG_HW_RANDOM_POWERNV=m
|
||||
CONFIG_SCOM_DEBUGFS=y
|
||||
# CONFIG_PPC_PASEMI is not set
|
||||
# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
|
||||
# CONFIG_PPC_PS3 is not set
|
||||
|
@ -139,7 +141,8 @@ CONFIG_RCU_FANOUT=64
|
|||
CONFIG_CMA=y
|
||||
# CONFIG_CMA_DEBUG is not set
|
||||
CONFIG_KVM_BOOK3S_64=m
|
||||
CONFIG_KVM_BOOK3S_64_HV=y
|
||||
CONFIG_KVM_BOOK3S_64_HV=m
|
||||
CONFIG_KVM_BOOK3S_64_PR=m
|
||||
# CONFIG_KVM_EXIT_TIMING is not set
|
||||
CONFIG_KVM_XICS=y
|
||||
|
||||
|
|
|
@ -10,6 +10,8 @@ CONFIG_PPC_PSERIES=y
|
|||
CONFIG_PPC_POWERNV=y
|
||||
CONFIG_POWERNV_MSI=y
|
||||
CONFIG_PPC_POWERNV_RTAS=y
|
||||
CONFIG_HW_RANDOM_POWERNV=m
|
||||
CONFIG_SCOM_DEBUGFS=y
|
||||
# CONFIG_PPC_PASEMI is not set
|
||||
# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set
|
||||
# CONFIG_PPC_PS3 is not set
|
||||
|
@ -130,7 +132,8 @@ CONFIG_RCU_FANOUT=64
|
|||
CONFIG_CMA=y
|
||||
# CONFIG_CMA_DEBUG is not set
|
||||
CONFIG_KVM_BOOK3S_64=m
|
||||
CONFIG_KVM_BOOK3S_64_HV=y
|
||||
CONFIG_KVM_BOOK3S_64_HV=m
|
||||
CONFIG_KVM_BOOK3S_64_PR=m
|
||||
# CONFIG_KVM_EXIT_TIMING is not set
|
||||
CONFIG_KVM_XICS=y
|
||||
|
||||
|
|
|
@ -73,8 +73,6 @@ CONFIG_APM_CPU_IDLE=y
|
|||
# CONFIG_APM_DISPLAY_BLANK is not set
|
||||
# CONFIG_APM_ALLOW_INTS is not set
|
||||
|
||||
CONFIG_ACPI_BLACKLIST_YEAR=1999
|
||||
|
||||
|
||||
# CONFIG_X86_POWERNOW_K6 is not set
|
||||
CONFIG_X86_POWERNOW_K7=y
|
||||
|
|
|
@ -40,6 +40,7 @@ CONFIG_EFI_VARS_PSTORE=y
|
|||
CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=y
|
||||
CONFIG_EFI_PCDP=y
|
||||
CONFIG_FB_EFI=y
|
||||
CONFIG_EARLY_PRINTK_EFI=y
|
||||
# needs FB_SIMPLE to work correctly
|
||||
# CONFIG_X86_SYSFB is not set
|
||||
|
||||
|
@ -95,6 +96,7 @@ CONFIG_ACPI_APEI_MEMORY_FAILURE=y
|
|||
CONFIG_ACPI_IPMI=m
|
||||
CONFIG_ACPI_CUSTOM_METHOD=m
|
||||
CONFIG_ACPI_BGRT=y
|
||||
# CONFIG_ACPI_EXTLOG is not set
|
||||
|
||||
CONFIG_X86_INTEL_PSTATE=y
|
||||
CONFIG_X86_ACPI_CPUFREQ=m
|
||||
|
@ -196,6 +198,7 @@ CONFIG_AMILO_RFKILL=m
|
|||
CONFIG_ASUS_LAPTOP=m
|
||||
CONFIG_COMPAL_LAPTOP=m
|
||||
CONFIG_DELL_LAPTOP=m
|
||||
CONFIG_CHROME_PLATFORMS=y
|
||||
CONFIG_CHROMEOS_LAPTOP=m
|
||||
CONFIG_EEEPC_LAPTOP=m
|
||||
CONFIG_FUJITSU_TABLET=m
|
||||
|
@ -382,6 +385,7 @@ CONFIG_F71808E_WDT=m
|
|||
CONFIG_HPWDT_NMI_DECODING=y
|
||||
# CONFIG_MFD_TPS6586X is not set
|
||||
# CONFIG_INTEL_MID_DMAC is not set
|
||||
# CONFIG_GPIO_INTEL_MID is not set
|
||||
CONFIG_PCH_DMA=m
|
||||
CONFIG_INTEL_IPS=m
|
||||
# CONFIG_IBM_RTL is not set
|
||||
|
@ -415,6 +419,7 @@ CONFIG_HYPERV_NET=m
|
|||
CONFIG_HYPERV_STORAGE=m
|
||||
CONFIG_HYPERV_BALLOON=m
|
||||
CONFIG_FB_HYPERV=m
|
||||
CONFIG_HYPERV_KEYBOARD=m
|
||||
|
||||
# Depends on HOTPLUG_PCI_PCIE
|
||||
CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
|
||||
|
@ -448,9 +453,6 @@ CONFIG_VMWARE_VMCI_VSOCKETS=m
|
|||
CONFIG_XZ_DEC_X86=y
|
||||
|
||||
CONFIG_MPILIB=y
|
||||
CONFIG_PKCS7_MESSAGE_PARSER=y
|
||||
CONFIG_EFI_SIGNATURE_LIST_PARSER=y
|
||||
CONFIG_PE_FILE_PARSER=y
|
||||
CONFIG_SYSTEM_TRUSTED_KEYRING=y
|
||||
CONFIG_SYSTEM_BLACKLIST_KEYRING=y
|
||||
CONFIG_MODULE_SIG=y
|
||||
|
@ -458,7 +460,6 @@ CONFIG_MODULE_SIG_ALL=y
|
|||
# CONFIG_MODULE_SIG_SHA1 is not set
|
||||
CONFIG_MODULE_SIG_SHA256=y
|
||||
# CONFIG_MODULE_SIG_FORCE is not set
|
||||
CONFIG_MODULE_SIG_BLACKLIST=y
|
||||
CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=y
|
||||
CONFIG_EFI_SIGNATURE_LIST_PARSER=y
|
||||
|
||||
|
|
|
@ -6,7 +6,8 @@ CONFIG_64BIT=y
|
|||
CONFIG_GENERIC_CPU=y
|
||||
|
||||
# CONFIG_X86_VSMP is not set
|
||||
# CONFIG_X86_UV is not set
|
||||
CONFIG_X86_UV=y
|
||||
CONFIG_UV_MMTIMER=m
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_K8_NUMA=y
|
||||
CONFIG_AMD_NUMA=y
|
||||
|
@ -21,6 +22,9 @@ CONFIG_NR_CPUS=1024
|
|||
CONFIG_PHYSICAL_START=0x1000000
|
||||
CONFIG_PHYSICAL_ALIGN=0x1000000
|
||||
|
||||
# https://lists.fedoraproject.org/pipermail/kernel/2013-December/004753.html
|
||||
CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
|
||||
|
||||
CONFIG_IA32_EMULATION=y
|
||||
# CONFIG_IA32_AOUT is not set
|
||||
|
||||
|
@ -30,6 +34,7 @@ CONFIG_AMD_IOMMU_V2=m
|
|||
# CONFIG_IOMMU_DEBUG is not set
|
||||
CONFIG_SWIOTLB=y
|
||||
# CONFIG_CALGARY_IOMMU is not set
|
||||
# CONFIG_GART_IOMMU is not set
|
||||
|
||||
CONFIG_TRANSPARENT_HUGEPAGE=y
|
||||
CONFIG_CGROUP_HUGETLB=y
|
||||
|
@ -37,11 +42,13 @@ CONFIG_MEM_SOFT_DIRTY=y
|
|||
|
||||
CONFIG_KEXEC_JUMP=y
|
||||
|
||||
CONFIG_ACPI_BLACKLIST_YEAR=0
|
||||
CONFIG_ACPI_HOTPLUG_MEMORY=y
|
||||
|
||||
# CONFIG_INTEL_SCU_IPC is not set
|
||||
|
||||
CONFIG_INTEL_MIC_HOST=m
|
||||
CONFIG_INTEL_MIC_CARD=m
|
||||
|
||||
# SHPC has half-arsed PCI probing, which makes it load on too many systems
|
||||
CONFIG_HOTPLUG_PCI_SHPC=m
|
||||
|
||||
|
|
1017
dell-laptop.patch
1017
dell-laptop.patch
File diff suppressed because it is too large
Load Diff
|
@ -1,17 +1,20 @@
|
|||
Bugzilla: 993744
|
||||
Upstream-status: ??
|
||||
|
||||
diff --git a/drivers/md/dm-cache-policy-mq.c b/drivers/md/dm-cache-policy-mq.c
|
||||
index cab6dd2..ec79c8f 100644
|
||||
index 416b7b7..9105771 100644
|
||||
--- a/drivers/md/dm-cache-policy-mq.c
|
||||
+++ b/drivers/md/dm-cache-policy-mq.c
|
||||
@@ -868,7 +868,7 @@ static void mq_destroy(struct dm_cache_policy *p)
|
||||
@@ -866,7 +866,7 @@ static void mq_destroy(struct dm_cache_policy *p)
|
||||
{
|
||||
struct mq_policy *mq = to_mq_policy(p);
|
||||
|
||||
free_bitset(mq->allocation_bitset);
|
||||
- kfree(mq->table);
|
||||
+ vfree(mq->table);
|
||||
free_entries(mq);
|
||||
epool_exit(&mq->cache_pool);
|
||||
epool_exit(&mq->pre_cache_pool);
|
||||
kfree(mq);
|
||||
}
|
||||
@@ -1189,7 +1189,7 @@ static struct dm_cache_policy *mq_create(dm_cblock_t cache_size,
|
||||
@@ -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;
|
||||
|
@ -20,12 +23,3 @@ index cab6dd2..ec79c8f 100644
|
|||
if (!mq->table)
|
||||
goto bad_alloc_table;
|
||||
|
||||
@@ -1200,7 +1200,7 @@ static struct dm_cache_policy *mq_create(dm_cblock_t cache_size,
|
||||
return &mq->policy;
|
||||
|
||||
bad_alloc_bitset:
|
||||
- kfree(mq->table);
|
||||
+ vfree(mq->table);
|
||||
bad_alloc_table:
|
||||
free_entries(mq);
|
||||
bad_cache_alloc:
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
Bugzilla: 1027037 1028785
|
||||
Upstream-status: http://lists.freedesktop.org/archives/intel-gfx/2013-November/035948.html
|
||||
|
||||
This is _by far_ the most common backtrace for i915 on retrace.fp.o, and
|
||||
it's mostly useless noise. There's not enough context when it's generated
|
||||
to know if something actually went wrong. Downgrade the message to
|
||||
KMS debugging so we can still get it if we want it.
|
||||
|
||||
diff -up linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c.jx linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c
|
||||
--- linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c.jx 2013-11-03 18:41:51.000000000 -0500
|
||||
+++ linux-3.13.0-0.rc0.git2.1.fc21.x86_64/drivers/gpu/drm/i915/intel_display.c 2013-11-13 10:12:05.781301624 -0500
|
||||
@@ -8803,7 +8803,7 @@ check_crtc_state(struct drm_device *dev)
|
||||
|
||||
if (active &&
|
||||
!intel_pipe_config_compare(dev, &crtc->config, &pipe_config)) {
|
||||
- WARN(1, "pipe state doesn't match!\n");
|
||||
+ DRM_DEBUG_KMS("pipe state doesn't match!\n");
|
||||
intel_dump_pipe_config(crtc, &pipe_config,
|
||||
"[hw state]");
|
||||
intel_dump_pipe_config(crtc, &crtc->config,
|
|
@ -1,213 +0,0 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: Queued for 3.13
|
||||
|
||||
From db8edc33193879f39c1b52521e20f4d6eb4e9858 Mon Sep 17 00:00:00 2001
|
||||
From: Dave Airlie <airlied@redhat.com>
|
||||
Date: Fri, 08 Nov 2013 06:36:45 +0000
|
||||
Subject: drm/qxl: backport fixes for Fedora
|
||||
|
||||
This pulls these changes from drm-next back into Fedora.
|
||||
|
||||
drm/qxl: prefer the monitor config resolution (b080742393e2c1)
|
||||
drm/qxl: remove unnecessary check (a40a60d912a101e8dfb08ee1)
|
||||
drm/qxl: fix disabling extra monitors from client (5cab51cb3381157)
|
||||
qxl: avoid an oops in the deferred io code. (cc87509d87696d7cd39)
|
||||
drm/qxl: support 64bit surface bar (35541782dcc1e502)
|
||||
qxl: add a connector property to denote hotplug should rescan modes. (4695b03970df37)
|
||||
|
||||
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
||||
---
|
||||
diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
|
||||
index 835caba..1d975eb 100644
|
||||
--- a/drivers/gpu/drm/qxl/qxl_display.c
|
||||
+++ b/drivers/gpu/drm/qxl/qxl_display.c
|
||||
@@ -110,7 +110,9 @@ void qxl_display_read_client_monitors_config(struct qxl_device *qdev)
|
||||
drm_helper_hpd_irq_event(qdev->ddev);
|
||||
}
|
||||
|
||||
-static int qxl_add_monitors_config_modes(struct drm_connector *connector)
|
||||
+static int qxl_add_monitors_config_modes(struct drm_connector *connector,
|
||||
+ unsigned *pwidth,
|
||||
+ unsigned *pheight)
|
||||
{
|
||||
struct drm_device *dev = connector->dev;
|
||||
struct qxl_device *qdev = dev->dev_private;
|
||||
@@ -126,11 +128,15 @@ static int qxl_add_monitors_config_modes(struct drm_connector *connector)
|
||||
mode = drm_cvt_mode(dev, head->width, head->height, 60, false, false,
|
||||
false);
|
||||
mode->type |= DRM_MODE_TYPE_PREFERRED;
|
||||
+ *pwidth = head->width;
|
||||
+ *pheight = head->height;
|
||||
drm_mode_probed_add(connector, mode);
|
||||
return 1;
|
||||
}
|
||||
|
||||
-static int qxl_add_common_modes(struct drm_connector *connector)
|
||||
+static int qxl_add_common_modes(struct drm_connector *connector,
|
||||
+ unsigned pwidth,
|
||||
+ unsigned pheight)
|
||||
{
|
||||
struct drm_device *dev = connector->dev;
|
||||
struct drm_display_mode *mode = NULL;
|
||||
@@ -159,12 +165,9 @@ static int qxl_add_common_modes(struct drm_connector *connector)
|
||||
};
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(common_modes); i++) {
|
||||
- if (common_modes[i].w < 320 || common_modes[i].h < 200)
|
||||
- continue;
|
||||
-
|
||||
mode = drm_cvt_mode(dev, common_modes[i].w, common_modes[i].h,
|
||||
60, false, false, false);
|
||||
- if (common_modes[i].w == 1024 && common_modes[i].h == 768)
|
||||
+ if (common_modes[i].w == pwidth && common_modes[i].h == pheight)
|
||||
mode->type |= DRM_MODE_TYPE_PREFERRED;
|
||||
drm_mode_probed_add(connector, mode);
|
||||
}
|
||||
@@ -720,16 +723,18 @@ static int qxl_conn_get_modes(struct drm_connector *connector)
|
||||
{
|
||||
int ret = 0;
|
||||
struct qxl_device *qdev = connector->dev->dev_private;
|
||||
+ unsigned pwidth = 1024;
|
||||
+ unsigned pheight = 768;
|
||||
|
||||
DRM_DEBUG_KMS("monitors_config=%p\n", qdev->monitors_config);
|
||||
/* TODO: what should we do here? only show the configured modes for the
|
||||
* device, or allow the full list, or both? */
|
||||
if (qdev->monitors_config && qdev->monitors_config->count) {
|
||||
- ret = qxl_add_monitors_config_modes(connector);
|
||||
+ ret = qxl_add_monitors_config_modes(connector, &pwidth, &pheight);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
- ret += qxl_add_common_modes(connector);
|
||||
+ ret += qxl_add_common_modes(connector, pwidth, pheight);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -793,7 +798,10 @@ static enum drm_connector_status qxl_conn_detect(
|
||||
qdev->client_monitors_config->count > output->index &&
|
||||
qxl_head_enabled(&qdev->client_monitors_config->heads[output->index]));
|
||||
|
||||
- DRM_DEBUG("\n");
|
||||
+ DRM_DEBUG("#%d connected: %d\n", output->index, connected);
|
||||
+ if (!connected)
|
||||
+ qxl_monitors_config_set(qdev, output->index, 0, 0, 0, 0, 0);
|
||||
+
|
||||
return connected ? connector_status_connected
|
||||
: connector_status_disconnected;
|
||||
}
|
||||
@@ -835,8 +843,21 @@ static const struct drm_encoder_funcs qxl_enc_funcs = {
|
||||
.destroy = qxl_enc_destroy,
|
||||
};
|
||||
|
||||
+static int qxl_mode_create_hotplug_mode_update_property(struct qxl_device *qdev)
|
||||
+{
|
||||
+ if (qdev->hotplug_mode_update_property)
|
||||
+ return 0;
|
||||
+
|
||||
+ qdev->hotplug_mode_update_property =
|
||||
+ drm_property_create_range(qdev->ddev, DRM_MODE_PROP_IMMUTABLE,
|
||||
+ "hotplug_mode_update", 0, 1);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static int qdev_output_init(struct drm_device *dev, int num_output)
|
||||
{
|
||||
+ struct qxl_device *qdev = dev->dev_private;
|
||||
struct qxl_output *qxl_output;
|
||||
struct drm_connector *connector;
|
||||
struct drm_encoder *encoder;
|
||||
@@ -863,6 +884,8 @@ static int qdev_output_init(struct drm_device *dev, int num_output)
|
||||
drm_encoder_helper_add(encoder, &qxl_enc_helper_funcs);
|
||||
drm_connector_helper_add(connector, &qxl_connector_helper_funcs);
|
||||
|
||||
+ drm_object_attach_property(&connector->base,
|
||||
+ qdev->hotplug_mode_update_property, 0);
|
||||
drm_sysfs_connector_add(connector);
|
||||
return 0;
|
||||
}
|
||||
@@ -975,6 +998,9 @@ int qxl_modeset_init(struct qxl_device *qdev)
|
||||
qdev->ddev->mode_config.max_height = 8192;
|
||||
|
||||
qdev->ddev->mode_config.fb_base = qdev->vram_base;
|
||||
+
|
||||
+ qxl_mode_create_hotplug_mode_update_property(qdev);
|
||||
+
|
||||
for (i = 0 ; i < qxl_num_crtc; ++i) {
|
||||
qdev_crtc_init(qdev->ddev, i);
|
||||
qdev_output_init(qdev->ddev, i);
|
||||
diff --git a/drivers/gpu/drm/qxl/qxl_drv.h b/drivers/gpu/drm/qxl/qxl_drv.h
|
||||
index 7e96f4f..18c599d 100644
|
||||
--- a/drivers/gpu/drm/qxl/qxl_drv.h
|
||||
+++ b/drivers/gpu/drm/qxl/qxl_drv.h
|
||||
@@ -323,6 +323,8 @@ struct qxl_device {
|
||||
struct work_struct gc_work;
|
||||
|
||||
struct work_struct fb_work;
|
||||
+
|
||||
+ struct drm_property *hotplug_mode_update_property;
|
||||
};
|
||||
|
||||
/* forward declaration for QXL_INFO_IO */
|
||||
diff --git a/drivers/gpu/drm/qxl/qxl_kms.c b/drivers/gpu/drm/qxl/qxl_kms.c
|
||||
index 9e8da9e..e0ddd5b 100644
|
||||
--- a/drivers/gpu/drm/qxl/qxl_kms.c
|
||||
+++ b/drivers/gpu/drm/qxl/qxl_kms.c
|
||||
@@ -120,7 +120,7 @@ int qxl_device_init(struct qxl_device *qdev,
|
||||
struct pci_dev *pdev,
|
||||
unsigned long flags)
|
||||
{
|
||||
- int r;
|
||||
+ int r, sb;
|
||||
|
||||
qdev->dev = &pdev->dev;
|
||||
qdev->ddev = ddev;
|
||||
@@ -136,21 +136,39 @@ int qxl_device_init(struct qxl_device *qdev,
|
||||
qdev->rom_base = pci_resource_start(pdev, 2);
|
||||
qdev->rom_size = pci_resource_len(pdev, 2);
|
||||
qdev->vram_base = pci_resource_start(pdev, 0);
|
||||
- qdev->surfaceram_base = pci_resource_start(pdev, 1);
|
||||
- qdev->surfaceram_size = pci_resource_len(pdev, 1);
|
||||
qdev->io_base = pci_resource_start(pdev, 3);
|
||||
|
||||
qdev->vram_mapping = io_mapping_create_wc(qdev->vram_base, pci_resource_len(pdev, 0));
|
||||
- qdev->surface_mapping = io_mapping_create_wc(qdev->surfaceram_base, qdev->surfaceram_size);
|
||||
- DRM_DEBUG_KMS("qxl: vram %llx-%llx(%dM %dk), surface %llx-%llx(%dM %dk)\n",
|
||||
+
|
||||
+ if (pci_resource_len(pdev, 4) > 0) {
|
||||
+ /* 64bit surface bar present */
|
||||
+ sb = 4;
|
||||
+ qdev->surfaceram_base = pci_resource_start(pdev, sb);
|
||||
+ qdev->surfaceram_size = pci_resource_len(pdev, sb);
|
||||
+ qdev->surface_mapping =
|
||||
+ io_mapping_create_wc(qdev->surfaceram_base,
|
||||
+ qdev->surfaceram_size);
|
||||
+ }
|
||||
+ if (qdev->surface_mapping == NULL) {
|
||||
+ /* 64bit surface bar not present (or mapping failed) */
|
||||
+ sb = 1;
|
||||
+ qdev->surfaceram_base = pci_resource_start(pdev, sb);
|
||||
+ qdev->surfaceram_size = pci_resource_len(pdev, sb);
|
||||
+ qdev->surface_mapping =
|
||||
+ io_mapping_create_wc(qdev->surfaceram_base,
|
||||
+ qdev->surfaceram_size);
|
||||
+ }
|
||||
+
|
||||
+ DRM_DEBUG_KMS("qxl: vram %llx-%llx(%dM %dk), surface %llx-%llx(%dM %dk, %s)\n",
|
||||
(unsigned long long)qdev->vram_base,
|
||||
(unsigned long long)pci_resource_end(pdev, 0),
|
||||
(int)pci_resource_len(pdev, 0) / 1024 / 1024,
|
||||
(int)pci_resource_len(pdev, 0) / 1024,
|
||||
(unsigned long long)qdev->surfaceram_base,
|
||||
- (unsigned long long)pci_resource_end(pdev, 1),
|
||||
+ (unsigned long long)pci_resource_end(pdev, sb),
|
||||
(int)qdev->surfaceram_size / 1024 / 1024,
|
||||
- (int)qdev->surfaceram_size / 1024);
|
||||
+ (int)qdev->surfaceram_size / 1024,
|
||||
+ (sb == 4) ? "64bit" : "32bit");
|
||||
|
||||
qdev->rom = ioremap(qdev->rom_base, qdev->rom_size);
|
||||
if (!qdev->rom) {
|
||||
--
|
||||
cgit v0.9.0.2-2-gbebe
|
|
@ -1,3 +1,6 @@
|
|||
This patch is made against 3.13 kernel. So it's suitable for F21 and for F20
|
||||
later on when F20 is rebased to 3.13.
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1056711
|
||||
|
||||
NetworkManager depends on IFA_F_NOPREFIXROUTE IFA_F_MANAGETEMPADDR
|
||||
|
@ -5,10 +8,7 @@ in order to do SLAAC in userspace correctly.
|
|||
|
||||
Split patches available here:
|
||||
|
||||
http://people.redhat.com/jpirko/f20_backport_of_IFA_F_NOPREFIXROUTE_and_IFA_F_MANAGETEMPADDR/
|
||||
|
||||
David S. Miller (1):
|
||||
ipv6: Remove privacy config option.
|
||||
http://people.redhat.com/jpirko/f21_backport_of_IFA_F_NOPREFIXROUTE_and_IFA_F_MANAGETEMPADDR/
|
||||
|
||||
Jiri Pirko (2):
|
||||
ipv6 addrconf: extend ifa_flags to u32
|
||||
|
@ -26,34 +26,14 @@ Thomas Haller (2):
|
|||
stephen hemminger (1):
|
||||
ipv6: addrconf spelling fixes
|
||||
|
||||
include/linux/ipv6.h | 2 -
|
||||
include/net/addrconf.h | 4 +-
|
||||
include/net/if_inet6.h | 7 +-
|
||||
include/net/if_inet6.h | 2 +-
|
||||
include/uapi/linux/if_addr.h | 6 +
|
||||
net/ipv6/Kconfig | 18 --
|
||||
net/ipv6/addrconf.c | 448 +++++++++++++++++++++++--------------------
|
||||
6 files changed, 253 insertions(+), 232 deletions(-)
|
||||
net/ipv6/addrconf.c | 409 +++++++++++++++++++++++++------------------
|
||||
4 files changed, 250 insertions(+), 171 deletions(-)
|
||||
|
||||
Signed-off-by: Jiri Pirko <jpirko@redhat.com>
|
||||
|
||||
diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h
|
||||
index 28ea384..69cbcac 100644
|
||||
--- a/include/linux/ipv6.h
|
||||
+++ b/include/linux/ipv6.h
|
||||
@@ -21,13 +21,11 @@ struct ipv6_devconf {
|
||||
__s32 force_mld_version;
|
||||
__s32 mldv1_unsolicited_report_interval;
|
||||
__s32 mldv2_unsolicited_report_interval;
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
__s32 use_tempaddr;
|
||||
__s32 temp_valid_lft;
|
||||
__s32 temp_prefered_lft;
|
||||
__s32 regen_max_retry;
|
||||
__s32 max_desync_factor;
|
||||
-#endif
|
||||
__s32 max_addresses;
|
||||
__s32 accept_ra_defrtr;
|
||||
__s32 accept_ra_pinfo;
|
||||
diff --git a/include/net/addrconf.h b/include/net/addrconf.h
|
||||
index 86505bf..e70278e 100644
|
||||
--- a/include/net/addrconf.h
|
||||
|
@ -71,7 +51,7 @@ index 86505bf..e70278e 100644
|
|||
void addrconf_join_solict(struct net_device *dev, const struct in6_addr *addr);
|
||||
void addrconf_leave_solict(struct inet6_dev *idev, const struct in6_addr *addr);
|
||||
diff --git a/include/net/if_inet6.h b/include/net/if_inet6.h
|
||||
index 02ef772..b58c36c 100644
|
||||
index 65bb130..9650a3f 100644
|
||||
--- a/include/net/if_inet6.h
|
||||
+++ b/include/net/if_inet6.h
|
||||
@@ -50,8 +50,8 @@ struct inet6_ifaddr {
|
||||
|
@ -84,31 +64,6 @@ index 02ef772..b58c36c 100644
|
|||
|
||||
__u16 scope;
|
||||
|
||||
@@ -66,11 +66,10 @@ struct inet6_ifaddr {
|
||||
struct hlist_node addr_lst;
|
||||
struct list_head if_list;
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
struct list_head tmp_list;
|
||||
struct inet6_ifaddr *ifpub;
|
||||
int regen_count;
|
||||
-#endif
|
||||
+
|
||||
bool tokenized;
|
||||
|
||||
struct rcu_head rcu;
|
||||
@@ -192,11 +191,9 @@ struct inet6_dev {
|
||||
__u32 if_flags;
|
||||
int dead;
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
u8 rndid[8];
|
||||
struct timer_list regen_timer;
|
||||
struct list_head tempaddr_list;
|
||||
-#endif
|
||||
|
||||
struct in6_addr token;
|
||||
|
||||
diff --git a/include/uapi/linux/if_addr.h b/include/uapi/linux/if_addr.h
|
||||
index 23357ab..dea10a8 100644
|
||||
--- a/include/uapi/linux/if_addr.h
|
||||
|
@ -140,122 +95,11 @@ index 23357ab..dea10a8 100644
|
|||
|
||||
struct ifa_cacheinfo {
|
||||
__u32 ifa_prefered;
|
||||
diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig
|
||||
index 11b13ea..aac8434 100644
|
||||
--- a/net/ipv6/Kconfig
|
||||
+++ b/net/ipv6/Kconfig
|
||||
@@ -21,24 +21,6 @@ menuconfig IPV6
|
||||
|
||||
if IPV6
|
||||
|
||||
-config IPV6_PRIVACY
|
||||
- bool "IPv6: Privacy Extensions (RFC 3041) support"
|
||||
- ---help---
|
||||
- Privacy Extensions for Stateless Address Autoconfiguration in IPv6
|
||||
- support. With this option, additional periodically-altered
|
||||
- pseudo-random global-scope unicast address(es) will be assigned to
|
||||
- your interface(s).
|
||||
-
|
||||
- We use our standard pseudo-random algorithm to generate the
|
||||
- randomized interface identifier, instead of one described in RFC 3041.
|
||||
-
|
||||
- By default the kernel does not generate temporary addresses.
|
||||
- To use temporary addresses, do
|
||||
-
|
||||
- echo 2 >/proc/sys/net/ipv6/conf/all/use_tempaddr
|
||||
-
|
||||
- See <file:Documentation/networking/ip-sysctl.txt> for details.
|
||||
-
|
||||
config IPV6_ROUTER_PREF
|
||||
bool "IPv6: Router Preference (RFC 4191) support"
|
||||
---help---
|
||||
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
|
||||
index cd3fb30..5ebd42e 100644
|
||||
index 4b6b720..3c4e25d 100644
|
||||
--- a/net/ipv6/addrconf.c
|
||||
+++ b/net/ipv6/addrconf.c
|
||||
@@ -83,11 +83,7 @@
|
||||
#include <linux/if_tunnel.h>
|
||||
#include <linux/rtnetlink.h>
|
||||
#include <linux/netconf.h>
|
||||
-
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
#include <linux/random.h>
|
||||
-#endif
|
||||
-
|
||||
#include <linux/uaccess.h>
|
||||
#include <asm/unaligned.h>
|
||||
|
||||
@@ -124,11 +120,9 @@ static inline void addrconf_sysctl_unregister(struct inet6_dev *idev)
|
||||
}
|
||||
#endif
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
static void __ipv6_regen_rndid(struct inet6_dev *idev);
|
||||
static void __ipv6_try_regen_rndid(struct inet6_dev *idev, struct in6_addr *tmpaddr);
|
||||
static void ipv6_regen_rndid(unsigned long data);
|
||||
-#endif
|
||||
|
||||
static int ipv6_generate_eui64(u8 *eui, struct net_device *dev);
|
||||
static int ipv6_count_addresses(struct inet6_dev *idev);
|
||||
@@ -183,13 +177,11 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
|
||||
.rtr_solicits = MAX_RTR_SOLICITATIONS,
|
||||
.rtr_solicit_interval = RTR_SOLICITATION_INTERVAL,
|
||||
.rtr_solicit_delay = MAX_RTR_SOLICITATION_DELAY,
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
.use_tempaddr = 0,
|
||||
.temp_valid_lft = TEMP_VALID_LIFETIME,
|
||||
.temp_prefered_lft = TEMP_PREFERRED_LIFETIME,
|
||||
.regen_max_retry = REGEN_MAX_RETRY,
|
||||
.max_desync_factor = MAX_DESYNC_FACTOR,
|
||||
-#endif
|
||||
.max_addresses = IPV6_MAX_ADDRESSES,
|
||||
.accept_ra_defrtr = 1,
|
||||
.accept_ra_pinfo = 1,
|
||||
@@ -221,13 +213,11 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
|
||||
.rtr_solicits = MAX_RTR_SOLICITATIONS,
|
||||
.rtr_solicit_interval = RTR_SOLICITATION_INTERVAL,
|
||||
.rtr_solicit_delay = MAX_RTR_SOLICITATION_DELAY,
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
.use_tempaddr = 0,
|
||||
.temp_valid_lft = TEMP_VALID_LIFETIME,
|
||||
.temp_prefered_lft = TEMP_PREFERRED_LIFETIME,
|
||||
.regen_max_retry = REGEN_MAX_RETRY,
|
||||
.max_desync_factor = MAX_DESYNC_FACTOR,
|
||||
-#endif
|
||||
.max_addresses = IPV6_MAX_ADDRESSES,
|
||||
.accept_ra_defrtr = 1,
|
||||
.accept_ra_pinfo = 1,
|
||||
@@ -371,7 +361,6 @@ static struct inet6_dev *ipv6_add_dev(struct net_device *dev)
|
||||
}
|
||||
#endif
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
INIT_LIST_HEAD(&ndev->tempaddr_list);
|
||||
setup_timer(&ndev->regen_timer, ipv6_regen_rndid, (unsigned long)ndev);
|
||||
if ((dev->flags&IFF_LOOPBACK) ||
|
||||
@@ -384,7 +373,7 @@ static struct inet6_dev *ipv6_add_dev(struct net_device *dev)
|
||||
in6_dev_hold(ndev);
|
||||
ipv6_regen_rndid((unsigned long) ndev);
|
||||
}
|
||||
-#endif
|
||||
+
|
||||
ndev->token = in6addr_any;
|
||||
|
||||
if (netif_running(dev) && addrconf_qdisc_ok(dev))
|
||||
@@ -865,12 +854,10 @@ ipv6_add_addr(struct inet6_dev *idev, const struct in6_addr *addr,
|
||||
/* Add to inet6_dev unicast addr list. */
|
||||
ipv6_link_dev_addr(idev, ifa);
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
if (ifa->flags&IFA_F_TEMPORARY) {
|
||||
list_add(&ifa->tmp_list, &idev->tempaddr_list);
|
||||
in6_ifa_hold(ifa);
|
||||
}
|
||||
-#endif
|
||||
|
||||
in6_ifa_hold(ifa);
|
||||
write_unlock(&idev->lock);
|
||||
@@ -890,15 +877,95 @@ out:
|
||||
@@ -891,15 +891,95 @@ out:
|
||||
goto out2;
|
||||
}
|
||||
|
||||
|
@ -355,22 +199,18 @@ index cd3fb30..5ebd42e 100644
|
|||
|
||||
spin_lock_bh(&ifp->state_lock);
|
||||
state = ifp->state;
|
||||
@@ -912,8 +979,8 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
@@ -913,7 +993,7 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
hlist_del_init_rcu(&ifp->addr_lst);
|
||||
spin_unlock_bh(&addrconf_hash_lock);
|
||||
|
||||
- write_lock_bh(&idev->lock);
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
+ write_lock_bh(&ifp->idev->lock);
|
||||
+
|
||||
|
||||
if (ifp->flags&IFA_F_TEMPORARY) {
|
||||
list_del(&ifp->tmp_list);
|
||||
if (ifp->ifpub) {
|
||||
@@ -922,47 +989,14 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
}
|
||||
@@ -924,45 +1004,13 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
__in6_ifa_put(ifp);
|
||||
}
|
||||
-#endif
|
||||
|
||||
- list_for_each_entry_safe(ifa, ifn, &idev->addr_list, if_list) {
|
||||
- if (ifa == ifp) {
|
||||
|
@ -420,7 +260,7 @@ index cd3fb30..5ebd42e 100644
|
|||
|
||||
addrconf_del_dad_timer(ifp);
|
||||
|
||||
@@ -970,41 +1004,9 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
@@ -970,41 +1018,9 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
|
||||
inet6addr_notifier_call_chain(NETDEV_DOWN, ifp);
|
||||
|
||||
|
@ -465,15 +305,7 @@ index cd3fb30..5ebd42e 100644
|
|||
}
|
||||
|
||||
/* clean up prefsrc entries */
|
||||
@@ -1013,7 +1015,6 @@ out:
|
||||
in6_ifa_put(ifp);
|
||||
}
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
static int ipv6_create_tempaddr(struct inet6_ifaddr *ifp, struct inet6_ifaddr *ift)
|
||||
{
|
||||
struct inet6_dev *idev = ifp->idev;
|
||||
@@ -1025,7 +1026,7 @@ static int ipv6_create_tempaddr(struct inet6_ifaddr *ifp, struct inet6_ifaddr *i
|
||||
@@ -1024,7 +1040,7 @@ static int ipv6_create_tempaddr(struct inet6_ifaddr *ifp, struct inet6_ifaddr *i
|
||||
u32 addr_flags;
|
||||
unsigned long now = jiffies;
|
||||
|
||||
|
@ -482,7 +314,7 @@ index cd3fb30..5ebd42e 100644
|
|||
if (ift) {
|
||||
spin_lock_bh(&ift->lock);
|
||||
memcpy(&addr.s6_addr[8], &ift->addr.s6_addr[8], 8);
|
||||
@@ -1037,7 +1038,7 @@ static int ipv6_create_tempaddr(struct inet6_ifaddr *ifp, struct inet6_ifaddr *i
|
||||
@@ -1036,7 +1052,7 @@ static int ipv6_create_tempaddr(struct inet6_ifaddr *ifp, struct inet6_ifaddr *i
|
||||
retry:
|
||||
in6_dev_hold(idev);
|
||||
if (idev->cnf.use_tempaddr <= 0) {
|
||||
|
@ -491,7 +323,7 @@ index cd3fb30..5ebd42e 100644
|
|||
pr_info("%s: use_tempaddr is disabled\n", __func__);
|
||||
in6_dev_put(idev);
|
||||
ret = -1;
|
||||
@@ -1047,7 +1048,7 @@ retry:
|
||||
@@ -1046,7 +1062,7 @@ retry:
|
||||
if (ifp->regen_count++ >= idev->cnf.regen_max_retry) {
|
||||
idev->cnf.use_tempaddr = -1; /*XXX*/
|
||||
spin_unlock_bh(&ifp->lock);
|
||||
|
@ -500,7 +332,7 @@ index cd3fb30..5ebd42e 100644
|
|||
pr_warn("%s: regeneration time exceeded - disabled temporary address support\n",
|
||||
__func__);
|
||||
in6_dev_put(idev);
|
||||
@@ -1073,7 +1074,7 @@ retry:
|
||||
@@ -1072,7 +1088,7 @@ retry:
|
||||
regen_advance = idev->cnf.regen_max_retry *
|
||||
idev->cnf.dad_transmits *
|
||||
idev->nd_parms->retrans_time / HZ;
|
||||
|
@ -509,7 +341,7 @@ index cd3fb30..5ebd42e 100644
|
|||
|
||||
/* A temporary address is created only if this calculated Preferred
|
||||
* Lifetime is greater than REGEN_ADVANCE time units. In particular,
|
||||
@@ -1100,7 +1101,7 @@ retry:
|
||||
@@ -1099,7 +1115,7 @@ retry:
|
||||
in6_dev_put(idev);
|
||||
pr_info("%s: retry temporary address regeneration\n", __func__);
|
||||
tmpaddr = &addr;
|
||||
|
@ -518,25 +350,7 @@ index cd3fb30..5ebd42e 100644
|
|||
goto retry;
|
||||
}
|
||||
|
||||
@@ -1116,7 +1117,6 @@ retry:
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
-#endif
|
||||
|
||||
/*
|
||||
* Choose an appropriate source address (RFC3484)
|
||||
@@ -1131,9 +1131,7 @@ enum {
|
||||
#endif
|
||||
IPV6_SADDR_RULE_OIF,
|
||||
IPV6_SADDR_RULE_LABEL,
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
IPV6_SADDR_RULE_PRIVACY,
|
||||
-#endif
|
||||
IPV6_SADDR_RULE_ORCHID,
|
||||
IPV6_SADDR_RULE_PREFIX,
|
||||
IPV6_SADDR_RULE_MAX
|
||||
@@ -1204,7 +1202,7 @@ static int ipv6_get_saddr_eval(struct net *net,
|
||||
@@ -1200,7 +1216,7 @@ static int ipv6_get_saddr_eval(struct net *net,
|
||||
* | d is scope of the destination.
|
||||
* B-d | \
|
||||
* | \ <- smaller scope is better if
|
||||
|
@ -545,23 +359,7 @@ index cd3fb30..5ebd42e 100644
|
|||
* | ret = B - scope (-1 <= scope >= d <= 15).
|
||||
* d-C-1 | /
|
||||
* |/ <- greater is better
|
||||
@@ -1247,7 +1245,6 @@ static int ipv6_get_saddr_eval(struct net *net,
|
||||
&score->ifa->addr, score->addr_type,
|
||||
score->ifa->idev->dev->ifindex) == dst->label;
|
||||
break;
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
case IPV6_SADDR_RULE_PRIVACY:
|
||||
{
|
||||
/* Rule 7: Prefer public address
|
||||
@@ -1259,7 +1256,6 @@ static int ipv6_get_saddr_eval(struct net *net,
|
||||
ret = (!(score->ifa->flags & IFA_F_TEMPORARY)) ^ preftmp;
|
||||
break;
|
||||
}
|
||||
-#endif
|
||||
case IPV6_SADDR_RULE_ORCHID:
|
||||
/* Rule 8-: Prefer ORCHID vs ORCHID or
|
||||
* non-ORCHID vs non-ORCHID
|
||||
@@ -1413,7 +1409,7 @@ try_nextdev:
|
||||
@@ -1407,7 +1423,7 @@ try_nextdev:
|
||||
EXPORT_SYMBOL(ipv6_dev_get_saddr);
|
||||
|
||||
int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
|
||||
|
@ -570,7 +368,7 @@ index cd3fb30..5ebd42e 100644
|
|||
{
|
||||
struct inet6_ifaddr *ifp;
|
||||
int err = -EADDRNOTAVAIL;
|
||||
@@ -1430,7 +1426,7 @@ int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
|
||||
@@ -1424,7 +1440,7 @@ int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
|
||||
}
|
||||
|
||||
int ipv6_get_lladdr(struct net_device *dev, struct in6_addr *addr,
|
||||
|
@ -579,39 +377,7 @@ index cd3fb30..5ebd42e 100644
|
|||
{
|
||||
struct inet6_dev *idev;
|
||||
int err = -EADDRNOTAVAIL;
|
||||
@@ -1588,7 +1584,6 @@ static void addrconf_dad_stop(struct inet6_ifaddr *ifp, int dad_failed)
|
||||
if (dad_failed)
|
||||
ipv6_ifa_notify(0, ifp);
|
||||
in6_ifa_put(ifp);
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
} else if (ifp->flags&IFA_F_TEMPORARY) {
|
||||
struct inet6_ifaddr *ifpub;
|
||||
spin_lock_bh(&ifp->lock);
|
||||
@@ -1602,7 +1597,6 @@ static void addrconf_dad_stop(struct inet6_ifaddr *ifp, int dad_failed)
|
||||
spin_unlock_bh(&ifp->lock);
|
||||
}
|
||||
ipv6_del_addr(ifp);
|
||||
-#endif
|
||||
} else
|
||||
ipv6_del_addr(ifp);
|
||||
}
|
||||
@@ -1851,7 +1845,6 @@ static int ipv6_inherit_eui64(u8 *eui, struct inet6_dev *idev)
|
||||
return err;
|
||||
}
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
/* (re)generation of randomized interface identifier (RFC 3041 3.2, 3.5) */
|
||||
static void __ipv6_regen_rndid(struct inet6_dev *idev)
|
||||
{
|
||||
@@ -1919,7 +1912,6 @@ static void __ipv6_try_regen_rndid(struct inet6_dev *idev, struct in6_addr *tmp
|
||||
if (tmpaddr && memcmp(idev->rndid, &tmpaddr->s6_addr[8], 8) == 0)
|
||||
__ipv6_regen_rndid(idev);
|
||||
}
|
||||
-#endif
|
||||
|
||||
/*
|
||||
* Add prefix route.
|
||||
@@ -2043,6 +2035,73 @@ static struct inet6_dev *addrconf_add_dev(struct net_device *dev)
|
||||
@@ -2016,6 +2032,73 @@ static struct inet6_dev *addrconf_add_dev(struct net_device *dev)
|
||||
return idev;
|
||||
}
|
||||
|
||||
|
@ -685,7 +451,7 @@ index cd3fb30..5ebd42e 100644
|
|||
void addrconf_prefix_rcv(struct net_device *dev, u8 *opt, int len, bool sllao)
|
||||
{
|
||||
struct prefix_info *pinfo;
|
||||
@@ -2197,6 +2256,7 @@ ok:
|
||||
@@ -2170,6 +2253,7 @@ ok:
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -693,24 +459,21 @@ index cd3fb30..5ebd42e 100644
|
|||
update_lft = 0;
|
||||
create = 1;
|
||||
ifp->cstamp = jiffies;
|
||||
@@ -2205,11 +2265,8 @@ ok:
|
||||
@@ -2178,9 +2262,8 @@ ok:
|
||||
}
|
||||
|
||||
if (ifp) {
|
||||
- int flags;
|
||||
+ u32 flags;
|
||||
unsigned long now;
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
- struct inet6_ifaddr *ift;
|
||||
-#endif
|
||||
u32 stored_lft;
|
||||
|
||||
/* update lifetime (RFC2462 5.5.3 e) */
|
||||
@@ -2250,72 +2307,9 @@ ok:
|
||||
@@ -2221,70 +2304,8 @@ ok:
|
||||
} else
|
||||
spin_unlock(&ifp->lock);
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
- read_lock_bh(&in6_dev->lock);
|
||||
- /* update all temporary addresses in the list */
|
||||
- list_for_each_entry(ift, &in6_dev->tempaddr_list,
|
||||
|
@ -761,9 +524,7 @@ index cd3fb30..5ebd42e 100644
|
|||
- if (!(flags&IFA_F_TENTATIVE))
|
||||
- ipv6_ifa_notify(0, ift);
|
||||
- }
|
||||
+ manage_tempaddrs(in6_dev, ifp, valid_lft, prefered_lft,
|
||||
+ create, now);
|
||||
|
||||
-
|
||||
- if ((create || list_empty(&in6_dev->tempaddr_list)) && in6_dev->cnf.use_tempaddr > 0) {
|
||||
- /*
|
||||
- * When a new public address is created as
|
||||
|
@ -777,11 +538,12 @@ index cd3fb30..5ebd42e 100644
|
|||
- } else {
|
||||
- read_unlock_bh(&in6_dev->lock);
|
||||
- }
|
||||
-#endif
|
||||
+ manage_tempaddrs(in6_dev, ifp, valid_lft, prefered_lft,
|
||||
+ create, now);
|
||||
|
||||
in6_ifa_put(ifp);
|
||||
addrconf_verify(0);
|
||||
}
|
||||
@@ -2393,10 +2387,11 @@ err_exit:
|
||||
@@ -2363,10 +2384,11 @@ err_exit:
|
||||
/*
|
||||
* Manual configuration of address on an interface
|
||||
*/
|
||||
|
@ -796,7 +558,7 @@ index cd3fb30..5ebd42e 100644
|
|||
{
|
||||
struct inet6_ifaddr *ifp;
|
||||
struct inet6_dev *idev;
|
||||
@@ -2415,6 +2410,9 @@ static int inet6_addr_add(struct net *net, int ifindex, const struct in6_addr *p
|
||||
@@ -2385,6 +2407,9 @@ static int inet6_addr_add(struct net *net, int ifindex, const struct in6_addr *p
|
||||
if (!valid_lft || prefered_lft > valid_lft)
|
||||
return -EINVAL;
|
||||
|
||||
|
@ -806,7 +568,7 @@ index cd3fb30..5ebd42e 100644
|
|||
dev = __dev_get_by_index(net, ifindex);
|
||||
if (!dev)
|
||||
return -ENODEV;
|
||||
@@ -2447,14 +2445,20 @@ static int inet6_addr_add(struct net *net, int ifindex, const struct in6_addr *p
|
||||
@@ -2417,14 +2442,20 @@ static int inet6_addr_add(struct net *net, int ifindex, const struct in6_addr *p
|
||||
valid_lft, prefered_lft);
|
||||
|
||||
if (!IS_ERR(ifp)) {
|
||||
|
@ -829,7 +591,7 @@ index cd3fb30..5ebd42e 100644
|
|||
in6_ifa_put(ifp);
|
||||
addrconf_verify(0);
|
||||
return 0;
|
||||
@@ -2888,7 +2892,7 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event,
|
||||
@@ -2857,7 +2888,7 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event,
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -838,23 +600,7 @@ index cd3fb30..5ebd42e 100644
|
|||
* Stop IPv6 on this interface.
|
||||
*/
|
||||
|
||||
@@ -2995,7 +2999,6 @@ static int addrconf_ifdown(struct net_device *dev, int how)
|
||||
if (!how)
|
||||
idev->if_flags &= ~(IF_RS_SENT|IF_RA_RCVD|IF_READY);
|
||||
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
if (how && del_timer(&idev->regen_timer))
|
||||
in6_dev_put(idev);
|
||||
|
||||
@@ -3015,7 +3018,6 @@ static int addrconf_ifdown(struct net_device *dev, int how)
|
||||
in6_ifa_put(ifa);
|
||||
write_lock_bh(&idev->lock);
|
||||
}
|
||||
-#endif
|
||||
|
||||
while (!list_empty(&idev->addr_list)) {
|
||||
ifa = list_first_entry(&idev->addr_list,
|
||||
@@ -3386,7 +3388,7 @@ static void if6_seq_stop(struct seq_file *seq, void *v)
|
||||
@@ -3366,7 +3397,7 @@ static void if6_seq_stop(struct seq_file *seq, void *v)
|
||||
static int if6_seq_show(struct seq_file *seq, void *v)
|
||||
{
|
||||
struct inet6_ifaddr *ifp = (struct inet6_ifaddr *)v;
|
||||
|
@ -863,23 +609,7 @@ index cd3fb30..5ebd42e 100644
|
|||
&ifp->addr,
|
||||
ifp->idev->dev->ifindex,
|
||||
ifp->prefix_len,
|
||||
@@ -3528,7 +3530,6 @@ restart:
|
||||
in6_ifa_put(ifp);
|
||||
goto restart;
|
||||
}
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
} else if ((ifp->flags&IFA_F_TEMPORARY) &&
|
||||
!(ifp->flags&IFA_F_TENTATIVE)) {
|
||||
unsigned long regen_advance = ifp->idev->cnf.regen_max_retry *
|
||||
@@ -3556,7 +3557,6 @@ restart:
|
||||
} else if (time_before(ifp->tstamp + ifp->prefered_lft * HZ - regen_advance * HZ, next))
|
||||
next = ifp->tstamp + ifp->prefered_lft * HZ - regen_advance * HZ;
|
||||
spin_unlock(&ifp->lock);
|
||||
-#endif
|
||||
} else {
|
||||
/* ifp->prefered_lft <= ifp->valid_lft */
|
||||
if (time_before(ifp->tstamp + ifp->prefered_lft * HZ, next))
|
||||
@@ -3609,6 +3609,7 @@ static const struct nla_policy ifa_ipv6_policy[IFA_MAX+1] = {
|
||||
@@ -3593,6 +3624,7 @@ static const struct nla_policy ifa_ipv6_policy[IFA_MAX+1] = {
|
||||
[IFA_ADDRESS] = { .len = sizeof(struct in6_addr) },
|
||||
[IFA_LOCAL] = { .len = sizeof(struct in6_addr) },
|
||||
[IFA_CACHEINFO] = { .len = sizeof(struct ifa_cacheinfo) },
|
||||
|
@ -887,7 +617,7 @@ index cd3fb30..5ebd42e 100644
|
|||
};
|
||||
|
||||
static int
|
||||
@@ -3632,16 +3633,22 @@ inet6_rtm_deladdr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
@@ -3616,16 +3648,22 @@ inet6_rtm_deladdr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
return inet6_addr_del(net, ifm->ifa_index, pfx, ifm->ifa_prefixlen);
|
||||
}
|
||||
|
||||
|
@ -911,7 +641,7 @@ index cd3fb30..5ebd42e 100644
|
|||
timeout = addrconf_timeout_fixup(valid_lft, HZ);
|
||||
if (addrconf_finite_timeout(timeout)) {
|
||||
expires = jiffies_to_clock_t(timeout * HZ);
|
||||
@@ -3661,7 +3668,13 @@ static int inet6_addr_modify(struct inet6_ifaddr *ifp, u8 ifa_flags,
|
||||
@@ -3645,7 +3683,13 @@ static int inet6_addr_modify(struct inet6_ifaddr *ifp, u8 ifa_flags,
|
||||
}
|
||||
|
||||
spin_lock_bh(&ifp->lock);
|
||||
|
@ -926,7 +656,7 @@ index cd3fb30..5ebd42e 100644
|
|||
ifp->tstamp = jiffies;
|
||||
ifp->valid_lft = valid_lft;
|
||||
ifp->prefered_lft = prefered_lft;
|
||||
@@ -3670,8 +3683,30 @@ static int inet6_addr_modify(struct inet6_ifaddr *ifp, u8 ifa_flags,
|
||||
@@ -3654,8 +3698,30 @@ static int inet6_addr_modify(struct inet6_ifaddr *ifp, u8 ifa_flags,
|
||||
if (!(ifp->flags&IFA_F_TENTATIVE))
|
||||
ipv6_ifa_notify(0, ifp);
|
||||
|
||||
|
@ -959,7 +689,7 @@ index cd3fb30..5ebd42e 100644
|
|||
addrconf_verify(0);
|
||||
|
||||
return 0;
|
||||
@@ -3687,7 +3722,7 @@ inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
@@ -3671,7 +3737,7 @@ inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
struct inet6_ifaddr *ifa;
|
||||
struct net_device *dev;
|
||||
u32 valid_lft = INFINITY_LIFE_TIME, preferred_lft = INFINITY_LIFE_TIME;
|
||||
|
@ -968,7 +698,7 @@ index cd3fb30..5ebd42e 100644
|
|||
int err;
|
||||
|
||||
err = nlmsg_parse(nlh, sizeof(*ifm), tb, IFA_MAX, ifa_ipv6_policy);
|
||||
@@ -3714,14 +3749,17 @@ inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
@@ -3698,14 +3764,17 @@ inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
if (dev == NULL)
|
||||
return -ENODEV;
|
||||
|
||||
|
@ -988,7 +718,7 @@ index cd3fb30..5ebd42e 100644
|
|||
*/
|
||||
return inet6_addr_add(net, ifm->ifa_index, pfx, peer_pfx,
|
||||
ifm->ifa_prefixlen, ifa_flags,
|
||||
@@ -3739,7 +3777,7 @@ inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
@@ -3723,7 +3792,7 @@ inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
return err;
|
||||
}
|
||||
|
||||
|
@ -997,7 +727,7 @@ index cd3fb30..5ebd42e 100644
|
|||
u8 scope, int ifindex)
|
||||
{
|
||||
struct ifaddrmsg *ifm;
|
||||
@@ -3782,7 +3820,8 @@ static inline int inet6_ifaddr_msgsize(void)
|
||||
@@ -3766,7 +3835,8 @@ static inline int inet6_ifaddr_msgsize(void)
|
||||
return NLMSG_ALIGN(sizeof(struct ifaddrmsg))
|
||||
+ nla_total_size(16) /* IFA_LOCAL */
|
||||
+ nla_total_size(16) /* IFA_ADDRESS */
|
||||
|
@ -1007,7 +737,7 @@ index cd3fb30..5ebd42e 100644
|
|||
}
|
||||
|
||||
static int inet6_fill_ifaddr(struct sk_buff *skb, struct inet6_ifaddr *ifa,
|
||||
@@ -3830,6 +3869,9 @@ static int inet6_fill_ifaddr(struct sk_buff *skb, struct inet6_ifaddr *ifa,
|
||||
@@ -3815,6 +3885,9 @@ static int inet6_fill_ifaddr(struct sk_buff *skb, struct inet6_ifaddr *ifa,
|
||||
if (put_cacheinfo(skb, ifa->cstamp, ifa->tstamp, preferred, valid) < 0)
|
||||
goto error;
|
||||
|
||||
|
@ -1017,37 +747,7 @@ index cd3fb30..5ebd42e 100644
|
|||
return nlmsg_end(skb, nlh);
|
||||
|
||||
error:
|
||||
@@ -4128,13 +4170,11 @@ static inline void ipv6_store_devconf(struct ipv6_devconf *cnf,
|
||||
jiffies_to_msecs(cnf->mldv1_unsolicited_report_interval);
|
||||
array[DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL] =
|
||||
jiffies_to_msecs(cnf->mldv2_unsolicited_report_interval);
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
array[DEVCONF_USE_TEMPADDR] = cnf->use_tempaddr;
|
||||
array[DEVCONF_TEMP_VALID_LFT] = cnf->temp_valid_lft;
|
||||
array[DEVCONF_TEMP_PREFERED_LFT] = cnf->temp_prefered_lft;
|
||||
array[DEVCONF_REGEN_MAX_RETRY] = cnf->regen_max_retry;
|
||||
array[DEVCONF_MAX_DESYNC_FACTOR] = cnf->max_desync_factor;
|
||||
-#endif
|
||||
array[DEVCONF_MAX_ADDRESSES] = cnf->max_addresses;
|
||||
array[DEVCONF_ACCEPT_RA_DEFRTR] = cnf->accept_ra_defrtr;
|
||||
array[DEVCONF_ACCEPT_RA_PINFO] = cnf->accept_ra_pinfo;
|
||||
@@ -4828,7 +4868,6 @@ static struct addrconf_sysctl_table
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_ms_jiffies,
|
||||
},
|
||||
-#ifdef CONFIG_IPV6_PRIVACY
|
||||
{
|
||||
.procname = "use_tempaddr",
|
||||
.data = &ipv6_devconf.use_tempaddr,
|
||||
@@ -4864,7 +4903,6 @@ static struct addrconf_sysctl_table
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec,
|
||||
},
|
||||
-#endif
|
||||
{
|
||||
.procname = "max_addresses",
|
||||
.data = &ipv6_devconf.max_addresses,
|
||||
_______________________________________________
|
||||
kernel mailing list
|
||||
kernel@lists.fedoraproject.org
|
||||
https://admin.fedoraproject.org/mailman/listinfo/kernel
|
||||
https://admin.fedoraproject.org/mailman/listinfo/kernel
|
146
kernel.spec
146
kernel.spec
|
@ -62,19 +62,19 @@ Summary: The Linux kernel
|
|||
# For non-released -rc kernels, this will be appended after the rcX and
|
||||
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
|
||||
#
|
||||
%global baserelease 201
|
||||
%global baserelease 100
|
||||
%global fedora_build %{baserelease}
|
||||
|
||||
# base_sublevel is the kernel version we're starting with and patching
|
||||
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
|
||||
# which yields a base_sublevel of 0.
|
||||
%define base_sublevel 12
|
||||
%define base_sublevel 13
|
||||
|
||||
## If this is a released kernel ##
|
||||
%if 0%{?released_kernel}
|
||||
|
||||
# Do we have a -stable update to apply?
|
||||
%define stable_update 11
|
||||
%define stable_update 3
|
||||
# Is it a -stable RC?
|
||||
%define stable_rc 0
|
||||
# Set rpm version accordingly
|
||||
|
@ -506,28 +506,24 @@ ExclusiveOS: Linux
|
|||
#
|
||||
# List the packages used during the kernel build
|
||||
#
|
||||
BuildRequires: module-init-tools, patch >= 2.5.4, bash >= 2.03, sh-utils, tar
|
||||
BuildRequires: bzip2, xz, findutils, gzip, m4, perl, make >= 3.78, diffutils, gawk
|
||||
BuildRequires: gcc >= 3.4.2, binutils >= 2.12, redhat-rpm-config, hmaccalc
|
||||
BuildRequires: kmod, patch, bash, sh-utils, tar
|
||||
BuildRequires: bzip2, xz, findutils, gzip, m4, perl, perl-Carp, make, diffutils, gawk
|
||||
BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc
|
||||
BuildRequires: net-tools, hostname, bc
|
||||
BuildRequires: xmlto, asciidoc
|
||||
%if %{with_sparse}
|
||||
BuildRequires: sparse >= 0.4.1
|
||||
BuildRequires: sparse
|
||||
%endif
|
||||
%if %{with_perf}
|
||||
BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison
|
||||
BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison flex
|
||||
BuildRequires: audit-libs-devel
|
||||
%endif
|
||||
%if %{with_tools}
|
||||
BuildRequires: pciutils-devel gettext
|
||||
BuildRequires: pciutils-devel gettext ncurses-devel
|
||||
%endif
|
||||
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
|
||||
%if %{with_debuginfo}
|
||||
# Fancy new debuginfo generation introduced in Fedora 8/RHEL 6.
|
||||
# The -r flag to find-debuginfo.sh invokes eu-strip --reloc-debug-sections
|
||||
# which reduces the number of relocations in kernel module .ko.debug files and
|
||||
# was introduced with rpm 4.9 and elfutils 0.153.
|
||||
BuildRequires: rpm-build >= 4.9.0-1, elfutils >= elfutils-0.153-1
|
||||
BuildRequires: rpm-build, elfutils
|
||||
%define debuginfo_args --strict-build-id -r
|
||||
%endif
|
||||
|
||||
|
@ -643,16 +639,20 @@ Patch470: die-floppy-die.patch
|
|||
Patch510: silence-noise.patch
|
||||
Patch530: silence-fbcon-logo.patch
|
||||
|
||||
Patch600: x86-allow-1024-cpus.patch
|
||||
Patch600: 0001-lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
||||
|
||||
#rhbz 917708
|
||||
Patch700: Revert-userns-Allow-unprivileged-users-to-create-use.patch
|
||||
|
||||
Patch800: crash-driver.patch
|
||||
|
||||
# crypto/
|
||||
|
||||
# keys
|
||||
|
||||
# secure boot
|
||||
Patch1000: devel-pekey-secure-boot-20130502.patch
|
||||
Patch1000: secure-modules.patch
|
||||
Patch1001: modsign-uefi.patch
|
||||
Patch1002: sb-hibernate.patch
|
||||
Patch1003: sysrq-secure-boot.patch
|
||||
|
||||
# virt + ksm patches
|
||||
|
||||
|
@ -660,10 +660,9 @@ Patch1000: devel-pekey-secure-boot-20130502.patch
|
|||
|
||||
# nouveau + drm fixes
|
||||
# intel drm is all merged upstream
|
||||
Patch1826: drm-i915-hush-check-crtc-state.patch
|
||||
|
||||
# Quiet boot fixes
|
||||
# silence the ACPI blacklist code
|
||||
Patch2802: silence-acpi-blacklist.patch
|
||||
|
||||
# fs fixes
|
||||
|
||||
|
@ -700,11 +699,8 @@ Patch21025: arm-imx6-utilite.patch
|
|||
|
||||
# am33xx (BeagleBone)
|
||||
# https://github.com/beagleboard/kernel
|
||||
# Pulled primarily from the above git repo. First patch is all in arm-soc
|
||||
# scheduled for 3.13. The others should be landing via other trees
|
||||
Patch21030: arm-am33xx-arm-soc-upstream.patch
|
||||
# Pulled primarily from the above git repo and should be landing upstream
|
||||
Patch21031: arm-am33xx-bblack.patch
|
||||
Patch21032: arm-am33xx-cpsw.patch
|
||||
|
||||
#rhbz 754518
|
||||
Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
|
||||
|
@ -719,14 +715,9 @@ Patch22000: weird-root-dentry-name-debug.patch
|
|||
|
||||
Patch25047: drm-radeon-Disable-writeback-by-default-on-ppc.patch
|
||||
|
||||
#rhbz 896695
|
||||
Patch25127: 0002-iwlwifi-don-t-WARN-on-bad-firmware-state.patch
|
||||
|
||||
#rhbz 993744
|
||||
Patch25128: dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
|
||||
|
||||
Patch25140: drm-qxl-backport-fixes-for-Fedora.patch
|
||||
|
||||
#rhbz 1011362
|
||||
Patch25148: alx-Reset-phy-speed-after-resume.patch
|
||||
|
||||
|
@ -739,9 +730,6 @@ Patch25166: sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch
|
|||
Patch25167: rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch
|
||||
Patch25168: rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-notification-fails.patch
|
||||
|
||||
#rhbz 958826
|
||||
Patch25164: dell-laptop.patch
|
||||
|
||||
#rhbz 1030802
|
||||
Patch25171: elantech-Properly-differentiate-between-clickpads-an.patch
|
||||
|
||||
|
@ -751,23 +739,19 @@ Patch25179: KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch
|
|||
#rhbz 1047892
|
||||
Patch25180: KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch
|
||||
|
||||
#rhbz 1044471
|
||||
Patch25181: tg3-Add-support-for-new-577xx-device-ids.patch
|
||||
#rhbz 1003167 1046238
|
||||
Patch25181: 0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch
|
||||
Patch25182: 0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch
|
||||
Patch25183: 0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch
|
||||
|
||||
#rhbz 953211
|
||||
Patch25182: Input-ALPS-add-support-for-Dolphin-devices.patch
|
||||
|
||||
#rhbz 1056711
|
||||
Patch25183: ipv6-introduce-IFA_F_NOPREFIXROUTE-and-IFA_F_MANAGETEMPADDR-flags.patch
|
||||
|
||||
#rhbz 1057533
|
||||
Patch25155: ipv6-addrconf-revert-if_inet6ifa_flag-format.patch
|
||||
Patch25184: Input-ALPS-add-support-for-Dolphin-devices.patch
|
||||
|
||||
#rhbz 990955
|
||||
Patch25185: ath9k_htc-make-sta_rc_update-atomic-for-most-calls.patch
|
||||
Patch25186: ath9k_htc-make-sta_rc_update-atomic-for-most-calls.patch
|
||||
|
||||
#rhbz 950630
|
||||
Patch25186: xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch
|
||||
Patch25187: xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch
|
||||
|
||||
#CVE-2014-1874 rhbz 1062356 1062507
|
||||
Patch25188: SELinux-Fix-kernel-BUG-on-empty-security-contexts.patch
|
||||
|
@ -778,10 +762,14 @@ Patch25189: tick-Clear-broadcast-pending-bit-when-switching-to-oneshot.patch
|
|||
#rhbz 1045755
|
||||
Patch25195: cgroup-fixes.patch
|
||||
|
||||
#rhbz 1064430 1056711
|
||||
Patch25196: ipv6-introduce-IFA_F_NOPREFIXROUTE-and-IFA_F_MANAGETEMPADDR-flags.patch
|
||||
Patch25197: ipv6-addrconf-revert-if_inet6ifa_flag-format.patch
|
||||
|
||||
#rhbz 1051918
|
||||
Patch25198: pinctrl-protect-pinctrl_list-add.patch
|
||||
|
||||
#CVE-2014-0069 rhbz 1064253 1062585
|
||||
#CVE-2014-0069 rhbz 1064253 1062584
|
||||
Patch25200: cifs-ensure-that-uncached-writes-handle-unmapped-areas-correctly.patch
|
||||
Patch25201: cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
||||
|
||||
|
@ -1326,7 +1314,7 @@ ApplyOptionalPatch upstream-reverts.patch -R
|
|||
|
||||
# Architecture patches
|
||||
# x86(-64)
|
||||
ApplyPatch x86-allow-1024-cpus.patch
|
||||
ApplyPatch 0001-lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
||||
|
||||
# ARM64
|
||||
|
||||
|
@ -1339,9 +1327,7 @@ ApplyPatch arm-omap-load-tfp410.patch
|
|||
ApplyPatch arm-tegra-usb-no-reset-linux33.patch
|
||||
ApplyPatch arm-imx6-utilite.patch
|
||||
|
||||
ApplyPatch arm-am33xx-arm-soc-upstream.patch
|
||||
ApplyPatch arm-am33xx-bblack.patch
|
||||
ApplyPatch arm-am33xx-cpsw.patch
|
||||
|
||||
#
|
||||
# bugfixes to drivers and filesystems
|
||||
|
@ -1398,14 +1384,21 @@ ApplyPatch silence-fbcon-logo.patch
|
|||
|
||||
# Changes to upstream defaults.
|
||||
|
||||
#rhbz 917708
|
||||
ApplyPatch Revert-userns-Allow-unprivileged-users-to-create-use.patch
|
||||
|
||||
# /dev/crash driver.
|
||||
ApplyPatch crash-driver.patch
|
||||
|
||||
# crypto/
|
||||
|
||||
# keys
|
||||
|
||||
# secure boot
|
||||
ApplyPatch devel-pekey-secure-boot-20130502.patch
|
||||
ApplyPatch secure-modules.patch
|
||||
ApplyPatch modsign-uefi.patch
|
||||
ApplyPatch sb-hibernate.patch
|
||||
ApplyPatch sysrq-secure-boot.patch
|
||||
|
||||
# Assorted Virt Fixes
|
||||
|
||||
|
@ -1414,12 +1407,10 @@ ApplyPatch devel-pekey-secure-boot-20130502.patch
|
|||
# Nouveau DRM
|
||||
|
||||
# Intel DRM
|
||||
ApplyPatch drm-i915-hush-check-crtc-state.patch
|
||||
|
||||
# Radeon DRM
|
||||
|
||||
# silence the ACPI blacklist code
|
||||
ApplyPatch silence-acpi-blacklist.patch
|
||||
|
||||
# Patches headed upstream
|
||||
ApplyPatch fs-proc-devtree-remove_proc_entry.patch
|
||||
|
||||
|
@ -1446,14 +1437,9 @@ ApplyPatch ath9k_rx_dma_stop_check.patch
|
|||
|
||||
ApplyPatch drm-radeon-Disable-writeback-by-default-on-ppc.patch
|
||||
|
||||
#rhbz 896695
|
||||
ApplyPatch 0002-iwlwifi-don-t-WARN-on-bad-firmware-state.patch
|
||||
|
||||
#rhbz 993744
|
||||
ApplyPatch dm-cache-policy-mq_fix-large-scale-table-allocation-bug.patch
|
||||
|
||||
ApplyPatch drm-qxl-backport-fixes-for-Fedora.patch
|
||||
|
||||
#rhbz 1011362
|
||||
ApplyPatch alx-Reset-phy-speed-after-resume.patch
|
||||
|
||||
|
@ -1466,9 +1452,6 @@ ApplyPatch rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch
|
|||
ApplyPatch sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch
|
||||
ApplyPatch rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-notification-fails.patch
|
||||
|
||||
#rhbz 958826
|
||||
ApplyPatch dell-laptop.patch
|
||||
|
||||
#rhbz 1030802
|
||||
ApplyPatch elantech-Properly-differentiate-between-clickpads-an.patch
|
||||
|
||||
|
@ -1478,16 +1461,14 @@ ApplyPatch KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch
|
|||
#rhbz 1047892
|
||||
ApplyPatch KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch
|
||||
|
||||
#rhbz 1044471
|
||||
ApplyPatch tg3-Add-support-for-new-577xx-device-ids.patch
|
||||
#rhbz 1003167 1046238
|
||||
ApplyPatch 0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch
|
||||
ApplyPatch 0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch
|
||||
ApplyPatch 0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch
|
||||
|
||||
#rhbz 953211
|
||||
ApplyPatch Input-ALPS-add-support-for-Dolphin-devices.patch
|
||||
|
||||
#rhbz 1056711
|
||||
ApplyPatch ipv6-introduce-IFA_F_NOPREFIXROUTE-and-IFA_F_MANAGETEMPADDR-flags.patch
|
||||
ApplyPatch ipv6-addrconf-revert-if_inet6ifa_flag-format.patch
|
||||
|
||||
#rhbz 990955
|
||||
ApplyPatch ath9k_htc-make-sta_rc_update-atomic-for-most-calls.patch
|
||||
|
||||
|
@ -1503,10 +1484,14 @@ ApplyPatch tick-Clear-broadcast-pending-bit-when-switching-to-oneshot.patch
|
|||
#rhbz 1045755
|
||||
ApplyPatch cgroup-fixes.patch
|
||||
|
||||
#rhbz 1064430 1056711
|
||||
ApplyPatch ipv6-introduce-IFA_F_NOPREFIXROUTE-and-IFA_F_MANAGETEMPADDR-flags.patch
|
||||
ApplyPatch ipv6-addrconf-revert-if_inet6ifa_flag-format.patch
|
||||
|
||||
#rhbz 1051918
|
||||
ApplyPatch pinctrl-protect-pinctrl_list-add.patch
|
||||
|
||||
#CVE-2014-0069 rhbz 1064253 1062585
|
||||
#CVE-2014-0069 rhbz 1064253 1062584
|
||||
ApplyPatch cifs-ensure-that-uncached-writes-handle-unmapped-areas-correctly.patch
|
||||
ApplyPatch cifs-sanity-check-length-of-data-to-send-before-sending.patch
|
||||
|
||||
|
@ -1902,6 +1887,8 @@ make %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
|
|||
popd
|
||||
%endif #turbostat/x86_energy_perf_policy
|
||||
%endif
|
||||
pushd tools/thermal/tmon/
|
||||
make
|
||||
%endif
|
||||
|
||||
%if %{with_doc}
|
||||
|
@ -1925,26 +1912,18 @@ find Documentation -type d | xargs chmod u+w
|
|||
# that will strip the signature off of the modules.
|
||||
|
||||
%define __modsign_install_post \
|
||||
if [ "%{signmodules}" == "1" ]; then \
|
||||
if [ "%{signmodules}" -eq "1" ]; then \
|
||||
if [ "%{with_pae}" -ne "0" ]; then \
|
||||
mv signing_key.priv.sign.%{pae} signing_key.priv \
|
||||
mv signing_key.x509.sign.%{pae} signing_key.x509 \
|
||||
%{modsign_cmd} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.%{pae}/ \
|
||||
%{modsign_cmd} signing_key.priv.sign.%{pae} signing_key.x509.sign+%{pae} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.%{pae}/ \
|
||||
fi \
|
||||
if [ "%{with_debug}" -ne "0" ]; then \
|
||||
mv signing_key.priv.sign.debug signing_key.priv \
|
||||
mv signing_key.x509.sign.debug signing_key.x509 \
|
||||
%{modsign_cmd} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.debug/ \
|
||||
%{modsign_cmd} signing_key.priv.sign.debug signing_key.x509.sign+debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.debug/ \
|
||||
fi \
|
||||
if [ "%{with_pae_debug}" -ne "0" ]; then \
|
||||
mv signing_key.priv.sign.%{pae}debug signing_key.priv \
|
||||
mv signing_key.x509.sign.%{pae}debug signing_key.x509 \
|
||||
%{modsign_cmd} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.%{pae}debug/ \
|
||||
%{modsign_cmd} signing_key.priv.sign.%{pae}debug signing_key.x509.sign+%{pae}debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.%{pae}debug/ \
|
||||
fi \
|
||||
if [ "%{with_up}" -ne "0" ]; then \
|
||||
mv signing_key.priv.sign signing_key.priv \
|
||||
mv signing_key.x509.sign signing_key.x509 \
|
||||
%{modsign_cmd} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
|
||||
%{modsign_cmd} signing_key.priv.sign signing_key.x509.sign $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
|
||||
fi \
|
||||
fi \
|
||||
%{nil}
|
||||
|
@ -2030,6 +2009,8 @@ find $RPM_BUILD_ROOT/usr/include \
|
|||
%if %{with_perf}
|
||||
# perf tool binary and supporting scripts/binaries
|
||||
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install
|
||||
# remove the 'trace' symlink.
|
||||
rm -f %{buildroot}%{_bindir}/trace
|
||||
|
||||
# python-perf extension
|
||||
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
|
||||
|
@ -2070,6 +2051,9 @@ install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
|
|||
make DESTDIR=%{buildroot} install
|
||||
popd
|
||||
%endif #turbostat/x86_energy_perf_policy
|
||||
pushd tools/thermal/tmon
|
||||
make INSTALL_ROOT=%{buildroot} install
|
||||
popd
|
||||
%endif
|
||||
|
||||
%if %{with_bootwrapper}
|
||||
|
@ -2251,6 +2235,7 @@ fi
|
|||
%{_bindir}/turbostat
|
||||
%{_mandir}/man8/turbostat*
|
||||
%endif
|
||||
%{_bindir}/tmon
|
||||
%endif
|
||||
|
||||
%if %{with_debuginfo}
|
||||
|
@ -2326,6 +2311,9 @@ fi
|
|||
# and build.
|
||||
|
||||
%changelog
|
||||
* Tue Feb 18 2014 Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
- Linux v3.13.3
|
||||
|
||||
* Tue Feb 18 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix r8169 ethernet after suspend (rhbz 1054408)
|
||||
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
Bugzilla: N/A
|
||||
Upstream-status: queued in NFS git tree (for 3.13/3.14?)
|
||||
Upstream-status: sent for 3.14
|
||||
|
||||
From 6aa23d76a7b549521a03b63b6d5b7880ea87eab7 Mon Sep 17 00:00:00 2001
|
||||
From: Jeff Layton <jlayton@redhat.com>
|
||||
Date: Thu, 14 Nov 2013 07:25:19 -0500
|
||||
Subject: [PATCH] nfs: check if gssd is running before attempting to use krb5i
|
||||
auth in SETCLIENTID call
|
||||
|
||||
Currently, the client will attempt to use krb5i in the SETCLIENTID call
|
||||
even if rpc.gssd isn't running. When that fails, it'll then fall back to
|
||||
|
@ -14,12 +20,13 @@ fail at a later stage of the mount attempt.
|
|||
Signed-off-by: Jeff Layton <jlayton@redhat.com>
|
||||
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
|
||||
---
|
||||
fs/nfs/nfs4client.c | 7 ++++++-
|
||||
1 files changed, 6 insertions(+), 1 deletions(-)
|
||||
fs/nfs/nfs4client.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c
|
||||
--- linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig 2013-09-02 16:46:10.000000000 -0400
|
||||
+++ linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c 2013-11-21 10:20:27.288286000 -0500
|
||||
diff --git a/fs/nfs/nfs4client.c b/fs/nfs/nfs4client.c
|
||||
index b4a160a..c1b7a80 100644
|
||||
--- a/fs/nfs/nfs4client.c
|
||||
+++ b/fs/nfs/nfs4client.c
|
||||
@@ -10,6 +10,7 @@
|
||||
#include <linux/sunrpc/auth.h>
|
||||
#include <linux/sunrpc/xprt.h>
|
||||
|
@ -28,10 +35,10 @@ diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.
|
|||
#include "internal.h"
|
||||
#include "callback.h"
|
||||
#include "delegation.h"
|
||||
@@ -206,7 +207,11 @@ struct nfs_client *nfs4_init_client(stru
|
||||
if (clp->cl_minorversion != 0)
|
||||
@@ -370,7 +371,11 @@ struct nfs_client *nfs4_init_client(struct nfs_client *clp,
|
||||
__set_bit(NFS_CS_INFINITE_SLOTS, &clp->cl_flags);
|
||||
__set_bit(NFS_CS_DISCRTRY, &clp->cl_flags);
|
||||
__set_bit(NFS_CS_NO_RETRANS_TIMEOUT, &clp->cl_flags);
|
||||
- error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_GSS_KRB5I);
|
||||
+
|
||||
+ error = -EINVAL;
|
||||
|
@ -41,8 +48,6 @@ diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.
|
|||
if (error == -EINVAL)
|
||||
error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_UNIX);
|
||||
if (error < 0)
|
||||
--
|
||||
1.8.2.1
|
||||
|
||||
_______________________________________________
|
||||
kernel mailing list
|
||||
kernel@lists.fedoraproject.org
|
||||
https://admin.fedoraproject.org/mailman/listinfo/kernel
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
From 8dea807503a1ba88d9e27595daae7f86ec968711 Mon Sep 17 00:00:00 2001
|
||||
Bugzilla: N/A
|
||||
Upstream-status: Fedora mustard. Replaced by securelevels, but that was nak'd
|
||||
|
||||
From 0fc411ee00c81b8a18b1417d31f2736fad155d89 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Aug 2013 17:58:15 -0400
|
||||
Subject: [PATCH 01/14] Add secure_modules() call
|
||||
|
@ -14,10 +17,10 @@ Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
|||
2 files changed, 17 insertions(+)
|
||||
|
||||
diff --git a/include/linux/module.h b/include/linux/module.h
|
||||
index 46f1ea0..0c266b2 100644
|
||||
index 05f2447..de97e77 100644
|
||||
--- a/include/linux/module.h
|
||||
+++ b/include/linux/module.h
|
||||
@@ -509,6 +509,8 @@ int unregister_module_notifier(struct notifier_block * nb);
|
||||
@@ -515,6 +515,8 @@ int unregister_module_notifier(struct notifier_block * nb);
|
||||
|
||||
extern void print_modules(void);
|
||||
|
||||
|
@ -26,7 +29,7 @@ index 46f1ea0..0c266b2 100644
|
|||
#else /* !CONFIG_MODULES... */
|
||||
|
||||
/* Given an address, look for it in the exception tables. */
|
||||
@@ -619,6 +621,11 @@ static inline int unregister_module_notifier(struct notifier_block * nb)
|
||||
@@ -625,6 +627,11 @@ static inline int unregister_module_notifier(struct notifier_block * nb)
|
||||
static inline void print_modules(void)
|
||||
{
|
||||
}
|
||||
|
@ -39,10 +42,10 @@ index 46f1ea0..0c266b2 100644
|
|||
|
||||
#ifdef CONFIG_SYSFS
|
||||
diff --git a/kernel/module.c b/kernel/module.c
|
||||
index 2069158..0e94acf 100644
|
||||
index dc58274..81206c1 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -3852,3 +3852,13 @@ void module_layout(struct module *mod,
|
||||
@@ -3860,3 +3860,13 @@ void module_layout(struct module *mod,
|
||||
}
|
||||
EXPORT_SYMBOL(module_layout);
|
||||
#endif
|
||||
|
@ -60,7 +63,7 @@ index 2069158..0e94acf 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From 9b7b3f6283bf784e4ea1c34e52646b12971b2823 Mon Sep 17 00:00:00 2001
|
||||
From b94942e55b519e70366e970cea3665c464d1b7da Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Thu, 8 Mar 2012 10:10:38 -0500
|
||||
Subject: [PATCH 02/14] PCI: Lock down BAR access when module security is
|
||||
|
@ -80,7 +83,7 @@ Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
|||
3 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
|
||||
index c0dbe1f..cd4e35f 100644
|
||||
index d8eb880..a851ad6 100644
|
||||
--- a/drivers/pci/pci-sysfs.c
|
||||
+++ b/drivers/pci/pci-sysfs.c
|
||||
@@ -29,6 +29,7 @@
|
||||
|
@ -91,7 +94,7 @@ index c0dbe1f..cd4e35f 100644
|
|||
#include "pci.h"
|
||||
|
||||
static int sysfs_initialized; /* = 0 */
|
||||
@@ -624,6 +625,9 @@ pci_write_config(struct file* filp, struct kobject *kobj,
|
||||
@@ -644,6 +645,9 @@ pci_write_config(struct file* filp, struct kobject *kobj,
|
||||
loff_t init_off = off;
|
||||
u8 *data = (u8*) buf;
|
||||
|
||||
|
@ -101,7 +104,7 @@ index c0dbe1f..cd4e35f 100644
|
|||
if (off > dev->cfg_size)
|
||||
return 0;
|
||||
if (off + count > dev->cfg_size) {
|
||||
@@ -930,6 +934,9 @@ pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr,
|
||||
@@ -950,6 +954,9 @@ pci_mmap_resource(struct kobject *kobj, struct bin_attribute *attr,
|
||||
resource_size_t start, end;
|
||||
int i;
|
||||
|
||||
|
@ -111,7 +114,7 @@ index c0dbe1f..cd4e35f 100644
|
|||
for (i = 0; i < PCI_ROM_RESOURCE; i++)
|
||||
if (res == &pdev->resource[i])
|
||||
break;
|
||||
@@ -1037,6 +1044,9 @@ pci_write_resource_io(struct file *filp, struct kobject *kobj,
|
||||
@@ -1057,6 +1064,9 @@ pci_write_resource_io(struct file *filp, struct kobject *kobj,
|
||||
struct bin_attribute *attr, char *buf,
|
||||
loff_t off, size_t count)
|
||||
{
|
||||
|
@ -179,7 +182,7 @@ index e1c1ec5..bffbf71 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From aac2425a2664c09c2a369e1eec6e7a5bc2713cb1 Mon Sep 17 00:00:00 2001
|
||||
From 36f34509fe52cc49e1b1f6815a3f235040f64a03 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Thu, 8 Mar 2012 10:35:59 -0500
|
||||
Subject: [PATCH 03/14] x86: Lock down IO port access when module security is
|
||||
|
@ -252,7 +255,7 @@ index f895a8c..1af8664 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From e7f9789c7eedf291972666befee726ff8e7126f6 Mon Sep 17 00:00:00 2001
|
||||
From 67d9800dcf60467e076587b0aac67bcdc516cfe2 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Mar 2012 08:39:37 -0500
|
||||
Subject: [PATCH 04/14] ACPI: Limit access to custom_method
|
||||
|
@ -284,7 +287,7 @@ index 12b62f2..50647b3 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From d81cd6628c821d47bd086354cbc57b1474f3c1a8 Mon Sep 17 00:00:00 2001
|
||||
From bdf3761573167c20c72b151c1088b24fd24869ac Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Mar 2012 08:46:50 -0500
|
||||
Subject: [PATCH 05/14] asus-wmi: Restrict debugfs interface when module
|
||||
|
@ -339,7 +342,7 @@ index 19c313b..db18ef66 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From df75e984729ef50bb691b4d15472529fcd81580b Mon Sep 17 00:00:00 2001
|
||||
From 65d88af5a2c6bb6d01da17819d8ba782bd208837 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Mar 2012 09:28:15 -0500
|
||||
Subject: [PATCH 06/14] Restrict /dev/mem and /dev/kmem when module loading is
|
||||
|
@ -382,7 +385,7 @@ index 1af8664..61406c8 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From 78955913cc46cc5e5c7f2c71c1b07a5c18e06456 Mon Sep 17 00:00:00 2001
|
||||
From 4aa42b7fa5d7f79eb1d179e728ffa561fd9cf354 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Boyer <jwboyer@redhat.com>
|
||||
Date: Mon, 25 Jun 2012 19:57:30 -0400
|
||||
Subject: [PATCH 07/14] acpi: Ignore acpi_rsdp kernel parameter when module
|
||||
|
@ -398,7 +401,7 @@ Signed-off-by: Josh Boyer <jwboyer@redhat.com>
|
|||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
|
||||
index 6ab2c35..e4c4410 100644
|
||||
index e5f416c..9311c00 100644
|
||||
--- a/drivers/acpi/osl.c
|
||||
+++ b/drivers/acpi/osl.c
|
||||
@@ -45,6 +45,7 @@
|
||||
|
@ -409,7 +412,7 @@ index 6ab2c35..e4c4410 100644
|
|||
|
||||
#include <asm/io.h>
|
||||
#include <asm/uaccess.h>
|
||||
@@ -245,7 +246,7 @@ early_param("acpi_rsdp", setup_acpi_rsdp);
|
||||
@@ -249,7 +250,7 @@ early_param("acpi_rsdp", setup_acpi_rsdp);
|
||||
acpi_physical_address __init acpi_os_get_root_pointer(void)
|
||||
{
|
||||
#ifdef CONFIG_KEXEC
|
||||
|
@ -422,7 +425,7 @@ index 6ab2c35..e4c4410 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From 23aae9143fbece326b3a26bf5ba48956c99cabe4 Mon Sep 17 00:00:00 2001
|
||||
From c9e62c2ce588d98a774a3853e56d95e48b9df98c Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Aug 2013 03:33:56 -0400
|
||||
Subject: [PATCH 08/14] kexec: Disable at runtime if the kernel enforces module
|
||||
|
@ -438,7 +441,7 @@ Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
|||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/kernel/kexec.c b/kernel/kexec.c
|
||||
index 59f7b55..3e2b63a 100644
|
||||
index 2a74f30..13601e3 100644
|
||||
--- a/kernel/kexec.c
|
||||
+++ b/kernel/kexec.c
|
||||
@@ -32,6 +32,7 @@
|
||||
|
@ -467,7 +470,7 @@ index 59f7b55..3e2b63a 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From 218cd49aa2d6a085c5c4edc0396200864f0b54ad Mon Sep 17 00:00:00 2001
|
||||
From d0e3cb2c13dc9634849ddacf75b6f0d94147516a Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Tue, 3 Sep 2013 11:23:29 -0400
|
||||
Subject: [PATCH 09/14] uswsusp: Disable when module loading is restricted
|
||||
|
@ -482,7 +485,7 @@ Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
|||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/kernel/power/user.c b/kernel/power/user.c
|
||||
index 4ed81e7..15cb72f 100644
|
||||
index 957f061..e570609d 100644
|
||||
--- a/kernel/power/user.c
|
||||
+++ b/kernel/power/user.c
|
||||
@@ -24,6 +24,7 @@
|
||||
|
@ -493,7 +496,7 @@ index 4ed81e7..15cb72f 100644
|
|||
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
@@ -48,6 +49,9 @@ static int snapshot_open(struct inode *inode, struct file *filp)
|
||||
@@ -49,6 +50,9 @@ static int snapshot_open(struct inode *inode, struct file *filp)
|
||||
struct snapshot_data *data;
|
||||
int error;
|
||||
|
||||
|
@ -507,7 +510,7 @@ index 4ed81e7..15cb72f 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From beeaac053d4ae57dc65be1da8b46e5d4bc6542b8 Mon Sep 17 00:00:00 2001
|
||||
From b238417ed3c5a0b21bbfcac84f6c70011b8977c0 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 8 Feb 2013 11:12:13 -0800
|
||||
Subject: [PATCH 10/14] x86: Restrict MSR access when module loading is
|
||||
|
@ -524,7 +527,7 @@ Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
|
|||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/arch/x86/kernel/msr.c b/arch/x86/kernel/msr.c
|
||||
index 88458fa..d08f7e3 100644
|
||||
index 05266b5..e2bd647 100644
|
||||
--- a/arch/x86/kernel/msr.c
|
||||
+++ b/arch/x86/kernel/msr.c
|
||||
@@ -103,6 +103,9 @@ static ssize_t msr_write(struct file *file, const char __user *buf,
|
||||
|
@ -552,7 +555,7 @@ index 88458fa..d08f7e3 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From b4331711c52aff0a6a9cef0f4b52fe261874d6f2 Mon Sep 17 00:00:00 2001
|
||||
From c3a9afb3b580b4f721d245fc5d13e378b99b9cd8 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Garrett <matthew.garrett@nebula.com>
|
||||
Date: Fri, 9 Aug 2013 18:36:30 -0400
|
||||
Subject: [PATCH 11/14] Add option to automatically enforce module signatures
|
||||
|
@ -588,12 +591,12 @@ index 199f453..ec38acf 100644
|
|||
290/040 ALL edd_mbr_sig_buffer EDD MBR signatures
|
||||
2D0/A00 ALL e820_map E820 memory map table
|
||||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||||
index b32ebf9..6a6c19b 100644
|
||||
index 725e157..fe212ef 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -1581,6 +1581,16 @@ config EFI_STUB
|
||||
@@ -1604,6 +1604,16 @@ config EFI_STUB
|
||||
|
||||
See Documentation/x86/efi-stub.txt for more information.
|
||||
See Documentation/efi-stub.txt for more information.
|
||||
|
||||
+config EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
+ def_bool n
|
||||
|
@ -609,7 +612,7 @@ index b32ebf9..6a6c19b 100644
|
|||
def_bool y
|
||||
prompt "Enable seccomp to safely compute untrusted bytecode"
|
||||
diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c
|
||||
index b7388a4..53bfe4f 100644
|
||||
index a7677ba..4e172e9 100644
|
||||
--- a/arch/x86/boot/compressed/eboot.c
|
||||
+++ b/arch/x86/boot/compressed/eboot.c
|
||||
@@ -12,6 +12,7 @@
|
||||
|
@ -620,10 +623,10 @@ index b7388a4..53bfe4f 100644
|
|||
|
||||
#undef memcpy /* Use memcpy from misc.c */
|
||||
|
||||
@@ -861,6 +862,37 @@ fail:
|
||||
return status;
|
||||
@@ -741,6 +742,37 @@ free_mem_map:
|
||||
}
|
||||
|
||||
|
||||
+static int get_secure_boot(void)
|
||||
+{
|
||||
+ u8 sb, setup;
|
||||
|
@ -656,9 +659,9 @@ index b7388a4..53bfe4f 100644
|
|||
+
|
||||
+
|
||||
/*
|
||||
* Because the x86 boot code expects to be passed a boot_params we
|
||||
* need to create one ourselves (usually the bootloader would create
|
||||
@@ -1169,6 +1201,10 @@ struct boot_params *efi_main(void *handle, efi_system_table_t *_table,
|
||||
* On success we return a pointer to a boot_params structure, and NULL
|
||||
* on failure.
|
||||
@@ -760,6 +792,10 @@ struct boot_params *efi_main(void *handle, efi_system_table_t *_table,
|
||||
if (sys_table->hdr.signature != EFI_SYSTEM_TABLE_SIGNATURE)
|
||||
goto fail;
|
||||
|
||||
|
@ -670,7 +673,7 @@ index b7388a4..53bfe4f 100644
|
|||
|
||||
setup_efi_pci(boot_params);
|
||||
diff --git a/arch/x86/include/uapi/asm/bootparam.h b/arch/x86/include/uapi/asm/bootparam.h
|
||||
index c15ddaf..85d7685 100644
|
||||
index 9c3733c..a7ba210 100644
|
||||
--- a/arch/x86/include/uapi/asm/bootparam.h
|
||||
+++ b/arch/x86/include/uapi/asm/bootparam.h
|
||||
@@ -131,7 +131,8 @@ struct boot_params {
|
||||
|
@ -684,10 +687,10 @@ index c15ddaf..85d7685 100644
|
|||
* The sentinel is set to a nonzero value (0xff) in header.S.
|
||||
*
|
||||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
|
||||
index f8ec578..deeb7bc 100644
|
||||
index 918d489..fe429c1 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -1129,6 +1129,12 @@ void __init setup_arch(char **cmdline_p)
|
||||
@@ -1127,6 +1127,12 @@ void __init setup_arch(char **cmdline_p)
|
||||
|
||||
io_delay_init();
|
||||
|
||||
|
@ -701,10 +704,10 @@ index f8ec578..deeb7bc 100644
|
|||
* Parse the ACPI tables for possible boot-time SMP configuration.
|
||||
*/
|
||||
diff --git a/include/linux/module.h b/include/linux/module.h
|
||||
index 0c266b2..5a6374a 100644
|
||||
index de97e77..d69fe19 100644
|
||||
--- a/include/linux/module.h
|
||||
+++ b/include/linux/module.h
|
||||
@@ -184,6 +184,12 @@ const struct exception_table_entry *search_exception_tables(unsigned long add);
|
||||
@@ -190,6 +190,12 @@ const struct exception_table_entry *search_exception_tables(unsigned long add);
|
||||
|
||||
struct notifier_block;
|
||||
|
||||
|
@ -718,10 +721,10 @@ index 0c266b2..5a6374a 100644
|
|||
|
||||
extern int modules_disabled; /* for sysctl */
|
||||
diff --git a/kernel/module.c b/kernel/module.c
|
||||
index 0e94acf..974139b 100644
|
||||
index 81206c1..e1428f0 100644
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -3853,6 +3853,13 @@ void module_layout(struct module *mod,
|
||||
@@ -3861,6 +3861,13 @@ void module_layout(struct module *mod,
|
||||
EXPORT_SYMBOL(module_layout);
|
||||
#endif
|
||||
|
||||
|
@ -739,7 +742,7 @@ index 0e94acf..974139b 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From bb28516d346e6511f1e012321c48eb142763e539 Mon Sep 17 00:00:00 2001
|
||||
From 27a1aa77c7fbaaae8c6a776190a38dcbf3c3d6d2 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Boyer <jwboyer@redhat.com>
|
||||
Date: Tue, 5 Feb 2013 19:25:05 -0500
|
||||
Subject: [PATCH 12/14] efi: Disable secure boot if shim is in insecure mode
|
||||
|
@ -756,10 +759,10 @@ Signed-off-by: Josh Boyer <jwboyer@redhat.com>
|
|||
1 file changed, 19 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c
|
||||
index 53bfe4f..946028b 100644
|
||||
index 4e172e9..4905f4d 100644
|
||||
--- a/arch/x86/boot/compressed/eboot.c
|
||||
+++ b/arch/x86/boot/compressed/eboot.c
|
||||
@@ -864,8 +864,9 @@ fail:
|
||||
@@ -744,8 +744,9 @@ free_mem_map:
|
||||
|
||||
static int get_secure_boot(void)
|
||||
{
|
||||
|
@ -770,7 +773,7 @@ index 53bfe4f..946028b 100644
|
|||
efi_guid_t var_guid = EFI_GLOBAL_VARIABLE_GUID;
|
||||
efi_status_t status;
|
||||
|
||||
@@ -889,6 +890,23 @@ static int get_secure_boot(void)
|
||||
@@ -769,6 +770,23 @@ static int get_secure_boot(void)
|
||||
if (setup == 1)
|
||||
return 0;
|
||||
|
||||
|
@ -798,7 +801,7 @@ index 53bfe4f..946028b 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From 4c8824bac8d4284e66c39c365ba84151f2d78e87 Mon Sep 17 00:00:00 2001
|
||||
From 2a445ca2c187da4497ef5f68f111574fd2b0d419 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Tue, 27 Aug 2013 13:28:43 -0400
|
||||
Subject: [PATCH 13/14] efi: Make EFI_SECURE_BOOT_SIG_ENFORCE depend on EFI
|
||||
|
@ -812,11 +815,11 @@ Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
|||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||||
index 6a6c19b..10498ec 100644
|
||||
index fe212ef..bf83fd3 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -1582,7 +1582,8 @@ config EFI_STUB
|
||||
See Documentation/x86/efi-stub.txt for more information.
|
||||
@@ -1605,7 +1605,8 @@ config EFI_STUB
|
||||
See Documentation/efi-stub.txt for more information.
|
||||
|
||||
config EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
- def_bool n
|
||||
|
@ -829,7 +832,7 @@ index 6a6c19b..10498ec 100644
|
|||
1.8.3.1
|
||||
|
||||
|
||||
From 871b0ed1847c3c5413a4ca72ecf18735858f7708 Mon Sep 17 00:00:00 2001
|
||||
From b1c533cc1d1ca7a03497cc4f2e1b029bde95633c Mon Sep 17 00:00:00 2001
|
||||
From: Josh Boyer <jwboyer@fedoraproject.org>
|
||||
Date: Tue, 27 Aug 2013 13:33:03 -0400
|
||||
Subject: [PATCH 14/14] efi: Add EFI_SECURE_BOOT bit
|
||||
|
@ -844,10 +847,10 @@ Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
|
|||
2 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
|
||||
index deeb7bc..08dc16e 100644
|
||||
index fe429c1..469fbf0 100644
|
||||
--- a/arch/x86/kernel/setup.c
|
||||
+++ b/arch/x86/kernel/setup.c
|
||||
@@ -1131,7 +1131,9 @@ void __init setup_arch(char **cmdline_p)
|
||||
@@ -1129,7 +1129,9 @@ void __init setup_arch(char **cmdline_p)
|
||||
|
||||
#ifdef CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE
|
||||
if (boot_params.secure_boot) {
|
||||
|
@ -858,10 +861,10 @@ index deeb7bc..08dc16e 100644
|
|||
#endif
|
||||
|
||||
diff --git a/include/linux/efi.h b/include/linux/efi.h
|
||||
index 5f8f176..eed2202 100644
|
||||
index bc5687d..b010a2e 100644
|
||||
--- a/include/linux/efi.h
|
||||
+++ b/include/linux/efi.h
|
||||
@@ -634,6 +634,7 @@ extern int __init efi_setup_pcdp_console(char *);
|
||||
@@ -653,6 +653,7 @@ extern int __init efi_setup_pcdp_console(char *);
|
||||
#define EFI_RUNTIME_SERVICES 3 /* Can we use runtime services? */
|
||||
#define EFI_MEMMAP 4 /* Can we use EFI memory map? */
|
||||
#define EFI_64BIT 5 /* Is the firmware 64-bit? */
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
diff -up linux-2.6.26.noarch/drivers/acpi/blacklist.c.jx linux-2.6.26.noarch/drivers/acpi/blacklist.c
|
||||
--- linux-2.6.26.noarch/drivers/acpi/blacklist.c.jx 2008-07-13 17:51:29.000000000 -0400
|
||||
+++ linux-2.6.26.noarch/drivers/acpi/blacklist.c 2008-08-12 14:21:39.000000000 -0400
|
||||
@@ -81,18 +81,18 @@ static int __init blacklist_by_year(void
|
||||
|
||||
/* Doesn't exist? Likely an old system */
|
||||
if (!dmi_get_date(DMI_BIOS_DATE, &year, NULL, NULL)) {
|
||||
- printk(KERN_ERR PREFIX "no DMI BIOS year, "
|
||||
+ printk(KERN_INFO PREFIX "no DMI BIOS year, "
|
||||
"acpi=force is required to enable ACPI\n" );
|
||||
return 1;
|
||||
}
|
||||
/* 0? Likely a buggy new BIOS */
|
||||
if (year == 0) {
|
||||
- printk(KERN_ERR PREFIX "DMI BIOS year==0, "
|
||||
+ printk(KERN_INFO PREFIX "DMI BIOS year==0, "
|
||||
"assuming ACPI-capable machine\n" );
|
||||
return 0;
|
||||
}
|
||||
if (year < CONFIG_ACPI_BLACKLIST_YEAR) {
|
||||
- printk(KERN_ERR PREFIX "BIOS age (%d) fails cutoff (%d), "
|
||||
+ printk(KERN_INFO PREFIX "BIOS age (%d) fails cutoff (%d), "
|
||||
"acpi=force is required to enable ACPI\n",
|
||||
year, CONFIG_ACPI_BLACKLIST_YEAR);
|
||||
return 1;
|
4
sources
4
sources
|
@ -1,2 +1,2 @@
|
|||
cc6ee608854e0da4b64f6c1ff8b6398c linux-3.12.tar.xz
|
||||
11ecacf1f22d057c92dcb93f1df71ff9 patch-3.12.11.xz
|
||||
0ecbaf65c00374eb4a826c2f9f37606f linux-3.13.tar.xz
|
||||
2d3d298f2b430122f4baf2af88277231 patch-3.13.3.xz
|
||||
|
|
|
@ -1,80 +0,0 @@
|
|||
Bugzilla: 1044471
|
||||
Upstream-status: 3.13
|
||||
|
||||
From 68273712a19e9107a498a371532b3b3eb6dbb14c Mon Sep 17 00:00:00 2001
|
||||
From: Nithin Sujir <nsujir@broadcom.com>
|
||||
Date: Fri, 20 Sep 2013 16:46:56 -0700
|
||||
Subject: [PATCH] tg3: Add support for new 577xx device ids
|
||||
|
||||
This patch adds support for 57764, 57765, 57787, 57782 and 57786
|
||||
devices.
|
||||
|
||||
Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com>
|
||||
Signed-off-by: Michael Chan <mchan@broadcom.com>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
drivers/net/ethernet/broadcom/tg3.c | 15 +++++++++++++--
|
||||
drivers/net/ethernet/broadcom/tg3.h | 3 +++
|
||||
2 files changed, 16 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
|
||||
index bcb92d4..c98f6b0 100644
|
||||
--- a/drivers/net/ethernet/broadcom/tg3.c
|
||||
+++ b/drivers/net/ethernet/broadcom/tg3.c
|
||||
@@ -337,6 +337,11 @@ static DEFINE_PCI_DEVICE_TABLE(tg3_pci_tbl) = {
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5762)},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5725)},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_5727)},
|
||||
+ {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57764)},
|
||||
+ {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57767)},
|
||||
+ {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57787)},
|
||||
+ {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57782)},
|
||||
+ {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57786)},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_SYSKONNECT, PCI_DEVICE_ID_SYSKONNECT_9DXX)},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_SYSKONNECT, PCI_DEVICE_ID_SYSKONNECT_9MXX)},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_ALTIMA, PCI_DEVICE_ID_ALTIMA_AC1000)},
|
||||
@@ -15761,9 +15766,12 @@ static void tg3_detect_asic_rev(struct tg3 *tp, u32 misc_ctrl_reg)
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5719 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5720 ||
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_57767 ||
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_57764 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5762 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5725 ||
|
||||
- tp->pdev->device == TG3PCI_DEVICE_TIGON3_5727)
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_5727 ||
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_57787)
|
||||
reg = TG3PCI_GEN2_PRODID_ASICREV;
|
||||
else if (tp->pdev->device == TG3PCI_DEVICE_TIGON3_57781 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_57785 ||
|
||||
@@ -17411,9 +17419,12 @@ static int tg3_init_one(struct pci_dev *pdev,
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5718 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5719 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5720 ||
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_57767 ||
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_57764 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5762 ||
|
||||
tp->pdev->device == TG3PCI_DEVICE_TIGON3_5725 ||
|
||||
- tp->pdev->device == TG3PCI_DEVICE_TIGON3_5727) {
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_5727 ||
|
||||
+ tp->pdev->device == TG3PCI_DEVICE_TIGON3_57787) {
|
||||
tg3_flag_set(tp, ENABLE_APE);
|
||||
tp->aperegs = pci_ioremap_bar(pdev, BAR_2);
|
||||
if (!tp->aperegs) {
|
||||
diff --git a/drivers/net/ethernet/broadcom/tg3.h b/drivers/net/ethernet/broadcom/tg3.h
|
||||
index 7025780..5c3835a 100644
|
||||
--- a/drivers/net/ethernet/broadcom/tg3.h
|
||||
+++ b/drivers/net/ethernet/broadcom/tg3.h
|
||||
@@ -68,6 +68,9 @@
|
||||
#define TG3PCI_DEVICE_TIGON3_5762 0x1687
|
||||
#define TG3PCI_DEVICE_TIGON3_5725 0x1643
|
||||
#define TG3PCI_DEVICE_TIGON3_5727 0x16f3
|
||||
+#define TG3PCI_DEVICE_TIGON3_57764 0x1642
|
||||
+#define TG3PCI_DEVICE_TIGON3_57767 0x1683
|
||||
+#define TG3PCI_DEVICE_TIGON3_57787 0x1641
|
||||
/* 0x04 --> 0x2c unused */
|
||||
#define TG3PCI_SUBVENDOR_ID_BROADCOM PCI_VENDOR_ID_BROADCOM
|
||||
#define TG3PCI_SUBDEVICE_ID_BROADCOM_95700A6 0x1644
|
||||
--
|
||||
1.8.4.2
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||||
index f67e839..d726b2d 100644
|
||||
--- a/arch/x86/Kconfig
|
||||
+++ b/arch/x86/Kconfig
|
||||
@@ -825,7 +825,7 @@ config MAXSMP
|
||||
config NR_CPUS
|
||||
int "Maximum number of CPUs" if SMP && !MAXSMP
|
||||
range 2 8 if SMP && X86_32 && !X86_BIGSMP
|
||||
- range 2 512 if SMP && !MAXSMP
|
||||
+ range 2 1024 if SMP && !MAXSMP
|
||||
default "1" if !SMP
|
||||
default "4096" if MAXSMP
|
||||
default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000)
|
Loading…
Reference in New Issue