Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Apr 2008 15:59:32 -0600
From:      Scott Long <scottl@samsco.org>
To:        John-Mark Gurney <jmg@funkthat.com>
Cc:        cvs-src@FreeBSD.org, "Bjoern A. Zeeb" <bz@FreeBSD.org>, cvs-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: cvs commit: src/sys/dev/ata ata-all.c
Message-ID:  <480D0E44.9070201@samsco.org>
In-Reply-To: <20080421213724.GL82555@funkthat.com>
References:  <200804201745.m3KHjWma066842@repoman.freebsd.org> <20080421213724.GL82555@funkthat.com>

next in thread | previous in thread | raw e-mail | index | archive | help
John-Mark Gurney wrote:
> Bjoern A. Zeeb wrote this message on Sun, Apr 20, 2008 at 17:45 +0000:
>> bz          2008-04-20 17:45:32 UTC
>>
>>   FreeBSD src repository
>>
>>   Modified files:
>>     sys/dev/ata          ata-all.c 
>>   Log:
>>   devclass_get_maxunit() returns n+1 with n starting at 0.
>>   So if we have channel 0..3  devclass_get_maxunit is 4.
>>   
>>   It's never been a problem as devclass_get_device() has
>>   catched a possibly bad input.
> 
> Any one object to changing:
> .Nm devclass_get_maxunit
> .Nd find the maximum unit number in the class
> 
> to:
> .Nm devclass_get_maxunit
> .Nd find the next free unit number in the class
> 

That's not what it actually returns though.  It returned the highest
allocated unit number plus 1.  The unit numbering can be sparse, with
the next available unit number being less than the highest allocated
unit number.

Most callers use this value as the limit in a for loop, hence why it's
convenient for it to return the +1.

Scott



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?480D0E44.9070201>