Невозможно установить приоритет потока с помощью pthread_setschedparam() в openSUSE 11.4 — 2.6.37 (только!)

#linux #opensuse

#linux #opensuse

Вопрос:

Я запускаю приложение, которое отлично работает на openSUSE 11.3 и на 11.4 с ядром 2.6.39. Но на 11.4 со стандартным ядром 2.6.37 это выдает ошибку.

Это приложение создает поток, а затем пытается установить приоритет. При выполнении pthread_setschedparam( ) он возвращает 1, что является EPERM (не разрешено). Я вошел в систему как root, когда это происходит.

Я попытался установить некоторые значения в файле /etc/security/limits.conf, но это все равно не сработало. Я также не понимал, зачем мне это делать, если я вошел в систему как root.

Я просмотрел изменения в ядре с 2.6.34 до .39, и там были некоторые упоминания о планировании, но я не увидел там никакого дымящегося пистолета.

Любая помощь приветствуется. Спасибо.

Ответ №1:

Оказывается, что-то в исправлениях исправляет это. Если вы сделаете «исправление zypper» и дадите ему исправиться до 2.6.37.6-0.7, тогда все работает нормально.