lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ef8c59a0-be86-4ddc-b25a-d198051f12b2@mojatatu.com>
Date: Wed, 16 Apr 2025 09:21:53 -0300
From: Victor Nogueira <victor@...atatu.com>
To: chia-yu.chang@...ia-bell-labs.com, netdev@...r.kernel.org,
 dave.taht@...il.com, pabeni@...hat.com, jhs@...atatu.com, kuba@...nel.org,
 stephen@...workplumber.org, xiyou.wangcong@...il.com, jiri@...nulli.us,
 davem@...emloft.net, edumazet@...gle.com, horms@...nel.org,
 andrew+netdev@...n.ch, donald.hunter@...il.com, ast@...erby.net,
 liuhangbin@...il.com, shuah@...nel.org, linux-kselftest@...r.kernel.org,
 ij@...nel.org, ncardwell@...gle.com, koen.de_schepper@...ia-bell-labs.com,
 g.white@...lelabs.com, ingemar.s.johansson@...csson.com,
 mirja.kuehlewind@...csson.com, cheshire@...le.com, rs.ietf@....at,
 Jason_Livingood@...cast.com, vidhi_goel@...le.com
Cc: Olga Albisser <olga@...isser.org>,
 Oliver Tilmans <olivier.tilmans@...ia.com>,
 Bob Briscoe <research@...briscoe.net>, Henrik Steen <henrist@...rist.net>
Subject: Re: [PATCH v5 RESEND iproute2-next 1/1] tc: add dualpi2 scheduler
 module

On 4/14/25 10:18, chia-yu.chang@...ia-bell-labs.com wrote:
> From: Chia-Yu Chang <chia-yu.chang@...ia-bell-labs.com>
> 
> DUALPI2 AQM is a combination of the DUALQ Coupled-AQM with a PI2
> base-AQM. The PI2 AQM is in turn both an extension and a simplification
> of the PIE AQM. PI2 makes quite some PIE heuristics unnecessary, while
> being able to control scalable congestion controls like TCP-Prague.
> With PI2, both Reno/Cubic can be used in parallel with Prague,
> maintaining window fairness. DUALQ provides latency separation between
> low latency Prague flows and Reno/Cubic flows that need a bigger queue.
> 
> This patch adds support to tc to configure it through its netlink
> interface.
> 
> Signed-off-by: Chia-Yu Chang <chia-yu.chang@...ia-bell-labs.com>
> Co-developed-by: Olga Albisser <olga@...isser.org>
> Signed-off-by: Olga Albisser <olga@...isser.org>
> Co-developed-by: Koen De Schepper <koen.de_schepper@...ia-bell-labs.com>
> Signed-off-by: Koen De Schepper <koen.de_schepper@...ia-bell-labs.com>
> Co-developed-by: Oliver Tilmans <olivier.tilmans@...ia.com>
> Signed-off-by: Oliver Tilmans <olivier.tilmans@...ia.com>
> Signed-off-by: Bob Briscoe <research@...briscoe.net>
> Co-developed-by: Henrik Steen <henrist@...rist.net>
> Signed-off-by: Henrik Steen <henrist@...rist.net>
> ---
>   bash-completion/tc             |  11 +-
>   include/uapi/linux/pkt_sched.h |  39 +++
>   include/utils.h                |   2 +
>   ip/iplink_can.c                |  14 -
>   lib/utils.c                    |  30 ++
>   man/man8/tc-dualpi2.8          | 249 ++++++++++++++++
>   tc/Makefile                    |   1 +
>   tc/q_dualpi2.c                 | 519 +++++++++++++++++++++++++++++++++
>   8 files changed, 850 insertions(+), 15 deletions(-)
>   create mode 100644 man/man8/tc-dualpi2.8
>   create mode 100644 tc/q_dualpi2.c

Hi!

I compiled your patch and am seeing the following warnings:

q_dualpi2.c: In function 'dualpi2_parse_opt':
q_dualpi2.c:218:37: warning: pointer targets in passing argument 1 of 
'get_u32' differ in signedness [-Wpointer-sign]
   218 |                         if (get_u32(&min_qlen_step, *argv, 10)) {
       |                                     ^~~~~~~~~~~~~~
       |                                     |
       |                                     int32_t * {aka int *}
In file included from q_dualpi2.c:39:
../include/utils.h:157:20: note: expected '__u32 *' {aka 'unsigned int 
*'} but argument is of type 'int32_t *' {aka 'int *'}
   157 | int get_u32(__u32 *val, const char *arg, int base);
       |             ~~~~~~~^~~
q_dualpi2.c: At top level:
q_dualpi2.c:516:27: warning: initialization of 'int (*)(const struct 
qdisc_util *, int,  char **, struct nlmsghdr *, const char *)' from 
incompatible pointer type 'int (*)(struct qdisc_util *, int,  char **, 
struct nlmsghdr *, const char *)' [-Wincompatible-pointer-types]
   516 |         .parse_qopt     = dualpi2_parse_opt,
       |                           ^~~~~~~~~~~~~~~~~
q_dualpi2.c:516:27: note: (near initialization for 
'dualpi2_qdisc_util.parse_qopt')
q_dualpi2.c:517:27: warning: initialization of 'int (*)(const struct 
qdisc_util *, FILE *, struct rtattr *)' from incompatible pointer type 
'int (*)(struct qdisc_util *, FILE *, struct rtattr *)' 
[-Wincompatible-pointer-types]
   517 |         .print_qopt     = dualpi2_print_opt,
       |                           ^~~~~~~~~~~~~~~~~
q_dualpi2.c:517:27: note: (near initialization for 
'dualpi2_qdisc_util.print_qopt')
q_dualpi2.c:518:27: warning: initialization of 'int (*)(const struct 
qdisc_util *, FILE *, struct rtattr *)' from incompatible pointer type 
'int (*)(struct qdisc_util *, FILE *, struct rtattr *)' 
[-Wincompatible-pointer-types]
   518 |         .print_xstats   = dualpi2_print_xstats,
       |                           ^~~~~~~~~~~~~~~~~~~~
q_dualpi2.c:518:27: note: (near initialization for 
'dualpi2_qdisc_util.print_xstats')

cheers,
Victor

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