]> git.kernelconcepts.de Git - karo-tx-linux.git/log
karo-tx-linux.git
8 years agoMerge remote-tracking branch 'jc_docs/docs-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:46:25 +0000 (12:46 +1100)]
Merge remote-tracking branch 'jc_docs/docs-next'

8 years agoMerge remote-tracking branch 'dwmw2-iommu/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:44:21 +0000 (12:44 +1100)]
Merge remote-tracking branch 'dwmw2-iommu/master'

8 years agoMerge remote-tracking branch 'iommu/next'
Stephen Rothwell [Thu, 11 Feb 2016 01:42:57 +0000 (12:42 +1100)]
Merge remote-tracking branch 'iommu/next'

8 years agoMerge remote-tracking branch 'selinux/next'
Stephen Rothwell [Thu, 11 Feb 2016 01:40:50 +0000 (12:40 +1100)]
Merge remote-tracking branch 'selinux/next'

8 years agoMerge remote-tracking branch 'regulator/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:38:46 +0000 (12:38 +1100)]
Merge remote-tracking branch 'regulator/for-next'

8 years agoMerge remote-tracking branch 'mfd/for-mfd-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:36:38 +0000 (12:36 +1100)]
Merge remote-tracking branch 'mfd/for-mfd-next'

8 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:34:22 +0000 (12:34 +1100)]
Merge remote-tracking branch 'kgdb/kgdb-next'

8 years agoMerge remote-tracking branch 'mmc-uh/next'
Stephen Rothwell [Thu, 11 Feb 2016 01:32:17 +0000 (12:32 +1100)]
Merge remote-tracking branch 'mmc-uh/next'

8 years agoMerge remote-tracking branch 'device-mapper/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:30:10 +0000 (12:30 +1100)]
Merge remote-tracking branch 'device-mapper/for-next'

8 years agoMerge remote-tracking branch 'block/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:27:35 +0000 (12:27 +1100)]
Merge remote-tracking branch 'block/for-next'

8 years agoMerge remote-tracking branch 'input/next'
Stephen Rothwell [Thu, 11 Feb 2016 01:26:09 +0000 (12:26 +1100)]
Merge remote-tracking branch 'input/next'

8 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:24:21 +0000 (12:24 +1100)]
Merge remote-tracking branch 'sound-asoc/for-next'

8 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:22:57 +0000 (12:22 +1100)]
Merge remote-tracking branch 'sound/for-next'

8 years agoMerge remote-tracking branch 'hdlcd/for-upstream/hdlcd'
Stephen Rothwell [Thu, 11 Feb 2016 01:21:32 +0000 (12:21 +1100)]
Merge remote-tracking branch 'hdlcd/for-upstream/hdlcd'

8 years agoMerge remote-tracking branch 'drm-misc/topic/drm-misc'
Stephen Rothwell [Thu, 11 Feb 2016 01:18:49 +0000 (12:18 +1100)]
Merge remote-tracking branch 'drm-misc/topic/drm-misc'

8 years agoMerge remote-tracking branch 'drm-tegra/drm/tegra/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:17:24 +0000 (12:17 +1100)]
Merge remote-tracking branch 'drm-tegra/drm/tegra/for-next'

8 years agoMerge remote-tracking branch 'drm-intel/for-linux-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:15:05 +0000 (12:15 +1100)]
Merge remote-tracking branch 'drm-intel/for-linux-next'

8 years agoMerge remote-tracking branch 'drm-panel/drm/panel/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:15:01 +0000 (12:15 +1100)]
Merge remote-tracking branch 'drm-panel/drm/panel/for-next'

8 years agoMerge remote-tracking branch 'drm/drm-next'
Stephen Rothwell [Thu, 11 Feb 2016 01:12:31 +0000 (12:12 +1100)]
Merge remote-tracking branch 'drm/drm-next'

8 years agoMerge remote-tracking branch 'crypto/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:09:36 +0000 (12:09 +1100)]
Merge remote-tracking branch 'crypto/master'

8 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:07:33 +0000 (12:07 +1100)]
Merge remote-tracking branch 'l2-mtd/master'

8 years agoMerge remote-tracking branch 'mac80211-next/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:04:35 +0000 (12:04 +1100)]
Merge remote-tracking branch 'mac80211-next/master'

8 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:03:08 +0000 (12:03 +1100)]
Merge remote-tracking branch 'bluetooth/master'

8 years agoMerge remote-tracking branch 'wireless-drivers-next/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:01:31 +0000 (12:01 +1100)]
Merge remote-tracking branch 'wireless-drivers-next/master'

