~itrue/ubuntu/+source/linux/+git/noble:master-next

Last commit made on 2024-01-25
Get this branch:
git clone -b master-next https://git.launchpad.net/~itrue/ubuntu/+source/linux/+git/noble
Only Isaac True can upload to this branch. If you are Isaac True please log in for upload directions.

Branch merges

Branch information

Name:
master-next
Repository:
lp:~itrue/ubuntu/+source/linux/+git/noble

Recent commits

c31a238... by Greg Kroah-Hartman <email address hidden>

Linux 6.7.1

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

Link: https://<email address hidden>
Tested-by: Ronald Warsow <email address hidden>
Tested-by: Allen Pais <email address hidden>
Tested-by: Florian Fainelli <email address hidden>
Tested-by: SeongJae Park <email address hidden>
Tested-by: Shuah Khan <email address hidden>
Tested-by: Ron Economos <email address hidden>
Tested-by: Bagas Sanjaya <email address hidden>
Tested-by: Ricardo B. Marliere <email address hidden>
Tested-by: Jon Hunter <email address hidden>
Tested-by: Luna Jernberg <email address hidden>
Tested-by: Justin M. Forbes <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

4f55ca2... by Sumanth Korikkar <email address hidden>

mm/memory_hotplug: fix memmap_on_memory sysfs value retrieval

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

commit 11684134140bb708b6e6de969a060535630b1b53 upstream.

set_memmap_mode() stores the kernel parameter memmap mode as an integer.
However, the get_memmap_mode() function utilizes param_get_bool() to fetch
the value as a boolean, leading to potential endianness issue. On
Big-endian architectures, the memmap_on_memory is consistently displayed
as 'N' regardless of its actual status.

To address this endianness problem, the solution involves obtaining the
mode as an integer. This adjustment ensures the proper display of the
memmap_on_memory parameter, presenting it as one of the following options:
Force, Y, or N.

Link: https://<email address hidden>
Fixes: 2d1f649c7c08 ("mm/memory_hotplug: support memmap_on_memory when memmap is not aligned to pageblocks")
Signed-off-by: Sumanth Korikkar <email address hidden>
Suggested-by: Gerald Schaefer <email address hidden>
Acked-by: David Hildenbrand <email address hidden>
Cc: Alexander Gordeev <email address hidden>
Cc: Aneesh Kumar K.V <email address hidden>
Cc: Heiko Carstens <email address hidden>
Cc: Michal Hocko <email address hidden>
Cc: Oscar Salvador <email address hidden>
Cc: Vasily Gorbik <email address hidden>
Cc: <email address hidden> [6.6+]
Signed-off-by: Andrew Morton <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

fd7b6d4... by Vegard Nossum

docs: kernel_feat.py: fix potential command injection

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

commit c48a7c44a1d02516309015b6134c9bb982e17008 upstream.

The kernel-feat directive passes its argument straight to the shell.
This is unfortunate and unnecessary.

Let's always use paths relative to $srctree/Documentation/ and use
subprocess.check_call() instead of subprocess.Popen(shell=True).

This also makes the code shorter.

