From: Tonghao Zhang <xiangxia.m.yue@gmail.com> To: Slava Ovsiienko <viacheslavo@mellanox.com> Cc: "dev@dpdk.org" <dev@dpdk.org> Subject: Re: [dpdk-dev] [PATCH dpdk-dev] net/mlx5: check the reg available for metadata action Date: Sun, 24 May 2020 18:47:34 +0800 Message-ID: <CAMDZJNU_v3zU4J1qRB-ARiAFUddcmMc9nbaegzz2vL6AGVroCw@mail.gmail.com> (raw) In-Reply-To: <AM4PR05MB3265C6AF49276F6ED71A708DD2B40@AM4PR05MB3265.eurprd05.prod.outlook.com> On Sat, May 23, 2020 at 1:17 AM Slava Ovsiienko <viacheslavo@mellanox.com> wrote: > > Hi, Tonghao > > Thank you for the patch. > I suppose, the patch should be extended to encompass the routines: > - flow_dv_convert_action_mark > - flow_dv_convert_action_set_meta (done in the patch) > - flow_dv_validate_item_mark > - flow_dv_validate_item_mark > - flow_dv_validate_action_flag > - flow_dv_validate_action_mark > > In action converting routines we should add MLX5_ASSERT() > (returning REG_NONE must not happen there - the wrong > conditions must be filtered out on validation stage) > > One more point - it would be good to add cc:stable@dpdk.org > > Would you like to extend the patch or let us do it? Hi Slava, thanks for your reviews. I haven't done some research for tag/flag/mark so you can send a patch to fix it. and I will sent v2 for metadata action. Thanks. > With best regards, > Slava > > > -----Original Message----- > > From: xiangxia.m.yue@gmail.com <xiangxia.m.yue@gmail.com> > > Sent: Wednesday, May 20, 2020 4:33 > > To: Slava Ovsiienko <viacheslavo@mellanox.com>; dev@dpdk.org > > Cc: Tonghao Zhang <xiangxia.m.yue@gmail.com> > > Subject: [PATCH dpdk-dev] net/mlx5: check the reg available for metadata > > action > > > > From: Tonghao Zhang <xiangxia.m.yue@gmail.com> > > > > If user don't set the dv_xmeta_en to 1 or 2, in the > > flow_dv_convert_action_set_meta function: > > * flow_dv_get_metadata_reg may return the REG_NONE, > > when MLX5_METADATA_FDB enabled for metadata set > > action. > > * reg_to_field(REG_NONE) return MLX5_MODI_OUT_NONE > > which is invalid. > > > > The rdma-core calltrace: > > dr_action_create_modify_action > > dr_actions_convert_modify_header > > dr_action_modify_sw_to_hw > > dr_action_modify_sw_to_hw_set > > dr_ste_get_modify_hdr_hw_field > > > > sw_field [MLX5_MODI_OUT_NONE 4095] > > should not > ste_ctx->modify_hdr_field_arr_sz [92] > > > > As doc[1] says: > > | dv_xmeta_en 0, this is default value, defines the legacy mode, the > > | MARK and META related actions and items operate only within NIC Tx and > > | NIC Rx steering domains, no MARK and META information crosses the > > | domain boundaries. > > > > This patch add check for that case to warn that not supported. > > > > [1] - > > https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdoc.dp > > dk.org%2Fguides- > > 20.02%2Fnics%2Fmlx5.html&data=02%7C01%7Cviacheslavo%40mellan > > ox.com%7C49a86a92f7884fb4d45808d7fc5de31a%7Ca652971c7d2e4d9ba6 > > a4d149256f461b%7C0%7C0%7C637255352498582078&sdata=cDfb%2F > > oJAPNvGhMjUrjmjAE3R%2FH4wUpOI7WcZ5miTLvA%3D&reserved=0 > > > > Signed-off-by: Tonghao Zhang <xiangxia.m.yue@gmail.com> > > --- > > drivers/net/mlx5/mlx5_flow_dv.c | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/drivers/net/mlx5/mlx5_flow_dv.c > > b/drivers/net/mlx5/mlx5_flow_dv.c index e4818319507c..dfcaf90eda11 > > 100644 > > --- a/drivers/net/mlx5/mlx5_flow_dv.c > > +++ b/drivers/net/mlx5/mlx5_flow_dv.c > > @@ -1251,6 +1251,12 @@ flow_dv_convert_action_set_meta > > > > if (reg < 0) > > return reg; > > + > > + if (reg == REG_NONE) > > + return rte_flow_error_set(error, ENOTSUP, > > + RTE_FLOW_ERROR_TYPE_ITEM, > > + NULL, "unavailable " > > + "metadata register"); > > /* > > * In datapath code there is no endianness > > * coversions for perfromance reasons, all > > -- > > 2.26.1 > -- Best regards, Tonghao
next prev parent reply other threads:[~2020-05-24 10:48 UTC|newest] Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-05-20 1:33 xiangxia.m.yue 2020-05-22 17:17 ` Slava Ovsiienko 2020-05-24 10:47 ` Tonghao Zhang [this message] 2020-05-27 7:43 ` Tonghao Zhang 2020-05-24 11:06 ` [dpdk-dev] [PATCH dpdk-dev v2] " xiangxia.m.yue 2020-08-05 17:09 ` Slava Ovsiienko 2020-11-20 14:48 ` [dpdk-dev] [PATCH v3] " Viacheslav Ovsiienko 2020-11-22 13:00 ` Raslan Darawsheh
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CAMDZJNU_v3zU4J1qRB-ARiAFUddcmMc9nbaegzz2vL6AGVroCw@mail.gmail.com \ --to=xiangxia.m.yue@gmail.com \ --cc=dev@dpdk.org \ --cc=viacheslavo@mellanox.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ http://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git