Commit e7add9e
authored
DAOS-18582 vos: fix picking up pages for pinning (#17578)
As of now, this code path is used only by DTX commit/abort.
The bug caused unrelated parts of the structure to be interpreted as
page indices that were about to be pinned, instead of using only the
page indices already added to the array. Because this part of the code
determines both which pages should be pinned and whether additional
pages would get pinned, it led to two outcomes:
In the best case: DTX commit/abort operations were processed in smaller
"chunks" than intended, which could result in performance degradation.
In the worst case: The code reasoned a certain page indices are in the
array where in fact they were not. As a result, some page indices never
made it into the array and were never pinned. Later code assumed that
all required pages have been pinned, so a missing page would ultimately
lead to a crash.
Signed-off-by: Jan Michalski <jan-marian.michalski@hpe.com>1 parent 3722759 commit e7add9e
1 file changed
+3
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
849 | 849 | | |
850 | 850 | | |
851 | 851 | | |
852 | | - | |
| 852 | + | |
| 853 | + | |
853 | 854 | | |
854 | 855 | | |
855 | 856 | | |
| |||
0 commit comments