On Fri, Dec 13, 2013 at 11:33:11AM +0530, Rashika Kheria wrote:
This patch marks the function mpt_SoftResetHandler() as static in mptbase.c
because it is not used outside this file.
Thus, it also eliminates the following warning in fusion/mptbase.c:
drivers/message/fusion/mptbase.c:7011:1:
On Fri, Dec 13, 2013 at 11:36:54AM +0530, Rashika Kheria wrote:
This patch marks the function mptscsih_quiesce_raid() as static in
fusion/mptspi.c because it is not used outside this function.
Thus, it also eliminates the following warning in fusion/mptspi.c:
On Fri, Dec 13, 2013 at 11:40:35AM +0530, Rashika Kheria wrote:
This patch marks the function mptsas_refreshing_device_handles(),
mptsas_expander_add() and mptsas_shutdown() as static in fusion/mptsas.c
because they are not used outside this file.
Thus, it also eliminates the following
On Thu, Dec 12, 2013 at 05:04:31PM -0500, Alan Stern wrote:
On Wed, 11 Dec 2013, Sarah Sharp wrote:
Hi Hans,
I've been testing the UAS code you sent a pull request for against
3.13-rc1, and I've run into a rather nasty issue with USB disconnect.
I ran some tests with a USB 3.0
On Fri, 13 Dec 2013, Sarah Sharp wrote:
Given the way things work now, I suspect these warnings are truly
harmless. We could simply get rid of the WARN in sysfs_remove_group.
The alternative is to call device_del for SCSI targets earlier on, such
as when their hosts are
Hello, guys.
(cc'ing Greg)
On Fri, Dec 13, 2013 at 01:19:36PM -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, Sarah Sharp wrote:
Given the way things work now, I suspect these warnings are truly
harmless. We could simply get rid of the WARN in sysfs_remove_group.
The alternative
On Fri, Dec 13, 2013 at 01:19:36PM -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, Sarah Sharp wrote:
Given the way things work now, I suspect these warnings are truly
harmless. We could simply get rid of the WARN in sysfs_remove_group.
The alternative is to call device_del for
On Fri, 2013-12-13 at 13:33 -0500, Tejun Heo wrote:
Hello, guys.
(cc'ing Greg)
On Fri, Dec 13, 2013 at 01:19:36PM -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, Sarah Sharp wrote:
Given the way things work now, I suspect these warnings are truly
harmless. We could simply get
On Fri, 2013-12-13 at 11:18 -0800, James Bottomley wrote:
On Fri, 2013-12-13 at 13:33 -0500, Tejun Heo wrote:
Hello, guys.
(cc'ing Greg)
On Fri, Dec 13, 2013 at 01:19:36PM -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, Sarah Sharp wrote:
Given the way things work now, I
On Fri, 13 Dec 2013, James Bottomley wrote:
I wasn't clear on the reason for that problem. Does it also arise from
late device_del for scsi_target? I could try to change the way that
works, if anybody (Hans?) would like to test it.
While the recent sysfs changes made this issue
Hi James,
On 12/13/2013 09:03 PM, James Bottomley wrote:
On Fri, 2013-12-13 at 11:18 -0800, James Bottomley wrote:
On Fri, 2013-12-13 at 13:33 -0500, Tejun Heo wrote:
Hello, guys.
(cc'ing Greg)
On Fri, Dec 13, 2013 at 01:19:36PM -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, Sarah Sharp
On Thu, 2013-11-14 at 12:09 +0100, Hans de Goede wrote:
Hi All,
I hope linux-scsi is the right list for this, if not let me know.
I've been working on getting the uas (Usb Attached Scsi) driver into
working shape for the last 3 weeks, so that it can be enabled in 3.14 .
My latest tests
From: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/scsi_transport_fc.c |1 +
include/scsi/scsi_transport_fc.h |1 +
2 files changed, 2 insertions(+), 0 deletions(-)
diff
From: Chad Dupuis chad.dup...@qlogic.com
Allow for the capture of a firmware dump but have a sysfs node
(allow_cna_fw_dump) to allow the feature to be enabled/disabled dynamically.
The default is off.
Signed-off-by: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Saurav Kashyap
From: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_attr.c | 61 ++
drivers/scsi/qla2xxx/qla_bsg.c | 12 ++-
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
---
drivers/scsi/qla2xxx/qla_mr.c | 12 ++--
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_mr.c b/drivers/scsi/qla2xxx/qla_mr.c
From: Atul Deshmukh atul.deshm...@qlogic.com
Signed-off-by: Atul Deshmukh atul.deshm...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_nx2.c |2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_nx2.c
From: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_mr.c | 10 +-
drivers/scsi/qla2xxx/qla_mr.h | 26 +-
2 files changed, 18
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_def.h | 24
drivers/scsi/qla2xxx/qla_mr.c | 14 --
drivers/scsi/qla2xxx/qla_os.c |1 -
3 files changed,
From: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_mr.c |3 ++-
drivers/scsi/qla2xxx/qla_mr.h |3 +++
2 files changed, 5 insertions(+), 1 deletions(-)
From: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_iocb.c | 11 +--
drivers/scsi/qla2xxx/qla_mr.c | 12
drivers/scsi/qla2xxx/qla_mr.h
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
---
drivers/scsi/qla2xxx/qla_version.h |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_version.h
From: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_isr.c | 46 ++--
1 files changed, 30 insertions(+), 16 deletions(-)
diff --git
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_os.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index
From: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Armen Baloyan armen.balo...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_def.h |2 +-
drivers/scsi/qla2xxx/qla_mr.c |3 +++
2 files changed, 4 insertions(+), 1 deletions(-)
From: Atul Deshmukh atul.deshm...@qlogic.com
Signed-off-by: Atul Deshmukh atul.deshm...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_nx2.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_nx2.c
Hi James,
Please apply the following patches to the scsi tree at your earliest
convenience for inclusion in the next mainline merge window.
Note: This patch set contains a change to the FC transport (10/20)
as one of the patches in this patch set is dependent on that change.
Thanks,
~Saurav
From: Chad Dupuis chad.dup...@qlogic.com
Tell the mid-layer that number of commands we can queue is the available
resources we have minus a small amount for internal commands.
Signed-off-by: Chad Dupuis chad.dup...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_mr.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_mr.c b/drivers/scsi/qla2xxx/qla_mr.c
index
From: Joe Carnuccio joe.carnuc...@qlogic.com
Signed-off-by: Joe Carnuccio joe.carnuc...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_init.c |5 +
1 files changed, 1 insertions(+), 4 deletions(-)
diff --git
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_mr.c | 25 +
drivers/scsi/qla2xxx/qla_mr.h |4
2 files changed, 9 insertions(+), 20 deletions(-)
diff --git
Signed-off-by: Giridhar Malavali giridhar.malav...@qlogic.com
Signed-off-by: Saurav Kashyap saurav.kash...@qlogic.com
---
drivers/scsi/qla2xxx/qla_mr.c | 15 ---
1 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_mr.c
Hi Bart,
The fix (http://marc.info/?l=linux-scsim=138696701824443w=2) for this
issue is submitted today.
~Saurav
Hello,
Apparently trying to load the qla2xxx kernel module with parameter
ql2xmultique_tag=1 triggers a kernel oops. This is 100% reproducible
with at least kernel versions 3.11.8
On Fri, 13 Dec 2013, James Bottomley wrote:
Actually, I think I have this figured out. There's a thinko in one of
the scsi_target_reap() cases. The original (and still existing) problem
with targets is that nothing creates them and nothing destroys them, so,
while we could rely on the
On Fri, Dec 13, 2013 at 12:03:19PM -0800, James Bottomley wrote:
Actually, I think I have this figured out. There's a thinko in one of
the scsi_target_reap() cases. The original (and still existing) problem
with targets is that nothing creates them and nothing destroys them, so,
while we
On Fri, 2013-12-13 at 16:06 -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, James Bottomley wrote:
Actually, I think I have this figured out. There's a thinko in one of
the scsi_target_reap() cases. The original (and still existing) problem
with targets is that nothing creates them and
Hi,
On 12/13/2013 09:03 PM, James Bottomley wrote:
snip
Actually, I think I have this figured out. There's a thinko in one of
the scsi_target_reap() cases. The original (and still existing) problem
with targets is that nothing creates them and nothing destroys them, so,
while we could rely
On Wed, 2013-11-20 at 11:22 -0800, Nicholas A. Bellinger wrote:
On Wed, 2013-11-20 at 08:44 +0100, Hannes Reinecke wrote:
On 11/20/2013 01:06 AM, Nicholas A. Bellinger wrote:
On Tue, 2013-11-19 at 15:42 -0800, Nicholas A. Bellinger wrote:
Hey Hannes!
On Tue, 2013-11-19 at 09:07
Configfs is still using the memory until release() is called, so it's not
safe to free it in drop_link().
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_fabric_configfs.c | 10 +-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git
'force' parameter is not used.
tpg parameter is not needed, since we have acl-se_tpg.
Signed-off-by: Andy Grover agro...@redhat.com
---
Documentation/target/tcm_mod_builder.py |2 +-
drivers/infiniband/ulp/srpt/ib_srpt.c|2 +-
drivers/scsi/qla2xxx/tcm_qla2xxx.c |
It's clearer to refer to pointers to the struct se_lun as lun and the
actual number itself as unpacked_lun.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c | 16
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git
We want to be freeing the port here, not freeing the lun.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_fabric_configfs.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/target/target_core_fabric_configfs.c
lun-lun_ref is also initialized in core_tpg_post_addlun, so it doesn't
need to be done in core_tpg_setup_virtual_lun0.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_tpg.c |4
1 files changed, 0 insertions(+), 4 deletions(-)
diff --git
Hi Nicholas,
This patchset uses krefs to refcount structures shared across threads.
LIO is full of these because configfs-based configuration actions can
be removing an object, even while that object is being used by a SCSI
command.
Using kref to free the struct on whichever thread drops the
Indicate support for hierarchical LUN addressing.
Set address method field in each LUN reported by REPORT LUNS to 1, in
accordance with SCSI SAM specs.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_spc.c |8 ++--
include/target/target_core_base.h |4
Don't call fabric_drop_tpg from configfs release(), just lower the
refcount, and call fabric_drop_tpg when refcount goes to zero.
We don't need cpu_relax because core_tpg_deregister will only be called
after we know there is no PR use of this tpg (step 4 below):
1) configfs drop_item
core_tpg_del_initiator_node_acl is now safe to call with spinlocks, since
it no longer potentially sleeps.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_tpg.c | 10 --
drivers/target/target_core_transport.c | 17 ++---
Allocating an array of pointers, not the objects themselves. These two
sites now match all the other sites.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_configfs.c|2 +-
drivers/target/target_core_fabric_configfs.c |2 +-
2 files changed, 2
In fabrics' drop_nodeacl function, do not kfree the nacl. We are
now calling fabrics' tpg_release_fabric_acl later when its refcount
goes to zero, which will kfree it.
Signed-off-by: Andy Grover agro...@redhat.com
---
Documentation/target/tcm_mod_builder.py |1 -
Here are some instances where we're looping, but then dropping the
spinlock around the loop in the loop, because we need to be able to
sleep in the calls. Since everything is refcounted now, this should no
longer be needed and we can just hold the locks the whole time.
Signed-off-by: Andy Grover
core_dev_del_lun needs no return value. Also change it to take a se_lun*
instead of the unpacked lun.
Rename core_tpg_pre_dellun to core_tpg_free_lun, and post_dellun to
remove_lun. Swap the order they are called, and hold off on setting
lun_status to STATUS_FREE until the end of free_lun.
All further loops will still fail the conditional so just bail right
away.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_spc.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/target/target_core_spc.c
lun-lun_tpg should always be set.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c | 17 +++--
drivers/target/target_core_internal.h |6 ++
drivers/target/target_core_tpg.c |4 ++--
3 files changed, 11 insertions(+), 16
Wasn't getting release called when I expected, so punted and went down
to krefs. Much simpler.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c|5 ++---
drivers/target/target_core_internal.h | 10 ++
drivers/target/target_core_tpg.c |
Although the port also has a tpg pointer, if there's no port to link
(lun-lun_sep is NULL) then we can't get to it. So we need one in se_lun.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_tpg.c |2 ++
include/target/target_core_base.h |1 +
2 files
Especially since it's actually a device.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_internal.h |2 +-
drivers/target/target_core_tpg.c |4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/target/target_core_internal.h
Use the kernel's std kref for refcounting.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c | 12 ++--
drivers/target/target_core_internal.h | 10 ++
drivers/target/target_core_pr.c | 12
Not needed.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c |1 -
drivers/target/target_core_fabric_configfs.c | 11 ---
drivers/target/target_core_tpg.c |2 --
include/target/target_core_base.h|4
pre is really an allocation function. The only time it isn't called is
for virtual_lun0, which is statically allocated. Renaming that to alloc
lets the other function not need to be post, and just be called
core_tpg_add_lun.
Signed-off-by: Andy Grover agro...@redhat.com
---
Since everything's a list_head, naming it _node makes it clearer it's
to put the struct on a list, not a list head itself.
Rename ua_nacl_list to ua_nacl_node
Rename alua_port_list to alua_port_node
Rename lu_gp_mem_list to lu_gp_mem_node
Rename tg_pt_gp_mem_list to tg_pt_gp_mem_node
Rename
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c | 12 +++---
drivers/target/target_core_internal.h | 12 ++
drivers/target/target_core_pr.c | 38
drivers/target/target_core_tpg.c |2 +-
See target_stat_setup_port_default_groups, we need a 4 element array.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_fabric_configfs.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/target/target_core_fabric_configfs.c
Initialized but not used.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_ua.c |1 -
include/target/target_core_base.h |1 -
2 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/target/target_core_ua.c b/drivers/target/target_core_ua.c
Use kref to handle reference counting.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_alua.c | 23 ++-
include/target/target_core_base.h |2 +-
2 files changed, 15 insertions(+), 10 deletions(-)
diff --git
Use kref to handle reference counting.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_alua.c | 39 +---
include/target/target_core_base.h |2 +-
2 files changed, 19 insertions(+), 22 deletions(-)
diff --git
Free struct when kref becomes 0.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_pr.c | 99 +++-
include/target/target_core_base.h |2 +-
2 files changed, 42 insertions(+), 59 deletions(-)
diff --git
Instead of an array, use a rbtree. Less memory use on average, and
can allow 255 entries. We go from O(1) to O(log n) on lookups. If this
shows up on profiling (it won't) then transition to other kernel lookup
methods is straightforward from here.
Change core_disable_device_list_for_node to be
Use kref to handle reference counting
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_alua.c | 37 -
include/target/target_core_base.h |2 +-
2 files changed, 21 insertions(+), 18 deletions(-)
diff --git
As with previous commit, this results in less average memory use, and
allows lun count to no longer be restrained by the array size.
Remove array_free and array_zalloc.
For some reason, sbp fabric needs core_search lun, so export it for now.
Remove core_alloc_lun, it duplicates
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_alua.c | 24 +++-
include/target/target_core_base.h |2 +-
2 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/drivers/target/target_core_alua.c
b/drivers/target/target_core_alua.c
Keep locks closer to things they need to lock.
sparse annotation no longer needed.
Signed-off-by: Andy Grover agro...@redhat.com
---
drivers/target/target_core_device.c | 10 +++---
1 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/drivers/target/target_core_device.c
On Fri, 13 Dec 2013, James Bottomley wrote:
On Fri, 2013-12-13 at 16:06 -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, James Bottomley wrote:
Actually, I think I have this figured out. There's a thinko in one of
the scsi_target_reap() cases. The original (and still existing) problem
On Fri, 2013-12-13 at 19:48 -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, James Bottomley wrote:
On Fri, 2013-12-13 at 16:06 -0500, Alan Stern wrote:
On Fri, 13 Dec 2013, James Bottomley wrote:
Actually, I think I have this figured out. There's a thinko in one of
the
On Fri, 13 Dec 2013, James Bottomley wrote:
Sorry, but you're wrong. starget-reap_ref is _not_ incremented every
time we add a device to the target. That's one of the things we need to
fix.
Well, then we would have a pretty astonishing cockup in the code. The
found case of
This patch eliminates the reap_ref and replaces it with a proper kref.
On last put of this kref, the target is removed from visibility in
sysfs. The final call to scsi_target_reap() for the device is done from
__scsi_remove_device() and only if the device was made visible. This
ensures that the
On Fri, 13 Dec 2013, James Bottomley wrote:
This patch eliminates the reap_ref and replaces it with a proper kref.
On last put of this kref, the target is removed from visibility in
sysfs. The final call to scsi_target_reap() for the device is done from
__scsi_remove_device() and only if the
On 12/13/13 21:48, Saurav Kashyap wrote:
The fix (http://marc.info/?l=linux-scsim=138696701824443w=2) for this
issue is submitted today.
Thanks for addressing this issue quickly. I will give the patch a try.
Bart.
--
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the
77 matches
Mail list logo