сем дорого времени суток! Может кто-то знает кукую реальную роль играет поле tls_array в thread_struct
Насколько я понимаю в момент выполения треда эти селекторы кладутся в GDT процессора на котором выполняется тред. В этих селектораях хранится информация касающаяся привилегий треда в частности dpl. Но как говорит интеловский ман при выполнении инструкции привелегии треда берутся из селекторов сегмента которые находятся в cs и ds соответственно. Влияет ли то что в tls полях gdt на это или нет? Под отладчиком видно что запуске какого-то пользовательского процесса при прохождении через do_fork в tls_array инициализирован только первый элемент. Это значит что 2 других элемента не используются или это имеется в виду что у пользовательского процесса стек и данные как бы в ядерном контексте %) ?
Никогда не читал интеловские мануалы.. и не советую (всё очень поверхностно там). Ответ на вопрос находится с 123 страницы по 185 книги "Ядро LINUX" Д.Бовет, М.Чезати. Точнее не отвечу