[PATCH v2 33/34] syms: libvirt: move virDomainSetBlockThreshold to 3.2.0

Peter Krempa pkrempa at redhat.com
Tue Apr 19 13:28:02 UTC 2022


On Thu, Apr 14, 2022 at 22:47:44 +0200, Victor Toso wrote:
> Found thanks to scripts/apibuild.py complain:
> 
>  |  Function virDomainSetBlockThreshold has symversion 3.1.0 but docstring says 3.2.0
> 
> Add in bb09798fbe "lib: Add API for setting the threshold size for
> VIR_DOMAIN_EVENT_ID_BLOCK_THRESHOLD" in 2017-03-27
> 
> Easy to check with git grep:
>  | > git grep -r virDomainSetBlockThreshold v3.1.0 ./include
>  | /* Fails */
>  | > git grep -r virDomainSetBlockThreshold v3.2.0 ./include
>  |  v3.2.0:include/libvirt/libvirt-domain.h: * The threshold size can be set via the virDomainSetBlockThreshold API.
>  |  v3.2.0:include/libvirt/libvirt-domain.h:int virDomainSetBlockThreshold(virDomainPtr domain,
> 
> Signed-off-by: Victor Toso <victortoso at redhat.com>
> ---
>  src/libvirt_public.syms | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)

As noted in my reply to the cover letter. This breaks linking of
existing builds of apps with libvirt:

 $ cat threshold.c
 #include <stddef.h>
 #include <libvirt/libvirt.h>
 
 int main()
 {
     virInitialize();
     virDomainSetBlockThreshold(NULL, 0, 0, 0);
     return 0;
 }
 
 $ gcc threshold.c -o threshold -lvirt -pedantic -Wall
 $ ./threshold
 libvirt: Domain error : invalid domain pointer in virDomainSetBlockThreshold
 $ LD_LIBRARY_PATH=/home/pipo/build/libvirt/gcc/src/ ./threshold
 ./threshold: symbol lookup error: ./threshold: undefined symbol: virDomainSetBlockThreshold, version LIBVIRT_3.1.0

NACK


More information about the libvir-list mailing list