Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1302107

[PATCH 4.2.y-ckt 069/211] Revert "dm mpath: fix stalls when handling invalid ioctls"

From Kamal Mostafa <kamal@canonical.com>
Newsgroups linux.kernel
Subject [PATCH 4.2.y-ckt 069/211] Revert "dm mpath: fix stalls when handling invalid ioctls"
Date 2016-01-05 21:40 +0100
Message-ID <qNGyE-7WD-57@gated-at.bofh.it> (permalink)
References <qNFMd-7nV-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


4.2.8-ckt1 -stable review patch.  If anyone has any objections, please let me know.

------------------

From: Mauricio Faria de Oliveira <mauricfo@linux.vnet.ibm.com>

commit 47796938c46b943d157ac8a6f9ed4e3b98b83cf4 upstream.

This reverts commit a1989b330093578ea5470bea0a00f940c444c466.

That commit introduced a regression at least for the case of the SG_IO ioctl()
running without CAP_SYS_RAWIO capability (e.g., unprivileged users) when there
are no active paths: the ioctl() fails with the ENOTTY errno immediately rather
than blocking due to queue_if_no_path until a path becomes active, for example.

That case happens to be exercised by QEMU KVM guests with 'scsi-block' devices
(qemu "-device scsi-block" [1], libvirt "<disk type='block' device='lun'>" [2])
from multipath devices; which leads to SCSI/filesystem errors in such a guest.

More general scenarios can hit that regression too. The following demonstration
employs a SG_IO ioctl() with a standard SCSI INQUIRY command for this objective
(some output & user changes omitted for brevity and comments added for clarity).

Reverting that commit restores normal operation (queueing) in failing scenarios;
tested on linux-next (next-20151022).

1) Test-case is based on sg_simple0 [3] (just SG_IO; remove SG_GET_VERSION_NUM)

    $ cat sg_simple0.c
    ... see [3] ...
    $ sed '/SG_GET_VERSION_NUM/,/}/d' sg_simple0.c > sgio_inquiry.c
    $ gcc sgio_inquiry.c -o sgio_inquiry

2) The ioctl() works fine with active paths present.

    # multipath -l 85ag56
    85ag56 (...) dm-19 IBM     ,2145
    size=60G features='1 queue_if_no_path' hwhandler='0' wp=rw
    |-+- policy='service-time 0' prio=0 status=active
    | |- 8:0:11:0  sdz  65:144  active undef running
    | `- 9:0:9:0   sdbf 67:144  active undef running
    `-+- policy='service-time 0' prio=0 status=enabled
      |- 8:0:12:0  sdae 65:224  active undef running
      `- 9:0:12:0  sdbo 68:32   active undef running

    $ ./sgio_inquiry /dev/mapper/85ag56
    Some of the INQUIRY command's response:
        IBM       2145              0000
    INQUIRY duration=0 millisecs, resid=0

3) The ioctl() fails with ENOTTY errno with _no_ active paths present,
   for unprivileged users (rather than blocking due to queue_if_no_path).

    # for path in $(multipath -l 85ag56 | grep -o 'sd[a-z]\+'); \
          do multipathd -k"fail path $path"; done

    # multipath -l 85ag56
    85ag56 (...) dm-19 IBM     ,2145
    size=60G features='1 queue_if_no_path' hwhandler='0' wp=rw
    |-+- policy='service-time 0' prio=0 status=enabled
    | |- 8:0:11:0  sdz  65:144  failed undef running
    | `- 9:0:9:0   sdbf 67:144  failed undef running
    `-+- policy='service-time 0' prio=0 status=enabled
      |- 8:0:12:0  sdae 65:224  failed undef running
      `- 9:0:12:0  sdbo 68:32   failed undef running

    $ ./sgio_inquiry /dev/mapper/85ag56
    sg_simple0: Inquiry SG_IO ioctl error: Inappropriate ioctl for device