8 years agoMerge remote-tracking branch 'ipvs-next/master'
Stephen Rothwell [Thu, 11 Feb 2016 01:00:06 +0000 (12:00 +1100)]
Merge remote-tracking branch 'ipvs-next/master'

8 years agoMerge remote-tracking branch 'net-next/master'
Stephen Rothwell [Thu, 11 Feb 2016 00:54:03 +0000 (11:54 +1100)]
Merge remote-tracking branch 'net-next/master'

8 years agoMerge remote-tracking branch 'slave-dma/next'
Stephen Rothwell [Thu, 11 Feb 2016 00:43:06 +0000 (11:43 +1100)]
Merge remote-tracking branch 'slave-dma/next'

8 years agoMerge remote-tracking branch 'thermal-soc/next'
Stephen Rothwell [Thu, 11 Feb 2016 00:41:02 +0000 (11:41 +1100)]
Merge remote-tracking branch 'thermal-soc/next'

8 years agoMerge remote-tracking branch 'pm/linux-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:38:49 +0000 (11:38 +1100)]
Merge remote-tracking branch 'pm/linux-next'

8 years agoMerge remote-tracking branch 'libata/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:37:24 +0000 (11:37 +1100)]
Merge remote-tracking branch 'libata/for-next'

8 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:35:21 +0000 (11:35 +1100)]
Merge remote-tracking branch 'kbuild/for-next'

8 years agoMerge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Thu, 11 Feb 2016 00:32:43 +0000 (11:32 +1100)]
Merge remote-tracking branch 'v4l-dvb/master'

8 years agoMerge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:31:18 +0000 (11:31 +1100)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'

8 years agoMerge branch 'dmi/master'
Stephen Rothwell [Thu, 11 Feb 2016 00:31:14 +0000 (11:31 +1100)]
Merge branch 'dmi/master'

8 years agoMerge branch 'jdelvare-hwmon/master'
Stephen Rothwell [Thu, 11 Feb 2016 00:29:51 +0000 (11:29 +1100)]
Merge branch 'jdelvare-hwmon/master'

8 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:28:20 +0000 (11:28 +1100)]
Merge remote-tracking branch 'hid/for-next'

8 years agoMerge remote-tracking branch 'pci/next'
Stephen Rothwell [Thu, 11 Feb 2016 00:23:43 +0000 (11:23 +1100)]
Merge remote-tracking branch 'pci/next'

8 years agoMerge remote-tracking branch 'vfs/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:23:30 +0000 (11:23 +1100)]
Merge remote-tracking branch 'vfs/for-next'

8 years agoMerge remote-tracking branch 'xfs/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:14:08 +0000 (11:14 +1100)]
Merge remote-tracking branch 'xfs/for-next'

8 years agoMerge remote-tracking branch 'orangefs/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:12:33 +0000 (11:12 +1100)]
Merge remote-tracking branch 'orangefs/for-next'

8 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:11:05 +0000 (11:11 +1100)]
Merge remote-tracking branch 'nfsd/nfsd-next'

8 years agoMerge remote-tracking branch 'nfs/linux-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:08:57 +0000 (11:08 +1100)]
Merge remote-tracking branch 'nfs/linux-next'

8 years agoMerge remote-tracking branch 'gfs2/for-next'
Stephen Rothwell [Thu, 11 Feb 2016 00:07:30 +0000 (11:07 +1100)]
Merge remote-tracking branch 'gfs2/for-next'

8 years agoMerge remote-tracking branch 'fscache/fscache'
Stephen Rothwell [Thu, 11 Feb 2016 00:07:15 +0000 (11:07 +1100)]
Merge remote-tracking branch 'fscache/fscache'

8 years agoMerge remote-tracking branch 'f2fs/dev'
Stephen Rothwell [Thu, 11 Feb 2016 00:05:51 +0000 (11:05 +1100)]
Merge remote-tracking branch 'f2fs/dev'

8 years agoMerge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Thu, 11 Feb 2016 00:04:19 +0000 (11:04 +1100)]
Merge remote-tracking branch 'ext4/dev'

8 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Wed, 10 Feb 2016 23:54:16 +0000 (10:54 +1100)]
Merge remote-tracking branch 'ext3/for_next'

8 years agoMerge remote-tracking branch 'ecryptfs/next'
Stephen Rothwell [Wed, 10 Feb 2016 23:52:47 +0000 (10:52 +1100)]
Merge remote-tracking branch 'ecryptfs/next'

