diff --git a/inc/ocf_def.h b/inc/ocf_def.h index b5a4364..bdbe211 100644 --- a/inc/ocf_def.h +++ b/inc/ocf_def.h @@ -352,6 +352,6 @@ typedef enum { * @} */ -#define MAX_TRIM_RQ_SIZE (1 * MiB) +#define MAX_TRIM_RQ_SIZE (512 * KiB) #endif /* __OCF_DEF_H__ */ diff --git a/src/ocf_request.c b/src/ocf_request.c index 8584b71..be98f0a 100644 --- a/src/ocf_request.c +++ b/src/ocf_request.c @@ -224,6 +224,9 @@ int ocf_req_alloc_map(struct ocf_request *req) int ocf_req_alloc_map_discard(struct ocf_request *req) { + ENV_BUILD_BUG_ON(MAX_TRIM_RQ_SIZE / ocf_cache_line_size_4 * + sizeof(struct ocf_map_info) > 4 * KiB); + if (req->byte_length <= MAX_TRIM_RQ_SIZE) return ocf_req_alloc_map(req);