diff options
author | David S. Miller <davem@davemloft.net> | 2011-08-11 17:58:59 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-08-11 17:58:59 -0700 |
commit | c92761fd9efcbbcb59e7bf4db88e29ce03229889 (patch) | |
tree | 0f702eb5c37fa4c70c9fbee066ca07c0f2b75b97 | |
parent | 9e23311345135083f6074b280de1e6dc5eee1f68 (diff) | |
download | linux-stable-c92761fd9efcbbcb59e7bf4db88e29ce03229889.tar.gz linux-stable-c92761fd9efcbbcb59e7bf4db88e29ce03229889.tar.bz2 linux-stable-c92761fd9efcbbcb59e7bf4db88e29ce03229889.zip |
sparc: Don't do hypervisor calls on non-sun4v in DS driver.
Reported-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | arch/sparc/kernel/ds.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/sparc/kernel/ds.c b/arch/sparc/kernel/ds.c index 490e5418740d..7429b47c3aca 100644 --- a/arch/sparc/kernel/ds.c +++ b/arch/sparc/kernel/ds.c @@ -1256,13 +1256,14 @@ static int __init ds_init(void) { unsigned long hv_ret, major, minor; - hv_ret = sun4v_get_version(HV_GRP_REBOOT_DATA, &major, &minor); - if (hv_ret == HV_EOK) { - pr_info("SUN4V: Reboot data supported (maj=%lu,min=%lu).\n", - major, minor); - reboot_data_supported = 1; + if (tlb_type == hypervisor) { + hv_ret = sun4v_get_version(HV_GRP_REBOOT_DATA, &major, &minor); + if (hv_ret == HV_EOK) { + pr_info("SUN4V: Reboot data supported (maj=%lu,min=%lu).\n", + major, minor); + reboot_data_supported = 1; + } } - kthread_run(ds_thread, NULL, "kldomd"); return vio_register_driver(&ds_driver); |