Alexander Gordeev | 21 Sep 15:19 2014
Picon

[PATCH RESEND v3 0/6] AHCI: Optimize interrupt processing

As per Tejun's feedback I am sending v3.

Changes since v2:
  - single patch split in a series;
  - benchmarking statistics reworded;
  - HOST_IRQ_STAT reg optimization added (patch 6);

Cc: linux-ide <at> vger.kernel.org

Alexander Gordeev (6):
  AHCI: Cleanup checking of multiple MSIs/SLM modes
  AHCI: Move host activation code into ahci_host_activate()
  AHCI: Make few function names more descriptive
  AHCI: Get rid of redundant arg to ahci_handle_port_interrupt()
  AHCI: Optimize single IRQ interrupt processing
  AHCI: Do not read HOST_IRQ_STAT reg in multi-MSI mode

 drivers/ata/acard-ahci.c       |   3 +-
 drivers/ata/ahci.c             | 101 +++++++++++++++++++++++------------
 drivers/ata/ahci.h             |  10 ++--
 drivers/ata/libahci.c          | 117 +++++++++++++++++------------------------
 drivers/ata/libahci_platform.c |   3 +-
 5 files changed, 123 insertions(+), 111 deletions(-)

--

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo <at> vger.kernel.org
(Continue reading)

Alexander Gordeev | 19 Sep 10:25 2014
Picon

[PATCH v3 6/5] AHCI: Do not read HOST_IRQ_STAT register in multi-MSI mode

As described in AHCI v1.0 specification chapter 10.6.2.2
"Multiple MSI Based Messages" generation of interrupts
is not controlled through the HOST_IRQ_STAT register.

Considering MMIO access is expensive remove unnecessary
reading and writing of HOST_IRQ_STAT register.

Further, serializing access to the host data is no longer
needed and the interrupt service routine can avoid competing
on the host lock.

Signed-off-by: Alexander Gordeev <agordeev <at> redhat.com>
Suggested-by: "Jiang, Dave" <dave.jiang <at> intel.com>
Cc: linux-ide <at> vger.kernel.org
---
 drivers/ata/ahci.h    |  1 +
 drivers/ata/libahci.c | 54 ++++++++-------------------------------------------
 2 files changed, 9 insertions(+), 46 deletions(-)

