Thread (18 messages) flat view 18 messages, 4 authors, 2013-01-14

Re: [RFC PATCH v8 0/5] IPC: checkpoint/restore in userspace enhancements

From: Sasha Levin <hidden>
Date: 2013-01-14 06:37:15
Also in: lkml

On Wed, Jan 9, 2013 at 3:24 AM, Stanislav Kinsbursky
[off-list ref] wrote:
22.12.2012 19:43, Sasha Levin пишет:
quoted
On 12/21/2012 04:57 PM, Sasha Levin wrote:
quoted
On 12/21/2012 03:46 PM, Stanislav Kinsbursky wrote:
quoted
21.12.2012 00:47, Andrew Morton пишет:
quoted
On Thu, 20 Dec 2012 08:06:32 +0400
Stanislav Kinsbursky[off-list ref]  wrote:
quoted
19.12.2012 00:36, Andrew Morton __________:
quoted
On Wed, 24 Oct 2012 19:34:51 +0400
Stanislav Kinsbursky[off-list ref]  wrote:
quoted
This respin of the patch set was significantly reworked. Most part
of new API
was replaced by sysctls (by one per messages, semaphores and shared
memory),
allowing to preset desired id for next new IPC object.

This patch set is aimed to provide additional functionality for all
IPC
objects, which is required for migration of these objects by
user-space
checkpoint/restore utils (CRIU).

The main problem here was impossibility to set up object id. This
patch set
solves the problem by adding new sysctls for preset of desired id
for new IPC
object.

Another problem was to peek messages from queues without deleting
them.
This was achived by introducing of new MSG_COPY flag for
sys_msgrcv(). If
MSG_COPY flag is set, then msgtyp is interpreted as message number.
According to my extensive records, Sasha hit a bug in
ipc-message-queue-copy-feature-introduced.patch and Fengguang found a
bug in

ipc-message-queue-copy-feature-introduced-cleanup-do_msgrcv-aroung-msg_copy-feature.patch

It's not obvious (to me) that these things have been identified and
fixed.  What's the status, please?
Hello, Andrew.
Fengguang's issue was solved by "ipc: simplify message copying" I sent
you.
But I can't find Sasha's issue. As I remember, there was some problem
in
early
version of the patch set. But I believe its fixed now.
http://lkml.indiana.edu/hypermail/linux/kernel/1210.3/01710.html

Subject: "ipc, msgqueue: NULL ptr deref in msgrcv"

Ah, yes. Thanks.
Hi found it in initial version of code, which was significantly changed
(or cleaned and simplified) by further patch series.
And I cant find out, how this can happen, because this patch he bisect
to do not modify the queue itself, while he found the
problem in testmsg.

I actually can't reproduce it on the latest -next.

I was reverting the IPC changes in the past couple of weeks so that I
could test the
rest of the IPC code with the fuzzer, and when I added them back in again
I can't
reproduce the issue I've reported earlier.

We can probably figure out where it got fixed by bisecting between -next
trees if anyone
is interested in that.

Ignore that. It just took more fuzzing to stumble on it again:
Hello, Sasha!
Thanks!
But I still can't understand, how this can happen... And I can't reproduce.
Could you specify your load? I.e. how do you stumble on this panic?
Looks like you don't use new "copy" feature.
I just fuzz with trinity
(http://git.codemonkey.org.uk/?p=trinity.git;a=tree) inside a pretty
basic KVM guest.


Thanks,
Sasha
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help