@@ -226,6 +226,7 @@ checkErrorAndSetLastProvider(umf_result_t result,
226
226
umf_result_t umfMemoryProviderAlloc (umf_memory_provider_handle_t hProvider ,
227
227
size_t size , size_t alignment , void * * ptr ) {
228
228
UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
229
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
229
230
umf_result_t res =
230
231
hProvider -> ops .alloc (hProvider -> provider_priv , size , alignment , ptr );
231
232
checkErrorAndSetLastProvider (res , hProvider );
@@ -258,6 +259,7 @@ umf_result_t
258
259
umfMemoryProviderGetRecommendedPageSize (umf_memory_provider_handle_t hProvider ,
259
260
size_t size , size_t * pageSize ) {
260
261
UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
262
+ UMF_CHECK ((pageSize != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
261
263
umf_result_t res = hProvider -> ops .get_recommended_page_size (
262
264
hProvider -> provider_priv , size , pageSize );
263
265
checkErrorAndSetLastProvider (res , hProvider );
@@ -268,6 +270,7 @@ umf_result_t
268
270
umfMemoryProviderGetMinPageSize (umf_memory_provider_handle_t hProvider ,
269
271
void * ptr , size_t * pageSize ) {
270
272
UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
273
+ UMF_CHECK ((pageSize != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
271
274
umf_result_t res = hProvider -> ops .get_min_page_size (
272
275
hProvider -> provider_priv , ptr , pageSize );
273
276
checkErrorAndSetLastProvider (res , hProvider );
@@ -282,6 +285,7 @@ const char *umfMemoryProviderGetName(umf_memory_provider_handle_t hProvider) {
282
285
umf_result_t umfMemoryProviderPurgeLazy (umf_memory_provider_handle_t hProvider ,
283
286
void * ptr , size_t size ) {
284
287
UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
288
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
285
289
umf_result_t res =
286
290
hProvider -> ops .ext .purge_lazy (hProvider -> provider_priv , ptr , size );
287
291
checkErrorAndSetLastProvider (res , hProvider );
@@ -291,6 +295,7 @@ umf_result_t umfMemoryProviderPurgeLazy(umf_memory_provider_handle_t hProvider,
291
295
umf_result_t umfMemoryProviderPurgeForce (umf_memory_provider_handle_t hProvider ,
292
296
void * ptr , size_t size ) {
293
297
UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
298
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
294
299
umf_result_t res =
295
300
hProvider -> ops .ext .purge_force (hProvider -> provider_priv , ptr , size );
296
301
checkErrorAndSetLastProvider (res , hProvider );
@@ -305,15 +310,11 @@ umf_result_t
305
310
umfMemoryProviderAllocationSplit (umf_memory_provider_handle_t hProvider ,
306
311
void * ptr , size_t totalSize ,
307
312
size_t firstSize ) {
308
- if (!ptr ) {
309
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
310
- }
311
- if (firstSize == 0 || totalSize == 0 ) {
312
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
313
- }
314
- if (firstSize >= totalSize ) {
315
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
316
- }
313
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
314
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
315
+ UMF_CHECK ((firstSize != 0 && totalSize != 0 ),
316
+ UMF_RESULT_ERROR_INVALID_ARGUMENT );
317
+ UMF_CHECK ((firstSize < totalSize ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
317
318
318
319
umf_result_t res = hProvider -> ops .ext .allocation_split (
319
320
hProvider -> provider_priv , ptr , totalSize , firstSize );
@@ -325,18 +326,13 @@ umf_result_t
325
326
umfMemoryProviderAllocationMerge (umf_memory_provider_handle_t hProvider ,
326
327
void * lowPtr , void * highPtr ,
327
328
size_t totalSize ) {
328
- if (!lowPtr || !highPtr ) {
329
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
330
- }
331
- if (totalSize == 0 ) {
332
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
333
- }
334
- if ((uintptr_t )lowPtr >= (uintptr_t )highPtr ) {
335
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
336
- }
337
- if ((uintptr_t )highPtr - (uintptr_t )lowPtr > totalSize ) {
338
- return UMF_RESULT_ERROR_INVALID_ARGUMENT ;
339
- }
329
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
330
+ UMF_CHECK ((lowPtr && highPtr ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
331
+ UMF_CHECK ((totalSize != 0 ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
332
+ UMF_CHECK (((uintptr_t )lowPtr < (uintptr_t )highPtr ),
333
+ UMF_RESULT_ERROR_INVALID_ARGUMENT );
334
+ UMF_CHECK (((uintptr_t )highPtr - (uintptr_t )lowPtr < totalSize ),
335
+ UMF_RESULT_ERROR_INVALID_ARGUMENT );
340
336
341
337
umf_result_t res = hProvider -> ops .ext .allocation_merge (
342
338
hProvider -> provider_priv , lowPtr , highPtr , totalSize );
@@ -347,6 +343,8 @@ umfMemoryProviderAllocationMerge(umf_memory_provider_handle_t hProvider,
347
343
umf_result_t
348
344
umfMemoryProviderGetIPCHandleSize (umf_memory_provider_handle_t hProvider ,
349
345
size_t * size ) {
346
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
347
+ UMF_CHECK ((size != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
350
348
return hProvider -> ops .ipc .get_ipc_handle_size (hProvider -> provider_priv ,
351
349
size );
352
350
}
@@ -355,27 +353,37 @@ umf_result_t
355
353
umfMemoryProviderGetIPCHandle (umf_memory_provider_handle_t hProvider ,
356
354
const void * ptr , size_t size ,
357
355
void * providerIpcData ) {
356
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
357
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
358
+ UMF_CHECK ((providerIpcData != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
358
359
return hProvider -> ops .ipc .get_ipc_handle (hProvider -> provider_priv , ptr ,
359
360
size , providerIpcData );
360
361
}
361
362
362
363
umf_result_t
363
364
umfMemoryProviderPutIPCHandle (umf_memory_provider_handle_t hProvider ,
364
365
void * providerIpcData ) {
366
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
367
+ UMF_CHECK ((providerIpcData != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
365
368
return hProvider -> ops .ipc .put_ipc_handle (hProvider -> provider_priv ,
366
369
providerIpcData );
367
370
}
368
371
369
372
umf_result_t
370
373
umfMemoryProviderOpenIPCHandle (umf_memory_provider_handle_t hProvider ,
371
374
void * providerIpcData , void * * ptr ) {
375
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
376
+ UMF_CHECK ((providerIpcData != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
377
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
372
378
return hProvider -> ops .ipc .open_ipc_handle (hProvider -> provider_priv ,
373
379
providerIpcData , ptr );
374
380
}
375
381
376
382
umf_result_t
377
383
umfMemoryProviderCloseIPCHandle (umf_memory_provider_handle_t hProvider ,
378
384
void * ptr , size_t size ) {
385
+ UMF_CHECK ((hProvider != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
386
+ UMF_CHECK ((ptr != NULL ), UMF_RESULT_ERROR_INVALID_ARGUMENT );
379
387
return hProvider -> ops .ipc .close_ipc_handle (hProvider -> provider_priv , ptr ,
380
388
size );
381
389
}
0 commit comments