Commit Graph

1071229 Commits

Author SHA1 Message Date
Rick Yiu
73c2c0d53d ANDROID: Update the ABI symbol list
Adding the following symbols:
  - __traceiter_android_rvh_set_user_nice_locked
  - __tracepoint_android_rvh_set_user_nice_locked

Bug: 300872872
Change-Id: Ib3aa1294e601d672d986f58cb8b66343f69ef417
Signed-off-by: Rick Yiu <rickyiu@google.com>
2023-11-30 10:13:24 +00:00
Rick Yiu
87344b2ab7 ANDROID: sched: Add trace_android_rvh_set_user_nice_locked
We will need vendor hook of set_user_nice with lock to avoid race
condition.

Bug: 300872872
Change-Id: I24fc1e13cc6578dcc418d956a5146ad29ff76a56
Signed-off-by: Rick Yiu <rickyiu@google.com>
2023-11-30 10:13:18 +00:00
Ruchira Revdekar
bd1e76c09b ANDROID: GKI: update symbol list
INFO: ABI DIFFERENCES HAVE BEEN DETECTED!
INFO: 1 function symbol(s) added
  'void __balance_callbacks(struct rq*)'

Bug: 241223356
Change-Id: Icdb97781ec7af4f183249f0db62ed3bb758000f4
Signed-off-by: Ruchira Revdekar <quic_rrevdeka@quicinc.com>
2023-11-29 20:46:03 +00:00
Stephen Dickey
fdaddcab76 ANDROID: GKI: vendor code needs __balance_callbacks access
Vendor module code needs to ensure that pushes to the balance
callback queue are handled prior to releasing rq locks.
Export __balance_callbacks to facilitate this.

Bug: 241223356
Change-Id: I86a3f5cb6cc7b97d87bd2db3e11cb7a8d99d4aef
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
(cherry picked from commit a2f552f49c9084dcc48b2066888d06a324e34b98)
2023-11-29 20:46:03 +00:00
Vincent Donnefort
e2fbc5cc3a ANDROID: KVM: arm64: pkvm_module_ops documentation
This structure is at the heart of the module support for pKVM. Add a
description to help anyone trying to create a module.

Bug: 312200309
Change-Id: Ie1d9043a6a94d15dd8ef25c6f0f8d442da26bc1f
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
(cherry picked from commit af85ead8ce)
2023-11-29 18:02:56 +00:00
Jimmy Hu
bf291bdd70 UPSTREAM: usb: typec: tcpm: Fix NULL pointer dereference in tcpm_pd_svdm()
It is possible that typec_register_partner() returns ERR_PTR on failure.
When port->partner is an error, a NULL pointer dereference may occur as
shown below.

[91222.095236][  T319] typec port0: failed to register partner (-17)
...
[91225.061491][  T319] Unable to handle kernel NULL pointer dereference
at virtual address 000000000000039f
[91225.274642][  T319] pc : tcpm_pd_data_request+0x310/0x13fc
[91225.274646][  T319] lr : tcpm_pd_data_request+0x298/0x13fc
[91225.308067][  T319] Call trace:
[91225.308070][  T319]  tcpm_pd_data_request+0x310/0x13fc
[91225.308073][  T319]  tcpm_pd_rx_handler+0x100/0x9e8
[91225.355900][  T319]  kthread_worker_fn+0x178/0x58c
[91225.355902][  T319]  kthread+0x150/0x200
[91225.355905][  T319]  ret_from_fork+0x10/0x30

Add a check for port->partner to avoid dereferencing a NULL pointer.

Fixes: 5e1d4c49fb ("usb: typec: tcpm: Determine common SVDM Version")
Cc: stable@vger.kernel.org
Signed-off-by: Jimmy Hu <hhhuuu@google.com>
Link: https://lore.kernel.org/r/20231020012132.100960-1-hhhuuu@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 280207787
(cherry picked from commit 4987daf86c152ff882d51572d154ad12e4ff3a4b)
Change-Id: I609640ff70258b8fd0e7f9eaad9eb60db35ccfad
Signed-off-by: Kyle Tso <kyletso@google.com>
2023-11-29 14:56:21 +08:00
Alan Stern
52ecdc264d UPSTREAM: USB: core: Fix race by not overwriting udev->descriptor in hub_port_init()
commit ff33299ec8 upstream.

Syzbot reported an out-of-bounds read in sysfs.c:read_descriptors():

BUG: KASAN: slab-out-of-bounds in read_descriptors+0x263/0x280 drivers/usb/core/sysfs.c:883
Read of size 8 at addr ffff88801e78b8c8 by task udevd/5011

CPU: 0 PID: 5011 Comm: udevd Not tainted 6.4.0-rc6-syzkaller-00195-g40f71e7cd3c6 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/27/2023
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xd9/0x150 lib/dump_stack.c:106
 print_address_description.constprop.0+0x2c/0x3c0 mm/kasan/report.c:351
 print_report mm/kasan/report.c:462 [inline]
 kasan_report+0x11c/0x130 mm/kasan/report.c:572
 read_descriptors+0x263/0x280 drivers/usb/core/sysfs.c:883
