The storage class of data is a guide to whether the driver might need to take explicit steps to control access to the data. The three types of data storage classes are:
Automatic (stack) data – Every thread has a private stack, so drivers never need to lock automatic variables.
Global and static data – Global and static data can be shared by any number of threads in the driver; the driver might need to lock this type of data at times.
Kernel heap data – Any number of threads in the driver might share kernel heap data, such as data allocated by kmem_alloc(9F). If this data is shared, the driver needs to protect it at times.