4) dmesg shows that scsi_verify_blk_ioctl() failed for SG_IO (0x2285);
   it returns -ENOIOCTLCMD, later replaced with -ENOTTY in vfs_ioctl().

    $ dmesg
    <...>
    [] device-mapper: multipath: Failing path 65:144.
    [] device-mapper: multipath: Failing path 67:144.
    [] device-mapper: multipath: Failing path 65:224.
    [] device-mapper: multipath: Failing path 68:32.
    [] sgio_inquiry: sending ioctl 2285 to a partition!

5) The ioctl() only works if the SYS_CAP_RAWIO capability is present
   (then queueing happens -- in this example, queue_if_no_path is set);
   this is due to a conditional check in scsi_verify_blk_ioctl().

    # capsh --drop=cap_sys_rawio -- -c './sgio_inquiry /dev/mapper/85ag56'
    sg_simple0: Inquiry SG_IO ioctl error: Inappropriate ioctl for device

    # ./sgio_inquiry /dev/mapper/85ag56 &
    [1] 72830

    # cat /proc/72830/stack
    [<c00000171c0df700>] 0xc00000171c0df700
    [<c000000000015934>] __switch_to+0x204/0x350
    [<c000000000152d4c>] msleep+0x5c/0x80
    [<c00000000077dfb0>] dm_blk_ioctl+0x70/0x170
    [<c000000000487c40>] blkdev_ioctl+0x2b0/0x9b0
    [<c0000000003128e4>] block_ioctl+0x64/0xd0
    [<c0000000002dd3b0>] do_vfs_ioctl+0x490/0x780
    [<c0000000002dd774>] SyS_ioctl+0xd4/0xf0
    [<c000000000009358>] system_call+0x38/0xd0

6) This is the function call chain exercised in this analysis:

SYSCALL_DEFINE3(ioctl, <...>) @ fs/ioctl.c
    -> do_vfs_ioctl()
        -> vfs_ioctl()
            ...
            error = filp->f_op->unlocked_ioctl(filp, cmd, arg);
            ...
                -> dm_blk_ioctl() @ drivers/md/dm.c
                    -> multipath_ioctl() @ drivers/md/dm-mpath.c
                        ...
                        (bdev = NULL, due to no active paths)
                        ...
                        if (!bdev || <...>) {
                            int err = scsi_verify_blk_ioctl(NULL, cmd);
                            if (err)
                                r = err;
                        }
                        ...
                            -> scsi_verify_blk_ioctl() @ block/scsi_ioctl.c
                                ...
                                if (bd && bd == bd->bd_contains) // not taken (bd = NULL)
                                    return 0;
                                ...
                                if (capable(CAP_SYS_RAWIO)) // not taken (unprivileged user)
                                    return 0;
                                ...
                                printk_ratelimited(KERN_WARNING
                                           "%s: sending ioctl %x to a partition!\n" <...>);

                                return -ENOIOCTLCMD;
                            <-
                        ...
                        return r ? : <...>
                    <-
            ...
            if (error == -ENOIOCTLCMD)
                error = -ENOTTY;
             out:
                return error;
            ...

Links:
[1] http://git.qemu.org/?p=qemu.git;a=commit;h=336a6915bc7089fb20fea4ba99972ad9a97c5f52
[2] https://libvirt.org/formatdomain.html#elementsDisks (see 'disk' -> 'device')
[3] http://tldp.org/HOWTO/SCSI-Generic-HOWTO/pexample.html (Revision 1.2, 2002-05-03)

Signed-off-by: Mauricio Faria de Oliveira <mauricfo@linux.vnet.ibm.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
---
 drivers/md/dm-mpath.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
