Custom Query (6 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (1 - 3 of 6)

1 2
Ticket Resolution Summary Owner Reporter
#2 fixed acpiDoPowerOff() increase timeout to ensure system switches of reliable Andib
Description

In \src\startshut\apm.c function VOID acpiDoPowerOff(VOID) line 406 DosSleep?(700); has to be used to switch down my system reliable.

I tested this over many years and retested again the latest months. My MSI board needs 700ms instead the 250ms which is in the official sources. Shutdown on this system does not work reliable with values <700ms. Most of the time shutdown works with 250ms and 500ms too. But reliable switching off monitor out and all fans is only guaranteed with 700ms. Here is the relevant part of the code with my comments over the years. As you can see I watch this problem since many years. No clue how many systems out there are do not fully shut down sporadically as mine. But I'm pretty sure my system is not the only one. But probably I'm the only one who observed this problem and tested with different values long enough to assure this is the place where the problem can be fixed.

VOID acpiDoPowerOff(VOID)
{
     ULONG i, ulCpuCount = 1;

     /* Set all CPUs to OffLine, except CPU 1 */
     DosQuerySysInfo(QSV_NUMPROCESSORS, QSV_NUMPROCESSORS, &ulCpuCount, sizeof(ulCpuCount));
     for (i = 2; i <= ulCpuCount; i++)
         DosSetProcessorStatus(i, PROC_OFFLINE);

    DosSleep(700);  // @@changed V1.0.9 (2009-05-29) [shl]: ensure system really has time to go idle
                    // @@changed V1.0.10(2014-04-29) [AB]: test with 500 instead 250
		// @@changed V1.0.10(2014-04-29) [AB]: test with 700 cause sometimes video out (X300) is not switched off
		// @@changed V1.0.13(2020-01-16) [AB]: test with 250 again cause this is in official version from Rich
		// @@changed V1.0.13(2020-02-16) [AB]: back to 500 as 250 definitely does not reliable switch of video out AND fans
		// @@changed V1.0.13(2020-03-01) [AB]: back to 700 as 500 is definitely not reliable too
    acpihGoToSleep(&G_hACPI, ACPI_STATE_S5);
    acpihClose(&G_hACPI);
}

#5 worksforme WPS restart: reset SHELL semaphores for reliable operation of API "WinWaitForShell" erdmann
Description

using XWP 1.0.13:

there are three named event semaphores that are using by the "WinWaitForShell?" API function so that this function can block on (or being polled for) these 3 events: Desktop created, Desktop opened, Desktop populated.

The named event semaphores are: \SEM32\WORKPLAC\SHELL1WT.SEM (for Desktop created) \SEM32\WORKPLAC\SHELL2WT.SEM (for Desktop opened) \SEM32\WORKPLAC\SHELL3WT.SEM (for Desktop populated)

These 3 event semaphores are created by the 1. instance of PMSHELL.EXE but they are opened and set by the 2. instance of PMSHELL.EXE.

The problem is, that on XWP function "WPS restart", the 2. instance is just terminating thread 1 (which leads to process termination) without resetting these event semaphores. If the WPS is then restarted and an application also starting up (or the WPS) is using "WinWaitForShell?" waiting for the desktop to be created/opened/populated respectively, the "WinWaitForShell?" API call will return immediately without blocking because the event semaphores are still set. This typically leads to hang problems and the like because the WPS is typically not in the state that the application/WPS class expects it to be after returning from "WinWaitForShell?". One indication of such might be WPS classes installed via WarpIn? and requiring a WPS restart to become active where the WPS restart will lead to a system hang.

I propose to reset these 3 event semaphores shortly before the 2. instance of PMSHELL.EXE terminates its thread 1 (on a "WPS restart").

#6 fixed Consider UTF-8 for the WIS lewisr
Description

An example where UTF-8 in the WIS would be useful is the Russian package, which currently uses CP866. Unfortunately, Ulrich's surname contains an umlaut, which is not present in CP866, resulting in the WarpIN database having an unrecognizable (and less than useful) Vendor name.

This was discussed at some length in the ArcaOS Translators' list on or about 8/17/2021 in the thread, "XWP packaging for languages that do not use CP850."

1 2
Note: See TracQuery for help on using queries.