https://github.com/torvalds/linux
Revision 92214be5979c0961a471b7eaaaeacab41bdf456c authored by Rahul Rameshbabu on 14 November 2023, 21:58:42 UTC, committed by Jakub Kicinski on 16 November 2023, 06:34:31 UTC
Previously, mlx5e_ptp_poll_ts_cq would update the device doorbell with the
incremented consumer index after the relevant software counters in the
kernel were updated. In the mlx5e_sq_xmit_wqe context, this would lead to
either overrunning the device CQ or exceeding the expected software buffer
size in the device CQ if the device CQ size was greater than the software
buffer size. Update the relevant software counter only after updating the
device CQ consumer index in the port timestamping napi_poll context.

Log:
    mlx5_core 0000:08:00.0: cq_err_event_notifier:517:(pid 0): CQ error on CQN 0x487, syndrome 0x1
    mlx5_core 0000:08:00.0 eth2: mlx5e_cq_error_event: cqn=0x000487 event=0x04

Fixes: 1880bc4e4a96 ("net/mlx5e: Add TX port timestamp support")
Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Link: https://lore.kernel.org/r/20231114215846.5902-12-saeed@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent 7e3f3ba
History
Tip revision: 92214be5979c0961a471b7eaaaeacab41bdf456c authored by Rahul Rameshbabu on 14 November 2023, 21:58:42 UTC
net/mlx5e: Update doorbell for port timestamping CQ before the software counter
Tip revision: 92214be
File Mode Size
atomic
basic
clang-tools
coccinelle
dtc
dummy-tools
gcc-plugins
gdb
genksyms
kconfig
ksymoops
mod
package
selinux
tracing
.gitignore -rw-r--r-- 214 bytes
Kbuild.include -rw-r--r-- 10.1 KB
Kconfig.include -rw-r--r-- 2.6 KB
Lindent -rwxr-xr-x 502 bytes
Makefile -rw-r--r-- 1.9 KB
Makefile.asm-generic -rw-r--r-- 1.8 KB
Makefile.btf -rw-r--r-- 638 bytes
Makefile.build -rw-r--r-- 17.2 KB
Makefile.clang -rw-r--r-- 1.6 KB
Makefile.clean -rw-r--r-- 1.9 KB
Makefile.compiler -rw-r--r-- 2.7 KB
Makefile.debug -rw-r--r-- 1.1 KB
Makefile.defconf -rw-r--r-- 1.2 KB
Makefile.dtbinst -rw-r--r-- 1.0 KB
Makefile.extrawarn -rw-r--r-- 7.3 KB
Makefile.gcc-plugins -rw-r--r-- 2.6 KB
Makefile.headersinst -rw-r--r-- 2.9 KB
Makefile.host -rw-r--r-- 5.9 KB
Makefile.kasan -rw-r--r-- 2.5 KB
Makefile.kcov -rw-r--r-- 333 bytes
Makefile.kcsan -rw-r--r-- 1004 bytes
Makefile.kmsan -rw-r--r-- 208 bytes
Makefile.lib -rw-r--r-- 21.0 KB
Makefile.modfinal -rw-r--r-- 2.6 KB
Makefile.modinst -rw-r--r-- 3.7 KB
Makefile.modpost -rw-r--r-- 4.7 KB
Makefile.package -rw-r--r-- 9.7 KB
Makefile.randstruct -rw-r--r-- 511 bytes
Makefile.ubsan -rw-r--r-- 779 bytes
Makefile.userprogs -rw-r--r-- 1.6 KB
Makefile.vdsoinst -rw-r--r-- 1.1 KB
Makefile.vmlinux -rw-r--r-- 1.5 KB
Makefile.vmlinux_o -rw-r--r-- 3.3 KB
as-version.sh -rwxr-xr-x 2.0 KB
asn1_compiler.c -rw-r--r-- 35.3 KB
bloat-o-meter -rwxr-xr-x 3.8 KB
bootgraph.pl -rwxr-xr-x 5.6 KB
bpf_doc.py -rwxr-xr-x 31.7 KB
cc-can-link.sh -rwxr-xr-x 166 bytes
cc-version.sh -rwxr-xr-x 1.4 KB
check-git -rwxr-xr-x 298 bytes
check-sysctl-docs -rwxr-xr-x 3.7 KB
check_extable.sh -rwxr-xr-x 4.9 KB
checkdeclares.pl -rwxr-xr-x 1.1 KB
checkincludes.pl -rwxr-xr-x 1.9 KB
checkkconfigsymbols.py -rwxr-xr-x 15.7 KB
checkpatch.pl -rwxr-xr-x 232.3 KB
checkstack.pl -rwxr-xr-x 5.8 KB
checksyscalls.sh -rwxr-xr-x 7.5 KB
checkversion.pl -rwxr-xr-x 2.2 KB
cleanfile -rwxr-xr-x 3.5 KB
cleanpatch -rwxr-xr-x 5.1 KB
coccicheck -rwxr-xr-x 7.9 KB
config -rwxr-xr-x 4.7 KB
const_structs.checkpatch -rw-r--r-- 1.4 KB
decode_stacktrace.sh -rwxr-xr-x 7.2 KB
decodecode -rwxr-xr-x 4.8 KB
depmod.sh -rwxr-xr-x 697 bytes
dev-needs.sh -rwxr-xr-x 6.1 KB
diffconfig -rwxr-xr-x 4.1 KB
documentation-file-ref-check -rwxr-xr-x 5.7 KB
export_report.pl -rwxr-xr-x 4.5 KB
extract-ikconfig -rwxr-xr-x 1.7 KB
extract-module-sig.pl -rwxr-xr-x 3.7 KB
extract-sys-certs.pl -rwxr-xr-x 3.7 KB
extract-vmlinux -rwxr-xr-x 1.7 KB
extract_xc3028.pl -rwxr-xr-x 44.6 KB
faddr2line -rwxr-xr-x 8.6 KB
file-size.sh -rwxr-xr-x 86 bytes
find-unused-docs.sh -rwxr-xr-x 1.3 KB
gcc-x86_32-has-stack-protector.sh -rwxr-xr-x 408 bytes
gcc-x86_64-has-stack-protector.sh -rwxr-xr-x 198 bytes
gen-randstruct-seed.sh -rwxr-xr-x 228 bytes
generate_initcall_order.pl -rwxr-xr-x 5.9 KB
generate_rust_analyzer.py -rwxr-xr-x 4.8 KB
generate_rust_target.rs -rw-r--r-- 5.2 KB
get_abi.pl -rwxr-xr-x 25.3 KB
get_dvb_firmware -rwxr-xr-x 24.5 KB
get_feat.pl -rwxr-xr-x 14.6 KB
get_maintainer.pl -rwxr-xr-x 67.5 KB
gfp-translate -rwxr-xr-x 1.7 KB
head-object-list.txt -rw-r--r-- 1.4 KB
headerdep.pl -rwxr-xr-x 3.5 KB
headers_install.sh -rwxr-xr-x 2.8 KB
insert-sys-cert.c -rw-r--r-- 8.9 KB
install.sh -rwxr-xr-x 986 bytes
jobserver-exec -rwxr-xr-x 2.6 KB
kallsyms.c -rw-r--r-- 18.9 KB
kernel-doc -rwxr-xr-x 67.2 KB
ld-version.sh -rwxr-xr-x 1.7 KB
leaking_addresses.pl -rwxr-xr-x 12.8 KB
link-vmlinux.sh -rwxr-xr-x 7.5 KB
makelst -rwxr-xr-x 808 bytes
markup_oops.pl -rwxr-xr-x 7.9 KB
min-tool-version.sh -rwxr-xr-x 577 bytes
misc-check -rwxr-xr-x 509 bytes
mkcompile_h -rwxr-xr-x 642 bytes
mksysmap -rwxr-xr-x 2.7 KB
mkuboot.sh -rwxr-xr-x 414 bytes
module.lds.S -rw-r--r-- 1.4 KB
modules-check.sh -rwxr-xr-x 443 bytes
nsdeps -rw-r--r-- 1.6 KB
objdiff -rwxr-xr-x 2.8 KB
objdump-func -rwxr-xr-x 848 bytes
orc_hash.sh -rw-r--r-- 316 bytes
pahole-version.sh -rwxr-xr-x 269 bytes
parse-maintainers.pl -rwxr-xr-x 4.5 KB
patch-kernel -rwxr-xr-x 9.9 KB
profile2linkerlist.pl -rwxr-xr-x 414 bytes
prune-kernel -rwxr-xr-x 912 bytes
recordmcount.c -rw-r--r-- 17.6 KB
recordmcount.h -rw-r--r-- 19.4 KB
recordmcount.pl -rwxr-xr-x 17.5 KB
relocs_check.sh -rwxr-xr-x 717 bytes
remove-stale-files -rwxr-xr-x 1.3 KB
rust_is_available.sh -rwxr-xr-x 9.2 KB
rust_is_available_bindgen_libclang.h -rw-r--r-- 91 bytes
rust_is_available_test.py -rwxr-xr-x 17.7 KB
rustdoc_test_builder.rs -rw-r--r-- 3.2 KB
rustdoc_test_gen.rs -rw-r--r-- 9.5 KB
setlocalversion -rwxr-xr-x 4.6 KB
show_delta -rwxr-xr-x 3.0 KB
sign-file.c -rw-r--r-- 9.9 KB
sorttable.c -rw-r--r-- 7.7 KB
sorttable.h -rw-r--r-- 12.9 KB
spdxcheck-test.sh -rw-r--r-- 284 bytes
spdxcheck.py -rwxr-xr-x 15.2 KB
spdxexclude -rw-r--r-- 417 bytes
spelling.txt -rw-r--r-- 33.9 KB
sphinx-pre-install -rwxr-xr-x 25.4 KB
split-man.pl -rwxr-xr-x 604 bytes
stackdelta -rwxr-xr-x 1.8 KB
stackusage -rwxr-xr-x 794 bytes
subarch.include -rw-r--r-- 647 bytes
syscallhdr.sh -rwxr-xr-x 1.9 KB
syscallnr.sh -rwxr-xr-x 1.5 KB
syscalltbl.sh -rwxr-xr-x 1.5 KB
tags.sh -rwxr-xr-x 10.8 KB
test_fortify.sh -rw-r--r-- 2.2 KB
tools-support-relr.sh -rwxr-xr-x 726 bytes
unifdef.c -rw-r--r-- 34.8 KB
ver_linux -rwxr-xr-x 2.6 KB
xen-hypercalls.sh -rwxr-xr-x 386 bytes
xz_wrap.sh -rwxr-xr-x 563 bytes

back to top