Commit Graph

1056560 Commits

Author SHA1 Message Date
Alistair Delva aa2c64b99d Merge branch 'android13-5.15' into android13-5.15-lts
Need to merge back android13-5.15 to get the ABI updates so we can fix
presubmits on this branch.

Change-Id: If7150cb0c3e4b8872bdebf2e622efb3a0739bd55
Signed-off-by: Alistair Delva <adelva@google.com>
2022-08-03 12:41:32 -07:00
Vamsi Krishna Lanka d20aaea59d ANDROID: firmware_loader: Restore permissions for firmware class path
Permissions for accessing firmware class path was wrongly set to write only for root
as a result the path can not be read. Restore permissions, so that it can be read.
Add a getter function to read the class path.

Bug: 240542962
Fixes: d551647f3b ("ANDROID: firmware_loader: Add support for customer firmware paths")
Fixes: 87abd99c7f ("ANDROID: firmware_loader: Fix warning with firmware_param_path_set").
Change-Id: I65f434db6a0c31d0b01a5a58cfba0d241e98dd0e
Signed-off-by: Vamsi Krishna Lanka <quic_vamslank@quicinc.com>
2022-08-03 17:38:05 +00:00
Walter-zh Wu d093524166 ANDROID: Update symbol list of mediatek
Leaf changes summary: 5 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 3 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable
Function symbols changes summary: 0 Removed, 2 Added function symbols not referenced by debug info
Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referenced by debug info

3 Added functions:

  [A] 'function arm_smccc_conduit arm_smccc_1_1_get_conduit()'
  [A] 'function u32 arm_smccc_get_version()'
  [A] 'function int device_match_any(device*, void*)'

2 Added function symbols not referenced by debug info:

  [A] arm_smccc_1_2_hvc
  [A] arm_smccc_1_2_smc

Bug: 240232565
Signed-off-by: Walter Wu <walter-zh.wu@mediatek.com>
Change-Id: I78615677d5b72ec1c1289ddb4df276733fe4082b
2022-08-03 15:40:55 +00:00
yangshiguang 57cc225ed5 ANDROID: GKI: update xiaomi symbol list
Leaf changes summary: 51 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 26 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 25 Added variables

26 Added functions:

  [A] 'function int __traceiter_android_rvh_cpuset_fork(void*, task_struct*, int*)'
  [A] 'function int __traceiter_android_rvh_set_cpus_allowed_comm(void*, task_struct*, const cpumask*)'
  [A] 'function int __traceiter_android_vh_binder_alloc_new_buf_locked(void*, size_t, size_t*, int)'
  [A] 'function int __traceiter_android_vh_binder_reply(void*, binder_proc*, binder_proc*, binder_thread*, binder_transaction_data*)'
  [A] 'function int __traceiter_android_vh_binder_trans(void*, binder_proc*, binder_proc*, binder_thread*, binder_transaction_data*)'
  [A] 'function int __traceiter_android_vh_do_send_sig_info(void*, int, task_struct*, task_struct*)'
  [A] 'function int __traceiter_android_vh_map_util_freq_new(void*, unsigned long int, unsigned long int, unsigned long int, unsigned long int*, cpufreq_policy*, bool*)'
  [A] 'function int __traceiter_android_vh_rwsem_read_wait_start(void*, rw_semaphore*)'
  [A] 'function int __traceiter_android_vh_rwsem_write_wait_start(void*, rw_semaphore*)'
  [A] 'function int __traceiter_android_vh_sched_setaffinity_early(void*, task_struct*, const cpumask*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_abort(void*, scsi_cmnd*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_clear_cmd(void*, ufs_hba*, int, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_clear_pending(void*, ufs_hba*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_config(void*, ufs_hba*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_get_outstanding_reqs(void*, ufs_hba*, unsigned long int**, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_handler(void*, ufs_hba*, u32, irqreturn_t*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_has_oustanding_reqs(void*, ufs_hba*, bool*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_hba_capabilities(void*, ufs_hba*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_make_hba_operational(void*, ufs_hba*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_map_tag(void*, ufs_hba*, int, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_max_tag(void*, ufs_hba*, int*)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_print_trs(void*, ufs_hba*, bool)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_send_command(void*, ufs_hba*, unsigned int)'
  [A] 'function int __traceiter_android_vh_ufs_mcq_set_sqid(void*, ufs_hba*, int, ufshcd_lrb*)'
  [A] 'function int __traceiter_android_vh_ufs_use_mcq_hooks(void*, ufs_hba*, bool*)'
  [A] 'function void cpuset_cpus_allowed(task_struct*, cpumask*)'

25 Added variables:

  [A] 'tracepoint __tracepoint_android_rvh_cpuset_fork'
  [A] 'tracepoint __tracepoint_android_rvh_set_cpus_allowed_comm'
  [A] 'tracepoint __tracepoint_android_vh_binder_alloc_new_buf_locked'
  [A] 'tracepoint __tracepoint_android_vh_binder_reply'
  [A] 'tracepoint __tracepoint_android_vh_binder_trans'
  [A] 'tracepoint __tracepoint_android_vh_do_send_sig_info'
  [A] 'tracepoint __tracepoint_android_vh_map_util_freq_new'
  [A] 'tracepoint __tracepoint_android_vh_rwsem_read_wait_start'
  [A] 'tracepoint __tracepoint_android_vh_rwsem_write_wait_start'
  [A] 'tracepoint __tracepoint_android_vh_sched_setaffinity_early'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_abort'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_clear_cmd'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_clear_pending'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_config'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_get_outstanding_reqs'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_handler'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_has_oustanding_reqs'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_hba_capabilities'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_make_hba_operational'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_map_tag'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_max_tag'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_print_trs'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_send_command'
  [A] 'tracepoint __tracepoint_android_vh_ufs_mcq_set_sqid'
  [A] 'tracepoint __tracepoint_android_vh_ufs_use_mcq_hooks'

Bug: 241062574

Signed-off-by: yangshiguang <yangshiguang@xiaomi.com>
Change-Id: I75f55d59df85788badea35bdb89278dcf4db74be
2022-08-03 15:38:14 +00:00
Carlos Llamas 3108843b69 ANDROID: binder: fix pending prio state for early exit
When calling binder_do_set_priority() with the same policy and priority
values as the current task, we exit early since there is nothing to do.
However, the BINDER_PRIO_PENDING state might be set and in this case we
fail to update it. A subsequent call to binder_transaction_priority()
will then read an incorrect state and save the wrong priority. Fix this
by setting thread->prio_state to BINDER_PRIO_SET on our way out.

