Merge branch 'v2.6.36-rc6-urgent-fixes' of git://xenbits.xen.org/people/sstabellini/linux-pvhvm
* 'v2.6.36-rc6-urgent-fixes' of git://xenbits.xen.org/people/sstabellini/linux-pvhvm: xen: do not initialize PV timers on HVM if !xen_have_vector_callback xen: do not set xenstored_ready before xenbus_probe on hvm
This commit is contained in:
commit
34984f54b7
|
@ -489,8 +489,9 @@ static void xen_hvm_setup_cpu_clockevents(void)
|
|||
__init void xen_hvm_init_time_ops(void)
|
||||
{
|
||||
/* vector callback is needed otherwise we cannot receive interrupts
|
||||
* on cpu > 0 */
|
||||
if (!xen_have_vector_callback && num_present_cpus() > 1)
|
||||
* on cpu > 0 and at this point we don't know how many cpus are
|
||||
* available */
|
||||
if (!xen_have_vector_callback)
|
||||
return;
|
||||
if (!xen_feature(XENFEAT_hvm_safe_pvclock)) {
|
||||
printk(KERN_INFO "Xen doesn't support pvclock on HVM,"
|
||||
|
|
|
@ -755,7 +755,10 @@ int register_xenstore_notifier(struct notifier_block *nb)
|
|||
{
|
||||
int ret = 0;
|
||||
|
||||
blocking_notifier_chain_register(&xenstore_chain, nb);
|
||||
if (xenstored_ready > 0)
|
||||
ret = nb->notifier_call(nb, 0, NULL);
|
||||
else
|
||||
blocking_notifier_chain_register(&xenstore_chain, nb);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -769,7 +772,7 @@ EXPORT_SYMBOL_GPL(unregister_xenstore_notifier);
|
|||
|
||||
void xenbus_probe(struct work_struct *unused)
|
||||
{
|
||||
BUG_ON((xenstored_ready <= 0));
|
||||
xenstored_ready = 1;
|
||||
|
||||
/* Enumerate devices in xenstore and watch for changes. */
|
||||
xenbus_probe_devices(&xenbus_frontend);
|
||||
|
@ -835,8 +838,8 @@ static int __init xenbus_init(void)
|
|||
xen_store_evtchn = xen_start_info->store_evtchn;
|
||||
xen_store_mfn = xen_start_info->store_mfn;
|
||||
xen_store_interface = mfn_to_virt(xen_store_mfn);
|
||||
xenstored_ready = 1;
|
||||
}
|
||||
xenstored_ready = 1;
|
||||
}
|
||||
|
||||
/* Initialize the interface to xenstore. */
|
||||
|
|
Loading…
Reference in New Issue