Commit Graph

1055300 Commits

Author SHA1 Message Date
Greg Kroah-Hartman
a0d26c51d7 Merge 5.15.37 into android14-5.15
Changes in 5.15.37
	floppy: disable FDRAWCMD by default
	bpf: Introduce composable reg, ret and arg types.
	bpf: Replace ARG_XXX_OR_NULL with ARG_XXX | PTR_MAYBE_NULL
	bpf: Replace RET_XXX_OR_NULL with RET_XXX | PTR_MAYBE_NULL
	bpf: Replace PTR_TO_XXX_OR_NULL with PTR_TO_XXX | PTR_MAYBE_NULL
	bpf: Introduce MEM_RDONLY flag
	bpf: Convert PTR_TO_MEM_OR_NULL to composable types.
	bpf: Make per_cpu_ptr return rdonly PTR_TO_MEM.
	bpf: Add MEM_RDONLY for helper args that are pointers to rdonly mem.
	bpf/selftests: Test PTR_TO_RDONLY_MEM
	bpf: Fix crash due to out of bounds access into reg2btf_ids.
	spi: cadence-quadspi: fix write completion support
	ARM: dts: socfpga: change qspi to "intel,socfpga-qspi"
	mm: kfence: fix objcgs vector allocation
	gup: Turn fault_in_pages_{readable,writeable} into fault_in_{readable,writeable}
	iov_iter: Turn iov_iter_fault_in_readable into fault_in_iov_iter_readable
	iov_iter: Introduce fault_in_iov_iter_writeable
	gfs2: Add wrapper for iomap_file_buffered_write
	gfs2: Clean up function may_grant
	gfs2: Introduce flag for glock holder auto-demotion
	gfs2: Move the inode glock locking to gfs2_file_buffered_write
	gfs2: Eliminate ip->i_gh
	gfs2: Fix mmap + page fault deadlocks for buffered I/O
	iomap: Fix iomap_dio_rw return value for user copies
	iomap: Support partial direct I/O on user copy failures
	iomap: Add done_before argument to iomap_dio_rw
	gup: Introduce FOLL_NOFAULT flag to disable page faults
	iov_iter: Introduce nofault flag to disable page faults
	gfs2: Fix mmap + page fault deadlocks for direct I/O
	btrfs: fix deadlock due to page faults during direct IO reads and writes
	btrfs: fallback to blocking mode when doing async dio over multiple extents
	mm: gup: make fault_in_safe_writeable() use fixup_user_fault()
	selftests/bpf: Add test for reg2btf_ids out of bounds access
	Linux 5.15.37

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I785543e252f972c5a86f313e4b6721e2ff0797e6
2022-06-06 15:02:31 +02:00
Greg Kroah-Hartman
7a32f9d6ff Merge 5.15.36 into android14-5.15
Changes in 5.15.36
	fs: remove __sync_filesystem
	block: remove __sync_blockdev
	block: simplify the block device syncing code
	vfs: make sync_filesystem return errors from ->sync_fs
	xfs: return errors in xfs_fs_sync_fs
	dma-mapping: remove bogus test for pfn_valid from dma_map_resource
	arm64/mm: drop HAVE_ARCH_PFN_VALID
	etherdevice: Adjust ether_addr* prototypes to silence -Wstringop-overead
	mm: page_alloc: fix building error on -Werror=array-compare
	perf tools: Fix segfault accessing sample_id xyarray
	mm, kfence: support kmem_dump_obj() for KFENCE objects
	gfs2: assign rgrp glock before compute_bitstructs
	scsi: ufs: core: scsi_get_lba() error fix
	net/sched: cls_u32: fix netns refcount changes in u32_change()
	ALSA: usb-audio: Clear MIDI port active flag after draining
	ALSA: hda/realtek: Add quirk for Clevo NP70PNP
	ASoC: atmel: Remove system clock tree configuration for at91sam9g20ek
	ASoC: topology: Correct error handling in soc_tplg_dapm_widget_create()
	ASoC: rk817: Use devm_clk_get() in rk817_platform_probe
	ASoC: msm8916-wcd-digital: Check failure for devm_snd_soc_register_component
	ASoC: codecs: wcd934x: do not switch off SIDO Buck when codec is in use
	dmaengine: idxd: fix device cleanup on disable
	dmaengine: imx-sdma: Fix error checking in sdma_event_remap
	dmaengine: mediatek:Fix PM usage reference leak of mtk_uart_apdma_alloc_chan_resources
	dmaengine: dw-edma: Fix unaligned 64bit access
	spi: spi-mtk-nor: initialize spi controller after resume
	esp: limit skb_page_frag_refill use to a single page
	spi: cadence-quadspi: fix incorrect supports_op() return value
	igc: Fix infinite loop in release_swfw_sync
	igc: Fix BUG: scheduling while atomic
	igc: Fix suspending when PTM is active
	ALSA: hda/hdmi: fix warning about PCM count when used with SOF
	rxrpc: Restore removed timer deletion
	net/smc: Fix sock leak when release after smc_shutdown()
	net/packet: fix packet_sock xmit return value checking
	ip6_gre: Avoid updating tunnel->tun_hlen in __gre6_xmit()
	ip6_gre: Fix skb_under_panic in __gre6_xmit()
	net: restore alpha order to Ethernet devices in config
	net/sched: cls_u32: fix possible leak in u32_init_knode()
	l3mdev: l3mdev_master_upper_ifindex_by_index_rcu should be using netdev_master_upper_dev_get_rcu
	ipv6: make ip6_rt_gc_expire an atomic_t
	can: isotp: stop timeout monitoring when no first frame was sent
	net: dsa: hellcreek: Calculate checksums in tagger
	net: mscc: ocelot: fix broken IP multicast flooding
	netlink: reset network and mac headers in netlink_dump()
	drm/i915/display/psr: Unset enable_psr2_sel_fetch if other checks in intel_psr2_config_valid() fails
	net: stmmac: Use readl_poll_timeout_atomic() in atomic state
	dmaengine: idxd: add RO check for wq max_batch_size write
	dmaengine: idxd: add RO check for wq max_transfer_size write
	dmaengine: idxd: skip clearing device context when device is read-only
	selftests: mlxsw: vxlan_flooding: Prevent flooding of unwanted packets
	arm64: mm: fix p?d_leaf()
	ARM: vexpress/spc: Avoid negative array index when !SMP
	reset: renesas: Check return value of reset_control_deassert()
	reset: tegra-bpmp: Restore Handle errors in BPMP response
	platform/x86: samsung-laptop: Fix an unsigned comparison which can never be negative
	ALSA: usb-audio: Fix undefined behavior due to shift overflowing the constant
	drm/msm/disp: check the return value of kzalloc()
	arm64: dts: imx: Fix imx8*-var-som touchscreen property sizes
	vxlan: fix error return code in vxlan_fdb_append
	cifs: Check the IOCB_DIRECT flag, not O_DIRECT
	net: atlantic: Avoid out-of-bounds indexing
	mt76: Fix undefined behavior due to shift overflowing the constant
	brcmfmac: sdio: Fix undefined behavior due to shift overflowing the constant
	dpaa_eth: Fix missing of_node_put in dpaa_get_ts_info()
	drm/msm/mdp5: check the return of kzalloc()
	net: macb: Restart tx only if queue pointer is lagging
	scsi: iscsi: Release endpoint ID when its freed
	scsi: iscsi: Merge suspend fields
	scsi: iscsi: Fix NOP handling during conn recovery
	scsi: qedi: Fix failed disconnect handling
	stat: fix inconsistency between struct stat and struct compat_stat
	VFS: filename_create(): fix incorrect intent.
	nvme: add a quirk to disable namespace identifiers
	nvme-pci: disable namespace identifiers for the MAXIO MAP1002/1202
	nvme-pci: disable namespace identifiers for Qemu controllers
	EDAC/synopsys: Read the error count from the correct register
	mm/memory-failure.c: skip huge_zero_page in memory_failure()
	memcg: sync flush only if periodic flush is delayed
	mm, hugetlb: allow for "high" userspace addresses
	oom_kill.c: futex: delay the OOM reaper to allow time for proper futex cleanup
	mm/mmu_notifier.c: fix race in mmu_interval_notifier_remove()
	ata: pata_marvell: Check the 'bmdma_addr' beforing reading
	dma: at_xdmac: fix a missing check on list iterator
	dmaengine: imx-sdma: fix init of uart scripts
	net: atlantic: invert deep par in pm functions, preventing null derefs
	Input: omap4-keypad - fix pm_runtime_get_sync() error checking
	scsi: sr: Do not leak information in ioctl
	sched/pelt: Fix attach_entity_load_avg() corner case
	perf/core: Fix perf_mmap fail when CONFIG_PERF_USE_VMALLOC enabled
	drm/panel/raspberrypi-touchscreen: Avoid NULL deref if not initialised
	drm/panel/raspberrypi-touchscreen: Initialise the bridge in prepare
	KVM: PPC: Fix TCE handling for VFIO
	drm/vc4: Use pm_runtime_resume_and_get to fix pm_runtime_get_sync() usage
	powerpc/perf: Fix power9 event alternatives
	powerpc/perf: Fix power10 event alternatives
	perf script: Always allow field 'data_src' for auxtrace
	perf report: Set PERF_SAMPLE_DATA_SRC bit for Arm SPE event
	xtensa: patch_text: Fixup last cpu should be master
	xtensa: fix a7 clobbering in coprocessor context load/store
	openvswitch: fix OOB access in reserve_sfa_size()
	gpio: Request interrupts after IRQ is initialized
	ASoC: soc-dapm: fix two incorrect uses of list iterator
	e1000e: Fix possible overflow in LTR decoding
	ARC: entry: fix syscall_trace_exit argument
	arm_pmu: Validate single/group leader events
	KVM: x86/pmu: Update AMD PMC sample period to fix guest NMI-watchdog
	KVM: x86: Pend KVM_REQ_APICV_UPDATE during vCPU creation to fix a race
	KVM: nVMX: Defer APICv updates while L2 is active until L1 is active
	KVM: SVM: Flush when freeing encrypted pages even on SME_COHERENT CPUs
	netfilter: conntrack: convert to refcount_t api
	netfilter: conntrack: avoid useless indirection during conntrack destruction
	ext4: fix fallocate to use file_modified to update permissions consistently
	ext4: fix symlink file size not match to file content
	ext4: fix use-after-free in ext4_search_dir
	ext4: limit length to bitmap_maxbytes - blocksize in punch_hole
	ext4, doc: fix incorrect h_reserved size
	ext4: fix overhead calculation to account for the reserved gdt blocks
	ext4: force overhead calculation if the s_overhead_cluster makes no sense
	netfilter: nft_ct: fix use after free when attaching zone template
	jbd2: fix a potential race while discarding reserved buffers after an abort
	spi: atmel-quadspi: Fix the buswidth adjustment between spi-mem and controller
	block/compat_ioctl: fix range check in BLKGETSIZE
	arm64: dts: qcom: add IPA qcom,qmp property
	Linux 5.15.36

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: Iba23a60bda8fd07f26fd7f9217f208c2e6ee26c2
2022-06-06 11:12:02 +02:00
Jiyong Park
f478e274b1 ANDROID: add build configs for Microdroid
Microdroid [1] is a lightweight variant of Android for on-device VMs
which are intended to serve security/privacy sensitive tasks. So far,
Microdroid has used the GKI, which is for the full-fledged Android.
This isn't ideal because Microdroid doesn't support many features that
are built-in for Android: audio, bluetooth, gps, multiple filesystems,
etc. Such features makes the kernel unnecessarily bigger and a bit
slower for Microdroid. In addition, there has been a concern that such
unused features could increase the potenal attack surfaces.