index eff7bdd..171cc54 100644
--- a/drivers/md/dm-mpath.c
+++ b/drivers/md/dm-mpath.c
@@ -1584,11 +1584,8 @@ static int multipath_ioctl(struct dm_target *ti, unsigned int cmd,
 	/*
 	 * Only pass ioctls through if the device sizes match exactly.
 	 */
-	if (!bdev || ti->len != i_size_read(bdev->bd_inode) >> SECTOR_SHIFT) {
-		int err = scsi_verify_blk_ioctl(NULL, cmd);
-		if (err)
-			r = err;
-	}
+	if (!r && ti->len != i_size_read(bdev->bd_inode) >> SECTOR_SHIFT)
+		r = scsi_verify_blk_ioctl(NULL, cmd);
 
 	if (r == -ENOTCONN && !fatal_signal_pending(current)) {
 		spin_lock_irqsave(&m->lock, flags);
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[4.2.y-ckt stable] Linux 4.2.8-ckt1 stable review Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 185/211] sctp: use the same clock as if sock source timestamps were on Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 067/211] dm: initialize non-blk-mq queue data before queue is used Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 153/211] of/fdt: fix error checking for earlycon address Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 167/211] selftests: kprobe: Choose an always-defined function to probe Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 077/211] megaraid_sas : SMAP restriction--do not access user memory from IOCTL code Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 103/211] scsi_sysfs: Fix queue_ramp_up_period return code Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 114/211] iio:magnetometer:bmc150_magn: sort entry alphabetically Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 093/211] memcg: fix thresholds for 32b architectures. Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 087/211] ALSA: hda - Add Intel Lewisburg device IDs Audio Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 168/211] selftests: Make scripts executable Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 116/211] net-sysfs: get_netdev_queue_index() cleanup Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 209/211] rhashtable: Fix walker list corruption Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 046/211] vTPM: fix memory allocation flag for rtce buffer at kernel boot Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 098/211] printk: prevent userland from spoofing kernel messages Kamal Mostafa <kamal@canonical.com> - 2016-01-05 20:50 +0100
  [PATCH 4.2.y-ckt 207/211] af_unix: Revert 'lock_interruptible' in stream receive code Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 192/211] phy: micrel: Fix finding PHY properties in MAC node. Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 194/211] sh_eth: fix kernel oops in skb_put() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 195/211] net: fix IP early demux races Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 211/211] KVM: x86: Reload pit counters for all channels when restoring state Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 191/211] ipv6: sctp: clone options to avoid use after free Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 201/211] bluetooth: Validate socket address length in sco_sock_bind(). Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 184/211] vxlan: fix incorrect RCO bit in VXLAN header Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 204/211] rhashtable: Enforce minimum size on initial hash table Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 208/211] tcp: restore fastopen with no data in SYN packet Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 181/211] gre6: allow to update all parameters via rtnl Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 199/211] net: check both type and procotol for tcp sockets Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 180/211] pppoe: fix memory corruption in padt work structure Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 190/211] r8152: fix lockup when runtime PM is enabled Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 210/211] KEYS: Fix race between read and revoke Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 189/211] net: qca_spi: fix transmit queue timeout handling Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 178/211] megaraid_sas: Make tape drives visible on PERC5 controllers Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 186/211] sctp: update the netstamp_needed counter when copying sockets Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 187/211] sctp: also copy sk_tsflags when copying the socket Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 183/211] ipv6: keep existing flags when setting IFA_F_OPTIMISTIC Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 196/211] pptp: verify sockaddr_len in pptp_bind() and pptp_connect() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 202/211] net: fix uninitialized variable issue Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 203/211] ipv6: automatically enable stable privacy mode if stable_secret set Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 200/211] net_sched: make qdisc_tree_decrease_qlen() work for non mq Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 188/211] net: cdc_mbim: add "NDP to end" quirk for Huawei E3372 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 206/211] fou: clean up socket with kfree_rcu Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 182/211] atl1c: Improve driver not to do order 4 GFP_ATOMIC allocation Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 193/211] net: add validation for the socket syscall protocol argument Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:00 +0100
  [PATCH 4.2.y-ckt 166/211] vfio/platform: store mapped memory in region, instead of an on-stack copy Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 151/211] DT: mmc: sh_mmcif: fix "compatible" property text Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 169/211] thermal: exynos: Fix first temperature read after registering sensor Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 163/211] tracepoints: Fix documentation of RCU lockdep checks Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 165/211] ipv6: fix tunnel error handling Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 155/211] PCI: Set SR-IOV NumVFs to zero after enumeration Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 152/211] netfilter: nf_nat_redirect: add missing NULL pointer check Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 179/211] ARC: Fix silly typo in MAINTAINERS file Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 159/211] cpufreq: arm_big_little: fix frequency check when bL switcher is active Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 172/211] rtc: ds1307: Fix alarm programming for mcp794xx Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 173/211] NTB: fix 32-bit compiler warning Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 161/211] xprtrdma: Prevent loss of completion signals Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 177/211] TPM: Avoid reference to potentially freed memory Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 156/211] sparc/PCI: Add mem64 resource parsing for root bus Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 176/211] mvneta: add FIXED_PHY dependency Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 157/211] IB/core, cma: Make __attribute_const__ declarations sparse-friendly Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 171/211] perf trace: Fix documentation for -i Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 148/211] perf annotate: Fix 'annotate.use_offset' config variable usage Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 160/211] xprtrdma: Re-arm after missed events Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 158/211] ipv6: no CHECKSUM_PARTIAL on MSG_MORE corked sockets Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 162/211] qmi_wwan: fix entry for HP lt4112 LTE/HSPA+ Gobi 4G Module Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 164/211] net: fix percpu memory leaks Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 174/211] tpm_tis: free irq after probing Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 170/211] ipv4: fix a potential deadlock in mcast getsockopt() path Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 175/211] TPM: revert the list handling logic fixed in 398a1e7 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 149/211] sunrpc: avoid warning in gss_key_timeout Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 150/211] MIPS: atomic: Fix comment describing atomic64_add_unless's return value. Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:10 +0100
  [PATCH 4.2.y-ckt 124/211] netfilter: remove dead code Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 127/211] i2c: img-scb: enable fencing for all versions of the ip Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 128/211] i2c: img-scb: do dummy writes before fifo access Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 147/211] spi: omap2-mcspi: disable other channels CHCONF_FORCE in prepare_message Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 139/211] ALSA: dice: correct variable types for __be32 data Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 130/211] i2c: img-scb: fix LOW and HIGH period values for the SCL clock Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 122/211] [media] vivid: Fix iteration in driver removal path Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 143/211] kconfig: Fix copy&paste error Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 133/211] packet: fix match_fanout_group() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 141/211] ALSA: fireworks: use u32 type for be32_to_cpup() macro Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 146/211] IB/core: avoid 32-bit warning Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 134/211] hsi: fix double kfree Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 145/211] RDMA/cxgb4: re-fix 32-bit build warning Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 137/211] ALSA: fireworks/bebob/oxfw/dice: enable to make as built-in Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 125/211] ipv4: Fix ip_local_out_sk by passing the sk into __ip_local_out_sk Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 123/211] devres: fix a for loop bounds check Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 132/211] i2c: img-scb: verify support for requested bit rate Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 138/211] drm: Fix return value of drm_framebuffer_init() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 100/211] fs, seqfile: always allow oom killer Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 129/211] i2c: img-scb: use DIV_ROUND_UP to round divisor values Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 126/211] ipv4: Fix ip_queue_xmit to pass sk into ip_local_out_sk Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 113/211] dax_io(): don't let non-error value escape via retval instead of EFAULT Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 136/211] regulator: arizona-ldo1: Fix handling of GPIO 0 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 118/211] tools build: Fixup feature detection display function name Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 142/211] ALSA: bebob: use correct type for __be32 data Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 140/211] ALSA: dice: assign converted data to the same type of variable Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 092/211] mm/oom_kill.c: reverse the order of setting TIF_MEMDIE and sending SIGKILL Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 131/211] i2c: img-scb: Clear line and interrupt status before starting a transfer Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 135/211] hsi: omap_ssi_port: Prevent warning if cawake_gpio is not defined. Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 144/211] tcp: apply Kern's check on RTTs used for congestion control Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:20 +0100
  [PATCH 4.2.y-ckt 106/211] drivers: of: of_reserved_mem: fixup the alignment with CMA setup Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 086/211] tracefs: Fix refcount imbalance in start_creating() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 108/211] FS-Cache: Increase reference of parent after registering, netfs success Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 120/211] dmaengine: dw: convert to __ffs() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 119/211] wm831x_power: Use IRQF_ONESHOT to request threaded IRQs Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 097/211] proc: actually make proc_fd_permission() thread-friendly Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 111/211] binfmt_elf: Don't clobber passed executable's file header Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 110/211] FS-Cache: Handle a write to the page immediately beyond the EOF marker Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 109/211] FS-Cache: Don't override netfs's primary_index if registering failed Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 091/211] mm: slab: only move management objects off-slab for sizes larger than KMALLOC_MIN_SIZE Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 105/211] storvsc: Don't set the SRB_FLAGS_QUEUE_ACTION_ENABLE flag Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 095/211] arm64: bpf: fix mod-by-zero case Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 057/211] ACPI: Using correct irq when waiting for events Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 088/211] drm: Use userspace compatible type in fourcc_mod_code macro Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 112/211] fs/pipe.c: return error code rather than 0 in pipe_write() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 101/211] parisc: Fixes and cleanups in kernel uapi header files Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 090/211] toshiba_acpi: Initialize hotkey_event_type variable Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 063/211] drm/amdgpu: add some additional CZ revisions Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 094/211] arm64: bpf: fix div-by-zero case Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 099/211] lib/hexdump.c: truncate output in case of overflow Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 059/211] i2c: at91: manage unexpected RXRDY flag when starting a transfer Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 085/211] ALSA: hda - Apply pin fixup for HP ProBook 6550b Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 121/211] tcp: call sk_mark_napi_id() on the child, not the listener Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 107/211] drm/ast: Initialized data needed to map fbdev memory Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 115/211] ALSA: pcm: remove structure member of 'struct snd_pcm_hwptr_log *' type because this structure had been removed Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 089/211] scsi: restart list search after unlock in scsi_remove_target Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 084/211] timers: Use proper base migration in add_timer_on() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 078/211] xtensa: fix secondary core boot in SMP Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 102/211] perf: Fix inherited events vs. tracepoint filters Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 117/211] crypto: crc32c-pclmul - use .rodata instead of .rotata Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:30 +0100
  [PATCH 4.2.y-ckt 079/211] recordmcount: Fix endianness handling bug for nop_mcount Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 052/211] [media] media: vb2 dma-sg: Fully cache synchronise buffers in prepare and finish Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 073/211] drm/amdgpu: Make amdgpu_mn functions inline Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 027/211] staging/dgnc: fix info leak in ioctl Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 066/211] megaraid_sas: Do not use PAGE_SIZE for max_sectors Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 080/211] recordmcount: arm64: Replace the ignored mcount call into nop Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 064/211] spi/spi-xilinx: Fix race condition on last word read Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 049/211] drm/amdgpu/gfx8: set TC_WB_ACTION_EN in RELEASE_MEM packet Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 081/211] KVM: VMX: fix SMEP and SMAP without EPT Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 013/211] bridge: fix netlink max attr size Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 051/211] [media] media: vb2 dma-contig: Fully cache synchronise buffers in prepare and finish Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 061/211] ALSA: hda - Disable 64bit address for Creative HDA controllers Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 065/211] megaraid_sas: Expose TAPE drives unconditionally Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 015/211] task_work: remove fifo ordering guarantee Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 072/211] xtensa: fixes for configs without loop option Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 076/211] PCI: spear: Fix dw_pcie_cfg_read/write() usage Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 021/211] KEYS: Don't permit request_key() to construct a new keyring Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 083/211] thermal: exynos: Fix unbalanced regulator disable on probe failure Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 062/211] MAINTAINERS: Add public mailing list for ARC Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 074/211] ALSA: hda - Fix lost 4k BDL boundary workaround Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 058/211] ACPI / PM: Fix incorrect wakeup IRQ setting during suspend-to-idle Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 012/211] net: bcmgenet: Delay PHY initialization to bcmgenet_open() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 069/211] Revert "dm mpath: fix stalls when handling invalid ioctls" Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 060/211] ALSA: hda/realtek - Dell XPS one ALC3260 speaker no sound after resume back Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 070/211] drm/i915: add quirk to enable backlight on Dell Chromebook 11 (2015) Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 016/211] ebpf: fix fd refcount leaks related to maps in bpf syscall Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 068/211] mtd: blkdevs: fix potential deadlock + lockdep warnings Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 050/211] spi: dw: explicitly free IRQ handler in dw_spi_remove_host() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 071/211] crypto: algif_hash - Only export and import on sockets with data Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 053/211] [media] media/v4l2-ctrls: fix setting autocluster to manual with VIDIOC_S_CTRL Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 054/211] i2c: at91: fix write transfers by clearing pending interrupt first Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 048/211] tpm, tpm_tis: fix tpm_tis ACPI detection issue with TPM 2.0 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 075/211] tracing: Update instance_rmdir() to use tracefs_remove_recursive Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:40 +0100
  [PATCH 4.2.y-ckt 043/211] iommu/arm-smmu: Fix error checking for ASID and VMID allocation Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 022/211] ARM: OMAP2+: board-generic: Remove stale of_irq macros Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 030/211] HID: core: Avoid uninitialized buffer access Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 039/211] f2fs crypto: allocate buffer for decrypting filename Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 031/211] [media] v4l2-compat-ioctl32: fix alignment for ARM64 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 004/211] x86/xen: Do not clip xen_e820_map to xen_e820_map_entries when sanitizing map Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 035/211] ubi: fastmap: Implement produce_free_peb() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 005/211] drm/radeon: add quirk for MSI R7 370 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 037/211] drm/i915: Fix userptr deadlock with aliased GTT mmappings Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 047/211] tpm, tpm_crb: fix unaligned read of the command buffer address Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 044/211] jbd2: fix checkpoint list cleanup Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 032/211] mtd: mtdpart: fix add_mtd_partitions error path Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 028/211] ipv6: Fix IPsec pre-encap fragmentation check Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 023/211] vxlan: set needed headroom correctly Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 002/211] drivers: usb :fsl: Implement Workaround for USB Erratum A007792 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 045/211] [PATCH] fix calculation of meta_bg descriptor backups Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 042/211] iommu/vt-d: Fix ATSR handling for Root-Complex integrated endpoints Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 003/211] drivers: usb: fsl: Workaround for USB erratum-A005275 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 033/211] [media] v4l2-ctrls: arrays are also considered compound controls Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 034/211] [media] media: v4l2-ctrls: Fix 64bit support in get_ctrl() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 006/211] drm/radeon: add quirk for ASUS R7 370 Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 029/211] KVM: svm: unconditionally intercept #DB Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 038/211] integrity: prevent loading untrusted certificates on the IMA trusted keyring Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 036/211] drm/i915: Only update the current userptr worker Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 041/211] lockd: create NSM handles per net namespace Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 040/211] spi: ti-qspi: Fix data corruption seen on r/w stress test Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 024/211] isdn_ppp: Add checks for allocation failure in isdn_ppp_open() Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 025/211] ppp, slip: Validate VJ compression slot parameters completely Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 026/211] [media] media/vivid-osd: fix info leak in ioctl Kamal Mostafa <kamal@canonical.com> - 2016-01-05 21:50 +0100
  [PATCH 4.2.y-ckt 019/211] KEYS: Fix race between key destruction and finding a keyring by name Kamal Mostafa <kamal@canonical.com> - 2016-01-05 22:00 +0100
  [PATCH 4.2.y-ckt 020/211] KEYS: Fix crash when attempt to garbage collect an uninstantiated keyring Kamal Mostafa <kamal@canonical.com> - 2016-01-05 22:00 +0100
  [PATCH 4.2.y-ckt 018/211] scsi_dh: fix randconfig build error Kamal Mostafa <kamal@canonical.com> - 2016-01-05 22:00 +0100
  [PATCH 4.2.y-ckt 017/211] netlink, mmap: fix edge-case leakages in nf queue zero-copy Kamal Mostafa <kamal@canonical.com> - 2016-01-05 22:00 +0100

csiph-web