...
Allocated by task 758:
...
 __do_kmalloc_node mm/slab_common.c:966 [inline]
 __kmalloc+0x5e/0x190 mm/slab_common.c:979
 kmalloc include/linux/slab.h:563 [inline]
 kzalloc include/linux/slab.h:680 [inline]
 usb_get_configuration+0x1f7/0x5170 drivers/usb/core/config.c:887
 usb_enumerate_device drivers/usb/core/hub.c:2407 [inline]
 usb_new_device+0x12b0/0x19d0 drivers/usb/core/hub.c:2545

As analyzed by Khazhy Kumykov, the cause of this bug is a race between
read_descriptors() and hub_port_init(): The first routine uses a field
in udev->descriptor, not expecting it to change, while the second
overwrites it.

Prior to commit 45bf39f8df ("USB: core: Don't hold device lock while
reading the "descriptors" sysfs file") this race couldn't occur,
because the routines were mutually exclusive thanks to the device
locking.  Removing that locking from read_descriptors() exposed it to
the race.

The best way to fix the bug is to keep hub_port_init() from changing
udev->descriptor once udev has been initialized and registered.
Drivers expect the descriptors stored in the kernel to be immutable;
we should not undermine this expectation.  In fact, this change should
have been made long ago.

So now hub_port_init() will take an additional argument, specifying a
buffer in which to store the device descriptor it reads.  (If udev has
not yet been initialized, the buffer pointer will be NULL and then
hub_port_init() will store the device descriptor in udev as before.)
This eliminates the data race responsible for the out-of-bounds read.

The changes to hub_port_init() appear more extensive than they really
are, because of indentation changes resulting from an attempt to avoid
writing to other parts of the usb_device structure after it has been
initialized.  Similar changes should be made to the code that reads
the BOS descriptor, but that can be handled in a separate patch later
on.  This patch is sufficient to fix the bug found by syzbot.

Bug: 290990909
Reported-and-tested-by: syzbot+18996170f8096c6174d0@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/linux-usb/000000000000c0ffe505fe86c9ca@google.com/#r
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Khazhy Kumykov <khazhy@google.com>
Fixes: 45bf39f8df ("USB: core: Don't hold device lock while reading the "descriptors" sysfs file")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/b958b47a-9a46-4c22-a9f9-e42e42c31251@rowland.harvard.edu
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 7fe9d87996)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Ia5e4a65cd5d895bf0d85a5aa5efa1c4d1368d069
2023-11-28 18:27:32 +00:00
Alan Stern
a7f103722b UPSTREAM: USB: core: Change usb_get_device_descriptor() API
commit de28e469da upstream.

The usb_get_device_descriptor() routine reads the device descriptor
from the udev device and stores it directly in udev->descriptor.  This
interface is error prone, because the USB subsystem expects in-memory
copies of a device's descriptors to be immutable once the device has
been initialized.

The interface is changed so that the device descriptor is left in a
kmalloc-ed buffer, not copied into the usb_device structure.  A
pointer to the buffer is returned to the caller, who is then
responsible for kfree-ing it.  The corresponding changes needed in the
various callers are fairly small.

Bug: 290990909
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://lore.kernel.org/r/d0111bb6-56c1-4f90-adf2-6cfe152f6561@rowland.harvard.edu
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit eda9a29665)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I7c4be5b5dd06f7d5ba8aacad33ecf78f4a3b49e6
2023-11-28 18:27:28 +00:00
Alan Stern
28e703ec05 UPSTREAM: USB: core: Unite old scheme and new scheme descriptor reads
commit 85d07c5562 upstream.

In preparation for reworking the usb_get_device_descriptor() routine,
it is desirable to unite the two different code paths responsible for
initially determining endpoint 0's maximum packet size in a newly
discovered USB device.  Making this determination presents a
chicken-and-egg sort of problem, in that the only way to learn the
maxpacket value is to get it from the device descriptor retrieved from
the device, but communicating with the device to retrieve a descriptor
requires us to know beforehand the ep0 maxpacket size.

In practice this problem is solved in two different ways, referred to
in hub.c as the "old scheme" and the "new scheme".  The old scheme
(which is the approach recommended by the USB-2 spec) involves asking
the device to send just the first eight bytes of its device
descriptor.  Such a transfer uses packets containing no more than
eight bytes each, and every USB device must have an ep0 maxpacket size
>= 8, so this should succeed.  Since the bMaxPacketSize0 field of the
device descriptor lies within the first eight bytes, this is all we
need.