Making GKI more modular is an option, however it is sub-optimal as there
are some features that can't be modularized but contribute a lot to the
kernel size (e.g. KALLSYMS_ALL, INET). Therefore, we decided to
introduce a new config.

This change introduces two arch-specific configs for Microdroid:
build.config.microdroid.aarch64 and build.config.microdroid.x86_64. As
the initial step, the two configs are identical to the corresponding
GKI configs. Follow-up changes will gradually turn off unnecessary
features.

Implementation wise, the new config is implemented as a config fragment
on top of the GKI config. The fragment will have `# CONFIG_XXX is not
set` to turn the feature `XXX` that GKI enables.

[1] https://android.googlesource.com/platform/packages/modules/Virtualization/+/HEAD/microdroid/README.md

Bug: 231106934
Test: BUILD_CONFIG=common/build/config.microdroid.aarch64 build/build.sh
Test: BUILD_CONFIG=common/build/config.microdroid.x86_64 build/build.sh
Signed-off-by: Jiyong Park <jiyong@google.com>
Change-Id: Iaf3654232b2d5eed0ffc1f52a2f96fa362e60cd7
2022-06-02 01:08:58 +00:00
Maciej Żenczykowski
7c333ad9f0 FROMGIT: xfrm: do not set IPv4 DF flag when encapsulating IPv6 frames <= 1280 bytes.
One may want to have DF set on large packets to support discovering
path mtu and limiting the size of generated packets (hence not
setting the XFRM_STATE_NOPMTUDISC tunnel flag), while still
supporting networks that are incapable of carrying even minimal
sized IPv6 frames (post encapsulation).

