1 Jul 2008 19:30
1 Jul 2008 20:26
Re: [ros-diffs] [fireball] 34230: - Fix a problem with normal and special APCs being inserted in the wrong order, spotted by Jury Sidorov. Now Borland Turbo Debugger should be able to debug applications, also it can fix hangs in other applications. - When delivering kernel APC, set the pending flag to false (by analogy with delivering user APC and clearing its pending flag). See issue #3426 for more details.
Um... KiDeliverApc already sets KernelApcPending = FALSE; Now you're setting it twice...please revert. On 1-Jul-08, at 3:08 AM, fireball@... wrote: > Author: fireball > Date: Tue Jul 1 05:08:14 2008 > New Revision: 34230 > > URL: http://svn.reactos.org/svn/reactos?rev=34230&view=rev > Log: > - Fix a problem with normal and special APCs being inserted in the > wrong order, spotted by Jury Sidorov. Now Borland Turbo Debugger > should be able to debug applications, also it can fix hangs in other > applications. > - When delivering kernel APC, set the pending flag to false (by > analogy with delivering user APC and clearing its pending flag). > See issue #3426 for more details. > > Modified: > trunk/reactos/ntoskrnl/ke/apc.c (contents, props changed) > > Modified: trunk/reactos/ntoskrnl/ke/apc.c > URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/apc.c?rev=34230&r1=34229&r2=34230&view=diff > = > = > = > =(Continue reading)
1 Jul 2008 20:28
jura@...> - Prevent boolean flags from being optimized away by compiler (due to PSEH usage) by making them volatile. See issue #3408 for more details.
What? Why would the compiler optimize these away? This doesn't make any sense. If something is happening to these flags, PSEH should be fixed -- not making every flag in the source base a volatile. On 1-Jul-08, at 3:48 AM, fireball@... wrote: > Author: fireball > Date: Tue Jul 1 05:48:50 2008 > New Revision: 34232 > > URL: http://svn.reactos.org/svn/reactos?rev=34232&view=rev > Log: > Yuri Sidorov <jura@...> > - Prevent boolean flags from being optimized away by compiler (due > to PSEH usage) by making them volatile. > See issue #3408 for more details. > > Modified: > trunk/reactos/ntoskrnl/mm/virtual.c > > Modified: trunk/reactos/ntoskrnl/mm/virtual.c > URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/virtual.c?rev=34232&r1=34231&r2=34232&view=diff > = > = > = > = > =(Continue reading)
1 Jul 2008 21:03
jura@...> - Prevent boolean flags from beingoptimized away by compiler (due to PSEH usage) by making themvolatile. See issue #3408 for more details.
Hi, It's corner case problem and it occurs only in these functions. Code: BOOLEAN f = FALSE; f = TRUE; call_some_func(); f = FALSE; gcc optimizer removes TRUE/FALSE assignments, since it knows that f was FALSE before this code block and remains FALSE after. gcc knows nothing about exceptions and SEH and performs such optimizations here... Yury Sidorov. ----- Original Message ----- From: "Alex Ionescu" <ionucu@...> To: <ros-dev@...> Sent: Tuesday, July 01, 2008 9:28 PM Subject: Re: [ros-dev] [ros-diffs] [fireball] 34232: Yuri Sidorov<jura@...> - Prevent boolean flags from beingoptimized away by compiler (due to PSEH usage) by making themvolatile. See issue #3408 for more details. > What?(Continue reading)
1 Jul 2008 23:45
jura@...> - Prevent boolean flags from beingoptimized away by compiler (due to PSEH usage) by making themvolatile. See issue #3408 for more details.
Then gcc or PSEH should be fixed, not worked-around. On 1-Jul-08, at 12:03 PM, Yury Sidorov wrote: > Hi, > > It's corner case problem and it occurs only in these functions. > > Code: > > BOOLEAN f = FALSE; > > f = TRUE; > call_some_func(); > f = FALSE; > > gcc optimizer removes TRUE/FALSE assignments, since it knows that f > was FALSE before this code block and remains FALSE after. gcc knows > nothing about exceptions and SEH and performs such optimizations > here... > > Yury Sidorov. > > ----- Original Message ----- > From: "Alex Ionescu" <ionucu@...> > To: <ros-dev@...> > Sent: Tuesday, July 01, 2008 9:28 PM > Subject: Re: [ros-dev] [ros-diffs] [fireball] 34232: Yuri > Sidorov<jura@...> - Prevent boolean flags from beingoptimized > away by compiler (due to PSEH usage) by making themvolatile. See issue(Continue reading)
2 Jul 2008 10:16
jura@...> - Prevent boolean flags from being optimized away by compiler (due to PSEH usage) by making them volatile. See issue #3408 for more details.
Alex Ionescu ha scritto: > If something is happening to these flags, PSEH should be fixed -- not > making every flag in the source base a volatile. PSEH is based setjmp/longjmp, some local variables WILL be reset when an exception is caught and they MUST be marked as "volatile". I documented this a long time ago
2 Jul 2008 13:39
jura@...> - Prevent boolean flags from being optimized away by compiler (due to PSEH usage) by making them volatile. See issue #3408 for more details.
What about wrapping the _SEH_TRY part in a local inline function? In my
tests this successfully prevented the variables from being optimized
away. At least under normal optimisation settings.
_SEH_TRY
{
void inline tryblock()
{
...
}
tryblock();
}
...
KJK::Hyperion schrieb:
_SEH_TRY
{
void inline tryblock()
{
...
}
tryblock();
}
...
KJK::Hyperion schrieb:
Alex Ionescu ha scritto:If something is happening to these flags, PSEH should be fixed -- not making every flag in the source base a volatile.PSEH is based setjmp/longjmp, some local variables WILL be reset when an exception is caught and they MUST be marked as "volatile". I documented this a long time ago _______________________________________________ Ros-dev mailing list Ros-dev-td3rRX5TIkhAfugRpC6u6w@public.gmane.org http://www.reactos.org/mailman/listinfo/ros-dev
_______________________________________________ Ros-dev mailing list Ros-dev@... http://www.reactos.org/mailman/listinfo/ros-dev
2 Jul 2008 15:08
jura@...> - Prevent boolean flags from being optimized away by compiler (due to PSEH usage) by making them volatile. See issue #3408 for more details.
Timo Kreuzer ha scritto: > What about wrapping the _SEH_TRY part in a local inline function? In my > tests this successfully prevented the variables from being optimized > away. At least under normal optimisation settings. I find this a terrible, terrible idea. An unreliable side effect of an unspecified behavior of a non-ANSI C feature. It will break unoptimized builds as soon as we add support for DEP, too, because local functions require an executable stack. I am at a loss of words to convey how bad of an idea this seems to me
2 Jul 2008 17:49
Re: [ros-diffs] [dchapyshev] 34135: - Add fontext.dll
I completely agree, this needs to be clamped down on. Do we really need 78 different keyboard layouts at this point? It's fine for the people with mega fast systems and time on their hands, but most people don't fall into this category. I now try to avoid building as much as possible and I suspect more people will be following suit if the build time continues to increase. Ged -----Original Message----- From: ros-dev-bounces@... [mailto:ros-dev-bounces@...] On Behalf Of Marc Piulachs Sent: 28 June 2008 20:42 To: ros-dev@... Subject: Re: [ros-dev] [ros-diffs] [dchapyshev] 34135: - Add fontext.dll What's the point of adding all those useless stubbed dlls? It only contributes to increase build time -------------------------------------------------- From: <dchapyshev@...> Sent: Friday, June 27, 2008 7:34 PM To: <ros-diffs@...> Subject: [ros-diffs] [dchapyshev] 34135: - Add fontext.dll > Author: dchapyshev > Date: Fri Jun 27 12:34:08 2008 > New Revision: 34135 > > URL: http://svn.reactos.org/svn/reactos?rev=34135&view=rev > Log: > - Add fontext.dll > > Added: > trunk/reactos/dll/shellext/fontext/ > trunk/reactos/dll/shellext/fontext/fontext.c (with props) > trunk/reactos/dll/shellext/fontext/fontext.def (with props) > trunk/reactos/dll/shellext/fontext/fontext.h (with props) > trunk/reactos/dll/shellext/fontext/fontext.rbuild (with props) > trunk/reactos/dll/shellext/fontext/fontext.rc (with props) > trunk/reactos/dll/shellext/fontext/lang/ > trunk/reactos/dll/shellext/fontext/lang/en-US.rc (with props) > trunk/reactos/dll/shellext/fontext/regsvr.c (with props) > trunk/reactos/dll/shellext/fontext/resource.h (with props) > trunk/reactos/dll/shellext/fontext/rsrc.rc (with props) > Modified: > trunk/reactos/dll/shellext/shellext.rbuild > > Added: trunk/reactos/dll/shellext/fontext/fontext.c > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/fontex t.c?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/fontext.c (added) > +++ trunk/reactos/dll/shellext/fontext/fontext.c [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,45 <at> <at> > +/* > + * > + * PROJECT: fontext.dll > + * FILE: dll/shellext/fontext/fontext.c > + * PURPOSE: fontext.dll > + * PROGRAMMER: Dmitry Chapyshev (dmitry@...) > + * UPDATE HISTORY: > + * 10-06-2008 Created > + */ > + > +#include "fontext.h" > + > +static HINSTANCE hInstance; > + > +HRESULT WINAPI > +DllCanUnloadNow(VOID) > +{ > + DPRINT1("DllCanUnloadNow() stubs\n"); > + return S_OK; > +} > + > +HRESULT WINAPI > +DllGetClassObject(REFCLSID rclsid, > + REFIID riid, > + LPVOID *ppv) > +{ > + DPRINT1("DllGetClassObject() stubs\n"); > + return S_OK; > +} > + > +BOOL STDCALL > +DllMain(HINSTANCE hinstDLL, > + DWORD dwReason, > + LPVOID lpvReserved) > +{ > + switch (dwReason) > + { > + case DLL_PROCESS_ATTACH: > + hInstance = hinstDLL; > + DisableThreadLibraryCalls(hInstance); > + break; > + } > + > + return TRUE; > +} > > Propchange: trunk/reactos/dll/shellext/fontext/fontext.c > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/fontext.def > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/fontex t.def?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/fontext.def (added) > +++ trunk/reactos/dll/shellext/fontext/fontext.def [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,6 <at> <at> > +LIBRARY fontext.dll > +EXPORTS > +DllCanUnloadNow > +DllGetClassObject > +DllRegisterServer > +DllUnregisterServer > > Propchange: trunk/reactos/dll/shellext/fontext/fontext.def > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/fontext.h > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/fontex t.h?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/fontext.h (added) > +++ trunk/reactos/dll/shellext/fontext/fontext.h [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,12 <at> <at> > +#ifndef __FONTEXT__H > +#define __FONTEXT__H > + > +#define COBJMACROS > +#include <windows.h> > +#include <tchar.h> > +#include <stdio.h> > +#include <shlobj.h> > + > +#include <debug.h> > + > +#endif /* __FONTEXT__H */ > > Propchange: trunk/reactos/dll/shellext/fontext/fontext.h > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/fontext.rbuild > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/fontex t.rbuild?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/fontext.rbuild (added) > +++ trunk/reactos/dll/shellext/fontext/fontext.rbuild [iso-8859-1] Fri Jun > 27 12:34:08 2008 > <at> <at> -1,0 +1,21 <at> <at> > +<module name="fontext" type="win32dll" > baseaddress="${BASEADDRESS_FONTEXT}" installbase="system32" > installname="fontext.dll" unicode="yes"> > + <importlibrary definition="fontext.def" /> > + <include base="fontext">.</include> > + <define name="_WIN32_IE">0x0500</define> > + <define name="_WIN32_WINNT">0x0600</define> > + <define name="WINVER">0x0600</define> > + <library>ntdll</library> > + <library>kernel32</library> > + <library>user32</library> > + <library>gdi32</library> > + <library>ole32</library> > + <library>uuid</library> > + <library>msvcrt</library> > + <library>shlwapi</library> > + <library>lz32</library> > + <library>advapi32</library> > + <library>setupapi</library> > + <file>fontext.c</file> > + <file>regsvr.c</file> > + <file>fontext.rc</file> > +</module> > > Propchange: trunk/reactos/dll/shellext/fontext/fontext.rbuild > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/fontext.rc > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/fontex t.rc?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/fontext.rc (added) > +++ trunk/reactos/dll/shellext/fontext/fontext.rc [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,10 <at> <at> > +#include <windows.h> > +#include "resource.h" > + > +#define REACTOS_VERSION_DLL > +#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Font Folder\0" > +#define REACTOS_STR_INTERNAL_NAME "fontext\0" > +#define REACTOS_STR_ORIGINAL_FILENAME "fontext.dll\0" > +#include <reactos/version.rc> > + > +#include "rsrc.rc" > > Propchange: trunk/reactos/dll/shellext/fontext/fontext.rc > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/lang/en-US.rc > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/lang/e n-US.rc?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/lang/en-US.rc (added) > +++ trunk/reactos/dll/shellext/fontext/lang/en-US.rc [iso-8859-1] Fri Jun > 27 12:34:08 2008 > <at> <at> -1,0 +1,9 <at> <at> > +// Don't translate this file at current time > + > +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US > + > +STRINGTABLE > +BEGIN > + IDS_REACTOS_FONTS_FOLDER "ReactOS Font Folder" > +END > + > > Propchange: trunk/reactos/dll/shellext/fontext/lang/en-US.rc > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/regsvr.c > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/regsvr .c?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/regsvr.c (added) > +++ trunk/reactos/dll/shellext/fontext/regsvr.c [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,38 <at> <at> > +/* > + * > + * PROJECT: fontext.dll > + * FILE: dll/shellext/fontext/regsvr.c > + * PURPOSE: fontext.dll > + * PROGRAMMER: Dmitry Chapyshev (dmitry@...) > + * UPDATE HISTORY: > + * 10-06-2008 Created > + */ > + > +#include <windows.h> > +#include <ole2.h> > + > +#include <fontext.h> > + > +static HRESULT > +REGSVR_RegisterServer() > +{ > + return S_OK; > +} > + > +static HRESULT > +REGSVR_UnregisterServer() > +{ > + return S_OK; > +} > + > +HRESULT WINAPI > +DllRegisterServer(VOID) > +{ > + return REGSVR_RegisterServer(); > +} > + > +HRESULT WINAPI > +DllUnregisterServer(VOID) > +{ > + return REGSVR_UnregisterServer(); > +} > > Propchange: trunk/reactos/dll/shellext/fontext/regsvr.c > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/resource.h > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/resour ce.h?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/resource.h (added) > +++ trunk/reactos/dll/shellext/fontext/resource.h [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,6 <at> <at> > +#ifndef __RESOURCE__H > +#define __RESOURCE__H > + > +#define IDS_REACTOS_FONTS_FOLDER 151 > + > +#endif /* __RESOURCE__H */ > > Propchange: trunk/reactos/dll/shellext/fontext/resource.h > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Added: trunk/reactos/dll/shellext/fontext/rsrc.rc > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/fontext/rsrc.r c?rev=34135&view=auto > ============================================================================ == > --- trunk/reactos/dll/shellext/fontext/rsrc.rc (added) > +++ trunk/reactos/dll/shellext/fontext/rsrc.rc [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -1,0 +1,4 <at> <at> > +#include <windows.h> > +#include "resource.h" > + > +#include "lang/en-US.rc" > > Propchange: trunk/reactos/dll/shellext/fontext/rsrc.rc > ---------------------------------------------------------------------------- -- > svn:eol-style = native > > Modified: trunk/reactos/dll/shellext/shellext.rbuild > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/dll/shellext/shellext.rbuil d?rev=34135&r1=34134&r2=34135&view=diff > ============================================================================ == > --- trunk/reactos/dll/shellext/shellext.rbuild [iso-8859-1] (original) > +++ trunk/reactos/dll/shellext/shellext.rbuild [iso-8859-1] Fri Jun 27 > 12:34:08 2008 > <at> <at> -10,6 +10,9 <at> <at> > <directory name="devcpux"> > <xi:include href="devcpux/devcpux.rbuild" /> > </directory> > + <directory name="fontext"> > + <xi:include href="fontext/fontext.rbuild" /> > + </directory> > <directory name="slayer"> > <xi:include href="slayer/slayer.rbuild" /> > </directory> > > _______________________________________________ Ros-dev mailing list Ros-dev@... http://www.reactos.org/mailman/listinfo/ros-dev
2 Jul 2008 21:06
Re: [ros-diffs] [dchapyshev] 34135: - Add fontext.dll
On Wed, Jul 2, 2008 at 11:49 AM, gedmurphy <gedmurphy@...> wrote: > I now try to avoid building as much as possible and I suspect more people > will be following suit if the build time continues to increase. We could develop a lean target that only builds the bare apps and libraries required. -- -- Steven Edwards "There is one thing stronger than all the armies in the world, and that is an idea whose time has come." - Victor Hugo
RSS Feed