diff options
author | avg <avg@FreeBSD.org> | 2012-11-04 13:46:28 +0000 |
---|---|---|
committer | avg <avg@FreeBSD.org> | 2012-11-04 13:46:28 +0000 |
commit | bf1c7077b5d9262d437678469096e98bb3082563 (patch) | |
tree | bce90d01cd9180ee570fea1dd2bb187d375ff85a | |
parent | 58ab2ca2eb887d7b629107d491de73eb43b2e14b (diff) | |
download | FreeBSD-src-bf1c7077b5d9262d437678469096e98bb3082563.zip FreeBSD-src-bf1c7077b5d9262d437678469096e98bb3082563.tar.gz |
cpuctl_do_cpuid: explicitly use ecx=0 for cpuid call
... instead of whatever random value may happen to be in the register.
ecx is important to some cpuid leaves.
To do: extend cpuctl interface to provide for ecx value parameter.
MFC after: 5 days
-rw-r--r-- | sys/dev/cpuctl/cpuctl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/cpuctl/cpuctl.c b/sys/dev/cpuctl/cpuctl.c index 1553457..742fa10 100644 --- a/sys/dev/cpuctl/cpuctl.c +++ b/sys/dev/cpuctl/cpuctl.c @@ -204,7 +204,7 @@ cpuctl_do_cpuid(int cpu, cpuctl_cpuid_args_t *data, struct thread *td) oldcpu = td->td_oncpu; is_bound = cpu_sched_is_bound(td); set_cpu(cpu, td); - do_cpuid(data->level, data->data); + cpuid_count(data->level, 0, data->data); restore_cpu(oldcpu, is_bound, td); return (0); } |