Having IPv4 Don't Frag bit set on encapsulated IPv6 frames that
are not larger than the minimum IPv6 mtu of 1280 isn't useful,
because the resulting ICMP Fragmentation Required error isn't
actionable (even assuming you receive it) because IPv6 will not
drop it's path mtu below 1280 anyway.  While the IPv4 stack
could prefrag the packets post encap, this requires the ICMP
error to be successfully delivered and causes a loss of the
original IPv6 frame (thus requiring a retransmit and latency
hit).  Luckily with IPv4 if we simply don't set the DF flag,
we'll just make further fragmenting the packets some other
router's problems.

We'll still learn the correct IPv4 path mtu through encapsulation
of larger IPv6 frames.

I'm still not convinced this patch is entirely sufficient to make
everything happy... but I don't see how it could possibly
make things worse.

See also recent:
  4ff2980b6b 'xfrm: fix tunnel model fragmentation behavior'
and friends

Cc: Lorenzo Colitti <lorenzo@google.com>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Lina Wang <lina.wang@mediatek.com>
Cc: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Maciej Zenczykowski <maze@google.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
(cherry picked from commit 6821ad8770 https://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec.git master)

Bug: 203183943
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ie7701ebc63b1e2a974114538befd278154eb3bc6
2022-05-30 13:23:23 +00:00
Will Deacon
68fe0eca3b ANDROID: arm64: gki_defconfig: Add CONFIG_DMA_RESTRICTED_POOL=y
Add CONFIG_DMA_RESTRICTED_POOL=y, allowing pKVM guests to use separate
SWIOTLB buffers for each virtio device.

Signed-off-by: Will Deacon <willdeacon@google.com>
Bug: 190591509
Change-Id: I614da3b86c67a29ee982f8b149f689e7f999ef38
(cherry picked from commit f932f5456f)
2022-05-25 11:59:11 +00:00
Todd Kjos
1a0ea2faa8 ANDROID: turn off KMI enforcement
Turn off KMI enforcement for new android14-5.15 branch

Bug: 231591327
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: I7ec08cd5e9a28c4689b25ca015b5c41c98359c02
2022-05-17 21:16:20 +00:00
Wenchao Chen
d8d29c85d8 ANDROID: ABI: Update symbols to unisoc whitelist for the 2st
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, 2 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

2 Added functions:

  [A] 'function void mmc_cqe_post_req(mmc_host*, mmc_request*)'
  [A] 'function int mmc_wait_for_cmd(mmc_host*, mmc_command*, int)'

Bug: 232880341
Change-Id: Iec39f094d14846e4b05c490d335e1aef23423898
Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com>
2022-05-17 13:40:06 +00:00
Keir Fraser
e8b3f31d7a ANDROID: arm64: Fix MMIO guard ioremap when called before slab_is_available().
The ioremap hook can be called before slab is initialised, at which time
calling into kmalloc() is not allowed.

Signed-off-by: Keir Fraser <keirf@google.com>
Bug: 232894028
Fixes: 078e81b0c1 ("ANDROID: arm64: Implement ioremap/iounmap hooks calling into KVM's MMIO guard")
Change-Id: Ieaf5adbdacdb196e37f4629998164a015e15c6d8
2022-05-17 08:01:37 +00:00
Prasad Sodagudi
525d77310a ANDROID: pstore/ram: Add backward compatibility for ramoops reserved region
Some of the platforms might be still expecting dedicated memory region
for ramoops node. So add logic to detect the start and size of the
ramoops memory region by looking up reserved memory region with
of_reserved_mem_lookup() when platform_get_resource() failed.

Bug: 191636717
Change-Id: Idc479b45fb3f637f7235efd6eabac62059d5e92b
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
(cherry picked from commit 9b136eab76)
2022-05-16 22:30:25 +00:00
Isaac J. Manjarres
317045867f FROMLIST: pstore/ram: Rework logic for detecting ramoops reserved memory region
The reserved memory region for ramoops is assumed to be at a fixed
and known location when read from the devicetree. This is not desirable
in environments where it is preferred for the region to be dynamically
allocated at runtime, as opposed to it being fixed at compile time.

Change the logic for detecting the start and size of the ramoops
memory region by looking up the reserved memory region instead of
using platform_get_resource(), which assumes that the location
of the memory is known ahead of time.

Bug: 191636717
Link: https://lore.kernel.org/patchwork/patch/1451704/
Change-Id: I24066de9f4fe1f1575cb1bbb1687c37a2b1938a4
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
(cherry picked from commit bd2ca0ba5b)
2022-05-16 22:30:15 +00:00
Visweswara Tanuku
065d546615 ANDROID: tty: serial: msm: geni: configure pinctrl when console is disabled
When console is disabled we are returning in probe
leaving the gpio pinctrl configuration untouched.
Since the pinctrl configuration is active(default)
while returning in probe, its leading to 1.8V pad
leakage during system suspend later.

Configure the pinctrl configuration to sleep state
when console is disabled to avoid leakage.

Bug: 232769754
Signed-off-by: Visweswara Tanuku <quic_vtanuku@quicinc.com>
Change-Id: Icc56d40f72d368bb0b80b348aa5d19ba4c4278a6
2022-05-16 11:16:14 -07:00
Shaleen Agrawal
41a4dab305 ANDROID: Disable CFI on trace hooks
Disable CFI on trace hooks, as this improves some lmbench
microbenchmarks by as much as 12%.

Bug: 200542217
Change-Id: I6ad1d12047c4e69743ff94cf0ea8f70f5023c7da
Signed-off-by: Shaleen Agrawal <shalagra@codeaurora.org>
2022-05-16 15:28:14 +00:00
Quentin Perret
d6a300eb7a ANDROID: Disable CFI on restricted vendor hooks
CFI has additional overhead on indirect branches to modules as the
target is not known at kernel compile-time. This has been demonstrated
to cause problematic performance regressions on benchmarks using GKI
together with modularized scheduler callbacks attached to restricted
vendor hooks.

To restore some of the performance back, let's disable CFI around the
restricted hook call sites and issue a raw indirect call in fast paths.

We should be able to drop this patch when/if the arm64 static_call
port lands upstream [1] as this would make tracepoints circumvent some
of the CFI checks using text patching, but that still remain to be
proven.

[1] https://lore.kernel.org/linux-arm-kernel/20201028184114.6834-1-ardb@kernel.org/

Bug: 168521642
Change-Id: I7cd59f582b12fed15be64059f08122f96786e650
Signed-off-by: Quentin Perret <qperret@google.com>
2022-05-16 15:28:06 +00:00
Fuad Tabba
e88313ab7c ANDROID: KVM: arm64: pkvm: Ensure that TLBs and I-cache are private to each vcpu
If a different vcpu from the same vm is loaded on the same
physical CPU, we must flush the CPU context.

This patch ensures that by tracking the vcpu that was last loaded
on this CPU, and flushes if that changes. This could lead to
over-invalidation, which could affect performance but not
correctness.

Bug: 228810735
Signed-off-by: Fuad Tabba <tabba@google.com>
Change-Id: I70976007165ca3b8d293089dbf9c2111b01ca2f7
2022-05-16 10:15:01 +00:00
Fuad Tabba
10bb2d3f93 ANDROID: KVM: arm64: Remove stale shadow_handle field
This field is stale and not being used. Remove it.

Bug: 228810735
Signed-off-by: Fuad Tabba <tabba@google.com>
Change-Id: I5a734c22f246186b81ffd7bc73b46e0b60518306
2022-05-16 08:41:30 +00:00
Mayank Rana
95044ba1f6 FROMLIST: usb: dwc3: Fix ep0 handling when getting reset while doing control transfer
According to the databook ep0 should be in setup phase during reset.
If host issues reset between control transfers, ep0 will be  in an
invalid state. Fix this by issuing stall and restart on ep0 if it
is not in setup phase.

Also SW needs to complete pending control transfer and setup core for
next setup stage as per data book. Hence check ep0 state during reset
interrupt handling and make sure active transfers on ep0 out/in
endpoint are stopped by queuing ENDXFER command for that endpoint and
restart ep0 out again to receive next setup packet.

Link: https://lore.kernel.org/lkml/1651693001-29891-1-git-send-email-quic_mrana@quicinc.com/
Bug: 232209416
Change-Id: I921e36e2f81e0b0854d59531d8537a1b6118f26c
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-05-15 15:09:10 +00:00
Xuewen Yan
9599549d68 ANDROID: ABI: Update symbols to unisoc whitelist for the 7st
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, 2 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

2 Added functions:

  [A] 'function int __traceiter_android_rvh_is_cpu_allowed(void*, task_struct*, int, bool*)'
  [A] 'function int __traceiter_cpu_frequency_limits(void*, cpufreq_policy*)'

Bug: 231529176
Change-Id: I6d1a282ff82be26f22b022bb02d864e8c5c380fe
Signed-off-by: Xuewen Yan <xuewen.yan@unisoc.com>
2022-05-14 20:15:45 +08:00
Lecopzer Chen
a46280457e FROMLIST: media: Kconfig: Make DVB_CORE=m possible when MEDIA_SUPPORT=y
A case that CONFIG_MEDIA_SUPPORT is y but we need DVB_CORE=m, and
this doesn't work since DVB_CORE is default MEDIA_DIGITAL_TV_SUPPORT
and then follows MEDIA_SUPPORT.

Link: https://lore.kernel.org/lkml/20220513173036.10807-1-lecopzer.chen@mediatek.com/
Bug: 232495768
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Lecopzer Chen <lecopzer.chen@mediatek.com>
Change-Id: Ie8e6bfe55f304812a97afeba59bce129e4d62f47
2022-05-14 04:46:09 +00:00
Stephen Dickey
b1d4f24555 ANDROID: abi_gki_aarch64_qcom: Update symbol list
Leaf changes summary: 3 artifacts 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, 3 Added variables

3 Added variables:

  [A] 'tracepoint __tracepoint_android_rvh_account_irq_end'
  [A] 'tracepoint __tracepoint_android_rvh_account_irq_start'
  [A] 'tracepoint __tracepoint_android_rvh_sched_getaffinity'

Bug: 229133948
Bug: 231341763
Change-Id: Ied29ff2186e3d5d3a78b3b8aaff74fad82af88d8
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
2022-05-14 00:40:36 +00:00
Prasad Sodagudi
87abd99c7f ANDROID: firmware_loader: Fix warning with firmware_param_path_set
Compile time warning is observed with firmware_param_path_set()
for using the __setup() macro when firmware_loader enabled as module.

drivers/base/firmware_loader/main.c:428:19: warning: 'firmware_param_path_set'
defined but not used [-Wunused-function]

Fix the above warning by using the module_param_cb instead of __setup for
firmware_class.path commandline.

Bug: 202192667
Fixes: d551647f3b ("ANDROID: firmware_loader: Add support for customer firmware paths")
Change-Id: I73cdee9815e84a507ac886e6e181d4a489fd2e5f
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
2022-05-13 15:06:34 -07:00
Will Deacon
bb8c831668 Revert "ANDROID: KVM: arm64: pkvm: Ensure that TLBs and I-cache are private to each vcpu"
This reverts commit 92a6dd3865.

Reason for revert: Suspected cause of hyp panic when running suite/user/pkvm_test

Bug: 232390891
Change-Id: Ie644c5484d8f1dde9630b9510a80988446ebbcdd
Signed-off-by: Will Deacon <willdeacon@google.com>
2022-05-13 21:25:42 +00:00
Wei-Chung Hsu
435891a607 ANDROID: GCE: To build kernel image for gce cloud android.
command: BUILD_CONFIG=common/build.config.gce.x86_64 build/build.sh -j32

Bug: 195791462
Test: presubmit
Signed-off-by: Wei-Chung Hsu <weihsu@google.com>
Change-Id: Iec825a85de3028026b9df308a8c10aa45a5755c1
2022-05-13 20:31:12 +00:00
Yifan Hong
0af43f935e ANDROID: enable db845c kleaf build.
Kleaf replaces build.sh. Define db845c target in Bazel
so it may be built with the following command.

Kleaf requires the list of in-tree kernel modules to be
listed explicitly.

Test: tools/bazel run //common:db845c_dist

Bug: 232284531

Signed-off-by: Yifan Hong <elsk@google.com>
Change-Id: I6ffd111574ffa012fa4d4c8241e06af08a5887e1
2022-05-13 19:31:32 +00:00
Steve Muckle
23ef56f65c Revert "ANDROID: Make file-backed vma teardown synchronous"
This reverts commit fe25fc5375.

Reason for revert: test regressions
Bug: 232427425
Bug: 232421416
Change-Id: If7006fe6c3f1a55361099ef24927d4bc7c821b9c
Signed-off-by: Steve Muckle <smuckle@google.com>
2022-05-13 15:42:24 +00:00
Wei-Chung Hsu
d1d3f4a801 ANDROID: GCE: To build kernel image for gce cloud android.
command: BUILD_CONFIG=common/build.config.gce.x86_64 build/build.sh -j32

Bug: 195791462
Test: presubmit
Change-Id: I59560d9c32d1d08d9e03e7275b4f49df8486710b
Signed-off-by: Wei-Chung Hsu <weihsu@google.com>
2022-05-13 15:02:53 +00:00
Visweswara Tanuku
0c427d1154 FROMLIST: serial: qcom_geni_serial: Disable MMIO tracing for geni serial
Disable MMIO tracing for geni serial driver to prevent excessive
logging. Any access over serial console would involve a lot of
TX and RX register accesses (and few others), so these MMIO
read/write trace events in these drivers cause a lot of unwanted
noise because of the high frequency of such operations and it is
not very useful tracing these events for such drivers.
Given we want to enable these trace events on development devices
(maybe not production devices) where performance also really matters
so that we don't regress other components by wasting CPU cycles and
memory collecting these traces, it makes more sense to disable these
traces from such drivers.

Also another reason to disable these traces would be to prevent
recursive tracing when we display the trace buffer containing
these MMIO trace events since writing onto serial console would
further record MMIO traces.

Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Sai Prakash Ranjan <quic_saipraka@quicinc.com>

Bug: 229834709
Link: https://lore.kernel.org/lkml/282f2d8fb795e8b1961693ed4184b8136c3520db.1651663123.git.quic_saipraka@quicinc.com/
Change-Id: Ifac104dceae688b83b15e6a6fd0a0c55eb7b43e5
Signed-off-by: Visweswara Tanuku <quic_vtanuku@quicinc.com>
2022-05-13 15:01:13 +00:00
chunhui.li
a04009eea6 ANDROID: kernel: fix debug_kinfo set twice crash issue
If write string to /sys/module/debug_kinfo/parameters/build_info
twice, kernel will crash. fix by removing vunmap in build_info_set.

Bug: 213120696
Signed-off-by: Chunhui Li <chunhui.li@mediatek.com>
Change-Id: I683859067a31068de0006be8490efa4b0107044f
(cherry picked from commit bdc772adbd)
2022-05-13 16:57:46 +08:00
Dillon Min
12a5d3ae52 UPSTREAM: media: v4l2-ctrls: Add RGB color effects control
Add V4L2_COLORFX_SET_RGB color effects control, V4L2_CID_COLORFX_RGB
for RGB color setting.

with two mirror changes:
- change 0xFFFFFF to 0xffffff
- fix comments 2^24 to 2^24 - 1

[hverkuil: dropped spaces around + with V4L2_CID_BASE for consistency]

Bug: 232332132
(cherry picked from commit ef9f18a9e3)
Signed-off-by: Dillon Min <dillon.minfei@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Lecopzer Chen <lecopzer.chen@mediatek.com>
Change-Id: I68151757540cff896ff5a727412e1ed9aa95d9da
2022-05-12 15:34:49 +00:00
Rahul Sharma
53cb94b104 ANDROID: abi_gki_aarch64_qcom: Update qcom abi symbol list
Leaf changes summary: 3 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

3 Added functions:

  [A] 'function drm_bridge* devm_drm_panel_bridge_add(device*, drm_panel*)'
  [A] 'function bool drm_edid_is_valid(edid*)'
  [A] 'function s32 i2c_smbus_read_i2c_block_data(const i2c_client*, u8, u8, u8*)'

Bug: 231996603
Change-Id: Ic41befec6dfc2460ea1ba13bfef7c394c86b09c1
Signed-off-by: Rahul Sharma <quic_rahsha@quicinc.com>
Signed-off-by: Shreyas K K <quic_shrekk@quicinc.com>
2022-05-12 15:15:23 +00:00
fengmingli
5f20a6414e ANDROID: usb: export tracepoint for dwc3_complete_trb
Export dwc3_complete_trb tracepoint so that
vendor modules can use it.

Bug: 189130101

Change-Id: I1efeaf2a29267ee647fda83d5f18b7a5fae16b96
Signed-off-by: fengmingli <mingli.feng@vivo.com>
(cherry picked from commit e3e4ee0e9f)
2022-05-12 06:21:31 +00:00
Shaleen Agrawal
aec40de3d7 ANDROID: cputime: seprate irq entry and exit tracehooks
Currently the code has single hook for tracking irqs. However
modules need to deduce start and end of the irq.

Create separate hooks for irq start and end since the
cputime has already figured it out.

Bug: 231341763
Change-Id: Ie0dd503b283d83f69d01171ebd1cd6127c3bafd0
Signed-off-by: Shaleen Agrawal <quic_shalagra@quicinc.com>
Signed-off-by: Ashay Jaiswal <quic_ashayj@quicinc.com>
2022-05-12 10:02:42 +05:30
Will McVicker
3eebd9f7e4 ANDROID: ABI: Update pixel symbol list and ABI xml
Leaf changes summary: 9 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, 2 Added variables

7 Added functions:

  [A] 'function void __drm_printfn_debug(drm_printer*, va_format*)'
  [A] 'function unsigned int __kfifo_out_peek(__kfifo*, void*, unsigned int)'
  [A] 'function int __traceiter_android_vh_sysrq_crash(void*, void*)'
  [A] 'function void ktime_get_snapshot(system_time_snapshot*)'
  [A] 'function void pps_event(pps_device*, pps_event_time*, int, void*)'
  [A] 'function pps_device* pps_register_source(pps_source_info*, int)'
  [A] 'function void pps_unregister_source(pps_device*)'

2 Added variables:

  [A] 'tracepoint __tracepoint_android_vh_sysrq_crash'
  [A] 'int console_set_on_cmdline'

Bug: 226206537
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I6468e76f0d287416bab5ad7958a952f97b1a56df
2022-05-11 21:36:36 +00:00
Mayank Rana
614e8febec ANDROID: abi_gki_aarch64_qcom: Update symbol list
CONFIG_USB_EHSET_TEST_FIXTURE enables ehset misc class driver
which is needed for running USB IF electrical compliance. Below
is seen compilation error when enabling this config to compile
as module:

MODPOST modules-only.symvers
ERROR: modpost: "usb_control_msg_recv" [drivers/usb/misc/ehset.ko] undefined!
ERROR: modpost: "usb_control_msg_send" [drivers/usb/misc/ehset.ko] undefined

Fix above compilation with add required symbols.
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 usb_control_msg_recv(usb_device*, __u8, __u8,
__u8, __u16, __u16, void*, __u16, int, gfp_t)'
[A] 'function int usb_control_msg_send(usb_device*, __u8, __u8,
__u8, __u16, __u16, void*, __u16, int, gfp_t)'

