From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755501AbZE1LEV (ORCPT ); Thu, 28 May 2009 07:04:21 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751521AbZE1LEN (ORCPT ); Thu, 28 May 2009 07:04:13 -0400 Received: from mga03.intel.com ([143.182.124.21]:39978 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751173AbZE1LEN (ORCPT ); Thu, 28 May 2009 07:04:13 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.41,264,1241420400"; d="scan'208";a="147867087" Date: Thu, 28 May 2009 19:03:36 +0800 From: Wu Fengguang To: Andi Kleen Cc: Nick Piggin , "hugh@veritas.com" , "riel@redhat.com" , "akpm@linux-foundation.org" , "chris.mason@oracle.com" , "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" Subject: Re: [PATCH] [13/16] HWPOISON: The high level memory error handler in the VM v3 Message-ID: <20090528110336.GA15489@localhost> References: <200905271012.668777061@firstfloor.org> <20090527201239.C2C9C1D0294@basil.firstfloor.org> <20090528082616.GG6920@wotan.suse.de> <20090528095934.GA10678@localhost> <20090528101111.GE1065@one.firstfloor.org> <20090528103300.GA15133@localhost> <20090528105103.GG1065@one.firstfloor.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20090528105103.GG1065@one.firstfloor.org> User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, May 28, 2009 at 06:51:03PM +0800, Andi Kleen wrote: > On Thu, May 28, 2009 at 06:33:00PM +0800, Wu Fengguang wrote: > > > > > You haven't waited on writeback here AFAIKS, and have you > > > > > *really* verified it is safe to call delete_from_swap_cache? > > > > > > > > Good catch. I'll soon submit patches for handling the under > > > > read/write IO pages. In this patchset they are simply ignored. > > > > > > Yes, we assume the IO device does something sensible with the poisoned > > > cache lines and aborts. Later we can likely abort IO requests in a early > > > stage on the Linux, but that's more advanced. > > > > > > The question is if we need to wait on writeback for correctness? > > > > Not necessary. Because I'm going to add a me_writeback() handler. > > Ok but without it. Let's assume me_writeback() is in the future. > > I'm mainly interested in correctness (as in not crashing) of this > version now. OK. But I suspect it doesn't matter whether to wait on the writeback page in the sense of "don't crash". > Also writeback seems to be only used by nfs/afs/nilfs2, not in > the normal case, unless I'm misreading the code. > > The nilfs2 case seems weird, I haven't completely read that. I'll take a look at that :) > > Then the writeback pages simply won't reach here. And it won't > > magically go into writeback state, since the page has been locked. > > But since we take the page lock they should not be in writeback anyways, > no? No, writeback pages are normally not locked. But the dirty => writeback transition is locked. Thanks, Fengguang