Commit graph

883,342 commits

Author SHA1 Message Date
Peter Wuw
42a391fef2 ANDROID: GKI: Update abi_gki_aarch64_oneplus
Add some symbols to symbol list included by oem modules.

Bug: 165594476
Change-Id: I2ce478cf2fff9d570122910cc4007523afc8fa9f
Signed-off-by: Peter Wuw <peter.wuw@oneplus.com>
2020-10-27 11:56:40 +08:00
Sami Tolvanen
1eb128820e ANDROID: scs: use vmapped shadow stacks by default
Enable CONFIG_SHADOW_CALL_STACK_VMAP by default, and as we allocate
a full page for the stack, allow the kernel use all of it.

Bug: 169781940
Change-Id: Ie8eaa7f24e9bf10ff28a302ac98ad843b71c9c2a
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
2020-10-26 19:41:02 +00:00
Archana Sriram
b494bbca7a ANDROID: ABI: update allowed list for QCOM
Update the android/abi_gki_aarch64_qcom with recent symbol additions.

Simple change and no need to update the .xml file, as no new symbol
addition.

Bug: 171693478
Signed-off-by: Archana Sriram <apsrir@codeaurora.org>
Change-Id: Ic105f1f4d3c3409c461e49035cad5806f5fce22c
2020-10-26 22:48:05 +05:30
Patrick Bellasi
d82457153c UPSTREAM: sched/fair/util_est: Implement faster ramp-up EWMA on utilization increases
The estimated utilization for a task:

   util_est = max(util_avg, est.enqueue, est.ewma)

is defined based on:

 - util_avg: the PELT defined utilization
 - est.enqueued: the util_avg at the end of the last activation
 - est.ewma:     a exponential moving average on the est.enqueued samples

According to this definition, when a task suddenly changes its bandwidth
requirements from small to big, the EWMA will need to collect multiple
samples before converging up to track the new big utilization.

This slow convergence towards bigger utilization values is not
aligned to the default scheduler behavior, which is to optimize for
performance. Moreover, the est.ewma component fails to compensate for
temporarely utilization drops which spans just few est.enqueued samples.

To let util_est do a better job in the scenario depicted above, change
its definition by making util_est directly follow upward motion and
only decay the est.ewma on downward.

Bug: 120440300
Signed-off-by: Patrick Bellasi <patrick.bellasi@matbug.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Vincent Guittot <vincent.guittot@linaro.org>
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com>
Cc: Douglas Raillard <douglas.raillard@arm.com>
Cc: Juri Lelli <juri.lelli@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Quentin Perret <qperret@google.com>
Cc: Rafael J . Wysocki <rafael.j.wysocki@intel.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20191023205630.14469-1-patrick.bellasi@matbug.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
(cherry picked from commit b8c96361402aa3e74ad48ceef18aed99153d8da8)
Signed-off-by: Qais Yousef <qais.yousef@arm.com>
Change-Id: Iaa75dec917748375d9043c3ebf21bf272299c8dd
2020-10-26 12:24:35 +00:00
hajun.sung
58e01352ee ANDROID: GKI: Update abi_gki_aarch64_exynos
Leaf changes summary: 1 artifact changed (1 filtered out)
Changed leaf types summary: 0 (1 filtered out) 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_gpu_mem_total'

Bug: 171536491

Change-Id: I2334f11828c2637c1a85cb7391ef7f4fb2fec902
Signed-off-by: hajun.sung <hajun.sung@samsung.com>
2020-10-23 15:35:44 +00:00
Sami Tolvanen
e675b8a59a ANDROID: kbuild: disable GCOV with CFI
With GCOV enabled, LLVM generates calls to compiler-generated
__llvm_gcov_* functions, but doesn't add them to the CFI jump
table, which trips indirect call checking. Work around the issue
by disabling CFI when GCOV_KERNEL is enabled.

Bug: 169124292
Change-Id: Ifd60cd9eda2bcdd86838ac5ce41bb0dbc00d602f
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
(cherry picked from commit 93a4197bc23a4a6967ff0592d07f3cf4cd69b1d6)
2020-10-23 06:43:31 +00:00
Chanho Park
39133635c5 ANDROID: GKI: add built-in PCIE_DW_PLAT_EP
To build an EP driver which is based on PCIe designware as module, we
need to get some symbols from pcie-designware_ep.c. To select the
source from GKI kernel, we should enable PCIE_DW_PLAT_EP driver as
prebuilt.

Bug: 167931570

Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Change-Id: I12f796cb35794e29d1fa425d26e2c9ee2c855da2
2020-10-23 08:44:15 +09:00
Chanho Park
cea56b5c10 ANDROID: PCI: dwc: export symbols for ep driver
Export symbols for building Designware PCIe EP driver as kernel module.
Partially cherry-picked for EXPORT_SYMBOL_GPL part from below patch.

c57247f940e8 ("PCI: tegra: Add support for PCIe endpoint mode in Tegra194")

Bug: 167931570
(partial backport of commit c57247f940e8ea13a0ec33378304dc3cdc5da4a8.
 Didn't backport entier patch because it requires below two precedence
 patchset to avoid patch conflict.
 "Add support to defer core initialization" by Vidya
 "Improvements to PCIe Endpoint Core" by Kishon)
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Change-Id: I4df622d67d4202c650abff6c424d1e3cb30408e2
2020-10-23 08:44:15 +09:00
Danesh Petigara
2f397d4f68 ANDROID: recordmcount: avoid STT_FILE as base for mcount offset relocation
This problem was observed with a kernel built using clang and
LTO.

