diff options
| author | Jeff Garzik <jgarzik@pobox.com> | 2005-10-26 01:08:05 -0400 | 
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2005-10-26 01:08:05 -0400 | 
| commit | ccd7bc2f67fdfa9c47ceae64f1117d1fb6cb8737 (patch) | |
| tree | 33b13cd5582c419f8ae098edb24ca355974a7ccf /lib/idr.c | |
| parent | 6f0ef4fa57b9ba27d7b1c330bad041f1665501fe (diff) | |
| parent | 6693e74a16ef563960764bd963f1048392135c3c (diff) | |
Merge branch 'master'
Diffstat (limited to 'lib/idr.c')
| -rw-r--r-- | lib/idr.c | 13 | 
1 files changed, 13 insertions, 0 deletions
| @@ -346,6 +346,19 @@ void idr_remove(struct idr *idp, int id) | |||
| 346 | EXPORT_SYMBOL(idr_remove); | 346 | EXPORT_SYMBOL(idr_remove); | 
| 347 | 347 | ||
| 348 | /** | 348 | /** | 
| 349 | * idr_destroy - release all cached layers within an idr tree | ||
| 350 | * idp: idr handle | ||
| 351 | */ | ||
| 352 | void idr_destroy(struct idr *idp) | ||
| 353 | { | ||
| 354 | while (idp->id_free_cnt) { | ||
| 355 | struct idr_layer *p = alloc_layer(idp); | ||
| 356 | kmem_cache_free(idr_layer_cache, p); | ||
| 357 | } | ||
| 358 | } | ||
| 359 | EXPORT_SYMBOL(idr_destroy); | ||
| 360 | |||
| 361 | /** | ||
| 349 | * idr_find - return pointer for given id | 362 | * idr_find - return pointer for given id | 
| 350 | * @idp: idr handle | 363 | * @idp: idr handle | 
| 351 | * @id: lookup key | 364 | * @id: lookup key | 
