[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] virPortAllocatorSetUsed: ignore port 0



On 01/21/2019 10:00 AM, Ján Tomko wrote:
> Similar to what commit 86dba8f3 did for virPortAllocatorRelease,
> ignore port 0 in virPortAllocatorSetUsed.
> 
> For all the reasonable use cases the callers already check that
> the port is non-zero, however if the port from the XML overflows
> unsigned short and turns into 0, it can be set as used by
> virPortAllocatorSetUsed but not released by virPortAllocatorRelease.
> 
> Also skip port '0' in virPortAllocatorSetUsed to make this behavior
> symmetric.
> 
> The serenity was disturbed by commit 5dbda5e9 which started using
> virPortAllocatorRelease instead of virPortAllocatorSetUsed (false).
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=1591645
> 
> Signed-off-by: Ján Tomko <jtomko redhat com>
> ---
>  src/util/virportallocator.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/src/util/virportallocator.c b/src/util/virportallocator.c
> index db95a601c7..d48963c1ff 100644
> --- a/src/util/virportallocator.c
> +++ b/src/util/virportallocator.c
> @@ -294,6 +294,9 @@ virPortAllocatorSetUsed(unsigned short port)
>      if (!pa)
>          return -1;
>  
> +    if (!port)
> +        return 0;
> +
>      virObjectLock(pa);
>  
>      if (virBitmapIsBitSet(pa->bitmap, port) ||
> 

Reviewed-by: Cole Robinson <crobinso redhat com>

There's a portallocator unit test file but no direct tests for this
function unfortunately

- Cole


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]