~bladernr/ubuntu/+source/linux/+git/focal:1990985-limit-dummy_wait-to-intel

Last commit made on 2022-10-04
Get this branch:
git clone -b 1990985-limit-dummy_wait-to-intel https://git.launchpad.net/~bladernr/ubuntu/+source/linux/+git/focal
Only Jeff Lane  can upload to this branch. If you are Jeff Lane  please log in for upload directions.

Branch merges

Branch information

Name:
1990985-limit-dummy_wait-to-intel
Repository:
lp:~bladernr/ubuntu/+source/linux/+git/focal

Recent commits

60f66cd... by Dave Hansen <email address hidden>

ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems

BugLink: https://bugs.launchpad.net/bugs/1990985

Old, circa 2002 chipsets have a bug: they don't go idle when they are
supposed to. So, a workaround was added to slow the CPU down and
ensure that the CPU waits a bit for the chipset to actually go idle.
This workaround is ancient and has been in place in some form since
the original kernel ACPI implementation.

But, this workaround is very painful on modern systems. The "inl()"
can take thousands of cycles (see Link: for some more detailed
numbers and some fun kernel archaeology).

First and foremost, modern systems should not be using this code.
Typical Intel systems have not used it in over a decade because it is
horribly inferior to MWAIT-based idle.

Despite this, people do seem to be tripping over this workaround on
AMD system today.

Limit the "dummy wait" workaround to Intel systems. Keep Modern AMD
systems from tripping over the workaround. Remotely modern Intel
systems use intel_idle instead of this code and will, in practice,
remain unaffected by the dummy wait.

Reported-by: K Prateek Nayak <email address hidden>
Suggested-by: Rafael J. Wysocki <email address hidden>
Signed-off-by: Dave Hansen <email address hidden>
Reviewed-by: Mario Limonciello <email address hidden>
Tested-by: K Prateek Nayak <email address hidden>
Link: https://<email address hidden>/
Link: https://<email address hidden>
(cherry picked from commit e400ad8b7e6a1b9102123c6240289a811501f7d9)
Signed-off-by: Jeff Lane <email address hidden>

642f955... by Yin Fengwei <email address hidden>

ACPI: processor_idle: Skip dummy wait if kernel is in guest

BugLink: https://bugs.launchpad.net/bugs/1990985

In function acpi_idle_do_entry(), an ioport access is used for
dummy wait to guarantee hardware behavior. But it could trigger
unnecessary VMexit if kernel is running as guest in virtualization
environment.

If it's in virtualization environment, the deeper C state enter
operation (inb()) will trap to hypervisor. It's not needed to do
dummy wait after the inb() call. So we could just remove the
dummy io port access to avoid unnecessary VMexit.

And keep dummy io port access to maintain timing for native
environment.

Signed-off-by: Yin Fengwei <email address hidden>
Signed-off-by: Rafael J. Wysocki <email address hidden>
(cherry picked from commit fa583f71a99c85e52781ed877c82c8757437b680)
Signed-off-by: Jeff Lane <email address hidden>

0fed86a... by Thadeu Lima de Souza Cascardo

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Thadeu Lima de Souza Cascardo <email address hidden>

574c899... by Stefan Bader

UBUNTU: Ubuntu-5.4.0-128.144

Signed-off-by: Stefan Bader <email address hidden>

5abf09c... by Stefan Bader

UBUNTU: link-to-tracker: update tracking bug

BugLink: https://bugs.launchpad.net/bugs/1990152
Properties: no-test-build
Signed-off-by: Stefan Bader <email address hidden>

001edf9... by Pavel Begunkov <email address hidden>

io_uring: disable polling pollfree files

Older kernels lack io_uring POLLFREE handling. As only affected files
are signalfd and android binder the safest option would be to disable
polling those files via io_uring and hope there are no users.

Fixes: 221c5eb233823 ("io_uring: add support for IORING_OP_POLL")
Signed-off-by: Pavel Begunkov <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>

CVE-2022-3176
(cherry picked from commit fc78b2fc21f10c4c9c4d5d659a685710ffa63659 linux-5.4.y)
Signed-off-by: Thadeu Lima de Souza Cascardo <email address hidden>
Acked-by: Stefan Bader <email address hidden>
Acked-by: Kamal Mostafa <email address hidden>
Signed-off-by: Stefan Bader <email address hidden>

51101d5... by Nicolas Dichtel

selftests/net: test nexthop without gw

BugLink: https://bugs.launchpad.net/bugs/1988809

This test implement the scenario described in the commit
"ip: fix dflt addr selection for connected nexthop".
The test configures a nexthop object with an output device only (no gateway
address) and a route that uses this nexthop. The goal is to check if the
kernel selects a valid source address.

Link: https://lore.kernel.org/netdev/20220712095545.10947-1-nicolas.dichtel@6wind.com/
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Link: https://lore.kernel.org/r/20220713114853.29406-2-nicolas.dichtel@6wind.com
Signed-off-by: Paolo Abeni <email address hidden>

(backported from commit cd72e61bad145a0968df85193dcf1261cb66c4c6)
[lukenow: minor context adjustments in makefile]
Signed-off-by: Luke Nowakowski-Krijger <email address hidden>
Acked-by: Stefan Bader <email address hidden>
Acked-by: Tim Gardner <email address hidden>
Signed-off-by: Stefan Bader <email address hidden>

e28d13c... by Nicolas Dichtel

ip: fix triggering of 'icmp redirect'

BugLink: https://bugs.launchpad.net/bugs/1990124
BugLink: https://bugs.launchpad.net/bugs/1988809

commit eb55dc09b5dd040232d5de32812cc83001a23da6 upstream.

__mkroute_input() uses fib_validate_source() to trigger an icmp redirect.
My understanding is that fib_validate_source() is used to know if the src
address and the gateway address are on the same link. For that,
fib_validate_source() returns 1 (same link) or 0 (not the same network).
__mkroute_input() is the only user of these positive values, all other
callers only look if the returned value is negative.

Since the below patch, fib_validate_source() didn't return anymore 1 when
both addresses are on the same network, because the route lookup returns
RT_SCOPE_LINK instead of RT_SCOPE_HOST. But this is, in fact, right.
Let's adapat the test to return 1 again when both addresses are on the same
link.

CC: <email address hidden>
Fixes: 747c14307214 ("ip: fix dflt addr selection for connected nexthop")
Reported-by: kernel test robot <email address hidden>
Reported-by: Heng Qi <email address hidden>
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Reviewed-by: David Ahern <email address hidden>
Link: https://lore.kernel.org/r/20220829100121.3821-1-nicolas.dichtel@6wind.com
Signed-off-by: Jakub Kicinski <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>

(cherry picked from commit d228b897b813973b9dd4cb317763afcd5bc4e8cb linux-5.4.y)
Signed-off-by: Stefan Bader <email address hidden>

23b2679... by Stefan Bader

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Stefan Bader <email address hidden>

ebdec65... by Stefan Bader

UBUNTU: Ubuntu-5.4.0-127.143

Signed-off-by: Stefan Bader <email address hidden>