Re: [PATCH] perf/x86/intel/bts: don't dereference ds unconditionally

From: Alexander Shishkin
Date: Tue Sep 20 2016 - 09:54:37 EST


Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx> writes:

> Sebastian Andrzej Siewior <sebastian@xxxxxxxxxxxxx> writes:
>
>> From: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
>>
>> Since commit 4d4c47412464 ("perf/x86/intel/bts: Fix BTS PMI detection")
>> my box goes boom on boot:
>>
>> | .... node #0, CPUs: #1 #2 #3 #4 #5 #6 #7
>> | BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
>> | IP: [<ffffffff8100c463>] intel_bts_interrupt+0x43/0x130
>> | Call Trace:
>> | <NMI> d [<ffffffff8100b341>] intel_pmu_handle_irq+0x51/0x4b0
>> | [<ffffffff81004d47>] perf_event_nmi_handler+0x27/0x40
>>
>> I don't know what is going on here but ds is not always dereferenced
>> unconditionally hence here the `ds' check to avoid the crash.
>
> Good catch! I'm going to guess you don't have the NMI watchdog enabled?

That is to say,

Reviewed-by: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>