Re: [RFC 1/3] x86/vdso: create vdso file, use it for mapping

From: Dmitry Safonov
Date: Mon Aug 29 2016 - 06:08:13 EST


On 08/29/2016 12:28 PM, Andy Lutomirski wrote:
On Thu, Aug 25, 2016 at 8:21 AM, Dmitry Safonov <dsafonov@xxxxxxxxxxxxx> wrote:
I added here a new in-kernel fs with ramfs-like options.
Created vdso file in this fs (yet for testing, only 64-bit vdso).
Mapped this file to process's mm on setup_additional_pages.
Just for testing purpose it's done only for specific UID.

I'm wondering whether all this code could be easily moved into the
core special mapping helpers so that all special mappings get the same
benefit. We could embed a struct file * (or struct inode or whatever)
in special_mapping if needed.

Hmm, yes, I guess. The only thing -- we'll still need per-arch changes
to initialize those files on booting. But that looks like the proper
generic place to move this code.

Also, could this be simplified to use anon_inode?

(I'm not a VFS expert at all, so I could be way off base.)

Well, I'll try to do the second version with anon_inode.

Thanks,
Dmitry