Linux kernel source tree
Go to file
Petr Machata d0c2f72526 net: DCB: Validate DCB_ATTR_DCB_BUFFER argument
[ Upstream commit 297e77e53e ]

The parameter passed via DCB_ATTR_DCB_BUFFER is a struct dcbnl_buffer. The
field prio2buffer is an array of IEEE_8021Q_MAX_PRIORITIES bytes, where
each value is a number of a buffer to direct that priority's traffic to.
That value is however never validated to lie within the bounds set by
DCBX_MAX_BUFFERS. The only driver that currently implements the callback is
mlx5 (maintainers CCd), and that does not do any validation either, in
particual allowing incorrect configuration if the prio2buffer value does
not fit into 4 bits.

Instead of offloading the need to validate the buffer index to drivers, do
it right there in core, and bounce the request if the value is too large.

CC: Parav Pandit <parav@nvidia.com>
CC: Saeed Mahameed <saeedm@nvidia.com>
Fixes: e549f6f9c0 ("net/dcb: Add dcbnl buffer attribute")
Signed-off-by: Petr Machata <petrm@nvidia.com>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-09-26 18:01:29 +02:00
arch x86/defconfig: Enable CONFIG_USB_XHCI_HCD=y 2020-09-23 12:11:02 +02:00
block block: ensure bdi->io_pages is always initialized 2020-09-12 13:40:22 +02:00
certs
crypto crypto: af_alg - fix use-after-free in af_alg_accept() due to bh_lock_sock() 2020-07-09 09:37:10 +02:00
Documentation affs: fix basic permission bits to actually work 2020-09-09 19:04:30 +02:00
drivers hdlc_ppp: add range checks in ppp_cp_parse_cr() 2020-09-26 18:01:29 +02:00
firmware
fs f2fs: Return EOF on unaligned end of file DIO read 2020-09-23 12:10:59 +02:00
include KVM: MIPS: Change the definition of kvm type 2020-09-23 12:10:59 +02:00
init printk: queue wake_up_klogd irq_work only if per-CPU areas are ready 2020-07-22 09:32:13 +02:00
ipc ipc/util.c: sysvipc_find_ipc() incorrectly updates position index 2020-05-20 08:18:40 +02:00
kernel kprobes: fix kill kprobe which has been marked as gone 2020-09-26 18:01:28 +02:00
lib test_kmod: avoid potential double free in trigger_config_run_type() 2020-08-21 11:05:38 +02:00
LICENSES
mm mm/thp: fix __split_huge_pmd_locked() for migration PMD 2020-09-26 18:01:28 +02:00
net net: DCB: Validate DCB_ATTR_DCB_BUFFER argument 2020-09-26 18:01:29 +02:00
samples samples: bpf: Fix build error 2020-06-03 08:19:31 +02:00
scripts checkpatch: fix the usage of capture group ( ... ) 2020-09-09 19:04:32 +02:00
security Smack: prevent underflow in smk_set_cipso() 2020-08-19 08:14:59 +02:00
sound Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO" 2020-09-23 12:11:01 +02:00
tools perf test: Free formats for perf pmu parse test 2020-09-23 12:11:00 +02:00
usr initramfs: restore default compression behavior 2020-04-13 10:44:59 +02:00
virt KVM: fix memory leak in kvm_io_bus_unregister_dev() 2020-09-26 18:01:28 +02:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS: Update drm/i915 bug filing URL 2020-02-28 16:38:49 +01:00
Makefile Linux 4.19.147 2020-09-23 12:11:02 +02:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.
See Documentation/00-INDEX for a list of what is contained in each file.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.