[CRIU] [PATCH] zdtm.py: check permissions for memory mappings
Pavel Emelyanov
xemul at virtuozzo.com
Fri Jul 15 12:03:08 PDT 2016
On 07/15/2016 09:47 PM, Andrew Vagin wrote:
> On Thu, Jul 14, 2016 at 02:02:55PM +0300, Pavel Emelyanov wrote:
>> On 07/13/2016 08:19 PM, Andrew Vagin wrote:
>>> On Wed, Jul 13, 2016 at 03:33:19PM +0300, Pavel Emelyanov wrote:
>>>> On 06/27/2016 05:52 PM, Andrey Vagin wrote:
>>>>> From: Andrew Vagin <avagin at virtuozzo.com>
>>>>
>>>> Andrey, will current criu-dev pass with this patch? If not what patches
>>>> do we need to make it passing?
>>>
>>> It was attempt to wirte a test for Stas' patch:
>>> proc_parse: fix vma file open mode recognition
>>>
>>> But it doesn't catch the origin problem and trigger another one:
>>> https://github.com/xemul/criu/issues/180
>>
>> OK, so what do we do with __this__ patch:
>>
>> a) apply one and go on
>> b) apply one and have a bunch of failures in jenkins
>> c) drop one and wait for better version
>
> We will fix the issue and commit this patch.
OK. What are the known issues?
>>
>> ?
>>
>>>>
>>>>> Signed-off-by: Andrew Vagin <avagin at virtuozzo.com>
>>>>> ---
>>>>> test/zdtm.py | 7 ++++---
>>>>> 1 file changed, 4 insertions(+), 3 deletions(-)
>>>>>
>>>>> diff --git a/test/zdtm.py b/test/zdtm.py
>>>>> index 9454399..7aed548 100755
>>>>> --- a/test/zdtm.py
>>>>> +++ b/test/zdtm.py
>>>>> @@ -917,16 +917,17 @@ def get_visible_state(test):
>>>>> for pid in pids:
>>>>> files[pid] = set(os.listdir("/proc/%s/root/proc/%s/fd" % (test.getpid(), pid)))
>>>>>
>>>>> - cmaps = [[0, 0]]
>>>>> + cmaps = [[0, 0, ""]]
>>>>> last = 0
>>>>> for mp in open("/proc/%s/root/proc/%s/maps" % (test.getpid(), pid)):
>>>>> m = map(lambda x: int('0x' + x, 0), mp.split()[0].split('-'))
>>>>> - if cmaps[last][1] == m[0]:
>>>>> + m.append(mp.split()[1])
>>>>> + if cmaps[last][1] == m[0] and cmaps[last][2] == m[2]:
>>>>> cmaps[last][1] = m[1]
>>>>> else:
>>>>> cmaps.append(m)
>>>>> last += 1
>>>>> - maps[pid] = set(map(lambda x: '%x-%x' % (x[0], x[1]), cmaps))
>>>>> + maps[pid] = set(map(lambda x: '%x-%x %s' % (x[0], x[1], x[2]), cmaps))
>>>>>
>>>>> cmounts = []
>>>>> try:
>>>>>
>>>>
>>> .
>>>
>>
> .
>
More information about the CRIU
mailing list