CLBlast: Fix temporary buffer size for f16 conversion (wsize) #3603
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In
ggml_cl_mul_mat_f16
,wdata
is used for conversion of bothsrc1
anddst
, but only the size ofsrc1
was considered. Whendst
required more space, it could lead to buffer overflow. Crashes reported in #2378 and #2736 may have been caused by this.For 3D and 4D tensors, the size to fit the whole
src1
was requested, but only one 2D slice is processed at a time, so the requirement can be reduced.Tested with AddressSanitizer.