* [PATCH iproute2 0/3] dcb: Fixes
@ 2021-01-01 23:25 Petr Machata
2021-01-01 23:25 ` [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type Petr Machata
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Petr Machata @ 2021-01-01 23:25 UTC (permalink / raw)
To: netdev, dsahern, stephen; +Cc: Petr Machata
dcb currently sends all netlink messages with a type RTM_GETDCB, even the
set ones. In patch #1, send the setters as RTM_SETDCB.
In patch #2, plug a leak.
In patch #3, change the command line option for namespace change from
devlink-like -N / --Netns to ip-like -n / --netns.
Petr Machata (3):
dcb: Set values with RTM_SETDCB type
dcb: Plug a leaking DCB socket buffer
dcb: Change --Netns/-N to --netns/-n
dcb/dcb.c | 11 ++++++-----
man/man8/dcb.8 | 7 +++++++
2 files changed, 13 insertions(+), 5 deletions(-)
--
2.26.2
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type 2021-01-01 23:25 [PATCH iproute2 0/3] dcb: Fixes Petr Machata @ 2021-01-01 23:25 ` Petr Machata 2021-01-02 17:34 ` Stephen Hemminger 2021-01-01 23:25 ` [PATCH iproute2 2/3] dcb: Plug a leaking DCB socket buffer Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 3/3] dcb: Change --Netns/-N to --netns/-n Petr Machata 2 siblings, 1 reply; 7+ messages in thread From: Petr Machata @ 2021-01-01 23:25 UTC (permalink / raw) To: netdev, dsahern, stephen; +Cc: Petr Machata dcb currently sends all netlink messages with a type RTM_GETDCB, even the set ones. Change to the appropriate type. Signed-off-by: Petr Machata <me@pmachata.org> --- dcb/dcb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dcb/dcb.c b/dcb/dcb.c index adec57476e1d..f5c62790e27e 100644 --- a/dcb/dcb.c +++ b/dcb/dcb.c @@ -177,7 +177,7 @@ int dcb_set_attribute(struct dcb *dcb, const char *dev, int attr, const void *da struct nlattr *nest; int ret; - nlh = dcb_prepare(dcb, dev, RTM_GETDCB, DCB_CMD_IEEE_SET); + nlh = dcb_prepare(dcb, dev, RTM_SETDCB, DCB_CMD_IEEE_SET); nest = mnl_attr_nest_start(nlh, DCB_ATTR_IEEE); mnl_attr_put(nlh, attr, data_len, data); -- 2.26.2 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type 2021-01-01 23:25 ` [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type Petr Machata @ 2021-01-02 17:34 ` Stephen Hemminger 2021-01-03 10:47 ` Petr Machata 0 siblings, 1 reply; 7+ messages in thread From: Stephen Hemminger @ 2021-01-02 17:34 UTC (permalink / raw) To: Petr Machata; +Cc: netdev, dsahern On Sat, 2 Jan 2021 00:25:50 +0100 Petr Machata <me@pmachata.org> wrote: > dcb currently sends all netlink messages with a type RTM_GETDCB, even the > set ones. Change to the appropriate type. > > Signed-off-by: Petr Machata <me@pmachata.org> > --- > dcb/dcb.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/dcb/dcb.c b/dcb/dcb.c > index adec57476e1d..f5c62790e27e 100644 > --- a/dcb/dcb.c > +++ b/dcb/dcb.c > @@ -177,7 +177,7 @@ int dcb_set_attribute(struct dcb *dcb, const char *dev, int attr, const void *da > struct nlattr *nest; > int ret; > > - nlh = dcb_prepare(dcb, dev, RTM_GETDCB, DCB_CMD_IEEE_SET); > + nlh = dcb_prepare(dcb, dev, RTM_SETDCB, DCB_CMD_IEEE_SET); > > nest = mnl_attr_nest_start(nlh, DCB_ATTR_IEEE); > mnl_attr_put(nlh, attr, data_len, data); Should I add fixes tag to this? ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type 2021-01-02 17:34 ` Stephen Hemminger @ 2021-01-03 10:47 ` Petr Machata 2021-01-03 18:22 ` Stephen Hemminger 0 siblings, 1 reply; 7+ messages in thread From: Petr Machata @ 2021-01-03 10:47 UTC (permalink / raw) To: Stephen Hemminger; +Cc: netdev, dsahern Stephen Hemminger <stephen@networkplumber.org> writes: > On Sat, 2 Jan 2021 00:25:50 +0100 > Petr Machata <me@pmachata.org> wrote: > >> dcb currently sends all netlink messages with a type RTM_GETDCB, even the >> set ones. Change to the appropriate type. >> >> Signed-off-by: Petr Machata <me@pmachata.org> >> --- >> dcb/dcb.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/dcb/dcb.c b/dcb/dcb.c >> index adec57476e1d..f5c62790e27e 100644 >> --- a/dcb/dcb.c >> +++ b/dcb/dcb.c >> @@ -177,7 +177,7 @@ int dcb_set_attribute(struct dcb *dcb, const char *dev, int attr, const void *da >> struct nlattr *nest; >> int ret; >> >> - nlh = dcb_prepare(dcb, dev, RTM_GETDCB, DCB_CMD_IEEE_SET); >> + nlh = dcb_prepare(dcb, dev, RTM_SETDCB, DCB_CMD_IEEE_SET); >> >> nest = mnl_attr_nest_start(nlh, DCB_ATTR_IEEE); >> mnl_attr_put(nlh, attr, data_len, data); > > Should I add fixes tag to this? Ha, I forgot that Fixes: tags are a thing in iproute2. Sorry about that, I'll resend. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type 2021-01-03 10:47 ` Petr Machata @ 2021-01-03 18:22 ` Stephen Hemminger 0 siblings, 0 replies; 7+ messages in thread From: Stephen Hemminger @ 2021-01-03 18:22 UTC (permalink / raw) To: Petr Machata; +Cc: netdev, dsahern On Sun, 03 Jan 2021 11:47:46 +0100 Petr Machata <me@pmachata.org> wrote: > Stephen Hemminger <stephen@networkplumber.org> writes: > > > On Sat, 2 Jan 2021 00:25:50 +0100 > > Petr Machata <me@pmachata.org> wrote: > > > >> dcb currently sends all netlink messages with a type RTM_GETDCB, even the > >> set ones. Change to the appropriate type. > >> > >> Signed-off-by: Petr Machata <me@pmachata.org> > >> --- > >> dcb/dcb.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > >> > >> diff --git a/dcb/dcb.c b/dcb/dcb.c > >> index adec57476e1d..f5c62790e27e 100644 > >> --- a/dcb/dcb.c > >> +++ b/dcb/dcb.c > >> @@ -177,7 +177,7 @@ int dcb_set_attribute(struct dcb *dcb, const char *dev, int attr, const void *da > >> struct nlattr *nest; > >> int ret; > >> > >> - nlh = dcb_prepare(dcb, dev, RTM_GETDCB, DCB_CMD_IEEE_SET); > >> + nlh = dcb_prepare(dcb, dev, RTM_SETDCB, DCB_CMD_IEEE_SET); > >> > >> nest = mnl_attr_nest_start(nlh, DCB_ATTR_IEEE); > >> mnl_attr_put(nlh, attr, data_len, data); > > > > Should I add fixes tag to this? > > Ha, I forgot that Fixes: tags are a thing in iproute2. Sorry about that, > I'll resend. Thanks, Fixes are mainly to help out distribution maintainers who want to backport to older versions. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH iproute2 2/3] dcb: Plug a leaking DCB socket buffer 2021-01-01 23:25 [PATCH iproute2 0/3] dcb: Fixes Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type Petr Machata @ 2021-01-01 23:25 ` Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 3/3] dcb: Change --Netns/-N to --netns/-n Petr Machata 2 siblings, 0 replies; 7+ messages in thread From: Petr Machata @ 2021-01-01 23:25 UTC (permalink / raw) To: netdev, dsahern, stephen; +Cc: Petr Machata DCB socket buffer is allocated in dcb_init(), but never freed(). Free it in dcb_fini(). Signed-off-by: Petr Machata <me@pmachata.org> --- dcb/dcb.c | 1 + 1 file changed, 1 insertion(+) diff --git a/dcb/dcb.c b/dcb/dcb.c index f5c62790e27e..0e3c87484f2a 100644 --- a/dcb/dcb.c +++ b/dcb/dcb.c @@ -38,6 +38,7 @@ static void dcb_fini(struct dcb *dcb) { delete_json_obj_plain(); mnl_socket_close(dcb->nl); + free(dcb->buf); } static struct dcb *dcb_alloc(void) -- 2.26.2 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH iproute2 3/3] dcb: Change --Netns/-N to --netns/-n 2021-01-01 23:25 [PATCH iproute2 0/3] dcb: Fixes Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 2/3] dcb: Plug a leaking DCB socket buffer Petr Machata @ 2021-01-01 23:25 ` Petr Machata 2 siblings, 0 replies; 7+ messages in thread From: Petr Machata @ 2021-01-01 23:25 UTC (permalink / raw) To: netdev, dsahern, stephen; +Cc: Petr Machata This to keep compatible with the major tools, ip and tc. Also document the option in the man page, which was neglected. Signed-off-by: Petr Machata <me@pmachata.org> --- dcb/dcb.c | 8 ++++---- man/man8/dcb.8 | 7 +++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/dcb/dcb.c b/dcb/dcb.c index 0e3c87484f2a..6640deef5688 100644 --- a/dcb/dcb.c +++ b/dcb/dcb.c @@ -332,7 +332,7 @@ static void dcb_help(void) { fprintf(stderr, "Usage: dcb [ OPTIONS ] OBJECT { COMMAND | help }\n" - " dcb [ -f | --force ] { -b | --batch } filename [ -N | --Netns ] netnsname\n" + " dcb [ -f | --force ] { -b | --batch } filename [ -n | --netns ] netnsname\n" "where OBJECT := { buffer | ets | maxrate | pfc }\n" " OPTIONS := [ -V | --Version | -i | --iec | -j | --json\n" " | -p | --pretty | -s | --statistics | -v | --verbose]\n"); @@ -379,7 +379,7 @@ int main(int argc, char **argv) { "json", no_argument, NULL, 'j' }, { "pretty", no_argument, NULL, 'p' }, { "statistics", no_argument, NULL, 's' }, - { "Netns", required_argument, NULL, 'N' }, + { "netns", required_argument, NULL, 'n' }, { "help", no_argument, NULL, 'h' }, { NULL, 0, NULL, 0 } }; @@ -396,7 +396,7 @@ int main(int argc, char **argv) return EXIT_FAILURE; } - while ((opt = getopt_long(argc, argv, "b:fhijpsvN:V", + while ((opt = getopt_long(argc, argv, "b:fhijn:psvV", long_options, NULL)) >= 0) { switch (opt) { @@ -419,7 +419,7 @@ int main(int argc, char **argv) case 's': dcb->stats = true; break; - case 'N': + case 'n': if (netns_switch(optarg)) { ret = EXIT_FAILURE; goto dcb_free; diff --git a/man/man8/dcb.8 b/man/man8/dcb.8 index 5964f25d386d..7293bb303577 100644 --- a/man/man8/dcb.8 +++ b/man/man8/dcb.8 @@ -27,6 +27,13 @@ dcb \- show / manipulate DCB (Data Center Bridging) settings .SH OPTIONS +.TP +.BR "\-n" , " \--netns " <NETNS> +switches +.B dcb +to the specified network namespace +.IR NETNS . + .TP .BR "\-V" , " --Version" Print the version of the -- 2.26.2 ^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-01-03 18:23 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-01-01 23:25 [PATCH iproute2 0/3] dcb: Fixes Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 1/3] dcb: Set values with RTM_SETDCB type Petr Machata 2021-01-02 17:34 ` Stephen Hemminger 2021-01-03 10:47 ` Petr Machata 2021-01-03 18:22 ` Stephen Hemminger 2021-01-01 23:25 ` [PATCH iproute2 2/3] dcb: Plug a leaking DCB socket buffer Petr Machata 2021-01-01 23:25 ` [PATCH iproute2 3/3] dcb: Change --Netns/-N to --netns/-n Petr Machata
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).