When the section header index of a section that contains mcount
calls coincides with SHN_ABS, recordmcount ends up selecting a
STT_FILE symbol as the base for mcount offset relocation. Since
the STT_FILE symbol value is 0, it's not a suitable candidate as
the base for relocation and results in the __mcount_loc table
containing an invalid entry causing kernel oops in ftrace_init():

[    0.000000] ftrace: allocating 45789 entries in 179 pages
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: CPU: 0 PID: 0 at arch/arm64/kernel/ftrace.c:172 ftrace_make_nop+0x11c/0x150
[    0.000000] Modules linked in:
[    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 5.4.69-0-1pre+ #1
[    0.000000] Hardware name: BCM972180HB_V20 (DT)
[    0.000000] pstate: 20400085 (nzCv daIf +PAN -UAO)
[    0.000000] pc : ftrace_make_nop+0x11c/0x150
[    0.000000] lr : ftrace_make_nop+0x5c/0x150
[    0.000000] sp : ffffffc011a43ef0
[    0.000000] x29: ffffffc011a43f00 x28: 0000000000000001
[    0.000000] x27: ffffff8027801380 x26: 0000000000000000
[    0.000000] x25: ffffff8027880008 x24: 0000000000000000
[    0.000000] x23: 0000000000000000 x22: 0000000000000008
[    0.000000] x21: ffffffc010f5acdc x20: 0000000000000000
[    0.000000] x19: 0000000000000020 x18: ffffffc011a79020
[    0.000000] x17: 000000000000003c x16: 0000000000000022
[    0.000000] x15: dead000000000100 x14: 0000000000000001
[    0.000000] x13: 0000000000000000 x12: 0000000000000000
[    0.000000] x11: 0000000000000000 x10: 0000000008000000
[    0.000000] x9 : 0000000000000002 x8 : 0000000000000001
[    0.000000] x7 : 0000000000000000 x6 : 000000000000003f
[    0.000000] x5 : 00000000000235b8 x4 : 0000000000000001
[    0.000000] x3 : 0000000000000001 x2 : ffffffc010f5acdc
[    0.000000] x1 : ffffff8027880000 x0 : 0000000000000001
[    0.000000] Call trace:
[    0.000000]  ftrace_make_nop+0x11c/0x150
[    0.000000]  ftrace_process_locs+0x338/0x3e0
[    0.000000]  ftrace_init+0xac/0xdc
[    0.000000]  start_kernel+0x194/0x43c
[    0.000000] random: get_random_bytes called from __warn+0xe0/0x138 with crng_init=0
[    0.000000] ---[ end trace a8999690c4edae16 ]---
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: CPU: 0 PID: 0 at kernel/trace/ftrace.c:2008 ftrace_bug+0x94/0x268
[    0.000000] Modules linked in:
[    0.000000] CPU: 0 PID: 0 Comm: swapper Tainted: G        W         5.4.69-0-1pre+ #1
[    0.000000] Hardware name: BCM972180HB_V20 (DT)
[    0.000000] pstate: 60400085 (nZCv daIf +PAN -UAO)
[    0.000000] pc : ftrace_bug+0x94/0x268
[    0.000000] lr : ftrace_process_locs+0x364/0x3e0
[    0.000000] sp : ffffffc011a43ef0
[    0.000000] x29: ffffffc011a43ef0 x28: 0000000000000001
[    0.000000] x27: ffffff8027801380 x26: 0000000000000000
[    0.000000] x25: ffffff8027880008 x24: 0000000000000000
[    0.000000] x23: 0000000000000000 x22: 0000000000000008
[    0.000000] x21: ffffffc010f5acdc x20: 0000000000000020
[    0.000000] x19: ffffff8027880000 x18: ffffffc011a79020
[    0.000000] x17: 000000000000003c x16: 0000000000000022
[    0.000000] x15: dead000000000100 x14: 0000000000000001
[    0.000000] x13: 0000000000000000 x12: ffffffc010f5ed94
[    0.000000] x11: ffffffc011a4f000 x10: ffffffc011a4f000
[    0.000000] x9 : 0000000000000001 x8 : ffffffc011a4f000
[    0.000000] x7 : 0000000000000000 x6 : 000000000000003f
[    0.000000] x5 : 00000000000235b8 x4 : 0000000000000001
[    0.000000] x3 : 0000000000000001 x2 : ffffffc010f5acdc
[    0.000000] x1 : ffffff8027880000 x0 : ffffffc01151ade2
[    0.000000] Call trace:
[    0.000000]  ftrace_bug+0x94/0x268
[    0.000000]  ftrace_process_locs+0x364/0x3e0
[    0.000000]  ftrace_init+0xac/0xdc
[    0.000000]  start_kernel+0x194/0x43c
[    0.000000] ---[ end trace a8999690c4edae17 ]---
[    0.000000] ftrace failed to modify
[    0.000000] [<0000000000000020>] 0x20
[    0.000000]  actual:
[    0.000000] Unable to handle kernel read from unreadable memory at virtual address 0000000000000020
[    0.000000] Mem abort info:
[    0.000000]   ESR = 0x96000005
[    0.000000]   EC = 0x25: DABT (current EL), IL = 32 bits
[    0.000000]   SET = 0, FnV = 0
[    0.000000]   EA = 0, S1PTW = 0
[    0.000000] Data abort info:
[    0.000000]   ISV = 0, ISS = 0x00000005
[    0.000000]   CM = 0, WnR = 0
[    0.000000] [0000000000000020] user address but active_mm is swapper
[    0.000000] Internal error: Oops: 96000005 [#1] PREEMPT SMP
[    0.000000] Modules linked in:
[    0.000000] CPU: 0 PID: 0 Comm: swapper Tainted: G        W         5.4.69-0-1pre+ #1
[    0.000000] Hardware name: BCM972180HB_V20 (DT)
[    0.000000] pstate: 60400085 (nZCv daIf +PAN -UAO)
[    0.000000] pc : print_ip_ins+0x48/0x80
[    0.000000] lr : print_ip_ins+0x2c/0x80
[    0.000000] sp : ffffffc011a43eb0
[    0.000000] x29: ffffffc011a43eb0 x28: 0000000000000001
[    0.000000] x27: ffffff8027801380 x26: 0000000000000000
[    0.000000] x25: ffffff8027880008 x24: 0000000000000000
[    0.000000] x23: ffffffc0115f1abc x22: ffffffc01160e929
[    0.000000] x21: 0000000000000000 x20: ffffffc011577a9c
[    0.000000] x19: 0000000000000020 x18: ffffffc011a79028
[    0.000000] x17: 000000000000002c x16: ffffffc010f33fec
[    0.000000] x15: 0000000000000004 x14: ffff0000ffffff00
[    0.000000] x13: 0000000000000000 x12: 0000000000000000
[    0.000000] x11: 0000000000000000 x10: 00000000ffffffff
[    0.000000] x9 : 0000000000000000 x8 : 0000000000000000
[    0.000000] x7 : 3030303030303030 x6 : ffffffc011c031a3
[    0.000000] x5 : 000000000000000b x4 : ffffffc011c00866
[    0.000000] x3 : 0000000000000020 x2 : 000000000000000b
[    0.000000] x1 : ffffffc011c00871 x0 : 000000000000000b
[    0.000000] Call trace:
[    0.000000]  print_ip_ins+0x48/0x80
[    0.000000]  ftrace_bug+0xcc/0x268
[    0.000000]  ftrace_process_locs+0x364/0x3e0
[    0.000000]  ftrace_init+0xac/0xdc
[    0.000000]  start_kernel+0x194/0x43c
[    0.000000] Code: aa1f03f5 9124a6d6 912af2f7 912a7294 (38756a62)
[    0.000000] ---[ end trace a8999690c4edae18 ]---
[    0.000000] Kernel panic - not syncing: Attempted to kill the idle task!

This can be fixed by avoiding STT_FILE symbols as the base for
mcount offset relocation.

Bug: 168835511
Signed-off-by: Danesh Petigara <danesh.petigara@broadcom.com>
Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
Change-Id: I9e73706d5104bfa81bccd091e956660364f294de
2020-10-22 19:57:13 +00:00
Chun-Hung Wu
3f0fb2fde0 ANDROID: iommu: Enable CONFIG_IOMMU_IO_PGTABLE_ARMV7S
Enable CONFIG_IOMMU_IO_PGTABLE_ARMV7S in gki_defconfig for MTK
iommu/io-pgtable-arm-v7s.

Bug: 167939345
Link: https://lore.kernel.org/patchwork/patch/1301119/
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Signed-off-by: Chao Hao <chao.hao@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
Change-Id: Ic1f3a9cdf20f49f615f56bd9d9b0899a8f7255f6
2020-10-22 19:44:50 +00:00
Chao Hao
0245f11b47 BACKPORT: FROMLIST: iommu/io-pgtable-arm-v7s: Quad lvl1 pgtable for MediaTek
The standard input iova bits is 32. MediaTek quad the lvl1 pagetable
(4 * lvl1). No change for lvl2 pagetable. Then the iova bits can reach
34bit.

Bug: 167939345
Link: https://lore.kernel.org/patchwork/patch/1301122/
Change-Id: I29095a7f521c73da3fa017e81471ba41db8377ff
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Signed-off-by: Chao Hao <chao.hao@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
2020-10-22 19:44:39 +00:00
Chao Hao
fbf0ae523d BACKPORT: FROMLIST: iommu/io-pgtable-arm-v7s: Add cfg as a param in some macros
Add "cfg" as a parameter for some macros. This is a preparing patch for
mediatek extend the lvl1 pgtable. No functional change.

Bug: 167939345
Link: https://lore.kernel.org/patchwork/patch/1301121/
Change-Id: I1bb072406cd2122446f1db2183a838a56837d7af
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Signed-off-by: Chao Hao <chao.hao@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
2020-10-22 19:44:29 +00:00
Chao Hao
8b6f18592d BACKPORT: FROMLIST: iommu/io-pgtable-arm-v7s: Extend PA34 for MediaTek
MediaTek extend the bit5 in lvl1 and lvl2 descriptor as PA34.

Bug: 167939345
Link: https://lore.kernel.org/patchwork/patch/1301120/
Change-Id: I6bd677285b73271f977f8bdeb4ef6b658b2ea81d
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Signed-off-by: Chao Hao <chao.hao@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
2020-10-22 19:44:19 +00:00
Chao Hao
ba7883760a BACKPORT: FROMLIST: iommu/io-pgtable-arm-v7s: Use ias to check the valid iova in unmap
Use the ias for the valid iova checking in _unmap.
It is a preparing patch for supporting iova 34bit for MediaTek.
BTW, change the ias/oas checking format in v7s_map.

Bug: 167939345
Link: https://lore.kernel.org/patchwork/patch/1301119/
Change-Id: I78a5399fb5f6555ba9aca916393ed62262853e34
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Signed-off-by: Chao Hao <chao.hao@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
2020-10-22 19:44:09 +00:00
Raghavendra Rao Ananta
95bd9e26f2 ANDROID: ABI: Update allowed list for QCOM
Add the following symbols to QCOM allowed-list:
-- amba_driver_register
-- amba_driver_unregister

Bug: 171409550
Change-Id: Iab997df4f8ebb2c39b993b60ee4eb0fa3100fbcd
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
2020-10-22 17:46:00 +00:00
Neal Liu
ba2f977129 ANDROID: modules: fix suspicious rcu usage
Use rcu_read_lock_sched() & rcu_read_unlock_sched() to mark the
beginning & end of a RCU-sched critical section instead.

Bug: 171362096
Signed-off-by: Neal Liu <neal.liu@mediatek.com>
Change-Id: Idb40e2c2356621398e06944f7cb9b8bc5ef1d92a
2020-10-22 17:03:51 +00:00
Abdulla Kamar
e17d9fc531 ANDROID: GKI: Enable CONFIG_X86_X2APIC
Enable support for CONFIG_X86_X2APIC, if available. This speeds up
operation in a hypervisor, as APIC is handled via MSRs.

Bug: 171287650
Change-Id: Ie3cf57d07b8dde08ec609dfb031cfb0029218501
Signed-off-by: Abdulla Kamar <abdulla@google.com>
2020-10-20 17:14:24 +00:00
wangzun1
f1ff4a4678 ANDROID: GKI: update xiaomi symbol list
Leaf changes summary: 0 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, 0 Added variable

Bug: 171162194

Signed-off-by: Zun Wang <wangzun1@xiaomi.com>
Change-Id: I169bcdd14878392ef57aec9c303a421800278610
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-10-20 16:50:25 +00:00
Greg Kroah-Hartman
db96212bde ANDROID: GKI: fix ABI breakage in module.h
commit 262e6ae7081d ("modules: inherit TAINT_PROPRIETARY_MODULE")
changes the size of 'struct module' a bit by adding a single boolean
value to the middle.  Move things around a bit and take up a space to
preserve the abi so that nothing changes with the abi before that commit
was merged.

This might be able to be dropped at the next Android KABI "Break", if
one happens.

Bug: 171277690
Fixes: 262e6ae7081d ("modules: inherit TAINT_PROPRIETARY_MODULE")
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ie31a6fcea384ad665248c87f7abfde4d214da70a
2020-10-20 16:49:28 +02:00
Christoph Hellwig
35b560985b UPSTREAM: modules: inherit TAINT_PROPRIETARY_MODULE
If a TAINT_PROPRIETARY_MODULE exports symbol, inherit the taint flag
for all modules importing these symbols, and don't allow loading
symbols from TAINT_PROPRIETARY_MODULE modules if the module previously
imported gplonly symbols.  Add a anti-circumvention devices so people
don't accidentally get themselves into trouble this way.

Comment from Greg:
  "Ah, the proven-to-be-illegal "GPL Condom" defense :)"

Bug: 171277690
[jeyu: pr_info -> pr_err and pr_warn as per discussion]
Link: http://lore.kernel.org/r/20200730162957.GA22469@lst.de
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit 262e6ae7081df304fc625cf368d5c2cbba2bb991)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Id7c1af6bb8523bc39bda1efc661929d9ea0ccb20
2020-10-20 16:39:18 +02:00
Christoph Hellwig
f39710f356 UPSTREAM: modules: return licensing information from find_symbol
Report the GPLONLY status through a new argument.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit ef1dac6021cc8ec5de02ce31722bf26ac4ed5523)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I93285e06e380509b11356256da4d3d5a8738e252
2020-10-20 14:28:36 +02:00
Christoph Hellwig
35601d5015 UPSTREAM: modules: rename the licence field in struct symsearch to license
Use the same spelling variant as the rest of the file.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit cd8732cdcc37d7077c4fa2c966b748c0662b607e)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I0ad6d1dcbe39053566bb922b9a71359f753df85c
2020-10-20 14:28:25 +02:00
Christoph Hellwig
684d5eaf06 UPSTREAM: modules: unexport __module_address
__module_address is only used by built-in code.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit 34e64705ad415ed7a816e60ef62b42fe6d1729d9)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I9fb9339e17a7bac54afee8d301f33298a702fcb9
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-10-20 10:01:50 +02:00
Christoph Hellwig
68d5cd1dcb UPSTREAM: modules: unexport __module_text_address
__module_text_address is only used by built-in code.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit 3fe1e56d0e68b623dd62d8d38265d2a052e7e185)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I1a9081c6fa3d2a6e27ede24a4fa2b6a220cd521d
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-10-20 10:01:48 +02:00
Christoph Hellwig
6cd6da665d UPSTREAM: modules: mark each_symbol_section static
each_symbol_section is only used inside of module.c.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit a54e04914c211b5678602a46b3ede5d82ec1327d)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I5debe30f150847281874d9b2c47952f9036d37d2
2020-10-20 10:01:46 +02:00
Christoph Hellwig
2951ba186e UPSTREAM: modules: mark find_symbol static
find_symbol is only used in module.c.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit 773110470e2fa3839523384ae014f8a723c4d178)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ifd34f7a477be9ed1b7715ce966473f2898c5a975
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-10-20 10:01:44 +02:00
Christoph Hellwig
ec46411eb4 UPSTREAM: modules: mark ref_module static
ref_module isn't used anywhere outside of module.c.

Bug: 157965270
Bug: 171277690
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
(cherry picked from commit 7ef5264de773279b9f23b6cc8afb5addb30e970b)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I68f39675f53b745664c833ac150d838563c78aae
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-10-20 10:01:33 +02:00
Jaehyoung Choi
cbd55f8de6 ANDROID: GKI: Update abi_gki_aarch64_exynos
Leaf changes summary: 19 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, 0 Added variable

19 Added functions:

  [A] 'function void __sock_recv_timestamp(msghdr*, sock*, sk_buff*)'
  [A] 'function void __sock_recv_wifi_status(msghdr*, sock*, sk_buff*)'
  [A] 'function void __wake_up_locked_key(wait_queue_head*, unsigned int, void*)'
  [A] 'function void __wake_up_sync(wait_queue_head*, unsigned int, int)'
  [A] 'function void add_wait_queue_exclusive(wait_queue_head*, wait_queue_entry*)'
  [A] 'function bool cfg80211_chandef_valid(const cfg80211_chan_def*)'
  [A] 'function void cfg80211_conn_failed(net_device*, const u8*, nl80211_connect_failed_reason, gfp_t)'
  [A] 'function void cfg80211_ref_bss(wiphy*, cfg80211_bss*)'
  [A] 'function int dev_vprintk_emit(int, const device*, const char*, va_list)'
  [A] 'function nlattr** genl_family_attrbuf(const genl_family*)'
  [A] 'function int genlmsg_multicast_allns(const genl_family*, sk_buff*, u32, unsigned int, gfp_t)'
  [A] 'function i2c_client* i2c_new_device(i2c_adapter*, const i2c_board_info*)'
  [A] 'function int iio_convert_raw_to_processed(iio_channel*, int, int*, unsigned int)'
  [A] 'function int iio_get_channel_type(iio_channel*, iio_chan_type*)'
  [A] 'function bool rfkill_blocked(rfkill*)'
  [A] 'function int rtc_add_group(rtc_device*, const attribute_group*)'
  [A] 'function int rtc_set_time(rtc_device*, rtc_time*)'
  [A] 'function int snd_soc_dai_set_tristate(snd_soc_dai*, int)'
  [A] 'function int vprintk_emit(int, int, const char*, size_t, const char*, va_list)'