The new scheme is an imitation of the technique used in an early
Windows USB implementation, giving it the happy advantage of working
with a wide variety of devices (some of them at the time would not
work with the old scheme, although that's probably less true now).  It
involves making an initial guess of the ep0 maxpacket size, asking the
device to send up to 64 bytes worth of its device descriptor (which is
only 18 bytes long), and then resetting the device to clear any error
condition that might have resulted from the guess being wrong.  The
initial guess is determined by the connection speed; it should be
correct in all cases other than full speed, for which the allowed
values are 8, 16, 32, and 64 (in this case the initial guess is 64).

The reason for this patch is that the old- and new-scheme parts of
hub_port_init() use different code paths, one involving
usb_get_device_descriptor() and one not, for their initial reads of
the device descriptor.  Since these reads have essentially the same
purpose and are made under essentially the same circumstances, this is
illogical.  It makes more sense to have both of them use a common
subroutine.

This subroutine does basically what the new scheme's code did, because
that approach is more general than the one used by the old scheme.  It
only needs to know how many bytes to transfer and whether or not it is
being called for the first iteration of a retry loop (in case of
certain time-out errors).  There are two main differences from the
former code:

	We initialize the bDescriptorType field of the transfer buffer
	to 0 before performing the transfer, to avoid possibly
	accessing an uninitialized value afterward.

	We read the device descriptor into a temporary buffer rather
	than storing it directly into udev->descriptor, which the old
	scheme implementation used to do.

Since the whole point of this first read of the device descriptor is
to determine the bMaxPacketSize0 value, that is what the new routine
returns (or an error code).  The value is stored in a local variable
rather than in udev->descriptor.  As a side effect, this necessitates
moving a section of code that checks the bcdUSB field for SuperSpeed
devices until after the full device descriptor has been retrieved.

Bug: 290990909
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Oliver Neukum <oneukum@suse.com>
Link: https://lore.kernel.org/r/495cb5d4-f956-4f4a-a875-1e67e9489510@rowland.harvard.edu
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 56c49a3328)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I2ffdb9ee11219fca6aeb2cda7867ea53fd6ca61c
2023-11-28 18:27:26 +00:00
erinwang
e5f9357102 ANDROID: GKI: Update symbol list for lenovo
2 function symbol(s) added
  'unsigned int regulator_get_linear_step(struct regulator*)'
  'int smp_call_function_any(const struct cpumask*, smp_call_func_t, void*, int)'

Bug: 313550784
Change-Id: I733654a7d0ca8daba31ef7eedb874d0c8da1cd29
Signed-off-by: erinwang <erinwang2@lenovo.com>
2023-11-28 12:11:51 +00:00
Jayant Chowdhary
dcf95aa0af FROMGIT: usb:gadget:uvc Do not use worker thread to pump isoc usb requests
When we use an async work queue to perform the function of pumping
usb requests to the usb controller, it is possible that amongst other
factors, thread scheduling affects at what cadence we're able to pump
requests. This could mean isoc usb requests miss their uframes - resulting
in video stream flickers on the host device.

To avoid this, we make the async_wq thread only produce isoc usb_requests
with uvc buffers encoded into them. The process of queueing to the
endpoint is done by the uvc_video_complete() handler. In case no
usb_requests are ready with encoded information, we just queue a zero
length request to the endpoint from the complete handler.

