I am trying to build 64 drivers using gcc.
I actually got a driver working now but had to fix a problem in winddk.h
winddk.h has the following line just before "typedef struct _IO_STACK_LOCATION":
#include <pshpack4.h>
That causes gcc to ignore the "POINTER_ALIGNMENT" attributes used
inside this struct.
So it does not align these fields to the next 8 byte multiple as
required for 64 bit.
I now removed the "#include <pshpack4.h>" and the "#include
<poppack.h>" at the end
and that make the structure work properly on 64 bit for at least the iocontrol.
Wiljan
I've been using Google Mail and thought you might like to try it out.
Here's an invitation to create an account.
-----------------------------------------------------------------------
Andrew Faulds has invited you to open a free Google Mail account.
To accept this invitation and register for your account, visit
http://mail.google.com/mail/a-e6777bd09-b4d66660a7-cc7400ade44d27c3
Once you create your account, Andrew Faulds will be notified with your
new email address so you can stay in touch with Google Mail!
If you haven't already heard about Google Mail, it's a new
search-based webmail service that offers:
- Over 2,700 megabytes (two gigabytes) of free storage
- Built-in Google search that instantly finds any message you want
- Automatic arrangement of messages and related replies into "conversations"
- Powerful spam protection using innovative Google technology
- No large, annoying ads--just small text ads and related pages that
are relevant to the content of your messages
To learn more about Google Mail before registering, visit:
http://mail.google.com/mail/help/intl/en_GB/benefits.html
We're still working every day to improve Google Mail, so we might ask
for your comments and suggestions periodically. We hope you'll like
Google Mail. We do. And, it's only going to get better.
Thanks,
The Google Mail Team
(If clicking the URLs in this message does not work, copy and paste
them into the address bar of your browser).
Hi,
first my congratz to the great work you do recently. HAL really needed
your attention :-D But... I stumbled over a nice regression last night.
I wanted to install HEAD on the Notebook we will use on Chemnitzer Linux
Tage to show ROS and failed to get to 1st stage at all. After some
regression testing I tracked this down to this range: r45319 still works
up to 3rd stage. r45324 fails to even get in 1st stage. The 5 revs in
between dont build at all, because r45324 was a build fix for r45320 and
this one was a biiig rewrite by Richard. The screen stays black and when
I blindly type "CONT" , I get: ***STOP: 0x0000007B
(0xF1BCDB60,0xC0000034,0x00000000,0x00000000) Its a really big problem
to get more output from it because it has no Serial Ports at all. We
tried to set /DEBUG DEBUGPORT=SCREEN /SOS but nothing shows up. So if
someone finds a possible reason for that regression or a nice way to get
the needed debuggin Information, plz tell me. It would be very important
to get ROS run on it again.
Machine is a:
Acer Extensa 4100 wmli / Aspire 1690 wmli
Acer Crane Mainboard
Intel Pentium III Mobile CPU
ATI Mobility Radeon X700
1 GB DDR RAM
Thx for the help.
Hi Gurus,
Like to know whether we have Sound Support for React OS.
If not is there any development going on for this?
Can you give me the contact of the person who is working on
incorporating / maintaining sound support in React OS?
Kind Regards
Arko
Hi all,
Just that this doesn't get lost, trunk's broken in two ways:
1) after 45640 you get the "CMP_WaitNoPending..." in 2nd stage in vbox being unable to proceed. Bug 4142: http://www.reactos.org/bugzilla/show_bug.cgi?id=4142
2) after 45645 installation stops at 1st stage with an assert:
Assertion 'GuardedMutex->Owner != Thread' failed at ntoskrnl\include\/internal/k e_x.h line 1596
Entered debugger on embedded INT3 at 0x0008:0x808dc52e.
kdb:> PuTTYbt
Eip:
<ntoskrnl.exe:dc52f (lib\rtl\i386\debug_asm.S:33 (DbgBreakPoint@0))>
Frames:
<ntoskrnl.exe:9aaa4 (ntoskrnl/include//internal/ke_x.h:1596 (MmNotPresentFault@1 2))>
<ntoskrnl.exe:9b6e3 (ntoskrnl/mm/mmfault.c:298 (MmAccessFault@16))>
<ntoskrnl.exe:66fb (ntoskrnl/ke/i386/traphdlr.c:1132 (@KiTrap0EHandler@4))>
<ntoskrnl.exe:1b21c (ntoskrnl/cc/view.c:463 (CcRosLookupCacheSegment@8))>
<ntoskrnl.exe:ac31a (ntoskrnl/mm/section.c:1251 (MmNotPresentFaultSectionView@16 ))>
<ntoskrnl.exe:9adb9 (ntoskrnl/mm/mmfault.c:219 (MmNotPresentFault@12))>
<ntoskrnl.exe:9b6e3 (ntoskrnl/mm/mmfault.c:298 (MmAccessFault@16))>
<ntoskrnl.exe:66fb (ntoskrnl/ke/i386/traphdlr.c:1132 (@KiTrap0EHandler@4))>
<b085a008>
<ntoskrnl.exe:601e
<ntoskrnl.exe:6412 (ntoskrnl/ke/i386/traphdlr.c:1517 (@KiFastC allEntryHandler@8))>
<00000000>
kdb:>
Thanks.
_________________________________________________________________
La tua privacy è al sicuro con Internet Explorer 8. Scopri di più
http://www.microsoft.com/italy/windows/internet-explorer/features/browse-pr…
FYI!
I noticed a strange bug when working with OOo 2.4.3 after installing
and running writer, then closing it, there was a random crash! This
resulted in a hive corruption crash leaving the system unbootable! The
only change I did was svn up trunk to the current revision 45668. Last
revision was something bootable before 45640. The changes I've commit
have been tested for over two weeks and some new ones this week.
Thanks,
James
Are these our services and if so do you have a note of which ones?
-----Original Message-----
From: ros-diffs-bounces(a)reactos.org [mailto:ros-diffs-bounces@reactos.org] On Behalf Of ekohl(a)svn.reactos.org
Sent: 20 February 2010 23:11
To: ros-diffs(a)reactos.org
Subject: [ros-diffs] [ekohl] 45640: Partially revert patches 45626 and 45633. Several services do not report their status to the service manager properly. Therefore we must not use any code that relies on service status information as part of the setup and boot pr
Author: ekohl
Date: Sun Feb 21 00:10:53 2010
New Revision: 45640
URL: http://svn.reactos.org/svn/reactos?rev=45640&view=rev
Log:
Partially revert patches 45626 and 45633.
Several services do not report their status to the service manager properly. Therefore we must not use any code that relies on service status information as part of the setup and boot processes as long as these issues have not been fixed. The service manager still needs to provide fake information about the service status.
Modified:
trunk/reactos/base/system/services/database.c
trunk/reactos/dll/win32/syssetup/install.c
Modified: trunk/reactos/base/system/services/database.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/services/datab…
==============================================================================
--- trunk/reactos/base/system/services/database.c [iso-8859-1] (original)
+++ trunk/reactos/base/system/services/database.c [iso-8859-1] Sun Feb 21 00:10:53 2010
@@ -1054,7 +1054,7 @@
{
Group->ServicesRunning = TRUE;
}
- Service->Status.dwCurrentState = SERVICE_START_PENDING;
+ Service->Status.dwCurrentState = SERVICE_RUNNING;
}
#if 0
else
Modified: trunk/reactos/dll/win32/syssetup/install.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/syssetup/install…
==============================================================================
--- trunk/reactos/dll/win32/syssetup/install.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/syssetup/install.c [iso-8859-1] Sun Feb 21 00:10:53 2010
@@ -473,34 +473,17 @@
static BOOL
EnableUserModePnpManager(VOID)
{
- SERVICE_STATUS_PROCESS ServiceStatus;
SC_HANDLE hSCManager = NULL;
SC_HANDLE hService = NULL;
- DWORD dwStartTickCount;
- DWORD dwOldCheckPoint;
- DWORD BytesNeeded = 0;
- DWORD dwWaitTime;
- DWORD dwMaxWait;
- HANDLE hEvent;
BOOL ret = FALSE;
- hEvent = OpenEventW(EVENT_ALL_ACCESS,
- FALSE,
- L"SC_AutoStartComplete");
- if (hEvent == NULL)
- goto cleanup;
-
- WaitForSingleObject(hEvent, INFINITE);
-
- hSCManager = OpenSCManager(NULL,
- NULL,
- SC_MANAGER_CONNECT);
+ hSCManager = OpenSCManager(NULL, NULL, 0);
if (hSCManager == NULL)
goto cleanup;
hService = OpenServiceW(hSCManager,
L"PlugPlay",
- SERVICE_CHANGE_CONFIG | SERVICE_START | SERVICE_QUERY_STATUS);
+ SERVICE_CHANGE_CONFIG | SERVICE_START);
if (hService == NULL)
goto cleanup;
@@ -515,69 +498,9 @@
ret = StartServiceW(hService, 0, NULL);
if (!ret)
- {
- /* If the service is already running, just return TRUE */
- ret = GetLastError() == ERROR_SERVICE_ALREADY_RUNNING;
goto cleanup;
- }
-
- ret = QueryServiceStatusEx(hService,
- SC_STATUS_PROCESS_INFO,
- (LPBYTE)&ServiceStatus,
- sizeof(SERVICE_STATUS_PROCESS),
- &BytesNeeded);
- if (!ret)
- goto cleanup;
-
- /* We don't want to wait for more than 30 seconds */
- dwMaxWait = 30000;
- dwStartTickCount = GetTickCount();
-
- /* Loop until it's running */
- while (ServiceStatus.dwCurrentState != SERVICE_RUNNING)
- {
- dwOldCheckPoint = ServiceStatus.dwCheckPoint;
- dwWaitTime = ServiceStatus.dwWaitHint / 10;
-
- /* Get the latest status info */
- if (!QueryServiceStatusEx(hService,
- SC_STATUS_PROCESS_INFO,
- (LPBYTE)&ServiceStatus,
- sizeof(SERVICE_STATUS_PROCESS),
- &BytesNeeded))
- {
- /* Something went wrong... */
- break;
- }
-
- /* Is the service making progress? */
- if (ServiceStatus.dwCheckPoint > dwOldCheckPoint)
- {
- /* It is, get the latest tickcount to reset the max wait time */
- dwStartTickCount = GetTickCount();
- dwOldCheckPoint = ServiceStatus.dwCheckPoint;
- }
- else
- {
- /* It's not, make sure we haven't exceeded our wait time */
- if (GetTickCount() >= dwStartTickCount + dwMaxWait)
- {
- /* We have, give up */
- break;
- }
- }
-
- /* Adjust the wait hint times */
- if (dwWaitTime < 200)
- dwWaitTime = 200;
- else if (dwWaitTime > 10000)
- dwWaitTime = 10000;
-
- /* Wait before trying again */
- Sleep(dwWaitTime);
- }
-
- ret = ServiceStatus.dwCurrentState == SERVICE_RUNNING;
+
+ ret = TRUE;
cleanup:
if (hSCManager != NULL)