Dear Shuah: > > @@ -357,7 +357,7 @@ static int test_alloc_errors(char *heap_name) > > if (heap_fd >= 0) > > close(heap_fd); > > > > - return ret; > > + return !ret; > > This change doesn't make sense. Initializing ret to 0 is a better > way to go. > I don't agree with you about this comment. Initializing ret to 0 can not solve this problem. Because the ret value will be override by the following dmabuf_heap_alloc() calls. static int test_alloc_errors(char *heap_name) { int ret; ret = dmabuf_heap_alloc(...); ... ret = dmabuf_heap_alloc(...); ... ret = dmabuf_heap_alloc_fdflags(...); ... return ret; } The purpose for test_alloc_errors() is to pass some invalid parameters to dmabuf_heap_alloc() and wish it return some errors. So -1 is what we expect from test_alloc_errors(). But the code in main() will break the loop when the ret value is -1. So I reversed the return value in test_alloc_errors(). int main(void) { while(...) { ... ret = test_alloc_errors(dir->d_name); if (ret) break; } } thanks, -- Leon