[prev in list] [next in list] [prev in thread] [next in thread]
List: ros-diffs
Subject: [ros-diffs] [CVS reactos] - Marked a cache segment as page out in
From: hbirr () osexperts ! com (Hartmut Birr)
Date: 2004-02-26 19:29:55
Message-ID: 20040226192955.8D4C443A9 () mok ! osexperts ! com
[Download RAW message or body]
<html>
<head>
<style><!--
body {background-color:#ffffff;}
.file {border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;}
.pathname {font-family:monospace; float:right;}
.fileheader {margin-bottom:.5em;}
.diff {margin:0;}
.tasklist {padding:4px;border:1px dashed #000000;margin-top:1em;}
.tasklist ul {margin-top:0;margin-bottom:0;}
tr.alt {background-color:#eeeeee}
#added {background-color:#ddffdd;}
#addedchars {background-color:#99ff99;font-weight:bolder;}
tr.alt #added {background-color:#ccf7cc;}
#removed {background-color:#ffdddd;}
#removedchars {background-color:#ff9999;font-weight:bolder;}
tr.alt #removed {background-color:#f7cccc;}
#info {color:#888888;}
#context {background-color:#eeeeee;}
td {padding-left:.3em;padding-right:.3em;}
tr.head {border-bottom-width:1px;border-bottom-style:solid;}
tr.head td {padding:0;padding-top:.2em;}
.task {background-color:#ffff00;}
.comment {padding:4px;border:1px dashed #000000;background-color:#ffffdd}
.error {color:red;}
hr {border-width:0px;height:2px;background:black;}
--></style>
</head>
<body>
<table cellspacing="0" cellpadding="0" border="0" rules="cols">
<tr class="head"><td colspan="4">Commit in <b><tt>reactos/ntoskrnl</tt></b><span \
id="info"> on MAIN</span></td></tr> <tr><td><tt>include/internal/<a \
href="#file1">cc.h</a></tt></td><td align="right" id="added">+3</td><td align="right" \
id="removed">-1</td><td nowrap="nowrap" align="center"><a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal/cc.h?rev=1.18&content-type=text/x-cvsweb-markup">1.18</a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal/cc.h.diff?r1=text&tr1=1.18&r2=text&tr2=1.19&f=h">-></a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal/cc.h?rev=1.19&content-type=text/x-cvsweb-markup">1.19</a></td></tr>
<tr class="alt"><td><tt>cc/<a href="#file2">view.c</a></tt></td><td align="right" \
id="added">+5</td><td align="right" id="removed">-2</td><td nowrap="nowrap" \
align="center"><a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc/view.c?rev=1.71&content-type=text/x-cvsweb-markup">1.71</a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc/view.c.diff?r1=text&tr1=1.71&r2=text&tr2=1.72&f=h">-></a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc/view.c?rev=1.72&content-type=text/x-cvsweb-markup">1.72</a></td></tr>
<tr><td></td><td align="right" id="added">+8</td><td align="right" \
id="removed">-3</td><td></td></tr> </table>
<small id="info">2 modified files</small><br />
<pre class="comment">
- Marked a cache segment as page out in progress to prevent from
recursive calls to MmPageOutPhysicalAddress.
- This fixes <a href="http://reactos.com/bugzilla/show_bug.cgi?id=220">bug #220</a>.
</pre>
<hr /><a name="file1" /><div class="file">
<span class="pathname"><a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos">reactos</a>/<a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl">ntoskrnl</a>/<a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include">include</a>/<a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal">internal</a><br \
/></span> <div class="fileheader"><big><b>cc.h</b></big> <small id="info"><a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal/cc.h?rev=1.18&content-type=text/x-cvsweb-markup">1.18</a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal/cc.h.diff?r1=text&tr1=1.18&r2=text&tr2=1.19&f=h">-></a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/include/internal/cc.h?rev=1.19&content-type=text/x-cvsweb-markup">1.19</a></small></div>
<pre class="diff"><small id="info">diff -u -r1.18 -r1.19
--- cc.h 27 Jun 2003 21:28:30 -0000 1.18
+++ cc.h 26 Feb 2004 19:29:55 -0000 1.19
@@ -1,6 +1,6 @@
</small></pre><pre class="diff" id="context"> #ifndef __INCLUDE_INTERNAL_CC_H
#define __INCLUDE_INTERNAL_CC_H
</pre><pre class="diff" id="removed">-/* $Id: cc.h,v 1.18 2003/06/27 21:28:30 hbirr \
Exp $ */ </pre><pre class="diff" id="added">+/* $Id: cc.h,v 1.19 2004/02/26 19:29:55 \
hbirr Exp $ */ </pre><pre class="diff" id="context"> #include <ddk/ntifs.h>
</pre><pre class="diff"><small id="info">@@ -31,6 +31,8 @@
</small></pre><pre class="diff" id="context"> BOOLEAN Valid;
/* Are the contents of the cache segment data newer than those on disk. */
BOOLEAN Dirty;
</pre><pre class="diff" id="added">+ /* Page out in progress */
+ BOOLEAN PageOut;
</pre><pre class="diff" id="context"> ULONG MappedCount;
/* Entry in the list of segments for this BCB. */
LIST_ENTRY BcbSegmentListEntry;
</pre></div>
<hr /><a name="file2" /><div class="file">
<span class="pathname"><a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos">reactos</a>/<a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl">ntoskrnl</a>/<a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc">cc</a><br /></span> \
<div class="fileheader"><big><b>view.c</b></big> <small id="info"><a \
href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc/view.c?rev=1.71&content-type=text/x-cvsweb-markup">1.71</a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc/view.c.diff?r1=text&tr1=1.71&r2=text&tr2=1.72&f=h">-></a> \
<a href="http://cvs.reactos.com/cgi-bin/cvsweb/reactos/ntoskrnl/cc/view.c?rev=1.72&content-type=text/x-cvsweb-markup">1.72</a></small></div>
<pre class="diff"><small id="info">diff -u -r1.71 -r1.72
--- view.c 31 Dec 2003 05:33:03 -0000 1.71
+++ view.c 26 Feb 2004 19:29:55 -0000 1.72
@@ -16,7 +16,7 @@
</small></pre><pre class="diff" id="context"> * along with this program; if not, \
write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
</pre><pre class="diff" id="removed">-/* $Id: view.c,v 1.71 2003/12/31 05:33:03 \
jfilby Exp $ </pre><pre class="diff" id="added">+/* $Id: view.c,v 1.72 2004/02/26 \
19:29:55 hbirr Exp $ </pre><pre class="diff" id="context"> *
* PROJECT: ReactOS kernel
* FILE: ntoskrnl/cc/view.c
</pre><pre class="diff"><small id="info">@@ -270,13 +270,14 @@
</small></pre><pre class="diff" id="context"> }
else
{
</pre><pre class="diff" id="removed">- if (last != current && \
current->MappedCount > 0 && !current->Dirty) </pre><pre class="diff" \
id="added">+ if (last != current && current->MappedCount > 0 \
&& !current->Dirty<span \
id="addedchars"> && !current->PageOut</span>) </pre><pre \
class="diff" id="context"> { ULONG i;
NTSTATUS Status;
current->ReferenceCount++;
last = current;
</pre><pre class="diff" id="added">+ current->PageOut = TRUE;
</pre><pre class="diff" id="context"> \
KeReleaseSpinLock(&current->Bcb->BcbLock, oldIrql); \
ExReleaseFastMutex(&ViewLock);
for (i = 0; i < current->Bcb->CacheSegmentSize / PAGE_SIZE; i++)
</pre><pre class="diff"><small id="info">@@ -292,6 +293,7 @@
</small></pre><pre class="diff" id="context"> \
ExAcquireFastMutex(&ViewLock);
KeAcquireSpinLock(&current->Bcb->BcbLock, &oldIrql);
current->ReferenceCount--;
</pre><pre class="diff" id="added">+ current->PageOut = FALSE;
</pre><pre class="diff" id="context"> \
KeReleaseSpinLock(&current->Bcb->BcbLock, oldIrql); current_entry = \
&current->CacheSegmentLRUListEntry; continue;
</pre><pre class="diff"><small id="info">@@ -505,6 +507,7 @@
</small></pre><pre class="diff" id="context"> current = \
ExAllocateFromNPagedLookasideList(&CacheSegLookasideList); current->Valid = \
FALSE; current->Dirty = FALSE;
</pre><pre class="diff" id="added">+ current->PageOut = FALSE;
</pre><pre class="diff" id="context"> current->FileOffset = \
ROUND_DOWN(FileOffset, Bcb->CacheSegmentSize); current->Bcb = Bcb;
current->MappedCount = 0;
</pre></div>
<center><small><a href="http://www.badgers-in-foil.co.uk/projects/cvsspam/" \
title="commit -> email">CVSspam</a> 0.2.8</small></center> </body></html>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic