On 6/30/17 5:57 PM, Jerome Glisse wrote: ... Hi Jerome, I am seeing a strange crash in our code that uses the hmm_device_new() helper. After the driver is repeatedly loaded/unloaded, hmm_device_new() suddenly returns NULL. I have reproduced this with the dummy driver from the hmm-next branch: BUG: unable to handle kernel NULL pointer dereference at 0000000000000208 (gdb) bt #0 hmm_devmem_add (ops=0xffffffffa003a140, device=0x0 , size=0x4000000) at mm/hmm.c:997 #1 0xffffffffa0038236 in dmirror_probe (pdev=) at drivers/char/hmm_dmirror.c:1106 #2 0xffffffff815acfcb in platform_drv_probe (_dev=0xffff88081368ca78) at drivers/base/platform.c:578 #3 0xffffffff815ab0a4 in really_probe (drv=, dev=) at drivers/base/dd.c:385 #4 driver_probe_device (drv=0xffffffffa003b028, dev=0xffff88081368ca78) at drivers/base/dd.c:529 #5 0xffffffff815ab1d4 in __driver_attach (dev=0xffff88081368ca78, data=0xffffffffa003b028) at drivers/base/dd.c:763 #6 0xffffffff815a911d in bus_for_each_dev (bus=, start=, data=0x4000000, fn=0x18 ) at drivers/base/bus.c:313 #7 0xffffffff815aa98e in driver_attach (drv=) at drivers/base/dd.c:782 #8 0xffffffff815aa585 in bus_add_driver (drv=0xffffffffa003b028) at drivers/base/bus.c:669 #9 0xffffffff815abc10 in driver_register (drv=0xffffffffa003b028) at drivers/base/driver.c:168 #10 0xffffffff815acf46 in __platform_driver_register (drv=, owner=) at drivers/base/platform.c:636 Can you please look into this? Here's a command to reproduce, using the kload.sh script (taken from a sanity suite you provided earlier, attached): $ while true; do sudo ./kload.sh; done Thanks! Evgeny Baskakov NVIDIA