Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Sun, 17 Nov 2002 19:36:29 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Sun, 17 Nov 2002 19:36:29 -0500 Received: from leibniz.math.psu.edu ([146.186.130.2]:6608 "EHLO math.psu.edu") by vger.kernel.org with ESMTP id ; Sun, 17 Nov 2002 19:36:28 -0500 Date: Sun, 17 Nov 2002 19:43:27 -0500 (EST) From: Alexander Viro To: Doug Ledford cc: Linux Kernel Mailing List , Linux Scsi Mailing List Subject: Re: Failure to reread partition tables on non-busy devices In-Reply-To: <20021118000505.GM3280@redhat.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 908 Lines: 27 On Sun, 17 Nov 2002, Doug Ledford wrote: > This patch (almost certainly wrong BTW) makes it work. Obviously, > somewhere there should be a call to invalidate_bdev(); that doesn't exist. > I'm not sure A) where that call should be and B) what checks there should > be to avoid calling invalidate_bdev() on a device that is busy. Not really. Correct fix is: a) in fs/block_dev.c::full_check_disk_change() replace if (check_disk_change(bdev)) { with if (check_disk_change(bdev) && bdev->bd_invalidated) { b) lost the check in rescan_partitions(). Other callers either do that check themselves or don't want that check to happen at all (BLKRRPART). - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/