Merged,
Maxim.

On 03/27/15 01:10, Bill Fischofer wrote:


On Thu, Mar 26, 2015 at 8:30 AM, <[email protected] <mailto:[email protected]>> wrote:

    From: Balasubramanian Manoharan <[email protected]
    <mailto:[email protected]>>


Reviewed-and-tested-by: Bill Fischofer <[email protected] <mailto:[email protected]>>


    Fix for incorrect pmr_term_value update in odp_pmr_create_match()
    and odp_pmr_create_range() functions.
    Fixes https://bugs.linaro.org/show_bug.cgi?id=1381

    Signed-off-by: Balasubramanian Manoharan
    <[email protected] <mailto:[email protected]>>
    ---
    v2: Fixes checkpatch issue pointed by Bill

     platform/linux-generic/odp_classification.c | 5 ++++-
     1 file changed, 4 insertions(+), 1 deletion(-)

    diff --git a/platform/linux-generic/odp_classification.c
    b/platform/linux-generic/odp_classification.c
    index 9fb034f..609faa9 100644
    --- a/platform/linux-generic/odp_classification.c
    +++ b/platform/linux-generic/odp_classification.c
    @@ -438,6 +438,7 @@ odp_pmr_t odp_pmr_create_match(odp_pmr_term_e
    term,
            pmr->s.pmr_term_value[0].mask.mask =  0;
            memcpy(&pmr->s.pmr_term_value[0].mask.val, val, val_sz);
            memcpy(&pmr->s.pmr_term_value[0].mask.mask, mask, val_sz);
    +       pmr->s.pmr_term_value[0].mask.val &=
    pmr->s.pmr_term_value[0].mask.mask;
            UNLOCK(&pmr->s.lock);
            return id;
     }
    @@ -460,7 +461,7 @@ odp_pmr_t odp_pmr_create_range(odp_pmr_term_e
    term,
                    return ODP_PMR_INVAL;

            pmr->s.num_pmr = 1;
    -       pmr->s.pmr_term_value[0].match_type = ODP_PMR_MASK;
    +       pmr->s.pmr_term_value[0].match_type = ODP_PMR_RANGE;
            pmr->s.pmr_term_value[0].term = term;
            pmr->s.pmr_term_value[0].range.val1 =  0;
            pmr->s.pmr_term_value[0].range.val2 =  0;
    @@ -601,6 +602,8 @@ int odp_pmr_match_set_create(int num_terms,
    odp_pmr_match_t *terms,
                                   terms[i].mask.val, val_sz);
    memcpy(&pmr->s.pmr_term_value[i].mask.mask,
                                   terms[i].mask.mask, val_sz);
    +  pmr->s.pmr_term_value[i].mask.val &= pmr->s
    +  .pmr_term_value[i].mask.mask;
                    } else {
                            val_sz = terms[i].range.val_sz;
                            if (val_sz > ODP_PMR_TERM_BYTES_MAX)
    --
    2.0.1.472.g6f92e5f


    _______________________________________________
    lng-odp mailing list
    [email protected] <mailto:[email protected]>
    http://lists.linaro.org/mailman/listinfo/lng-odp




_______________________________________________
lng-odp mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/lng-odp


_______________________________________________
lng-odp mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to