Bug: 232128297
Change-Id: If15df15fc3f315447b53fe04b56f70267afd14c0
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-05-11 21:34:56 +00:00
Suren Baghdasaryan
fe25fc5375 ANDROID: Make file-backed vma teardown synchronous
When a file-backed vma is being released, the userspace can have an
expectation that the vma and the file it's pinning will be released
synchronously. This does not happen when SPF is enabled because vma
and associated file are released asynchronously after RCU grace
period. This is done to prevent pagefault handler from stepping on
a deleted object. Fix this issue by synchronously waiting for RCU
grace period during file-backed vma tear-down.

Fixes: 48e35d053f "FROMLIST: mm: rcu safe vma->vm_file freeing"
Bug: 231394031
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I9f672d5bd947763c7d180a8c1b1f964600d407f3
2022-05-11 17:08:16 +00:00
Vivek Aknurwar
cc81da9a8e ANDROID: abi_gki_aarch64_qcom: Add icc_sync_state
icc_sync_state symbol is required for interconnect providers so they can
make use of framework icc_sync_state. Add it to the symbol list.

Bug: 231996551
Change-Id: I5b79601f8d8b7993efe9741e2a7be54fd33883ec
Signed-off-by: Vivek Aknurwar <quic_viveka@quicinc.com>
Signed-off-by: Giuliano Procida <gprocida@google.com>
2022-05-11 16:09:15 +00:00
Jian Gong
f7684ebb37 ANDROID: ABI: Update symbols to unisoc whitelist for the 6th
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, 2 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