Bug: 171029675

Signed-off-by: Jaehyoung Choi <jkkkkk.choi@samsung.com>
Change-Id: Ib4cc16e6ba55e4ba135ace7784aaaaf0eac4c00f
2020-10-19 19:11:55 +00:00
Ravikanth Tuniki
205650744e ANDROID: ABI: update allowed list for QCOM
Update the android/abi_gki_aarch64_qcom with recent symbol additions.

Simple change and no need to update the .xml file, as no new symbol
addition.

Bug: 171100523
Change-Id: I5083548f18633b66b76d525209c52b4c44eded75
Signed-off-by: Ravikanth Tuniki <rtunik@codeaurora.org>
2020-10-19 10:21:39 +05:30
Todd Kjos
8d3d29f072 UPSTREAM: binder: fix UAF when releasing todo list
When releasing a thread todo list when tearing down
a binder_proc, the following race was possible which
could result in a use-after-free:

1.  Thread 1: enter binder_release_work from binder_thread_release
2.  Thread 2: binder_update_ref_for_handle() -> binder_dec_node_ilocked()
3.  Thread 2: dec nodeA --> 0 (will free node)
4.  Thread 1: ACQ inner_proc_lock
5.  Thread 2: block on inner_proc_lock
6.  Thread 1: dequeue work (BINDER_WORK_NODE, part of nodeA)
7.  Thread 1: REL inner_proc_lock
8.  Thread 2: ACQ inner_proc_lock
9.  Thread 2: todo list cleanup, but work was already dequeued
10. Thread 2: free node
11. Thread 2: REL inner_proc_lock
12. Thread 1: deref w->type (UAF)

The problem was that for a BINDER_WORK_NODE, the binder_work element
must not be accessed after releasing the inner_proc_lock while
processing the todo list elements since another thread might be
handling a deref on the node containing the binder_work element
leading to the node being freed.

Signed-off-by: Todd Kjos <tkjos@google.com>
Link: https://lore.kernel.org/r/20201009232455.4054810-1-tkjos@google.com
Cc: <stable@vger.kernel.org> # 4.14, 4.19, 5.4, 5.8
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit f3277cbfba763cd2826396521b9296de67cf1bbc)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I7c1bf0b74824f272664e76206c5dc3b66b9eeaff
2020-10-17 13:13:17 +02:00
Riley Andrews
8540985fd2 ANDROID: trace: sched: add sched blocked tracepoint which dumps out context of sleep.
Declare war on uninterruptible sleep. Add a tracepoint which
walks the kernel stack and dumps the first non-scheduler function
called before the scheduler is invoked.

Bug: 120445457
Change-Id: I19e965d5206329360a92cbfe2afcc8c30f65c229
Signed-off-by: Riley Andrews <riandrews@google.com>
[astrachan: deleted an unnecessary whitespace change]
Signed-off-by: Alistair Strachan <astrachan@google.com>
Bug: 170916884
Signed-off-by: Todd Kjos <tkjos@google.com>
2020-10-16 15:55:07 +00:00
Raviteja Tamatam
c2ad8d4b00 ANDROID: ABI: update allowed list for QCOM
Update the android/abi_gki_aarch64_qcom with recent symbol additions.

No need to update the .xml file, as no new symbol addition.

Bug: 171024164
Signed-off-by: Raviteja Tamatam <travitej@codeaurora.org>
Change-Id: I38fdb82878c578a19fb01df1e97eb7fafd7dac06
2020-10-16 15:29:18 +05:30
Todd Kjos
a2114d2456 ANDROID: Update KMI_GENERATION after KMI change
The KMI was changed by several patches on Oct 15. Update the
generation number.

Bug: 161946584
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: If641819d24743f319cfe704b79ec479be8aae78f
2020-10-15 10:58:29 -07:00
Greg Kroah-Hartman
9bb683349b ANDROID: GKI: update the .xml file with the October 15 ABI breakages
Leaf changes summary: 3291 artifacts changed (10 filtered out)
Changed leaf types summary: 5 (1 filtered out) leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 3237 Changed (9 filtered out), 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 49 Changed, 0 Added variable

