DF-2056 / fix.diff
diff --git a/sys/dev/netif/iwm/if_iwm_fw.c b/sys/dev/netif/iwm/if_iwm_fw.c --- a/sys/dev/netif/iwm/if_iwm_fw.c +++ b/sys/dev/netif/iwm/if_iwm_fw.c @@ -162,14 +162,17 @@ return EINVAL; } - /* copy the CSS block to the dram */ - IWM_DPRINTF(sc, IWM_DEBUG_FW, - "Paging: load paging CSS to FW, sec = %d\n", - sec_idx); - - memcpy(sc->fw_paging_db[0].fw_paging_block.vaddr, - image->sec[sec_idx].data, - sc->fw_paging_db[0].fw_paging_size); + /* copy the CSS block to the dram */ + IWM_DPRINTF(sc, IWM_DEBUG_FW, + "Paging: load paging CSS to FW, sec = %d\n", + sec_idx); + + if (sc->fw_paging_db[0].fw_paging_block.vaddr == NULL || + image->sec[sec_idx].data == NULL) + return EINVAL; + memcpy(sc->fw_paging_db[0].fw_paging_block.vaddr, + image->sec[sec_idx].data, + sc->fw_paging_db[0].fw_paging_size); IWM_DPRINTF(sc, IWM_DEBUG_FW, "Paging: copied %d CSS bytes to first block\n", |