From a6ea0ab5e08ae4e5fb3e8bb32734ceed27f97b91 Mon Sep 17 00:00:00 2001 From: Leonid Podolny Date: Wed, 18 Jan 2017 11:49:01 -0500 Subject: [libvirt] [PATCH go] Fix segfault in GetIOThreadInfo The pointers calculation included a typo which caused segfaults. Signed-off-by: Leonid Podolny --- domain.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domain.go b/domain.go index 515138a..74061c2 100644 --- a/domain.go +++ b/domain.go @@ -3887,7 +3887,7 @@ func (d *Domain) GetIOThreadInfo(flags DomainModificationImpact) ([]DomainIOThre info := make([]DomainIOThreadInfo, int(ret)) for i := 0; i < int(ret); i++ { - cinfo := (*(**C.virDomainIOThreadInfo)(unsafe.Pointer(uintptr(unsafe.Pointer(cinfolist)) + (unsafe.Sizeof(*cinfolist) + uintptr(i))))) + cinfo := (*(**C.virDomainIOThreadInfo)(unsafe.Pointer(uintptr(unsafe.Pointer(cinfolist)) + (unsafe.Sizeof(*cinfolist) * uintptr(i))))) ncpus := int(cinfo.cpumaplen * 8) cpumap := make([]bool, ncpus) -- 2.11.0