dma-buf: st: fix error handling in test_get_fences()
authorArnd Bergmann <arnd@arndb.de>
Tue, 26 Oct 2021 08:34:37 +0000 (10:34 +0200)
committerChristian König <christian.koenig@amd.com>
Tue, 26 Oct 2021 11:06:47 +0000 (13:06 +0200)
commit55d5e4f98fde7f695fc6c08f46f85ab677f690a2
tree8fafc214f628b83d4866a873dda9fbf8ac0879c5
parent44653c400615a3fa3658caa72d765233cc897d80
dma-buf: st: fix error handling in test_get_fences()

The new driver incorrectly unwinds after errors, as clang points out:

drivers/dma-buf/st-dma-resv.c:295:7: error: variable 'i' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
                if (r) {
                    ^
drivers/dma-buf/st-dma-resv.c:336:9: note: uninitialized use occurs here
        while (i--)
               ^
drivers/dma-buf/st-dma-resv.c:295:3: note: remove the 'if' if its condition is always false
                if (r) {
                ^~~~~~~~
drivers/dma-buf/st-dma-resv.c:288:6: error: variable 'i' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
        if (r) {
            ^
drivers/dma-buf/st-dma-resv.c:336:9: note: uninitialized use occurs here
        while (i--)
               ^
drivers/dma-buf/st-dma-resv.c:288:2: note: remove the 'if' if its condition is always false
        if (r) {
        ^~~~~~~~
drivers/dma-buf/st-dma-resv.c:280:10: note: initialize the variable 'i' to silence this warning
        int r, i;
                ^
                 = 0

Skip cleaning up the bits that have not been allocated at this point.

Fixes: 1d51775cd3f5 ("dma-buf: add dma_resv selftest v4")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20211026083448.3471055-1-arnd@kernel.org
Signed-off-by: Christian König <christian.koenig@amd.com>
drivers/dma-buf/st-dma-resv.c