From: Douglas Gilbert <dgilbert@interlog.com>
To: linux-scsi@vger.kernel.org
Cc: martin.petersen@oracle.com, jejb@linux.vnet.ibm.com
Subject: [PATCH 0/9] scsi_debug: collection of additions
Date: Thu, 30 Dec 2021 21:08:20 -0500 [thread overview]
Message-ID: <20211231020829.29147-1-dgilbert@interlog.com> (raw)
The first patch is to address possible modprobe rmmod races.
The second patch adds READ_ONCE and WRITE_ONCE on several
high frequency variables.
See the headers of patches 3 and 4.
In patch 5 use different asc/ascq codes to distiguish between
and newly added LU and a reset on an existing LU.
In patch 6 add a no_rwlock module option to bypass the
read-write locks around user data reads and writes.
Patch 7 adds sdeb_sgl_copy_sgl, sdeb_sgl_compare_sgl_idx,
sdeb_sgl_compare_sgl and sdeb_sgl_memset functions for
performing sgl t0 sgl copy and compare operations currently
unsupported by scatterlist.h . This patch was originally
put forward as an enhancement of scatterlist.h but failed
to gain traction. So that patch is redirected to this driver
with the "sdeb_" added to each function. Compiling the
driver after this patch will result in warnings that those
newly introduced static functions are not used. Since LLDs
receive and send data "up" the stack via sgl_s, using
sgl_s as the storage medium for this driver bypasses one
level of conversions.
Patch 8 uses the new functions introduced in patch 7 to
change the internal store(s) used the this driver into
sgl_s rather than big vmalloc() allocations. The biggest
improvement is with the VERIFY(BYTCHK=1) performance
that went from about 20% slower than a copy operation
to 50% faster (up to 15 GB/s on my equipment). Before this
patch VERIFY(BYTCHK=1) needed a temporary, potentially
large, buffer for the incoming data-out transfer. The
COMPARE AND WRITE command also benefits from stores made
of sgl_s, and in addition it needs to know the index of
the first mismatched byte (if any).
Finally some issues have arisen in smartmontools with
SCSI log subpages. To aid is fixing this, the last patch
adds the driver's first log subpage (Environmental
reporting).
This patchset is based on lk 5.16.0-rc7 rather than MKP's
repository (based on rc1). Fixes have been added to this
driver between rc1 and rc7 that would break a single
patchset. So the most recent rc was chosen.
Douglas Gilbert (9):
scsi_debug: address races following module load
scsi_debug: strengthen defer_t accesses
scsi_debug: use task set full more
scsi_debug: refine sdebug_blk_mq_poll
scsi_debug: divide power on reset unit attention
scsi_debug: add no_rwlock parameter
scsi_debug: add sdeb_sgl_copy_sgl and friends
scsi_debug: change store from vmalloc to sgl
scsi_debug: add environmental reporting log subpage
drivers/scsi/Kconfig | 3 +-
drivers/scsi/scsi_debug.c | 1078 +++++++++++++++++++++++++++----------
2 files changed, 800 insertions(+), 281 deletions(-)
--
2.25.1
next reply other threads:[~2021-12-31 2:16 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-31 2:08 Douglas Gilbert [this message]
2021-12-31 2:08 ` [PATCH 1/9] scsi_debug: address races following module load Douglas Gilbert
2022-01-05 19:41 ` Bart Van Assche
2022-01-12 3:39 ` Luis Chamberlain
2021-12-31 2:08 ` [PATCH 2/9] scsi_debug: strengthen defer_t accesses Douglas Gilbert
2021-12-31 2:08 ` [PATCH 3/9] scsi_debug: use task set full more Douglas Gilbert
2021-12-31 2:08 ` [PATCH 4/9] scsi_debug: refine sdebug_blk_mq_poll Douglas Gilbert
2021-12-31 2:08 ` [PATCH 5/9] scsi_debug: divide power on reset unit attention Douglas Gilbert
2021-12-31 2:08 ` [PATCH 6/9] scsi_debug: add no_rwlock parameter Douglas Gilbert
2021-12-31 2:08 ` [PATCH 7/9] scsi_debug: add sdeb_sgl_copy_sgl and friends Douglas Gilbert
2021-12-31 2:08 ` [PATCH 8/9] scsi_debug: change store from vmalloc to sgl Douglas Gilbert
2022-01-05 9:28 ` Shinichiro Kawasaki
2021-12-31 2:08 ` [PATCH 9/9] scsi_debug: add environmental reporting log subpage Douglas Gilbert
-- strict thread matches above, loose matches on Subject: below --
2021-12-31 22:43 [PATCH 8/9] scsi_debug: change store from vmalloc to sgl kernel test robot
2022-01-07 6:57 ` Dan Carpenter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211231020829.29147-1-dgilbert@interlog.com \
--to=dgilbert@interlog.com \
--cc=jejb@linux.vnet.ibm.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.