644678258f
This patch address the issue: https://github.com/spdk/spdk/issues/151. For cache_append_no_cache in cache_ut testcase, there is resource contention for buffer among two threads in the following two functions. Thread 0: cache_free_buffers Thread1: __file_flush_done When the thread1 execuctes __file_flush_done, it calls the call back: __sem_post defined in following statement in spdk_file_sync _file_sync(file, channel, __sem_post, &channel->sem); Thus Thread 0 will execute next function cache_buffers, and it frees the buffer. Then Thread 1 continues executing the remaining statements in __file_flush_done with the assert function, and touches the space already freed. So it will be safe to move ahead the next buffer check. Change-Id: Ic007b3481f4e3a17d47eeca5c9c802001949a5ab Signed-off-by: Ziye Yang <ziye.yang@intel.com> |
||
---|---|---|
.. | ||
blobfs_internal.h | ||
blobfs.c | ||
Makefile | ||
tree.c | ||
tree.h |