2 Added functions:

  [A] 'function int __traceiter_android_vh_psci_cpu_suspend(void*, u32, bool*)'
  [A] 'function int __traceiter_android_vh_psci_tos_resident_on(void*, int, bool*)'

Bug: 2321959946
Change-Id: Icd7d5336516a9678c438699f869d6c060534445d
Signed-off-by: Jian Gong <Jian.Gong@unisoc.com>
2022-05-11 15:39:08 +00:00
Chun-Hung Wu
2c13c0def9 ANDROID: Update symbol list for mtk
Leaf changes summary: 12 artifacts changed
Changed leaf types summary: 0 leaf type changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 11 Added functions
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 1 Added variable

11 Added functions:

  [A] 'function int __traceiter_xhci_urb_giveback(void*, urb*)'
  [A] 'function int _raw_spin_trylock_bh(raw_spinlock_t*)'
  [A] 'function void clk_unregister_gate(clk*)'
  [A] 'function void clkdev_add(clk_lookup*)'
  [A] 'function void clkdev_drop(clk_lookup*)'
  [A] 'function void frame_vector_to_pfns(frame_vector*)'
  [A] 'function void* gen_pool_dma_zalloc(gen_pool*, size_t, dma_addr_t*)'
  [A] 'function void gen_pool_for_each_chunk(gen_pool*, void (gen_pool*, gen_pool_chunk*, void*)*, void*)'
  [A] 'function int snd_soc_add_component(snd_soc_component*, snd_soc_dai_driver*, int)'
  [A] 'function int snd_soc_component_initialize(snd_soc_component*, const snd_soc_component_driver*, device*)'
  [A] 'function regmap* syscon_regmap_lookup_by_phandle_optional(device_node*, const char*)'

