#include <scst_debug.h>
#include <scst_debug.c>
-#ifndef MEMCPY
-/* Debugging to see how many memcopys/memsets happen */
-#define MEMCPY(d, s, l) do { \
- TRACE_MEM("memcpy to %p size %zd", d, (size_t)l); \
- memcpy(d, s, l); \
- } while (0)
-#endif
-
-#ifndef MEMSET
-#define MEMSET(d, c, l) do { \
- TRACE_MEM("memset of %p size %zd", d, (size_t)l); \
- memset(d, c, l); \
- } while (0)
-#endif
-
#ifndef FC_TARGET_SUPPORT
#error "FC_TARGET_SUPPORT is NOT DEFINED"
#endif
if (ha->tgt != NULL)
ha->tgt->notify_ack_expected++;
- MEMSET(ntfy, 0, sizeof(*ntfy));
+ memset(ntfy, 0, sizeof(*ntfy));
ntfy->entry_type = NOTIFY_ACK_TYPE;
ntfy->entry_count = 1;
SET_TARGET_ID(ha, ntfy->target, target_id);
BUG_ON(sess == NULL);
tgt = sess->tgt;
- TRACE_MEM("kfree for sess %p (tgt %p)", sess, tgt);
kfree(sess);
if (tgt == NULL)
scst_tgt_set_tgt_priv(scst_tgt, NULL);
- TRACE_MEM("kfree for tgt %p", tgt);
kfree(tgt);
TRACE_EXIT_RES(res);
* that.
*/
- MEMSET(cont_pkt64, 0, sizeof(*cont_pkt64));
+ memset(cont_pkt64, 0, sizeof(*cont_pkt64));
cont_pkt64->entry_count = 1;
cont_pkt64->sys_define = 0;
ctio_m1->scsi_status |=
__constant_cpu_to_le16(SS_SENSE_LEN_VALID);
ctio_m1->sense_length = cpu_to_le16(prm->sense_buffer_len);
- MEMCPY(ctio_m1->sense_data, prm->sense_buffer,
+ memcpy(ctio_m1->sense_data, prm->sense_buffer,
prm->sense_buffer_len);
} else {
- MEMSET(ctio_m1->sense_data, 0, sizeof(ctio_m1->sense_data));
+ memset(ctio_m1->sense_data, 0, sizeof(ctio_m1->sense_data));
ctio_m1->sense_length = 0;
}
TRACE_DBG("%s", "Building additional status "
"packet");
- MEMCPY(ctio_m1, prm.pkt, sizeof(*ctio_m1));
+ memcpy(ctio_m1, prm.pkt, sizeof(*ctio_m1));
ctio_m1->entry_count = 1;
/* Real finish is ctio_m1's finish */
static inline void q2t_free_cmd(struct q2t_cmd *cmd)
{
- TRACE_MEM("kfree for cmd (q2t_cmd) %p", cmd);
kmem_cache_free(q2t_cmd_cachep, cmd);
}
}
cmd = kmem_cache_alloc(q2t_cmd_cachep, GFP_ATOMIC);
- TRACE_MEM("kmem_cache_alloc(GFP_ATOMIC) for cmd (%zd): %p", sizeof(*cmd), cmd);
if (cmd == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of cmd failed");
res = -ENOMEM;
}
TRACE_BUFFER("ATIO Coming Up", atio, sizeof(*atio));
- MEMSET(cmd, 0, sizeof(*cmd));
- MEMCPY(&cmd->atio, atio, sizeof(*atio));
+ memset(cmd, 0, sizeof(*cmd));
+ memcpy(&cmd->atio, atio, sizeof(*atio));
cmd->state = Q2T_STATE_NEW;
sess = q2t_find_sess_by_lid(tgt, loop_id);
if (unlikely(sess == NULL)) {
sess = kzalloc(sizeof(*sess), GFP_ATOMIC);
- TRACE_MEM("kzalloc(GFP_ATOMIC) for sess (%zd): %p",
- sizeof(*sess), sess);
if (sess == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Allocation of sess failed");
return res;
out_free_sess:
- TRACE_MEM("kfree for sess %p", sess);
kfree(sess);
smp_mb__before_atomic_dec();
if (atomic_dec_and_test(&tgt->sess_count))
}
mcmd = kzalloc(sizeof(*mcmd), GFP_ATOMIC);
- TRACE_MEM("kzalloc(GFP_ATOMIC) for mcmd (%zd): %p",
- sizeof(*mcmd), mcmd);
if (mcmd == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of mgmt cmd failed");
res = -ENOMEM;
return res;
out_free:
- TRACE_MEM("kfree for mcmd %p", mcmd);
kfree(mcmd);
goto out;
}
}
mcmd = kzalloc(sizeof(*mcmd), GFP_ATOMIC);
- TRACE_MEM("kzalloc(GFP_ATOMIC) for mcmd (%zd): %p", sizeof(*mcmd), mcmd);
if (mcmd == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of mgmt cmd failed");
res = -ENOMEM;
return res;
out_free:
- TRACE_MEM("kfree for mcmd %p", mcmd);
kfree(mcmd);
goto out;
}
/* scst_mgmt_cmd_set_tgt_priv(scst_mcmd, NULL); */
scst_mcmd->tgt_priv = NULL;
- TRACE_MEM("kfree for mcmd %p", mcmd);
kfree(mcmd);
out:
switch (action) {
case ENABLE_TARGET_MODE :
tgt = kzalloc(sizeof(*tgt), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for tgt (%zd): %p",
- sizeof(*tgt), tgt);
if (tgt == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Allocation of tgt failed");
PRINT_ERROR("qla2x00tgt(%ld): scst_register() "
"failed for host %ld(%p)", ha->instance,
ha->host_no, ha);
- TRACE_MEM("kfree for tgt %p", tgt);
kfree(tgt);
goto out;
}
}
cdrom = kzalloc(sizeof(*cdrom), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for struct cdrom_params (%zu): %p",
- sizeof(*cdrom), cdrom);
if (cdrom == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Unable to allocate struct cdrom_params");
}
buffer = kzalloc(buffer_size, GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for %d: %p", buffer_size, buffer);
if (!buffer) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Memory allocation failure");
res = -ENOMEM;
}
out_free_buf:
- TRACE_MEM("kfree for buffer: %p", buffer);
kfree(buffer);
out_free_cdrom:
if (res == 0)
dev->dh_priv = cdrom;
- else {
- TRACE_MEM("kfree for cdrom: %p", cdrom);
+ else
kfree(cdrom);
- }
out:
TRACE_EXIT();
TRACE_ENTRY();
- TRACE_MEM("kfree for cdrom: %p", cdrom);
kfree(cdrom);
dev->dh_priv = NULL;
}
disk = kzalloc(sizeof(*disk), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for struct disk_params (%zu): %p",
- sizeof(*disk), disk);
if (disk == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Unable to allocate struct disk_params");
}
buffer = kzalloc(buffer_size, GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for %d: %p", buffer_size, buffer);
if (!buffer) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Memory allocation failure");
res = -ENOMEM;
}
out_free_buf:
- TRACE_MEM("kfree for buffer: %p", buffer);
kfree(buffer);
out_free_disk:
if (res == 0)
dev->dh_priv = disk;
- else {
- TRACE_MEM("kfree for disk: %p", disk);
+ else
kfree(disk);
- }
out:
TRACE_EXIT_RES(res);
TRACE_ENTRY();
- TRACE_MEM("kfree for disk: %p", disk);
kfree(disk);
dev->dh_priv = NULL;
TRACE_ENTRY();
ftgt_dev = kzalloc(sizeof(*ftgt_dev), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for ftgt_dev (%zd): %p",
- sizeof(*ftgt_dev), ftgt_dev);
if (ftgt_dev == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of per-session "
"virtual device failed");
filp_close(ftgt_dev->fd, NULL);
out_free:
- TRACE_MEM("kfree ftgt_dev: %p", ftgt_dev);
kfree(ftgt_dev);
goto out;
}
if (ftgt_dev->fd)
filp_close(ftgt_dev->fd, NULL);
- if (ftgt_dev->iv != NULL) {
- TRACE_MEM("kfree ftgt_dev->iv: %p", ftgt_dev->iv);
+ if (ftgt_dev->iv != NULL)
kfree(ftgt_dev->iv);
- }
- TRACE_MEM("kfree ftgt_dev: %p", ftgt_dev);
kfree(ftgt_dev);
tgt_dev->dh_priv = NULL;
iv_count = scst_get_buf_count(cmd);
if (iv_count > ftgt_dev->iv_count) {
- if (ftgt_dev->iv != NULL) {
- TRACE_MEM("kfree ftgt_dev->iv: %p", ftgt_dev->iv);
+ if (ftgt_dev->iv != NULL)
kfree(ftgt_dev->iv);
- }
ftgt_dev->iv = kmalloc(sizeof(*ftgt_dev->iv) * iv_count, GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for iv (%zd): %p",
- sizeof(*ftgt_dev->iv) * iv_count, ftgt_dev->iv);
if (ftgt_dev->iv == NULL) {
PRINT_ERROR_PR("Unable to allocate iv (%d)", iv_count);
scst_set_busy(cmd);
{
struct scst_fileio_dev *dev;
dev = kzalloc(sizeof(*dev), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for dev (%zd): %p", sizeof(*dev), dev);
if (dev == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of virtual "
"device failed");
len = strlen(file_name) + 1;
virt_dev->file_name = kmalloc(len, GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for file_name (%d): %p",
- len, virt_dev->file_name);
if (virt_dev->file_name == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Allocation of file_name failed");
list_del(&virt_dev->fileio_dev_list_entry);
- TRACE_MEM("kfree for file_name: %p", virt_dev->file_name);
kfree(virt_dev->file_name);
- TRACE_MEM("kfree for virt_dev: %p", virt_dev);
kfree(virt_dev);
}
res = length;
out_free_vpath:
list_del(&virt_dev->fileio_dev_list_entry);
-
- TRACE_MEM("kfree for file_name: %p", virt_dev->file_name);
kfree(virt_dev->file_name);
out_free_vdev:
- TRACE_MEM("kfree for virt_dev: %p", virt_dev);
kfree(virt_dev);
goto out_up;
}
if (!virt_dev->cdrom_empty) {
len = strlen(file_name) + 1;
virt_dev->file_name = kmalloc(len, GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for file_name (%d): %p",
- len, virt_dev->file_name);
if (virt_dev->file_name == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Allocation of file_name failed");
out_free_vpath:
list_del(&virt_dev->fileio_dev_list_entry);
-
- TRACE_MEM("kfree for file_name: %p", virt_dev->file_name);
kfree(virt_dev->file_name);
out_free_vdev:
- TRACE_MEM("kfree for virt_dev: %p", virt_dev);
kfree(virt_dev);
goto out;
}
list_del(&virt_dev->fileio_dev_list_entry);
- if (virt_dev->file_name) {
- TRACE_MEM("kfree for file_name: %p", virt_dev->file_name);
+ if (virt_dev->file_name)
kfree(virt_dev->file_name);
- }
- TRACE_MEM("kfree for virt_dev: %p", virt_dev);
kfree(virt_dev);
out:
if (!virt_dev->cdrom_empty) {
len = strlen(file_name) + 1;
fn = kmalloc(len, GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for file_name (%d): %p",
- len, fn);
if (fn == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Allocation of file_name failed");
virt_dev->name);
}
- if (old_fn) {
- TRACE_MEM("kfree for old_fn: %p", old_fn);
+ if (old_fn)
kfree(old_fn);
- }
out_resume:
scst_resume_activity();
out_free:
virt_dev->file_name = old_fn;
- TRACE_MEM("kfree for fn: %p", fn);
kfree(fn);
goto out;
out_free_resume:
virt_dev->file_name = old_fn;
- TRACE_MEM("kfree for fn: %p", fn);
kfree(fn);
goto out_resume;
out_err_resume:
virt_dev->file_name = old_fn;
- TRACE_MEM("kfree for fn: %p", fn);
kfree(fn);
scst_resume_activity();
cdrom_fileio_close(name);
PRINT_INFO_PR("Virtual device %s unregistered", virt_dev->name);
TRACE_DBG("virt_id %d", virt_dev->virt_id);
- TRACE_MEM("kfree for file_name: %p", virt_dev->file_name);
kfree(virt_dev->file_name);
- TRACE_MEM("kfree for virt_dev: %p", virt_dev);
kfree(virt_dev);
}
up(&scst_fileio_mutex);
}
modisk = kzalloc(sizeof(*modisk), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for struct modisk_params (%zu): %p",
- sizeof(*modisk), modisk);
if (modisk == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Unable to allocate struct modisk_params");
}
buffer = kzalloc(buffer_size, GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for %d: %p", buffer_size, buffer);
if (!buffer) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Memory allocation failure");
res = -ENOMEM;
}
out_free_buf:
- TRACE_MEM("kfree for buffer: %p", buffer);
kfree(buffer);
out_free_modisk:
if (res == 0)
dev->dh_priv = modisk;
- else {
- TRACE_MEM("kfree for modisk: %p", modisk);
+ else
kfree(modisk);
- }
out:
TRACE_EXIT_RES(res);
TRACE_ENTRY();
- TRACE_MEM("kfree for modisk: %p", modisk);
kfree(modisk);
dev->dh_priv = NULL;
}
tape = kzalloc(sizeof(*tape), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for struct tape_params (%zu): %p",
- sizeof(*tape), tape);
if (tape == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Unable to allocate struct tape_params");
spin_lock_init(&tape->tp_lock);
buffer = kmalloc(buffer_size, GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for %d: %p", buffer_size, buffer);
if (!buffer) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Memory allocation failure");
res = -ENOMEM;
}
out_free_buf:
- TRACE_MEM("kfree for buffer: %p", buffer);
kfree(buffer);
out_free_req:
if (res == 0)
dev->dh_priv = tape;
- else {
- TRACE_MEM("kfree for tape: %p", tape);
+ else
kfree(tape);
- }
out:
TRACE_EXIT_RES(res);
TRACE_ENTRY();
- TRACE_MEM("kfree for tape: %p", tape);
kfree(tape);
dev->dh_priv = NULL;
TRACE_ENTRY();
tgt = kzalloc(sizeof(*tgt), GFP_KERNEL);
- TRACE_MEM("kzalloc(GFP_KERNEL) for tgt (%zd): %p",
- sizeof(*tgt), tgt);
if (tgt == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "kzalloc() failed");
goto out;
return tgt;
out_free:
- TRACE_MEM("kfree() for tgt %p", tgt);
kfree(tgt);
goto out;
}
del_timer_sync(&tgt->retry_timer);
- TRACE_MEM("kfree for tgt: %p", tgt);
kfree(tgt);
TRACE_EXIT();
TRACE_ENTRY();
dev = kzalloc(sizeof(*dev), gfp_mask);
- TRACE_MEM("kzalloc() for dev (%zd): %p", sizeof(*dev), dev);
if (dev == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s",
"Allocation of scst_device failed");
}
#endif
- TRACE_MEM("kfree for dev: %p", dev);
kfree(dev);
TRACE_EXIT();
TRACE_ENTRY();
res = kmem_cache_alloc(scst_acgd_cachep, GFP_KERNEL);
- TRACE_MEM("kmem_cache_alloc() for acg_dev (%zd): %p", sizeof(*res), res);
if (res == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of scst_acg_dev failed");
goto out;
list_del(&acg_dev->acg_dev_list_entry);
list_del(&acg_dev->dev_acg_dev_list_entry);
- TRACE_MEM("kfree for acg_dev: %p", acg_dev);
kmem_cache_free(scst_acgd_cachep, acg_dev);
TRACE_EXIT();
TRACE_ENTRY();
acg = kzalloc(sizeof(*acg), GFP_KERNEL);
- TRACE_MEM("kzalloc() for acg (%zd): %p", sizeof(*acg), acg);
if (acg == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of acg failed");
goto out;
acn_list_entry)
{
list_del(&n->acn_list_entry);
- TRACE_MEM("kfree() for scst_acn->name: %p", n->name);
kfree(n->name);
- TRACE_MEM("kfree() for scst_acn: %p", n);
kfree(n);
}
INIT_LIST_HEAD(&acg->acn_list);
- TRACE_MEM("kfree for acg: %p", acg);
kfree(acg);
-
out:
TRACE_EXIT_RES(res);
return res;
TRACE_ENTRY();
tgt_dev = kmem_cache_alloc(scst_tgtd_cachep, GFP_KERNEL);
- TRACE_MEM("kmem_cache_alloc(GFP_KERNEL) for tgt_dev (%zd): %p",
- sizeof(*tgt_dev), tgt_dev);
if (tgt_dev != NULL)
memset(tgt_dev, 0, sizeof(*tgt_dev));
else {
return tgt_dev;
out_free:
- TRACE_MEM("kfree for tgt_dev: %p", tgt_dev);
kmem_cache_free(scst_tgtd_cachep, tgt_dev);
tgt_dev = NULL;
goto out;
TRACE_DBG("%s", "Dev handler's detach_tgt() returned");
}
- TRACE_MEM("kfree for tgt_dev: %p", tgt_dev);
kmem_cache_free(scst_tgtd_cachep, tgt_dev);
TRACE_EXIT();
}
n = kmalloc(sizeof(*n), GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for scst_acn (%zd): %p", sizeof(*n), n);
if (n == NULL) {
PRINT_ERROR_PR("%s", "Unable to allocate scst_acn");
res = -ENOMEM;
len = strlen(name);
nm = kmalloc(len + 1, GFP_KERNEL);
- TRACE_MEM("kmalloc(GFP_KERNEL) for scst_acn->name (%d): %p",
- len + 1, nm);
if (nm == NULL) {
PRINT_ERROR_PR("%s", "Unable to allocate scst_acn->name");
res = -ENOMEM;
return res;
out_free:
- TRACE_MEM("kfree() for scst_acn: %p", n);
kfree(n);
goto out;
}
{
if (strcmp(n->name, name) == 0) {
list_del(&n->acn_list_entry);
- TRACE_MEM("kfree() for scst_acn->name: %p", n->name);
kfree(n->name);
- TRACE_MEM("kfree() for scst_acn: %p", n);
kfree(n);
res = 0;
break;
if (scsi_cmd && (req = scsi_cmd->sc_request)) {
if (req) {
- if (req->sr_bufflen) {
- TRACE_MEM("kfree for req->sr_buffer: %p",
- req->sr_buffer);
+ if (req->sr_bufflen)
kfree(req->sr_buffer);
- }
scsi_release_request(req);
}
}
TRACE_ENTRY();
sess = kmem_cache_alloc(scst_sess_cachep, gfp_mask);
- TRACE_MEM("kmem_cache_alloc() for sess (%zd): %p", sizeof(*sess), sess);
if (sess != NULL)
memset(sess, 0, sizeof(*sess));
else {
len = strlen(initiator_name);
nm = kmalloc(len + 1, gfp_mask);
- TRACE_MEM("kmalloc(GFP_KERNEL) for sess->initiator_name (%d): %p",
- len + 1, nm);
if (nm == NULL) {
PRINT_ERROR_PR("%s", "Unable to allocate sess->initiator_name");
goto out_free;
return sess;
out_free:
- TRACE_MEM("kfree() for sess: %p", sess);
kmem_cache_free(scst_sess_cachep, sess);
sess = NULL;
goto out;
up(&scst_mutex);
- TRACE_MEM("kfree for sess->initiator_name: %p", sess->initiator_name);
kfree(sess->initiator_name);
-
- TRACE_MEM("kfree for sess: %p", sess);
kmem_cache_free(scst_sess_cachep, sess);
TRACE_EXIT();
TRACE_ENTRY();
cmd = kmem_cache_alloc(scst_cmd_cachep, gfp_mask);
- TRACE_MEM("kmem_cache_alloc() for cmd (%zd): %p", sizeof(*cmd), cmd);
if (cmd != NULL)
memset(cmd, 0, sizeof(*cmd));
else {
TRACE_ENTRY();
mcmd = mempool_alloc(scst_mgmt_mempool, gfp_mask);
- TRACE_MEM("mempool_alloc() for mgmt cmd (%zd): %p", sizeof(*mcmd),
- mcmd);
if (mcmd == NULL) {
PRINT_ERROR("%s", "Allocation of management command "
"failed, some commands and their data could leak");
if (mcmd->mcmd_tgt_dev != NULL)
scst_dec_cmd_count();
- TRACE_MEM("mempool_free for mgmt cmd: %p", mcmd);
mempool_free(mcmd, scst_mgmt_mempool);
TRACE_EXIT();
list_del(&UA_entry->UA_list_entry);
-
- TRACE_MEM("mempool_free for UA_entry: %p", UA_entry);
mempool_free(UA_entry, scst_ua_mempool);
if (list_empty(&cmd->tgt_dev->UA_list)) {
TRACE_ENTRY();
UA_entry = mempool_alloc(scst_ua_mempool, GFP_ATOMIC);
- TRACE_MEM("mempool_alloc(GFP_ATOMIC) for UA_entry (%zd): %p",
- sizeof(*UA_entry), UA_entry);
if (UA_entry == NULL) {
PRINT_ERROR_PR("%s", "UNIT ATTENTION memory "
"allocation failed. The UNIT ATTENTION "
TRACE_MGMT_DBG("Clearing UA for tgt_dev lun %d",
tgt_dev->acg_dev->lun);
list_del(&UA_entry->UA_list_entry);
- TRACE_MEM("kfree for UA_entry: %p", UA_entry);
kfree(UA_entry);
}
INIT_LIST_HEAD(&tgt_dev->UA_list);
void scst_free_cmd(struct scst_cmd *cmd);
static inline void scst_destroy_cmd(struct scst_cmd *cmd)
{
- TRACE_MEM("kfree for cmd: %p", cmd);
kmem_cache_free(scst_cmd_cachep, cmd);
return;
}
TRACE_ENTRY();
name = kmalloc(len, GFP_KERNEL);
- TRACE_MEM("kmalloc() for acg_dev (%d): %p", len, name);
if (name == NULL) {
TRACE(TRACE_OUT_OF_MEM, "%s", "Allocation of name failed");
goto out_nomem;
scst_proc_del_free_acg(acg, 0);
out_free:
- TRACE_MEM("kfree for name: %p", name);
kfree(name);
out_nomem:
if (res == 0) {
if (remove_proc)
scst_proc_del_acg_tree(acg_proc_root, name);
- TRACE_MEM("kfree for name: %p", name);
kfree(name);
}
}
list_for_each_entry_safe(n, nn, &acg->acn_list,
acn_list_entry) {
list_del(&n->acn_list_entry);
- TRACE_MEM("kfree() for scst_acn->name: %p", n->name);
kfree(n->name);
- TRACE_MEM("kfree() for scst_acn: %p", n);
kfree(n);
}
break;