Make the SCSI device identification page (83h) EUI-64 and NAA
IDs configurable. If neither the eui64_id nor the naa_id sysfs
attribute has been set, export the first eight bytes of the
t10_dev_id as an EUI-64 ID. If the NAA ID but not the EUI-64 ID
has been set, report the NAA ID only. If both IDs have been set,
report both.
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5730 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Avoid that the checkpatch tool included in Linux kernel v3.16 reports the
following warning:
macros should not use a trailing semicolon
This patch does not change any functionality.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5724 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Introduce a new synchronization object, namely scst_cmd_threads.thr_lock,
to protect scst_cmd_threads.threads_list.
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5701 d57e44dd-8a1f-0410-8b47-8ef2f437770f
With CONFIG_BUG=y both BUG() and BUG_ON(1) halt the system. However,
with CONFIG_BUG=n BUG() halts the system but BUG_ON(1) not. To avoid
such subtleties, change BUG_ON(1) into BUG().
See also patch Josh Triplett, "bug: Make BUG() always stop the machine",
7 April 2014 (commit ID a4b5d580e07875f9be29f62a57c67fbbdbb40ba2).
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5618 d57e44dd-8a1f-0410-8b47-8ef2f437770f
SCST rejects removal of an access control group with one or more
sessions with error code -EBUSY. Make it easy to change this
behavior into forcibly closing sessions when an access control
group is removed.
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5608 d57e44dd-8a1f-0410-8b47-8ef2f437770f
The cpus_*() functions were deprecated via patch "cpumask:
introduce new API, without changing anything" (November 2008,
commit ID 2d3854a37e8b). Hence switch from the cpus_*() API to
the cpumask_*() API.
This patch has the intended side effect of not adding the "[key]"
property to cpumask sysfs attributes that contain the default
cpumask. The current code namely reads uninitialized bits on
systems where nr_cpu_ids < NR_CPUS because cpus_equal() compares
more bits than those that were set by cpumask_copy().
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5596 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Make sure that the definition of swap() is guarded by
"#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 29)" only instead
of "#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 28)" and
"#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 29)".
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5592 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Avoid that building the scst kernel module fails on RHEL 5 due to
a missing kvasprintf() implementation.
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5584 d57e44dd-8a1f-0410-8b47-8ef2f437770f
The lockdep_assert_held() macro is a convenient debugging tool.
However, it is inconvenient to surround each invocation of that
macro by an #ifdef/#endif pair. Hence make it easier to use this
macro with older kernel versions.
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5573 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Make the path of the file in which persistent reservation information
is stored configurable via sysfs.
Signed-off-by: Bart Van Assche <bvanassche@acm.org> with some improvements and fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5510 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Move the definition of scst_get_opcode_name() up such that it occurs
outside #ifndef CONFIG_SCST_PROC / #endif. See also r5491.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5505 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch makes the code that was added via r5479 build against kernel
version 2.6.38 and before.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5485 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Avoid that checkpatch reports the following warning message:
WARNING: please, no space before tabs
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5484 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Fix two instances of the following checkpatch errors:
ERROR: code indent should use tabs where possible
ERROR: spaces required around that ':' (ctx:VxW)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5483 d57e44dd-8a1f-0410-8b47-8ef2f437770f
It can happen, when a device added after blocking, so unblocking then
will make dev->block_count of the new device negative.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5468 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Fix the following checkpatch 3.14 warning:
Unnecessary space after function pointer name
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5436 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Avoid that checkpatch reports the following error message:
ERROR: return is not a function, parentheses are not required
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5398 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Scst_mutex intentially used directly in the sysfs handler, because
comming sysfs improvements will allow that.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5382 d57e44dd-8a1f-0410-8b47-8ef2f437770f