8 years agoMerge remote-tracking branch 'ceph/master'
Stephen Rothwell [Wed, 10 Feb 2016 23:52:42 +0000 (10:52 +1100)]
Merge remote-tracking branch 'ceph/master'

8 years agoMerge remote-tracking branch 'btrfs-kdave/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:51:14 +0000 (10:51 +1100)]
Merge remote-tracking branch 'btrfs-kdave/for-next'

8 years agoMerge remote-tracking branch 'xtensa/for_next'
Stephen Rothwell [Wed, 10 Feb 2016 23:49:44 +0000 (10:49 +1100)]
Merge remote-tracking branch 'xtensa/for_next'

8 years agoMerge remote-tracking branch 'uml/linux-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:48:18 +0000 (10:48 +1100)]
Merge remote-tracking branch 'uml/linux-next'

8 years agoMerge remote-tracking branch 'tile/master'
Stephen Rothwell [Wed, 10 Feb 2016 23:46:54 +0000 (10:46 +1100)]
Merge remote-tracking branch 'tile/master'

8 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Wed, 10 Feb 2016 23:45:28 +0000 (10:45 +1100)]
Merge remote-tracking branch 's390/features'

8 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:43:57 +0000 (10:43 +1100)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

8 years agoMerge remote-tracking branch 'microblaze/next'
Stephen Rothwell [Wed, 10 Feb 2016 23:42:32 +0000 (10:42 +1100)]
Merge remote-tracking branch 'microblaze/next'

8 years agoMerge remote-tracking branch 'metag/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:41:07 +0000 (10:41 +1100)]
Merge remote-tracking branch 'metag/for-next'

8 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:39:43 +0000 (10:39 +1100)]
Merge remote-tracking branch 'm68knommu/for-next'

8 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:38:20 +0000 (10:38 +1100)]
Merge remote-tracking branch 'm68k/for-next'

8 years agoMerge remote-tracking branch 'h8300/h8300-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:36:52 +0000 (10:36 +1100)]
Merge remote-tracking branch 'h8300/h8300-next'

8 years agoMerge remote-tracking branch 'arm64/for-next/core'
Stephen Rothwell [Wed, 10 Feb 2016 23:27:20 +0000 (10:27 +1100)]
Merge remote-tracking branch 'arm64/for-next/core'

8 years agoMerge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:25:56 +0000 (10:25 +1100)]
Merge remote-tracking branch 'tegra/for-next'

8 years agoMerge remote-tracking branch 'sunxi/sunxi/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:24:32 +0000 (10:24 +1100)]
Merge remote-tracking branch 'sunxi/sunxi/for-next'

8 years agoMerge remote-tracking branch 'samsung-krzk/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:23:07 +0000 (10:23 +1100)]
Merge remote-tracking branch 'samsung-krzk/for-next'

8 years agoMerge remote-tracking branch 'rockchip/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:21:40 +0000 (10:21 +1100)]
Merge remote-tracking branch 'rockchip/for-next'

8 years agoMerge remote-tracking branch 'renesas/next'
Stephen Rothwell [Wed, 10 Feb 2016 23:20:09 +0000 (10:20 +1100)]
Merge remote-tracking branch 'renesas/next'

8 years agoMerge remote-tracking branch 'qcom/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:18:42 +0000 (10:18 +1100)]
Merge remote-tracking branch 'qcom/for-next'

8 years agoMerge remote-tracking branch 'omap-pending/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:18:37 +0000 (10:18 +1100)]
Merge remote-tracking branch 'omap-pending/for-next'

8 years agoMerge remote-tracking branch 'omap/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:16:55 +0000 (10:16 +1100)]
Merge remote-tracking branch 'omap/for-next'

8 years agoMerge remote-tracking branch 'mvebu/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:15:23 +0000 (10:15 +1100)]
Merge remote-tracking branch 'mvebu/for-next'

8 years agoMerge remote-tracking branch 'keystone/next'
Stephen Rothwell [Wed, 10 Feb 2016 23:14:00 +0000 (10:14 +1100)]
Merge remote-tracking branch 'keystone/next'

8 years agoMerge remote-tracking branch 'imx-mxs/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:12:36 +0000 (10:12 +1100)]
Merge remote-tracking branch 'imx-mxs/for-next'

8 years agoMerge remote-tracking branch 'berlin/berlin/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:12:25 +0000 (10:12 +1100)]
Merge remote-tracking branch 'berlin/berlin/for-next'