1 Added variable:

  [A] 'tracepoint __tracepoint_xhci_urb_giveback'

Bug: 228415386
Signed-off-by: Chun-Hung Wu <chun-hung.wu@mediatek.com>
Change-Id: I1917e8f4048c53cd80fed3b1588165766bbf0ad4
2022-05-11 15:37:47 +00:00
Elliot Berman
1e927b098a 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, 1 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

1 Added function:

  [A] 'function unsigned int cfg80211_vendor_cmd_get_sender(wiphy*)'

Bug: 211744078
Change-Id: Iae1315253a7f72c6c7977e47fe14e6cf311d7734
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-11 15:34:55 +00:00
Petr Mladek
a327e05923 UPSTREAM: printk: ringbuffer: Improve prb_next_seq() performance
prb_next_seq() always iterates from the first known sequence number.
In the worst case, it might loop 8k times for 256kB buffer,
15k times for 512kB buffer, and 64k times for 2MB buffer.

It was reported that polling and reading using syslog interface
might occupy 50% of CPU.

Speedup the search by storing @id of the last finalized descriptor.

The loop is still needed because the @id is stored and read in the best
effort way. An atomic variable is used to keep the @id consistent.
But the stores and reads are not serialized against each other.
The descriptor could get reused in the meantime. The related sequence
number will be used only when it is still valid.

