diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2007-05-30 19:57:07 +0200 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2007-06-01 18:02:05 +0200 |
commit | 239a7dc2fea4d079bc3090b5514497a5ced400d3 (patch) | |
tree | ee4f5492a3f7c692db64d4f738877cbe09a2de14 /drivers/scsi/scsi_transport_iscsi.c | |
parent | [SCSI] aacraid: Changeable queue depth (diff) | |
download | linux-239a7dc2fea4d079bc3090b5514497a5ced400d3.tar.xz linux-239a7dc2fea4d079bc3090b5514497a5ced400d3.zip |
[SCSI] iscsi_transport: Check iscsi interface skb allocation return value
Let's not oops when we cannot allocate a skb! Add a check
for if alloc_skb fails.
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/scsi_transport_iscsi.c')
-rw-r--r-- | drivers/scsi/scsi_transport_iscsi.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c index caf1836bbeca..4fbd8e1a0695 100644 --- a/drivers/scsi/scsi_transport_iscsi.c +++ b/drivers/scsi/scsi_transport_iscsi.c @@ -609,12 +609,10 @@ iscsi_if_send_reply(int pid, int seq, int type, int done, int multi, int t = done ? NLMSG_DONE : type; skb = alloc_skb(len, GFP_ATOMIC); - /* - * FIXME: - * user is supposed to react on iferror == -ENOMEM; - * see iscsi_if_rx(). - */ - BUG_ON(!skb); + if (!skb) { + printk(KERN_ERR "Could not allocate skb to send reply.\n"); + return -ENOMEM; + } nlh = __nlmsg_put(skb, pid, seq, t, (len - sizeof(*nlh)), 0); nlh->nlmsg_flags = flags; |