8 years agoMerge remote-tracking branch 'bcm2835-dt/bcm2835-dt-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:11:02 +0000 (10:11 +1100)]
Merge remote-tracking branch 'bcm2835-dt/bcm2835-dt-next'

8 years agoMerge remote-tracking branch 'at91/at91-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:10:59 +0000 (10:10 +1100)]
Merge remote-tracking branch 'at91/at91-next'

8 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:09:36 +0000 (10:09 +1100)]
Merge remote-tracking branch 'arm-soc/for-next'

8 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:07:09 +0000 (10:07 +1100)]
Merge remote-tracking branch 'arm/for-next'

8 years agoMerge remote-tracking branch 'arc/for-next'
Stephen Rothwell [Wed, 10 Feb 2016 23:05:45 +0000 (10:05 +1100)]
Merge remote-tracking branch 'arc/for-next'

8 years agodrm: virtio-gpu: set atomic flag
Rob Herring [Wed, 13 Jan 2016 21:52:10 +0000 (15:52 -0600)]
drm: virtio-gpu: set atomic flag

Advertise atomic mode setting capability to user space.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
8 years agodrm: virtio-gpu: transfer dumb buffers to host on plane update
Rob Herring [Wed, 13 Jan 2016 21:52:09 +0000 (15:52 -0600)]
drm: virtio-gpu: transfer dumb buffers to host on plane update

For dumb buffers, we need to transfer them to the host when updating a
plane.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
8 years agodrm: virtio-gpu: ensure plane is flushed to host on atomic update
Rob Herring [Wed, 13 Jan 2016 21:52:08 +0000 (15:52 -0600)]
drm: virtio-gpu: ensure plane is flushed to host on atomic update

This fixes drawing updates when updating planes with atomic API.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
8 years agodrm: virtio-gpu: get the fb from the plane state for atomic updates
Rob Herring [Wed, 13 Jan 2016 21:52:07 +0000 (15:52 -0600)]
drm: virtio-gpu: get the fb from the plane state for atomic updates

When using the atomic API, plane->fb is not set when calling
virtio_gpu_plane_atomic_update. Use plane->state->fb instead.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
8 years agoMerge remote-tracking branch 'drm-intel-fixes/for-linux-next-fixes'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:37 +0000 (09:55 +1100)]
Merge remote-tracking branch 'drm-intel-fixes/for-linux-next-fixes'

8 years agoMerge remote-tracking branch 'char-misc.current/char-misc-linus'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:30 +0000 (09:55 +1100)]
Merge remote-tracking branch 'char-misc.current/char-misc-linus'

8 years agoMerge remote-tracking branch 'tty.current/tty-linus'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:28 +0000 (09:55 +1100)]
Merge remote-tracking branch 'tty.current/tty-linus'

8 years agoMerge remote-tracking branch 'driver-core.current/driver-core-linus'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:27 +0000 (09:55 +1100)]
Merge remote-tracking branch 'driver-core.current/driver-core-linus'

8 years agoMerge remote-tracking branch 'pci-current/for-linus'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:26 +0000 (09:55 +1100)]
Merge remote-tracking branch 'pci-current/for-linus'

8 years agoMerge remote-tracking branch 'sound-current/for-linus'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:25 +0000 (09:55 +1100)]
Merge remote-tracking branch 'sound-current/for-linus'

8 years agoMerge remote-tracking branch 'mac80211/master'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:24 +0000 (09:55 +1100)]
Merge remote-tracking branch 'mac80211/master'

8 years agoMerge remote-tracking branch 'wireless-drivers/master'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:23 +0000 (09:55 +1100)]
Merge remote-tracking branch 'wireless-drivers/master'

8 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:20 +0000 (09:55 +1100)]
Merge remote-tracking branch 'net/master'

8 years agoMerge remote-tracking branch 'sparc/master'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:19 +0000 (09:55 +1100)]
Merge remote-tracking branch 'sparc/master'

8 years agoMerge remote-tracking branch 'powerpc-fixes/fixes'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:17 +0000 (09:55 +1100)]
Merge remote-tracking branch 'powerpc-fixes/fixes'

8 years agoMerge remote-tracking branch 'm68k-current/for-linus'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:12 +0000 (09:55 +1100)]
Merge remote-tracking branch 'm68k-current/for-linus'

8 years agoMerge remote-tracking branch 'arm-current/fixes'
Stephen Rothwell [Wed, 10 Feb 2016 22:55:11 +0000 (09:55 +1100)]
Merge remote-tracking branch 'arm-current/fixes'