An invalid value should be read _only_ when there is a flood of messages
and the ringbuffer is rapidly reused. The performance is the least
problem in this case.

Bug: 216238044
(cherry picked from commit ef244b4dc53e520d4570b2610436aba0593ce6f55)
Reported-by: Chunlei Wang <chunlei.wang@mediatek.com>
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Reviewed-by: John Ogness <john.ogness@linutronix.de>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/1642770388-17327-1-git-send-email-quic_mojha@quicinc.com
Link: https://lore.kernel.org/lkml/YXlddJxLh77DKfIO@alley/T/#m43062e8b2a17f8dbc8c6ccdb8851fb0dbaabbb14
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>

Change-Id: Ie6b1276eca791a891e42d5635ca1f116ae7cadef
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
2022-05-10 23:41:39 +00:00
Prasad Sodagudi
d551647f3b ANDROID: firmware_loader: Add support for customer firmware paths
Currently firmware_class.patch commandline can take a single path for
loading firmwares on custom paths. SoC vendors and oems can have
firmwares in multiple file system paths. So add support for paassing
multiple paths through command line for firmware loader.

For example - firmware_class.path="/vendor,/vendor/firmware_mnt,
/oem/firmware". firmware_class.path can take upto 10 file system
paths with ',' separation.

Bug: 202192667
Change-Id: I31d1470d7dd0255c7aefd856f3c129bdb4b7f2e8
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
2022-05-10 23:39:30 +00:00
Mukesh Ojha
d7024276b3 FROMLIST: remoteproc: Use unbounded workqueue for recovery work
There could be a scenario where there is too much load on a core
(n number of tasks which is affined) or in a case when multiple
rproc subsystem is going for a recovery and they queued recovery
work to one core so even though subsystem are independent there
recovery will be delayed if one of the subsystem recovery work
is taking more time in completing.

If we make this queue unbounded, the recovery work could be picked
on any cpu. This patch try to address this.

Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Bug: 228429683
Change-Id: If18b39db6c0861989a6a3b36d9efde5f488b9b73
Link: https://lore.kernel.org/lkml/1649313998-1086-1-git-send-email-quic_mojha@quicinc.com/
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
(cherry picked from commit 9608dc38a0)
2022-05-10 22:03:09 +00:00
Elliot Berman
f69ae9910d ANDROID: kbuild: mod: Move $(obj) prefix inside awk
When compiling modules with a large number of object files,

  echo $(addprefix $(obj)/, /* the member .o's of module */)

may result in an a command line which is too long. To help alleviate
this problem, echo the members intermediate objects and add $(obj)/
prefix within AWK itself.

An equivalent of this patch will land in this larger series refactoring
LTO: https://lore.kernel.org/linux-kbuild/20220424190811.1678416-1-masahiroy@kernel.org/

Bug: 175420575
Change-Id: I02f1ea49d1a8aa29b76c69cadcb5e84dd2ae4aa3
Link: https://lore.kernel.org/all/CAK7LNAStLCBCur3QnfMnBrOUkixYbJK+C6TZVKYcGX9R3M=ANQ@mail.gmail.com/
Suggested-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:47:42 +00:00
Elliot Berman
b72ece4853 FROMGIT: kbuild: read *.mod to get objects passed to $(LD) or $(AR)
ld and ar support @file, which command-line options are read from.

Now that *.mod lists the member objects in the correct order, without
duplication, it is ready to be passed to ld and ar.

By using the @file syntax, people will not be worried about the pitfall
described in the NOTE.

Bug: 175420575
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
(cherry picked from commit 9170b27757d21460755254045bad4933cb631776
 https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)
