Hi yadong,

> static int alloc_free_io_port_range(vmm_io_port_list_t *io_list,
> ioport_range_t *io_range)
> {
>     uint16_t free_port_addr = io_list->alloc_addr;
>     if (free_port_addr + io_range->size < free_port_addr) {
>         /* Possible overflow */
>         return -1;
>     }
>     io_list->alloc_addr += io_range->size;
>     io_range->start = free_port_addr;
>     io_range->end = free_port_addr + io_range->size;
>     return 0;
> }
> I think "io_range->end = free_port_addr + io_range->size;" should change to
> "io_range->end = free_port_addr + io_range->size - 1;" ?

Thanks for catching this!

I've submitted a PR on Github [1] which resolves this issue.

Regards,
Damon

[1] https://github.com/SEL4PROJ/seL4_projects_libs/pull/10
_______________________________________________
Devel mailing list
Devel@sel4.systems
https://sel4.systems/lists/listinfo/devel

Reply via email to