kerneltest/e32test/group/testmods.txt
changeset 0 a41df078684a
equal deleted inserted replaced
-1:000000000000 0:a41df078684a
       
     1 
       
     2 /******************************************************************************
       
     3  * TESTS MODIFIED
       
     4  ******************************************************************************/
       
     5 
       
     6 T_MESSGE.CPP
       
     7 	Use CreateFixedPoolSession() instead of CreateSession() so that testing the
       
     8 	number of available message slots works.
       
     9 
       
    10 T_PROC1.CPP
       
    11 	Name lengths reduced to reflect 64 character maximum
       
    12 	Added various Close() statements to get memory leak checking to work
       
    13 	Removed dodgy __KHEAP_CHECK(n) statements with various strange values of n -
       
    14 	changing kernel implementation is very likely to invalidate these.
       
    15 	Reinstated MurderProcess() test.
       
    16 	Look for $HEAP chunk instead of $STK; also don't add stack size to base to
       
    17 	get heap address.
       
    18 	Changed KERN-SVR panic to KERN-EXEC.
       
    19 	Removed test that attempts to resume an invalid process handle.
       
    20 	Added overall kernel heap checking covering the whole test.
       
    21 	Changed filenames so that test will run from any drive not just Z. T_PROC2
       
    22 	should be in the same directory as T_PROC1.
       
    23 	Speed test runs server thread at higher priority than client.
       
    24 
       
    25 T_SVR.CPP
       
    26 	Changed panic code from KErrArgument to ECausedException.
       
    27 	Added some more rogue thread tests to check what happens when an invalid
       
    28 	message pointer is used in RMessage::Complete.
       
    29 	Speed test runs server thread at higher priority than client.
       
    30 
       
    31 T_SVR2.CPP
       
    32 	Removed granularity expansion stuff.
       
    33 	Reinstated kernel heap checking.
       
    34 
       
    35 D_LDD.CPP
       
    36 	Modified to work with different kernel interface.
       
    37 
       
    38 T_SERIAL.CPP
       
    39 	100ms delay between powering up and checking serial port signal lines.
       
    40 	Use RDevComm instead of RBusDevComm.
       
    41 
       
    42 T_SOUND.CPP
       
    43 	Replaced with completely new code which tests the 6.x sound drivers which
       
    44 	have the new functionality for the MediaServer.
       
    45 	Removed all tests which require User::FreeLogicalDevice or
       
    46 	User::FreePhysicalDevice.
       
    47 	Don't test that Prepare() allocates memory - it doesn't.
       
    48 	Changed panic from KERN-SVR to KERN-EXEC.
       
    49 	Removed tests which issue a request from wrong thread (handle is now
       
    50 	thread relative).
       
    51 	Change filename used for process creation so that test runs from any drive.
       
    52 
       
    53 T_TLDD.CPP
       
    54 	Removed all tests which require User::FreeLogicalDevice or
       
    55 	User::FreePhysicalDevice, e.g. testing that .data/.bss are reinitialised
       
    56 	when the device driver is reloaded.
       
    57 
       
    58 T_START1.CPP, T_START2.CPP, T_START3.CPP
       
    59 	Print the file name so that these three DLLs end up with different code
       
    60 	chunks - otherwise loader gets confused when running from RAM.
       
    61 
       
    62 T_TDLL12.CPP
       
    63 	Removed __KHEAP_CHECK(n) tests.
       
    64 
       
    65 T_TDLLA.CPP
       
    66 	Added another DLL (T_DLLA2) which statically links to T_TDLLA.EXE. However
       
    67 	this test is currently commented out since the loader cannot handle DLLs
       
    68 	which link to an already-loaded RAM-based EXE (it attempts to load the .EXE
       
    69 	again as a DLL). The idea was to test that the .EXE entry point is not
       
    70 	called again.
       
    71 	Static data address for T_DLLA3 changed from 0x30300000 to 0x30010000.
       
    72 	
       
    73 T_TLS.CPP
       
    74 	Reinstated kernel heap checking, but removed __KHEAP_CHECK(n) tests.
       
    75 
       
    76 T_HEAP.CPP
       
    77 	Close the heap after each test to prevent chunks accumulating and exceeding
       
    78 	the 8 chunk limit.
       
    79 	Modified heap sharing test to account for the fact that a thread does not
       
    80 	create its heap until it runs.
       
    81 	Added overall kernel heap checking.
       
    82 
       
    83 T_KHEAP.CPP
       
    84 	Use shared heaps for the multitudinous threads involved so we don't exceed
       
    85 	the 8 chunk limit. Test thread creation with shared heaps and with separate
       
    86 	heaps.
       
    87 	Change filename used for process creation so that test runs from any drive.
       
    88 
       
    89 T_MLDR.CPP
       
    90 	Check test is running from Z: - it doesn't do anything if running from any
       
    91 	other drive.
       
    92 
       
    93 D_SHADOW.CPP
       
    94 	Modified to work with different kernel interface.
       
    95 	Dynamic binding of exception handlers not yet done in E32RT.
       
    96 	Call Mmu::FlushShadow() after modifying shadow page to ensure that it is
       
    97 	written out of a write-back cache.
       
    98 
       
    99 T_CHUNK.CPP
       
   100 	Reduced number of chunks created from 10 to 3.
       
   101 	Removed granularity expansion stuff.
       
   102 	Reinstated kernel heap checking.
       
   103 	Look for this process' $HEAP chunk rather than any chunk *Main::$STK - this
       
   104 	was picking up F32's stack/heap chunk.
       
   105 
       
   106 T_MWAIT.CPP
       
   107 	Use different priority values.
       
   108 
       
   109 T_ATADRV.CPP
       
   110 	Use TBusLocalDrive::ForceMediaChange() instead of UserPcCardCntrl::PwrDown().
       
   111 	Added kernel heap checking on media change.
       
   112 
       
   113 T_ATDRV2.CPP
       
   114 	Use TBusLocalDrive::ForceMediaChange() instead of UserPcCardCntrl::PwrDown().
       
   115 
       
   116 T_PCCDSK.CPP
       
   117 	Use TBusLocalDrive::ForceMediaChange() instead of UserSvr::ForceRemountMedia.
       
   118 
       
   119 D_POWR.CPP
       
   120 	Modified to work with different kernel/power manager interface.
       
   121 
       
   122 T_POWR.CPP
       
   123 	5 second alarm test does not use LDD to check that no switch off occurred.
       
   124 	This is because the system does prepare to power down but then changes its
       
   125 	mind at the last minute - this is necessary since power down and power up
       
   126 	are completely asynchronous operations.
       
   127 	Change filename used for process creation so that test runs from any drive.
       
   128 	Kill the extra processes we create - don't leave them there forever.
       
   129 
       
   130 T_EXC.CPP
       
   131 	Added more tests of RThread::Context(). Test context of preempted thread,
       
   132 	waiting thread and suspended thread.
       
   133 
       
   134 T_PROT.CPP
       
   135 	Panic a dead thread rather than a bad handle.
       
   136 	Added an extra test to check that kernel doesn't die if a bad pointer is
       
   137 	passed to DThread::RequestComplete().
       
   138 
       
   139 T_REG.CPP
       
   140 	Reinstated kernel heap checking.
       
   141 
       
   142 T_THREAD.CPP
       
   143 	Modified heap sharing test to account for the fact that a thread does not
       
   144 	create its heap until it runs.
       
   145 	Remove test which attempted to resume an invalid thread handle.
       
   146 	Added short delay between killing thread and checking that a mutex has
       
   147 	been released.
       
   148 	Removed Busy flag tests - not yet implemented in E32RT.
       
   149 	Removed undertaker order test, Bill's bug test and any other tests which
       
   150 	use thread-relative threads. Thread-relative threads are not supported.
       
   151 
       
   152 
       
   153 /******************************************************************************
       
   154  * NEW TESTS ADDED
       
   155  ******************************************************************************/
       
   156 
       
   157 T_CTXSW1, T_CTXSW2
       
   158 	Test raw inter-process context switch speed (without message passing).
       
   159 
       
   160 T_IPCBM
       
   161 	Benchmark IPC copying for various data sizes.
       
   162 
       
   163 T_KERNBM
       
   164 	Benchmark timer creation, thread suspend and synchronous kernel-side
       
   165 	messages.
       
   166 
       
   167 T_SVR3
       
   168 	Stress test for IPC using non-shared sessions.
       
   169 
       
   170 T_SVR5
       
   171 	Similar to T_SVR but tests IPC with shared sessions.
       
   172 
       
   173 T_SVR6
       
   174 	Stress test for IPC using shared sessions.
       
   175 
       
   176 T_MEMCPY
       
   177 	Tests Mem::Copy for all alignments and various data sizes.
       
   178 
       
   179 T_TBMA
       
   180 	Tests TBitMapAllocator class used in the kernel.
       
   181 
       
   182 CPUMETER
       
   183 	Gives a rough estimate of what percentage of the CPU time is currently
       
   184 	being used.
       
   185 
       
   186 CRASH
       
   187 	Causes a kernel fault.
       
   188 
       
   189 FREEMEM
       
   190 	Displays the amount of free RAM remaining.
       
   191 
       
   192 T_ABT
       
   193 	Repeatedly does an IPC copy which causes an exception. Left running in the
       
   194 	background for latency measurements.
       
   195 
       
   196 T_ALIVE
       
   197 	Prints to the debug serial port periodically based on both a tick and a
       
   198 	millisecond timer. Used to check timers are running.
       
   199 
       
   200 T_BUSY
       
   201 	Runs every millisecond on a millisecond timer. Prints a . every 1024ms.
       
   202 	Used to cause lots of rescheduling to a moving user process.
       
   203 
       
   204 T_CMPRES
       
   205 	Tests heap compression.
       
   206 
       
   207 T_DABT
       
   208 	Causes a data abort.
       
   209 
       
   210 T_PABT
       
   211 	Causes a prefetch abort.
       
   212 
       
   213 T_UNDEF
       
   214 	Causes an undefined instruction exception.
       
   215 
       
   216 T_DEATH
       
   217 	Displays exit information for any threads which die.
       
   218 
       
   219 T_DEATH2
       
   220 	Like T_DEATH but writes the information to a file.
       
   221 
       
   222 T_EMPTY
       
   223 	Does absolutely nothing! Has no imports.
       
   224 
       
   225 T_KILL
       
   226 	Exits with a write to a file in progress.
       
   227 
       
   228 T_RAMUSE
       
   229 	Displays total kernel heap used.
       
   230 
       
   231 T_RECORD
       
   232 	Deleted because sound driver changes completely break it.
       
   233 	Continuously records sound.
       
   234 
       
   235 T_REPMD
       
   236 	Loads a replacement ATA media driver MEDATA2.PDD.
       
   237 
       
   238 T_STRES1
       
   239 	General stress test - create/close kernel objects, heap alloc/dealloc,
       
   240 	heap compression, killing threads.
       
   241 
       
   242 THRDLIST
       
   243 	Writes a list of all threads in the system with register values to a file.
       
   244 
       
   245 T_CHUNK3
       
   246 	Repeated chunk resizing.
       
   247 
       
   248 T_CHUNK4
       
   249 	Tests disconnected chunks.
       
   250 
       
   251 T_MMUBM
       
   252 	Benchmark test for memory allocation/deallocation.
       
   253 
       
   254 T_WBC
       
   255 	Tests unmapping memory works on systems with write back caches.
       
   256 
       
   257 T_ATADR3
       
   258 	Stress test of CF card. Multiple threads reading/writing card with media
       
   259 	changes, power downs and threads exiting in the middle of operations.
       
   260 
       
   261 T_MEDIA
       
   262 	Test of ATA media driver. Tests reading and writing of various lengths
       
   263 	from 256 bytes to 16.5K, both aligned to sector boundary and with
       
   264 	beginning or end of region or both unaligned.
       
   265 
       
   266 T_BATTP
       
   267 	Deleted because sound driver changes break code and kernel reorg has 
       
   268 	probably broke the rest.
       
   269 	Monitors battery voltage over an extended period with alarms playing and
       
   270 	backlight in use.
       
   271 
       
   272 T_LATNCY
       
   273 	Measures interrupt and kernel thread latency using a special build of the
       
   274 	kernel.
       
   275 
       
   276 T_LAT2
       
   277 	Measures interrupt, kernel thread and user thread latency using a periodic
       
   278 	millisecond timer (interrupt every 1ms).
       
   279 
       
   280 D_LATNCY
       
   281 	Device driver for T_LAT2. This runs the millisecond timer and the kernel
       
   282 	thread. The user thread is part of T_LAT2.
       
   283 
       
   284 T_WRITE
       
   285 	Does repeated 64K IPC copies. Run in the background during latency
       
   286 	measurements.
       
   287 
       
   288 T_FRAG
       
   289 	Does repeated chunk resizing using multiple threads. Run in the background
       
   290 	during latency measurements.
       
   291 
       
   292 T_PROT2, T_PROT2A
       
   293 	Test that user threads cannot corrupt the code/data chunk of a process while
       
   294 	it is being loaded.
       
   295 
       
   296 T_PWRDN
       
   297 	Repeatedly powers the machine on and off.
       
   298 
       
   299 
       
   300 /******************************************************************************
       
   301  * TESTS REMOVED OR NOT YET PORTED TO E32RT.
       
   302  ******************************************************************************/
       
   303 
       
   304 T_RTIM
       
   305 	This tests super-threads, which never worked anyway. This has been superceded
       
   306 	by T_LATNCY and T_LAT2.
       
   307 
       
   308 D_RTIM
       
   309 	Device driver for T_RTIM.
       
   310 
       
   311 T_PTNOS
       
   312 	Tests partner OS hooks - E32RT doesn't have these.
       
   313 
       
   314 D_PTNOS
       
   315 	Device driver for T_PTNOS.
       
   316 
       
   317 T_MSTIM
       
   318 	Millisecond timer test - this doesn't really test anything anyway.
       
   319 
       
   320 D_MSTIM
       
   321 	Device driver for T_MSTIM.
       
   322 
       
   323 T_PROF
       
   324 	CPU-time per thread profiling. Not yet implemented in E32RT. Requires special
       
   325 	build of kernel.
       
   326 
       
   327 D_PROF
       
   328 	Device driver for profiling - not yet implemented in E32RT.
       
   329 
       
   330 D_PATCH1, D_PATCH2, D_PATCH3
       
   331 	Test patches - test loading of patches at boot time. These have not yet been
       
   332 	ported.
       
   333 
       
   334 T_PCCD1, T_PCCD2, T_PCCD3
       
   335 	These require D_PCCDIF and/or D_DRVIF, which have not yet been ported.
       
   336 
       
   337 D_PCCDIF, D_DRVIF
       
   338 	Test device drivers for testing PC card controller/local media system. Not
       
   339 	yet ported to E32RT.
       
   340 
       
   341 T_MEDDRV
       
   342 	Tests multiple simultaneous requests on a media driver. Uses device drivers
       
   343 	D_MEDT1, D_MEDT2 which have not yet been ported to E32RT. Test program
       
   344 	T_ATADR3 does a similar thing by having multiple threads all accessing a
       
   345 	drive at the same time.
       
   346 
       
   347 T_BEXFIQ, T_EXTFIQ, T_MEDCH
       
   348 	Use device drivers which have not been ported. First two of these are only
       
   349 	usable on a specially modified rack D.
       
   350 
       
   351 D_BEXFIQ, D_EXTFIQ, D_MEDCH
       
   352 	Not ported to E32RT. First two of these are only usable on a specially
       
   353 	modified rack D.
       
   354 
       
   355 T_DBG, T_BREAK
       
   356 	No debug support in E32RT yet.
       
   357 
       
   358 T_RESET
       
   359 	Not yet ported - it uses RDebug to read the super page, needs D_PATCHn
       
   360 	drivers. Also doesn't work with the crash debugger. Snowdrop E32RT doesn't
       
   361 	reboot properly after kernel fault (if the crash debugger is not there)
       
   362 	since it needs some variant information to do so.
       
   363 
       
   364 E32SOUND, E32SDRV
       
   365 	Sound drivers are still part of E32.
       
   366 
       
   367 T_MODEM1
       
   368 	PC card serial driver not yet implemented.
       
   369 
       
   370 T_PROM
       
   371 	EEPROM driver not implemented.
       
   372 
       
   373 T_CRMDRV, T_CRRDRV
       
   374 	Compact ROM media driver not ported.
       
   375 
       
   376 T_DEBUG
       
   377 	What is this supposed to test?