Update to 3.13-rc4
Drop/refresh patches as appropriate. Disable aufs for now. Two of our longstanding patches finally went upstream. CONFIG_MAGIC_SYSRQ_DEFAULT_MASK was renamed in the process so adjust config accordingly. svn path=/dists/trunk/linux/; revision=20909
This commit is contained in:
parent
e227ad0d78
commit
07c6e9355a
|
@ -1,3 +1,9 @@
|
|||
linux (3.13~rc4-1~exp1) UNRELEASED; urgency=low
|
||||
|
||||
* New upstream release candidate
|
||||
|
||||
-- Ben Hutchings <ben@decadent.org.uk> Sat, 21 Dec 2013 17:41:34 +0000
|
||||
|
||||
linux (3.12.3-1~exp1) experimental; urgency=medium
|
||||
|
||||
* New upstream stable update:
|
||||
|
|
|
@ -4636,7 +4636,7 @@ CONFIG_DEBUG_FS=y
|
|||
# CONFIG_DEBUG_SECTION_MISMATCH is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_MAGIC_SYSRQ_DEFAULT_MASK=0x01b6
|
||||
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
# CONFIG_DEBUG_OBJECTS is not set
|
||||
# CONFIG_DEBUG_SLAB is not set
|
||||
|
|
|
@ -1,30 +0,0 @@
|
|||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Tue, 29 Oct 2013 11:55:17 +0100
|
||||
Subject: [PATCH] UAPI: include <asm/byteorder.h> in linux/raid/md_p.h
|
||||
Forwarded: http://comments.gmane.org/gmane.linux.kernel/1586604
|
||||
|
||||
linux/raid/md_p.h is using conditionals depending on endianess and fails
|
||||
with an error if neither of __BIG_ENDIAN, __LITTLE_ENDIAN or
|
||||
__BYTE_ORDER are defined, but it doesn't include any header which can
|
||||
define these constants. This make this header unusable alone.
|
||||
|
||||
This patch adds a #include <asm/byteorder.h> at the beginning of this
|
||||
header to make it usable alone. This is needed to compile klibc on MIPS.
|
||||
|
||||
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|
||||
---
|
||||
include/uapi/linux/raid/md_p.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/include/uapi/linux/raid/md_p.h b/include/uapi/linux/raid/md_p.h
|
||||
index fe1a540..f7cf7f3 100644
|
||||
--- a/include/uapi/linux/raid/md_p.h
|
||||
+++ b/include/uapi/linux/raid/md_p.h
|
||||
@@ -16,6 +16,7 @@
|
||||
#define _MD_P_H
|
||||
|
||||
#include <linux/types.h>
|
||||
+#include <asm/byteorder.h>
|
||||
|
||||
/*
|
||||
* RAID superblock.
|
|
@ -140,7 +140,7 @@ upstream submission.
|
|||
return -EIO;
|
||||
--- a/drivers/bluetooth/bfusb.c
|
||||
+++ b/drivers/bluetooth/bfusb.c
|
||||
@@ -672,10 +672,8 @@ static int bfusb_probe(struct usb_interf
|
||||
@@ -658,10 +658,8 @@ static int bfusb_probe(struct usb_interf
|
||||
skb_queue_head_init(&data->pending_q);
|
||||
skb_queue_head_init(&data->completed_q);
|
||||
|
||||
|
@ -154,7 +154,7 @@ upstream submission.
|
|||
|
||||
--- a/drivers/bluetooth/bt3c_cs.c
|
||||
+++ b/drivers/bluetooth/bt3c_cs.c
|
||||
@@ -585,10 +585,8 @@ static int bt3c_open(bt3c_info_t *info)
|
||||
@@ -569,10 +569,8 @@ static int bt3c_open(bt3c_info_t *info)
|
||||
|
||||
/* Load firmware */
|
||||
err = request_firmware(&firmware, "BT3CPCC.bin", &info->p_dev->dev);
|
||||
|
@ -168,7 +168,7 @@ upstream submission.
|
|||
|
||||
--- a/drivers/bluetooth/btmrvl_sdio.c
|
||||
+++ b/drivers/bluetooth/btmrvl_sdio.c
|
||||
@@ -288,8 +288,6 @@ static int btmrvl_sdio_download_helper(s
|
||||
@@ -291,8 +291,6 @@ static int btmrvl_sdio_download_helper(s
|
||||
ret = request_firmware(&fw_helper, card->helper,
|
||||
&card->func->dev);
|
||||
if ((ret < 0) || !fw_helper) {
|
||||
|
@ -177,7 +177,7 @@ upstream submission.
|
|||
ret = -ENOENT;
|
||||
goto done;
|
||||
}
|
||||
@@ -388,8 +386,6 @@ static int btmrvl_sdio_download_fw_w_hel
|
||||
@@ -391,8 +389,6 @@ static int btmrvl_sdio_download_fw_w_hel
|
||||
ret = request_firmware(&fw_firmware, card->firmware,
|
||||
&card->func->dev);
|
||||
if ((ret < 0) || !fw_firmware) {
|
||||
|
@ -261,7 +261,7 @@ upstream submission.
|
|||
printk(KERN_ERR
|
||||
--- a/drivers/gpu/drm/radeon/ni.c
|
||||
+++ b/drivers/gpu/drm/radeon/ni.c
|
||||
@@ -814,10 +814,6 @@ int ni_init_microcode(struct radeon_devi
|
||||
@@ -810,10 +810,6 @@ int ni_init_microcode(struct radeon_devi
|
||||
|
||||
out:
|
||||
if (err) {
|
||||
|
@ -274,7 +274,7 @@ upstream submission.
|
|||
release_firmware(rdev->me_fw);
|
||||
--- a/drivers/gpu/drm/radeon/r100.c
|
||||
+++ b/drivers/gpu/drm/radeon/r100.c
|
||||
@@ -1035,10 +1035,7 @@ static int r100_cp_init_microcode(struct
|
||||
@@ -1036,10 +1036,7 @@ static int r100_cp_init_microcode(struct
|
||||
}
|
||||
|
||||
err = request_firmware(&rdev->me_fw, fw_name, rdev->dev);
|
||||
|
@ -288,7 +288,7 @@ upstream submission.
|
|||
rdev->me_fw->size, fw_name);
|
||||
--- a/drivers/gpu/drm/radeon/r600.c
|
||||
+++ b/drivers/gpu/drm/radeon/r600.c
|
||||
@@ -2312,10 +2312,6 @@ int r600_init_microcode(struct radeon_de
|
||||
@@ -2366,10 +2366,6 @@ int r600_init_microcode(struct radeon_de
|
||||
|
||||
out:
|
||||
if (err) {
|
||||
|
@ -371,7 +371,7 @@ upstream submission.
|
|||
card->name, firmware->size);
|
||||
--- a/drivers/media/tuners/tuner-xc2028.c
|
||||
+++ b/drivers/media/tuners/tuner-xc2028.c
|
||||
@@ -1349,7 +1349,6 @@ static void load_firmware_cb(const struc
|
||||
@@ -1355,7 +1355,6 @@ static void load_firmware_cb(const struc
|
||||
|
||||
tuner_dbg("request_firmware_nowait(): %s\n", fw ? "OK" : "error");
|
||||
if (!fw) {
|
||||
|
@ -468,7 +468,7 @@ upstream submission.
|
|||
p = kmalloc(fw->size, GFP_KERNEL);
|
||||
--- a/drivers/media/dvb-frontends/af9013.c
|
||||
+++ b/drivers/media/dvb-frontends/af9013.c
|
||||
@@ -1363,16 +1363,8 @@ static int af9013_download_firmware(stru
|
||||
@@ -1373,16 +1373,8 @@ static int af9013_download_firmware(stru
|
||||
|
||||
/* request the firmware, this will block and timeout */
|
||||
ret = request_firmware(&fw, fw_file, state->i2c->dev.parent);
|
||||
|
@ -488,7 +488,7 @@ upstream submission.
|
|||
for (i = 0; i < fw->size; i++)
|
||||
--- a/drivers/media/dvb-frontends/bcm3510.c
|
||||
+++ b/drivers/media/dvb-frontends/bcm3510.c
|
||||
@@ -622,10 +622,9 @@ static int bcm3510_download_firmware(str
|
||||
@@ -635,10 +635,9 @@ static int bcm3510_download_firmware(str
|
||||
int ret,i;
|
||||
|
||||
deb_info("requesting firmware\n");
|
||||
|
@ -520,7 +520,7 @@ upstream submission.
|
|||
* during loading */
|
||||
--- a/drivers/media/dvb-frontends/drxd_hard.c
|
||||
+++ b/drivers/media/dvb-frontends/drxd_hard.c
|
||||
@@ -909,10 +909,8 @@ static int load_firmware(struct drxd_sta
|
||||
@@ -905,10 +905,8 @@ static int load_firmware(struct drxd_sta
|
||||
{
|
||||
const struct firmware *fw;
|
||||
|
||||
|
@ -563,7 +563,7 @@ upstream submission.
|
|||
if (ret)
|
||||
--- a/drivers/media/dvb-frontends/nxt200x.c
|
||||
+++ b/drivers/media/dvb-frontends/nxt200x.c
|
||||
@@ -882,12 +882,8 @@ static int nxt2002_init(struct dvb_front
|
||||
@@ -891,12 +891,8 @@ static int nxt2002_init(struct dvb_front
|
||||
__func__, NXT2002_DEFAULT_FIRMWARE);
|
||||
ret = request_firmware(&fw, NXT2002_DEFAULT_FIRMWARE,
|
||||
state->i2c->dev.parent);
|
||||
|
@ -577,7 +577,7 @@ upstream submission.
|
|||
|
||||
ret = nxt2002_load_firmware(fe, fw);
|
||||
release_firmware(fw);
|
||||
@@ -949,12 +945,8 @@ static int nxt2004_init(struct dvb_front
|
||||
@@ -958,12 +954,8 @@ static int nxt2004_init(struct dvb_front
|
||||
__func__, NXT2004_DEFAULT_FIRMWARE);
|
||||
ret = request_firmware(&fw, NXT2004_DEFAULT_FIRMWARE,
|
||||
state->i2c->dev.parent);
|
||||
|
@ -685,7 +685,7 @@ upstream submission.
|
|||
printk(KERN_INFO "tda1004x: please rename the firmware file to %s\n",
|
||||
--- a/drivers/media/dvb-frontends/tda10071.c
|
||||
+++ b/drivers/media/dvb-frontends/tda10071.c
|
||||
@@ -941,14 +941,8 @@ static int tda10071_init(struct dvb_fron
|
||||
@@ -951,14 +951,8 @@ static int tda10071_init(struct dvb_fron
|
||||
|
||||
/* request the firmware, this will block and timeout */
|
||||
ret = request_firmware(&fw, fw_file, priv->i2c->dev.parent);
|
||||
|
@ -764,7 +764,7 @@ upstream submission.
|
|||
|
||||
--- a/drivers/media/pci/ttpci/av7110_hw.c
|
||||
+++ b/drivers/media/pci/ttpci/av7110_hw.c
|
||||
@@ -243,11 +243,8 @@ int av7110_bootarm(struct av7110 *av7110
|
||||
@@ -251,11 +251,8 @@ int av7110_bootarm(struct av7110 *av7110
|
||||
//saa7146_setgpio(dev, 3, SAA7146_GPIO_INPUT);
|
||||
|
||||
ret = request_firmware(&fw, fw_name, &dev->pci->dev);
|
||||
|
@ -793,15 +793,15 @@ upstream submission.
|
|||
b[0] = 0xaa;
|
||||
--- a/drivers/media/usb/ttusb-dec/ttusb_dec.c
|
||||
+++ b/drivers/media/usb/ttusb-dec/ttusb_dec.c
|
||||
@@ -1293,11 +1293,8 @@ static int ttusb_dec_boot_dsp(struct ttu
|
||||
|
||||
@@ -1302,11 +1302,8 @@ static int ttusb_dec_boot_dsp(struct ttu
|
||||
dprintk("%s\n", __func__);
|
||||
|
||||
- if (request_firmware(&fw_entry, dec->firmware_name, &dec->udev->dev)) {
|
||||
result = request_firmware(&fw_entry, dec->firmware_name, &dec->udev->dev);
|
||||
- if (result) {
|
||||
- printk(KERN_ERR "%s: Firmware (%s) unavailable.\n",
|
||||
- __func__, dec->firmware_name);
|
||||
+ if (request_firmware(&fw_entry, dec->firmware_name, &dec->udev->dev))
|
||||
return 1;
|
||||
+ if (result)
|
||||
return result;
|
||||
- }
|
||||
|
||||
firmware = fw_entry->data;
|
||||
|
@ -960,7 +960,7 @@ upstream submission.
|
|||
printk(KERN_ERR "ERROR: Firmware size mismatch "
|
||||
--- a/drivers/media/pci/cx23885/cx23885-cards.c
|
||||
+++ b/drivers/media/pci/cx23885/cx23885-cards.c
|
||||
@@ -1797,11 +1797,7 @@ void cx23885_card_setup(struct cx23885_d
|
||||
@@ -1905,11 +1905,7 @@ void cx23885_card_setup(struct cx23885_d
|
||||
cinfo.rev, filename);
|
||||
|
||||
ret = request_firmware(&fw, filename, &dev->pci->dev);
|
||||
|
@ -1177,7 +1177,7 @@ upstream submission.
|
|||
remaining = typhoon_fw->size;
|
||||
--- a/drivers/net/ethernet/adaptec/starfire.c
|
||||
+++ b/drivers/net/ethernet/adaptec/starfire.c
|
||||
@@ -1017,11 +1017,8 @@ static int netdev_open(struct net_device
|
||||
@@ -1016,11 +1016,8 @@ static int netdev_open(struct net_device
|
||||
#endif /* VLAN_SUPPORT */
|
||||
|
||||
retval = request_firmware(&fw_rx, FIRMWARE_RX, &np->pci_dev->dev);
|
||||
|
@ -1190,7 +1190,7 @@ upstream submission.
|
|||
if (fw_rx->size % 4) {
|
||||
printk(KERN_ERR "starfire: bogus length %zu in \"%s\"\n",
|
||||
fw_rx->size, FIRMWARE_RX);
|
||||
@@ -1029,11 +1026,8 @@ static int netdev_open(struct net_device
|
||||
@@ -1028,11 +1025,8 @@ static int netdev_open(struct net_device
|
||||
goto out_rx;
|
||||
}
|
||||
retval = request_firmware(&fw_tx, FIRMWARE_TX, &np->pci_dev->dev);
|
||||
|
@ -1242,7 +1242,7 @@ upstream submission.
|
|||
if (bp->mips_firmware->size < sizeof(*mips_fw) ||
|
||||
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
|
||||
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
|
||||
@@ -12455,11 +12455,8 @@ static int bnx2x_init_firmware(struct bn
|
||||
@@ -12497,11 +12497,8 @@ static int bnx2x_init_firmware(struct bn
|
||||
BNX2X_DEV_INFO("Loading %s\n", fw_file_name);
|
||||
|
||||
rc = request_firmware(&bp->firmware, fw_file_name, &bp->pdev->dev);
|
||||
|
@ -1257,7 +1257,7 @@ upstream submission.
|
|||
if (rc) {
|
||||
--- a/drivers/net/ethernet/broadcom/tg3.c
|
||||
+++ b/drivers/net/ethernet/broadcom/tg3.c
|
||||
@@ -11193,11 +11193,8 @@ static int tg3_request_firmware(struct t
|
||||
@@ -11205,11 +11205,8 @@ static int tg3_request_firmware(struct t
|
||||
{
|
||||
const struct tg3_firmware_hdr *fw_hdr;
|
||||
|
||||
|
@ -1326,21 +1326,6 @@ upstream submission.
|
|||
|
||||
ret = t3_check_tpsram(adap, tpsram->data, tpsram->size);
|
||||
if (ret)
|
||||
--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
|
||||
+++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
|
||||
@@ -1098,11 +1098,8 @@ static int upgrade_fw(struct adapter *ad
|
||||
}
|
||||
|
||||
ret = request_firmware(&fw, fw_file_name, dev);
|
||||
- if (ret < 0) {
|
||||
- dev_err(dev, "unable to load firmware image %s, error %d\n",
|
||||
- fw_file_name, ret);
|
||||
+ if (ret)
|
||||
return ret;
|
||||
- }
|
||||
|
||||
hdr = (const struct fw_hdr *)fw->data;
|
||||
vers = ntohl(hdr->fw_ver);
|
||||
--- a/drivers/net/ethernet/intel/e100.c
|
||||
+++ b/drivers/net/ethernet/intel/e100.c
|
||||
@@ -1290,9 +1290,6 @@ static const struct firmware *e100_reque
|
||||
|
@ -1545,30 +1530,18 @@ upstream submission.
|
|||
hdr = (struct b43legacy_fw_header *)((*fw)->data);
|
||||
--- a/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c
|
||||
+++ b/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c
|
||||
@@ -3059,10 +3059,8 @@ static int brcmf_sdbrcm_download_code_fi
|
||||
@@ -571,10 +571,8 @@ static const struct firmware *brcmf_sdbr
|
||||
|
||||
ret = request_firmware(&bus->firmware, BRCMF_SDIO_FW_NAME,
|
||||
&bus->sdiodev->func[2]->dev);
|
||||
- if (ret) {
|
||||
- brcmf_err("Fail to request firmware %d\n", ret);
|
||||
+ if (ret)
|
||||
return ret;
|
||||
- }
|
||||
bus->fw_ptr = 0;
|
||||
|
||||
memptr = memblock = kmalloc(MEMBLOCK + BRCMF_SDALIGN, GFP_ATOMIC);
|
||||
@@ -3181,10 +3179,8 @@ static int brcmf_sdbrcm_download_nvram(s
|
||||
|
||||
ret = request_firmware(&bus->firmware, BRCMF_SDIO_NV_NAME,
|
||||
&bus->sdiodev->func[2]->dev);
|
||||
- if (ret) {
|
||||
- brcmf_err("Fail to request nvram %d\n", ret);
|
||||
+ if (ret)
|
||||
return ret;
|
||||
found:
|
||||
err = request_firmware(&fw, name, &bus->sdiodev->func[2]->dev);
|
||||
- if ((err) || (!fw)) {
|
||||
- brcmf_err("fail to request firmware %s (%d)\n", name, err);
|
||||
+ if (err)
|
||||
return NULL;
|
||||
- }
|
||||
|
||||
ret = brcmf_process_nvram_vars(bus);
|
||||
|
||||
return fw;
|
||||
}
|
||||
--- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
|
||||
+++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
|
||||
@@ -379,19 +379,13 @@ static int brcms_request_fw(struct brcms
|
||||
|
@ -1635,7 +1608,7 @@ upstream submission.
|
|||
else
|
||||
--- a/drivers/net/wireless/iwlwifi/iwl-drv.c
|
||||
+++ b/drivers/net/wireless/iwlwifi/iwl-drv.c
|
||||
@@ -852,13 +852,8 @@ static void iwl_req_fw_callback(const st
|
||||
@@ -889,13 +889,8 @@ static void iwl_req_fw_callback(const st
|
||||
|
||||
memset(&pieces, 0, sizeof(pieces));
|
||||
|
||||
|
@ -1663,9 +1636,9 @@ upstream submission.
|
|||
}
|
||||
--- a/drivers/net/wireless/mwifiex/main.c
|
||||
+++ b/drivers/net/wireless/mwifiex/main.c
|
||||
@@ -417,11 +417,8 @@ static void mwifiex_fw_dpc(const struct
|
||||
struct semaphore *sem = adapter->card_sem;
|
||||
@@ -420,11 +420,8 @@ static void mwifiex_fw_dpc(const struct
|
||||
bool init_failed = false;
|
||||
struct wireless_dev *wdev;
|
||||
|
||||
- if (!firmware) {
|
||||
- dev_err(adapter->dev,
|
||||
|
@ -1878,7 +1851,7 @@ upstream submission.
|
|||
wl1251_error("nvs size is not multiple of 32 bits: %zu",
|
||||
--- a/drivers/net/wireless/ti/wlcore/main.c
|
||||
+++ b/drivers/net/wireless/ti/wlcore/main.c
|
||||
@@ -740,10 +740,8 @@ static int wl12xx_fetch_firmware(struct
|
||||
@@ -753,10 +753,8 @@ static int wl12xx_fetch_firmware(struct
|
||||
|
||||
ret = request_firmware(&fw, fw_name, wl->dev);
|
||||
|
||||
|
@ -1987,7 +1960,7 @@ upstream submission.
|
|||
if (err) {
|
||||
--- a/drivers/scsi/bfa/bfad.c
|
||||
+++ b/drivers/scsi/bfa/bfad.c
|
||||
@@ -1811,7 +1811,6 @@ bfad_read_firmware(struct pci_dev *pdev,
|
||||
@@ -1781,7 +1781,6 @@ bfad_read_firmware(struct pci_dev *pdev,
|
||||
const struct firmware *fw;
|
||||
|
||||
if (request_firmware(&fw, fw_name, &pdev->dev)) {
|
||||
|
@ -2011,7 +1984,7 @@ upstream submission.
|
|||
|
||||
--- a/drivers/scsi/pm8001/pm8001_ctl.c
|
||||
+++ b/drivers/scsi/pm8001/pm8001_ctl.c
|
||||
@@ -542,9 +542,6 @@ static ssize_t pm8001_store_update_fw(st
|
||||
@@ -690,9 +690,6 @@ static ssize_t pm8001_store_update_fw(st
|
||||
pm8001_ha->dev);
|
||||
|
||||
if (err) {
|
||||
|
@ -2069,7 +2042,7 @@ upstream submission.
|
|||
if (qla82xx_validate_firmware_blob(vha,
|
||||
--- a/drivers/scsi/qla2xxx/qla_os.c
|
||||
+++ b/drivers/scsi/qla2xxx/qla_os.c
|
||||
@@ -5316,8 +5316,6 @@ qla2x00_request_firmware(scsi_qla_host_t
|
||||
@@ -5311,8 +5311,6 @@ qla2x00_request_firmware(scsi_qla_host_t
|
||||
goto out;
|
||||
|
||||
if (request_firmware(&blob->fw, blob->name, &ha->pdev->dev)) {
|
||||
|
@ -2216,7 +2189,7 @@ upstream submission.
|
|||
if (0 != ret) {
|
||||
--- a/drivers/staging/media/lirc/lirc_zilog.c
|
||||
+++ b/drivers/staging/media/lirc/lirc_zilog.c
|
||||
@@ -764,8 +764,6 @@ static int fw_load(struct IR_tx *tx)
|
||||
@@ -767,8 +767,6 @@ static int fw_load(struct IR_tx *tx)
|
||||
/* Request codeset data file */
|
||||
ret = request_firmware(&fw_entry, "haup-ir-blaster.bin", tx->ir->l.dev);
|
||||
if (ret != 0) {
|
||||
|
@ -2227,7 +2200,7 @@ upstream submission.
|
|||
}
|
||||
--- a/drivers/staging/rtl8192u/r819xU_firmware.c
|
||||
+++ b/drivers/staging/rtl8192u/r819xU_firmware.c
|
||||
@@ -284,10 +284,8 @@ bool init_firmware(struct net_device *de
|
||||
@@ -280,10 +280,8 @@ bool init_firmware(struct net_device *de
|
||||
*/
|
||||
if (rst_opt == OPT_SYSTEM_RESET) {
|
||||
rc = request_firmware(&fw_entry, fw_name[init_step],&priv->udev->dev);
|
||||
|
@ -2251,7 +2224,7 @@ upstream submission.
|
|||
usb_set_intfdata(pusb_intf, NULL);
|
||||
--- a/drivers/staging/slicoss/slicoss.c
|
||||
+++ b/drivers/staging/slicoss/slicoss.c
|
||||
@@ -424,11 +424,8 @@ static int slic_card_download_gbrcv(stru
|
||||
@@ -425,11 +425,8 @@ static int slic_card_download_gbrcv(stru
|
||||
}
|
||||
|
||||
ret = request_firmware(&fw, file, &adapter->pcidev->dev);
|
||||
|
@ -2264,7 +2237,7 @@ upstream submission.
|
|||
|
||||
rcvucodelen = *(u32 *)(fw->data + index);
|
||||
index += 4;
|
||||
@@ -502,11 +499,8 @@ static int slic_card_download(struct ada
|
||||
@@ -503,11 +500,8 @@ static int slic_card_download(struct ada
|
||||
return -ENOENT;
|
||||
}
|
||||
ret = request_firmware(&fw, file, &adapter->pcidev->dev);
|
||||
|
@ -2352,7 +2325,7 @@ upstream submission.
|
|||
}
|
||||
--- a/drivers/tty/serial/ucc_uart.c
|
||||
+++ b/drivers/tty/serial/ucc_uart.c
|
||||
@@ -1176,10 +1176,8 @@ static void uart_firmware_cont(const str
|
||||
@@ -1178,10 +1178,8 @@ static void uart_firmware_cont(const str
|
||||
struct device *dev = context;
|
||||
int ret;
|
||||
|
||||
|
@ -2541,7 +2514,7 @@ upstream submission.
|
|||
}
|
||||
--- a/drivers/usb/serial/ti_usb_3410_5052.c
|
||||
+++ b/drivers/usb/serial/ti_usb_3410_5052.c
|
||||
@@ -1499,10 +1499,8 @@ static int ti_download_firmware(struct t
|
||||
@@ -1500,10 +1500,8 @@ static int ti_download_firmware(struct t
|
||||
}
|
||||
status = request_firmware(&fw_p, buf, &dev->dev);
|
||||
}
|
||||
|
@ -2597,7 +2570,7 @@ upstream submission.
|
|||
release_firmware(fw);
|
||||
--- a/sound/isa/msnd/msnd_pinnacle.c
|
||||
+++ b/sound/isa/msnd/msnd_pinnacle.c
|
||||
@@ -387,15 +387,11 @@ static int upload_dsp_code(struct snd_ca
|
||||
@@ -389,15 +389,11 @@ static int upload_dsp_code(struct snd_ca
|
||||
outb(HPBLKSEL_0, chip->io + HP_BLKS);
|
||||
|
||||
err = request_firmware(&init_fw, INITCODEFILE, card->dev);
|
||||
|
@ -2711,7 +2684,7 @@ upstream submission.
|
|||
}
|
||||
--- a/sound/pci/hda/hda_intel.c
|
||||
+++ b/sound/pci/hda/hda_intel.c
|
||||
@@ -3771,11 +3771,8 @@ static void azx_firmware_cb(const struct
|
||||
@@ -3779,11 +3779,8 @@ static void azx_firmware_cb(const struct
|
||||
struct azx *chip = card->private_data;
|
||||
struct pci_dev *pci = chip->pci;
|
||||
|
||||
|
@ -2780,7 +2753,7 @@ upstream submission.
|
|||
if (err) {
|
||||
--- a/sound/pci/rme9652/hdsp.c
|
||||
+++ b/sound/pci/rme9652/hdsp.c
|
||||
@@ -5150,10 +5150,8 @@ static int hdsp_request_fw_loader(struct
|
||||
@@ -5151,10 +5151,8 @@ static int hdsp_request_fw_loader(struct
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -2794,7 +2767,7 @@ upstream submission.
|
|||
(int)fw->size, HDSP_FIRMWARE_SIZE);
|
||||
--- a/sound/soc/codecs/wm2000.c
|
||||
+++ b/sound/soc/codecs/wm2000.c
|
||||
@@ -888,10 +888,8 @@ static int wm2000_i2c_probe(struct i2c_c
|
||||
@@ -893,10 +893,8 @@ static int wm2000_i2c_probe(struct i2c_c
|
||||
}
|
||||
|
||||
ret = request_firmware(&fw, filename, &i2c->dev);
|
||||
|
|
|
@ -1,35 +0,0 @@
|
|||
From: Hannes Frederic Sowa <hannes@stressinduktion.org>
|
||||
Date: Tue, 5 Nov 2013 02:41:27 +0100
|
||||
Subject: ipv6: fix headroom calculation in udp6_ufo_fragment
|
||||
Origin: https://git.kernel.org/linus/0e033e04c2678dbbe74a46b23fffb7bb918c288e
|
||||
|
||||
Commit 1e2bd517c108816220f262d7954b697af03b5f9c ("udp6: Fix udp
|
||||
fragmentation for tunnel traffic.") changed the calculation if
|
||||
there is enough space to include a fragment header in the skb from a
|
||||
skb->mac_header dervived one to skb_headroom. Because we already peeled
|
||||
off the skb to transport_header this is wrong. Change this back to check
|
||||
if we have enough room before the mac_header.
|
||||
|
||||
This fixes a panic Saran Neti reported. He used the tbf scheduler which
|
||||
skb_gso_segments the skb. The offsets get negative and we panic in memcpy
|
||||
because the skb was erroneously not expanded at the head.
|
||||
|
||||
Reported-by: Saran Neti <Saran.Neti@telus.com>
|
||||
Cc: Pravin B Shelar <pshelar@nicira.com>
|
||||
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
net/ipv6/udp_offload.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/net/ipv6/udp_offload.c
|
||||
+++ b/net/ipv6/udp_offload.c
|
||||
@@ -88,7 +88,7 @@ static struct sk_buff *udp6_ufo_fragment
|
||||
|
||||
/* Check if there is enough headroom to insert fragment header. */
|
||||
tnl_hlen = skb_tnl_header_len(skb);
|
||||
- if (skb_headroom(skb) < (tnl_hlen + frag_hdr_sz)) {
|
||||
+ if (skb->mac_header < (tnl_hlen + frag_hdr_sz)) {
|
||||
if (gso_pskb_expand_head(skb, tnl_hlen + frag_hdr_sz))
|
||||
goto out;
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
From: Dan Carpenter <dan.carpenter@oracle.com>
|
||||
Date: Wed, 27 Nov 2013 15:40:21 +0300
|
||||
Subject: net: clamp ->msg_namelen instead of returning an error
|
||||
Origin: https://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit?id=db31c55a6fb245fdbb752a2ca4aefec89afabb06
|
||||
|
||||
If kmsg->msg_namelen > sizeof(struct sockaddr_storage) then in the
|
||||
original code that would lead to memory corruption in the kernel if you
|
||||
had audit configured. If you didn't have audit configured it was
|
||||
harmless.
|
||||
|
||||
There are some programs such as beta versions of Ruby which use too
|
||||
large of a buffer and returning an error code breaks them. We should
|
||||
clamp the ->msg_namelen value instead.
|
||||
|
||||
Fixes: 1661bf364ae9 ("net: heap overflow in __audit_sockaddr()")
|
||||
Reported-by: Eric Wong <normalperson@yhbt.net>
|
||||
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
|
||||
Tested-by: Eric Wong <normalperson@yhbt.net>
|
||||
Acked-by: Eric Dumazet <edumazet@google.com>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
net/compat.c | 2 +-
|
||||
net/socket.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/net/compat.c
|
||||
+++ b/net/compat.c
|
||||
@@ -72,7 +72,7 @@ int get_compat_msghdr(struct msghdr *kms
|
||||
__get_user(kmsg->msg_flags, &umsg->msg_flags))
|
||||
return -EFAULT;
|
||||
if (kmsg->msg_namelen > sizeof(struct sockaddr_storage))
|
||||
- return -EINVAL;
|
||||
+ kmsg->msg_namelen = sizeof(struct sockaddr_storage);
|
||||
kmsg->msg_name = compat_ptr(tmp1);
|
||||
kmsg->msg_iov = compat_ptr(tmp2);
|
||||
kmsg->msg_control = compat_ptr(tmp3);
|
||||
--- a/net/socket.c
|
||||
+++ b/net/socket.c
|
||||
@@ -1970,7 +1970,7 @@ static int copy_msghdr_from_user(struct
|
||||
if (copy_from_user(kmsg, umsg, sizeof(struct msghdr)))
|
||||
return -EFAULT;
|
||||
if (kmsg->msg_namelen > sizeof(struct sockaddr_storage))
|
||||
- return -EINVAL;
|
||||
+ kmsg->msg_namelen = sizeof(struct sockaddr_storage);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -28,16 +28,17 @@ missing, except for the pre-R600 KMS case.
|
|||
---
|
||||
--- a/drivers/gpu/drm/radeon/radeon_drv.c
|
||||
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
|
||||
@@ -36,6 +36,8 @@
|
||||
#include <drm/drm_pciids.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/module.h>
|
||||
@@ -39,6 +39,9 @@
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/vga_switcheroo.h>
|
||||
#include "drm_crtc_helper.h"
|
||||
+#include <linux/namei.h>
|
||||
+#include <linux/path.h>
|
||||
|
||||
|
||||
+
|
||||
/*
|
||||
@@ -301,6 +303,37 @@ static struct drm_driver driver_old = {
|
||||
* KMS wrapper.
|
||||
* - 2.0.0 - initial interface
|
||||
@@ -320,6 +323,37 @@ static struct drm_driver driver_old = {
|
||||
|
||||
static struct drm_driver kms_driver;
|
||||
|
||||
|
@ -75,7 +76,7 @@ missing, except for the pre-R600 KMS case.
|
|||
static int radeon_kick_out_firmware_fb(struct pci_dev *pdev)
|
||||
{
|
||||
struct apertures_struct *ap;
|
||||
@@ -327,6 +360,12 @@ static int radeon_pci_probe(struct pci_d
|
||||
@@ -346,6 +380,12 @@ static int radeon_pci_probe(struct pci_d
|
||||
{
|
||||
int ret;
|
||||
|
||||
|
@ -88,7 +89,7 @@ missing, except for the pre-R600 KMS case.
|
|||
/* Get rid of things like offb */
|
||||
ret = radeon_kick_out_firmware_fb(pdev);
|
||||
if (ret)
|
||||
@@ -435,6 +474,7 @@ static struct pci_driver *pdriver;
|
||||
@@ -577,6 +617,7 @@ static struct pci_driver *pdriver;
|
||||
static struct pci_driver radeon_pci_driver = {
|
||||
.name = DRIVER_NAME,
|
||||
.id_table = pciidlist,
|
||||
|
|
|
@ -1,36 +0,0 @@
|
|||
Subject: rds: prevent BUG_ON triggered on congestion update to loopback
|
||||
From: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
|
||||
Date: Mon, 25 Nov 2013 09:47:34 +0300
|
||||
Origin: http://patchwork.ozlabs.org/patch/293827/
|
||||
|
||||
After congestion update on a local connection, when rds_ib_xmit returns
|
||||
less bytes than that are there in the message, rds_send_xmit calls
|
||||
back rds_ib_xmit with an offset that causes BUG_ON(off & RDS_FRAG_SIZE)
|
||||
to trigger.
|
||||
|
||||
Reported-by: Josh Hunt <joshhunt00@gmail.com>
|
||||
Tested-by: Honggang Li <honli@redhat.com>
|
||||
Acked-by: Bang Nguyen <bang.nguyen@oracle.com>
|
||||
Signed-off-by: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
|
||||
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
|
||||
|
||||
---
|
||||
net/rds/ib_send.c | 5 ++---
|
||||
1 files changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/net/rds/ib_send.c b/net/rds/ib_send.c
|
||||
index e590949..37be6e2 100644
|
||||
--- a/net/rds/ib_send.c
|
||||
+++ b/net/rds/ib_send.c
|
||||
@@ -552,9 +552,8 @@ int rds_ib_xmit(struct rds_connection *conn, struct rds_message *rm,
|
||||
&& rm->m_inc.i_hdr.h_flags & RDS_FLAG_CONG_BITMAP) {
|
||||
rds_cong_map_updated(conn->c_fcong, ~(u64) 0);
|
||||
scat = &rm->data.op_sg[sg];
|
||||
- ret = sizeof(struct rds_header) + RDS_CONG_MAP_BYTES;
|
||||
- ret = min_t(int, ret, scat->length - conn->c_xmit_data_off);
|
||||
- return ret;
|
||||
+ ret = max_t(int, RDS_CONG_MAP_BYTES, scat->length);
|
||||
+ return sizeof(struct rds_header) + ret;
|
||||
}
|
||||
|
||||
/* FIXME we may overallocate here */
|
|
@ -1,85 +0,0 @@
|
|||
From: Eric Dumazet <edumazet@google.com>
|
||||
Date: Wed, 13 Nov 2013 06:32:54 -0800
|
||||
Subject: tcp: tsq: restore minimal amount of queueing
|
||||
Origin: https://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit?id=98e09386c0ef4dfd48af7ba60ff908f0d525cdee
|
||||
|
||||
After commit c9eeec26e32e ("tcp: TSQ can use a dynamic limit"), several
|
||||
users reported throughput regressions, notably on mvneta and wifi
|
||||
adapters.
|
||||
|
||||
802.11 AMPDU requires a fair amount of queueing to be effective.
|
||||
|
||||
This patch partially reverts the change done in tcp_write_xmit()
|
||||
so that the minimal amount is sysctl_tcp_limit_output_bytes.
|
||||
|
||||
It also remove the use of this sysctl while building skb stored
|
||||
in write queue, as TSO autosizing does the right thing anyway.
|
||||
|
||||
Users with well behaving NICS and correct qdisc (like sch_fq),
|
||||
can then lower the default sysctl_tcp_limit_output_bytes value from
|
||||
128KB to 8KB.
|
||||
|
||||
This new usage of sysctl_tcp_limit_output_bytes permits each driver
|
||||
authors to check how their driver performs when/if the value is set
|
||||
to a minimum of 4KB.
|
||||
|
||||
Normally, line rate for a single TCP flow should be possible,
|
||||
but some drivers rely on timers to perform TX completion and
|
||||
too long TX completion delays prevent reaching full throughput.
|
||||
|
||||
Fixes: c9eeec26e32e ("tcp: TSQ can use a dynamic limit")
|
||||
Signed-off-by: Eric Dumazet <edumazet@google.com>
|
||||
Reported-by: Sujith Manoharan <sujith@msujith.org>
|
||||
Reported-by: Arnaud Ebalard <arno@natisbad.org>
|
||||
Tested-by: Sujith Manoharan <sujith@msujith.org>
|
||||
Cc: Felix Fietkau <nbd@openwrt.org>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
Documentation/networking/ip-sysctl.txt | 3 ---
|
||||
net/ipv4/tcp.c | 6 ------
|
||||
net/ipv4/tcp_output.c | 6 +++++-
|
||||
3 files changed, 5 insertions(+), 10 deletions(-)
|
||||
|
||||
--- a/Documentation/networking/ip-sysctl.txt
|
||||
+++ b/Documentation/networking/ip-sysctl.txt
|
||||
@@ -588,9 +588,6 @@ tcp_limit_output_bytes - INTEGER
|
||||
typical pfifo_fast qdiscs.
|
||||
tcp_limit_output_bytes limits the number of bytes on qdisc
|
||||
or device to reduce artificial RTT/cwnd and reduce bufferbloat.
|
||||
- Note: For GSO/TSO enabled flows, we try to have at least two
|
||||
- packets in flight. Reducing tcp_limit_output_bytes might also
|
||||
- reduce the size of individual GSO packet (64KB being the max)
|
||||
Default: 131072
|
||||
|
||||
tcp_challenge_ack_limit - INTEGER
|
||||
--- a/net/ipv4/tcp.c
|
||||
+++ b/net/ipv4/tcp.c
|
||||
@@ -806,12 +806,6 @@ static unsigned int tcp_xmit_size_goal(s
|
||||
xmit_size_goal = min_t(u32, gso_size,
|
||||
sk->sk_gso_max_size - 1 - hlen);
|
||||
|
||||
- /* TSQ : try to have at least two segments in flight
|
||||
- * (one in NIC TX ring, another in Qdisc)
|
||||
- */
|
||||
- xmit_size_goal = min_t(u32, xmit_size_goal,
|
||||
- sysctl_tcp_limit_output_bytes >> 1);
|
||||
-
|
||||
xmit_size_goal = tcp_bound_to_half_wnd(tp, xmit_size_goal);
|
||||
|
||||
/* We try hard to avoid divides here */
|
||||
--- a/net/ipv4/tcp_output.c
|
||||
+++ b/net/ipv4/tcp_output.c
|
||||
@@ -1875,8 +1875,12 @@ static bool tcp_write_xmit(struct sock *
|
||||
* - better RTT estimation and ACK scheduling
|
||||
* - faster recovery
|
||||
* - high rates
|
||||
+ * Alas, some drivers / subsystems require a fair amount
|
||||
+ * of queued bytes to ensure line rate.
|
||||
+ * One example is wifi aggregation (802.11 AMPDU)
|
||||
*/
|
||||
- limit = max(skb->truesize, sk->sk_pacing_rate >> 10);
|
||||
+ limit = max_t(unsigned int, sysctl_tcp_limit_output_bytes,
|
||||
+ sk->sk_pacing_rate >> 10);
|
||||
|
||||
if (atomic_read(&sk->sk_wmem_alloc) > limit) {
|
||||
set_bit(TSQ_THROTTLED, &tp->tsq_flags);
|
|
@ -1,46 +0,0 @@
|
|||
From: Dan Carpenter <dan.carpenter@oracle.com>
|
||||
Date: Sat, 23 Nov 2013 15:59:42 +1100
|
||||
Subject: xfs: underflow bug in xfs_attrlist_by_handle()
|
||||
Origin: http://www.ozlabs.org/~akpm/mmotm/broken-out/xfs-underflow-bug-in-xfs_attrlist_by_handle.patch
|
||||
|
||||
If we allocate less than sizeof(struct attrlist) then we end up corrupting
|
||||
memory or doing a ZERO_PTR_SIZE dereference.
|
||||
|
||||
This can only be triggered with CAP_SYS_ADMIN.
|
||||
|
||||
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
|
||||
Reported-by: Nico Golde <nico@ngolde.de>
|
||||
Reported-by: Fabian Yamaguchi <fabs@goesec.de>
|
||||
Acked-by: Ben Myers <bpm@sgi.com>
|
||||
Cc: Alex Elder <elder@kernel.org>
|
||||
Reviewed-by: Dave Chinner <dchinner@redhat.com>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
---
|
||||
fs/xfs/xfs_ioctl.c | 3 ++-
|
||||
fs/xfs/xfs_ioctl32.c | 3 ++-
|
||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/fs/xfs/xfs_ioctl.c
|
||||
+++ b/fs/xfs/xfs_ioctl.c
|
||||
@@ -443,7 +443,8 @@ xfs_attrlist_by_handle(
|
||||
return -XFS_ERROR(EPERM);
|
||||
if (copy_from_user(&al_hreq, arg, sizeof(xfs_fsop_attrlist_handlereq_t)))
|
||||
return -XFS_ERROR(EFAULT);
|
||||
- if (al_hreq.buflen > XATTR_LIST_MAX)
|
||||
+ if (al_hreq.buflen < sizeof(struct attrlist) ||
|
||||
+ al_hreq.buflen > XATTR_LIST_MAX)
|
||||
return -XFS_ERROR(EINVAL);
|
||||
|
||||
/*
|
||||
--- a/fs/xfs/xfs_ioctl32.c
|
||||
+++ b/fs/xfs/xfs_ioctl32.c
|
||||
@@ -357,7 +357,8 @@ xfs_compat_attrlist_by_handle(
|
||||
if (copy_from_user(&al_hreq, arg,
|
||||
sizeof(compat_xfs_fsop_attrlist_handlereq_t)))
|
||||
return -XFS_ERROR(EFAULT);
|
||||
- if (al_hreq.buflen > XATTR_LIST_MAX)
|
||||
+ if (al_hreq.buflen < sizeof(struct attrlist) ||
|
||||
+ al_hreq.buflen > XATTR_LIST_MAX)
|
||||
return -XFS_ERROR(EINVAL);
|
||||
|
||||
/*
|
|
@ -22,9 +22,9 @@ Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
|
|||
config USB_MUSB_DAVINCI
|
||||
tristate "DaVinci"
|
||||
depends on ARCH_DAVINCI_DMx
|
||||
@@ -92,8 +89,6 @@ config USB_MUSB_BLACKFIN
|
||||
@@ -93,8 +90,6 @@ config USB_MUSB_BLACKFIN
|
||||
config USB_MUSB_UX500
|
||||
tristate "U8500 and U5500"
|
||||
tristate "Ux500 platforms"
|
||||
|
||||
-endchoice
|
||||
-
|
||||
|
|
|
@ -8,8 +8,8 @@ Origin: https://git.kernel.org/cgit/linux/kernel/git/geert/linux-m68k.git/commit
|
|||
bool "SMC (SMSC)/Western Digital devices"
|
||||
default y
|
||||
depends on ARM || ISA || MAC || ARM64 || MIPS || M32R || SUPERH || \
|
||||
- BLACKFIN || MN10300 || COLDFIRE || PCI || PCMCIA
|
||||
+ BLACKFIN || MN10300 || COLDFIRE || PCI || PCMCIA || \
|
||||
- BLACKFIN || MN10300 || COLDFIRE || XTENSA || PCI || PCMCIA
|
||||
+ BLACKFIN || MN10300 || COLDFIRE || XTENSA || PCI || PCMCIA || \
|
||||
+ ATARI_ETHERNAT
|
||||
---help---
|
||||
If you have a network (Ethernet) card belonging to this class, say Y
|
||||
|
@ -18,8 +18,8 @@ Origin: https://git.kernel.org/cgit/linux/kernel/git/geert/linux-m68k.git/commit
|
|||
select CRC32
|
||||
select MII
|
||||
depends on (ARM || M32R || SUPERH || MIPS || BLACKFIN || \
|
||||
- MN10300 || COLDFIRE || ARM64)
|
||||
+ MN10300 || COLDFIRE || ARM64 || ATARI_ETHERNAT)
|
||||
- MN10300 || COLDFIRE || ARM64 || XTENSA)
|
||||
+ MN10300 || COLDFIRE || ARM64 || XTENSA || ATARI_ETHERNAT)
|
||||
---help---
|
||||
This is a driver for SMC's 91x series of Ethernet chipsets,
|
||||
including the SMC91C94 and the SMC91C111. Say Y if you want it
|
||||
|
|
|
@ -1,46 +0,0 @@
|
|||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Sun, 1 Sep 2013 17:24:16 +0100
|
||||
Subject: hvc_vio: Do not override preferred console set by kernel parameter
|
||||
Bug-Debian: http://bugs.debian.org/492703
|
||||
Origin: https://git.kernel.org/?p=linux/kernel/git/gregkh/tty.git;a=commit;h=1926d0aeecf0280c67bf7464b2d68fe4e92c566b
|
||||
|
||||
The original version of this was done by Bastian Blank, who wrote:
|
||||
|
||||
> The problem is the following:
|
||||
> - Architecture specific code sets preferred console to something bogus.
|
||||
> - Command line handling tries to set preferred console but is overruled
|
||||
> by the old setting.
|
||||
>
|
||||
> The udbg0 console is a boot console and independant.
|
||||
|
||||
References: http://bugs.debian.org/492703
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
drivers/tty/hvc/hvc_vio.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/tty/hvc/hvc_vio.c b/drivers/tty/hvc/hvc_vio.c
|
||||
index c791b18..b594abf 100644
|
||||
--- a/drivers/tty/hvc/hvc_vio.c
|
||||
+++ b/drivers/tty/hvc/hvc_vio.c
|
||||
@@ -48,6 +48,7 @@
|
||||
#include <asm/prom.h>
|
||||
#include <asm/hvsi.h>
|
||||
#include <asm/udbg.h>
|
||||
+#include <asm/machdep.h>
|
||||
|
||||
#include "hvc_console.h"
|
||||
|
||||
@@ -457,7 +458,9 @@ void __init hvc_vio_init_early(void)
|
||||
if (hvterm_priv0.proto == HV_PROTOCOL_HVSI)
|
||||
goto out;
|
||||
#endif
|
||||
- add_preferred_console("hvc", 0, NULL);
|
||||
+ /* Check whether the user has requested a different console. */
|
||||
+ if (!strstr(cmd_line, "console="))
|
||||
+ add_preferred_console("hvc", 0, NULL);
|
||||
hvc_instantiate(0, 0, ops);
|
||||
out:
|
||||
of_node_put(stdout_node);
|
|
@ -13,9 +13,9 @@ once it's ready to speak MBIM.
|
|||
---
|
||||
--- a/drivers/net/usb/cdc_ncm.c
|
||||
+++ b/drivers/net/usb/cdc_ncm.c
|
||||
@@ -55,11 +55,7 @@
|
||||
|
||||
#define DRIVER_VERSION "14-Mar-2012"
|
||||
@@ -53,11 +53,7 @@
|
||||
#include <linux/usb/cdc.h>
|
||||
#include <linux/usb/cdc_ncm.h>
|
||||
|
||||
-#if IS_ENABLED(CONFIG_USB_NET_CDC_MBIM)
|
||||
-static bool prefer_mbim = true;
|
||||
|
|
|
@ -19,7 +19,7 @@ Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
|||
|
||||
--- a/Documentation/kernel-parameters.txt
|
||||
+++ b/Documentation/kernel-parameters.txt
|
||||
@@ -458,8 +458,8 @@ bytes respectively. Such letter suffixes
|
||||
@@ -513,8 +513,8 @@ bytes respectively. Such letter suffixes
|
||||
ccw_timeout_log [S390]
|
||||
See Documentation/s390/CommonIO for details.
|
||||
|
||||
|
@ -32,7 +32,7 @@ Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
|||
checkreqprot [SELINUX] Set initial checkreqprot flag value.
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -930,6 +930,14 @@ config MEMCG
|
||||
@@ -934,6 +934,14 @@ config MEMCG
|
||||
This config option also selects MM_OWNER config option, which
|
||||
could in turn add some fork/exit overhead.
|
||||
|
||||
|
@ -49,7 +49,7 @@ Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
|||
depends on MEMCG && SWAP
|
||||
--- a/kernel/cgroup.c
|
||||
+++ b/kernel/cgroup.c
|
||||
@@ -5293,7 +5293,7 @@ static void cgroup_release_agent(struct
|
||||
@@ -5442,7 +5442,7 @@ static void cgroup_release_agent(struct
|
||||
mutex_unlock(&cgroup_mutex);
|
||||
}
|
||||
|
||||
|
@ -58,7 +58,7 @@ Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
|||
{
|
||||
struct cgroup_subsys *ss;
|
||||
char *token;
|
||||
@@ -5309,17 +5309,29 @@ static int __init cgroup_disable(char *s
|
||||
@@ -5458,17 +5458,29 @@ static int __init cgroup_disable(char *s
|
||||
*/
|
||||
for_each_builtin_subsys(ss, i) {
|
||||
if (!strcmp(token, ss->name)) {
|
||||
|
@ -88,12 +88,12 @@ Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
|||
+}
|
||||
+__setup("cgroup_enable=", cgroup_enable);
|
||||
+
|
||||
/*
|
||||
* Functons for CSS ID.
|
||||
*/
|
||||
/**
|
||||
* css_from_dir - get corresponding css from the dentry of a cgroup dir
|
||||
* @dentry: directory dentry of interest
|
||||
--- a/mm/memcontrol.c
|
||||
+++ b/mm/memcontrol.c
|
||||
@@ -6951,6 +6951,9 @@ static void mem_cgroup_bind(struct cgrou
|
||||
@@ -7002,6 +7002,9 @@ static void mem_cgroup_bind(struct cgrou
|
||||
|
||||
struct cgroup_subsys mem_cgroup_subsys = {
|
||||
.name = "memory",
|
||||
|
|
|
@ -1,36 +0,0 @@
|
|||
From: Bastian Blank <waldi@debian.org>
|
||||
Subject: Allow access to sensitive SysRq keys to be restricted by default
|
||||
Date: Sun, 14 Feb 2010 16:11:35 +0100
|
||||
Forwarded: no
|
||||
|
||||
Add a Kconfig variable to set the initial value of the Magic
|
||||
SysRq mask (sysctl: kernel.sysrq).
|
||||
|
||||
--- a/include/linux/sysrq.h
|
||||
+++ b/include/linux/sysrq.h
|
||||
@@ -18,7 +18,7 @@
|
||||
#include <linux/types.h>
|
||||
|
||||
/* Enable/disable SYSRQ support by default (0==no, 1==yes). */
|
||||
-#define SYSRQ_DEFAULT_ENABLE 1
|
||||
+#define SYSRQ_DEFAULT_ENABLE CONFIG_MAGIC_SYSRQ_DEFAULT_MASK
|
||||
|
||||
/* Possible values of bitmask for enabling sysrq functions */
|
||||
/* 0x0001 is reserved for enable everything */
|
||||
--- a/lib/Kconfig.debug
|
||||
+++ b/lib/Kconfig.debug
|
||||
@@ -312,6 +312,14 @@ config MAGIC_SYSRQ
|
||||
keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
|
||||
unless you really know what this hack does.
|
||||
|
||||
+config MAGIC_SYSRQ_DEFAULT_MASK
|
||||
+ hex "Default mask for Magic SysRq keys on the console"
|
||||
+ depends on MAGIC_SYSRQ
|
||||
+ default 1
|
||||
+ help
|
||||
+ Specifies the default mask for the allowed SysRq keys. This can be
|
||||
+ used to disable several sensitive keys by default.
|
||||
+
|
||||
config DEBUG_KERNEL
|
||||
bool "Kernel debugging"
|
||||
help
|
|
@ -17,18 +17,17 @@ bugfix/all/firmware_class-log-every-success-and-failure.patch
|
|||
bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
|
||||
bugfix/all/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
|
||||
|
||||
# Patches and source files from aufs3 repository, imported with
|
||||
# debian/patches/features/all/aufs3/gen-patch.
|
||||
features/all/aufs3/aufs3-kbuild.patch
|
||||
features/all/aufs3/aufs3-base.patch
|
||||
features/all/aufs3/aufs3-mmap.patch
|
||||
features/all/aufs3/aufs3-standalone.patch
|
||||
features/all/aufs3/aufs3-add.patch
|
||||
# Debian-specific changes
|
||||
debian/aufs3-mark-as-staging.patch
|
||||
# # Patches and source files from aufs3 repository, imported with
|
||||
# # debian/patches/features/all/aufs3/gen-patch.
|
||||
# features/all/aufs3/aufs3-kbuild.patch
|
||||
# features/all/aufs3/aufs3-base.patch
|
||||
# features/all/aufs3/aufs3-mmap.patch
|
||||
# features/all/aufs3/aufs3-standalone.patch
|
||||
# features/all/aufs3/aufs3-add.patch
|
||||
# # Debian-specific changes
|
||||
# debian/aufs3-mark-as-staging.patch
|
||||
|
||||
# Change some defaults for security reasons
|
||||
features/all/sysrq-mask.patch
|
||||
debian/af_802154-Disable-auto-loading-as-mitigation-against.patch
|
||||
debian/rds-Disable-auto-loading-as-mitigation-against-local.patch
|
||||
debian/decnet-Disable-auto-loading-as-mitigation-against-lo.patch
|
||||
|
@ -58,7 +57,6 @@ bugfix/arm/omap-musb-choice.patch
|
|||
|
||||
# Miscellaneous bug fixes
|
||||
bugfix/mips/disable-advansys.patch
|
||||
bugfix/powerpc/lpar-console.patch
|
||||
bugfix/arm/ixp4xx_iobe.patch
|
||||
bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
|
||||
bugfix/all/misc-bmp085-Enable-building-as-a-module.patch
|
||||
|
@ -73,10 +71,4 @@ bugfix/m68k/ethernat-kconfig.patch
|
|||
features/all/mvsas-Recognise-device-subsystem-9485-9485-as-88SE94.patch
|
||||
bugfix/all/kbuild-use-nostdinc-in-compile-tests.patch
|
||||
debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch
|
||||
bugfix/all/UAPI-include-asm-byteorder.h-in-linux-raid-md_p.h.patch
|
||||
bugfix/all/net-clamp-msg_namelen-instead-of-returning-an-error.patch
|
||||
bugfix/all/tcp-tsq-restore-minimal-amount-of-queueing.patch
|
||||
bugfix/all/rds-prevent-bug_on-triggered-by-congestion-update-to-loopback.patch
|
||||
bugfix/all/ipv6-fix-headroom-calculation-in-udp6_ufo_fragment.patch
|
||||
bugfix/all/xfs-underflow-bug-in-xfs_attrlist_by_handle.patch
|
||||
bugfix/arm/ahci-imx-Explicitly-clear-IMX6Q_GPR13_SATA_MPLL_CLK_.patch
|
||||
|
|
Loading…
Reference in New Issue