The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Увеличение скорости ввода/вывода на 6% в Linux, благодаря кэ..."
Отправлено n00by, 17-Янв-24 09:05 
> смотрите массив ool_workarounds, начиная со строчки № 437.

А почему не с #ifdef CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND ?

или с


    wa = arch_timer_iterate_errata(type, match_fn, arg);
    if (!wa)
        return;

    __wa = __this_cpu_read(timer_unstable_counter_workaround);
    if (__wa && wa != __wa)
        pr_warn("Can't enable workaround for %s (clashes with %s\n)",
            wa->desc, __wa->desc);

> В рантайме для таймера выбор хуков из device tree методом
> обхода всего массива в цикле, на данный момент, делается один раз
> - при инициализации. А потом просто каждый раз дёргается хук, при
> каждой попытке получения времени.

А зачем вообще, хотя бы гипотетически, может понадобиться на каждый чих разбирать device tree?

В данном случае хук выглядит так:


#if IS_ENABLED(CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND)
...
#define erratum_handler(h)                        \
    ({                                \
        const struct arch_timer_erratum_workaround *__wa;    \
        __wa = __this_cpu_read(timer_unstable_counter_workaround); \
        (__wa && __wa->h) ? ({ isb(); __wa->h;}) : arch_timer_##h; \
    })
#else
#define has_erratum_handler(h)               false
#define erratum_handler(h)               (arch_timer_##h)
#endif

или я что-то недосмотрел?
 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, [email protected] (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру