https://git.reactos.org/?p=reactos.git;a=commitdiff;h=c4f58bbfd85f9c713e967…
commit c4f58bbfd85f9c713e9673114d15c61b6569e3a5
Author: Pierre Schweitzer <pierre(a)reactos.org>
AuthorDate: Wed Feb 28 20:54:53 2018 +0100
Commit: Pierre Schweitzer <pierre(a)reactos.org>
CommitDate: Wed Feb 28 20:58:36 2018 +0100
[NTOKSRNL] Don't blindly schedule read-ahead on CcCopyRead() call.
This avoids locking Cc for too long by trying to read-ahead data which
is already in cache.
We now will only schedule a read ahead if next read should bring us
to a new VACB (perhaps not in cache).
This notably fixes Inkscape setup which was slown down by read-ahead
due to continous 1 byte reads.
Thanks to Thomas for his help on this issue.
CORE-14395
---
ntoskrnl/cc/copy.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/ntoskrnl/cc/copy.c b/ntoskrnl/cc/copy.c
index 8525d9f549..c39b2148ec 100644
--- a/ntoskrnl/cc/copy.c
+++ b/ntoskrnl/cc/copy.c
@@ -377,8 +377,11 @@ CcCopyData (
/* If that was a successful sync read operation, let's handle read ahead */
if (Operation == CcOperationRead && Length == 0 && Wait)
{
- /* If file isn't random access, schedule next read */
- if (!BooleanFlagOn(FileObject->Flags, FO_RANDOM_ACCESS))
+ /* If file isn't random access and next read may get us cross VACB boundary,
+ * schedule next read
+ */
+ if (!BooleanFlagOn(FileObject->Flags, FO_RANDOM_ACCESS) &&
+ (CurrentOffset - 1) / VACB_MAPPING_GRANULARITY != (CurrentOffset + BytesCopied - 1) / VACB_MAPPING_GRANULARITY)
{
CcScheduleReadAhead(FileObject, (PLARGE_INTEGER)&FileOffset, BytesCopied);
}
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b95fff5bce3c706df3a55…
commit b95fff5bce3c706df3a551162d7209c60f4fd615
Author: Giannis Adamopoulos <gadamopoulos(a)reactos.org>
AuthorDate: Wed Feb 28 17:14:00 2018 +0200
Commit: Giannis Adamopoulos <gadamopoulos(a)reactos.org>
CommitDate: Wed Feb 28 17:21:19 2018 +0200
[EXPLORER] CTrayWindow: Set the initial lock state in the band site
This alongside the previous commit, fix locking and unlocking the taskbar.
---
base/shell/explorer/traywnd.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/base/shell/explorer/traywnd.cpp b/base/shell/explorer/traywnd.cpp
index bf71ad0e17..a3c1f3670f 100644
--- a/base/shell/explorer/traywnd.cpp
+++ b/base/shell/explorer/traywnd.cpp
@@ -2080,6 +2080,9 @@ ChangePos:
SetTimer(TIMER_ID_AUTOHIDE, AUTOHIDE_DELAY_HIDE, NULL);
}
+ /* Set the initial lock state in the band site */
+ m_TrayBandSite->Lock(g_TaskbarSettings.bLock);
+
RegisterHotKey(m_hWnd, IDHK_RUN, MOD_WIN, 'R');
RegisterHotKey(m_hWnd, IDHK_MINIMIZE_ALL, MOD_WIN, 'M');
RegisterHotKey(m_hWnd, IDHK_RESTORE_ALL, MOD_WIN|MOD_SHIFT, 'M');
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f80d227ec20bf8b201eb5…
commit f80d227ec20bf8b201eb5e0a7fb23ad802abb5b2
Author: Simon Dräger <20014538+C0nflict(a)users.noreply.github.com>
AuthorDate: Mon Feb 26 13:32:43 2018 +0100
Commit: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito(a)reactos.org>
CommitDate: Mon Feb 26 22:20:38 2018 +0100
[TRANSLATION] Completed German translation in taskmgr
---
base/applications/taskmgr/lang/de-DE.rc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/base/applications/taskmgr/lang/de-DE.rc b/base/applications/taskmgr/lang/de-DE.rc
index 96505429de..1a353cbf88 100644
--- a/base/applications/taskmgr/lang/de-DE.rc
+++ b/base/applications/taskmgr/lang/de-DE.rc
@@ -432,11 +432,11 @@ BEGIN
IDS_MSG_UNABLEDEBUGPROCESS "Kann Prozess nicht debuggen"
IDS_MSG_WARNINGDEBUG "WARNUNG: Das Debuggen dieses Prozesses kann zu Datenverlust führen.\nSind Sie sicher, dass Sie diesen Prozess debuggen möchten?"
IDS_MSG_TASKMGRWARNING "Warnung vom Task-Manager"
- IDS_MSG_WARNINGTERMINATING "WARNUNG: Das Abbrechen eines Prozesses kann zu\nunerwünschten Ergebnissen, einschließlich Datenverlust und\nSysteminstabilität, führen. Zustand und Daten des Prozesses\nwerden nicht mehr gespeichert. Sind Sie sicher, dass Sie\nden Prozess abbrechen möchten?"
+ IDS_MSG_WARNINGTERMINATING "WARNUNG: Das Beenden eines Prozesses kann zu\nunerwünschten Ergebnissen, einschließlich Datenverlust und\nSysteminstabilität, führen. Zustand und Daten des Prozesses\nwerden nicht mehr gespeichert. Sind Sie sicher, dass Sie\nden Prozess beenden möchten?"
IDS_MSG_UNABLETERMINATEPRO "Kann den Prozess nicht beenden"
- IDS_MSG_CLOSESYSTEMPROCESS "This is a critical system process. Task Manager will not end this process."
+ IDS_MSG_CLOSESYSTEMPROCESS "Dies ist ein kritischer Systemprozess. Der Task-Manager wird diesen Prozess nicht beenden."
IDS_MSG_UNABLECHANGEPRIORITY "Kann die Priorität nicht ändern"
- IDS_MSG_WARNINGCHANGEPRIORITY "WARNUNG: Das Ändern der Prioritätsklasse dieses Prozesses\nkann zu unerwünschten Ergebnissen, einschl. Systeminstabilität, führen.\nSind Sie sicher, dass Sie sie ändern möchten?"
+ IDS_MSG_WARNINGCHANGEPRIORITY "WARNUNG: Das Ändern der Prioritätsklasse dieses Prozesses\nkann zu unerwünschten Ergebnissen, einschl. Systeminstabilität, führen.\nSind Sie sicher, dass Sie diese ändern möchten?"
IDS_MSG_TRAYICONCPUUSAGE "CPU-Auslastung: %d%%"
IDS_STATUS_MEMUSAGE "Speicher: %s / %s (%d%%)"
IDS_STATUS_CPUUSAGE "CPU-Auslastung: %3d%%"