[RTEMS Project] #2369: [PowerPC Book E] Invalid mftb instruction in _CPU_Counter_read()
RTEMS trac
trac at rtems.org
Wed Jul 15 08:41:13 UTC 2015
#2369: [PowerPC Book E] Invalid mftb instruction in _CPU_Counter_read()
--------------------------+--------------------------------------------
Reporter: nick.withers | Owner: Nick Withers <nick.withers@…>
Type: defect | Status: closed
Priority: normal | Milestone: 4.11.1
Component: General | Version: 4.11
Severity: normal | Resolution: fixed
Keywords: |
--------------------------+--------------------------------------------
Comment (by nick.withers):
Replying to [comment:16 nick.withers]:
> Replying to [comment:15 sebastian.huber]:
> > Replying to [comment:14 nick.withers]:
> > > I've cunningly avoided thinking properly about whether ignoring the
upper portion of the time base is a good idea... But, for example, isn't
{{{rtems_bsp_delay()}}} going to stuff up if the lower 32 bits wrap?
> >
> > The use case for the _CPU_Counter_read() is to measure short time
intervals for the SMP lock profiling and short delay loops for device
drivers. Do you really want to busy wait for 123 seconds?
>
> Do you really want to busy wait 123 seconds instead of the intended
short time interval because you lost the race and the lower 32 bits of the
counter wrapped?
Actually, I'm full of it there I think, sorry. The 32 bit unsigned
multiplication's gonna wrap too in that case, right?
--
Ticket URL: <http://devel.rtems.org/ticket/2369#comment:18>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list