From: Xiang Chen
Currently slots are allocated from queues in a round-robin fashion.
This causes a problem for internal commands in device mode. For this
mode, we should ensure that the internal abort command is the last
command seen in the host for that device. We can only ensure this when
we pl
From: Xiang Chen
Replace WARN_ON() with dev_warn() print when internal abort fails.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_main.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c
b/driv
From: Xiang Chen
Check ERR bit of status to decide whether there is something wrong with
initial register-D2H FIS. If error exists, PHY reset the channel to
restart OOB.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 10 ++
1 file chan
From: Xiang Chen
Add the function to set PHY min and max linkrate through
sysfs interface.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas.h | 3 +++
drivers/scsi/hisi_sas/hisi_sas_main.c | 12 +++--
drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 4
From: Xiang Chen
sas_scsi_find_task() only deals with return value
TMF_RESP_FUNC_FAILED/TMF_RESP_FUNC_SUCC/TMF_RESP_FUNC_COMPLETE of
query task. So for LLDD errors just return TMF_RESP_FUNC_FAILED.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_main.c |
This patchset introduces some misc bug fixes, improvements,
and new features to the HiSilicon SAS driver.
The new features include:
- ECC and AXI bus fatal error handling for v2 hw
- PHY (min and max) linkrate setting
John Garry (1):
hisi_sas: use atomic64_t for hisi_sas_device.running_req
Xia
From: Xiang Chen
There are many BROADCAST primitives generated by the host.
We are only interested in BROADCAST (CHANGE) primitives currently,
so only process this.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 8 +++-
1 file changed, 7 i
Sometimes the value of hisi_sas_device.running_req
would go negative unless we have the check for
running_req >= 0 before trying to decrement.
This is because using running_req is not thread-safe.
As such, the value for running_req may be actually incorrect,
so use atomic64_t instead.
Signed-off
From: Xiang Chen
When we form a wideport, we should use hardware PHY port_id instead
of sas_phy->id.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/hisi_sas/hisi_sas
From: Xiang Chen
Modify and add some SATA commands according to SATA protocol.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 14 --
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/hisi_sas/hisi_sas_v2_h
From: Xiang Chen
For ECC 1bit error, logic can recover it, so we only print
a warning.
For ECC multi-bit and AXI bus fatal error, we panic.
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 425 -
1 file changed, 4
From: Xiang Chen
Delete repeated configuration items for hisi_sas_device() when
we free a device. These items are now only set in
hisi_sas_dev_gone().
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 2 --
1 file changed, 2 deletions(-)
diff --
Hello,
It appears that a check_unmap kernel failure for the CISS driver was
introduced with kernel-4.9.0-0.rc2.git1.1.fc26. When booting this
kernel, or any newer kernel, I see the following:
[3.676658] HP CISS Driver (v 3.6.26)
0m] Reached target System Initialization.
Startin
https://bugzilla.kernel.org/show_bug.cgi?id=187221
Bug ID: 187221
Summary: HPSA resetting logical / reset logical
Product: IO/Storage
Version: 2.5
Kernel Version: 4.4.x, 4.8.x
Hardware: Intel
OS: Linux
Tree: M
https://bugzilla.kernel.org/show_bug.cgi?id=187231
Bug ID: 187231
Summary: kernel panic during hpsa MSI plus tg3 MSI
Product: IO/Storage
Version: 2.5
Kernel Version: 4.8.6
Hardware: All
OS: Linux
Tree: Mainlin
https://bugzilla.kernel.org/show_bug.cgi?id=187231
Don changed:
What|Removed |Added
CC||don.br...@microsemi.com
--- Comment #1 from Don -
https://bugzilla.kernel.org/show_bug.cgi?id=187231
--- Comment #2 from Patrick Schaaf ---
Thanks Don for the reaction!
Right now, on the box that had that panic and the worst resetting/reset issues
(see the other bug I linked), I'm back to 3.14.79, and want to stay there for
another 24 to 36 hou
On Fri, 2016-11-04 at 09:33 -0700, himanshu.madh...@cavium.com wrote:
...
> @@ -2349,6 +2349,17 @@ uint32_t qla2x00_isp_reg_stat(struct qla_hw_data *ha)
> return atomic_read(&vha->loop_state) == LOOP_READY;
> }
>
> +static void qla2x00_destroy_mbx_wq(struct qla_hw_data *ha)
> +{
> + st
https://bugzilla.kernel.org/show_bug.cgi?id=187231
--- Comment #3 from Don ---
(In reply to Patrick Schaaf from comment #2)
> Thanks Don for the reaction!
>
> Right now, on the box that had that panic and the worst resetting/reset
> issues (see the other bug I linked), I'm back to 3.14.79, and
It seems like the whole damn driver should just use threaded interrupts.
Of course it's a giant beast and not just the iSCSI one. But even
if we don't go all the way I'd much prefer workqueues. kthread work
is simply the worst API ever and I'd prefer to not have it proliferate.
--
To unsubscribe
From: Colin Ian King
Trivial fix to spelling mistake "Obselete" to "Obsolete"
in error message and also turn multi-line text into one
line.
Signed-off-by: Colin Ian King
---
drivers/target/target_core_pr.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/target/tar
On Mon, 7 Nov 2016, Christoph Hellwig wrote:
> It seems like the whole damn driver should just use threaded interrupts.
> Of course it's a giant beast and not just the iSCSI one. But even
> if we don't go all the way I'd much prefer workqueues. kthread work
> is simply the worst API ever and I'd
On Mon, Nov 07, 2016 at 05:31:03PM +0100, Thomas Gleixner wrote:
> On Mon, 7 Nov 2016, Christoph Hellwig wrote:
>
> > It seems like the whole damn driver should just use threaded interrupts.
> > Of course it's a giant beast and not just the iSCSI one. But even
> > if we don't go all the way I'd m
From: Colin Ian King
Trivial fix to spelling mistake "operatio" to "operation"
in critical error message
Signed-off-by: Colin Ian King
---
drivers/scsi/dpt_i2o.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/dpt_i2o.c b/drivers/scsi/dpt_i2o.c
index 21c8d21..d
On Fri, 2016-11-04 at 09:33 -0700, himanshu.madh...@cavium.com wrote:
> From: Michael Hernandez
>
> Tell the SCSI layer how many hardware queues we have based on the
> number of max queue pairs created. The number of max queue pairs
> created will depend on number of MSI X vector count or number
On 2016-11-07 17:38:48 [+0100], Christoph Hellwig wrote:
> You're right it does - between the incorrect subject and the fact
> that it still keeps the linked list of items arounds instead of fully
> using the workqueue infrastructure I was a bit confused before my
> first coffee this morning. Same
On Mon, Nov 07, 2016 at 05:46:29PM +0100, Sebastian Andrzej Siewior wrote:
> sorry for the confusion in the subject. If I remember correctly you said
> that we may not have enough room for a larger / work_struct struct and I
> should keep the list for now.
But that was for libfc where it only has
On 2016-11-07 17:48:46 [+0100], Christoph Hellwig wrote:
> On Mon, Nov 07, 2016 at 05:46:29PM +0100, Sebastian Andrzej Siewior wrote:
> > sorry for the confusion in the subject. If I remember correctly you said
> > that we may not have enough room for a larger / work_struct struct and I
> > should
On 11/07/2016 04:44 AM, Johnny Bieren wrote:
Hello,
It appears that a check_unmap kernel failure for the CISS driver was introduced
with kernel-4.9.0-0.rc2.git1.1.fc26. When booting this kernel, or any newer
kernel, I see the following:
[3.676658] HP CISS Driver (v 3.6.26)
0m] Reached t
Hi,
I'm kicking this old thread because I don't think this ever got
resolved. I wish I had more info, but it seems to involve target
specific behavior that hasn't come up in our test labs.
So what can I do at this point to help resolve this?
On Sun, Nov 15, 2015 at 12:10:48PM +0200, Or Gerlitz
Currently the iSCSI transport class synchronises target scanning and
unbinding with a host level mutex. For multi-session hosts (offloading
iSCSI HBAs) connecting to storage arrays that may implement one
target-per-lun, this can result in the target scan work for hundreds of
sessions being seriali
On 11/07/2016 04:15 PM, Chris Leech wrote:
> Hi,
>
> I'm kicking this old thread because I don't think this ever got
> resolved. I wish I had more info, but it seems to involve target
> specific behavior that hasn't come up in our test labs.
Thanks very much for reopening this thread! We have th
Retrieve maximum number of RPMB frames that can be
in a single request.
Currently the limitations is provided only for writes
via reliable_wr_cnt API.
V7: New in the series
Signed-off-by: Tomas Winkler
Signed-off-by: Alexander Usyskin
---
drivers/scsi/ufs/ufs.h| 6 ++
drivers/scsi/ufs
Register eMMC RPMB partition with the RPMB subsystem and provide
implementation for the RPMB access operations abstracting
actual multi step process.
V2: resend
V3: commit message fix
V4: Kconfig: use select RPMB to ensure valid configuration
Switch back to main area after RPMB access
V5: Reva
Add simple RPMB host testing tool. It can be used
to program key, write and read data block, and retrieve
write counter.
V2: resend
V3: fix missing objtool
V4: add verbose option
V5: 1. Adjust to the new API.
2. Exercise both request and sequence ioctls.
V6: 1. Add includes to openssl/rand.h a
Register UFS RPMB LUN with the RPMB subsystem and provide
implementation for the RPMB access operations. RPMB partition is
accessed via a sequence of security protocol in and security protocol
out commands with UFS specific parameters. This multi step process is
abstracted into 4 basic RPMB command
Add rpmb documentatin in sphinx format.
V7: new in the series
Signed-off-by: Tomas Winkler
---
Documentation/index.rst | 1 +
Documentation/rpmb/conf.py | 5 ++
Documentation/rpmb/index.rst | 18 ++
Documentation/rpmb/introduction.rst | 1
The RPMB partition simulation device is a virtual device that
provides simulation of the RPMB protocol and use kernel memory
as storage.
Be aware it doesn't promise any real security. This driver is
suitable only for testing of the RPMB subsystem or RPMB
applications prior to RPMB key provisioning
The user space API is achieved via two synchronous IOCTLs.
Simplified one, RPMB_IOC_REQ_CMD, were read result cycles is performed
by the framework on behalf the user and second, RPMB_IOC_SEQ_CMD where
the whole RPMB sequence including RESULT_READ is supplied by the caller.
The latter is intended fo
Add attribute type that displays underlay storage type technology
EMMC, UFS, and attribute id, that displays underlay storage device id.
For EMMC this would be content of CID and for UFS serial number from
the device descriptor.
V2: resend
V3: set kernel version to 4.7
V4: update target date to Ma
For eMMC the block count of the RPMB read operation is not indicated in
the original RPMB Data Read Request packet.
This might be different then the implementation of other protocol
standards.
This patch implements a fixup for this behavior.
V6: new in the series
V7: resend
Signed-off-by: Tomas W
On Mon, Nov 07, 2016 at 09:53:12PM +0200, Tomas Winkler wrote:
> Register UFS RPMB LUN with the RPMB subsystem and provide
> implementation for the RPMB access operations. RPMB partition is
> accessed via a sequence of security protocol in and security protocol
> out commands with UFS specific para
Few storage technologies such is EMMC, UFS, and NVMe support RPMB
hardware partition with common protocol and frame layout.
The RPMB partition cannot be accessed via standard block layer,
but by a set of specific commands: WRITE, READ, GET_WRITE_COUNTER,
and PROGRAM_KEY.
Such a partition provides a
V2: resend
V3: add more verbose description
V4: resend
V5: adjust date and kernel version
V6: adjust date and kernel version
V7: adjust date and kernel version
Signed-off-by: Tomas Winkler
---
Documentation/ABI/testing/sysfs-class-rpmb | 20
MAINTAINERS
Few storage technologies such is EMMC, UFS, and NVMe support RPMB
hardware partition with common protocol and frame layout.
The RPMB partition cannot be accessed via standard block layer, but by a
set of specific commands: WRITE, READ, GET_WRITE_COUNTER, and
PROGRAM_KEY.
Such a partition provides a
On Mon, Nov 07, 2016 at 06:04:21PM +0100, Sebastian Andrzej Siewior wrote:
> So we keep things as they are right now or are we getting also rid of
> the internal list? This was tested by Johannes and Chad (claimed to do
> testing)
IFF the patches actually are tested as-is let's get them in. I don
>
> On Mon, Nov 07, 2016 at 09:53:12PM +0200, Tomas Winkler wrote:
> > Register UFS RPMB LUN with the RPMB subsystem and provide
> > implementation for the RPMB access operations. RPMB partition is
> > accessed via a sequence of security protocol in and security protocol
> > out commands with UFS
If a command is aborted in the kernel but not in the adapter, it might be
considered complete and its DMA memory released, but it is still alive in
the adapter, which will trigger an invalid DMA access upon its completion
(in the DMA operations to deliver the command response to the driver).
On po
When the driver is unloading, in qla2x00_remove_one(), there is a single
call/point in time to abort ongoing commands, qla2x00_abort_all_cmds(),
which is still several steps away from the call to scsi_remove_host().
If more commands continue to arrive and be processed during that interval,
when th
This patchset addresses a couple of errors that might happen during
PCI device remove (e.g., PCI hotplug, PowerVM DLPAR), which prevent
the successful removal and re-addition of the adapter to the system,
and cause an oops and/or invalid DMA access (triggers an EEH event).
It allowed several cycle
On Fri, 2016-11-04 at 12:17 -0600, Bart Van Assche wrote:
> On 11/04/2016 07:47 AM, James Bottomley wrote:
> > You know after
> >
> > if (device_remove_file_self(dev, attr))
> >
> > returns true that s_active is held and also that KERNFS_SUICIDAL is
> > set on the node, so the non-self remove pa
On Mon, Nov 07, 2016 at 07:27:38PM +, Winkler, Tomas wrote:
> I value your opinion but I'm not responsible for inventing RPMB
> and/or its implementation storage devices (eMMC, UFC, NVMe), it's pretty
> much done deal out there in the wild.
> I'm just trying to provide common API above it.
The SCSI core holds scan_mutex around SCSI device addition and
removal operations. sysfs serializes attribute read and write
operations against attribute removal through s_active. Avoid that
grabbing scan_mutex during self-removal of a SCSI device triggers
a deadlock by not calling __kernfs_remove(
This patch adds support for data path and TMF handling.
Signed-off-by: Nilesh Javali
Signed-off-by: Adheer Chandravanshi
Signed-off-by: Chad Dupuis
Signed-off-by: Saurav Kashyap
Signed-off-by: Arun Easi
Signed-off-by: Manish Rangankar
---
drivers/scsi/qedi/qedi_fw.c| 1272 ++
This patch adds support for iscsi_transport LLD Login,
Logout, NOP-IN/NOP-OUT, Async, Reject PDU processing
and Firmware async event handling support.
Signed-off-by: Nilesh Javali
Signed-off-by: Adheer Chandravanshi
Signed-off-by: Chad Dupuis
Signed-off-by: Saurav Kashyap
Signed-off-by: Arun E
On Mon, Nov 07, 2016 at 04:32:18PM -0800, Bart Van Assche wrote:
> The SCSI core holds scan_mutex around SCSI device addition and
> removal operations. sysfs serializes attribute read and write
> operations against attribute removal through s_active. Avoid that
> grabbing scan_mutex during self-rem
Use pci_alloc_irq_vectors and drop the hand-crafted
interrupt affinity routines.
Signed-off-by: Hannes Reinecke
Cc: Adaptec OEM Raid Solutions
---
drivers/scsi/aacraid/aacraid.h | 1 -
drivers/scsi/aacraid/comminit.c | 10 +++---
drivers/scsi/aacraid/commsup.c | 25 +-
Use pci_alloc_irq_vectors and drop the hand-crafted
interrupt affinity routines.
Signed-off-by: Hannes Reinecke
Cc: Don Brace
---
drivers/scsi/hpsa.c | 72 +++--
drivers/scsi/hpsa.h | 1 -
2 files changed, 26 insertions(+), 47 deletions(-)
diff
On Mon, Nov 07, 2016 at 08:10:25PM +0100, Christoph Hellwig wrote:
> On Mon, Nov 07, 2016 at 06:04:21PM +0100, Sebastian Andrzej Siewior wrote:
> > So we keep things as they are right now or are we getting also rid of
> > the internal list? This was tested by Johannes and Chad (claimed to do
> > te
Some UFS host controller may need to configure some things
before any transfer request is issued.
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 2 ++
drivers/scsi/ufs/ufshcd.h | 10 ++
2 files changed, 12 insertions(+)
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/
Some UFS host controllers may not report a result of
UIC command completion properly.
In such cases, they should get the result from UIC directly
if their architectures support that.
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 27 +++
drivers/scsi/ufs/ufshc
Some UFS host controllers may think
granularitys of PRDT length and offset as bytes, not double words.
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 24 +++-
drivers/scsi/ufs/ufshcd.h | 2 ++
2 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/driver
Some UFS host controllers may clear a transfer request slot
by setting an associated bit in UTLRCLR/UTMLRCLR to 1, not 0.
That's opposite to what UFS spec decribes.
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 32
drivers/scsi/ufs/ufshcd.h | 1 +
2
Some host controller might not initialize itself
by setting "Host Controller Enable" to 1.
They should do this to reset UIC.
In such cases, 'DME reset' and 'DME enable' are required
for normal subsequent operations.
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 44 ++
Some UFS host controller may need to configure some things
before any task management request is issued
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 1 +
drivers/scsi/ufs/ufshcd.h | 10 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/
Some UFS host controller may need to configure some things
around hibern8 enter/exit
Signed-off-by: Kiwoong Kim
---
drivers/scsi/ufs/ufshcd.c | 10 --
drivers/scsi/ufs/ufshcd.h | 10 ++
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/ufs/ufshcd.c b/dr
66 matches
Mail list logo