hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/scsi/scsi_debug.c
....@@ -3619,7 +3619,7 @@
36193619 mk_sense_buffer(scp, ILLEGAL_REQUEST, INVALID_FIELD_IN_CDB, 0);
36203620 return illegal_condition_result;
36213621 }
3622
- lrdp = kzalloc(lbdof_blen, GFP_ATOMIC);
3622
+ lrdp = kzalloc(lbdof_blen, GFP_ATOMIC | __GFP_NOWARN);
36233623 if (lrdp == NULL)
36243624 return SCSI_MLQUEUE_HOST_BUSY;
36253625 if (sdebug_verbose)
....@@ -4275,7 +4275,7 @@
42754275 if (ret)
42764276 return ret;
42774277
4278
- arr = kcalloc(lb_size, vnum, GFP_ATOMIC);
4278
+ arr = kcalloc(lb_size, vnum, GFP_ATOMIC | __GFP_NOWARN);
42794279 if (!arr) {
42804280 mk_sense_buffer(scp, ILLEGAL_REQUEST, INSUFF_RES_ASC,
42814281 INSUFF_RES_ASCQ);
....@@ -4346,7 +4346,7 @@
43464346 rep_max_zones = min((alloc_len - 64) >> ilog2(RZONES_DESC_HD),
43474347 max_zones);
43484348
4349
- arr = kzalloc(alloc_len, GFP_ATOMIC);
4349
+ arr = kzalloc(alloc_len, GFP_ATOMIC | __GFP_NOWARN);
43504350 if (!arr) {
43514351 mk_sense_buffer(scp, ILLEGAL_REQUEST, INSUFF_RES_ASC,
43524352 INSUFF_RES_ASCQ);
....@@ -7103,7 +7103,10 @@
71037103 kfree(sdbg_devinfo->zstate);
71047104 kfree(sdbg_devinfo);
71057105 }
7106
- kfree(sdbg_host);
7106
+ if (sdbg_host->dev.release)
7107
+ put_device(&sdbg_host->dev);
7108
+ else
7109
+ kfree(sdbg_host);
71077110 pr_warn("%s: failed, errno=%d\n", __func__, -error);
71087111 return error;
71097112 }