diff options
Diffstat (limited to 'mm/slob.c')
| -rw-r--r-- | mm/slob.c | 7 |
1 files changed, 4 insertions, 3 deletions
| @@ -360,7 +360,7 @@ static void slob_free(void *block, int size) | |||
| 360 | slobidx_t units; | 360 | slobidx_t units; |
| 361 | unsigned long flags; | 361 | unsigned long flags; |
| 362 | 362 | ||
| 363 | if (ZERO_OR_NULL_PTR(block)) | 363 | if (unlikely(ZERO_OR_NULL_PTR(block))) |
| 364 | return; | 364 | return; |
| 365 | BUG_ON(!size); | 365 | BUG_ON(!size); |
| 366 | 366 | ||
| @@ -466,7 +466,7 @@ void kfree(const void *block) | |||
| 466 | { | 466 | { |
| 467 | struct slob_page *sp; | 467 | struct slob_page *sp; |
| 468 | 468 | ||
| 469 | if (ZERO_OR_NULL_PTR(block)) | 469 | if (unlikely(ZERO_OR_NULL_PTR(block))) |
| 470 | return; | 470 | return; |
| 471 | 471 | ||
| 472 | sp = (struct slob_page *)virt_to_page(block); | 472 | sp = (struct slob_page *)virt_to_page(block); |
| @@ -484,7 +484,8 @@ size_t ksize(const void *block) | |||
| 484 | { | 484 | { |
| 485 | struct slob_page *sp; | 485 | struct slob_page *sp; |
| 486 | 486 | ||
| 487 | if (ZERO_OR_NULL_PTR(block)) | 487 | BUG_ON(!block); |
| 488 | if (unlikely(block == ZERO_SIZE_PTR)) | ||
| 488 | return 0; | 489 | return 0; |
| 489 | 490 | ||
| 490 | sp = (struct slob_page *)virt_to_page(block); | 491 | sp = (struct slob_page *)virt_to_page(block); |
