Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1170315 > unrolled thread

vdso && f_op->mremap (Was: special_mapping_fault() is broken)

Started byOleg Nesterov <oleg@redhat.com>
First post2015-06-23 02:50 +0200
Last post2015-06-23 03:30 +0200
Articles 3 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  vdso && f_op->mremap (Was: special_mapping_fault() is broken) Oleg Nesterov <oleg@redhat.com> - 2015-06-23 02:50 +0200
    Re: vdso && f_op->mremap (Was: special_mapping_fault() is broken) Linus Torvalds <torvalds@linux-foundation.org> - 2015-06-23 03:20 +0200
    Re: vdso && f_op->mremap (Was: special_mapping_fault() is broken) Andy Lutomirski <luto@amacapital.net> - 2015-06-23 03:30 +0200

#1170315 — vdso && f_op->mremap (Was: special_mapping_fault() is broken)

FromOleg Nesterov <oleg@redhat.com>
Date2015-06-23 02:50 +0200
Subjectvdso && f_op->mremap (Was: special_mapping_fault() is broken)
Message-ID<pEkzw-3sg-7@gated-at.bofh.it>
On 06/21, Oleg Nesterov wrote:
>
> Forgot to add Andy...

Add Pavel ;)

I never understood why ->mremap() lives in file_operations, not in
vm_operations_struct. To me vma->vm_file->f_op in move_vma() just
looks strange, vma->vm_ops->mremap(new_vma) looks "obviously better".

And afaics more useful. CRIU remaps vdso, but this does not update
mm->context.vdso. OK, probably this does not matter currently, CRIU
can't c/r the compat tasks, and 64-bit apps do not use context.vdso.
Afaics. Still, I think we might want to have special_mapping_remap()
and we can't do this because ->vm_file == NULL.

And perhaps other architectures can depend on the "correct" value
in >context.vdso more then x86, I dunno...

In short. Shouldn't we move ->mremap() to vm_operations_struct before
it has another user? We need to fix aio.c, but this is trivial.

No?

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1170328

FromLinus Torvalds <torvalds@linux-foundation.org>
Date2015-06-23 03:20 +0200
Message-ID<pEl2y-4g2-5@gated-at.bofh.it>
In reply to#1170315
On Mon, Jun 22, 2015 at 5:47 PM, Oleg Nesterov <oleg@redhat.com> wrote:
>
> In short. Shouldn't we move ->mremap() to vm_operations_struct before
> it has another user? We need to fix aio.c, but this is trivial.
>
> No?

Sounds like the right thing to do, but maybe there's some reason I
miss that it's the way it is..

            Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1170330

FromAndy Lutomirski <luto@amacapital.net>
Date2015-06-23 03:30 +0200
Message-ID<pElce-4sd-5@gated-at.bofh.it>
In reply to#1170315
On Mon, Jun 22, 2015 at 5:47 PM, Oleg Nesterov <oleg@redhat.com> wrote:
> On 06/21, Oleg Nesterov wrote:
>>
>> Forgot to add Andy...
>
> Add Pavel ;)
>
> I never understood why ->mremap() lives in file_operations, not in
> vm_operations_struct. To me vma->vm_file->f_op in move_vma() just
> looks strange, vma->vm_ops->mremap(new_vma) looks "obviously better".
>
> And afaics more useful. CRIU remaps vdso, but this does not update
> mm->context.vdso. OK, probably this does not matter currently, CRIU
> can't c/r the compat tasks, and 64-bit apps do not use context.vdso.
> Afaics. Still, I think we might want to have special_mapping_remap()
> and we can't do this because ->vm_file == NULL.

I would like this.  Then I could clean up and resubmit my patch to
keep context.vdso up to date.

Oleg, can you let me know what patch, if any, I should be reviewing?

--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web