Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932216AbbFWAtG (ORCPT ); Mon, 22 Jun 2015 20:49:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:37634 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751309AbbFWAs7 (ORCPT ); Mon, 22 Jun 2015 20:48:59 -0400 Date: Tue, 23 Jun 2015 02:47:44 +0200 From: Oleg Nesterov To: Andrew Morton Cc: Al Viro , Benjamin LaHaise , Hugh Dickins , Jeff Moyer , Kirill Shutemov , Linus Torvalds , linux-kernel@vger.kernel.org, Andy Lutomirski , Pavel Emelyanov Subject: vdso && f_op->mremap (Was: special_mapping_fault() is broken) Message-ID: <20150623004744.GA11212@redhat.com> References: <20150621210725.GA18220@redhat.com> <20150621211951.GA18593@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150621211951.GA18593@redhat.com> User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 982 Lines: 29 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/