Поздравляю, в кратце распишу в чем была проблема: ядро linux в своих хедерниках имеет раздельные каталоги asm и asm-generic, в то время как у нас эти каталоги были объединены и asm было ссылкой на asm-generic.
Ошибка заключалась в том, что ядро содержит файл unistd.h в обоих каталогах (asm и asm-generic) и эти файлы имея одинаковое название, выполняют разные функции и имеют разное содержимое. Я вернул разделение каталогов, все стало нормально. Перекомпилировать предыдущие программы массово не придется т.к. кроме glibc и вроде glib еще одновременно unistd.h из двух каталогов никто не требовал.