Re: One problem in reassign pci bus number?

From: Richard Yang
Date: Sun May 06 2012 - 21:17:48 EST


On Sun, May 06, 2012 at 09:36:35AM -0700, Yinghai Lu wrote:
>On Sun, May 6, 2012 at 9:35 AM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote:
>> On Sun, May 6, 2012 at 8:17 AM, Richard Yang <weiyang@xxxxxxxxxxxxxxxxxx> wrote:
>>> On Fri, May 04, 2012 at 10:37:08AM -0700, Yinghai Lu wrote:
>>>>On Thu, May 3, 2012 at 9:52 PM, Richard Yang <weiyang@xxxxxxxxxxxxxxxxxx> wrote:
>>>>>
>>>>> BTW, even if this value is returned by __find_res_top_free_size(), or
>>>>> returned after this function is called, the purpose of the
>>>>> __find_res_top_free_size() is to get the biggest free space under the
>>>>> first parameter?
>>>>
>>>>__find_res_top_free_size() is used to get size just under top,  and
>>>>then use it to calculate size above top that need to be extended.
>>>>
>>>>at last will combine free size under top and allocated size above top
>>>>and return.
>>> Yes, I get the general idea.
>>>
>>> then I want to confirm which size __find_res_top_free_size() will return.
>>>
>>> Come to the previous question, for one resource like this.
>>> res =   90-150
>>>    ->child      105-140
>>> We call __find_res_top_free_size(res, 1);
>>> This function should return which size?  10? 15? or 25?
>>>
>>> From the code
>>> +               ret = __allocate_resource(res, &tmp_res, n_size,
>>> +                       res->end - n_size + skip_nr, res->end,
>>> +                       1, NULL, NULL, false);
>>> I think it will check the free space near the end of res.
>>
>> yes. it is 15, [141-150]
>
>should 10, aka [141-150]
Thanks,
so this free space will be combined with the free space got from
parent, form a big space to meet the requirement.

This is the general idea about probe_resource()?

And this is the design decision to find the free space at the end
of top, even at the start we have more free space?

--
Richard Yang
Help you, Help me

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/