A new "no (more) symbol" path there was lacking a necessary unlock.
Fixes: d3b637fba31b ("symbols: arrange to know where functions end")
Coverity ID: 1665212
Signed-off-by: Jan Beulich <[email protected]>
--- a/xen/common/symbols.c
+++ b/xen/common/symbols.c
@@ -202,7 +202,10 @@ int xensyms_read(uint32_t *symnum, char
{
++next_offset;
if ( ++*symnum == symbols_num_addrs )
+ {
+ spin_unlock(&symbols_mutex);
goto no_symbol;
+ }
}
*type = symbols_get_symbol_type(next_offset);