Bug: 199309216
Fixes: cac827f2619b ("ANDROID: binder: fix race in priority restore")
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: I21e906cf4b2ebee908af41fe101ecd458ae1991c
(cherry picked from commit 72193be6d4bd9ad29dacd998c14dff97f7a6c6c9)
2022-08-02 19:49:24 +00:00
Carlos Llamas ae3fa5d16a FROMLIST: binder: fix UAF of ref->proc caused by race condition
A transaction of type BINDER_TYPE_WEAK_HANDLE can fail to increment the
reference for a node. In this case, the target proc normally releases
the failed reference upon close as expected. However, if the target is
dying in parallel the call will race with binder_deferred_release(), so
the target could have released all of its references by now leaving the
cleanup of the new failed reference unhandled.

The transaction then ends and the target proc gets released making the
ref->proc now a dangling pointer. Later on, ref->node is closed and we
attempt to take spin_lock(&ref->proc->inner_lock), which leads to the
use-after-free bug reported below. Let's fix this by cleaning up the
failed reference on the spot instead of relying on the target to do so.

  ==================================================================
  BUG: KASAN: use-after-free in _raw_spin_lock+0xa8/0x150
  Write of size 4 at addr ffff5ca207094238 by task kworker/1:0/590

  CPU: 1 PID: 590 Comm: kworker/1:0 Not tainted 5.19.0-rc8 #10
  Hardware name: linux,dummy-virt (DT)
  Workqueue: events binder_deferred_func
  Call trace:
   dump_backtrace.part.0+0x1d0/0x1e0
   show_stack+0x18/0x70
   dump_stack_lvl+0x68/0x84
   print_report+0x2e4/0x61c
   kasan_report+0xa4/0x110
   kasan_check_range+0xfc/0x1a4
   __kasan_check_write+0x3c/0x50
   _raw_spin_lock+0xa8/0x150
   binder_deferred_func+0x5e0/0x9b0
   process_one_work+0x38c/0x5f0
   worker_thread+0x9c/0x694
   kthread+0x188/0x190
   ret_from_fork+0x10/0x20

Signed-off-by: Carlos Llamas <cmllamas@google.com>
Acked-by: Christian Brauner (Microsoft) <brauner@kernel.org>

Bug: 239630375
Link: https://lore.kernel.org/all/20220801182511.3371447-1-cmllamas@google.com/
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Change-Id: I5085dd0dc805a780a64c057e5819f82dd8f02868
2022-08-02 17:04:05 +00:00
Yunxian He 5d05a30e87 ANDROID: ABI: Update symbols to unisoc whitelist
Update whitelist for the symbols used by the unisoc device and
update the ABI representation accordingly

Leaf changes summary: 8 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 8 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

8 Added functions:

  [A] 'function int __typec_altmode_register_driver(typec_altmode_driver*, module*)'
  [A] 'function int extcon_sync(extcon_dev*, unsigned int)'
  [A] 'function typec_port* typec_altmode2port(typec_altmode*)'
  [A] 'function int typec_altmode_enter(typec_altmode*, u32*)'
  [A] 'function int typec_altmode_exit(typec_altmode*)'
  [A] 'function const typec_altmode* typec_altmode_get_partner(typec_altmode*)'
  [A] 'function void typec_altmode_unregister_driver(typec_altmode_driver*)'
  [A] 'function int typec_get_negotiated_svdm_version(typec_port*)'

Bug: 240743287
Change-Id: I11ba6666a22c89297c837aca9b88435093486181
Signed-off-by: Yunxian He <yunxian.he@unisoc.com>
2022-08-02 10:49:57 +00:00
Todd Kjos 5bf17fef6c ANDROID: Remove all but top-level OWNERS
Now that the branch is used to create production GKI
images, need to institute ACK DrNo for all commits.

The DrNo approvers are in the android-mainline branch
at /OWNERS_DrNo.

Bug: 240999246
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: Id5bb83d7add5f314df6816c1c51b4bf2d8018e79
2022-08-01 23:15:30 +00:00
Rick Yiu d66cc0913f ANDROID: sched: Add vendor hook for rt util update
Vendor may have need to track rt util.

Bug: 201261299
Signed-off-by: Rick Yiu <rickyiu@google.com>
Change-Id: I2f4e5142c6bc8574ee3558042e1fb0dae13b702d
2022-08-01 20:51:13 +00:00
Rick Yiu eb994f2728 ANDROID: sched: Add vendor hook for util-update related functions
Vendor may have the need to implement their own util tracking.

Bug: 201260585
Signed-off-by: Rick Yiu <rickyiu@google.com>
Change-Id: I973902e6ff82a85ecd029ac5a78692d629df1ebe
2022-08-01 20:51:13 +00:00
Darren Hsu 9204c086fe ANDROID: power: add a vendor hook to log unfrozen tasks
We recently noticed an issue where freezing of user space tasks is
failed due to a process being in uninterruptible sleep state.
Currently, the logging of unfrozen tasks is disabled by default.
Although it can be enabled for debugging via a adb command, it's
usually hard to reproduce the issue. So we want to add a vendor hook
to log unfrozen tasks.

pm_debug_messages enables a large amount of log output during every
suspend/resume cycle of which at most 1 line is helpful for
investigating this recurring class of battery life issues. Deploying
builds with pm_debug_messages is therefore not viable, as it
substantially shortens the temporal span of the log. The new vendor
hook will only emit logs specific to this class of problem, and only
when the problem actually manifests.

Bug: 240091483
Test: all presubmit tests passed
Change-Id: Ief3d4196ea7220d4897c00a37ab96f456dbf2259
Signed-off-by: Darren Hsu <darrenhsu@google.com>
(cherry picked from commit 3821e5b25c4067d2263bc47c674fde57a17cf7c4)
2022-08-01 20:47:29 +00:00
fengqi 900ac7776e ANDROID: GKI: update xiaomi symbol list
Leaf changes summary: 4 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 3 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

3 Added functions:

  [A] 'function int __traceiter_binder_txn_latency_free(void*, binder_transaction*, int, int, int, int)'
  [A] 'function int blk_mq_alloc_sq_tag_set(blk_mq_tag_set*, const blk_mq_ops*, unsigned int, unsigned int)'
  [A] 'function void console_verbose()'

1 Added variable:

  [A] 'tracepoint __tracepoint_binder_txn_latency_free'

Bug: 238380405

Signed-off-by: fengqi <fengqi@xiaomi.com>
Change-Id: Iaee18fe7b53b55dffe0ce0619bafc9e5e4f4f01f
Signed-off-by: fengqi <fengqi@xiaomi.com>
2022-08-01 20:36:58 +00:00
Chetan C R 5d86a62404 ANDROID: GKI: Update abi_gki_aarch64_qcom for clk_get_sys
Add clk_get_sys symbol to API list.

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function clk* clk_get_sys(const char*, const char*)'

