From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kirill A. Shutemov" Subject: Re: [PATCH] shmem: fix pageflags after swapping DMA32 object Date: Mon, 7 Nov 2016 14:29:00 +0300 Message-ID: <20161107112900.GC13280@node.shutemov.name> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 189E66E150 for ; Mon, 7 Nov 2016 11:32:06 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id c17so15894532wmc.3 for ; Mon, 07 Nov 2016 03:32:06 -0800 (PST) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Hugh Dickins Cc: linux-mm@kvack.org, Andrew Morton , intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, "Kirill A. Shutemov" List-Id: intel-gfx@lists.freedesktop.org T24gU3VuLCBOb3YgMDYsIDIwMTYgYXQgMDg6MDg6MjlQTSAtMDgwMCwgSHVnaCBEaWNraW5zIHdy b3RlOgo+IElmIHNobWVtX2FsbG9jX3BhZ2UoKSBkb2VzIG5vdCBzZXQgUGFnZUxvY2tlZCBhbmQg UGFnZVN3YXBCYWNrZWQsIHRoZW4KPiBzaG1lbV9yZXBsYWNlX3BhZ2UoKSBuZWVkcyB0byBkbyBz byBmb3IgaXRzZWxmLiAgV2l0aG91dCB0aGlzLCBpdCBwdXRzCj4gbmV3cGFnZSBvbiB0aGUgd3Jv bmcgbHJ1LCByZS11bmxvY2tzIHRoZSB1bmxvY2tlZCBuZXdwYWdlLCBhbmQgc3lzdGVtCj4gZGVz Y2VuZHMgaW50byAiQmFkIHBhZ2UiIHJlcG9ydHMgYW5kIGZyZWV6ZTsgb3IgaWYgQ09ORklHX0RF QlVHX1ZNPXksCj4gaXQgaGl0cyBhbiBlYXJsaWVyIFZNX0JVR19PTl9QQUdFKCFQYWdlTG9ja2Vk KSwgZGVwZW5kaW5nIG9uIGNvbmZpZy4KPiAKPiBCdXQgc2htZW1fcmVwbGFjZV9wYWdlKCkgaXMg bm90IGEgY29tbW9uIHBhdGg6IGl0J3Mgb25seSBjYWxsZWQgd2hlbgo+IHN3YXBpbiAob3Igc3dh cG9mZikgZmluZHMgdGhlIHBhZ2Ugd2FzIGFscmVhZHkgcmVhZCBpbnRvIGFuIHVuc3VpdGFibGUK PiB6b25lOiB1c3VhbGx5IGFsbCB6b25lcyBhcmUgc3VpdGFibGUsIGJ1dCBnZW0gb2JqZWN0cyBm b3IgYSBmZXcgZHJtCj4gZGV2aWNlcyAoZ21hNTAwLCBvbWFwZHJtLCBjcmVzdGxpbmUsIGJyb2Fk d2F0ZXIpIHJlcXVpcmUgem9uZSBETUEzMgo+IGlmIHRoZXJlJ3MgbW9yZSB0aGFuIDRHQiBvZiBy YW0uCj4gCj4gRml4ZXM6IDgwMGQ4YzYzYjJlOSAoInNobWVtOiBhZGQgaHVnZSBwYWdlcyBzdXBw b3J0IikKPiBDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZyAjIHY0LjgKPiBTaWduZWQtb2ZmLWJ5 OiBIdWdoIERpY2tpbnMgPGh1Z2hkQGdvb2dsZS5jb20+CgpTb3JyeSBmb3IgdGhhdC4KCkFja2Vk LWJ5OiBLaXJpbGwgQS4gU2h1dGVtb3YgPGtpcmlsbC5zaHV0ZW1vdkBsaW51eC5pbnRlbC5jb20+ CgotLSAKIEtpcmlsbCBBLiBTaHV0ZW1vdgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lf0-f71.google.com (mail-lf0-f71.google.com [209.85.215.71]) by kanga.kvack.org (Postfix) with ESMTP id 06F4F6B0069 for ; Mon, 7 Nov 2016 06:32:07 -0500 (EST) Received: by mail-lf0-f71.google.com with SMTP id h201so1611090lfg.5 for ; Mon, 07 Nov 2016 03:32:06 -0800 (PST) Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com. [2a00:1450:400c:c09::244]) by mx.google.com with ESMTPS id n82si15565209lfd.206.2016.11.07.03.32.05 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 Nov 2016 03:32:05 -0800 (PST) Received: by mail-wm0-x244.google.com with SMTP id a20so5132978wme.2 for ; Mon, 07 Nov 2016 03:32:05 -0800 (PST) Date: Mon, 7 Nov 2016 14:29:00 +0300 From: "Kirill A. Shutemov" Subject: Re: [PATCH] shmem: fix pageflags after swapping DMA32 object Message-ID: <20161107112900.GC13280@node.shutemov.name> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: owner-linux-mm@kvack.org List-ID: To: Hugh Dickins Cc: Andrew Morton , "Kirill A. Shutemov" , linux-kernel@vger.kernel.org, linux-mm@kvack.org, intel-gfx@lists.freedesktop.org On Sun, Nov 06, 2016 at 08:08:29PM -0800, Hugh Dickins wrote: > If shmem_alloc_page() does not set PageLocked and PageSwapBacked, then > shmem_replace_page() needs to do so for itself. Without this, it puts > newpage on the wrong lru, re-unlocks the unlocked newpage, and system > descends into "Bad page" reports and freeze; or if CONFIG_DEBUG_VM=y, > it hits an earlier VM_BUG_ON_PAGE(!PageLocked), depending on config. > > But shmem_replace_page() is not a common path: it's only called when > swapin (or swapoff) finds the page was already read into an unsuitable > zone: usually all zones are suitable, but gem objects for a few drm > devices (gma500, omapdrm, crestline, broadwater) require zone DMA32 > if there's more than 4GB of ram. > > Fixes: 800d8c63b2e9 ("shmem: add huge pages support") > Cc: stable@vger.kernel.org # v4.8 > Signed-off-by: Hugh Dickins Sorry for that. Acked-by: Kirill A. Shutemov -- Kirill A. Shutemov -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752869AbcKGLcI (ORCPT ); Mon, 7 Nov 2016 06:32:08 -0500 Received: from mail-wm0-f67.google.com ([74.125.82.67]:33677 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752729AbcKGLcG (ORCPT ); Mon, 7 Nov 2016 06:32:06 -0500 Date: Mon, 7 Nov 2016 14:29:00 +0300 From: "Kirill A. Shutemov" To: Hugh Dickins Cc: Andrew Morton , "Kirill A. Shutemov" , linux-kernel@vger.kernel.org, linux-mm@kvack.org, intel-gfx@lists.freedesktop.org Subject: Re: [PATCH] shmem: fix pageflags after swapping DMA32 object Message-ID: <20161107112900.GC13280@node.shutemov.name> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23.1 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Nov 06, 2016 at 08:08:29PM -0800, Hugh Dickins wrote: > If shmem_alloc_page() does not set PageLocked and PageSwapBacked, then > shmem_replace_page() needs to do so for itself. Without this, it puts > newpage on the wrong lru, re-unlocks the unlocked newpage, and system > descends into "Bad page" reports and freeze; or if CONFIG_DEBUG_VM=y, > it hits an earlier VM_BUG_ON_PAGE(!PageLocked), depending on config. > > But shmem_replace_page() is not a common path: it's only called when > swapin (or swapoff) finds the page was already read into an unsuitable > zone: usually all zones are suitable, but gem objects for a few drm > devices (gma500, omapdrm, crestline, broadwater) require zone DMA32 > if there's more than 4GB of ram. > > Fixes: 800d8c63b2e9 ("shmem: add huge pages support") > Cc: stable@vger.kernel.org # v4.8 > Signed-off-by: Hugh Dickins Sorry for that. Acked-by: Kirill A. Shutemov -- Kirill A. Shutemov