Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Wed, 10 Oct 2001 06:53:41 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Wed, 10 Oct 2001 06:53:31 -0400 Received: from leibniz.math.psu.edu ([146.186.130.2]:9900 "EHLO math.psu.edu") by vger.kernel.org with ESMTP id ; Wed, 10 Oct 2001 06:53:20 -0400 Date: Wed, 10 Oct 2001 06:53:50 -0400 (EDT) From: Alexander Viro To: BALBIR SINGH cc: linux-kernel@vger.kernel.org Subject: Re: [RFC] register_blkdev and unregister_blkdev In-Reply-To: <3BC4278C.6070907@wipro.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 On Wed, 10 Oct 2001, BALBIR SINGH wrote: > Alexander Viro wrote: > > >>I was looking at the code for register_blkdev and unregister_blkdev. I > >>found that no > >>locking (spinlocks) are used to protect the blkdevs struture in these > >>functions. I suspect > >>we have not seen a problem till now since > >> > > > >... they are only called under BKL; ditto for lookups in the tables they > >(de-)populate. > > > What I wanted to know was, who is calling/holding the BKL? Is it because > lock_kernel is called in sys_create_module() and sys_init_module(). All module init code is under BKL and will stay that way for a long time. If that ever becomes not true, we are in for much more pain that register_blkdev() races - you would need to do audit of all drivers to pull something like that. - 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/