riscv: Support BUG() in kernel module

The kernel module is loaded into vmalloc region which is located below
to the PAGE_OFFSET. Hence the condition, pc < PAGE_OFFSET, in the
is_valid_bugaddr() will filter out all trap exceptions triggered
by kernel module. To support BUG() in kernel module, the condition is
changed to pc < VMALLOC_START.

Signed-off-by: Vincent Chen <vincentc@andestech.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
This commit is contained in:
Vincent Chen 2019-03-05 11:23:35 +08:00 коммит произвёл Palmer Dabbelt
Родитель ee72e0e70c
Коммит 9a6e7af02f
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: EF4CA1502CCBAB41
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -156,7 +156,7 @@ int is_valid_bugaddr(unsigned long pc)
{
bug_insn_t insn;
if (pc < PAGE_OFFSET)
if (pc < VMALLOC_START)
return 0;
if (probe_kernel_address((bug_insn_t *)pc, insn))
return 0;