Что означает "Page fault failed for pfn[0] = 0x0" в kern.log?

Недавно я начал получать следующие элементы, выводимые в "kern.log" и syslog.

Jan 29 10:28:19 server kernel: [82515.307047] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.315021] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.322996] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.330971] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.338944] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.346923] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.354905] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.362875] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.370855] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.378837] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.386824] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.394788] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.402766] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.410765] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.418722] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.426707] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.434693] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.442670] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.450634] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.458628] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.466590] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.474561] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.482551] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.490528] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.498500] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.506492] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.514463] Page fault failed for pfn[0] = 0x0
Jan 29 10:28:19 server kernel: [82515.522435] Page fault failed for pfn[0] = 0x0

Я понятия не имею, что они означают, но они, кажется, продолжаются очень долго, делая журналы очень большими, и обычно это заканчивается тем, что система не реагирует.

Может ли это быть связано с плохой оперативной памятью? Я уже давно ничего не менял в оперативной памяти, и система работала нормально в течение нескольких месяцев до этого момента.

1
задан 29 January 2020 в 19:04

1 ответ

Кусок кода взят из драйверов AMDGPU:

for (i = 0; i < ttm->num_pages; i++) {
    /* FIXME: The pages cannot be touched outside the notifier_lock */
    pages[i] = hmm_device_entry_to_page(range, range->pfns[i]);
    if (unlikely(!pages[i])) {
        pr_err("Page fault failed for pfn[%lu] = 0x%llx\n",
               i, range->pfns[i]);
        r = -ENOMEM;

        goto out_free_pfns;

Судя по всему, unlikely() функция вернула истину, оценивая отрицание содержимого запись i в массиве pages, который содержит результат hmm_device_entry_to_page() для «диапазона, используемого для декодирования значения записи устройства» и «значения записи устройства для получения соответствующей структуры». страница от". Это предположительно вызывает ошибку нехватки памяти (ENOMEM) для графического процессора. По сути, в вашем графическом процессоре произошла ошибка памяти, и он жалуется, что ему не хватает памяти.

0
ответ дан 8 May 2020 в 14:11

Другие вопросы по тегам:

Похожие вопросы: