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-next>] [day] [month] [year] [list]
Date:   Tue, 18 Apr 2023 14:39:43 +0300
From:   Vladimir Oltean <vladimir.oltean@....com>
To:     netdev@...r.kernel.org
Cc:     David Ahern <dsahern@...nel.org>,
        Stephen Hemminger <stephen@...workplumber.org>
Subject: [PATCH v2 iproute2-next 00/10] Add tc-mqprio and tc-taprio support for preemptible traffic classes

This is the iproute2 support for the tc program to make use of the
kernel features added in commit f7d29571ab0a ("Merge branch
'add-kernel-tc-mqprio-and-tc-taprio-support-for-preemptible-traffic-classes'").

The state of the man pages prior to this work was a bit unsatisfactory,
so patches 03-07 contain some man page cleanup in tc-taprio(8) and
tc-mqprio(8).

I don't know exactly what's the deal with syncing the main branch
between iproute2.git and iproute2-next.git. This patch set applies on
top of today's iproute2-next.git main branch, *merged* with today's
iproute2.git main branch. If I had formatted it directly on
iproute2-next, patch 04 would have conflicted with iproute2 change
ce4068f22db4 ("man: tc-mqprio: extend prio-tc-queue mapping with
examples"). I would recommend merging the 2 trees before applying this
series to iproute2-next.

It may be desirable for patches 01-06 to go to iproute2.git, so I've
sorted those to be first, in order to make that possible.

I also dared to sync the kernel headers and provide a commit (07/10) in
the same form as David Ahern does it. The automated script was:

  #!/bin/bash

  UAPI_FOLDER=include/uapi/
  # Built with "make -j 8 headers_install O=headers"
  KERNEL_HEADERS=/opt/net-next/headers/usr/include

  for file in $(find ${UAPI_FOLDER} -type f); do
  	filename="${file##$UAPI_FOLDER}"
  	rsync -avr "$KERNEL_HEADERS/$filename" "$file"
  done

FWIW, this kernel patch depends on frame preemption being available in
iproute2:
https://lore.kernel.org/netdev/20230418111459.811553-1-vladimir.oltean@nxp.com/

Vladimir Oltean (10):
  tc/taprio: add max-sdu to the man page SYNOPSIS section
  tc/taprio: add a size table to the examples from the man page
  tc/mqprio: fix stray ] in man page synopsis
  tc/mqprio: use words in man page to express min_rate/max_rate
    dependency on bw_rlimit
  tc/mqprio: break up synopsis into multiple lines
  tc/taprio: break up help text into multiple lines
  Update kernel headers
  utils: add max() definition
  tc/mqprio: add support for preemptible traffic classes
  tc/taprio: add support for preemptible traffic classes

 include/uapi/linux/bpf.h       |  61 +++++++++++++++----
 include/uapi/linux/pkt_sched.h |  17 ++++++
 include/utils.h                |   8 +++
 man/man8/tc-mqprio.8           |  92 ++++++++++++++++++++--------
 man/man8/tc-taprio.8           |  27 +++++++--
 tc/q_mqprio.c                  |  99 ++++++++++++++++++++++++++++++
 tc/q_taprio.c                  | 108 ++++++++++++++++++++++++---------
 7 files changed, 345 insertions(+), 67 deletions(-)

-- 
2.34.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