Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp3132542ybb; Mon, 6 Apr 2020 02:47:10 -0700 (PDT) X-Google-Smtp-Source: APiQypLNrzYyf7Wp/8hoH0E55oQ0wHMrpPqwUbZtN2j5D0GHUQ/zNhLzguOICqvh9BpJFiyL+QGF X-Received: by 2002:a4a:9881:: with SMTP id a1mr16810611ooj.75.1586166430019; Mon, 06 Apr 2020 02:47:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586166430; cv=none; d=google.com; s=arc-20160816; b=xtBHMH5T9dPOfyg3BPH2TSM0yxSGY+Mj3FFtijWkare9wgibDcTjysPu1ydcLw5pKd cWfqFVEF6xdKNUf0XGRbLCTbuSJwAIz9Me4tGevdn7fRAfP6woR2L/A42EB4PBMNFuhu KUfswX45J5WOu1db1v+evPnQN0Tbr1aBz1epOG48TW12bGR1AqwIqdykMwtg0KQ1jk4b xkpHag8oESog+4Lq23fD+7i+2xyH9k0J9+CbbMV6tgBhOqvWQWkyNfLXLgrdmKSTIRDj 6TDoiXrcjgnj1yv5cSJ3KyPFKxq1UpjZSHUxWl/qfgITj7LbbjfFHsSpq9Z5FDVcRopi 4sbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date:from :references:cc:to:subject; bh=rSer9V4W9nfy0SEiqFvaXDhQMWT5WFkOxXifSBW/tsM=; b=qCAL0ss33v4fdTL0jQB+TNHJEMFKpDuo0sIRqhj3FSV2rAjxbJKd+lETd6HOb5Em/n CELdenCHLyODMs4PBp+apV+C4fBbNt03hn149JioFCrV/dZQJFmpVt5y9iMfTyh4jpw0 ZBZT6mGIyJ9eAXfuU1l3NcGIcF44d1xoF/3FZlRR78YzK75n8UMxb51o4yATd5j3WtV/ g5NCnEr2Jyi6KFsF6Ef5e+uiZ/7ud6JuJXBYA3/UwEgHkaZknaSnFi/ns6ZubFgv5u7f 7PkdjxtT8dEIorZuRHMpJVdrgeUwfj62QmBVLdAHMmqaYNQ9PzTwZo4k2sDABkxkJbE0 tQrA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i9si8003334otk.101.2020.04.06.02.46.58; Mon, 06 Apr 2020 02:47:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726825AbgDFJqh (ORCPT + 99 others); Mon, 6 Apr 2020 05:46:37 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:35203 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726721AbgDFJqh (ORCPT ); Mon, 6 Apr 2020 05:46:37 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 0369X42t012565 for ; Mon, 6 Apr 2020 05:46:35 -0400 Received: from e06smtp01.uk.ibm.com (e06smtp01.uk.ibm.com [195.75.94.97]) by mx0a-001b2d01.pphosted.com with ESMTP id 306pcycwh3-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Mon, 06 Apr 2020 05:46:35 -0400 Received: from localhost by e06smtp01.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 6 Apr 2020 10:46:12 +0100 Received: from b06cxnps3074.portsmouth.uk.ibm.com (9.149.109.194) by e06smtp01.uk.ibm.com (192.168.101.131) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Mon, 6 Apr 2020 10:46:08 +0100 Received: from b06wcsmtp001.portsmouth.uk.ibm.com (b06wcsmtp001.portsmouth.uk.ibm.com [9.149.105.160]) by b06cxnps3074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 0369kSTs60817466 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 6 Apr 2020 09:46:28 GMT Received: from b06wcsmtp001.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4869BA405F; Mon, 6 Apr 2020 09:46:28 +0000 (GMT) Received: from b06wcsmtp001.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A009EA405C; Mon, 6 Apr 2020 09:46:27 +0000 (GMT) Received: from pomme.local (unknown [9.145.52.152]) by b06wcsmtp001.portsmouth.uk.ibm.com (Postfix) with ESMTP; Mon, 6 Apr 2020 09:46:27 +0000 (GMT) Subject: Re: [PATCH 7/8] mmap locking API: add MMAP_LOCK_INITIALIZER To: Michel Lespinasse , Andrew Morton , linux-mm Cc: LKML , Peter Zijlstra , Vlastimil Babka , Matthew Wilcox , Liam Howlett , Jerome Glisse , Davidlohr Bueso , David Rientjes , Hugh Dickins , Ying Han References: <20200326070236.235835-1-walken@google.com> <20200326070236.235835-8-walken@google.com> From: Laurent Dufour Date: Mon, 6 Apr 2020 11:46:27 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 In-Reply-To: <20200326070236.235835-8-walken@google.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: fr Content-Transfer-Encoding: 8bit X-TM-AS-GCONF: 00 x-cbid: 20040609-4275-0000-0000-000003BA9033 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 20040609-4276-0000-0000-000038CFED5A Message-Id: <1c463464-1d72-287e-e785-f077a95ccf20@linux.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138,18.0.676 definitions=2020-04-06_05:2020-04-03,2020-04-06 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 lowpriorityscore=0 adultscore=0 malwarescore=0 clxscore=1015 impostorscore=0 suspectscore=0 phishscore=0 mlxscore=0 spamscore=0 mlxlogscore=999 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004060083 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Le 26/03/2020 à 08:02, Michel Lespinasse a écrit : > Define a new initializer for the mmap locking api. > Initially this just evaluates to __RWSEM_INITIALIZER as the API > is defined as wrappers around rwsem. I can't see the benefit of this change. The overall idea is to hide the mmap_sem name. Here the macro MMAP_LOCK_INITIALIZER() doesn't hide the name. I think we can keep that in place until the real change of the mmap_sem to something else. Cheers, Laurent. > > Signed-off-by: Michel Lespinasse > --- > arch/x86/kernel/tboot.c | 2 +- > drivers/firmware/efi/efi.c | 2 +- > include/linux/mmap_lock.h | 2 ++ > mm/init-mm.c | 2 +- > 4 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/kernel/tboot.c b/arch/x86/kernel/tboot.c > index b89f6ac6a0c0..4b79335624b1 100644 > --- a/arch/x86/kernel/tboot.c > +++ b/arch/x86/kernel/tboot.c > @@ -90,7 +90,7 @@ static struct mm_struct tboot_mm = { > .pgd = swapper_pg_dir, > .mm_users = ATOMIC_INIT(2), > .mm_count = ATOMIC_INIT(1), > - .mmap_sem = __RWSEM_INITIALIZER(init_mm.mmap_sem), > + .mmap_sem = MMAP_LOCK_INITIALIZER(init_mm.mmap_sem), > .page_table_lock = __SPIN_LOCK_UNLOCKED(init_mm.page_table_lock), > .mmlist = LIST_HEAD_INIT(init_mm.mmlist), > }; > diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c > index 21ea99f65113..5bdfe698cd7f 100644 > --- a/drivers/firmware/efi/efi.c > +++ b/drivers/firmware/efi/efi.c > @@ -60,7 +60,7 @@ struct mm_struct efi_mm = { > .mm_rb = RB_ROOT, > .mm_users = ATOMIC_INIT(2), > .mm_count = ATOMIC_INIT(1), > - .mmap_sem = __RWSEM_INITIALIZER(efi_mm.mmap_sem), > + .mmap_sem = MMAP_LOCK_INITIALIZER(efi_mm.mmap_sem), > .page_table_lock = __SPIN_LOCK_UNLOCKED(efi_mm.page_table_lock), > .mmlist = LIST_HEAD_INIT(efi_mm.mmlist), > .cpu_bitmap = { [BITS_TO_LONGS(NR_CPUS)] = 0}, > diff --git a/include/linux/mmap_lock.h b/include/linux/mmap_lock.h > index 00d6cc02581d..7474b15bba38 100644 > --- a/include/linux/mmap_lock.h > +++ b/include/linux/mmap_lock.h > @@ -1,6 +1,8 @@ > #ifndef _LINUX_MMAP_LOCK_H > #define _LINUX_MMAP_LOCK_H > > +#define MMAP_LOCK_INITIALIZER(name) __RWSEM_INITIALIZER(name) > + > static inline void mmap_init_lock(struct mm_struct *mm) > { > init_rwsem(&mm->mmap_sem); > diff --git a/mm/init-mm.c b/mm/init-mm.c > index 19603302a77f..3c128bd6a30c 100644 > --- a/mm/init-mm.c > +++ b/mm/init-mm.c > @@ -31,7 +31,7 @@ struct mm_struct init_mm = { > .pgd = swapper_pg_dir, > .mm_users = ATOMIC_INIT(2), > .mm_count = ATOMIC_INIT(1), > - .mmap_sem = __RWSEM_INITIALIZER(init_mm.mmap_sem), > + .mmap_sem = MMAP_LOCK_INITIALIZER(init_mm.mmap_sem), > .page_table_lock = __SPIN_LOCK_UNLOCKED(init_mm.page_table_lock), > .arg_lock = __SPIN_LOCK_UNLOCKED(init_mm.arg_lock), > .mmlist = LIST_HEAD_INIT(init_mm.mmlist), >