Skip to content
  • Laura Abbott's avatar
    scsi: iscsi: target: Don't use stack buffer for scatterlist · 679fcae4
    Laura Abbott authored
    
    
    Fedora got a bug report of a crash with iSCSI:
    
    kernel BUG at include/linux/scatterlist.h:143!
    ...
    RIP: 0010:iscsit_do_crypto_hash_buf+0x154/0x180 [iscsi_target_mod]
    ...
     Call Trace:
      ? iscsi_target_tx_thread+0x200/0x200 [iscsi_target_mod]
      iscsit_get_rx_pdu+0x4cd/0xa90 [iscsi_target_mod]
      ? native_sched_clock+0x3e/0xa0
      ? iscsi_target_tx_thread+0x200/0x200 [iscsi_target_mod]
      iscsi_target_rx_thread+0x81/0xf0 [iscsi_target_mod]
      kthread+0x120/0x140
      ? kthread_create_worker_on_cpu+0x70/0x70
      ret_from_fork+0x3a/0x50
    
    This is a BUG_ON for using a stack buffer with a scatterlist.  There
    are two cases that trigger this bug. Switch to using a dynamically
    allocated buffer for one case and do not assign a NULL buffer in
    another case.
    
    Signed-off-by: default avatarLaura Abbott <labbott@redhat.com>
    Reviewed-by: default avatarMike Christie <mchristi@redhat.com>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    679fcae4