diff --git a/debian/changelog b/debian/changelog index a77e45d49..3558326e8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -linux (3.11~rc2-1~exp1) UNRELEASED; urgency=low +linux (3.11~rc4-1~exp1) UNRELEASED; urgency=low * New upstream release candidate diff --git a/debian/patches/bugfix/all/xen-blkback-Check-device-permissions-before-allowing.patch b/debian/patches/bugfix/all/xen-blkback-Check-device-permissions-before-allowing.patch deleted file mode 100644 index 3d823853e..000000000 --- a/debian/patches/bugfix/all/xen-blkback-Check-device-permissions-before-allowing.patch +++ /dev/null @@ -1,52 +0,0 @@ -From: Konrad Rzeszutek Wilk -Date: Wed, 16 Jan 2013 11:33:52 -0500 -Subject: xen/blkback: Check device permissions before allowing OP_DISCARD -Origin: https://git.kernel.org/cgit/linux/kernel/git/konrad/xen.git/commit?id=604c499cbbcc3d5fe5fb8d53306aa0fae1990109 - -We need to make sure that the device is not RO or that -the request is not past the number of sectors we want to -issue the DISCARD operation for. - -This fixes CVE-2013-2140. - -Cc: stable@vger.kernel.org -Acked-by: Jan Beulich -Acked-by: Ian Campbell -[v1: Made it pr_warn instead of pr_debug] -Signed-off-by: Konrad Rzeszutek Wilk ---- - drivers/block/xen-blkback/blkback.c | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c -index e79ab45..4119bcd 100644 ---- a/drivers/block/xen-blkback/blkback.c -+++ b/drivers/block/xen-blkback/blkback.c -@@ -876,7 +876,18 @@ static int dispatch_discard_io(struct xen_blkif *blkif, - int status = BLKIF_RSP_OKAY; - struct block_device *bdev = blkif->vbd.bdev; - unsigned long secure; -+ struct phys_req preq; -+ -+ preq.sector_number = req->u.discard.sector_number; -+ preq.nr_sects = req->u.discard.nr_sectors; - -+ err = xen_vbd_translate(&preq, blkif, WRITE); -+ if (err) { -+ pr_warn(DRV_PFX "access denied: DISCARD [%llu->%llu] on dev=%04x\n", -+ preq.sector_number, -+ preq.sector_number + preq.nr_sects, blkif->vbd.pdevice); -+ goto fail_response; -+ } - blkif->st_ds_req++; - - xen_blkif_get(blkif); -@@ -887,7 +898,7 @@ static int dispatch_discard_io(struct xen_blkif *blkif, - err = blkdev_issue_discard(bdev, req->u.discard.sector_number, - req->u.discard.nr_sectors, - GFP_KERNEL, secure); -- -+fail_response: - if (err == -EOPNOTSUPP) { - pr_debug(DRV_PFX "discard op failed, not supported\n"); - status = BLKIF_RSP_EOPNOTSUPP; diff --git a/debian/patches/bugfix/arm/mvneta-module-fix.patch b/debian/patches/bugfix/arm/mvneta-module-fix.patch deleted file mode 100644 index 34ad0ed4d..000000000 --- a/debian/patches/bugfix/arm/mvneta-module-fix.patch +++ /dev/null @@ -1,71 +0,0 @@ -From: Arnaud Patard -Subject: Try to fix mvneta when compiled as module -Forwarded: http://thread.gmane.org/gmane.linux.network/273997 - -- set "sgmii serdes configuration" register to magical value -- enable clock earlier -- move timer callback after setting timer.data - -[ discussions about this patch currently done with upstream ] - -Signed-off-by: Arnaud Patard - ---- a/drivers/net/ethernet/marvell/mvneta.c -+++ b/drivers/net/ethernet/marvell/mvneta.c -@@ -88,6 +88,8 @@ - #define MVNETA_TX_IN_PRGRS BIT(1) - #define MVNETA_TX_FIFO_EMPTY BIT(8) - #define MVNETA_RX_MIN_FRAME_SIZE 0x247c -+#define MVETH_SGMII_SERDES_CFG 0x24A0 -+#define MVETH_SGMII_SERDES_STAT 0x24A4 - #define MVNETA_TYPE_PRIO 0x24bc - #define MVNETA_FORCE_UNI BIT(21) - #define MVNETA_TXQ_CMD_1 0x24e4 -@@ -655,6 +657,9 @@ static void mvneta_port_sgmii_config(str - val = mvreg_read(pp, MVNETA_GMAC_CTRL_2); - val |= MVNETA_GMAC2_PSC_ENABLE; - mvreg_write(pp, MVNETA_GMAC_CTRL_2, val); -+ -+ /* magic value from https://github.com/yellowback/ubuntu-precise-armadaxp/blob/master/arch/arm/mach-armadaxp/armada_xp_family/ctrlEnv/mvCtrlEnvLib.c:2189 */ -+ mvreg_write(pp, MVETH_SGMII_SERDES_CFG, 0xcc7); - } - - /* Start the Ethernet port RX and TX activity */ -@@ -2728,20 +2733,10 @@ static int mvneta_probe(struct platform_ - - pp = netdev_priv(dev); - -- pp->tx_done_timer.function = mvneta_tx_done_timer_callback; -- init_timer(&pp->tx_done_timer); -- clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags); -- - pp->weight = MVNETA_RX_POLL_WEIGHT; - pp->phy_node = phy_node; - pp->phy_interface = phy_mode; - -- pp->base = of_iomap(dn, 0); -- if (pp->base == NULL) { -- err = -ENOMEM; -- goto err_free_irq; -- } -- - pp->clk = devm_clk_get(&pdev->dev, NULL); - if (IS_ERR(pp->clk)) { - err = PTR_ERR(pp->clk); -@@ -2765,7 +2760,16 @@ static int mvneta_probe(struct platform_ - } - } - -+ pp->base = of_iomap(dn, 0); -+ if (pp->base == NULL) { -+ err = -ENOMEM; -+ goto err_free_irq; -+ } -+ - pp->tx_done_timer.data = (unsigned long)dev; -+ pp->tx_done_timer.function = mvneta_tx_done_timer_callback; -+ init_timer(&pp->tx_done_timer); -+ clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags); - - pp->tx_ring_size = MVNETA_MAX_TXD; - pp->rx_ring_size = MVNETA_MAX_RXD; diff --git a/debian/patches/debian/version.patch b/debian/patches/debian/version.patch index af6483ab4..f8bb63774 100644 --- a/debian/patches/debian/version.patch +++ b/debian/patches/debian/version.patch @@ -98,7 +98,7 @@ are set. #include #include -@@ -842,8 +843,9 @@ void show_regs(struct pt_regs * regs) +@@ -843,8 +844,9 @@ void show_regs(struct pt_regs * regs) printk("NIP: "REG" LR: "REG" CTR: "REG"\n", regs->nip, regs->link, regs->ctr); @@ -110,8 +110,8 @@ are set. printk("MSR: "REG" ", regs->msr); printbits(regs->msr, msr_bits); printk(" CR: %08lx XER: %08lx\n", regs->ccr, regs->xer); ---- a/kernel/printk.c -+++ b/kernel/printk.c +--- a/kernel/printk/printk.c ++++ b/kernel/printk/printk.c @@ -45,6 +45,7 @@ #include #include @@ -120,7 +120,7 @@ are set. #include -@@ -2883,11 +2884,12 @@ void __init dump_stack_set_arch_desc(con +@@ -2871,11 +2872,12 @@ void __init dump_stack_set_arch_desc(con */ void dump_stack_print_info(const char *log_lvl) { diff --git a/debian/patches/series b/debian/patches/series index 548780284..efd5a7b98 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -56,7 +56,6 @@ features/all/xen/microcode-api-update.patch # ARM bug fixes bugfix/arm/omap-musb-choice.patch -bugfix/arm/mvneta-module-fix.patch # Miscellaneous bug fixes bugfix/mips/disable-advansys.patch @@ -67,7 +66,6 @@ bugfix/all/ath6kl-do-not-use-virt_addr_valid.patch features/all/cpu-devices/Partially-revert-cpufreq-Add-support-for-x86-cpuinfo.patch bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch bugfix/all/misc-bmp085-Enable-building-as-a-module.patch -bugfix/all/xen-blkback-Check-device-permissions-before-allowing.patch # ARM hardware support features/arm/imx53-qsb-usb-power.patch