On 04/02/19 12:45, Thomas Huth wrote: > when running current QEMU master branch with valgrind, I get > "Conditional jump or move depends on uninitialised value" errors. I've > bisected it to your patch series here. Everything is still fine and calm > with f481ee2d5e3d77c12a4c9a7756b8c2612aad84c6 ("qemu/queue.h: typedef > QTAILQ heads"), but starting with commit > eae3eb3e185028d6e862db747e3b7397600d6762 ("qemu/queue.h: simplify > reverse access to QTAILQ"), I now get:
After fixing compilation with diff --git a/memory.c b/memory.c index 195c5cf..73b5ec6 100644 --- a/memory.c +++ b/memory.c @@ -128,7 +128,7 @@ enum ListenerDirection { Forward, Reverse }; #define MEMORY_LISTENER_CALL(_as, _callback, _direction, _section, _args...) \ do { \ MemoryListener *_listener; \ - struct memory_listeners_as *list = &(_as)->listeners; \ + union memory_listeners_as *list = &(_as)->listeners; \ \ switch (_direction) { \ case Forward: \ I bisected it (not unexpectedly) to 7274f01bb8b81ffe8f13f463b6b0f3b9246c5387. It's a stupid stupid bug, and I'm sending a patch soon. Paolo