Bug: 240916999
Change-Id: I623e1be0458e9bec716999166d6fca0becdb5d50
Signed-off-by: Chetan C R <quic_cchinnad@quicinc.com>
2022-08-01 16:40:40 +00:00
Venkata Rao Kakani ba17a12d6f ANDROID: abi_gki_aarch64_qcom: Update symbol list
Add qcom_smem_state_put symbol.

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function void qcom_smem_state_put(qcom_smem_state*)'

Bug: 240369699

Change-Id: Ic6a467d185287e1c49fc72e791a440228a9d9710
Signed-off-by: Venkata Rao Kakani <quic_vkakani@quicinc.com>
2022-08-01 16:34:53 +00:00
Shreyas K K 139d316361 ANDROID: GKI: Add on_each_cpu_cond_mask for abi_gki_aarch64_qcom
Add symbol on_each_cpu_cond_mask to iterate conditionally
over a set of CPUs.

Bug: 240543738
Signed-off-by: Shreyas K K <quic_shrekk@quicinc.com>
Change-Id: Ibeaab3a0c0c6244389f80b18f52a237c686064ac
2022-07-28 22:42:40 +05:30
Roman Kiryanov 473399ba79 ANDROID: Update ABI and abi_gki_aarch64_virtual_device
5 Added functions:

  [A] 'function void __page_frag_cache_drain(page*, unsigned int)'
  [A] 'function int dev_set_threaded(net_device*, bool)'
  [A] 'function void* page_frag_alloc_align(page_frag_cache*, unsigned int, gfp_t, unsigned int)'
  [A] 'function int pci_disable_link_state(pci_dev*, int)'
  [A] 'function void usb_init_urb(urb*)'

These functions are required to switch virtual devices
from an off-tree rtl8821cu to in-tree mt76x wifi drivers.

Bug: 220066422
Signed-off-by: Roman Kiryanov <rkir@google.com>
Change-Id: I1acfa760a50b4a06d047beb13efc455f90deada7
2022-07-28 17:08:26 +00:00
liujinbao1 124ff5de44 UPSTREAM: exfat: reduce block requests when zeroing a cluster
If 'dirsync' is enabled, when zeroing a cluster, submitting
sector by sector will generate many block requests, will
cause the block device to not fully perform its performance.

This commit makes the sectors in a cluster to be submitted in
once, it will reduce the number of block requests. This will
make the block device to give full play to its performance.

Test create 1000 directories on SD card with:

$ time (for ((i=0;i<1000;i++)); do mkdir dir${i}; done)

Performance has been improved by more than 73% on imx6q-sabrelite.

Cluster size       Before         After       Improvement
64  KBytes         3m34.036s      0m56.052s   73.8%
128 KBytes         6m2.644s       1m13.354s   79.8%
256 KBytes         11m22.202s     1m39.451s   85.4%

imx6q-sabrelite:
  - CPU: 792 MHz x4
  - Memory: 1GB DDR3
  - SD Card: SanDisk 8GB Class 4

Bug: 239500767

Signed-off-by: Yuezhang Mo <Yuezhang.Mo@sony.com>
Reviewed-by: Andy Wu <Andy.Wu@sony.com>
Reviewed-by: Aoyama Wataru <wataru.aoyama@sony.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Sungjong Seo <sj1557.seo@samsung.com>
(cherry picked from commit 1b6138385499507147e8f654840f4c39afe6adbf)
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>

Signed-off-by: liujinbao1 <liujinbao1@xiaomi.com>
Change-Id: Ie9ed20fb90caed2fce2692f7fb81272cf647faa7
(cherry picked from commit 1f44e4411f9e914fac45dd1a232ccabcc05811b3)
2022-07-28 15:37:26 +00:00
Wenchao Chen a8c1d81605 ANDROID: GKI: add vendor hook for sd
Modify the timing of cmd line and data line in HS mode to improve the compatibility of SD cards that only support HS mode.

Bug: 240510879
Change-Id: Ia1c98845f63b4b051d0b1db80856ee98dc5da8c1
Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com>
2022-07-28 15:36:32 +00:00
Eddie Hung 68d1090ed0 ANDROID: Update symbol list of mediatek
Leaf changes summary: 7 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 7 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

7 Added functions:

  [A] 'function int radix_tree_maybe_preload(gfp_t)'
  [A] 'function size_t sg_pcopy_from_buffer(scatterlist*, unsigned int, void*, size_t, off_t)'
  [A] 'function size_t sg_pcopy_to_buffer(scatterlist*, unsigned int, void*, size_t, off_t)'
  [A] 'function void usb_hcd_end_port_resume(usb_bus*, int)'
  [A] 'function void usb_hcd_start_port_resume(usb_bus*, int)'
  [A] 'function int usb_hub_clear_tt_buffer(urb*)'
  [A] 'function void usb_wakeup_notification(usb_device*, unsigned int)'

Bug: 240518955
Change-Id: Ib6d8ea715178843c53219b5f9c763e9a06c024eb
Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
2022-07-28 08:22:00 +00:00
jy.ser 85a0d64d3f ANDROID: ABI: update allowed list for galaxy
Bug: 239503301

Leaf changes summary: 22 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 19 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 2 Added variables
Function symbols changes summary: 0 Removed, 1 Added function symbol not referenced by debug info
Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referenced by debug info

19 Added functions:

  [A] 'function int __traceiter_android_rvh_do_undefinstr(void*, pt_regs*)'
  [A] 'function void blk_mq_free_request(request*)'
  [A] 'function bool blk_mq_sched_try_insert_merge(request_queue*, request*, list_head*)'
  [A] 'function bool blk_mq_sched_try_merge(request_queue*, bio*, unsigned int, request**)'
  [A] 'function void blk_queue_rq_timeout(request_queue*, unsigned int)'
  [A] 'function int blkcg_activate_policy(request_queue*, const blkcg_policy*)'
  [A] 'function void blkcg_deactivate_policy(request_queue*, const blkcg_policy*)'
  [A] 'function blkcg_gq* blkg_lookup_slowpath(blkcg*, request_queue*, bool)'
  [A] 'function int cleancache_register_ops(const cleancache_ops*)'
  [A] 'function cgroup_subsys_state* css_next_descendant_pre(cgroup_subsys_state*, cgroup_subsys_state*)'
  [A] 'function bool elv_bio_merge_ok(request*, bio*)'
  [A] 'function void elv_rb_add(rb_root*, request*)'
  [A] 'function void elv_rb_del(rb_root*, request*)'
  [A] 'function request* elv_rb_find(rb_root*, sector_t)'
  [A] 'function request* elv_rb_former_request(request_queue*, request*)'
  [A] 'function request* elv_rb_latter_request(request_queue*, request*)'
  [A] 'function void elv_rqhash_add(request_queue*, request*)'
  [A] 'function void elv_rqhash_del(request_queue*, request*)'
  [A] 'function void smpboot_unregister_percpu_thread(smp_hotplug_thread*)'

