[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <85e83754-e25a-b9b3-cc51-44b61f2dcaa8@virtuozzo.com>
Date: Wed, 10 Aug 2016 13:49:18 +0300
From: Dmitry Safonov <dsafonov@...tuozzo.com>
To: Andy Lutomirski <luto@...capital.net>
CC: Oleg Nesterov <oleg@...hat.com>, Michal Hocko <mhocko@...e.com>,
"Vladimir Davydov" <vdavydov@...tuozzo.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Dmitry Safonov <0x7f454c46@...il.com>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
Ingo Molnar <mingo@...hat.com>,
Cyrill Gorcunov <gorcunov@...nvz.org>, <xemul@...tuozzo.com>,
Andy Lutomirski <luto@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
"H. Peter Anvin" <hpa@...or.com>, X86 ML <x86@...nel.org>
Subject: Re: [PATCHv2 3/6] x86/arch_prctl/vdso: add ARCH_MAP_VDSO_*
On 08/10/2016 11:35 AM, Andy Lutomirski wrote:
> On Tue, Aug 2, 2016 at 3:59 AM, Dmitry Safonov <dsafonov@...tuozzo.com> wrote:
>> On 07/12/2016 05:14 PM, Oleg Nesterov wrote:
>>>
>>> On 07/11, Andy Lutomirski wrote:
>>>>
>>>> I'm starting to wonder if we should finally suck it up and give
>>>> special mappings a non-NULL vm_file so we can track them properly.
>>>> Oleg, weren't you thinking of doing that for some other reason?
>>>
>>>
>>> Yes, uprobes. Currently we can't probe vdso page(s).
>>
>>
>> So, to make sure, that I've understood correctly, I need to:
>> o add vm_file to vdso/vvar vmas, __install_special_mapping will init
>> them;
>> o place array pages[] inside f_mapping;
>> o create f_inode for each file -- for this we need some mount point, so
>> I'll create something like vdsofs, register this filesystem and mount
>> it in initcall (or like do_basic_setup - as it's done by shmem, i.e).
>>
>> Is this the idea, or I got it wrong?
>>
>> And maybe the idea is to create fake vm_file for just reference
>> counting, but do not treat/init it like file with inode, etc?
>> So with fake file I can also check if vdso is mapped already, but
>> I'm sure the fake file will not help Oleg with uprobes.
>
> This would work, but it might be complicated. I'm not an expert at mm
> internals.
Ok, thanks on answer!
I'll try to prepare patches in near days -- they will help to track
vdso and for uprobes. If this will become too complex, I'll just
iterate over vmas.
>
> Another approach would be to just iterate over all vmas and look for
> old copies of the special mapping.
Thanks,
Dmitry
Powered by blists - more mailing lists