7d2b4daa67379960477568abda62b8ba9ee3a8aa
The multi-bio code is responsible for duplicating blocks in raid1 and single spindle duplication. It has counters to make sure all of the locations for a given extent are properly written before io completion is returned to the higher layers. But, it didn't always complete the same bio it was given, sometimes a clone was completed instead. This lead to problems with the async work queues because they saved a pointer to the bio in a struct off bi_private. The fix is to remember the original bio and only complete that one. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Description
No description provided
Languages
C
97.2%
Assembly
1.4%
C++
0.5%
Makefile
0.3%
Shell
0.3%
Other
0.2%