nvme: Add assert for g_thread_mmio_ctrlr in sigbus error handler function.
The g_thread_mmio_ctrlr should be not NULL pointer when it enter the handler function. Change-Id: I45dba601c672b16e2c6feafd9059bafde0d8f1b4 Signed-off-by: Cunyin Chang <cunyin.chang@intel.com>
This commit is contained in:
parent
4a5a24d537
commit
2d5087b305
@ -204,20 +204,20 @@ nvme_sigbus_fault_sighandler(int signum, siginfo_t *info, void *ctx)
|
||||
return;
|
||||
}
|
||||
|
||||
if (g_thread_mmio_ctrlr) {
|
||||
if (!g_thread_mmio_ctrlr->is_remapped) {
|
||||
map_address = mmap((void *)g_thread_mmio_ctrlr->regs, g_thread_mmio_ctrlr->regs_size,
|
||||
PROT_READ | PROT_WRITE,
|
||||
MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED, -1, 0);
|
||||
if (map_address == MAP_FAILED) {
|
||||
SPDK_ERRLOG("mmap failed\n");
|
||||
g_signal_lock = 0;
|
||||
return;
|
||||
}
|
||||
memset(map_address, 0xFF, sizeof(struct spdk_nvme_registers));
|
||||
g_thread_mmio_ctrlr->regs = (volatile struct spdk_nvme_registers *)map_address;
|
||||
g_thread_mmio_ctrlr->is_remapped = true;
|
||||
assert(g_thread_mmio_ctrlr != NULL);
|
||||
|
||||
if (!g_thread_mmio_ctrlr->is_remapped) {
|
||||
map_address = mmap((void *)g_thread_mmio_ctrlr->regs, g_thread_mmio_ctrlr->regs_size,
|
||||
PROT_READ | PROT_WRITE,
|
||||
MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED, -1, 0);
|
||||
if (map_address == MAP_FAILED) {
|
||||
SPDK_ERRLOG("mmap failed\n");
|
||||
g_signal_lock = 0;
|
||||
return;
|
||||
}
|
||||
memset(map_address, 0xFF, sizeof(struct spdk_nvme_registers));
|
||||
g_thread_mmio_ctrlr->regs = (volatile struct spdk_nvme_registers *)map_address;
|
||||
g_thread_mmio_ctrlr->is_remapped = true;
|
||||
}
|
||||
g_signal_lock = 0;
|
||||
return;
|
||||
|
Loading…
x
Reference in New Issue
Block a user