<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/ata, branch v3.7.2</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/ata?h=v3.7.2</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/ata?h=v3.7.2'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-01-11T17:18:35Z</updated>
<entry>
<title>libata: restore acpi disable functionality</title>
<updated>2013-01-11T17:18:35Z</updated>
<author>
<name>Aaron Lu</name>
<email>aaron.lu@intel.com</email>
</author>
<published>2012-11-26T05:55:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=100865b4ba20cbe67875b4acf1c0a6711afd41ef'/>
<id>urn:sha1:100865b4ba20cbe67875b4acf1c0a6711afd41ef</id>
<content type='text'>
commit 0d0cdb028f9d9771e2b346038707734121f906e3 upstream.

Commit 66fa7f215 "libata-acpi: improve ACPI disabling" introdcued the
behaviour of disabling ATA ACPI if ata_acpi_on_devcfg failed the 2nd
time, but commit 30dcf76ac dropped this behaviour and this caused
problem for Dimitris Damigos, where his laptop can not resume correctly.

The bugzilla page for it is:
https://bugzilla.kernel.org/show_bug.cgi?id=49331

The problem is, ata_dev_push_id will fail the 2nd time it is invoked,
and due to disabling ACPI code is dropped, ata_acpi_on_devcfg which
calls ata_dev_push_id will keep failing and eventually made the device
disabled.

This patch restores the original behaviour, if acpi failed the 2nd time,
disable acpi functionality for the device(and we do not event need to
add a debug message for this as it is still there ;-).

Reported-by: Dimitris Damigos &lt;damigos@freemail.gr&gt;
Signed-off-by: Aaron Lu &lt;aaron.lu@intel.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi</title>
<updated>2012-11-22T19:14:54Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2012-11-22T19:14:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a2d2eda7bf8fd3a5fa44557162715dbfabbc8239'/>
<id>urn:sha1:a2d2eda7bf8fd3a5fa44557162715dbfabbc8239</id>
<content type='text'>
Pull SCSI fixes from James Bottomley:
 "This is a set of four bug fixes.

  The isci one is an obvious thinko (using request buffer instead of
  response buffer) which causes a command to fail.

  The three others are DIF/DIX updates which are required because
  they're part of a series of ten patches, the other seven of which went
  into the block layer during the merge window meaning our current
  DIF/DIX implementation is broken without these three.

  Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;"

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
  [SCSI] sd: Implement support for WRITE SAME
  [SCSI] sd: Permit merged discard requests
  [SCSI] Add a report opcode helper
  [SCSI] isci: copy fis 0x34 response into proper buffer
</content>
</entry>
<entry>
<title>[libata] PM callbacks should be conditionally compiled on CONFIG_PM_SLEEP</title>
<updated>2012-11-16T05:45:37Z</updated>
<author>
<name>Yuanhan Liu</name>
<email>yuanhan.liu@linux.intel.com</email>
</author>
<published>2012-10-16T14:59:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=29448ec129c5c9c7ece2ef28c72a0dafd70c8af2'/>
<id>urn:sha1:29448ec129c5c9c7ece2ef28c72a0dafd70c8af2</id>
<content type='text'>
This will fix warnings like following when CONFIG_PM_SLEEP is not set:

        warning: 'xxx_suspend' defined but not used [-Wunused-function]
        warning: 'xxx_resume' defined but not used [-Wunused-function]

Because
	SET_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn)

Only references the callbacks on CONFIG_PM_SLEEP (instead of CONFIG_PM).

Cc: Viresh Kumar &lt;viresh.linux@gmail.com&gt;
Cc: linux-ide@vger.kernel.org
Signed-off-by: Yuanhan Liu &lt;yuanhan.liu@linux.intel.com&gt;
Signed-off-by: Fengguang Wu &lt;fengguang.wu@intel.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
</content>
</entry>
<entry>
<title>sata_svw: check DMA start bit before reset</title>
<updated>2012-11-16T04:54:41Z</updated>
<author>
<name>David Milburn</name>
<email>dmilburn@redhat.com</email>
</author>
<published>2012-10-29T23:00:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b03e66a6be91f8389fcd902ab6c1563db1c9c06b'/>
<id>urn:sha1:b03e66a6be91f8389fcd902ab6c1563db1c9c06b</id>
<content type='text'>
If kdump is triggered with pending IO, controller may not respond causing
kdump to fail.

http://marc.info/?l=linux-ide&amp;m=133032255424658&amp;w=2

During error recovery ata_do_dev_read_id never completes due hang
in mmio_insw.

ata_do_dev_read_id
 ata_sff_data_xfer
  ioread16_rep
   mmio_insw

if DMA start bit is cleared before reset, PIO command is successful
and kdump succeeds.

Signed-off-by: David Milburn &lt;dmilburn@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
</content>
</entry>
<entry>
<title>libata debugging: Warn when unable to find timing descriptor based on xfer_mode</title>
<updated>2012-11-16T04:51:11Z</updated>
<author>
<name>Borislav Petkov</name>
<email>bp@alien8.de</email>
</author>
<published>2012-10-21T16:57:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cd705d5ad49bb8894dda2726dcaef8f63ddeba43'/>
<id>urn:sha1:cd705d5ad49bb8894dda2726dcaef8f63ddeba43</id>
<content type='text'>
ata_timing_find_mode could return NULL which is not checked by all
low-level ATA drivers using it and cause a NULL ptr deref. Warn at least
so that possible issues can get fixed easily.