2 Added variables:

  [A] 'tracepoint __tracepoint_android_rvh_do_undefinstr'
  [A] 'blkcg blkcg_root'

1 Added function symbol not referenced by debug info:

  [A] copy_page

Signed-off-by: Jiyeon Ser <jy.ser@samsung.com>
Change-Id: Ia79bb0366ab19632815820d6628c69b5bcf2f251
2022-07-27 22:23:45 +00:00
Wenchao Chen 80de3eb85d ANDROID: ABI: Update symbols to unisoc whitelist for mmc 1st
Update whitelist for the symbols used by the unisoc device and
update the ABI representation accordingly

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function mmc_issue_type mmc_issue_type(mmc_queue*, request*)'

Bug: 239880330
Change-Id: I0f514a38e57a8ff4f1ed8b1b23c444e7bc8b72bf
Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com>
2022-07-27 19:22:03 +00:00
Rafael J. Wysocki 39722f310f BACKPORT: PM: runtime: Fix supplier device management during consumer probe
Because pm_runtime_get_suppliers() bumps up the rpm_active counter
of each device link to a supplier of the given device in addition
to bumping up the supplier's PM-runtime usage counter, a runtime
suspend of the consumer device may case the latter to go down to 0
when pm_runtime_put_suppliers() is running on a remote CPU.  If that
happens after pm_runtime_put_suppliers() has released power.lock for
the consumer device, and a runtime resume of that device takes place
immediately after it, before pm_runtime_put() is called for the
supplier, that pm_runtime_put() call may cause the supplier to be
suspended even though the consumer is active.

