On 07.11.2024 16:08, Daniel P. Smith wrote:
> On 11/7/24 05:05, Jan Beulich wrote:
>> On 02.11.2024 18:25, Daniel P. Smith wrote:
>>> --- a/xen/xsm/xsm_policy.c
>>> +++ b/xen/xsm/xsm_policy.c
>>> @@ -33,22 +33,18 @@
>>>   int __init xsm_multiboot_policy_init(
>>>       struct boot_info *bi, void **policy_buffer, size_t *policy_size)
>>>   {
>>> -    int i;
>>> +    unsigned int i;
>>>       int rc = 0;
>>>       u32 *_policy_start;
>>>       unsigned long _policy_len;
>>>   
>>> -    /*
>>> -     * Try all modules and see whichever could be the binary policy.
>>> -     * Adjust module_map for the module that is the binary policy.
>>> -     */
>>> -    for ( i = bi->nr_modules - 1; i >= 1; i-- )
>>> +    /* Try all unknown modules and see whichever could be the binary 
>>> policy. */
>>> +    for_each_boot_module_by_type(i, bi, BOOTMOD_UNKNOWN)
>>>       {
>>> -        if ( !test_bit(i, bi->module_map) )
>>> -            continue;
>>> +        struct boot_module *bm = &bi->mods[i];
>>
>> ... same here (and likely elsewhere in the series).
> 
> Nope, you can't const this one as that will cause this is at the tail 
> end of the loop to fail:
> 
> +            bm->type = BOOTMOD_XSM_POLICY;

Oh, I had managed to not spot that.

Jan

Reply via email to