OpenCloudOS-Kernel/arch/powerpc/platforms/pseries
Nicholas Piggin 4f242fc5f2 powerpc/pseries: warn if recursing into the hcall tracing code
The hcall tracing code has a recursion check built in, which skips
tracing if we are already tracing an hcall.

However if the tracing code has problems with recursion, this check
may not catch all cases because the tracing code could be invoked from
a different tracepoint first, then make an hcall that gets traced,
then recurse.

Add an explicit warning if recursion is detected here, which might help
to notice tracing code making hcalls. Really the core trace code should
have its own recursion checking and warnings though.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210508101455.1578318-5-npiggin@gmail.com
2021-05-12 11:07:39 +10:00
..
Kconfig powerpc/pseries: Implement paravirt qspinlocks for SPLPAR 2020-07-27 00:01:29 +10:00
Makefile powerpc/pseries/Makefile: Remove CONFIG_PPC_PSERIES check 2020-02-19 21:07:08 +11:00
cmm.c mm: remove unneeded includes of <asm/pgalloc.h> 2020-08-07 11:33:26 -07:00
dlpar.c powerpc/pseries: Introduce dlpar_unisolate_drc() 2021-04-20 14:22:23 +10:00
dtl.c powerpc64: Break asm/percpu.h vs spinlock_types.h dependency 2020-07-10 12:00:01 +02:00
eeh_pseries.c powerpc/pseries/eeh: Make pseries_send_allow_unfreeze() static 2021-01-30 11:39:31 +11:00
event_sources.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
firmware.c powerpc/book3s64/radix: Add kernel command line option to disable radix GTSE 2020-07-29 21:09:37 +10:00
hotplug-cpu.c powerpc/pseries: Stop calling printk in rtas_stop_self() 2021-04-20 14:22:24 +10:00
hotplug-memory.c powerpc/pseries/memhotplug: Quieten some DLPAR operations 2020-12-15 22:51:40 +11:00
hvCall.S powerpc/pseries: Fix hcall tracing recursion in pv queued spinlocks 2021-05-12 11:07:38 +10:00
hvCall_inst.c powerpc/pseries: Make symbol '__pcpu_scope_hcall_stats' static 2021-04-14 23:04:17 +10:00
hvconsole.c powerpc updates for 5.3 2019-07-13 16:08:36 -07:00
hvcserver.c powerpc: Use fallthrough pseudo-keyword 2020-07-29 21:09:37 +10:00
ibmebus.c of: Remove of_dev_{get,put}() 2021-02-12 19:23:39 -06:00
io_event_irq.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
iommu.c powerpc/iommu: Do not immediately panic when failed IOMMU table allocation 2021-04-23 01:38:04 +10:00
kexec.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
lpar.c powerpc/pseries: warn if recursing into the hcall tracing code 2021-05-12 11:07:39 +10:00
lparcfg.c powerpc/pseries: export LPAR security flavor in lparcfg 2021-03-26 23:19:41 +11:00
mobility.c powerpc/pseries/mobility: handle premature return from H_JOIN 2021-03-23 09:25:12 +11:00
msi.c powerpc/pseries: Don't enforce MSI affinity with kdump 2021-03-01 12:33:31 +11:00
nvram.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
of_helpers.c powerpc/pseries: Fix of_read_drc_info_cell() to point at next record 2020-03-25 12:06:43 +11:00
of_helpers.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
papr_scm.c powerpc/papr_scm: Mark nvdimm as unarmed if needed during probe 2021-04-27 23:47:02 +10:00
pci.c powerpc/powernv: remove the nvlink support 2021-05-02 23:35:32 +10:00
pci_dlpar.c powerpc/pseries: extract host bridge from pci_bus prior to bus removal 2021-04-16 23:58:04 +10:00
pmem.c powerpc/pseries/pmem: Make symbol 'drc_pmem_match' static 2021-04-14 23:04:17 +10:00
power.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 167 2019-05-30 11:26:39 -07:00
pseries.h powerpc/pseries: Introduce dlpar_unisolate_drc() 2021-04-20 14:22:23 +10:00
pseries_energy.c powerpc/pseries: Fix drc-info mappings of logical cpus to drc-index 2019-11-13 16:57:57 +11:00
ras.c powerpc/pseries/mce: Fix a typo in error type assignment 2021-04-20 14:22:23 +10:00
reconfig.c proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
rng.c powerpc/pseries: Fix missing of_node_put() in rng_init() 2020-08-25 01:31:31 +10:00
rtas-fadump.c powerpc/fadump: make symbol 'rtas_fadump_set_regval' static 2021-04-14 23:04:19 +10:00
rtas-fadump.h powerpc/fadump: support holes in kernel boot memory area 2019-09-14 00:04:46 +10:00
scanlog.c proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
setup.c powerpc/pseries: export LPAR security flavor in lparcfg 2021-03-26 23:19:41 +11:00
smp.c powerpc: Rename is_kvm_guest() to check_kvm_guest() 2020-12-04 01:01:21 +11:00
suspend.c powerpc/pseries/hibernation: remove prepare_late() callback 2020-12-08 21:41:02 +11:00
svm.c powerpc/svm: stop using io_tlb_start 2021-03-17 00:13:52 +00:00
vio.c powerpc/pseries: Add shutdown() to vio_driver and vio_bus 2021-04-20 14:22:24 +10:00
vphn.c powerpc/vphn: Check for error from hcall_vphn 2020-03-04 22:44:30 +11:00