To prevent that from happening, modify pm_runtime_get_suppliers() to
call pm_runtime_get_sync() for the given device's suppliers without
touching the rpm_active counters of the involved device links
Accordingly, modify pm_runtime_put_suppliers() to call pm_runtime_put()
for the given device's suppliers without looking at the rpm_active
counters of the device links at hand.  [This is analogous to what
happened before commit 4c06c4e6cf ("driver core: Fix possible
supplier PM-usage counter imbalance").]

Since pm_runtime_get_suppliers() sets supplier_preactivated for each
device link where the supplier's PM-runtime usage counter has been
incremented and pm_runtime_put_suppliers() calls pm_runtime_put() for
the suppliers whose device links have supplier_preactivated set, the
PM-runtime usage counter is balanced for each supplier and this is
independent of the runtime suspend and resume of the consumer device.

However, in case a device link with DL_FLAG_PM_RUNTIME set is dropped
during the consumer device probe, so pm_runtime_get_suppliers() bumps
up the supplier's PM-runtime usage counter, but it cannot be dropped by
pm_runtime_put_suppliers(), make device_link_release_fn() take care of
that.

Fixes: 4c06c4e6cf ("driver core: Fix possible supplier PM-usage counter imbalance")
Reported-by: Peter Wang <peter.wang@mediatek.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
Cc: 5.1+ <stable@vger.kernel.org> # 5.1+
Change-Id: I10cc98e6694e6f10803e7fd96d74588f07c9fa13
(cherry picked from commit 887371066039011144b4a94af97d9328df6869a2)
[Peter: Resolved minor conflict in drivers/base/core.c, drivers/base/power/runtime.c ]
Signed-off-by: Peter Wang <peter.wang@mediatek.com>
2022-07-27 19:21:21 +00:00
zhengding chen e107ea9e4d ANDROID: vendor_hooks: Add hooks for binder proc transaction
When servicemanager process added service proxy from other process
register the service, we want to know the matching relation between
handle in the process and service name. When binder transaction
happened, We want to know what process calls what method on what service.

Bug: 186604985

Signed-off-by: zhengding chen <chenzhengding@oppo.com>
Change-Id: I813d1cde10294d8665f899f7fef0d444ec1f1f5e
2022-07-27 19:14:41 +00:00
Jing-Ting Wu 1b458bb3d1 ANDROID: sched: add vendor hook to PELT multiplier
We add vendor hook at sched_pelt_multiplier for
performance tuning.

Bug: 240249624

Change-Id: I10e3436a986dd5dd7d375460922407666f27739d
Signed-off-by: Jing-Ting Wu <Jing-Ting.Wu@mediatek.com>
2022-07-27 17:37:45 +00:00
Byoungtae Cho ec99e52826 ANDROID: GKI: update symbol list for ExynosAuto SoC
This patch updates ABI symbol list to support the Marvell's ethernet phy
transceivers.

Leaf changes summary: 21 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 20 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

20 Added functions:

  [A] 'function int ethnl_cable_test_amplitude(phy_device*, u8, s16)'
  [A] 'function int ethnl_cable_test_pulse(phy_device*, u16)'
  [A] 'function int ethnl_cable_test_step(phy_device*, u32, u32, u32)'
  [A] 'function int genphy_c45_an_config_aneg(phy_device*)'
  [A] 'function int genphy_c45_aneg_done(phy_device*)'
  [A] 'function int genphy_c45_check_and_restart_aneg(phy_device*, bool)'
  [A] 'function int genphy_c45_loopback(phy_device*, bool)'
  [A] 'function int genphy_c45_pma_read_abilities(phy_device*)'
  [A] 'function int genphy_c45_pma_setup_forced(phy_device*)'
  [A] 'function int genphy_c45_read_link(phy_device*)'
  [A] 'function int genphy_c45_read_lpa(phy_device*)'
  [A] 'function int genphy_check_and_restart_aneg(phy_device*, bool)'
  [A] 'function int genphy_read_status_fixed(phy_device*)'
  [A] 'function int genphy_setup_forced(phy_device*)'
  [A] 'function int phy_config_aneg(phy_device*)'
  [A] 'function int phy_modify_mmd_changed(phy_device*, int, u32, u16, u16)'
  [A] 'function int phy_save_page(phy_device*)'
  [A] 'function void phy_sfp_attach(void*, sfp_bus*)'
  [A] 'function void phy_sfp_detach(void*, sfp_bus*)'
  [A] 'function int phy_sfp_probe(phy_device*, const sfp_upstream_ops*)'

1 Added variable:

  [A] 'unsigned long int phy_gbit_fibre_features[2]'

Bug: 239912158
Change-Id: I6b235decf611d48667253a030297f5a1b11cb135
Signed-off-by: Byoungtae Cho <bt.cho@samsung.com>
2022-07-27 16:21:17 +00:00
Yunxian He 9f58e9a628 ANDROID: ABI: Update symbols to unisoc whitelist
Update whitelist for the symbols used by the unisoc device and
update the ABI representation accordingly

Leaf changes summary: 1 artifact changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function int __traceiter_android_vh_usb_new_device_added(void*, usb_device*, int*)'

Bug: 239797624
Change-Id: Ic9f504a5181cd4bfb84c9cae651c6cf9501d0000
Signed-off-by: Yunxian He <yunxian.he@unisoc.com>
2022-07-27 16:20:08 +00:00
Sai Harshini Nimmala 0e29f56ef0 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'

Bug: 203763121
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
Change-Id: Ibbdd26ae66d1db01f4b76479c41a36eb590a7133
2022-07-27 02:37:23 +00:00
Shaleen Agrawal 8c802d3f5c 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>
2022-07-27 02:37:23 +00:00
Rohith Kollalsi 2faaaf45bd FROMLIST: usb: dwc3: core: Do not perform GCTL_CORE_SOFTRESET during bootup
According to the programming guide, it is recommended to
perform a GCTL_CORE_SOFTRESET only when switching the mode
from device to host or host to device. However, it is found
that during bootup when __dwc3_set_mode() is called for the
first time, GCTL_CORESOFTRESET is done with suspendable bit(BIT 17)
of DWC3_GUSB3PIPECTL set. This some times leads to issues
like controller going into bad state and controller registers
reading value zero. Until GCTL_CORESOFTRESET is done and
run/stop bit is set core initialization is not complete.
Setting suspendable bit of DWC3_GUSB3PIPECTL and then
performing GCTL_CORESOFTRESET is therefore not recommended.
Avoid this by only performing the reset if current_dr_role is set,
that is, when doing subsequent role switching.

Fixes: f88359e158 ("usb: dwc3: core: Do core softreset when switch mode")
Signed-off-by: Rohith Kollalsi <quic_rkollals@quicinc.com>

Bug: 240122498
Link: https://lore.kernel.org/lkml/20220714045625.20377-1-quic_rkollals@quicinc.com/
Change-Id: I3d249b3295bd043b3e492a4f9b771088178f8787
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-07-25 16:12:39 -07:00
Wesley Cheng 19c3abde53 FROMLIST: usb: dwc3: gadget: Avoid duplicate requests to enable Run/Stop
Relocate the pullups_connected check until after it is ensured that there
are no runtime PM transitions.  If another context triggered the DWC3
core's runtime resume, it may have already enabled the Run/Stop.  Do not
re-run the entire pullup sequence again, as it may issue a core soft
reset while Run/Stop is already set.

Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>

Bug: 240122498
Link: https://lore.kernel.org/all/20220725201136.7989-1-quic_wcheng@quicinc.com/
Change-Id: I5f2a6c1e67ae5836013a65c650bf08e2effb7bcf
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-07-25 16:12:27 -07:00
Thinh Nguyen 983d305ae3 FROMGIT: usb: dwc3: gadget: Prevent repeat pullup()
Don't do soft-disconnect if it's previously done. Likewise, don't do
soft-connect if the device is currently connected and running. It would
break normal operation.

Currently the caller of pullup() (udc's sysfs soft_connect) only checks
if it had initiated disconnect to prevent repeating soft-disconnect. It
doesn't check for soft-connect. To be safe, let's keep the check here
regardless whether the udc core is fixed.

Signed-off-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Link: https://lore.kernel.org/r/1c1345bd66c97a9d32f77d63aaadd04b7b037143.1650593829.git.Thinh.Nguyen@synopsys.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

(cherry picked from commit 69e131d1ac4e52a59ec181ab4f8aa8c48cd8fb64 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/ usb-next)

BUG: 238836938
Change-Id: Ibcb208581948132cfe4736381a67fea33026c372
Signed-off-by: Udipto Goswami <quic_ugoswami@quicinc.com>
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-07-25 15:31:52 -07:00
Thinh Nguyen 6d4cc0e2fb FROMGIT: usb: dwc3: core: Deprecate GCTL.CORESOFTRESET
Synopsys IP DWC_usb32 and DWC_usb31 version 1.90a and above deprecated
GCTL.CORESOFTRESET. The DRD mode switching flow is updated to remove the
GCTL soft reset. Add version checks to prevent using deprecated setting
in mode switching flow.

Signed-off-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Link: https://lore.kernel.org/r/9df529fde6e55f5508321b6bc26e92848044ef2b.1655338967.git.Thinh.Nguyen@synopsys.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

(cherry picked from commit afbd04e66e5d16ca3c7ea2e3c56eca25558eacf3 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-next)

BUG: 238836938
Change-Id: I69ea5ee3b9cf25d1d972b261c8dff59c50437c04
Signed-off-by: Udipto Goswami <quic_ugoswami@quicinc.com>
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-07-25 15:31:31 -07:00
Wenchao Chen 05ec70974d ANDROID: GKI: add vendor hook for mmc
We need to turn on the write protection function of the device to protect some data from being written.

Bug: 239614762
Change-Id: I2fdacf31b61612f3e9e21537e3d118432941e841
Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com>
2022-07-25 19:13:25 +00:00
Lecopzer Chen dcf450a456 ANDROID: Update mtktv 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, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function int iio_read_channel_scale(iio_channel*, int*, int*)'

Bug: 240110679
Signed-off-by: Lecopzer Chen <lecopzer.chen@mediatek.com>
Change-Id: Ib577a4b4e96274cb5d94d0da1704b2372cae1964
2022-07-25 18:46:32 +00:00
Liujie Xie 275124a9cf ANDROID: GKI: Update symbols to symbol list
Leaf changes summary: 52 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 26 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 26 Added variables

26 Added functions:

  [A] 'function int __traceiter_android_rvh_check_preempt_wakeup_ignore(void*, task_struct*, bool*)'
  [A] 'function int __traceiter_android_rvh_pick_next_entity(void*, cfs_rq*, sched_entity*, sched_entity**)'
  [A] 'function int __traceiter_android_rvh_place_entity(void*, cfs_rq*, sched_entity*, int, u64*)'
  [A] 'function int __traceiter_android_vh_account_task_time(void*, task_struct*, rq*, int)'
  [A] 'function int __traceiter_android_vh_alloc_pages_slowpath(void*, gfp_t, unsigned int, unsigned long int)'
  [A] 'function int __traceiter_android_vh_binder_free_proc(void*, binder_proc*)'
  [A] 'function int __traceiter_android_vh_binder_has_work_ilocked(void*, binder_thread*, bool, int*)'
  [A] 'function int __traceiter_android_vh_binder_looper_state_registered(void*, binder_thread*, binder_proc*)'
  [A] 'function int __traceiter_android_vh_binder_preset(void*, hlist_head*, mutex*)'
  [A] 'function int __traceiter_android_vh_binder_priority_skip(void*, task_struct*, bool*)'
  [A] 'function int __traceiter_android_vh_binder_proc_transaction_entry(void*, binder_proc*, binder_transaction*, binder_thread**, int, bool, bool, bool*)'
  [A] 'function int __traceiter_android_vh_binder_proc_transaction_finish(void*, binder_proc*, binder_transaction*, task_struct*, bool, bool)'
  [A] 'function int __traceiter_android_vh_binder_read_done(void*, binder_proc*, binder_thread*)'
  [A] 'function int __traceiter_android_vh_binder_select_worklist_ilocked(void*, list_head**, binder_thread*, binder_proc*, int)'
  [A] 'function int __traceiter_android_vh_binder_thread_read(void*, list_head**, binder_proc*, binder_thread*)'
  [A] 'function int __traceiter_android_vh_binder_thread_release(void*, binder_proc*, binder_thread*)'
  [A] 'function int __traceiter_android_vh_build_sched_domains(void*, bool)'
  [A] 'function int __traceiter_android_vh_cache_show(void*, seq_file*, slabinfo*, kmem_cache*)'
  [A] 'function int __traceiter_android_vh_exit_signal(void*, task_struct*)'
  [A] 'function int __traceiter_android_vh_futex_sleep_start(void*, task_struct*)'
  [A] 'function int __traceiter_android_vh_irqtime_account_process_tick(void*, task_struct*, rq*, int, int)'
  [A] 'function int __traceiter_android_vh_print_slabinfo_header(void*, seq_file*)'
  [A] 'function int __traceiter_android_vh_rwsem_wake_finish(void*, rw_semaphore*)'
  [A] 'function int __traceiter_android_vh_sched_stat_runtime_rt(void*, task_struct*, u64)'
  [A] 'function int __traceiter_android_vh_sync_txn_recvd(void*, task_struct*, task_struct*)'
  [A] 'function int __traceiter_sched_stat_runtime(void*, task_struct*, u64, u64)'

26 Added variables:

  [A] 'tracepoint __tracepoint_android_rvh_check_preempt_wakeup_ignore'
  [A] 'tracepoint __tracepoint_android_rvh_pick_next_entity'
  [A] 'tracepoint __tracepoint_android_rvh_place_entity'
  [A] 'tracepoint __tracepoint_android_vh_account_task_time'
  [A] 'tracepoint __tracepoint_android_vh_alloc_pages_slowpath'
  [A] 'tracepoint __tracepoint_android_vh_binder_free_proc'
  [A] 'tracepoint __tracepoint_android_vh_binder_has_work_ilocked'
  [A] 'tracepoint __tracepoint_android_vh_binder_looper_state_registered'
  [A] 'tracepoint __tracepoint_android_vh_binder_preset'
  [A] 'tracepoint __tracepoint_android_vh_binder_priority_skip'
  [A] 'tracepoint __tracepoint_android_vh_binder_proc_transaction_entry'
  [A] 'tracepoint __tracepoint_android_vh_binder_proc_transaction_finish'
  [A] 'tracepoint __tracepoint_android_vh_binder_read_done'
  [A] 'tracepoint __tracepoint_android_vh_binder_select_worklist_ilocked'
  [A] 'tracepoint __tracepoint_android_vh_binder_thread_read'
  [A] 'tracepoint __tracepoint_android_vh_binder_thread_release'
  [A] 'tracepoint __tracepoint_android_vh_build_sched_domains'
  [A] 'tracepoint __tracepoint_android_vh_cache_show'
  [A] 'tracepoint __tracepoint_android_vh_exit_signal'
  [A] 'tracepoint __tracepoint_android_vh_futex_sleep_start'
  [A] 'tracepoint __tracepoint_android_vh_irqtime_account_process_tick'
  [A] 'tracepoint __tracepoint_android_vh_print_slabinfo_header'
  [A] 'tracepoint __tracepoint_android_vh_rwsem_wake_finish'
  [A] 'tracepoint __tracepoint_android_vh_sched_stat_runtime_rt'
  [A] 'tracepoint __tracepoint_android_vh_sync_txn_recvd'
  [A] 'tracepoint __tracepoint_sched_stat_runtime'

Bug: 193384408
Signed-off-by: Liujie Xie <xieliujie@oppo.com>
Change-Id: I5c609326ef4b5e0c7bd14ecbafb296572a8508d0
2022-07-25 18:39:11 +00:00
Youngmin Nam 4fb1468a4d ANDROID: GKI: Update symbol list for Exynos SoC
Updated ABI symbol list for Exynos SoC to android13-5.15 ACK.
There's only ABI adding.

Leaf changes summary: 2 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 2 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

2 Added functions:

  [A] 'function int drm_gem_fb_begin_cpu_access(drm_framebuffer*, dma_data_direction)'
  [A] 'function void drm_writeback_cleanup_job(drm_writeback_job*)'

Bug: 239492404
Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com>
Change-Id: Iac4077f31f35c6ffdd53f6002da3a8c0ac9aa343
2022-07-25 08:03:58 +00:00
Will McVicker 89f568d282 ANDROID: random: fix CRC issues with the merge
The upstream commit 9342656c01 ("random: remove unused tracepoints")
removed the random.h tracepoints which lead to CRC differences for the
following symbols:

    add_random_ready_callback()
    del_random_ready_callback()

If I add back #includes <linux/writeback.h> which is what was included
by the random.h tracepoint header, then the CRCs match the original CRC
values for those two functions above. This is necessary to retain GKI
compatibility.

Fixes: 9342656c013d ("random: remove unused tracepoints")
Change-Id: I52422404ec46273cc686d1930102e066cef05eb0
Signed-off-by: Will McVicker <willmcvicker@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2022-07-23 16:37:34 +02:00
haibinzhang (张海斌) 56c1ffe2fe FROMGIT: arm64: fix oops in concurrently setting insn_emulation sysctls
emulation_proc_handler() changes table->data for proc_dointvec_minmax
and can generate the following Oops if called concurrently with itself:

 | Unable to handle kernel NULL pointer dereference at virtual address 0000000000000010
 | Internal error: Oops: 96000006 [#1] SMP
 | Call trace:
 | update_insn_emulation_mode+0xc0/0x148
 | emulation_proc_handler+0x64/0xb8
 | proc_sys_call_handler+0x9c/0xf8
 | proc_sys_write+0x18/0x20
 | __vfs_write+0x20/0x48
 | vfs_write+0xe4/0x1d0
 | ksys_write+0x70/0xf8
 | __arm64_sys_write+0x20/0x28
 | el0_svc_common.constprop.0+0x7c/0x1c0
 | el0_svc_handler+0x2c/0xa0
 | el0_svc+0x8/0x200

To fix this issue, keep the table->data as &insn->current_mode and
use container_of() to retrieve the insn pointer. Another mutex is
used to protect against the current_mode update but not for retrieving
insn_emulation as table->data is no longer changing.

Bug: 237540956
Co-developed-by: hewenliang <hewenliang4@huawei.com>
Signed-off-by: hewenliang <hewenliang4@huawei.com>
Signed-off-by: Haibin Zhang <haibinzhang@tencent.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220128090324.2727688-1-hewenliang4@huawei.com
Link: https://lore.kernel.org/r/9A004C03-250B-46C5-BF39-782D7551B00E@tencent.com
Signed-off-by: Will Deacon <will@kernel.org>
[Lee: Added Fixes: tag]
(cherry picked from commit af483947d472eccb79e42059276c4deed76f99a6
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core)
Fixes: 587064b610 ("arm64: Add framework for legacy instruction emulation")
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: If9b96bb79c79903f9d8292e719b06fdef57ef1c5
2022-07-22 13:19:50 +00:00
xiaofeng 9c6d1cf9ff ANDROID: vendor_hooks: tune reclaim scan type for specified mem_cgroup
Add memcg support for hooks in the reclaim path

Bug: 230450931
Change-Id: Ia3e6949985d915c8640139fbb93800d91e1e46f8
Signed-off-by: xiaofeng <xiaofeng5@xiaomi.com>
2022-07-21 21:14:24 +00:00
Quentin Perret dd2468d119 ANDROID: KVM: arm64: Increase size of FF-A buffer
As it turns out, the kernel's DMA code doesn't enforce the
SG_MAX_SEGMENTS limit on the number of elements in an sglist, which can
confuse the pKVM FF-A proxy which has a buffer sized to contain a
descriptor of at most SG_MAX_SEGMENTS constituents.

As the number of elements in an sglist doesn't seem to have an actual
upper bound, let's paper over the issue for now by increasing the size
of the pKVM buffer based on empirical 'measurements'. Longer term we
might need to make this value configurable on the kernel's cmdline, or
to rework the FF-A proxy to sanely handle large descriptors, although
this is not clear how at the time of writing.

Bug: 221256863
Signed-off-by: Quentin Perret <qperret@google.com>
Change-Id: If252f01bec8ae71c0fe1f7007a3ca7b037924c84
2022-07-21 05:18:35 +00:00
Xuewen Yan 70a112b621 ANDROID: ABI: Update symbols to unisoc whitelist for the scheduler 5st
Update whitelist for the symbols used by the unisoc device and
update the ABI representation accordingly.

Leaf changes summary: 2 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

1 Added function:

  [A] 'function unsigned long int vm_memory_committed()'

1 Added variable:

  [A] 'super_block* blockdev_superblock'

Bug: 238985916
Change-Id: Ic890242a6a1c4db970f250806efb03474e5669b2
Signed-off-by: Xuewen Yan <xuewen.yan@unisoc.com>
2022-07-18 18:39:43 +00:00
Daniel Mentz 27e89e0769 UPSTREAM: kheaders: Have cpio unconditionally replace files
For out-of-tree builds, this script invokes cpio twice to copy header
files from the srctree and subsequently from the objtree. According to a
comment in the script, there might be situations in which certain files
already exist in the destination directory when header files are copied
from the objtree:

"The second CPIO can complain if files already exist which can happen
with out of tree builds having stale headers in srctree. Just silence
CPIO for now."

GNU cpio might simply print a warning like "newer or same age version
exists", but toybox cpio exits with a non-zero exit code unless the
command line option "-u" is specified.

To improve compatibility with toybox cpio, add the command line option
"-u" to unconditionally replace existing files in the destination
directory.

Bug: 183998601
Signed-off-by: Daniel Mentz <danielmentz@google.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
(cherry picked from commit 1e8ca62b79dec20aeded4fe283f4890e5016767a)
Change-Id: Ib789720478818321ce124a9ef124d336f6282e1b
2022-07-18 16:28:01 +00:00
Guangming Cao f6090aae96 ANDROID: GKI: Enable CONFIG_IOMMU_IO_PGTABLE_ARMV7S
To enable IOMMU driver, we need to enable CONFIG_IOMMU_IO_PGTABLE_ARMV7S
as build-in by default value in gki_defconfig.

Bug: 189076024

Change-Id: Ia9a87682c2c56338f57703a4bc01793fbe1a3496
Signed-off-by: Guangming Cao <Guangming.Cao@mediatek.com>
(cherry picked from commit b6cab5d17d8b75a5c7b469070e731fd408485b43)
(cherry picked from commit 384f4652986e37924468018d0878ef33ce963bc7)
2022-07-16 03:30:01 +00:00
Veerendranath Jakkam 87896ef1b6 ANDROID: nl80211: Fix reserved UAPI attributes order
Order of the reserved UAPI attributes merged through b/233387627 was
changed due to change in merge order of the commits to
wireless-next.git main branch.

Fix the reserved UAPI attributes order to be in sync with
wireless-next.git. These attributes are still reserved since the changes
not into linux.git yet. So, these attributes must not be used in
production until the UAPI change lands into linux.git tree.

Fixes: af34adaa6a ("BACKPORT: FROMLIST: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings")
Fixes: d975927513 ("BACKPORT: FROMGIT: wifi: cfg80211: do some rework towards MLO link APIs")
Fixes: 3f048cd911 ("BACKPORT: FROMGIT: wifi: nl80211: support MLO in auth/assoc")
Fixes: 6abf3c5ef2 ("BACKPORT: FROMLIST: cfg80211: Indicate MLO connection info in connect and roam callbacks")

Bug: 238103864
Change-Id: If9038ba6ce953933faf827a6a4102223dcc436b3
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2022-07-16 00:49:57 +00:00
Johannes Berg 32fe94103e BACKPORT: FROMGIT: wifi: cfg80211: do some rework towards MLO link APIs
In order to support multi-link operation with multiple links,
start adding some APIs. The notable addition here is to have
the link ID in a new nl80211 attribute, that will be used to
differentiate the links in many nl80211 operations.

So far, this patch adds the netlink NL80211_ATTR_MLO_LINK_ID
attribute (as well as the NL80211_ATTR_MLO_LINKS attribute)
and plugs it through the system in some places, checking the
validity etc. along with other infrastructure needed for it.

For now, I've decided to include only the over-the-air link
ID in the API. I know we discussed that we eventually need to
have to have other ways of identifying a link, but for local
AP mode and auth/assoc commands as well as set_key etc. we'll
use the OTA ID.

Also included in this patch is some refactoring of the data
structures in struct wireless_dev, splitting for the first
time the data into type dependent pieces, to make reasoning
about these things easier.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Bug: 238103864
Change-Id: Ie4d10818f409b60878076e41676e932f9da1a069
(cherry picked from commit 7b0a0e3c3a88260b6fcb017e49f198463aa62ed1
 https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main)
[quic_vjakkam: bring delta changes from wireless-next.git main branch commit]
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2022-07-16 00:49:57 +00:00
Veerendranath Jakkam fef5659933 BACKPORT: FROMGIT: wifi: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings
wifi: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings
Increase akm_suites array size in struct cfg80211_crypto_settings to 10
and advertise the capability to userspace. This allows userspace to send
more than two AKMs to driver in netlink commands such as
NL80211_CMD_CONNECT.

This capability is needed for implementing WPA3-Personal transition mode
correctly with any driver that handles roaming internally. Currently,
the possible AKMs for multi-AKM connect can include PSK, PSK-SHA-256,
SAE, FT-PSK and FT-SAE. Since the count is already 5, increasing
the akm_suites array size to 10 should be reasonable for future
usecases.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
Link: https://lore.kernel.org/r/1653312358-12321-1-git-send-email-quic_vjakkam@quicinc.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Bug: 238103864
Change-Id: I91cd19286e2d1feff973a92da1d3ebde4183759d
(cherry picked from commit ecad3b0b99bff7247a11f8c7cb19ac9b0cb28b09
 https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main)
[quic_vjakkam: bring delta changes from wireless-next.git main branch commit]
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2022-07-16 00:49:57 +00:00
Chun-Hung Wu c66cde32ee ANDROID: Update symbol list for mtk
Leaf changes summary: 6 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 6 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

6 Added functions:

  [A] 'function void ufshcd_add_command_trace(ufs_hba*, unsigned int, ufs_trace_str_t)'
  [A] 'function void ufshcd_clk_scaling_start_busy(ufs_hba*)'
  [A] 'function void ufshcd_clk_scaling_update_busy(ufs_hba*)'
  [A] 'function int ufshcd_get_vreg(device*, ufs_vreg*)'
  [A] 'function int ufshcd_populate_vreg(device*, const char*, ufs_vreg**)'
  [A] 'function int ufshcd_transfer_rsp_status(ufs_hba*,

Bug: 228415386
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
Change-Id: If7ea1a9544c12863441eea48d1a1dfb29169f2e1
2022-07-15 16:10:13 +00:00
Yang Yang 391c3fe22f ANDROID: GKI: Update symbol list for VIVO
Leaf changes summary: 25 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 24 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

24 Added functions:

  [A] 'function int __sbitmap_queue_get(sbitmap_queue*)'
  [A] 'function int __traceiter_block_rq_insert(void*, request*)'
  [A] 'function bool blk_bio_list_merge(request_queue*, list_head*, bio*, unsigned int)'
  [A] 'function int blk_mq_debugfs_rq_show(seq_file*, void*)'
  [A] 'function void blk_mq_run_hw_queue(blk_mq_hw_ctx*, bool)'
  [A] 'function int blkcg_policy_register(blkcg_policy*)'
  [A] 'function void blkcg_policy_unregister(blkcg_policy*)'
  [A] 'function elevator_queue* elevator_alloc(request_queue*, elevator_type*)'
  [A] 'function int elv_register(elevator_type*)'
  [A] 'function void elv_unregister(elevator_type*)'
  [A] 'function cgroup_subsys_state* kthread_blkcg()'
  [A] 'function cgroup_subsys_state* of_css(kernfs_open_file*)'
  [A] 'function void sbitmap_add_wait_queue(sbitmap_queue*, sbq_wait_state*, sbq_wait*)'
  [A] 'function bool sbitmap_any_bit_set(const sbitmap*)'
  [A] 'function void sbitmap_del_wait_queue(sbq_wait*)'
  [A] 'function int sbitmap_init_node(sbitmap*, unsigned int, int, gfp_t, int, bool, bool)'
  [A] 'function void sbitmap_queue_clear(sbitmap_queue*, unsigned int, unsigned int)'
  [A] 'function int sbitmap_queue_init_node(sbitmap_queue*, unsigned int, int, bool, gfp_t, int)'
  [A] 'function void sbitmap_queue_min_shallow_depth(sbitmap_queue*, unsigned int)'
  [A] 'function void sbitmap_queue_resize(sbitmap_queue*, unsigned int)'
  [A] 'function void sbitmap_queue_show(sbitmap_queue*, seq_file*)'
  [A] 'function list_head* seq_list_next(void*, list_head*, loff_t*)'
  [A] 'function list_head* seq_list_start(list_head*, loff_t)'
  [A] 'function int timer_reduce(timer_list*, unsigned long int)'

1 Added variable:

  [A] 'tracepoint __tracepoint_block_rq_insert'

Bug: 238281122
Change-Id: Icbe5df262c83514bcfe310ed284efc417a070e64
Signed-off-by: Yang Yang <yang.yang@vivo.com>
Signed-off-by: Giuliano Procida <gprocida@google.com>
2022-07-15 15:51:37 +00:00
Veerendranath Jakkam f9b717e9c4 BACKPORT: FROMGIT: wifi: nl80211: fix sending link ID info of associated BSS
commit dd374f84baec ("wifi: nl80211: expose link ID for associated
BSSes") used a top-level attribute to send link ID of the associated
BSS in the nested attribute NL80211_ATTR_BSS. But since NL80211_ATTR_BSS
is a nested attribute of the attributes defined in enum nl80211_bss,
define a new attribute in enum nl80211_bss and use it for sending the
link ID of the BSS.

Fixes: dd374f84baec ("wifi: nl80211: expose link ID for associated BSSes")
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
Reviewed-by: Jeff Johnson <quic_jjohnson@quicinc.com>
Link: https://lore.kernel.org/r/20220708122607.1836958-1-quic_vjakkam@quicinc.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Bug: 238597250
Change-Id: I335cac339eab3b4ae63cd57a76577ec222c717a2
(cherry picked from commit 3c512307de4097aaaab3f4741c7a98fe88afa469
 https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main)
[quic_vjakkam: Add NL80211_BSS_MLO_LINK_ID as reserved attribute ]
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2022-07-15 00:07:17 +00:00
Veerendranath Jakkam fd994e7aac FROMGIT: wifi: cfg80211: fix a comment in cfg80211_mlme_mgmt_tx()
A comment in cfg80211_mlme_mgmt_tx() is describing this API used only
for transmitting action frames. Fix the comment since
cfg80211_mlme_mgmt_tx() can be used to transmit any management frame.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
Link: https://lore.kernel.org/r/20220708165545.2072999-1-quic_vjakkam@quicinc.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Bug: 238597250
Change-Id: Ib6c9b5f8c5bd63674974806a295387187ac721b7
(cherry picked from commit c528d7a2750a27174a30dffe42600f16c15bdb87
 https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main)
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
2022-07-15 00:07:17 +00:00