From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761890AbcLVAgb (ORCPT ); Wed, 21 Dec 2016 19:36:31 -0500 Received: from LGEAMRELO12.lge.com ([156.147.23.52]:57096 "EHLO lgeamrelo12.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757509AbcLVAg1 (ORCPT ); Wed, 21 Dec 2016 19:36:27 -0500 X-Original-SENDERIP: 156.147.1.125 X-Original-MAILFROM: minchan@kernel.org X-Original-SENDERIP: 10.177.223.161 X-Original-MAILFROM: minchan@kernel.org From: Minchan Kim To: Andrew Morton Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Sergey Senozhatsky , Takashi Iwai , Hyeoncheol Lee , yjay.kim@lge.com, Sangseok Lee , Hugh Dickins , Minchan Kim , "[4.7+]" Subject: [PATCH v4 2/3] zram: revalidate disk under init_lock Date: Thu, 22 Dec 2016 09:36:19 +0900 Message-Id: <1482366980-3782-3-git-send-email-minchan@kernel.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1482366980-3782-1-git-send-email-minchan@kernel.org> References: <1482366980-3782-1-git-send-email-minchan@kernel.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [1] moved revalidate_disk call out of init_lock to avoid lockdep false-positive splat. However, [2] remove init_lock in IO path so there is no worry about lockdep splat. So, let's restore it. This patch need to set BDI_CAP_STABLE_WRITES atomically in next patch. [1] b4c5c60920e3: zram: avoid lockdep splat by revalidate_disk [2] 08eee69fcf6b: zram: remove init_lock in zram_make_request Fixes: da9556a2367c ("zram: user per-cpu compression streams") Cc: [4.7+] Signed-off-by: Minchan Kim --- drivers/block/zram/zram_drv.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c index 15f58ab44d0b..195376b4472b 100644 --- a/drivers/block/zram/zram_drv.c +++ b/drivers/block/zram/zram_drv.c @@ -1095,14 +1095,8 @@ static ssize_t disksize_store(struct device *dev, zram->comp = comp; zram->disksize = disksize; set_capacity(zram->disk, zram->disksize >> SECTOR_SHIFT); - up_write(&zram->init_lock); - - /* - * Revalidate disk out of the init_lock to avoid lockdep splat. - * It's okay because disk's capacity is protected by init_lock - * so that revalidate_disk always sees up-to-date capacity. - */ revalidate_disk(zram->disk); + up_write(&zram->init_lock); return len; -- 2.7.4 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Minchan Kim To: Andrew Morton Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Sergey Senozhatsky , Takashi Iwai , Hyeoncheol Lee , yjay.kim@lge.com, Sangseok Lee , Hugh Dickins , Minchan Kim , "[4.7+]" Subject: [PATCH v4 2/3] zram: revalidate disk under init_lock Date: Thu, 22 Dec 2016 09:36:19 +0900 Message-Id: <1482366980-3782-3-git-send-email-minchan@kernel.org> In-Reply-To: <1482366980-3782-1-git-send-email-minchan@kernel.org> References: <1482366980-3782-1-git-send-email-minchan@kernel.org> Sender: owner-linux-mm@kvack.org List-ID: [1] moved revalidate_disk call out of init_lock to avoid lockdep false-positive splat. However, [2] remove init_lock in IO path so there is no worry about lockdep splat. So, let's restore it. This patch need to set BDI_CAP_STABLE_WRITES atomically in next patch. [1] b4c5c60920e3: zram: avoid lockdep splat by revalidate_disk [2] 08eee69fcf6b: zram: remove init_lock in zram_make_request Fixes: da9556a2367c ("zram: user per-cpu compression streams") Cc: [4.7+] Signed-off-by: Minchan Kim --- drivers/block/zram/zram_drv.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c index 15f58ab44d0b..195376b4472b 100644 --- a/drivers/block/zram/zram_drv.c +++ b/drivers/block/zram/zram_drv.c @@ -1095,14 +1095,8 @@ static ssize_t disksize_store(struct device *dev, zram->comp = comp; zram->disksize = disksize; set_capacity(zram->disk, zram->disksize >> SECTOR_SHIFT); - up_write(&zram->init_lock); - - /* - * Revalidate disk out of the init_lock to avoid lockdep splat. - * It's okay because disk's capacity is protected by init_lock - * so that revalidate_disk always sees up-to-date capacity. - */ revalidate_disk(zram->disk); + up_write(&zram->init_lock); return len; -- 2.7.4 -- 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