From owner-freebsd-current@FreeBSD.ORG Thu Feb 12 12:33:09 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5FBCE16A4CE; Thu, 12 Feb 2004 12:33:09 -0800 (PST) Received: from transport.cksoft.de (transport.cksoft.de [62.111.66.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id 34A9C43D1D; Thu, 12 Feb 2004 12:33:09 -0800 (PST) (envelope-from bzeeb-lists@lists.zabbadoz.net) Received: from transport.cksoft.de (localhost [127.0.0.1]) by transport.cksoft.de (Postfix) with ESMTP id ECB721FF90A; Thu, 12 Feb 2004 21:33:06 +0100 (CET) Received: by transport.cksoft.de (Postfix, from userid 66) id 2A0C81FF905; Thu, 12 Feb 2004 21:33:05 +0100 (CET) Received: by mail.int.zabbadoz.net (Postfix, from userid 1060) id 14E2E153DE; Thu, 12 Feb 2004 20:32:52 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.int.zabbadoz.net (Postfix) with ESMTP id 0A2C515384; Thu, 12 Feb 2004 20:32:53 +0000 (UTC) Date: Thu, 12 Feb 2004 20:32:52 +0000 (UTC) From: "Bjoern A. Zeeb" X-X-Sender: bz@e0-0.zab2.int.zabbadoz.net To: FreeBSD current mailing list Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by AMaViS cksoft-s20020300-20031204bz on transport.cksoft.de cc: "Bjoern A. Zeeb" Subject: dev/random duplicate call to destroy_dev X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Feb 2004 20:33:09 -0000 Hi, when unloading random module destry_dev also gets called for dev_t aquired with make_dev_alias which is wrong according to make_dev(9). Seems this has been living in there for 3y7m now ... http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/random/randomdev.c.diff?r1=1.3&r2=1.4 possible yet untested fix: --- sys/dev/random/randomdev.c.orig Thu Feb 12 20:12:58 2004 +++ sys/dev/random/randomdev.c Thu Feb 12 20:25:26 2004 @@ -104,7 +104,6 @@ static struct proc *random_kthread_proc; /* For use with make_dev(9)/destroy_dev(9). */ static dev_t random_dev; -static dev_t urandom_dev; /* ARGSUSED */ static int @@ -266,7 +265,7 @@ random_modevent(module_t mod __unused, i printf("random: \n"); random_dev = make_dev(&random_cdevsw, RANDOM_MINOR, UID_ROOT, GID_WHEEL, 0666, "random"); - urandom_dev = make_dev_alias(random_dev, "urandom"); + (void)make_dev_alias(random_dev, "urandom"); /* Start the hash/reseed thread */ error = kthread_create(random_kthread, NULL, @@ -309,7 +308,6 @@ random_modevent(module_t mod __unused, i random_deinit(); destroy_dev(random_dev); - destroy_dev(urandom_dev); return 0; case MOD_SHUTDOWN: -- Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT 56 69 73 69 74 http://www.zabbadoz.net/