mirror of https://github.com/vitalif/e2fsprogs
blkid: use list_for_each_safe in garbage collection
We need to use list_for_each_safe in case a device gets removed from the list during garbage collection. Also make the manpage slightly more informative about what the -g garbage collection option does. Addresses-Debian-Bug: #487758, #487783 Signed-off-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>bitmap-optimize
parent
bbf6d45359
commit
772b89d342
|
@ -154,13 +154,13 @@ void blkid_put_cache(blkid_cache cache)
|
|||
|
||||
void blkid_gc_cache(blkid_cache cache)
|
||||
{
|
||||
struct list_head *p;
|
||||
struct list_head *p, *pnext;
|
||||
struct stat st;
|
||||
|
||||
if (!cache)
|
||||
return;
|
||||
|
||||
list_for_each(p, &cache->bic_devs) {
|
||||
list_for_each_safe(p, pnext, &cache->bic_devs) {
|
||||
blkid_dev dev = list_entry(p, struct blkid_struct_dev, bid_devs);
|
||||
if (!p)
|
||||
break;
|
||||
|
|
|
@ -61,7 +61,8 @@ scanned but not necessarily available at this time), specify
|
|||
.IR /dev/null.
|
||||
.TP
|
||||
.B \-g
|
||||
Perform a garbage collection pass on the blkid cache.
|
||||
Perform a garbage collection pass on the blkid cache to remove
|
||||
devices which no longer exist.
|
||||
.TP
|
||||
.B \-h
|
||||
Display a usage message and exit.
|
||||
|
|
Loading…
Reference in New Issue