From e1c8e072089177c2fc6b8a0990cbe5ef3c34e2d8 Mon Sep 17 00:00:00 2001 From: Vladislav Bolkhovitin Date: Mon, 25 Oct 2010 18:06:59 +0000 Subject: [PATCH] Don't clear UAs on reset git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2465 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- scst/src/scst_lib.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/scst/src/scst_lib.c b/scst/src/scst_lib.c index c8d60f5d5..22a42cd44 100644 --- a/scst/src/scst_lib.c +++ b/scst/src/scst_lib.c @@ -3422,11 +3422,16 @@ void scst_nexus_loss(struct scst_tgt_dev *tgt_dev, bool queue_UA) scst_clear_reservation(tgt_dev); +#if 0 /* Clearing UAs and last sense isn't required by SAM and it looks to be + * better to not clear them to not loose important events, so let's + * disable it. + */ /* With activity suspended the lock isn't needed, but let's be safe */ spin_lock_bh(&tgt_dev->tgt_dev_lock); scst_free_all_UA(tgt_dev); memset(tgt_dev->tgt_dev_sense, 0, sizeof(tgt_dev->tgt_dev_sense)); spin_unlock_bh(&tgt_dev->tgt_dev_lock); +#endif if (queue_UA) { uint8_t sense_buffer[SCST_STANDARD_SENSE_LEN]; @@ -6057,14 +6062,16 @@ void scst_process_reset(struct scst_device *dev, dev_tgt_dev_list_entry) { struct scst_session *sess = tgt_dev->sess; +#if 0 /* Clearing UAs and last sense isn't required by SAM and it + * looks to be better to not clear them to not loose important + * events, so let's disable it. + */ spin_lock_bh(&tgt_dev->tgt_dev_lock); - scst_free_all_UA(tgt_dev); - memset(tgt_dev->tgt_dev_sense, 0, sizeof(tgt_dev->tgt_dev_sense)); - spin_unlock_bh(&tgt_dev->tgt_dev_lock); +#endif spin_lock_irq(&sess->sess_list_lock);