A computer-implemented method of implementing fair scalable reader writer mutual exclusion for access to a critical section by a plurality of processing threads (100,102,118,126) in a processing system, the method comprising: a requesting thread creating a queue node associated with the requesting thread on the requesting thread's stack, the queue node representing a request by the requesting thread to access the critical section; the requesting thread adding the queue node associated with the requesting thread to a queue (106,114,122) by setting pointers (304,308) within the queue to point to the queue node associated with the requesting thread, wherein the queue is pointed to by a single word reader writer mutex for the critical section, the single word reader writer mutex comprising a pointer (QTAIL) to a tail of the queue, the queue node associated with the requesting thread being added to the tail of the queue, the queue representing a list of threads (100,102,118,126) desiring access to the critical section each having a respective queue node on a respective stack of a respective thread represented in the list of threads in the queue; the requesting thread waiting until a condition is met, the condition being that the queue node associated with the requesting thread has no preceding requests by threads that must exit the critical section prior to entry to the critical section by the requesting thread as indicated by predecessor queue nodes on the queue; the requesting thread entering the critical section when the condition is met; the requesting thread exiting the critical section; the requesting thread removing the queue node associated with the requesting thread from the queue; and the requesting thread deleting the queue node associated with the requesting thread from the requesting thread's stack. a requesting thread creating a queue node associated with the requesting thread on the requesting thread's stack, the queue node representing a request by the requesting thread to access the critical section; the requesting thread adding the queue node associated with the requesting thread to a queue (106,114,122) by setting pointers (304,308) within the queue to point to the queue node associated with the requesting thread, wherein the queue is pointed to by a single word reader writer mutex for the critical section, the single word reader writer mutex comprising a pointer (QTAIL) to a tail of the queue, the queue node associated with the requesting thread being added to the tail of the queue, the queue representing a list of threads (100,102,118,126) desiring access to the critical section each having a respective queue node on a respective stack of a respective thread represented in the list of threads in the queue; the requesting thread waiting until a condition is met, the condition being that the queue node associated with the requesting thread has no preceding requests by threads that must exit the critical section prior to entry to the critical section by the requesting thread as indicated by predecessor queue nodes on the queue; the requesting thread entering the critical section when the condition is met; the requesting thread exiting the critical section; the requesting thread removing the queue node associated with the requesting thread from the queue; and the requesting thread deleting the queue node associated with the requesting thread from the requesting thread's stack.