Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp4611908imu; Tue, 8 Jan 2019 03:19:58 -0800 (PST) X-Google-Smtp-Source: ALg8bN5iLasM63TvhJ04giTyLr/jAuFhqDttR6CIIH/ngYk7Tbpn8eRJInuEdNq1shOxS9trZa0U X-Received: by 2002:a63:5ec6:: with SMTP id s189mr1090113pgb.357.1546946397993; Tue, 08 Jan 2019 03:19:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1546946397; cv=none; d=google.com; s=arc-20160816; b=V6/btj/AYASrce8xuQzY+5+v0feoB9frQjHn/e8NcRUeXG81xdPSGPc6MJKEYnpTlW YFeK8s9veoPBjbDrvezPnV8M61W/cbjlVjpy+IBfdQYfxfrAwUqYG1NZLKJtJL7WOWj7 zp5qV05CKUZ2Tk4zyzXRQ9/KpmSCWAh7uoeFaI9SHvOS+isi5N1j0GSFJjL+2oxGqBiD KCivnL5IgwjLmB0X+4aMJiJuUMMHEPiieS7njd+Jv67eOwxURZIsTnkAuXf1wRQVXbRv /2S+/QbCULv7XPzCJBvrg7iajeuuvKhgPQCoONomyVGPTGayDPomID71RPLsIB4rjAt3 lAkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:to:content-transfer-encoding:mime-version :message-id:date:subject:cc:from; bh=1e1MmHEozGCgkovm/IfknBU1K3QSJEw5Ou5BtIqrsFk=; b=LvufOz3PWYry3R9IaDEP5xtD4SH07s6caibqA/AOqH+fxd7uY4ixJJNN4fZ6nksrYX 8RXFqH6NnMmPdIQx1kuU6XhHdbys32O0QAE7as0zROZP4Si9Bk2EMlmwh1TiaosxPbJt 32zQFSO+ak6d0AHxO1yo1CHSoEnHYsVtWbYgDEi1gVDfd5MiOTbMjfN4r5b7+2wnG5wE lAJVJldzeboey0tX/rLivXFJ0Tq+vy5Xb+JcMmb5nau2pv74DS6f5qGwNYRz08rcIuny IljAsSFcg76Klr9ipPZBzHtwnyk/Frjq2BQhgi1zmobDSYcPSRAPdE+/1zeWAxvyNmyh YQZA== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d142si56494154pfd.93.2019.01.08.03.19.41; Tue, 08 Jan 2019 03:19:57 -0800 (PST) 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728236AbfAHLJ4 (ORCPT + 99 others); Tue, 8 Jan 2019 06:09:56 -0500 Received: from mx2.suse.de ([195.135.220.15]:44062 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727107AbfAHLJz (ORCPT ); Tue, 8 Jan 2019 06:09:55 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id A5EFAAE6E; Tue, 8 Jan 2019 11:09:54 +0000 (UTC) From: Roman Penyaev Cc: Roman Penyaev , Andrew Morton , Stephen Rothwell , Michal Hocko , "David S . Miller" , Peter Zijlstra , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/1] mm/vmalloc: Make vmalloc_32_user() align base kernel virtual address to SHMLBA Date: Tue, 8 Jan 2019 12:09:44 +0100 Message-Id: <20190108110944.23591-1-rpenyaev@suse.de> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To: unlisted-recipients:; (no To-header on input) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch repeats the original one from David S. Miller: 2dca6999eed5 ("mm, perf_event: Make vmalloc_user() align base kernel virtual address to SHMLBA") but for missed vmalloc_32_user() case, which also requires correct alignment of virtual address on kernel side to avoid D-caches aliases. A bit of copy-paste from original patch to recover in memory of what is all about: When a vmalloc'd area is mmap'd into userspace, some kind of co-ordination is necessary for this to work on platforms with cpu D-caches which can have aliases. Otherwise kernel side writes won't be seen properly in userspace and vice versa. If the kernel side mapping and the user side one have the same alignment, modulo SHMLBA, this can work as long as VM_SHARED is shared of VMA and for all current users this is true. VM_SHARED will force SHMLBA alignment of the user side mmap on platforms with D-cache aliasing matters. David S. Miller Signed-off-by: Roman Penyaev Cc: Andrew Morton Cc: Stephen Rothwell Cc: Michal Hocko Cc: David S. Miller Cc: Peter Zijlstra Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org --- mm/vmalloc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 50b17c745149..e83961767dc1 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -1971,7 +1971,7 @@ EXPORT_SYMBOL(vmalloc_32); */ void *vmalloc_32_user(unsigned long size) { - return __vmalloc_node_range(size, 1, VMALLOC_START, VMALLOC_END, + return __vmalloc_node_range(size, SHMLBA, VMALLOC_START, VMALLOC_END, GFP_VMALLOC32 | __GFP_ZERO, PAGE_KERNEL, VM_USERMAP, NUMA_NO_NODE, __builtin_return_address(0)); -- 2.19.1