Имеется железка с linux-2.6.32, обновление в короткие сроки не возможна, на ней работает приложение использующее vendor SDK которое широко использует установку приоритета потоков через SCHED_RR. Пока приложение работало под root-м всё было нормально, сейчас приложение переведено в работу под не привилегированным пользователем, для этого были отключены установки приоритетов потоков в vendor SDK и на первый взгляд это не добавило проблем. Дальнейшее тестирование выявило наличие плавающие проблемы - vendor SDK стало предоставлять не корректный указатель что приводит к полному прекращению работы, было высказано предположение что это следствие невозможности выставления приоритета потоков в SCHED_RR. Так как возвращать работу под root-м не особо хочется возникла идея задействовать CAP_SYS_NICE capabilities, через secap была выполнена соотвествуюшая настройка бинарника на хосте, настройка на стороне железа не возможна в силу read-only файловой системы, на стороны железки наличие настройки была подверждено.
К сожалению после запуска /proc/PID/status не подверждает применение capabilities
Код: Выделить всё
........
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
..........
Код: Выделить всё
..........
getpid() = 1294
sched_setscheduler(1295, SCHED_RR, { 8 }) = -1 EPERM (Operation not permitted)
tgkill(1294, 1295, SIGRTMIN) = 0
...........
Вопрос - что необходимо "докрутить" для работоспособности capabilities или что можно проверить что бы найти причину их не работоспособности или источника их сбоса/игнорирования?
Спасибо.