mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-27 11:55:06 +00:00
nvmecontrol: Free array of I/O queue pairs on failure to handoff
This is harmless but cleaner. Reported by: Coverity Scan CID: 1545041,1545049 Sponsored by: Chelsio Communications
This commit is contained in:
parent
1f029b86bb
commit
0ac468c7b6
@ -84,12 +84,15 @@ connect_nvm_controller(enum nvmf_trtype trtype, int adrfam, const char *address,
|
||||
error = connect_nvm_queues(&aparams, trtype, adrfam, address, port,
|
||||
cntlid, subnqn, opt.hostnqn, opt.kato, &admin, io,
|
||||
opt.num_io_queues, opt.queue_size, &cdata);
|
||||
if (error != 0)
|
||||
if (error != 0) {
|
||||
free(io);
|
||||
return (error);
|
||||
}
|
||||
|
||||
error = nvmf_handoff_host(admin, opt.num_io_queues, io, &cdata);
|
||||
if (error != 0) {
|
||||
warnc(error, "Failed to handoff queues to kernel");
|
||||
free(io);
|
||||
return (EX_IOERR);
|
||||
}
|
||||
free(io);
|
||||
|
@ -85,12 +85,15 @@ reconnect_nvm_controller(int fd, enum nvmf_trtype trtype, int adrfam,
|
||||
error = connect_nvm_queues(&aparams, trtype, adrfam, address, port,
|
||||
rparams.cntlid, rparams.subnqn, opt.hostnqn, opt.kato, &admin, io,
|
||||
opt.num_io_queues, opt.queue_size, &cdata);
|
||||
if (error != 0)
|
||||
if (error != 0) {
|
||||
free(io);
|
||||
return (error);
|
||||
}
|
||||
|
||||
error = nvmf_reconnect_host(fd, admin, opt.num_io_queues, io, &cdata);
|
||||
if (error != 0) {
|
||||
warnc(error, "Failed to handoff queues to kernel");
|
||||
free(io);
|
||||
return (EX_IOERR);
|
||||
}
|
||||
free(io);
|
||||
|
Loading…
Reference in New Issue
Block a user