diff options
author | Stewart Smith <stewart@linux.vnet.ibm.com> | 2015-10-07 09:57:57 +1100 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2015-10-07 09:57:57 +1100 |
commit | 55ae15b939fdb8bef393f954fe0639a579f580fa (patch) | |
tree | 235f9c9023e3628d2ff4a3a33de302210b1378c0 /hw/bt.c | |
parent | f54aba63a94cd7d4f5ea58ca86726a8c93c19c6c (diff) | |
download | skiboot-55ae15b939fdb8bef393f954fe0639a579f580fa.zip skiboot-55ae15b939fdb8bef393f954fe0639a579f580fa.tar.gz skiboot-55ae15b939fdb8bef393f954fe0639a579f580fa.tar.bz2 |
Ensure we run pollers in cpu_wait_job()
In root causing a bug on AST BMC Alistair found that pollers weren't
being run for around 3800ms.
This was due to a wonderful accident that's probably about a year or more
old where:
In cpu_wait_job we have:
unsigned long ticks = usecs_to_tb(5);
...
time_wait(ticks);
While in time_wait(), deciding on if to run pollers:
unsigned long period = msecs_to_tb(5);
...
if (remaining >= period) {
Obviously, this means we never run pollers. Not ideal.
This patch ensures we run pollers every 5ms in cpu_wait_job() as well
as displaying how long we waited for a job if that wait was >1second.
Reported-by: Alistair Popple <alistair@popple.id.au>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw/bt.c')
0 files changed, 0 insertions, 0 deletions