From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752727Ab2GZSFI (ORCPT ); Thu, 26 Jul 2012 14:05:08 -0400 Received: from mx1.redhat.com ([209.132.183.28]:13461 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752269Ab2GZSFF (ORCPT ); Thu, 26 Jul 2012 14:05:05 -0400 Message-ID: <501186C4.5030106@redhat.com> Date: Thu, 26 Jul 2012 14:04:52 -0400 From: Larry Woodman Reply-To: lwoodman@redhat.com User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101208 Red Hat/3.1.7-3.el6_0 Thunderbird/3.1.7 MIME-Version: 1.0 To: Rik van Riel CC: Hugh Dickins , Mel Gorman , Michal Hocko , Linux-MM , David Gibson , Ken Chen , Cong Wang , LKML Subject: Re: [PATCH -alternative] mm: hugetlbfs: Close race during teardown of hugetlbfs shared page tables V2 (resend) References: <20120720134937.GG9222@suse.de> <20120720141108.GH9222@suse.de> <20120720143635.GE12434@tiehlicka.suse.cz> <20120720145121.GJ9222@suse.de> <50118182.8030308@redhat.com> In-Reply-To: <50118182.8030308@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 07/26/2012 01:42 PM, Rik van Riel wrote: > On 07/23/2012 12:04 AM, Hugh Dickins wrote: > >> Please don't be upset if I say that I don't like either of your patches. >> Mainly for obvious reasons - I don't like Mel's because anything with >> trylock retries and nested spinlocks worries me before I can even start >> to think about it; and I don't like Michal's for the same reason as Mel, >> that it spreads more change around in common paths than we would like. > > I have a naive question. > > In huge_pmd_share, we protect ourselves by taking > the mapping->i_mmap_mutex. > > Is there any reason we could not take the i_mmap_mutex > in the huge_pmd_unshare path? I think it is already taken on every path into huge_pmd_unshare(). Larry > > I see that hugetlb_change_protection already takes that > lock. Is there something preventing __unmap_hugepage_range > from also taking mapping->i_mmap_mutex? > > That way the sharing and the unsharing code are > protected by the same, per shm segment, lock.