No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Ilpo Järvinen a50ad9f8c0 PCI/ASPM: Avoid link retraining race
[ Upstream commit e7e39756363ad5bd83ddeae1063193d0f13870fd ]

PCIe r6.0.1, sec 7.5.3.7, recommends setting the link control parameters,
then waiting for the Link Training bit to be clear before setting the
Retrain Link bit.

This avoids a race where the LTSSM may not use the updated parameters if it
is already in the midst of link training because of other normal link
activity.

Wait for the Link Training bit to be clear before toggling the Retrain Link
bit to ensure that the LTSSM uses the updated link control parameters.

[bhelgaas: commit log, return 0 (success)/-ETIMEDOUT instead of bool for
both pcie_wait_for_retrain() and the existing pcie_retrain_link()]
Suggested-by: Lukas Wunner <lukas@wunner.de>
Fixes: 7d715a6c1a ("PCI: add PCI Express ASPM support")
Link: https://lore.kernel.org/r/20230502083923.34562-1-ilpo.jarvinen@linux.intel.com
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Lukas Wunner <lukas@wunner.de>
Cc: stable@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-11 11:53:45 +02:00
arch x86: fix backwards merge of GDS/SRSO bit 2023-08-08 19:56:37 +02:00
block block/partition: fix signedness issue for Amiga partitions 2023-07-27 08:37:29 +02:00
certs
crypto
Documentation Documentation/x86: Fix backwards on/off logic about YMM support 2023-08-08 19:56:36 +02:00
drivers PCI/ASPM: Avoid link retraining race 2023-08-11 11:53:45 +02:00
fs ext4: Fix reusing stale buffer heads from last failed mounting 2023-08-11 11:53:44 +02:00
include jbd2: fix kernel-doc markups 2023-08-11 11:53:43 +02:00
init x86/mm: Initialize text poking earlier 2023-08-08 19:56:36 +02:00
ipc
kernel mm: Move mm_cachep initialization to mm_init() 2023-08-08 19:56:36 +02:00
lib debugobjects: Recheck debug_objects_enabled before reporting 2023-07-27 08:37:41 +02:00
LICENSES
mm
net tcp: annotate data-races around fastopenq.max_qlen 2023-07-27 08:37:45 +02:00
samples
scripts modpost: fix off by one in is_executable_section() 2023-07-27 08:37:18 +02:00
security integrity: Fix possible multiple allocation in integrity_inode_get() 2023-07-27 08:37:25 +02:00
sound ALSA: jack: Fix mutex call in snd_jack_report() 2023-07-27 08:37:24 +02:00
tools x86/bugs: Increase the x86 bugs vector size to two u32s 2023-08-08 19:56:37 +02:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile Linux 5.4.252 2023-08-08 19:56:37 +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.

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.