For bulk endpoints the async_wq thread still queues usb requests to the
endpoint.

Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
Suggested-by: Avichal Rakesh <arakesh@google.com>
Suggested-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://lore.kernel.org/r/20231120062026.3759463-1-jchowdhary@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 301915972
(cherry picked from commit 6acba0345b68772830582ca1ca369a2f45631275
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Change-Id: I5597cc29e9caec69e4f3575938d7d640857aaa28
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-11-27 11:51:11 -08:00
Avichal Rakesh
8078e50f5e FROMGIT: usb: gadget: uvc: Fix use-after-free for inflight usb_requests
Currently, the uvc gadget driver allocates all uvc_requests as one array
and deallocates them all when the video stream stops. This includes
de-allocating all the usb_requests associated with those uvc_requests.
This can lead to use-after-free issues if any of those de-allocated
usb_requests were still owned by the usb controller.

This is patch 2 of 2 in fixing the use-after-free issue. It adds a new
flag to uvc_video to track when frames and requests should be flowing.
When disabling the video stream, the flag is tripped and, instead
of de-allocating all uvc_requests and usb_requests, the gadget
driver only de-allocates those usb_requests that are currently
owned by it (as present in req_free). Other usb_requests are left
untouched until their completion handler is called which takes care
of freeing the usb_request and its corresponding uvc_request.

Now that uvc_video does not depends on uvc->state, this patch removes
unnecessary upates to uvc->state that were made to accommodate uvc_video
logic. This should ensure that uvc gadget driver never accidentally
de-allocates a usb_request that it doesn't own.

Link: https://lore.kernel.org/7cd81649-2795-45b6-8c10-b7df1055020d@google.com
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Suggested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Tested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-4-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 296925310
(cherry picked from commit da324ffce34c521b239f319d4051260444a3eb4a
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Change-Id: Ib0378394dc20e894507f60c70f71c579d046cd7a
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-11-27 11:51:08 -08:00
Avichal Rakesh
0041748215 FROMGIT: usb: gadget: uvc: move video disable logic to its own function
This patch refactors the video disable logic in uvcg_video_enable
into its own separate function 'uvcg_video_disable'. This function
is now used anywhere uvcg_video_enable(video, 0) was used.

Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Suggested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-3-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 296925310
(cherry picked from commit 2079b60bda3257146a4e8ed7525513865f7e6b3e
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Change-Id: Ie8934e6fe1577373b01e3c66626e4239cf9f8c83
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-11-27 11:51:04 -08:00
Avichal Rakesh
563283055b FROMGIT: usb: gadget: uvc: Allocate uvc_requests one at a time
Currently, the uvc gadget driver allocates all uvc_requests as one array
and deallocates them all when the video stream stops. This includes
de-allocating all the usb_requests associated with those uvc_requests.
This can lead to use-after-free issues if any of those de-allocated
usb_requests were still owned by the usb controller.

This patch is 1 of 2 patches addressing the use-after-free issue.
Instead of bulk allocating all uvc_requests as an array, this patch
allocates uvc_requests one at a time, which should allows for similar
granularity when deallocating the uvc_requests. This patch has no
functional changes other than allocating each uvc_request separately,
and similarly freeing each of them separately.

Link: https://lore.kernel.org/7cd81649-2795-45b6-8c10-b7df1055020d@google.com
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Suggested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Tested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-2-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 296925310
(cherry picked from commit aeb686a98a9e9743c4c0338957e59643a2708146
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Change-Id: I33400ac6b28e72c6c10805e167e8bab7e2520a28
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-11-27 11:50:58 -08:00
Avichal Rakesh
848fa308a9 FROMGIT: usb: gadget: uvc: prevent use of disabled endpoint
Currently the set_alt callback immediately disables the endpoint and queues
the v4l2 streamoff event. However, as the streamoff event is processed
asynchronously, it is possible that the video_pump thread attempts to queue
requests to an already disabled endpoint.

This change moves disabling usb endpoint to the end of streamoff event
callback. As the endpoint's state can no longer be used, video_pump is
now guarded by uvc->state as well. To be consistent with the actual
streaming state, uvc->state is now toggled between CONNECTED and STREAMING
from the v4l2 event callback only.

Link: https://lore.kernel.org/20230615171558.GK741@pendragon.ideasonboard.com/
Link: https://lore.kernel.org/20230531085544.253363-1-dan.scally@ideasonboard.com/
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Tested-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Link: https://lore.kernel.org/r/20231109004104.3467968-1-arakesh@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 296925310
(cherry picked from commit 991544dc579b636e69defa3eec486fd6f6191e59
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Change-Id: Ic5631a526e72cbcf299dcb8167bb3d34468d37e9
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-11-27 11:50:53 -08:00
Sai Harshini Nimmala
24e0a18cb4 ANDROID: abi_gki_aarch64_qcom: Update symbol list
Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added
function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added
variable

1 Added variable:

  [A] 'tracepoint __tracepoint_android_rvh_update_thermal_stats'

1 function symbol(s) added
  'int __traceiter_android_rvh_update_thermal_stats(void*, int)'

Bug: 203763121
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
Change-Id: Ibbdd26ae66d1db01f4b76479c41a36eb590a7133
(cherry picked from commit 0e29f56ef055bb8ccba3a5d259002ec36c76da38)
2023-11-27 19:01:03 +00:00
Shaleen Agrawal
8ab43e8a3e ANDROID: arch_topology: Add android_rvh_update_thermal_stats
Add trace hook so modules can track thermal changes to process
vendor value adds.

Bug: 203763121
Change-Id: I5c54b313d3c92c0514f18b07797dd20c9c6f5161
Signed-off-by: Shaleen Agrawal <shalagra@codeaurora.org>
2023-11-27 19:01:03 +00:00
liujing40
6ac8b4fbb4 ANDROID: fuse-bpf: Add NULL pointer check in fuse_release_in
If open request sent to classic fuse, backing_file is null.
In fuse_release_initialize, fput will trigger a crash.

Bug: 297831741
Signed-off-by: liujing40 <liujing40@xiaomi.corp-partner.google.com>
(cherry picked from https://android-review.googlesource.com/q/commit:4d2ff573981f06ba09e1ddda8726bb73ff6a2c3f)
Merged-In: I2d54d99d62b54c39a6dc9064f8f62488433aff6f
Change-Id: I2d54d99d62b54c39a6dc9064f8f62488433aff6f
2023-11-27 18:54:21 +00:00
vincent wang
4030b1eeed ANDROID: GKI: update symbol list for lenovo
Update vendor hook symbols for lenovo

Bug: 312392542

Change-Id: I1e596bee5a7c776ab4c2af12fd473bf0e6fb2db8
Signed-off-by: vincent wang <vincentwang3@lenovo.com>
2023-11-27 18:37:02 +00:00
vincent wang
71647086d7 ANDROID: GKI: add a vendor hook in cpufreq_online
In this vendor hook, we can register the energy model before sending the
notification to avoid pd_init failure for some clusters.

more detail info about pd_init failure,  pls refer to the link: 
https://lore.kernel.org/lkml/20230118044733.29391-1-bhuwz@163.com/T/

But the change patch cannot be submitted upstream due to differences in the
cpufreq code, the failure only appears on the aosp kernel.

Bug: 312392542

Change-Id: Ied4c72d73083d794ad6d8af1eb305be4fb382de3
Signed-off-by: vincent wang <vincentwang3@lenovo.com>
2023-11-27 18:37:02 +00:00
Biswarup Pal
2cecfa7378 FROMGIT: Input: uinput - allow injecting event times
Currently, uinput doesn't use the input_set_timestamp API, so any
event injected using uinput is not accurately timestamped in terms of
measuring when the actual event happened. Hence, call the
input_set_timestamp API from uinput in order to provide a more
accurate sense of time for the event. Propagate only the timestamps
which are a) positive, b) within a pre-defined offset (10 secs) from
the current time, and c) not in the future.

Bug: 271946580
Bug: 277040837
Change-Id: I928be61d0114b78e2098995ee49eeb0376bef2a3
(cherry picked from commit 3a2df60200
https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git master)
Signed-off-by: Biswarup Pal <biswarupp@google.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Siarhei Vishniakou <svv@google.com>
Link: https://lore.kernel.org/r/20230427000152.1407471-1-biswarupp@google.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
(cherry picked from commit ee1f5fc55cc7bf1bca78edbb8a1f9d989d4ea03e)
2023-11-24 11:39:37 +00:00
Chungkai Mei
e9a7a2060a ANDROID: Update the ABI symbol list
Adding the following symbols:
  - __traceiter_android_rvh_update_load_sum
  - __tracepoint_android_rvh_update_load_sum

Bug: 181105055
Change-Id: Ie70d640f252f40af86aff48bcf2d5cfd80485393
Signed-off-by: Chungkai Mei <chungkai@google.com>
2023-11-23 06:34:17 +00:00
Chungkai Mei
984523c368 ANDROID: sched: Add vendor hook for update_load_sum
vendor may have the need to modify update_load_sum function

Bug: 181105055
Change-Id: I35964977a4b8917c62773d48a37340f880774e38
Signed-off-by: Chungkai Mei <chungkai@google.com>
2023-11-23 06:34:17 +00:00
yenchia.chen
f88c9605bd ANDROID: GKI: update mtktv symbol
3 function symbol(s) added
  'struct phy* devm_phy_optional_get(struct device*, const char*)'
  'int pci_generic_config_read32(struct pci_bus*, unsigned int, int, int, u32*)'
  'int pci_generic_config_write32(struct pci_bus*, unsigned int, int, int, u32)'


Bug: 312087040
Change-Id: I36cacba1ca1a63719610559c2c913f7b5d97c17f
Signed-off-by: yenchia.chen <yenchia.chen@mediatek.com>
2023-11-21 13:44:16 +00:00
Dongyun Liu
b6fd46aaf1 ANDROID: GKI: Add symbol list for Transsion
Add symbol list for Transsion

4 variable symbol(s) added
  'unsigned long avenrun[3]'
  'DEFINE_PER_CPU(struct kernel_stat, kstat)'
  'DEFINE_PER_CPU(struct kernel_cpustat, kernel_cpustat)'
  'DEFINE_PER_CPU(struct vm_event_state, vm_event_states)'

Bug: 310505482
Change-Id: I96affa0a092e35f9193af08dfd462323874cf6de
Signed-off-by: Dongyun Liu <dongyun.liu@transsion.com>
2023-11-20 16:46:13 +00:00
Vincent Donnefort
17d202d85b ANDROID: KVM: arm64: mount procfs for pKVM module loading
modprobe needs /proc/cmdline to pass module arguments to the module
loader. Sadly, so early in the boot, nothing mounts that FS.

Bug: 301483379
Change-Id: Iaab3000e3b7f908fc81f7f36adf2f73c7d3129a4
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
2023-11-20 08:41:19 +00:00
qinglin.li
be8f9c8bf9 ANDROID: GKI: Update symbol list for Amlogic
Update amlogic abi symbol list

Bug: 311606631
Change-Id: Ie7e9fd1e07b43690ebef04d49818fa0700522d36
Signed-off-by: Qinglin Li <qinglin.li@amlogic.com>
2023-11-17 18:02:25 +00:00
yixuanjiang
76fcf197f2 UPSTREAM: ASoC: soc-compress: Fix deadlock in soc_compr_open_fe
[ Upstream commit 2222214749 ]

Modify the error handling flow by release lock.
The require mutex will keep holding if open fail.

Fixes: aa9ff6a495 ("ASoC: soc-compress: Reposition and add pcm_mutex")
Signed-off-by: yixuanjiang <yixuanjiang@google.com>
Link: https://lore.kernel.org/r/20230619033127.2522477-1-yixuanjiang@google.com
Signed-off-by: Mark Brown <broonie@kernel.org>

Bug: 303236405
Change-Id: Ib7350b211390b7c2730fc99d6e87d41fe9d3a87f
Signed-off-by: Yixuan Jiang <yixuanjiang@google.com>
2023-11-17 16:20:39 +00:00
Kuninori Morimoto
7f194d670f BACKPORT: ASoC: add snd_soc_card_mutex_lock/unlock()
ASoC need to use card->mutex with _INIT or _RUNTIME,
but there is no helper function for it.

This patch adds its helper function and use it.

Because people might misunderstand that _init() is mutex initialization,
this patch renames _INIT to _ROOT and adds new
snd_soc_card_mutex_lock_root() for it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87a5zlx3tw.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>

Bug: 303236405
(cherry picked from commit 0f3b818486)
[ Yixuan Jiang: Fix minor conflict ]
Change-Id: Ie8cd7aeeea759576423760d25b5fb5b2c9ae0d12
Signed-off-by: Yixuan Jiang <yixuanjiang@google.com>
2023-11-17 16:20:39 +00:00
Kuninori Morimoto
8cdc41d9b8 BACKPORT: ASoC: expand snd_soc_dpcm_mutex_lock/unlock()
soc-pcm.c has snd_soc_dpcm_mutex_lock/unlock(),
but other files can't use it because it is static function.

It requests snd_soc_pcm_runtime as parameter (A), but sometimes we
want to use it by snd_soc_card (B).

(A)	static inline void snd_soc_dpcm_mutex_lock(struct snd_soc_pcm_runtime *rtd)
	{
		mutex_lock_nested(&rtd->card->pcm_mutex, rtd->card->pcm_subclass);
	}			   ^^^^^^^^^

(B)	mutex_lock_nested(&card->pcm_mutex, card->pcm_subclass);
			   ^^^^

We want to use it with both "rtd" and "card" for dapm lock/unlock.
To enable it, this patch uses _Generic macro.

This patch makes snd_soc_dpcm_mutex_{un}lock() global function, and use it on
each files.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87bkk1x3ud.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>

Bug: 303236405
(cherry picked from commit 38e42f6d6c)
[ Yixuan Jiang: Fix minor conflict ]
Change-Id: I6cd7fc467b9ec23d6b051d3d531695568996f7a5
Signed-off-by: Yixuan Jiang <yixuanjiang@google.com>
2023-11-17 16:20:39 +00:00
Kuninori Morimoto
2721efad0a BACKPORT: ASoC: expand snd_soc_dapm_mutex_lock/unlock()
soc.h has snd_soc_dapm_mutex_lock/unlock() definition and
many drivers are using it, but soc-dapm.c is not.

1st reason is snd_soc_dapm_mutex_lock/unlock() requests
snd_soc_dapm_context pointer as parameter (A), but sometimes soc-dapm.c
needs to use snd_soc_card (B).

(A)	static inline void snd_soc_dapm_mutex_lock(struct snd_soc_dapm_context *dapm)
	{
		mutex_lock_nested(&dapm->card->dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME);
	}			   ^^^^^^^^^^

(B)	mutex_lock_nested(&card->dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME);
			   ^^^^

2nd reason is it want to use SND_SOC_DAPM_CLASS_INIT for mutex_lock_nested(),
but helper is using _RUNTIME (A).

The conclusion is we want to use "dapm vs card" and "_RUNTIME vs _INIT"
for dapm lock/unlock. To enable this selfish request, this patch uses
_Generic macro. We can use snd_soc_dapm_mutex_lock/unlock() for both
dapm and card case.

	snd_soc_dapm_mutex_lock(dapm);	snd_soc_dapm_mutex_unlock(dapm);
	snd_soc_dapm_mutex_lock(card);	snd_soc_dapm_mutex_unlock(card);

Current soc-dapm.c is using both mutex_lock() and mutex_lock_nested().
This patch handles mutex_lock() as mutex_lock_nested(..., 0),
in other words, handles below as same.

	mutex_lock(&card->dapm_mutex);
	mutex_lock_nested(&card->dapm_mutex, SND_SOC_DAPM_CLASS_INIT);

Because people might misunderstand that _init() is mutex initialization,
this patch renames _INIT to _ROOT and adds new
snd_soc_dapm_mutex_lock_root() for it.

This patch also moves snd_soc_dapm_subclass definition from soc-dapm.h
to soc.h to keep related code together.

Because very complex soc.h vs soc-dapm.h relationship,
it is difficult/impossible to define these helper into soc-dapm.h.

Change-Id: I064718bbad9d053a0c84549be0a5e942f29a5dee
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87cz4hx3v0.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>

Bug: 303236405
(cherry picked from commit 4a778bdc7a)
[ Yixuan Jiang: Fix minor conflict ]
Change-Id: I0fdbc15471f438cd6d8b6c63b106de7186b07ea2
Signed-off-by: Yixuan Jiang <yixuanjiang@google.com>
2023-11-17 16:20:39 +00:00
Keir Fraser
b7bcf839e1 ANDROID: KVM: arm64: Fix error path in pkvm_mem_abort()
On one error path, pin_user_pages has succeeded and should be
undone.

Bug: 310131277
Change-Id: I92fe0c54bb5b8005f848491f5e9be1090b61fbd1
Signed-off-by: Keir Fraser <keirf@google.com>
2023-11-10 09:59:50 +00:00
qinglin.li
27aaaa9af5 ANDROID: GKI: Update symbol list for Amlogic
1 function symbol(s) added
  'int __traceiter_android_vh_isolate_freepages(void*, struct compact_control*, struct page*, bool*)'

1 variable symbol(s) added
  'struct tracepoint __tracepoint_android_vh_isolate_freepages'

Bug: 309371168
Change-Id: Id49463977ff3cbd57b815f2443b60cc1aaac1352
Signed-off-by: Qinglin Li <qinglin.li@amlogic.com>
2023-11-08 19:27:57 +08:00
qinglin.li
0681d570ba ANDROID: mm: add vendor hook in isolate_freepages()
By this vh, so that we can skip if this page needs to be treated
specially, like as cma.

In the Android kernel, the use of cma is restricted, and filecache
cannot use cma.But during the memory compaction process, filecache
may be migrated to cma pool, so a judgment needs to be added here
to restrict filecache from entering cma.

Bug: 309371168
Change-Id: I3ec29bdf5f7b6ac4c7af0a317aa41ad77b71444d
Signed-off-by: Qinglin Li <qinglin.li@amlogic.com>
2023-11-08 19:27:25 +08:00
qinglin.li
f206a8c31c ANDROID: GKI: Update symbol list for Amlogic
2 function symbol(s) added
  'void debugfs_lookup_and_remove(const char*, struct dentry*)'
  'irqreturn_t usb_hcd_irq(int, void*)'

Bug: 309359622
Change-Id: I0637daec55e054b4ef1a481b65a2691547376ea0
Signed-off-by: Qinglin Li <qinglin.li@amlogic.com>
2023-11-06 14:27:25 +08:00
tfshen
88b56693e9 ANDROID: GKI: Update symbol list for rtktv
1 function symbol(s) added
  'int hid_open_report(hid_device*)'

Bug: 285483154

Change-Id: I3e9b9e1a9c9d260930b17f479c2e9675e3cd4468
Signed-off-by: tfshen <tfshen@realtek.com>
2023-11-03 08:14:56 +00:00
Lyon Wang
dbeed23196 ANDROID: fs/passthrough: Fix compatibility with R/O file system
Look at the passthrough file and check to see if its mount is read-only.

Bug: 297482438
Signed-off-by: Lyon Wang <lyon.wang@mediatek.com>
Change-Id: I0f483c6bcb1effe395eee07b6d721f343840d115
2023-11-01 22:07:44 +00:00
Chungkai Mei
bde02310d4 ANDROID: Update the ABI symbol list
Adding the following symbols:
  - __traceiter_android_rvh_util_fits_cpu
  - __tracepoint_android_rvh_util_fits_cpu

Bug: 261704404
Change-Id: I9e94aa6d5dbee3311b4f359d01d4b66b5d205fdd
Signed-off-by: Chungkai Mei <chungkai@google.com>
2023-11-01 17:13:13 +00:00
Will Deacon
71320d0c1e Revert "ANDROID: KVM: arm64: Don't allocate from handle_host_mem_abort"
This reverts commit 951d15786a.

Reason for revert: b/306244914

Change-Id: Icd3c3c8c7d330631c12a9133434abcb50fe9347d
Signed-off-by: Will Deacon <willdeacon@google.com>
2023-11-01 11:11:49 +00:00
Kyle Zeng
7b356cb300 UPSTREAM: netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c
commit 050d91c03b upstream.

The missing IP_SET_HASH_WITH_NET0 macro in ip_set_hash_netportnet can
lead to the use of wrong `CIDR_POS(c)` for calculating array offsets,
which can lead to integer underflow. As a result, it leads to slab
out-of-bound access.
This patch adds back the IP_SET_HASH_WITH_NET0 macro to
ip_set_hash_netportnet to address the issue.

Bug: 302199939
Fixes: 886503f34d ("netfilter: ipset: actually allow allowable CIDR 0 in hash:net,port,net")
Suggested-by: Jozsef Kadlecsik <kadlec@netfilter.org>
Signed-off-by: Kyle Zeng <zengyhkyle@gmail.com>
Acked-by: Jozsef Kadlecsik <kadlec@netfilter.org>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a9e6142e5f)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I11cc1650e7df9d54041164b6bdb01f3a0de46de4
2023-10-31 17:44:03 +00:00
Stefano Garzarella
7d75f8038b UPSTREAM: vringh: don't use vringh_kiov_advance() in vringh_iov_xfer()
commit 7aed44babc upstream.

In the while loop of vringh_iov_xfer(), `partlen` could be 0 if one of
the `iov` has 0 lenght.
In this case, we should skip the iov and go to the next one.
But calling vringh_kiov_advance() with 0 lenght does not cause the
advancement, since it returns immediately if asked to advance by 0 bytes.

Let's restore the code that was there before commit b8c06ad4d6
("vringh: implement vringh_kiov_advance()"), avoiding using
vringh_kiov_advance().

Bug: 302200656
Fixes: b8c06ad4d6 ("vringh: implement vringh_kiov_advance()")
Cc: stable@vger.kernel.org
Reported-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 3a72decd6b)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I5ed14650aca07e0f8d52023cf148bd63e87d04c9
2023-10-31 16:50:05 +00:00
Shuzhen Wang
484868e95c BACKPORT: usb: gadget: uvc: Add missing initialization of ssp config descriptor
In case the uvc gadget is super speed plus, the corresponding config
descriptor wasn't initialized. As a result, the host will not recognize
the devices when using super speed plus connection.

This patch initializes them to super speed descriptors.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Shuzhen Wang <shuzhenwang@google.com>
Link: https://lore.kernel.org/r/20231027183440.1994315-1-shuzhenwang@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 301887900
Change-Id: I79c699bafaf959990da3a8101c8bfe0f8dabf72f
(cherry picked from commit c70793fb7632a153862ee9060e6d48131469a29c
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
[arakesh: Resolved minor merge conflicts in f_uvc.c]
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-10-30 16:14:15 -07:00
Linyu Yuan
ae71397d90 BACKPORT: usb: gadget: unconditionally allocate hs/ss descriptor in bind operation
Take f_midi_bind() for example,  when composite layer call it, it will
allocate hs descriptor by calling gadget_is_dualspeed() API to check
gadget max support speed capability, but most other gadget function didn't
do like this.

To follow other function drivers, it is safe to remove the check which
mean support all possible link speed by default in function driver.

Similar change apply to midi2 and uvc.

Also in midi and midi2, as there is no descriptor difference between
super speed and super speed plus, follow other gadget function drivers,
do not allocate descriptor for super speed plus, composite layer will
handle it properly.

Signed-off-by: Linyu Yuan <quic_linyyuan@quicinc.com>
Link: https://lore.kernel.org/r/20230803091053.9714-5-quic_linyyuan@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 301887900
Change-Id: I8b287266b3973c66e559bd3eea9adbe95e051be7
(cherry picked from commit 46decc82ff
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
[arakesh: f_midi2.c doesn't exist, so dropped those changes]
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-10-30 16:14:04 -07:00
Linyu Yuan
f5beeb23ed UPSTREAM: usb: gadget: f_uvc: change endpoint allocation in uvc_function_bind()
when call uvc_function_bind(), gadget still have no connection speed,
just follow other gadget function, use fs endpoint descriptor to allocate
a video endpoint, remove gadget_is_{super|dual}speed() API call.

Signed-off-by: Linyu Yuan <quic_linyyuan@quicinc.com>
Link: https://lore.kernel.org/r/20230803091053.9714-4-quic_linyyuan@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 301887900
Change-Id: I076e51716e4bab7a70a43ad3e080b4c4e110c9db
(cherry picked from commit 3c5b006f3e
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-10-30 16:13:49 -07:00
Yue Haibing
65aa3dd94a UPSTREAM: usb: gadget: function: Remove unused declarations
These declarations are not implemented anymore, remove them.

Signed-off-by: Yue Haibing <yuehaibing@huawei.com>
Link: https://lore.kernel.org/r/20230818124025.51576-1-yuehaibing@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 301887900
Change-Id: Ib1ac4d7ecada70d467cd9b2d688f13ba3797a05c
(cherry picked from commit ae25761157
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-10-30 16:13:36 -07:00
Avichal Rakesh
81bffd1c1a UPSTREAM: usb: gadget: uvc: clean up comments and styling in video_pump
This patch elaborates on some of the edge cases handled by
video_pump around setting no_interrupt flag, and brings the
code style in line with rest of the file.

Link: https://lore.kernel.org/20230602151916.GH26944@pendragon.ideasonboard.com/
Signed-off-by: Avichal Rakesh <arakesh@google.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Message-ID: <20230602220455.313801-1-arakesh@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 301887900
Change-Id: Ie5f28e8d8f55158e32e0ff03b79f0f18cce7d6af
(cherry picked from commit 5ae8a35459
 https://kernel.googlesource.com/pub/scm/linux/kernel/git/gregkh/usb usb-next)
Signed-off-by: Avichal Rakesh <arakesh@google.com>
2023-10-30 16:13:13 -07:00
Yoshihiro Shimoda
0772c040ae UPSTREAM: ravb: Fix use-after-free issue in ravb_tx_timeout_work()
[ Upstream commit 3971442870 ]

The ravb_stop() should call cancel_work_sync(). Otherwise,
ravb_tx_timeout_work() is possible to use the freed priv after
ravb_remove() was called like below:

CPU0			CPU1
			ravb_tx_timeout()
ravb_remove()
unregister_netdev()
free_netdev(ndev)
// free priv
			ravb_tx_timeout_work()
			// use priv

unregister_netdev() will call .ndo_stop() so that ravb_stop() is
called. And, after phy_stop() is called, netif_carrier_off()
is also called. So that .ndo_tx_timeout() will not be called
after phy_stop().

Bug: 289003868
Fixes: c156633f13 ("Renesas Ethernet AVB driver proper")
Reported-by: Zheng Wang <zyytlz.wz@163.com>
Closes: https://lore.kernel.org/netdev/20230725030026.1664873-1-zyytlz.wz@163.com/
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Link: https://lore.kernel.org/r/20231005011201.14368-3-yoshihiro.shimoda.uh@renesas.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 6f6fa8061f)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I36fcd769d93817adaa04162cae0b54b1addbb9bf
2023-10-30 18:02:47 +00:00
Yoshihiro Shimoda
069cc1491e UPSTREAM: ravb: Fix up dma_free_coherent() call in ravb_remove()
[ Upstream commit e6864af614 ]

In ravb_remove(), dma_free_coherent() should be call after
unregister_netdev(). Otherwise, this controller is possible to use
the freed buffer.

Bug: 289003868
Fixes: c156633f13 ("Renesas Ethernet AVB driver proper")
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Link: https://lore.kernel.org/r/20231005011201.14368-2-yoshihiro.shimoda.uh@renesas.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 3f9295ad7f)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I8e7da5816f715307c7d8bcd881a2a5ecb52439bb
2023-10-30 17:37:25 +00:00
RD Babiera
501954e892 BACKPORT: usb: typec: altmodes/displayport: Signal hpd low when exiting mode
Upon receiving an ACK for a sent EXIT_MODE message, the DisplayPort
driver currently resets the status and configuration of the port
partner. The hpd signal is not updated despite being part of the
status, so the Display stack can still transmit video despite
typec_altmode_exit placing the lanes in a Safe State.

Set hpd to low when a sent EXIT_MODE message is ACK'ed.

Fixes: 0e3bb7d689 ("usb: typec: Add driver for DisplayPort alternate mode")
Cc: stable@vger.kernel.org
Signed-off-by: RD Babiera <rdbabiera@google.com>
Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20231009210057.3773877-2-rdbabiera@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 297208252
Bug: 308184880
(cherry picked from commit 89434b069e)
[rd: removed unused call to drm_connector_oob_hotplug_event]
Change-Id: Iad61fa4db6b126db7fc3bd717b60c2ca35da1311
Signed-off-by: RD Babiera <rdbabiera@google.com>
2023-10-30 17:20:47 +00:00
Roy Luo
b39c40b693 ANDROID: Update the ABI symbol list
Adding the following symbols:
  - kernfs_find_and_get_ns
  - kernfs_notify
  - kernfs_put

Bug: 297224564
Change-Id: I3a00968a09de82f954310db567065336e1857885
Signed-off-by: Roy Luo <royluo@google.com>
2023-10-30 17:11:16 +00:00