Commit f6403cd5 authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Fix CAM indexing in DoTheGrowPageUnavailable

Detail:
  s/ChangeDyn - A routine that was missed during the upgrade from 8 byte CAM entries to 16 byte CAM entries, DoTheGrowPageUnavailable was using still using the old CAM entry size, potentially corrupting the CAM whenever it was called (i.e. if a DA grow requested a page that had already been claimed for exclusive use by someone else)
Admin:
  Tested on BB-xM


Version 5.60. Tagged as 'Kernel-5_60'
parent 4443154d
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.59"
Module_Version SETA 559
Module_MajorVersion SETS "5.60"
Module_Version SETA 560
Module_MinorVersion SETS ""
Module_Date SETS "07 Sep 2016"
Module_ApplicationDate SETS "07-Sep-16"
Module_Date SETS "13 Sep 2016"
Module_ApplicationDate SETS "13-Sep-16"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "castle/RiscOS/Sources/Kernel"
Module_FullVersion SETS "5.59"
Module_HelpVersion SETS "5.59 (07 Sep 2016)"
Module_FullVersion SETS "5.60"
Module_HelpVersion SETS "5.60 (13 Sep 2016)"
END
/* (5.59)
/* (5.60)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 5.59
#define Module_MajorVersion_CMHG 5.60
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 07 Sep 2016
#define Module_Date_CMHG 13 Sep 2016
#define Module_MajorVersion "5.59"
#define Module_Version 559
#define Module_MajorVersion "5.60"
#define Module_Version 560
#define Module_MinorVersion ""
#define Module_Date "07 Sep 2016"
#define Module_Date "13 Sep 2016"
#define Module_ApplicationDate "07-Sep-16"
#define Module_ApplicationDate "13-Sep-16"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "castle/RiscOS/Sources/Kernel"
#define Module_FullVersion "5.59"
#define Module_HelpVersion "5.59 (07 Sep 2016)"
#define Module_LibraryVersionInfo "5:59"
#define Module_FullVersion "5.60"
#define Module_HelpVersion "5.60 (13 Sep 2016)"
#define Module_LibraryVersionInfo "5:60"
......@@ -5781,7 +5781,8 @@ DoTheGrowPageUnavailable ROUT
ADR r2, PageBlock1
38
LDR r4, [r1, #-12]! ; r4 = physical page number
ADD r4, r0, r4, LSL #3 ; point at cam entry
ADD r4, r0, r4, LSL #CAM_EntrySizeLog2 ; point at cam entry
ASSERT CAM_PageFlags=4
LDMIA r4, {r8, lr}
BIC lr, lr, #PageFlags_Required
STMIA r4, {r8, lr}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment