Index: testsuites/smptests/smplock01/init.c
===================================================================
--- testsuites/smptests/smplock01/init.c	(revision 4c19e59b5e512c8d7e07bce510cbb2b9f6f3e625)
+++ testsuites/smptests/smplock01/init.c	(revision 05b7eec276a130cde39fed861ad4a9d1f01e876c)
@@ -19,4 +19,5 @@
 #include <rtems/score/smplock.h>
 #include <rtems/score/smplockmcs.h>
+#include <rtems/score/smplockseq.h>
 #include <rtems/score/smpbarrier.h>
 #include <rtems/score/atomic.h>
@@ -31,5 +32,5 @@
 #define CPU_COUNT 32
 
-#define TEST_COUNT 10
+#define TEST_COUNT 11
 
 typedef enum {
@@ -51,4 +52,9 @@
 #endif
   SMP_MCS_lock_Control mcs_lock;
+  SMP_sequence_lock_Control seq_lock;
+  char unused_space_for_cache_line_separation_0[128];
+  int a;
+  char unused_space_for_cache_line_separation_1[128];
+  int b;
 } global_context;
 
@@ -60,5 +66,6 @@
   .mcs_stats = SMP_LOCK_STATS_INITIALIZER("global MCS"),
 #endif
-  .mcs_lock = SMP_MCS_LOCK_INITIALIZER
+  .mcs_lock = SMP_MCS_LOCK_INITIALIZER,
+  .seq_lock = SMP_SEQUENCE_LOCK_INITIALIZER
 };
 
@@ -73,5 +80,6 @@
   "local MCS lock with global counter",
   "global ticket lock with busy section",
-  "global MCS lock with busy section"
+  "global MCS lock with busy section",
+  "sequence lock"
 };
 
@@ -351,4 +359,47 @@
     _SMP_MCS_lock_Release(&ctx->mcs_lock, &lock_context);
     ++counter;
+  }
+
+  ctx->test_counter[test][cpu_self] = counter;
+}
+
+static void test_10_body(
+  int test,
+  global_context *ctx,
+  SMP_barrier_State *bs,
+  unsigned int cpu_count,
+  unsigned int cpu_self
+)
+{
+  unsigned long counter = 0;
+  unsigned long seq;
+
+  if (cpu_self == 0) {
+    while (assert_state(ctx, START_TEST)) {
+      seq = _SMP_sequence_lock_Write_begin(&ctx->seq_lock);
+
+      ctx->a = counter;
+      ctx->b = counter;
+
+      _SMP_sequence_lock_Write_end(&ctx->seq_lock, seq);
+
+      ++counter;
+    }
+  } else {
+    while (assert_state(ctx, START_TEST)) {
+      unsigned long a;
+      unsigned long b;
+
+      do {
+        seq = _SMP_sequence_lock_Read_begin(&ctx->seq_lock);
+
+        a = ctx->a;
+        b = ctx->b;
+
+      } while (_SMP_sequence_lock_Read_retry(&ctx->seq_lock, seq));
+
+      ++counter;
+      rtems_test_assert(a == b);
+    }
   }
 
@@ -366,5 +417,6 @@
   test_7_body,
   test_8_body,
-  test_9_body
+  test_9_body,
+  test_10_body
 };
 
Index: testsuites/smptests/smplock01/smplock01.scn
===================================================================
--- testsuites/smptests/smplock01/smplock01.scn	(revision 4c19e59b5e512c8d7e07bce510cbb2b9f6f3e625)
+++ testsuites/smptests/smplock01/smplock01.scn	(revision 05b7eec276a130cde39fed861ad4a9d1f01e876c)
@@ -1,22 +1,288 @@
 *** BEGIN OF TEST SMPLOCK 1 ***
-aquire global lock with local counter
-        processor 0, local counter 15964
-        processor 1, local counter 99982377
-        global counter 0, sum of local counter 99998341
-aquire global lock with global counter
-        processor 0, local counter 166073
-        processor 1, local counter 99569103
-        global counter 99735176, sum of local counter 99735176
-aquire local lock with local counter
-        processor 0, local counter 148133948
-        processor 1, local counter 148148108
-        global counter 0, sum of local counter 296282056
-aquire local lock with global counter
-        processor 0, local counter 55938783
-        processor 1, local counter 55951781
-        global counter 55951781, sum of local counter 111890564
-aquire global lock with busy section
-        processor 0, local counter 10694328
-        processor 1, local counter 10694346
-        global counter 0, sum of local counter 21388674
+global ticket lock with local counter
+        processor 0, local counter 830091
+        processor 1, local counter 830090
+        processor 2, local counter 830091
+        processor 3, local counter 830091
+        processor 4, local counter 830091
+        processor 5, local counter 830091
+        processor 6, local counter 830091
+        processor 7, local counter 830091
+        processor 8, local counter 830089
+        processor 9, local counter 830088
+        processor 10, local counter 830090
+        processor 11, local counter 830090
+        processor 12, local counter 830090
+        processor 13, local counter 830092
+        processor 14, local counter 830093
+        processor 15, local counter 830092
+        processor 16, local counter 830092
+        processor 17, local counter 830092
+        processor 18, local counter 830089
+        processor 19, local counter 830092
+        processor 20, local counter 830090
+        processor 21, local counter 830090
+        processor 22, local counter 830090
+        processor 23, local counter 830092
+        global counter 0, sum of local counter 19922178
+global MCS lock with local counter
+        processor 0, local counter 1579723
+        processor 1, local counter 1580054
+        processor 2, local counter 1579890
+        processor 3, local counter 1579777
+        processor 4, local counter 1579884
+        processor 5, local counter 1580005
+        processor 6, local counter 1578632
+        processor 7, local counter 1578637
+        processor 8, local counter 1578774
+        processor 9, local counter 1578759
+        processor 10, local counter 1580282
+        processor 11, local counter 1579885
+        processor 12, local counter 1580378
+        processor 13, local counter 1580043
+        processor 14, local counter 1580115
+        processor 15, local counter 1580113
+        processor 16, local counter 1579911
+        processor 17, local counter 1579993
+        processor 18, local counter 1580032
+        processor 19, local counter 1579588
+        processor 20, local counter 1580049
+        processor 21, local counter 1580048
+        processor 22, local counter 1578484
+        processor 23, local counter 1580013
+        global counter 0, sum of local counter 37913069
+global ticket lock with global counter
+        processor 0, local counter 784729
+        processor 1, local counter 784730
+        processor 2, local counter 784730
+        processor 3, local counter 784730
+        processor 4, local counter 784731
+        processor 5, local counter 784730
+        processor 6, local counter 784731
+        processor 7, local counter 784730
+        processor 8, local counter 784731
+        processor 9, local counter 784729
+        processor 10, local counter 784729
+        processor 11, local counter 784730
+        processor 12, local counter 784731
+        processor 13, local counter 784729
+        processor 14, local counter 784728
+        processor 15, local counter 784730
+        processor 16, local counter 784729
+        processor 17, local counter 784730
+        processor 18, local counter 784730
+        processor 19, local counter 784729
+        processor 20, local counter 784729
+        processor 21, local counter 784729
+        processor 22, local counter 784729
+        processor 23, local counter 784731
+        global counter 18833514, sum of local counter 18833514
+global MCS lock with global counter
+        processor 0, local counter 947856
+        processor 1, local counter 947857
+        processor 2, local counter 947857
+        processor 3, local counter 947855
+        processor 4, local counter 947858
+        processor 5, local counter 947857
+        processor 6, local counter 947856
+        processor 7, local counter 947856
+        processor 8, local counter 947856
+        processor 9, local counter 947856
+        processor 10, local counter 947857
+        processor 11, local counter 947856
+        processor 12, local counter 947855
+        processor 13, local counter 947857
+        processor 14, local counter 947857
+        processor 15, local counter 947855
+        processor 16, local counter 947856
+        processor 17, local counter 947855
+        processor 18, local counter 947858
+        processor 19, local counter 947857
+        processor 20, local counter 947858
+        processor 21, local counter 947857
+        processor 22, local counter 947857
+        processor 23, local counter 947857
+        global counter 22748556, sum of local counter 22748556
+local ticket lock with local counter
+        processor 0, local counter 77155869
+        processor 1, local counter 77158831
+        processor 2, local counter 77081105
+        processor 3, local counter 77082737
+        processor 4, local counter 77075777
+        processor 5, local counter 77076154
+        processor 6, local counter 77065268
+        processor 7, local counter 77066500
+        processor 8, local counter 77106686
+        processor 9, local counter 77107321
+        processor 10, local counter 77060207
+        processor 11, local counter 77062079
+        processor 12, local counter 77059638
+        processor 13, local counter 77059931
+        processor 14, local counter 77056750
+        processor 15, local counter 77057813
+        processor 16, local counter 76659137
+        processor 17, local counter 76659205
+        processor 18, local counter 76669140
+        processor 19, local counter 76670415
+        processor 20, local counter 76674221
+        processor 21, local counter 76674630
+        processor 22, local counter 76434805
+        processor 23, local counter 76434361
+        global counter 0, sum of local counter 1846208580
+local MCS lock with local counter
+        processor 0, local counter 44963740
+        processor 1, local counter 45045357
+        processor 2, local counter 45023035
+        processor 3, local counter 45021994
+        processor 4, local counter 44912701
+        processor 5, local counter 44951749
+        processor 6, local counter 45090697
+        processor 7, local counter 45089463
+        processor 8, local counter 45015619
+        processor 9, local counter 45088716
+        processor 10, local counter 45064955
+        processor 11, local counter 45063568
+        processor 12, local counter 44966963
+        processor 13, local counter 45002743
+        processor 14, local counter 45127830
+        processor 15, local counter 45126512
+        processor 16, local counter 44947194
+        processor 17, local counter 44992882
+        processor 18, local counter 45006760
+        processor 19, local counter 45005553
+        processor 20, local counter 44880447
+        processor 21, local counter 44889042
+        processor 22, local counter 45036454
+        processor 23, local counter 45036288
+        global counter 0, sum of local counter 1080350262
+local ticket lock with global counter
+        processor 0, local counter 3962116
+        processor 1, local counter 3963441
+        processor 2, local counter 3963482
+        processor 3, local counter 3963367
+        processor 4, local counter 3962978
+        processor 5, local counter 3963102
+        processor 6, local counter 3962979
+        processor 7, local counter 3962911
+        processor 8, local counter 3962974
+        processor 9, local counter 3963125
+        processor 10, local counter 3963056
+        processor 11, local counter 3963093
+        processor 12, local counter 3962996
+        processor 13, local counter 3963100
+        processor 14, local counter 3963096
+        processor 15, local counter 3963028
+        processor 16, local counter 3967076
+        processor 17, local counter 3967251
+        processor 18, local counter 3967222
+        processor 19, local counter 3967093
+        processor 20, local counter 3972862
+        processor 21, local counter 3972917
+        processor 22, local counter 3967217
+        processor 23, local counter 3967220
+        global counter 7095791, sum of local counter 95157702
+local MCS lock with global counter
+        processor 0, local counter 3849478
+        processor 1, local counter 3860113
+        processor 2, local counter 3966891
+        processor 3, local counter 3966750
+        processor 4, local counter 3973618
+        processor 5, local counter 4014013
+        processor 6, local counter 3914674
+        processor 7, local counter 3914601
+        processor 8, local counter 3910536
+        processor 9, local counter 3924908
+        processor 10, local counter 3995362
+        processor 11, local counter 3995130
+        processor 12, local counter 3909912
+        processor 13, local counter 3923977
+        processor 14, local counter 3995941
+        processor 15, local counter 3995667
+        processor 16, local counter 3842753
+        processor 17, local counter 3852728
+        processor 18, local counter 3956029
+        processor 19, local counter 3955977
+        processor 20, local counter 3961870
+        processor 21, local counter 4001067
+        processor 22, local counter 3911767
+        processor 23, local counter 3911724
+        global counter 8503087, sum of local counter 94505486
+global ticket lock with busy section
+        processor 0, local counter 614377
+        processor 1, local counter 614376
+        processor 2, local counter 614377
+        processor 3, local counter 614377
+        processor 4, local counter 614377
+        processor 5, local counter 614378
+        processor 6, local counter 614377
+        processor 7, local counter 614377
+        processor 8, local counter 614377
+        processor 9, local counter 614376
+        processor 10, local counter 614378
+        processor 11, local counter 614377
+        processor 12, local counter 614377
+        processor 13, local counter 614377
+        processor 14, local counter 614377
+        processor 15, local counter 614376
+        processor 16, local counter 614377
+        processor 17, local counter 614377
+        processor 18, local counter 614377
+        processor 19, local counter 614378
+        processor 20, local counter 614378
+        processor 21, local counter 614377
+        processor 22, local counter 614377
+        processor 23, local counter 614377
+        global counter 0, sum of local counter 14745049
+global MCS lock with busy section
+        processor 0, local counter 552660
+        processor 1, local counter 552661
+        processor 2, local counter 552659
+        processor 3, local counter 552659
+        processor 4, local counter 552660
+        processor 5, local counter 552659
+        processor 6, local counter 552659
+        processor 7, local counter 552660
+        processor 8, local counter 552660
+        processor 9, local counter 552660
+        processor 10, local counter 552660
+        processor 11, local counter 552659
+        processor 12, local counter 552660
+        processor 13, local counter 552659
+        processor 14, local counter 552660
+        processor 15, local counter 552661
+        processor 16, local counter 552660
+        processor 17, local counter 552659
+        processor 18, local counter 552660
+        processor 19, local counter 552661
+        processor 20, local counter 552660
+        processor 21, local counter 552661
+        processor 22, local counter 552660
+        processor 23, local counter 552661
+        global counter 0, sum of local counter 13263838
+sequence lock
+        processor 0, local counter 12138641
+        processor 1, local counter 8
+        processor 2, local counter 64
+        processor 3, local counter 89
+        processor 4, local counter 208
+        processor 5, local counter 227
+        processor 6, local counter 69
+        processor 7, local counter 82
+        processor 8, local counter 2019
+        processor 9, local counter 2017
+        processor 10, local counter 1914
+        processor 11, local counter 2008
+        processor 12, local counter 1890
+        processor 13, local counter 1902
+        processor 14, local counter 1734
+        processor 15, local counter 1701
+        processor 16, local counter 2198
+        processor 17, local counter 2176
+        processor 18, local counter 2011
+        processor 19, local counter 2047
+        processor 20, local counter 2072
+        processor 21, local counter 2084
+        processor 22, local counter 1866
+        processor 23, local counter 1849
+        global counter 0, sum of local counter 12170876
 *** END OF TEST SMPLOCK 1 ***