[eberman: Fix conflicts with commit 557054d]
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
Change-Id: Id5bbd99ce940dc5eb40e2f9e75182a50a2eeff47
2022-05-10 21:47:36 +00:00
Masahiro Yamada
2c3a1d577c FROMGIT: kbuild: make *.mod not depend on *.o
The dependency

    $(obj)/%.mod: $(obj)/%$(mod-prelink-ext).o

... exists because *.mod files previously contained undefined symbols,
which are computed from *.o files when CONFIG_TRIM_UNUSED_KSYMS=y.

Now that the undefined symbols are put into separate *.usyms files,
there is no reason to make *.mod depend on *.o files.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Bug: 175420575
(cherry picked from commit 21b526ad634448369bbadc2f112ed2c716805e63
 https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)
Change-Id: I7f0e7872ccb54467a33c951d0551fe49be9a36fd
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:47:28 +00:00
Masahiro Yamada
3fd0696927 FROMGIT: kbuild: get rid of duplication in *.mod files
It is allowed to add the same objects multiple times to obj-y / obj-m:

  obj-y += foo.o foo.o foo.o
  obj-m += bar.o bar.o bar.o

It is also allowed to add the same objects multiple times to a composite
module:

  obj-m += foo.o
  foo-y := foo1.o foo2.o foo2.o foo1.o

This flexibility is useful because the same object might be selected by
different CONFIG options, like this:

  obj-m               += foo.o
  foo-y               := foo1.o
  foo-$(CONFIG_FOO_X) += foo2.o
  foo-$(CONFIG_FOO_Y) += foo2.o

The duplicated objects are omitted at link time. It works naturally in
Makefiles because GNU Make removes duplication in $^ without changing
the order.

It is working well, almost...

A small flaw I notice is, *.mod contains duplication in such a case.

This is probably not a big deal. As far as I know, the only small
problem is scripts/mod/sumversion.c parses the same file multiple
times.

I am fixing this because I plan to reuse *.mod for other purposes,
where the duplication can be problematic.

The code change is quite simple. We already use awk to drop duplicated
lines in modules.order (see cmd_modules_order in the same file).
I copied the code, but changed RS to use spaces as record separators.

I also changed the file format to list one object per line.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Bug: 175420575
(cherry picked from commit 62d88fd6ef3e52c355ec82e1aef530e72cf690e5
 https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)
Change-Id: Icd83764f7064c7abf4f8bcf9cf784c8c25c52192
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:47:22 +00:00
Masahiro Yamada
0e5851bf31 FROMGIT: kbuild: split the second line of *.mod into *.usyms
The *.mod files have two lines; the first line lists the member objects
of the module, and the second line, if CONFIG_TRIM_UNUSED_KSYMS=y, lists
the undefined symbols.

Currently, we generate *.mod after constructing composite modules,
otherwise, we cannot compute the second line. No prerequisite is
required to print the first line.

They are orthogonal. Splitting them into separate commands will ease
further cleanups.

This commit splits the list of undefined symbols out to *.usyms files.

Previously, the list of undefined symbols ended up with a very long
line, but now it has one symbol per line.

Use sed like we did before commit 7d32358be8 ("kbuild: avoid split
lines in .mod files").

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>

Bug: 175420575
(cherry picked from commit 2f6b64906adf99b4c5ea9356df793766d290cfb4
 https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)
Change-Id: Ic801d2bf085aff6e50d15d196c43da4df3aa88c8
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:47:00 +00:00
Masahiro Yamada
fe25d38e6a FROMGIT: kbuild: reuse real-search to simplify cmd_mod
The first command in cmd_mod is similar to the real-search macro.
Reuse it.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

Bug: 175420575
(cherry picked from commit e90ac718fd861b3329b7a981dca016871b283f01
 https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)
Change-Id: Ibcc1a9e29f6c8a1be268f48da473f429e7590749
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:46:54 +00:00
Masahiro Yamada
64f77a8297 FROMGIT: kbuild: make multi_depend work with targets in subdirectory
Precisely speaking, when you get the stem of the path, you should use
$(patsubst $(obj)/%,%,...) instead of $(notdir ...).

I do not see this usecase, but if you create a composite object in a
subdirectory, the Makefile should look like this:

   obj-$(CONFIG_FOO) += dir/foo.o
   dir/foo-objs      := dir/foo1.o dir/foo2.o

The member objects should be assigned to dir/foo-objs instead of
foo-objs.

This syntax is more consistent with commit 54b8ae66ae ("kbuild:
change *FLAGS_<basetarget>.o to take the path relative to $(obj)").

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

Bug: 175420575
(cherry picked from commit 1fe9c5794b2b57b33c84ffaa0eb56254f310ed54
  https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)

Change-Id: I541fb600d05ae9be847718c869e0b95c0b540ff9
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:46:48 +00:00
Masahiro Yamada
12b13aeab2 FROMGIT: kbuild: reuse suffix-search to refactor multi_depend
The complicated part of multi_depend is the same as suffix-search.

Reuse it.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

Bug: 175420575
(cherry picked from commit db6836b669fb7c4a214e967e3985db05d85f2a24
 https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git kbuild)
Change-Id: I7966897a0151a08d003f53d20adaf3fb40028442
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-05-10 21:46:40 +00:00
Prasad Sodagudi
ff8dd4797e ANDROID: abi_gki_aarch64_qcom: Update symbol list
Leaf changes summary: 3 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

3 Added functions:

  [A] 'function void snd_timer_interrupt(snd_timer*, unsigned long int)'
  [A] 'function const char* v4l2_ctrl_get_name(u32)'
  [A] 'function int v4l2_s_ctrl(v4l2_fh*, v4l2_ctrl_handler*, v4l2_control*)'

Bug: 211744078
Change-Id: I569d0c369dfddf0bb92acfcb83587e537b7ab10e
Signed-off-by: Prasad Sodagudi <quic_psodagud@quicinc.com>
2022-05-10 17:36:11 +00:00