3237 functions with some sub-type change:

49 Changed variables:
   type of variable changed:
      type size hasn't changed
      1 data member insertion:
        'deferred_split pglist_data::deferred_split_queue', at offset 42048 (in bits) at mmzone.h:785:1
      there are data member changes:
        'lruvec pglist_data::lruvec' offset changed from 42048 to 42304 (in bits) (by +256 bits)
        'unsigned long int pglist_data::flags' offset changed from 43136 to 43392 (in bits) (by +256 bits)
      3325 impacted interfaces

    type of variable changed:
      type size hasn't changed
      there are data member changes:
        type 'u64[2]' of 'task_struct::android_vendor_data1' changed:
          type name changed from 'u64[2]' to 'u64[3]'
          array type size changed from 128 to 192
          array type subrange 1 changed length from 2 to 3
        'u64 task_struct::android_kabi_reserved1' offset changed from 21312 to 21376 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved2' offset changed from 21376 to 21440 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved3' offset changed from 21440 to 21504 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved4' offset changed from 21504 to 21568 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved5' offset changed from 21568 to 21632 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved6' offset changed from 21632 to 21696 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved7' offset changed from 21696 to 21760 (in bits) (by +64 bits)
        'u64 task_struct::android_kabi_reserved8' offset changed from 21760 to 21824 (in bits) (by +64 bits)
      3325 impacted interfaces

'struct file at fs.h:955:1' changed:
  type size changed from 2048 to 2176 (in bits)
  2 data member insertions:
    'u64 file::android_kabi_reserved1', at offset 2048 (in bits) at fs.h:995:1
    'u64 file::android_vendor_data1', at offset 2112 (in bits) at fs.h:996:1
  3325 impacted interfaces

'struct mem_cgroup at memcontrol.h:208:1' changed:
  type size changed from 21504 to 22528 (in bits)
  1 data member insertion:
    'deferred_split mem_cgroup::deferred_split_queue', at offset 22144 (in bits) at memcontrol.h:334:1
  there are data member changes:
    type 'atomic_long_t[56]' of 'mem_cgroup::vmevents' changed:
      type name changed from 'atomic_long_t[56]' to 'atomic_long_t[70]'
      array type size changed from 3584 to 4480
      array type subrange 1 changed length from 56 to 70
    'atomic_long_t mem_cgroup::memory_events[7]' offset changed from 17280 to 18176 (in bits) (by +896 bits)
    'atomic_long_t mem_cgroup::memory_events_local[7]' offset changed from 17728 to 18624 (in bits) (by +896 bits)
    'unsigned long int mem_cgroup::socket_pressure' offset changed from 18176 to 19072 (in bits) (by +896 bits)
    'bool mem_cgroup::tcpmem_active' offset changed from 18240 to 19136 (in bits) (by +896 bits)
    'int mem_cgroup::tcpmem_pressure' offset changed from 18272 to 19168 (in bits) (by +896 bits)
    'int mem_cgroup::kmemcg_id' offset changed from 18304 to 19200 (in bits) (by +896 bits)
    'memcg_kmem_state mem_cgroup::kmem_state' offset changed from 18336 to 19232 (in bits) (by +896 bits)
    'list_head mem_cgroup::kmem_caches' offset changed from 18368 to 19264 (in bits) (by +896 bits)
    'int mem_cgroup::last_scanned_node' offset changed from 18496 to 19392 (in bits) (by +896 bits)
    'list_head mem_cgroup::cgwb_list' offset changed from 18560 to 19456 (in bits) (by +896 bits)
    'wb_domain mem_cgroup::cgwb_domain' offset changed from 18688 to 19584 (in bits) (by +896 bits)
    'memcg_cgwb_frn mem_cgroup::cgwb_frn[4]' offset changed from 19776 to 20672 (in bits) (by +896 bits)
    'list_head mem_cgroup::event_list' offset changed from 21056 to 21952 (in bits) (by +896 bits)
    'spinlock_t mem_cgroup::event_list_lock' offset changed from 21184 to 22080 (in bits) (by +896 bits)
    'mem_cgroup_per_node* mem_cgroup::nodeinfo[]' offset changed from 21248 to 22400 (in bits) (by +1152 bits)
  420 impacted interfaces

'struct memcg_vmstats_percpu at memcontrol.h:88:1' changed:
  type size changed from 6272 to 7168 (in bits)
  there are data member changes:
    type 'unsigned long int[56]' of 'memcg_vmstats_percpu::events' changed:
      type name changed from 'unsigned long int[56]' to 'unsigned long int[70]'
      array type size changed from 3584 to 4480
      array type subrange 1 changed length from 56 to 70
    'unsigned long int memcg_vmstats_percpu::nr_page_events' offset changed from 6016 to 6912 (in bits) (by +896 bits)
    'unsigned long int memcg_vmstats_percpu::targets[3]' offset changed from 6080 to 6976 (in bits) (by +896 bits)
  420 impacted interfaces

'struct pglist_data at mmzone.h:713:1' changed:
  details were reported earlier

'struct task_struct at sched.h:636:1' changed:
  details were reported earlier

Bug: 161946584
Change-Id: I84324ddd226df0c756d61fc02081dc4bc37f36b1
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2020-10-15 17:59:17 +02:00
Greg Kroah-Hartman
b7d30a3293 ANDROID: GKI: fs.h: add Android ABI padding to struct file
Try to mitigate potential future driver core api changes by adding
padding to struct file;

Bug: 151154716
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Iba08ecfbd9cf365fe867cb57dbadf2eea00eaf0c
2020-10-15 17:21:03 +02:00
Egor Uleyskiy
3b300ff4c5 ANDROID: vendor_hooks: Add a vendor data to file struct
Add ANDROID_VENDOR_DATA(1) to struct file

Bug: 169343953
Signed-off-by: Egor Uleyskiy <e.uleyskiy@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I1afc259f2bd02fee76b20802dda74cbe79658534
2020-10-15 17:21:03 +02:00
Egor Uleyskiy
e89b05984d ANDROID: vendor_hooks: Extend the vendor data array in task_struct
Add an element to ANDROID_VENDOR_DATA_ARRAY(1,2) in task_struct

Bug: 169343953
Signed-off-by: Egor Uleyskiy <e.uleyskiy@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Iee22bb544da5cc355d162d7a966c656f453c8a33
2020-10-15 17:21:03 +02:00
Suren Baghdasaryan
7ee8b58cc1 ANDROID: GKI: add fields required to enable CONFIG_TRANSPARENT_HUGEPAGE
Devices with plenty of RAM might benefit from THP usage. Added fields
would allow to enable CONFIG_TRANSPARENT_HUGEPAGE without affecting ABI.

Bug: 168269341
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ieb644a8da5377383d514197ee02d7bfd6f1d346d
2020-10-15 17:21:03 +02:00
Quentin Perret
0ce2100bcf ANDROID: Drop abi_gki_aarch64_workarounds
ehci_handshake was added to the symbol list as a temporary workaround
for CRC-related issues in the ehci code. But since this has now been
fixed, let's drop the unnecessary symbol list altogether.

Bug: 167230325
Signed-off-by: Quentin Perret <qperret@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I8f56b01ff9bed8e0d417f8c90adb7c32480d55cf
2020-10-15 17:21:03 +02:00
Quentin Perret
f0c4a768cf UPSTREAM: ehci-hcd: Move include to keep CRC stable
The CRC calculation done by genksyms is triggered when the parser hits
EXPORT_SYMBOL*() macros. At this point, genksyms recursively expands the
types of the function parameters, and uses that as the input for the CRC
calculation. In the case of forward-declared structs, the type expands
to 'UNKNOWN'. Following this, it appears that the result of the
expansion of each type is cached somewhere, and seems to be re-used
when/if the same type is seen again for another exported symbol in the
same C file.

Unfortunately, this can cause CRC 'stability' issues when a struct
definition becomes visible in the middle of a C file. For example, let's
assume code with the following pattern:

    struct foo;

    int bar(struct foo *arg)
    {
	/* Do work ... */
    }
    EXPORT_SYMBOL_GPL(bar);

    /* This contains struct foo's definition */
    #include "foo.h"

    int baz(struct foo *arg)
    {
	/* Do more work ... */
    }
    EXPORT_SYMBOL_GPL(baz);

Here, baz's CRC will be computed using the expansion of struct foo that
was cached after bar's CRC calculation ('UNKOWN' here). But if
EXPORT_SYMBOL_GPL(bar) is removed from the file (because of e.g. symbol
trimming using CONFIG_TRIM_UNUSED_KSYMS), struct foo will be expanded
late, during baz's CRC calculation, which now has visibility over the
full struct definition, hence resulting in a different CRC for baz.

The proper fix for this certainly is in genksyms, but that will take me
some time to get right. In the meantime, we have seen one occurrence of
this in the ehci-hcd code which hits this problem because of the way it
includes C files halfway through the code together with an unlucky mix
of symbol trimming.

In order to workaround this, move the include done in ehci-hub.c early
in ehci-hcd.c, hence making sure the struct definitions are visible to
the entire file. This improves CRC stability of the ehci-hcd exports
even when symbol trimming is enabled.

Bug: 167230325
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Quentin Perret <qperret@google.com>
Link: https://lore.kernel.org/r/20200916171825.3228122-1-qperret@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 29231826f3bd65500118c473fccf31c0cf14dbc0)
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ie56a4deee980652e5285a0744a8bcc2c9e60db73
2020-10-15 17:21:03 +02:00
wangting11
5427f8b72f ANDROID: GKI: update xiaomi 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 snd_soc_dapm_del_routes(snd_soc_dapm_context*, const snd_soc_dapm_route*, int)'

Bug: 170934475

Signed-off-by: wangting11 <wangting11@xiaomi.com>
Change-Id: I41e9e29e5f47345ae690a005630e00670285a20a
Signed-off-by: wangting11 <wangting11@xiaomi.com>
2020-10-15 12:51:24 +00:00
Chenggang Wang
ecb88922f5 ANDROID: GKI: update Vivo symbol list
Update the Vivo symbol list to come up to date with some more modules.

No new symbols are exported from the system, so no .xml file change
needed.

Bug: 170931247
Change-Id: I21e8ce22e327f315efecb9c4597560239b1e0aae
Signed-off-by: Chenggang Wang <wangchenggang@vivo.com>
2020-10-15 16:30:53 +08:00
Sangmoon Kim
32b2423372 ANDROID: sysrq: add vendor hook for sysrq crash information
- Add the hook to provide additional information
   of sysrq crash.

Bug: 170234110

Signed-off-by: Sangmoon Kim <sangmoon.kim@samsung.com>
Change-Id: Ib8f14eaa639b2ef959e911d611515868ff9f193d
2020-10-13 14:46:48 +09:00
Jeehong Kim
42e516f6b2 ANDROID: ABI: update allowed list for galaxy
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 i2c_bit_add_numbered_bus(i2c_adapter*)'

Bug: 170575183

