Suppress the following warning:
WARNING: CPU: 0 PID: 6998 at scst/src/scst_copy_mgr.c:2672 scst_cm_update_dev+0xdc/0x110
This warning can be triggered during unregistration of a virtual device with
the following test case:
1. Change a parameter of the virtual device, e.g. the USN.
2. Delete the LUN.
That triggers the following sequence:
1. vdev_del_device()
2. scst_unregister_virtual_device()
3. scst_acg_del_lun()
4. cancel the work struct associated with vdev_inq_changed_fn().
5. visk_detach()
6. vdev_del_device() finishes.
vdev_inq_changed_fn() may get called after a LUN has been unregistered from
the copy manager and before device deletion finishes.
Reported-by: Gleb Chesnokov <Chesnokov.G@raidix.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9341 d57e44dd-8a1f-0410-8b47-8ef2f437770f
From the libiscsi source code:
readcapacity16(sd, &rc16_task, /*alloc_len=*/96, EXPECT_STATUS_GOOD);
Hence increase the limit from 32 to 128.
Fixes: dd467b0eda ("scst: Limit the size of READ CAPACITY buffers")
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9340 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Use a two digit revision number instead of a single digit revision number to
fix a lintian warning. Exclude .gitignore files from the source archive.
Copy the debhelper major version number into debian/compat instead of
hardcoding the compatibility level because the highest compatibility level
supported by Ubuntu 16.04 is 9 and because compatibility level 9 is considered
deprecated by Ubuntu 20.04.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9333 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Use shift operations instead of multiplication operations. See also commit
6258844d60 ("scst: fix overflows handling for tapes").
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9331 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Since the soft link scstadmin/scstadmin is under source control, do not
remove it while removing build artefacts. See also commit b3435fbdda
("debian/rules: Also clean the scstadmin/scstadmin soft link").
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9330 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Use a percpu_ref instead of one atomic counter per CPU. This patch
eliminates two atomic instructions from the command processing path.
This patch decreases performance for the following configurations
because the backported version of percpu_ref uses a single global
counter:
* RHEL 6.x / CentOS 6.x and before (maintenance ended on 2020-11-30).
* Upstream kernel version v3.10 and before.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9321 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Since the next patch will remove cpu_cmd_count, make this decision
independent of cpu_cmd_count.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9320 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Linux kernel commit 4e7b5671c6a8 ("block: remove i_bdev"; v5.11-rc1) removes
the i_bdev member of struct inode. Hence use blkdev_get_by_path() to open
block devices when the struct block_device pointer is needed instead of using
filp_open().
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9316 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch breaks the transactional properties of these functions but
makes it easier to port these functions to Linux kernel v5.10.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9315 d57e44dd-8a1f-0410-8b47-8ef2f437770f