<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/staging, branch v4.6</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.6</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.6'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2016-04-30T00:07:54Z</updated>
<entry>
<title>Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma</title>
<updated>2016-04-30T00:07:54Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2016-04-30T00:07:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=925d96a0c9af72e419dbca1db325e09d78f31502'/>
<id>urn:sha1:925d96a0c9af72e419dbca1db325e09d78f31502</id>
<content type='text'>
Pull rdma fixes from Doug Ledford:
 "Final set of -rc fixes for 4.6.

  I've collected up a number of patches that are all pretty small with
  the exception of only a couple.  The hfi1 driver has a number of
  important patches, and it is what really drives the line count of this
  pull request up.  These are all small and I've got this kernel built
  and running in the test lab (I have most of the hardware, I think nes
  is the only thing in this patch set that I can't say I've personally
  tested and have up and running).

  Summary:

   - A number of collected fixes for oopses, memory corruptions,
     deadlocks, etc.  All of these fixes are small (many only 5-10
     lines), obvious, and tested.

   - Fix for the security issue related to the use of write for
     bi-directional communications"

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
  RDMA/nes: don't leak skb if carrier down
  IB/security: Restrict use of the write() interface
  IB/hfi1: Use kernel default llseek for ui device
  IB/hfi1: Don't attempt to free resources if initialization failed
  IB/hfi1: Fix missing lock/unlock in verbs drain callback
  IB/rdmavt: Fix send scheduling
  IB/hfi1: Prevent unpinning of wrong pages
  IB/hfi1: Fix deadlock caused by locking with wrong scope
  IB/hfi1: Prevent NULL pointer deferences in caching code
  MAINTAINERS: Update iser/isert maintainer contact info
  IB/mlx5: Expose correct max_sge_rd limit
  RDMA/iw_cxgb4: Fix bar2 virt addr calculation for T4 chips
  iw_cxgb4: handle draining an idle qp
  iw_cxgb3: initialize ibdev.iwcm-&gt;ifname for port mapping
  iw_cxgb4: initialize ibdev.iwcm-&gt;ifname for port mapping
  IB/core: Don't drain non-existent rq queue-pair
  IB/core: Fix oops in ib_cache_gid_set_default_gid
</content>
</entry>
<entry>
<title>Merge tag 'media/v4.6-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media</title>
<updated>2016-04-29T02:44:47Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2016-04-29T02:44:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ba14e961b4fc0b0efcb1b2af7aab605bfce55fb8'/>
<id>urn:sha1:ba14e961b4fc0b0efcb1b2af7aab605bfce55fb8</id>
<content type='text'>
Pull media fixes from Mauro Carvalho Chehab:
 "Some regression fixes:

   - videobuf2 core: avoid the risk of going past buffer on multi-planes
     and fix rw mode

   - fix support for 4K formats at V4L2 core

   - fix a trouble at davinci_fpe, caused by a bad patch

   - usbvision: revert a patch with a partial fixup.  The fixup patch
     was merged already, and this one has some issues"

* tag 'media/v4.6-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
  [media] vb2-memops: Fix over allocation of frame vectors
  [media] media: vb2: Fix regression on poll() for RW mode
  [media] v4l2-dv-timings.h: fix polarity for 4k formats
  [media] davinci_vpfe: Revert "staging: media: davinci_vpfe: remove,unnecessary ret variable"
  [media] usbvision: revert commit 588afcc1
  [media] videobuf2-v4l2: Verify planes array in buffer dequeueing
  [media] videobuf2-core: Check user space planes array in dqbuf
</content>
</entry>
<entry>
<title>IB/security: Restrict use of the write() interface</title>
<updated>2016-04-28T16:03:16Z</updated>
<author>
<name>Jason Gunthorpe</name>
<email>jgunthorpe@obsidianresearch.com</email>
</author>
<published>2016-04-11T01:13:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e6bd18f57aad1a2d1ef40e646d03ed0f2515c9e3'/>
<id>urn:sha1:e6bd18f57aad1a2d1ef40e646d03ed0f2515c9e3</id>
<content type='text'>
The drivers/infiniband stack uses write() as a replacement for
bi-directional ioctl().  This is not safe. There are ways to
trigger write calls that result in the return structure that
is normally written to user space being shunted off to user
specified kernel memory instead.

