On Wed, Sep 04, 2024 at 03:12:33PM GMT, Hongbo Li wrote:
>
>
> On 2024/9/4 15:15, Hongbo Li wrote:
> > Fix the following compilation error:
> >
> > ```
> > fs/bcachefs/sb-members.c: In function ‘bch2_sb_member_alloc’:
> > fs/bcachefs/sb-members.c:508:2: error: a label can only be part of a
> > statement and a declaration is not a statement
> > 508 | unsigned nr_devices = max_t(unsigned, dev_idx + 1,
> > c->sb.nr_devices);
> > ```
> >
> > Fixes: a7d364a133c7 ("bcachefs: bch2_sb_member_alloc()")
> > Signed-off-by: Hongbo Li <[email protected]>
> > ---
> > fs/bcachefs/sb-members.c | 16 ++++++++++------
> > 1 file changed, 10 insertions(+), 6 deletions(-)
> >
> > diff --git a/fs/bcachefs/sb-members.c b/fs/bcachefs/sb-members.c
> > index 2aad62961938..02bcde3c1b02 100644
> > --- a/fs/bcachefs/sb-members.c
> > +++ b/fs/bcachefs/sb-members.c
> > @@ -478,11 +478,15 @@ unsigned bch2_sb_nr_devices(const struct bch_sb *sb)
> > int bch2_sb_member_alloc(struct bch_fs *c)
> > {
> > unsigned dev_idx = c->sb.nr_devices;
> > + struct bch_sb_field_members_v2 *mi;
> > + unsigned nr_devices;
> > + unsigned u64s;
> > + int best = -1;
> > + u64 best_last_mount = 0;
> > +
> > if (dev_idx < BCH_SB_MEMBERS_MAX)
> > goto have_slot;
> > - int best = -1;
> > - u64 best_last_mount = 0;
> > for (dev_idx = 0; dev_idx < BCH_SB_MEMBERS_MAX; dev_idx++) {
> > /* eventually BCH_SB_MEMBERS_MAX will be raised */
> > if (dev_idx == BCH_SB_MEMBER_INVALID)
> > @@ -505,11 +509,11 @@ int bch2_sb_member_alloc(struct bch_fs *c)
> > return -BCH_ERR_ENOSPC_sb_members;
> > have_slot:
> Or add ";" after this label. But I choice move the declared variables to the
> front. May be this way is more closely to the specifications.
Yeah, the first way is fine - thanks! applied.