8 years agoMerge git://linux-arm.org/linux-ld into drm-next
Dave Airlie [Wed, 10 Feb 2016 22:32:39 +0000 (08:32 +1000)]
Merge git://linux-arm.org/linux-ld into drm-next

Pull upstream HDLCD driver.

* git://linux-arm.org/linux-ld:
  MAINTAINERS: Add Liviu Dudau as maintainer for ARM HDLCD driver.
  drm: Add support for ARM's HDLCD controller.

8 years agobpf: fix branch offset adjustment on backjumps after patching ctx expansion
Daniel Borkmann [Wed, 10 Feb 2016 15:47:11 +0000 (16:47 +0100)]
bpf: fix branch offset adjustment on backjumps after patching ctx expansion

When ctx access is used, the kernel often needs to expand/rewrite
instructions, so after that patching, branch offsets have to be
adjusted for both forward and backward jumps in the new eBPF program,
but for backward jumps it fails to account the delta. Meaning, for
example, if the expansion happens exactly on the insn that sits at
the jump target, it doesn't fix up the back jump offset.

Analysis on what the check in adjust_branches() is currently doing:

  /* adjust offset of jmps if necessary */
  if (i < pos && i + insn->off + 1 > pos)
    insn->off += delta;
  else if (i > pos && i + insn->off + 1 < pos)
    insn->off -= delta;

First condition (forward jumps):

  Before:                         After:

  insns[0]                        insns[0]
  insns[1] <--- i/insn            insns[1] <--- i/insn
  insns[2] <--- pos               insns[P] <--- pos
  insns[3]                        insns[P]  `------| delta
  insns[4] <--- target_X          insns[P]   `-----|
  insns[5]                        insns[3]
                                  insns[4] <--- target_X
                                  insns[5]

First case is if we cross pos-boundary and the jump instruction was
before pos. This is handeled correctly. I.e. if i == pos, then this
would mean our jump that we currently check was the patchlet itself
that we just injected. Since such patchlets are self-contained and
have no awareness of any insns before or after the patched one, the
delta is correctly not adjusted. Also, for the second condition in
case of i + insn->off + 1 == pos, means we jump to that newly patched
instruction, so no offset adjustment are needed. That part is correct.

Second condition (backward jumps):

  Before:                         After:

  insns[0]                        insns[0]
  insns[1] <--- target_X          insns[1] <--- target_X
  insns[2] <--- pos <-- target_Y  insns[P] <--- pos <-- target_Y
  insns[3]                        insns[P]  `------| delta
  insns[4] <--- i/insn            insns[P]   `-----|
  insns[5]                        insns[3]
                                  insns[4] <--- i/insn
                                  insns[5]

Second interesting case is where we cross pos-boundary and the jump
instruction was after pos. Backward jump with i == pos would be
impossible and pose a bug somewhere in the patchlet, so the first
condition checking i > pos is okay only by itself. However, i +
insn->off + 1 < pos does not always work as intended to trigger the
adjustment. It works when jump targets would be far off where the
delta wouldn't matter. But, for example, where the fixed insn->off
before pointed to pos (target_Y), it now points to pos + delta, so
that additional room needs to be taken into account for the check.
This means that i) both tests here need to be adjusted into pos + delta,
and ii) for the second condition, the test needs to be <= as pos
itself can be a target in the backjump, too.

Fixes: 9bac3d6d548e ("bpf: allow extended BPF programs access skb fields")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
8 years agoMerge branch 'for-4.6/drivers' into for-next
Jens Axboe [Wed, 10 Feb 2016 21:22:49 +0000 (14:22 -0700)]
Merge branch 'for-4.6/drivers' into for-next

8 years agonvme: split pci module out of core module
Ming Lin [Wed, 10 Feb 2016 18:03:32 +0000 (10:03 -0800)]
nvme: split pci module out of core module

NVMe over Fabrics drivers are going to reuse the core,
so splits nvme.ko into 2 modules:

nvme-core.ko: the core part
nvme.ko: the PCI driver

Export symbols from nvme-core.ko.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ming Lin <ming.l@ssi.samsung.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
8 years agonvme: split dev_list_lock
Ming Lin [Wed, 10 Feb 2016 18:03:31 +0000 (10:03 -0800)]
nvme: split dev_list_lock

Split dev_list_lock into one in the core and one in the PCI driver.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Ming Lin <ming.l@ssi.samsung.com>
Signed-off-by: Jens Axboe <axboe@fb.com>