Signed-off-by: Jeehong Kim <jhez.kim@samsung.com>
Change-Id: I300ccb7a97d0671037f3af1fc81f0fa41419e3f0
2020-10-12 14:05:09 +09:00
Greg Kroah-Hartman
de198b0f2d ANDROID: GKI: update Vivo symbol list
Update the Vivo symbol list to come up to date with some more modules.

No new symbols are exported from the system, so no .xml file change
needed.

New symbol additions should come in their own, separate commit.

Bug: 170441871
Cc: Chenggang Wang <wangchenggang@vivo.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Ic597312f943fe0dc67199ff1c51cd32ace939abe
2020-10-10 12:10:21 +02:00
rogercl.yang
c37c28d9aa ANDROID: adding __nocfi to cpuidle_enter_state
Background:
  When CPU is going to idle state, it would inform RCU that
current CPU is entering idle through rcu_idle_enter(),
and RCU will ignore read-side critical sections of this CPU.
However, there is CFI check mechanism inside idle flow and
calls rcu_read_lock(), so "rcu_read_lock() used illegally while idle"
in rcu_read_lock() will be triggered because rcu_idle_enter()
was already called before.

  Beside, the pointer of rcu_dereference() might be invalid
due to the RCU read-side critical sections will be ignoring in
this going idle CPU, it might cause problems like:
access the wrong data/address, kernel exception...

Based on above description:
  We will add __nocfi to cpuidle_enter_state to avoid
“rcu_read_lock() used illegally while idle!”
and avoid the usage of invalid pointer of rcu_dereference()
in this situation.

Bug: 169017431
Change-Id: I8bbe25704e18cfde351a8f4277dd4b44b07421f5
Signed-off-by: rogercl.yang <rogercl.yang@mediatek.com>
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
2020-10-08 12:58:32 +00:00
Jungrae Kim
ebaebc32e5 ANDROID: ABI: update allowed list for galaxy
Leaf changes summary: 28 artifacts changed (1 filtered out)
Changed leaf types summary: 0 (1 filtered out) leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 28 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

28 Added functions:

  [A] 'function vm_struct* __get_vm_area(unsigned long int, unsigned long int, unsigned long int, unsigned long int)'
  [A] 'function int __kfifo_init(__kfifo*, void*, unsigned int, size_t)'
  [A] 'function unsigned int __kfifo_out_peek(__kfifo*, void*, unsigned int)'
  [A] 'function void __kfree_skb(sk_buff*)'
  [A] 'function void argv_free(char**)'
  [A] 'function char** argv_split(unsigned int, const char*, int*)'
  [A] 'function void cfg80211_port_authorized(net_device*, const u8*, gfp_t)'
  [A] 'function void class_dev_iter_exit(class_dev_iter*)'
  [A] 'function void class_dev_iter_init(class_dev_iter*, class*, device*, const device_type*)'
  [A] 'function device* class_dev_iter_next(class_dev_iter*)'
  [A] 'function unsigned int cpufreq_get(unsigned int)'
  [A] 'function device* create_function_device(char*)'
  [A] 'function void emergency_restart()'
  [A] 'function file* get_mm_exe_file(mm_struct*)'
  [A] 'function pid* get_task_pid(task_struct*, pid_type)'
  [A] 'function void gether_get_host_addr_u8(net_device*, u8*)'
  [A] 'function ktime_t ktime_get_coarse_with_offset(tk_offsets)'
  [A] 'function task_struct* pid_task(pid*, pid_type)'
  [A] 'function bool rfkill_set_sw_state(rfkill*, bool)'
  [A] 'function int send_sig(int, task_struct*, int)'
  [A] 'function int skb_copy_ubufs(sk_buff*, unsigned int)'
  [A] 'function void smpboot_unregister_percpu_thread(smp_hotplug_thread*)'
  [A] 'function __anonymous_struct__ sock_i_uid(sock*)'
  [A] 'function void sock_wfree(sk_buff*)'
  [A] 'function unsigned long int strspn(const char*, const char*)'
  [A] 'function int usb_gadget_connect(usb_gadget*)'
  [A] 'function int usb_gadget_disconnect(usb_gadget*)'
  [A] 'function unsigned long int vmalloc_to_pfn(void*)'

Bug: 170065985
Signed-off-by: Jungrae Kim <jryu.kim@samsung.com>
Change-Id: Ic14fc4aa42c42b2346e0235f92ee73fb558b2437
Signed-off-by: Jungrae Kim <jryu.kim@samsung.com>
2020-10-05 22:48:24 +00:00
Sangmoon Kim
2ea974a00c ANDROID: workqueue: add vendor hook for wq lockup information
- Add the hook to provide additional information like
   a task scheduling log.

Bug: 169374262

Signed-off-by: Sangmoon Kim <sangmoon.kim@samsung.com>
Change-Id: I203dbc6faa77687ea48769f76658d28b29ef46fd
2020-10-05 10:27:15 +09:00
John Stultz
d240b6929c ANDROID: db845c_gki.fragment: Add missing qcom drivers required for cpufreq functionality
Some additional drivers are now needed for cpufreq to work, so
add them to the db845c_gki.fragment

Signed-off-by: John Stultz <john.stultz@linaro.org>
Change-Id: Ie126f4613b9e5e31c9862d3d4b9c2afb4a5562e6
Bug: 146449535
2020-09-30 22:10:23 +00:00
Mayank Grover
81e694dedc ANDROID: ABI: update allowed list for QCOM
Update the android/abi_gki_aarch64_qcom with recent symbol additions.

Simple change and no need to update the .xml file, as no new symbol
addition.

Bug: 169739756
Change-Id: I3e992c3ecf4a06eed4b3459cb6343cc5a4f8941d
Signed-off-by: Mayank Grover <groverm@codeaurora.org>
2020-09-30 18:03:33 +05:30