Funny how Windows works without these hacks.
Let's hide more bugs :D
Best regards,
Alex Ionescu
On Tue, Aug 30, 2011 at 12:01 PM, <tkreuzer(a)svn.reactos.org> wrote:
> Author: tkreuzer
> Date: Tue Aug 30 12:01:01 2011
> New Revision: 53496
>
> URL: http://svn.reactos.org/svn/reactos?rev=53496&view=rev
> Log:
> [HAL]
> We cannot make any assumptions about the latency whith which the timer
> interrupt fires after a rollover, since VBox (other VMs probably as well)
> doesn't always meet this. Add another check to KeQueryPerformanceCounter
> that gracefully handles missing interrupts. Also raise to DISPATCH_LEVEL,
> since the function is not reentrant.
>
> Modified:
> trunk/reactos/hal/halx86/generic/timer.c
>
> Modified: trunk/reactos/hal/halx86/generic/timer.c
> URL:
> http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/generic/timer.c…
>
> ==============================================================================
> --- trunk/reactos/hal/halx86/generic/timer.c [iso-8859-1] (original)
> +++ trunk/reactos/hal/halx86/generic/timer.c [iso-8859-1] Tue Aug 30
> 12:01:01 2011
> @@ -253,6 +253,7 @@
> {
> LARGE_INTEGER CurrentPerfCounter;
> ULONG CounterValue, ClockDelta;
> + KIRQL OldIrql;
>
> /* If caller wants performance frequency, return hardcoded value */
> if (PerformanceFrequency) PerformanceFrequency->QuadPart =
> PIT_FREQUENCY;
> @@ -262,6 +263,10 @@
>
> /* Check if interrupts are disabled */
> if(!(__readeflags() & EFLAGS_INTERRUPT_MASK)) return HalpPerfCounter;
> +
> + /* Raise irql to DISPATCH_LEVEL */
> + OldIrql = KeGetCurrentIrql();
> + if (OldIrql < DISPATCH_LEVEL) KfRaiseIrql(DISPATCH_LEVEL);
>
> do
> {
> @@ -287,13 +292,21 @@
> /* Add the clock delta */
> CurrentPerfCounter.QuadPart += ClockDelta;
>
> - /* This must be true unless HalpPerfCounter has changed sign,
> - which takes approximately 245,118 years */
> - ASSERT(CurrentPerfCounter.QuadPart >= HalpLastPerfCounter.QuadPart);
> + /* Check if the value is smaller then before, this means, we somehow
> + missed an interrupt. This is a sign that the timer interrupt
> + is very inaccurate. Probably a virtual machine. */
> + if (CurrentPerfCounter.QuadPart < HalpLastPerfCounter.QuadPart)
> + {
> + /* We missed an interrupt. Assume we will receive it later */
> + CurrentPerfCounter.QuadPart += HalpCurrentRollOver;
> + }
>
> /* Update the last counter value */
> HalpLastPerfCounter = CurrentPerfCounter;
>
> + /* Restore previous irql */
> + if (OldIrql < DISPATCH_LEVEL) KfLowerIrql(OldIrql);
> +
> /* Return the result */
> return CurrentPerfCounter;
> }
>
>
>
Hi,
I am the maintainer of uranos (http://uranos.sf.net) and want to
implement the unattended setup of ReactOS into uranos. I read that you
have implemented a answer file into ReactOS.
Because of uranos does all the parts which is done by the txtinstaller
from ReactOS (partition disk, write mbr, copy files and so on) from a
linux boot environment - I want to know if it is possible to place the
unattended.inf into the filesystem so the ReactOS is read the file in
the first GUI boot.
Thank you! Cheers mario
I want to do some testing on physical machines until now was doing the
vbox will charge the machine a good desepenho
memory and I'll need to spend sitema ospedeiro vbox and the problem
and that the machines do not have a serial port
was taking a look at these wiki but did not see exact references on
how to get the debug log on the cable network
vbox but works well for the network that will be with you
http://www.reactos.org/wiki/Debugginghttp://www.reactos.org/wiki/ReactOS_Remote_Debugger#TCP.2FIP_.28QEMU_only.29
I obeservado that companies have made the opening of perfius on
social sites like orkte, face buk to have a closer contacts with its
customers
Suggestions
Taves Foce the time to develop a page-pink similar to orkut only for
pelomenos emvolvidos list of ros-dev communicate mellhor we take for
example the option orkut This allows you to replaying a message to the
entire group or just for some or open a profile but it would be the
maintainer of the profile to select some options
has some social networks that desacoselho to be very open but
partially open orkut and where he has partial control of where and
where does the information would be very nice to have something in
ros.org or maybe opening a profile on some these social networks
a method would be to discuss and APREDE programs in a more dynamic
A Matter discursoes saw some about the future of Roses
A sugentao as a powerful gaming machine MaxiVista server and at the
same time continue the development of financial markets and earn some
cash to the developers and everyone involved in the project we will
take as examples the maximum this game is notable that the projects do
not get for the day for the night