[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <230722105714.M0104460@vega.pgw.jp>
Date: Sat, 22 Jul 2023 10:57:14 +0900
From: <kkabe@...a.pgw.jp>
To: rostedt@...dmis.org
Cc: linux-kernel@...r.kernel.org, amd-gfx@...ts.freedesktop.org,
kkabe@...a.pgw.jp
Subject: Re: radeon.ko/i586: BUG: kernel NULL pointerdereference,address:00000004
rostedt@...dmis.org sed in <20230717112138.1fd48cca@...dalf.local.home>
>> On Sat, 15 Jul 2023 11:39:11 +0900
>> <kkabe@...a.pgw.jp> wrote:
>>
>>
>> > Yes, this is puzzling. That's why I need other people's opinion on this.
>> > Does it matter the DUT is a slow machine (Pentium 120MHz)?
>> >
>>
>> Hmm, I wonder because the workqueue is running __init functions, could it
>> possibly be that it didn't finish before the end of boot, where it frees
>> all the functions? It shouldn't do that because there's code to make sure
>> it's done before it continues further.
>>
>> But just in case something isn't working as planned, you could try this
>> patch to see if the bug goes away.
>>
>> -- Steve
>>
>> diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
>> index 05c0024815bf..af5a40ef3be4 100644
>> --- a/kernel/trace/ftrace.c
>> +++ b/kernel/trace/ftrace.c
>> @@ -3771,13 +3771,13 @@ static int test_for_valid_rec(struct dyn_ftrace *rec)
>> return 1;
>> }
>>
>> -static struct workqueue_struct *ftrace_check_wq __initdata;
>> -static struct work_struct ftrace_check_work __initdata;
>> +static struct workqueue_struct *ftrace_check_wq;
>> +static struct work_struct ftrace_check_work;
>>
>> /*
>> * Scan all the mcount/fentry entries to make sure they are valid.
>> */
>> -static __init void ftrace_check_work_func(struct work_struct *work)
>> +static void ftrace_check_work_func(struct work_struct *work)
>> {
>> struct ftrace_page *pg;
>> struct dyn_ftrace *rec;
>>
Just in case I tried this patch too;
no banana, it panics (vblank->worker == NULL check fires)
--
kabe
Powered by blists - more mailing lists