On 30 January 2015 at 07:00, ethan zhao <[email protected]> wrote:
> It is another bug.
Hmm, lets see..
> Yes, here is one bug should be fix. but seems not enough to avoid the issue
> completely,
Did you test it ?
> how about the Thread B running here
>
> Thread B: xenbus_thread()
>
> xenbus_thread()
> msg->u.watch.handle->callback()
> handle_vcpu_hotplug_event()
> vcpu_hotplug()
> cpu_down()
> __cpu_notify(CPU_POST_DEAD..)
> cpufreq_cpu_callback()
> __cpufreq_remove_dev_prepare
> update_policy_cpu(){
> ...
> down_write(&policy->rwsem);
> policy->last_cpu = policy->cpu;
> policy->cpu = cpu;
> up_write(&policy->rwsem);
> ---->
> }
>
> And thread A run to the same position as above, don't ignore my work
> blindly, that piece of bandage
> could save your time
Oh, please don't misunderstand me. I didn't had any intention of showing
any kind of disrespect.
Okay, why do you say that the above thread you shown has a bug in there?
Its juse updating policy->cpu and that shouldn't make anything unstable.
Please explain again one more time, in details why do you think you hit a
different bug. Also look at kref.h to see which piece of code has hit that
WARN() and it will happen only in the case I have shown. Lets see if I
missed something :)
--
viresh
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html