Whamcloud - gitweb
libext2fs: clean up ext2fs_bg_flags_ interfaces
authorEric Sandeen <sandeen@redhat.com>
Mon, 26 Oct 2009 01:41:32 +0000 (21:41 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 26 Oct 2009 01:41:32 +0000 (21:41 -0400)
commite633b58ac75f2f544b7d6572e37d4b63da31e59c
treeb9dc7c7905f1134bac197d86aadb934a9bf17eec
parent03b9dca63a75731711071e0a7ddef0475d6daf3a
libext2fs: clean up ext2fs_bg_flags_ interfaces

The ext2fs_bg_flag* functions were confusing.

Currently we have this:

void ext2fs_bg_flags_set(ext2_filsys fs, dgrp_t group, __u16 bg_flags);
void ext2fs_bg_flags_clear(ext2_filsys fs, dgrp_t group,__u16 bg_flags);

(_set (unused) sets exactly bg_flags; _clear clears all and ignores bg_flags)

and these, which can twiddle individual bits in bg_flags:

void ext2fs_bg_flag_set(ext2_filsys fs, dgrp_t group, __u16 bg_flag);
void ext2fs_bg_flag_clear(ext2_filsys fs, dgrp_t group, __u16 bg_flag);

A better interface, after the patch below, is just:

ext2fs_bg_flags_zap(fs, group) /* zeros bg_flags */
ext2fs_bg_flags_set(fs, group, flags) /* adds flags to bg_flags */
ext2fs_bg_flags_clear(fs, group, flags) /* clears flags in bg_flags */

and remove the original ext2fs_bg_flags_set / ext2fs_bg_flags_clear.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 files changed:
e2fsck/pass2.c
e2fsck/pass5.c
e2fsck/super.c
lib/ext2fs/alloc.c
lib/ext2fs/alloc_sb.c
lib/ext2fs/alloc_stats.c
lib/ext2fs/alloc_tables.c
lib/ext2fs/blknum.c
lib/ext2fs/csum.c
lib/ext2fs/ext2fs.h
lib/ext2fs/initialize.c
lib/ext2fs/openfs.c
misc/mke2fs.c
resize/resize2fs.c