From: Borislav Petkov <bp@alien8.de>
To: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Cc: "Zheng, Lv" <lv.zheng@intel.com>,
"Rafael J. Wysocki" <rafael@kernel.org>,
"Wysocki, Rafael J" <rafael.j.wysocki@intel.com>,
"Moore, Robert" <robert.moore@intel.com>,
J?rg R?del <joro@8bytes.org>, lkml <linux-kernel@vger.kernel.org>,
Linux ACPI <linux-acpi@vger.kernel.org>
Subject: Re: 174cc7187e6f ACPICA: Tables: Back port acpi_get_table_with_size() and early_acpi_os_unmap_memory() from Linux kernel
Date: Tue, 10 Jan 2017 00:15:01 +0100 [thread overview]
Message-ID: <20170109231501.xrhwsv46mznw3kqt@pd.tnic> (raw)
In-Reply-To: <20170109221831.GC3800@linux.vnet.ibm.com>
On Mon, Jan 09, 2017 at 02:18:31PM -0800, Paul E. McKenney wrote:
> @@ -690,6 +690,8 @@ void synchronize_rcu_expedited(void)
> {
> struct rcu_state *rsp = rcu_state_p;
>
> + if (!rcu_scheduler_active)
> + return;
> _synchronize_rcu_expedited(rsp, sync_rcu_exp_handler);
> }
> EXPORT_SYMBOL_GPL(synchronize_rcu_expedited);
That doesn't work and it is because of those damn what goes before what
boot sequence issues :-\
We have:
rest_init()
|-> rcu_scheduler_starting() ---> that sets rcu_scheduler_active = 1;
|-> kernel_thread(kernel_init, NULL, CLONE_FS);
|-> kernel_init()
|-> kernel_init_freeable()
|-> native_smp_prepare_cpus(setup_max_cpus)
|-> default_setup_apic_routing
|-> enable_IR_x2apic
|-> irq_remapping_prepare
|-> amd_iommu_prepare
|-> iommu_go_to_state
|-> acpi_put_table(ivrs_base);
|-> acpi_tb_put_table(table_desc);
|-> acpi_tb_invalidate_table(table_desc);
|-> acpi_tb_release_table(...)
|-> acpi_os_unmap_memory
|-> acpi_os_unmap_iomem
|-> acpi_os_map_cleanup
|-> synchronize_rcu_expedited()
Now here we have rcu_scheduler_active already set so the test doesn't
hit and we hang.
So we must do it differently.
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
next prev parent reply other threads:[~2017-01-09 23:15 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20170107204227.bwdb5yzrjpiggkmo@pd.tnic>
2017-01-07 23:30 ` 174cc7187e6f ACPICA: Tables: Back port acpi_get_table_with_size() and early_acpi_os_unmap_memory() from Linux kernel Rafael J. Wysocki
2017-01-08 0:07 ` Borislav Petkov
2017-01-08 0:22 ` Rafael J. Wysocki
2017-01-08 0:37 ` Borislav Petkov
2017-01-08 0:52 ` Rafael J. Wysocki
2017-01-08 1:01 ` Borislav Petkov
2017-01-08 1:45 ` Rafael J. Wysocki
2017-01-08 2:20 ` Rafael J. Wysocki
2017-01-08 13:03 ` Borislav Petkov
2017-01-09 1:58 ` Zheng, Lv
2017-01-09 2:36 ` Zheng, Lv
2017-01-09 9:33 ` Borislav Petkov
2017-01-09 22:18 ` Paul E. McKenney
2017-01-09 22:25 ` Rafael J. Wysocki
2017-01-09 23:14 ` Paul E. McKenney
2017-01-09 23:15 ` Borislav Petkov [this message]
2017-01-09 23:32 ` Paul E. McKenney
2017-01-09 23:40 ` Borislav Petkov
2017-01-09 23:52 ` Paul E. McKenney
2017-01-09 23:52 ` Borislav Petkov
2017-01-10 0:44 ` Zheng, Lv
2017-01-10 1:27 ` Rafael J. Wysocki
2017-01-10 2:23 ` Paul E. McKenney
2017-01-10 5:41 ` Zheng, Lv
2017-01-10 5:51 ` Paul E. McKenney
2017-01-11 9:21 ` Borislav Petkov
2017-01-11 9:51 ` Paul E. McKenney
2017-01-11 10:03 ` Borislav Petkov
2017-01-11 10:22 ` Paul E. McKenney
2017-01-10 9:41 ` Borislav Petkov
2017-01-11 3:42 ` Rafael J. Wysocki
2017-01-11 9:42 ` Borislav Petkov
2017-01-09 23:42 ` Rafael J. Wysocki
2017-01-10 0:21 ` Paul E. McKenney
2017-01-09 5:21 ` Zheng, Lv
2017-01-09 10:52 ` Jörg Rödel
2017-01-09 22:41 ` Rafael J. Wysocki
2017-01-09 22:57 ` Borislav Petkov
2017-01-10 13:58 ` Jörg Rödel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170109231501.xrhwsv46mznw3kqt@pd.tnic \
--to=bp@alien8.de \
--cc=joro@8bytes.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lv.zheng@intel.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=rafael.j.wysocki@intel.com \
--cc=rafael@kernel.org \
--cc=robert.moore@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).