On 19/07/2019 11:01:02+0800, Anson.Huang@xxxxxxx wrote: > From: Anson Huang <Anson.Huang@xxxxxxx> > > The RTC IRQ is requested before the struct rtc_device is allocated, > this may lead to a NULL pointer dereference in IRQ handler. > > To fix this issue, allocating the rtc_device struct and register rtc > device before requesting the RTC IRQ. > > Using devm_rtc_allocate_device/rtc_register_device instead of > devm_rtc_device_register. > > Signed-off-by: Anson Huang <Anson.Huang@xxxxxxx> > --- > Changes since V1: > - move devm_request_irq() to after rtc device register done, make sure everything > is ready before enabling IRQ. This opens another race condition, the first version of the patch was correct. -- Alexandre Belloni, Bootlin Embedded Linux and Kernel engineering https://bootlin.com