@@ -239,7 +239,8 @@ uint32_t aws_s3_client_get_max_active_connections(
239239/* Initialize token bucket based on target throughput */
240240void s_s3_client_init_tokens (struct aws_s3_client * client , double target_throughput_gbps ) {
241241 AWS_PRECONDITION (client );
242- aws_atomic_store_int (& client -> token_bucket , aws_max_u32 (target_throughput_gbps * 1024 , s_s3_minimum_tokens ));
242+ aws_atomic_store_int (
243+ & client -> token_bucket , aws_max_u32 ((uint32_t )target_throughput_gbps * 1024 , s_s3_minimum_tokens ));
243244}
244245
245246/* Releases tokens back after request is complete. */
@@ -253,23 +254,23 @@ void s_s3_client_release_tokens(struct aws_s3_client *client, struct aws_s3_requ
253254 case AWS_S3_REQUEST_TYPE_GET_OBJECT : {
254255 if (request -> meta_request -> is_express ) {
255256 tokens = aws_min_u32 (
256- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
257+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
257258 s_s3_express_download_throughput_per_connection_mbps );
258259 } else {
259260 tokens = aws_min_u32 (
260- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
261+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
261262 s_s3_download_throughput_per_connection_mbps );
262263 }
263264 break ;
264265 }
265266 case AWS_S3_REQUEST_TYPE_UPLOAD_PART : {
266267 if (request -> meta_request -> is_express ) {
267268 tokens = aws_min_u32 (
268- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
269+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
269270 s_s3_express_upload_throughput_per_connection_mbps );
270271 } else {
271272 tokens = aws_min_u32 (
272- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
273+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
273274 s_s3_upload_throughput_per_connection_mbps );
274275 }
275276 break ;
@@ -310,23 +311,23 @@ bool s_s3_client_acquire_tokens(struct aws_s3_client *client, struct aws_s3_requ
310311 case AWS_S3_REQUEST_TYPE_GET_OBJECT : {
311312 if (request -> meta_request -> is_express ) {
312313 required_tokens = aws_min_u32 (
313- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
314+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
314315 s_s3_express_download_throughput_per_connection_mbps );
315316 } else {
316317 required_tokens = aws_min_u32 (
317- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
318+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
318319 s_s3_download_throughput_per_connection_mbps );
319320 }
320321 break ;
321322 }
322323 case AWS_S3_REQUEST_TYPE_UPLOAD_PART : {
323324 if (request -> meta_request -> is_express ) {
324325 required_tokens = aws_min_u32 (
325- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
326+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_express_p50_request_latency_ms )),
326327 s_s3_express_upload_throughput_per_connection_mbps );
327328 } else {
328329 required_tokens = aws_min_u32 (
329- ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
330+ ( uint32_t ) ceil (request -> buffer_size * 8 / (MB_TO_BYTES (1 ) * s_s3_p50_request_latency_ms )),
330331 s_s3_upload_throughput_per_connection_mbps );
331332 }
332333 break ;
0 commit comments