diff --git a/drivers/ata/ahci.h b/drivers/ata/ahci.h
index c12f590..b8e117a 100644
--- a/drivers/ata/ahci.h
+++ b/drivers/ata/ahci.h
 <at>  <at>  -305,6 +305,7  <at>  <at>  struct ahci_port_priv {
 	unsigned int		ncq_saw_dmas:1;
 	unsigned int		ncq_saw_sdb:1;
 	u32			intr_status;	/* interrupts to handle */
+	spinlock_t		intr_lock;	/* protects intr_status */
 	spinlock_t		lock;		/* protects parent ata_port */
 	u32 			intr_mask;	/* interrupts to enable */
(Continue reading)

Alexander Gordeev | 18 Sep 11:58 2014
Picon

Re: [PATCH v2 0/5] AHCI: Optimize interrupt processing

On Wed, Sep 17, 2014 at 05:41:44PM +0200, Alexander Gordeev wrote:
> Hello,
> 
> As per Tejun's feedback I am sending v2.

This should have been v3, not v2.
Please, disregard this series if you see it.

Thanks!

> Changes since v1:
>   - single patch split in a series of 5;
>   - changelog for patch 5 reworded;
> 
> Cc: linux-ide <at> vger.kernel.org
> 
> Alexander Gordeev (5):
>   AHCI: Cleanup checking of multiple MSIs/SLM modes
>   AHCI: Move host activation code into ahci_host_activate()
>   AHCI: Make some function names more descriptive
>   AHCI: Get rid of a redundant parameter to a function
>   AHCI: Optimize interrupt processing
> 
>  drivers/ata/acard-ahci.c       |  3 +-
>  drivers/ata/ahci.c             | 99 +++++++++++++++++++++++++++---------------
>  drivers/ata/ahci.h             |  8 ++--
>  drivers/ata/libahci.c          | 74 ++++++++++++++++++-------------
>  drivers/ata/libahci_platform.c |  3 +-
>  5 files changed, 114 insertions(+), 73 deletions(-)
> 
(Continue reading)

Jacobo Pantoja | 15 Sep 14:41 2014
Picon

Re: [nForce4] - Repeatable issues with nForce 4

Dears,

Thank you for taking your time to answer. See my comments below.

On 14 September 2014 22:03, Robert Hancock <hancockrwd <at> gmail.com> wrote:
> On Sun, Sep 14, 2014 at 3:37 AM, Tejun Heo <tj <at> kernel.org> wrote:
>>
>> (cc'ing Robert Hancock)
>>
>> Hello,
>>
>> On Sat, Sep 13, 2014 at 11:50:08PM +0200, Jacobo Pantoja wrote:
>> > (Sorry if you receive twice, I have noticed that the first email had
>> > blank subject)
>> > Dear Tejun Heo and linux-ide team,
>> >
>> > I'm Jacobo Pantoja. I'm a technology passionate and electronics
>> > engineer.
>> > I have my ("beloved") computer with an nForce4 chipset, and I have had
>> > almost
>> > always the ADMA interface enabled. The board itself is ASUS A8N-E, with
>> > reportedly CK804 chipset, if it may be relevant at all.
>> >
>> > As suggested by Tejun, I'm sending my problem to the list.
>> >
>> > I noticed that from time to time the machine was freezed, but I was not
>> > able to correctly catch the trigger. Till yesterday.
>> >
>> > I noticed that one of my 2 TB drives had some few sectors, which were
>> > marked as "pending reallocation", but not reallocated. When this has
(Continue reading)

Tejun Heo | 14 Sep 11:39 2014

Re: [PATCH] ahci_xgene: Fix the error print invalid resource for APM X-Gene SoC AHCI SATA Host Controller driver.

Hello,

On Sun, Sep 14, 2014 at 11:36:51AM +0530, Suman Tripathi wrote:
> We can  maintain same piece (IS_ERR(ctx->csr_mux)), then we can do the
> below instead of NULL ??
> 
> ctx->csr_mux = res ? devm_ioremap_resource(dev, res) : ERR_PTR(-EINVAL);

Setting it to NULL on failure would probably make more sense.  No need
to carry around ERR_PTR() value around.

Thanks.

--

-- 
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Tejun Heo | 14 Sep 11:37 2014

Re: [nForce4] - Repeatable issues with nForce 4

(cc'ing Robert Hancock)

Hello,

On Sat, Sep 13, 2014 at 11:50:08PM +0200, Jacobo Pantoja wrote:
> (Sorry if you receive twice, I have noticed that the first email had
> blank subject)
> Dear Tejun Heo and linux-ide team,
> 
> I'm Jacobo Pantoja. I'm a technology passionate and electronics engineer.
> I have my ("beloved") computer with an nForce4 chipset, and I have had almost
> always the ADMA interface enabled. The board itself is ASUS A8N-E, with
> reportedly CK804 chipset, if it may be relevant at all.
> 
> As suggested by Tejun, I'm sending my problem to the list.
> 
> I noticed that from time to time the machine was freezed, but I was not
> able to correctly catch the trigger. Till yesterday.
> 
> I noticed that one of my 2 TB drives had some few sectors, which were
> marked as "pending reallocation", but not reallocated. When this has
> happened to me (in different computers, though), I solved it by dd'ing
> the whole disk, locating the bad sector(s) and filling it with zeroes.
> So I tried... and I have discovered that when a bad sector is tried to
> be read, the system locks up.
> 
> You may find attached:
> * dmesg when adma activated (but not including the moment of the error
>        because the computer freezes)
> * photo taken in the moment of the error with adma activated
(Continue reading)

Patel, Gaurav | 11 Sep 02:45 2014
Picon

RE: [Bug] 3.16 fwdownload failure on Marvell 88SE9125 sata controller

I will try to update kernel on Ubuntu to 2.6.32 and run the test.

I was not able to install 3.16 ubuntu kernel on RrdHat.

Thanks,
Gaurav Patel
Email: Gspatel <at> hp.com
Cell # 832-382-5550

-----Original Message-----
From: Ming Lei [mailto:ming.lei <at> canonical.com] 
Sent: Wednesday, September 10, 2014 6:01 PM
To: Patel, Gaurav
Cc: Robert Hancock; linux-ide <at> vger.kernel.org; Tejun Heo; Linux Kernel Mailing List
Subject: Re: [Bug] 3.16 fwdownload failure on Marvell 88SE9125 sata controller

On Thu, Sep 11, 2014 at 12:11 AM, Patel, Gaurav <gspatel <at> hp.com> wrote:
>
> ">> When we use hdparm to download firmware on system with Marvell
>>> 88SE9125 SATA controller, it returns failure always and it has been 
>>> observed in several systems:"
>
>  [Gaurav]:  So I have another moonshot cartridge with same SATA controller and I was able to update FW with
hdparm with RedHat65 without any issues. So this looks to me issue with Ubuntu kernel dos not have correct
driver (or something is missing to support hdparm or sata controller).

But RedHat65 ships a 2.6.32 kernel as you said, and you can test the stable
2.6.32 kernel on one ubuntu release too.

As far as I can tell, the problem is very probably related with kernel, that is why I suggest you to test
(Continue reading)

Tejun Heo | 8 Sep 02:59 2014

[GIT PULL] libata fixes for v3.17-rc4

Hello, Linus.

Two patches are to add PCI IDs for ICH9 and all others are device
specific fixes.  Nothing too interesting.

Thanks.

The following changes since commit 2a13772a144d2956a7fedd18685921d0a9b8b783:

  libata: widen Crucial M550 blacklist matching (2014-08-18 17:40:09 -0400)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git for-3.17-fixes

for you to fetch changes up to 0babe614b6b4c7d1d8e12d7a6dbdac6e2f0df8e2:

  ahci_xgene: Fix the link down in first attempt for the APM X-Gene SoC AHCI SATA host controller driver.
(2014-09-06 11:27:15 +0900)

----------------------------------------------------------------
Chuansheng Liu (1):
      ata: Disabling the async PM for JMicron chip 363/361

James Ralston (2):
      ahci: Add Device IDs for Intel 9 Series PCH
      ata_piix: Add Device IDs for Intel 9 Series PCH

Mikko Perttunen (1):
      ata: ahci_tegra: Read calibration fuse
(Continue reading)

Murali Karicheri | 5 Sep 19:21 2014
Picon

[RESEND: PATCH] ahci: add pcid for Marvel 0x9182 controller

Keystone K2E EVM uses Marvel 0x9182 controller. This requires support
for the ID in the ahci driver.

Signed-off-by: Murali Karicheri <m-karicheri2 <at> ti.com>

CC: Tejun Heo <tj <at> kernel.org>
CC: Santosh Shilimkar <santosh.shilimkar <at> ti.com>
---
 - Resending with some description in the commit log
 drivers/ata/ahci.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index a29f801..02a415e 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
 <at>  <at>  -442,6 +442,8  <at>  <at>  static const struct pci_device_id ahci_pci_tbl[] = {
 	{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x917a),
 	  .driver_data = board_ahci_yes_fbs },			/* 88se9172 */
 	{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x9172),
+	  .driver_data = board_ahci_yes_fbs },			/* 88se9182 */
+	{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x9182),
 	  .driver_data = board_ahci_yes_fbs },			/* 88se9172 */
 	{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x9192),
 	  .driver_data = board_ahci_yes_fbs },			/* 88se9172 on some Gigabyte */
