Hi stable,

Please pick up the following for the 3.14 stable series.  It's been in
mainline since 3.15-rc1.

commit 48a163dbb517eba13643bf404a0d695c1ab0a60d
Author: Ilya Dryomov <[email protected]>
Date:   Wed Mar 19 16:58:36 2014 +0200

    crush: fix off-by-one errors in total_tries refactor

    Back in 27f4d1f6bc32c2ed7b2c5080cbd58b14df622607 we refactored the CRUSH
    code to allow adjustment of the retry counts on a per-pool basis.  That
    commit had an off-by-one bug: the previous "tries" counter was a *retry*
    count, not a *try* count, but the new code was passing in 1 meaning
    there should be no retries.

    Fix the ftotal vs tries comparison to use < instead of <= to fix the
    problem.  Note that the original code used <= here, which means the
    global "choose_total_tries" tunable is actually counting retries.
    Compensate for that by adding 1 in crush_do_rule when we pull the tunable
    into the local variable.

    This was noticed looking at output from a user provided osdmap.
    Unfortunately the map doesn't illustrate the change in mapping behavior
    and I haven't managed to construct one yet that does.  Inspection of the
    crush debug output now aligns with prior versions, though.

    Reflects ceph.git commit 795704fd615f0b008dcc81aa088a859b2d075138.

    Signed-off-by: Ilya Dryomov <[email protected]>
    Reviewed-by: Josh Durgin <[email protected]>

Thanks,

                Ilya
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to