OpenCloudOS-Kernel/drivers/char/ipmi
Corey Minyard 913a89f009 ipmi: Don't initialize anything in the core until something uses it
The IPMI driver was recently modified to use SRCU, but it turns out
this uses a chunk of percpu memory, even if IPMI is never used.

So modify thing to on initialize on the first use.  There was already
code to sort of handle this for handling init races, so piggy back
on top of that, and simplify it in the process.

Signed-off-by: Corey Minyard <cminyard@mvista.com>
Reported-by: Tejun Heo <tj@kernel.org>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: stable@vger.kernel.org # 4.18
2019-01-23 11:09:32 -06:00
..
Kconfig ipmi: Remove the proc interface 2018-05-09 12:21:46 -05:00
Makefile ipmi: add an NPCM7xx KCS BMC driver 2018-04-18 10:23:12 -05:00
bt-bmc.c ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_bt_sm.c ipmi: Convert pr_xxx() to dev_xxx() in the BT code 2018-09-18 16:15:33 -05:00
ipmi_devintf.c ipmi: Convert printk(KERN_<level> to pr_<level>( 2018-09-18 16:15:33 -05:00
ipmi_dmi.c ipmi: Remove platform driver overrides and use the id_table 2018-09-18 16:15:33 -05:00
ipmi_dmi.h ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_kcs_sm.c ipmi: Convert printk(KERN_<level> to pr_<level>( 2018-09-18 16:15:33 -05:00
ipmi_msghandler.c ipmi: Don't initialize anything in the core until something uses it 2019-01-23 11:09:32 -06:00
ipmi_powernv.c ipmi:powernv: Convert ipmi_smi_t to struct ipmi_smi 2018-09-18 16:15:33 -05:00
ipmi_poweroff.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
ipmi_si.h ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_si_hardcode.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
ipmi_si_hotmod.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
ipmi_si_intf.c drivers/ipmi: Replace synchronize_sched() with synchronize_rcu() 2018-11-27 09:21:36 -08:00
ipmi_si_mem_io.c ipmi_si: fix potential integer overflow on large shift 2018-09-18 16:15:33 -05:00
ipmi_si_parisc.c ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_si_pci.c ipmi_si_pci: fix NULL device in ipmi_si error message 2018-09-18 16:15:33 -05:00
ipmi_si_platform.c ipmi: Remove platform driver overrides and use the id_table 2018-09-18 16:15:33 -05:00
ipmi_si_port_io.c ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_si_sm.h ipmi: Add or fix SPDX-License-Identifier in all files 2018-02-27 07:42:51 -06:00
ipmi_smic_sm.c ipmi: Convert printk(KERN_<level> to pr_<level>( 2018-09-18 16:15:33 -05:00
ipmi_ssif.c ipmi:ssif: Fix handling of multi-part return messages 2019-01-23 10:44:23 -06:00
ipmi_watchdog.c ipmi: Use more common logging styles 2018-09-18 16:15:33 -05:00
kcs_bmc.c ipmi: kcs_bmc: don't change device name 2018-08-30 14:55:18 -05:00
kcs_bmc.h ipmi: kcs_bmc: coding-style fixes and use new poll type 2018-02-26 09:49:21 -06:00
kcs_bmc_aspeed.c ipmi: kcs_bmc: coding-style fixes and use new poll type 2018-02-26 09:49:21 -06:00
kcs_bmc_npcm7xx.c ipmi: NPCM7xx KCS BMC: enable interrupt to the host 2018-05-23 08:29:23 -05:00