Signed-off-by: Borislav Petkov &lt;bp@alien8.de&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
</content>
</entry>
<entry>
<title>sata_highbank: mark ahci_highbank_probe as __devinit</title>
<updated>2012-11-16T04:44:27Z</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2012-11-06T21:55:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c37472d3f4ec6bf98b443490e069f31d18bcd6f5'/>
<id>urn:sha1:c37472d3f4ec6bf98b443490e069f31d18bcd6f5</id>
<content type='text'>
The ahci_highbank_probe function is incorrectly marked as __init,
which means it can get discarded at boot time, which might be
a problem if for some reason the device only becomes operational
after loading another module.

Using __devinit instead avoids seeing this warning for every build:

WARNING: vmlinux.o(.data+0xf7b0): Section mismatch in reference from the
variable ahci_highbank_driver to the function .init.text:ahci_highbank_probe()
The variable ahci_highbank_driver references
the function __init ahci_highbank_probe()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: Mark Langsdorf &lt;mark.langsdorf@calxeda.com&gt;
Cc: Rob Herring &lt;rob.herring@calxeda.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
</content>
</entry>
<entry>
<title>pata_arasan: Initialize cf clock to 166MHz</title>
<updated>2012-11-16T04:40:20Z</updated>
<author>
<name>Vipul Kumar Samar</name>
<email>vipulkumar.samar@st.com</email>
</author>
<published>2012-11-08T15:09:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9addf6afeef0f2c9a1fef880e2dbe633d15a89bd'/>
<id>urn:sha1:9addf6afeef0f2c9a1fef880e2dbe633d15a89bd</id>
<content type='text'>
PATA arasan driver expects the clock to be set to 166 MHz for proper
functioning.  This patch sets clk to 166 MHz in probe.

Signed-off-by: Vipul Kumar Samar &lt;vipulkumar.samar@st.com&gt;
Signed-off-by: Viresh Kumar &lt;viresh.kumar@linaro.org&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
</content>
</entry>
<entry>
<title>libata-acpi: Fix NULL ptr derference in ata_acpi_dev_handle</title>
<updated>2012-11-16T04:20:55Z</updated>
<author>
<name>Aaron Lu</name>
<email>aaron.lu@intel.com</email>
</author>
<published>2012-10-09T07:37:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=60817a680b1bd3341b6909fab7d8a1fcc3a78369'/>
<id>urn:sha1:60817a680b1bd3341b6909fab7d8a1fcc3a78369</id>
<content type='text'>
commit 6b66d95895c149cbc04d4fac5a2f5477c543a8ae didn't handle SATA PMP
case in ata_acpi_bind_device and will cause a NULL ptr dereference when
user attached a SATA drive to the PMP port. Fix this by checking PMP
support.

This bug is reported by Dan van der Ster in the following bugzilla page:
https://bugzilla.kernel.org/show_bug.cgi?id=48211

Reported-by: Dan van der Ster &lt;dan@vanderster.com&gt;
Tested-by: Dan van der Ster &lt;dan@vanderster.com&gt;
Signed-off-by: Aaron Lu &lt;aaron.lu@intel.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Tested-by: Simon &lt;tangouniform@sbcglobal.net&gt;
</content>
</entry>
<entry>
<title>[SCSI] sd: Implement support for WRITE SAME</title>
<updated>2012-11-14T06:45:42Z</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2012-09-18T16:19:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5db44863b6ebbb400c5e61d56ebe8f21ef48b1bd'/>
<id>urn:sha1:5db44863b6ebbb400c5e61d56ebe8f21ef48b1bd</id>
<content type='text'>
Implement support for WRITE SAME(10) and WRITE SAME(16) in the SCSI disk
driver.

 - We set the default maximum to 0xFFFF because there are several
   devices out there that only support two-byte block counts even with
   WRITE SAME(16). We only enable transfers bigger than 0xFFFF if the
   device explicitly reports MAXIMUM WRITE SAME LENGTH in the BLOCK
   LIMITS VPD.

 - max_write_same_blocks can be overriden per-device basis in sysfs.

 - The UNMAP discovery heuristics remain unchanged but the discard
   limits are tweaked to match the "real" WRITE SAME commands.

 - In the error handling logic we now distinguish between WRITE SAME
   with and without UNMAP set.

The discovery process heuristics are:

 - If the device reports a SCSI level of SPC-3 or greater we'll issue
   READ SUPPORTED OPERATION CODES to find out whether WRITE SAME(16) is
   supported. If that's the case we will use it.

 - If the device supports the block limits VPD and reports a MAXIMUM
   WRITE SAME LENGTH bigger than 0xFFFF we will use WRITE SAME(16).

 - Otherwise we will use WRITE SAME(10) unless the target LBA is beyond
   0xFFFFFFFF or the block count exceeds 0xFFFF.

 - no_write_same is set for ATA, FireWire and USB.

Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Reviewed-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
Reviewed-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] Add a report opcode helper</title>
<updated>2012-11-14T05:11:31Z</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2012-09-18T16:19:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3c6bdaeab4fda6c9fdd5f3f5c610dea97bddf7d6'/>
<id>urn:sha1:3c6bdaeab4fda6c9fdd5f3f5c610dea97bddf7d6</id>
<content type='text'>
The REPORT SUPPORTED OPERATION CODES command can be used to query
whether a given opcode is supported by a device. Add a helper function
that allows us to look up commands.

We only issue RSOC if the device reports compliance with SPC-3 or
later. But to err on the side of caution we disable the command for ATA,
FireWire and USB.

Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Acked-by: Mike Snitzer &lt;snitzer@redhat.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
</entry>
</feed>
