From owner-svn-src-all@FreeBSD.ORG Wed Apr 14 12:49:19 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 57DCD1065672; Wed, 14 Apr 2010 12:49:19 +0000 (UTC) (envelope-from jh@FreeBSD.org) Received: from gw02.mail.saunalahti.fi (gw02.mail.saunalahti.fi [195.197.172.116]) by mx1.freebsd.org (Postfix) with ESMTP id 1332B8FC12; Wed, 14 Apr 2010 12:49:18 +0000 (UTC) Received: from a91-153-117-195.elisa-laajakaista.fi (a91-153-117-195.elisa-laajakaista.fi [91.153.117.195]) by gw02.mail.saunalahti.fi (Postfix) with SMTP id 8A96F13987E; Wed, 14 Apr 2010 15:49:13 +0300 (EEST) Date: Wed, 14 Apr 2010 15:49:13 +0300 From: Jaakko Heinonen To: Kostik Belousov Message-ID: <20100414124912.GA2950@a91-153-117-195.elisa-laajakaista.fi> References: <201004131853.o3DIrdOT035078@svn.freebsd.org> <20100414084037.GK2415@deviant.kiev.zoral.com.ua> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100414084037.GK2415@deviant.kiev.zoral.com.ua> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r206560 - head/sys/fs/devfs X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Apr 2010 12:49:19 -0000 Thank you for your comments. On 2010-04-14, Kostik Belousov wrote: > The make_dev_credf() signature can be changed to return int error code > instead of void, and a flag, lets call it MAKEDEV_CHECKNAME, added, make_dev_credf() returns struct cdev *, not void. > that specifies that make_dev_credf() is allowed to fail with error > EINVAL if supplied name is not sane. If flag is not supplied, > make_dev_credf() should KASSERT or even just panic(9) if name > does not pass internal validation. Otherwise sounds reasonable suggestion. However changes are needed in devfs. Currently devfs_populate_loop() is not along the make_dev*() code path but make_dev(9) increases a generation counter and devfs_populate_loop() gets called sometimes later. To make things more complex there may be several devfs mounts with different symlinks (files). Actually my change doesn't work correctly in all cases with multiple devfs mounts and has another bug with cdp use counts. I am considering reverting the change. -- Jaakko