This is analogous to commit 3231dd586277 ("docs: kernel_abi.py: fix
command injection") where we did exactly the same thing for
kernel_abi.py, somehow I completely missed this one.

Link: https://fosstodon.org/@jani/111676532203641247
Reported-by: Jani Nikula <email address hidden>
Signed-off-by: Vegard Nossum <email address hidden>
Cc: <email address hidden>
Signed-off-by: Jonathan Corbet <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

a2fe874... by Carlos Llamas <email address hidden>

scripts/decode_stacktrace.sh: optionally use LLVM utilities

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

commit efbd6398353315b7018e6943e41fee9ec35e875f upstream.

GNU's addr2line can have problems parsing a vmlinux built with LLVM,
particularly when LTO was used. In order to decode the traces correctly
this patch adds the ability to switch to LLVM's utilities readelf and
addr2line. The same approach is followed by Will in [1].

Before:
  $ scripts/decode_stacktrace.sh vmlinux < kernel.log
  [17716.240635] Call trace:
  [17716.240646] skb_cow_data (??:?)
  [17716.240654] esp6_input (ld-temp.o:?)
  [17716.240666] xfrm_input (ld-temp.o:?)
  [17716.240674] xfrm6_rcv (??:?)
  [...]

After:
  $ LLVM=1 scripts/decode_stacktrace.sh vmlinux < kernel.log
  [17716.240635] Call trace:
  [17716.240646] skb_cow_data (include/linux/skbuff.h:2172 net/core/skbuff.c:4503)
  [17716.240654] esp6_input (net/ipv6/esp6.c:977)
  [17716.240666] xfrm_input (net/xfrm/xfrm_input.c:659)
  [17716.240674] xfrm6_rcv (net/ipv6/xfrm6_input.c:172)
  [...]

Note that one could set CROSS_COMPILE=llvm- instead to hack around this
issue. However, doing so can break the decodecode routine as it will
force the selection of other LLVM utilities down the line e.g. llvm-as.

[1] https://<email address hidden>/

Link: https://<email address hidden>
Signed-off-by: Carlos Llamas <email address hidden>
Reviewed-by: Nick Desaulniers <email address hidden>
Reviewed-by: Elliot Berman <email address hidden>
Tested-by: Justin Stitt <email address hidden>
Cc: Will Deacon <email address hidden>
Cc: John Stultz <email address hidden>
Cc: Masahiro Yamada <email address hidden>
Cc: Nathan Chancellor <email address hidden>
Cc: Tom Rix <email address hidden>
Cc: <email address hidden>
Signed-off-by: Andrew Morton <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

ed04cb1... by James Clark

coresight: etm4x: Fix width of CCITMIN field

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

commit cc0271a339cc70cae914c3ec20edc2a8058407da upstream.

CCITMIN is a 12 bit field and doesn't fit in a u8, so extend it to u16.
This probably wasn't an issue previously because values higher than 255
never occurred.

But since commit 4aff040bcc8d ("coresight: etm: Override TRCIDR3.CCITMIN
on errata affected cpus"), a comparison with 256 was done to enable the
errata, generating the following W=1 build error:

  coresight-etm4x-core.c:1188:24: error: result of comparison of
  constant 256 with expression of type 'u8' (aka 'unsigned char') is
  always false [-Werror,-Wtautological-constant-out-of-range-compare]

   if (drvdata->ccitmin == 256)

Cc: <email address hidden>
Fixes: 2e1cdfe184b5 ("coresight-etm4x: Adding CoreSight ETM4x driver")
Reported-by: kernel test robot <email address hidden>
Closes: https://<email address hidden>/
Reviewed-by: Mike Leach <email address hidden>
Signed-off-by: James Clark <email address hidden>
Signed-off-by: Suzuki K Poulose <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

60cf7e2... by LeoLiuoc <email address hidden>

PCI: Add ACS quirk for more Zhaoxin Root Ports

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

commit e367e3c765f5477b2e79da0f1399aed49e2d1e37 upstream.

Add more Root Port Device IDs to pci_quirk_zhaoxin_pcie_ports_acs() for
some new Zhaoxin platforms.

Fixes: 299bd044a6f3 ("PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports")
Link: https://<email address hidden>
Signed-off-by: LeoLiuoc <email address hidden>
[bhelgaas: update subject, drop changelog, add Fixes, add stable tag, fix
whitespace, wrap code comment]
Signed-off-by: Bjorn Helgaas <email address hidden>
Cc: <email address hidden> # 5.7
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

f63890a... by Florian Eckert <email address hidden>

leds: ledtrig-tty: Free allocated ttyname buffer on deactivate

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

commit 25054b232681c286fca9c678854f56494d1352cc upstream.

The ttyname buffer for the ledtrig_tty_data struct is allocated in the
sysfs ttyname_store() function. This buffer must be released on trigger
deactivation. This was missing and is thus a memory leak.

While we are at it, the TTY handler in the ledtrig_tty_data struct should
also be returned in case of the trigger deactivation call.

Cc: <email address hidden>
Fixes: fd4a641ac88f ("leds: trigger: implement a tty trigger")
Signed-off-by: Florian Eckert <email address hidden>
Reviewed-by: Uwe Kleine-König <email address hidden>
Reviewed-by: Greg Kroah-Hartman <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Lee Jones <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

b1bc6a8... by Cameron Williams <email address hidden>

parport: parport_serial: Add Brainboxes device IDs and geometry

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

commit 6aa1fc5a8085bbc01687aa708dcf2dbe637a5ee3 upstream.

Add device IDs for the Brainboxes UC-203, UC-257, UC-414, UC-475,
IS-300/IS-500 and PX-263/PX-295 and define the relevant "geometry"
for the cards.
This patch requires part 1 of this series.

Cc: <email address hidden>
Signed-off-by: Cameron Williams <email address hidden>
Acked-by: Sudip Mukherjee <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

abc657a... by Cameron Williams <email address hidden>

parport: parport_serial: Add Brainboxes BAR details

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

commit 65fde134b0a4ffe838729f9ee11b459a2f6f2815 upstream.

Add BAR/enum entries for Brainboxes serial/parallel cards.

Cc: <email address hidden>
Signed-off-by: Cameron Williams <email address hidden>
Acked-by: Sudip Mukherjee <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>

5641f7b... by Guanghui Feng <email address hidden>

uio: Fix use-after-free in uio_open

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

commit 0c9ae0b8605078eafc3bea053cc78791e97ba2e2 upstream.

core-1 core-2
-------------------------------------------------------
uio_unregister_device uio_open
    idev = idr_find()
device_unregister(&idev->dev)
put_device(&idev->dev)
uio_device_release
    get_device(&idev->dev)
kfree(idev)
uio_free_minor(minor)
    uio_release
    put_device(&idev->dev)
    kfree(idev)
-------------------------------------------------------

In the core-1 uio_unregister_device(), the device_unregister will kfree
idev when the idev->dev kobject ref is 1. But after core-1
device_unregister, put_device and before doing kfree, the core-2 may
get_device. Then:
1. After core-1 kfree idev, the core-2 will do use-after-free for idev.
2. When core-2 do uio_release and put_device, the idev will be double
   freed.

To address this issue, we can get idev atomic & inc idev reference with
minor_lock.

Fixes: 57c5f4df0a5a ("uio: fix crash after the device is unregistered")
Cc: stable <email address hidden>
Signed-off-by: Guanghui Feng <email address hidden>
Reviewed-by: Baolin Wang <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Andrea Righi <email address hidden>