For the immediate repair, detect and deny suspicious accesses to
the write API.

For long term, update the user space libraries and the kernel API
to something that doesn't present the same security vulnerabilities
(likely a structured ioctl() interface).

The impacted uAPI interfaces are generally only available if
hardware from drivers/infiniband is installed in the system.

Reported-by: Jann Horn &lt;jann@thejh.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Jason Gunthorpe &lt;jgunthorpe@obsidianresearch.com&gt;
[ Expanded check to all known write() entry points ]
Cc: stable@vger.kernel.org
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/hfi1: Use kernel default llseek for ui device</title>
<updated>2016-04-28T16:00:39Z</updated>
<author>
<name>Dean Luick</name>
<email>dean.luick@intel.com</email>
</author>
<published>2016-04-22T18:17:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7723d8c2445c4dfa91f8df42703b56f8ade59af7'/>
<id>urn:sha1:7723d8c2445c4dfa91f8df42703b56f8ade59af7</id>
<content type='text'>
The ui device llseek had a mistake with SEEK_END and did
not fully follow seek semantics.  Correct all this by
using a kernel supplied function for fixed size devices.

Cc: Al Viro &lt;viro@ZenIV.linux.org.uk&gt;
Reviewed-by: Dennis Dalessandro &lt;dennis.dalessandro@intel.com&gt;
Signed-off-by: Dean Luick &lt;dean.luick@intel.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/hfi1: Don't attempt to free resources if initialization failed</title>
<updated>2016-04-28T16:00:39Z</updated>
<author>
<name>Mitko Haralanov</name>
<email>mitko.haralanov@intel.com</email>
</author>
<published>2016-04-20T13:05:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=94158442eb0c66bbb0b733999e108fa26a7673ef'/>
<id>urn:sha1:94158442eb0c66bbb0b733999e108fa26a7673ef</id>
<content type='text'>
Attempting to free resources which have not been allocated and
initialized properly led to the following kernel backtrace:

    BUG: unable to handle kernel NULL pointer dereference at           (null)
    IP: [&lt;ffffffffa09658fe&gt;] unlock_exp_tids.isra.8+0x2e/0x120 [hfi1]
    PGD 852a43067 PUD 85d4a6067 PMD 0
    Oops: 0000 [#1] SMP
    CPU: 0 PID: 2831 Comm: osu_bw Tainted: G          IO 3.12.18-wfr+ #1
    task: ffff88085b15b540 ti: ffff8808588fe000 task.ti: ffff8808588fe000
    RIP: 0010:[&lt;ffffffffa09658fe&gt;]  [&lt;ffffffffa09658fe&gt;] unlock_exp_tids.isra.8+0x2e/0x120 [hfi1]
    RSP: 0018:ffff8808588ffde0  EFLAGS: 00010282
    RAX: 0000000000000000 RBX: ffff880858a31800 RCX: 0000000000000000
    RDX: ffff88085d971bc0 RSI: ffff880858a318f8 RDI: ffff880858a318c0
    RBP: ffff8808588ffe20 R08: 0000000000000000 R09: 0000000000000000
    R10: ffff88087ffd6f40 R11: 0000000001100348 R12: ffff880852900000
    R13: ffff880858a318c0 R14: 0000000000000000 R15: ffff88085d971be8
    FS:  00007f4674e83740(0000) GS:ffff88087f400000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 0000000000000000 CR3: 000000085c377000 CR4: 00000000001407f0
    Stack:
     ffffffffa0941a71 ffff880858a318f8 ffff88085d971bc0 ffff880858a31800
     ffff880852900000 ffff880858a31800 00000000003ffff7 ffff88085d971bc0
     ffff8808588ffe60 ffffffffa09663fc ffff8808588ffe60 ffff880858a31800
    Call Trace:
     [&lt;ffffffffa0941a71&gt;] ? find_mmu_handler+0x51/0x70 [hfi1]
     [&lt;ffffffffa09663fc&gt;] hfi1_user_exp_rcv_free+0x6c/0x120 [hfi1]
     [&lt;ffffffffa0932809&gt;] hfi1_file_close+0x1a9/0x340 [hfi1]
     [&lt;ffffffff8116c189&gt;] __fput+0xe9/0x270
     [&lt;ffffffff8116c35e&gt;] ____fput+0xe/0x10
     [&lt;ffffffff81065707&gt;] task_work_run+0xa7/0xe0
     [&lt;ffffffff81002969&gt;] do_notify_resume+0x59/0x80
     [&lt;ffffffff814ffc1a&gt;] int_signal+0x12/0x17

This commit re-arranges the context initialization code in a way that
would allow for context event flags to be used to determine whether
the context has been successfully initialized.

In turn, this can be used to skip the resource de-allocation if they
were never allocated in the first place.

Fixes: 3abb33ac6521 ("staging/hfi1: Add TID cache receive init and free funcs")
Reviewed-by: Dennis Dalessandro &lt;dennis.dalessandro@intel.com&gt;
Signed-off-by: Mitko Haralanov &lt;mitko.haralanov@intel.com&gt;
Reviewed-by: Leon Romanovsky &lt;leonro@mellanox.com.
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/hfi1: Fix missing lock/unlock in verbs drain callback</title>
<updated>2016-04-28T16:00:39Z</updated>
<author>
<name>Mike Marciniszyn</name>
<email>mike.marciniszyn@intel.com</email>
</author>
<published>2016-04-20T13:05:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b9b06cb6fedab10665a2d527464b45f332d17465'/>
<id>urn:sha1:b9b06cb6fedab10665a2d527464b45f332d17465</id>
<content type='text'>
The iowait_sdma_drained() callback lacked locking to
protect the qp s_flags field.

This causes the s_flags to be out of sync
on multiple CPUs, potentially corrupting the s_flags.

Fixes: a545f5308b6c ("staging/rdma/hfi: fix CQ completion order issue")
Reviewed-by: Sebastian Sanchez &lt;sebastian.sanchez@intel.com&gt;
Signed-off-by: Mike Marciniszyn &lt;mike.marciniszyn@intel.com&gt;
Reviewed-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/hfi1: Prevent unpinning of wrong pages</title>
<updated>2016-04-28T16:00:38Z</updated>
<author>
<name>Mitko Haralanov</name>
<email>mitko.haralanov@intel.com</email>
</author>
<published>2016-04-12T17:46:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=849e3e9398608c26a7c54bf9fbf3288f7ced6bfb'/>
<id>urn:sha1:849e3e9398608c26a7c54bf9fbf3288f7ced6bfb</id>
<content type='text'>
The routine used by the SDMA cache to handle already
cached nodes can extend an already existing node.

In its error handling code, the routine will unpin pages
when not all pages of the buffer extension were pinned.

There was a bug in that part of the routine, which would
mistakenly unpin pages from the original set rather than
the newly pinned pages.

This commit fixes that bug by offsetting the page array
to the proper place pointing at the beginning of the newly
pinned pages.

Reviewed-by: Dean Luick &lt;dean.luick@intel.com&gt;
Signed-off-by: Mitko Haralanov &lt;mitko.haralanov@intel.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/hfi1: Fix deadlock caused by locking with wrong scope</title>
<updated>2016-04-28T16:00:38Z</updated>
<author>
<name>Mitko Haralanov</name>
<email>mitko.haralanov@intel.com</email>
</author>
<published>2016-04-12T17:46:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=de82bdff62a9078a6e4f1452e2f2604686e51e49'/>
<id>urn:sha1:de82bdff62a9078a6e4f1452e2f2604686e51e49</id>
<content type='text'>
The locking around the interval RB tree is designed to prevent
access to the tree while it's being modified. The locking in its
current form is too overzealous, which is causing a deadlock in
certain cases with the following backtrace:

    Kernel panic - not syncing: Watchdog detected hard LOCKUP on cpu 0
    CPU: 0 PID: 5836 Comm: IMB-MPI1 Tainted: G           O 3.12.18-wfr+ #1
     0000000000000000 ffff88087f206c50 ffffffff814f1caa ffffffff817b53f0
     ffff88087f206cc8 ffffffff814ecd56 0000000000000010 ffff88087f206cd8
     ffff88087f206c78 0000000000000000 0000000000000000 0000000000001662
    Call Trace:
     &lt;NMI&gt;  [&lt;ffffffff814f1caa&gt;] dump_stack+0x45/0x56
     [&lt;ffffffff814ecd56&gt;] panic+0xc2/0x1cb
     [&lt;ffffffff810d4370&gt;] ? restart_watchdog_hrtimer+0x50/0x50
     [&lt;ffffffff810d4432&gt;] watchdog_overflow_callback+0xc2/0xd0
     [&lt;ffffffff81109b4e&gt;] __perf_event_overflow+0x8e/0x2b0
     [&lt;ffffffff8110a714&gt;] perf_event_overflow+0x14/0x20
     [&lt;ffffffff8101c906&gt;] intel_pmu_handle_irq+0x1b6/0x390
     [&lt;ffffffff814f927b&gt;] perf_event_nmi_handler+0x2b/0x50
     [&lt;ffffffff814f8ad8&gt;] nmi_handle.isra.3+0x88/0x180
     [&lt;ffffffff814f8d39&gt;] do_nmi+0x169/0x310
     [&lt;ffffffff814f8177&gt;] end_repeat_nmi+0x1e/0x2e
     [&lt;ffffffff81272600&gt;] ? unmap_single+0x30/0x30
     [&lt;ffffffff814f780d&gt;] ? _raw_spin_lock_irqsave+0x2d/0x40
     [&lt;ffffffff814f780d&gt;] ? _raw_spin_lock_irqsave+0x2d/0x40
     [&lt;ffffffff814f780d&gt;] ? _raw_spin_lock_irqsave+0x2d/0x40
     &lt;&lt;EOE&gt;&gt;  &lt;IRQ&gt;  [&lt;ffffffffa056c4a8&gt;] hfi1_mmu_rb_search+0x38/0x70 [hfi1]
     [&lt;ffffffffa05919cb&gt;] user_sdma_free_request+0xcb/0x120 [hfi1]
     [&lt;ffffffffa0593393&gt;] user_sdma_txreq_cb+0x263/0x350 [hfi1]
     [&lt;ffffffffa057fad7&gt;] ? sdma_txclean+0x27/0x1c0 [hfi1]
     [&lt;ffffffffa0593130&gt;] ? user_sdma_send_pkts+0x1710/0x1710 [hfi1]
     [&lt;ffffffffa057fdd6&gt;] sdma_make_progress+0x166/0x480 [hfi1]
     [&lt;ffffffff810762c9&gt;] ? ttwu_do_wakeup+0x19/0xd0
     [&lt;ffffffffa0581c7e&gt;] sdma_engine_interrupt+0x8e/0x100 [hfi1]
     [&lt;ffffffffa0546bdd&gt;] sdma_interrupt+0x5d/0xa0 [hfi1]
     [&lt;ffffffff81097e57&gt;] handle_irq_event_percpu+0x47/0x1d0
     [&lt;ffffffff81098017&gt;] handle_irq_event+0x37/0x60
     [&lt;ffffffff8109aa5f&gt;] handle_edge_irq+0x6f/0x120
     [&lt;ffffffff810044af&gt;] handle_irq+0xbf/0x150
     [&lt;ffffffff8104c9b7&gt;] ? irq_enter+0x17/0x80
     [&lt;ffffffff8150168d&gt;] do_IRQ+0x4d/0xc0
     [&lt;ffffffff814f7c6a&gt;] common_interrupt+0x6a/0x6a
     &lt;EOI&gt;  [&lt;ffffffff81073524&gt;] ? finish_task_switch+0x54/0xe0
     [&lt;ffffffff814f56c6&gt;] __schedule+0x3b6/0x7e0
     [&lt;ffffffff810763a6&gt;] __cond_resched+0x26/0x30
     [&lt;ffffffff814f5eda&gt;] _cond_resched+0x3a/0x50
     [&lt;ffffffff814f4f82&gt;] down_write+0x12/0x30
     [&lt;ffffffffa0591619&gt;] hfi1_release_user_pages+0x69/0x90 [hfi1]
     [&lt;ffffffffa059173a&gt;] sdma_rb_remove+0x9a/0xc0 [hfi1]
     [&lt;ffffffffa056c00d&gt;] __mmu_rb_remove.isra.5+0x5d/0x70 [hfi1]
     [&lt;ffffffffa056c536&gt;] hfi1_mmu_rb_remove+0x56/0x70 [hfi1]
     [&lt;ffffffffa059427b&gt;] hfi1_user_sdma_process_request+0x74b/0x1160 [hfi1]
     [&lt;ffffffffa055c763&gt;] hfi1_aio_write+0xc3/0x100 [hfi1]
     [&lt;ffffffff8116a14c&gt;] do_sync_readv_writev+0x4c/0x80
     [&lt;ffffffff8116b58b&gt;] do_readv_writev+0xbb/0x230
     [&lt;ffffffff811a9da1&gt;] ? fsnotify+0x241/0x320
     [&lt;ffffffff81073524&gt;] ? finish_task_switch+0x54/0xe0
     [&lt;ffffffff8116b795&gt;] vfs_writev+0x35/0x60
     [&lt;ffffffff8116b8c9&gt;] SyS_writev+0x49/0xc0
     [&lt;ffffffff810cd876&gt;] ? __audit_syscall_exit+0x1f6/0x2a0
     [&lt;ffffffff814ff992&gt;] system_call_fastpath+0x16/0x1b

As evident from the backtrace above, the process was being put to sleep
while holding the lock.

Limiting the scope of the lock only to the RB tree operation fixes the
above error allowing for proper locking and the process being put to
sleep when needed.

Reviewed-by: Dennis Dalessandro &lt;dennis.dalessandro@intel.com&gt;
Reviewed-by: Dean Luick &lt;dean.luick@intel.com&gt;
Signed-off-by: Mitko Haralanov &lt;mitko.haralanov@intel.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/hfi1: Prevent NULL pointer deferences in caching code</title>
<updated>2016-04-28T16:00:38Z</updated>
<author>
<name>Mitko Haralanov</name>
<email>mitko.haralanov@intel.com</email>
</author>
<published>2016-04-12T17:45:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f19bd643dbded8672bfeffe9e51322464e4a9239'/>
<id>urn:sha1:f19bd643dbded8672bfeffe9e51322464e4a9239</id>
<content type='text'>
There is a potential kernel crash when the MMU notifier calls the
invalidation routines in the hfi1 pinned page caching code for sdma.

The invalidation routine could call the remove callback
for the node, which in turn ends up dereferencing the
current task_struct to get a pointer to the mm_struct.
However, the mm_struct pointer could be NULL resulting in
the following backtrace:

    BUG: unable to handle kernel NULL pointer dereference at 00000000000000a8
    IP: [&lt;ffffffffa041f75a&gt;] sdma_rb_remove+0xaa/0x100 [hfi1]
    15
    task: ffff88085e66e080 ti: ffff88085c244000 task.ti: ffff88085c244000
    RIP: 0010:[&lt;ffffffffa041f75a&gt;]  [&lt;ffffffffa041f75a&gt;] sdma_rb_remove+0xaa/0x100 [hfi1]
    RSP: 0000:ffff88085c245878  EFLAGS: 00010002
    RAX: 0000000000000000 RBX: ffff88105b9bbd40 RCX: ffffea003931a830
    RDX: 0000000000000004 RSI: ffff88105754a9c0 RDI: ffff88105754a9c0
    RBP: ffff88085c245890 R08: ffff88105b9bbd70 R09: 00000000fffffffb
    R10: ffff88105b9bbd58 R11: 0000000000000013 R12: ffff88105754a9c0
    R13: 0000000000000001 R14: 0000000000000001 R15: ffff88105b9bbd40
    FS:  0000000000000000(0000) GS:ffff88107ef40000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 00000000000000a8 CR3: 0000000001a0b000 CR4: 00000000001407e0
    Stack:
     ffff88105b9bbd40 ffff88080ec481a8 ffff88080ec481b8 ffff88085c2458c0
     ffffffffa03fa00e ffff88080ec48190 ffff88080ed9cd00 0000000001024000
     0000000000000000 ffff88085c245920 ffffffffa03fa0e7 0000000000000282
    Call Trace:
     [&lt;ffffffffa03fa00e&gt;] __mmu_rb_remove.isra.5+0x5e/0x70 [hfi1]
     [&lt;ffffffffa03fa0e7&gt;] mmu_notifier_mem_invalidate+0xc7/0xf0 [hfi1]
     [&lt;ffffffffa03fa143&gt;] mmu_notifier_page+0x13/0x20 [hfi1]
     [&lt;ffffffff81156dd0&gt;] __mmu_notifier_invalidate_page+0x50/0x70
     [&lt;ffffffff81140bbb&gt;] try_to_unmap_one+0x20b/0x470
     [&lt;ffffffff81141ee7&gt;] try_to_unmap_anon+0xa7/0x120
     [&lt;ffffffff81141fad&gt;] try_to_unmap+0x4d/0x60
     [&lt;ffffffff8111fd7b&gt;] shrink_page_list+0x2eb/0x9d0
     [&lt;ffffffff81120ab3&gt;] shrink_inactive_list+0x243/0x490
     [&lt;ffffffff81121491&gt;] shrink_lruvec+0x4c1/0x640
     [&lt;ffffffff81121641&gt;] shrink_zone+0x31/0x100
     [&lt;ffffffff81121b0f&gt;] kswapd_shrink_zone.constprop.62+0xef/0x1c0
     [&lt;ffffffff811229e3&gt;] kswapd+0x403/0x7e0
     [&lt;ffffffff811225e0&gt;] ? shrink_all_memory+0xf0/0xf0
     [&lt;ffffffff81068ac0&gt;] kthread+0xc0/0xd0
     [&lt;ffffffff81068a00&gt;] ? insert_kthread_work+0x40/0x40
     [&lt;ffffffff814ff8ec&gt;] ret_from_fork+0x7c/0xb0
     [&lt;ffffffff81068a00&gt;] ? insert_kthread_work+0x40/0x40

To correct this, the mm_struct passed to us by the MMU notifier is
used (which is what should have been done to begin with). This avoids
the broken derefences and ensures that the correct mm_struct is used.

Reviewed-by: Dennis Dalessandro &lt;dennis.dalessandro@intel.com&gt;
Reviewed-by: Dean Luick &lt;dean.luick@intel.com&gt;
Signed-off-by: Mitko Haralanov &lt;mitko.haralanov@intel.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>[media] davinci_vpfe: Revert "staging: media: davinci_vpfe: remove,unnecessary ret variable"</title>
<updated>2016-04-20T19:00:59Z</updated>
<author>
<name>Hans Verkuil</name>
<email>hverkuil@xs4all.nl</email>
</author>
<published>2016-04-15T11:58:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8bbb6568428fa14c5bef120d443c20e0e7d52699'/>
<id>urn:sha1:8bbb6568428fa14c5bef120d443c20e0e7d52699</id>
<content type='text'>
This reverts commit afa5d19a2b5f ("staging: media: davinci_vpfe: remove
unnecessary ret variable").

This patch is completely bogus and messed up the code big time.

I'm not sure what was intended, but this isn't it.

Cc: Thaissa Falbo &lt;thaissa.falbo@gmail.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@osg.samsung.com&gt;
</content>
</entry>
</feed>