--

-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
(Continue reading)

Chuansheng Liu | 1 Sep 02:38 2014
Picon

[PATCH] ata: Disabling the async PM for JMicron chip 363/361

After enabled the PM feature that supporting async noirq(76569faa62
(PM / sleep: Asynchronous threads for resume_noirq)),
Jay hit the system resuming issue, that one of the JMicron controller
can not be powered up.

His device tree is like below:
             +-1c.4-[02]--+-00.0  JMicron Technology Corp. JMB363 SATA/IDE Controller
             |            \-00.1  JMicron Technology Corp. JMB363 SATA/IDE Controller

After investigation, we found the the Micron chip 363 included
one SATA controller(0000:02:00.0) and one PATA controller(0000:02:00.1),
these two controllers do not have parent-children relationship,
but the PATA controller only can be powered on after the SATA controller
has finished the powering on.

If we enabled the async noirq(), then the below error is hit during noirq
phase:
pata_jmicron 0000:02:00.1: Refused to change power state, currently in D3

Here for JMicron chip 363/361, we need forcedly to disable the async method.

Bug detail: https://bugzilla.kernel.org/show_bug.cgi?id=81551

Reported-by: Jay <MyMailClone <at> t-online.de>
Signed-off-by: Chuansheng Liu <chuansheng.liu <at> intel.com>
---
 drivers/ata/ahci.c         |   11 +++++++++++
 drivers/ata/pata_jmicron.c |   11 +++++++++++
 2 files changed, 22 insertions(+)

(Continue reading)

Mathias Krause | 31 Aug 10:57 2014

[PATCH] ahci: ahci_p5wdh_workaround - constify DMI table

The DMI table does not need to be written to, make it r/o.

Signed-off-by: Mathias Krause <minipli <at> googlemail.com>
---
 drivers/ata/ahci.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index a29f8012fb08..c880699a7d0b 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
 <at>  <at>  -780,7 +780,7  <at>  <at>  static void ahci_pci_print_info(struct ata_host *host)
  */
 static void ahci_p5wdh_workaround(struct ata_host *host)
 {
-	static struct dmi_system_id sysids[] = {
+	static const struct dmi_system_id sysids[] = {
 		{
 			.ident = "P5W DH Deluxe",
 			.matches = {
--

-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Gmane