* Helper function for arc_prune_async() it is responsible for safely * handling the execution of a registered arc_prune_func_t. */
| 478 | * handling the execution of a registered arc_prune_func_t. |
| 479 | */ |
| 480 | static void |
| 481 | arc_prune_task(void *ptr) |
| 482 | { |
| 483 | arc_prune_t *ap = (arc_prune_t *)ptr; |
| 484 | arc_prune_func_t *func = ap->p_pfunc; |
| 485 | |
| 486 | if (func != NULL) |
| 487 | func(ap->p_adjust, ap->p_private); |
| 488 | |
| 489 | zfs_refcount_remove(&ap->p_refcnt, func); |
| 490 | } |
| 491 | |
| 492 | /* |
| 493 | * Notify registered consumers they must drop holds on a portion of the ARC |
nothing calls this directly
no test coverage detected