24 Oct, 2020

1 commit


05 Sep, 2020

1 commit


03 Sep, 2020

1 commit

  • All three generations of Sandisk SSDs lock up hard intermittently.
    Experiments showed that disabling NCQ lowered the failure rate significantly
    and the kernel has been disabling NCQ for some models of SD7's and 8's,
    which is obviously undesirable.

    Karthik worked with Sandisk to root cause the hard lockups to trim commands
    larger than 128M. This patch implements ATA_HORKAGE_MAX_TRIM_128M which
    limits max trim size to 128M and applies it to all three generations of
    Sandisk SSDs.

    Signed-off-by: Tejun Heo
    Cc: Karthik Shivaram
    Cc: stable@vger.kernel.org
    Signed-off-by: Jens Axboe

    Tejun Heo
     

24 Aug, 2020

1 commit

  • Replace the existing /* fall through */ comments and its variants with
    the new pseudo-keyword macro fallthrough[1]. Also, remove unnecessary
    fall-through markings when it is the case.

    [1] https://www.kernel.org/doc/html/v5.7/process/deprecated.html?highlight=fallthrough#implicit-switch-case-fall-through

    Signed-off-by: Gustavo A. R. Silva

    Gustavo A. R. Silva
     

18 Jun, 2020

1 commit

  • Commit 130f4caf145c ("libata: Ensure ata_port probe has completed before
    detach") may cause system freeze during suspend.

    Using async_synchronize_full() in PM callbacks is wrong, since async
    callbacks that are already scheduled may wait for not-yet-scheduled
    callbacks, causes a circular dependency.

    Instead of using big hammer like async_synchronize_full(), use async
    cookie to make sure port probe are synced, without affecting other
    scheduled PM callbacks.

    Fixes: 130f4caf145c ("libata: Ensure ata_port probe has completed before detach")
    Suggested-by: John Garry
    Signed-off-by: Kai-Heng Feng
    Tested-by: John Garry
    BugLink: https://bugs.launchpad.net/bugs/1867983
    Signed-off-by: Jens Axboe

    Kai-Heng Feng
     

21 Apr, 2020

1 commit

  • The docs toolchain doesn't recognise this pattern:

    @link->[hw_]sata_spd_limit

    As it can't really process it. So, instead, let's mark it with
    a literal block markup:

    ``link->[hw_]sata_spd_limit``

    in order to get rid of the following warning:

    ./drivers/ata/libata-core.c:5974: WARNING: Unknown target name: "hw".

    Signed-off-by: Mauro Carvalho Chehab
    Link: https://lore.kernel.org/r/9a21444df75c46095c4b1839d2061d19c9addcff.1586881715.git.mchehab+huawei@kernel.org
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

27 Mar, 2020

16 commits

  • Add ATA_FORCE config option (visible only if EXPERT config
    option is enabled) and make "libata.force" kernel parameter
    optional.

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    w/ CONFIG_ATA_FORCE=y:
    31983 572 40 32595 7f53 drivers/ata/libata-core.o
    w/ CONFIG_ATA_FROCE=n:
    28958 316 32 29306 727a drivers/ata/libata-core.o

    Suggested-by: Christoph Hellwig
    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * move sata_deb_timing_*() to libata-sata.c

    * add static inline for sata_ehc_deb_timing() for
    CONFIG_SATA_HOST=n case

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    32158 572 40 32770 8002 drivers/ata/libata-core.o
    after:
    32015 572 40 32627 7f73 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * move ata_qc_complete_multiple() to libata-sata.c

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    32559 572 40 33171 8193 drivers/ata/libata-core.o
    after:
    32162 572 40 32774 8006 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * move sata_link_hardreset() to libata-sata.c

    * add static inline for CONFIG_SATA_HOST=n case

    * make sata_set_spd_needed() static

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    32724 572 40 33336 8238 drivers/ata/libata-core.o
    after:
    32559 572 40 33171 8193 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * move sata_link_{debounce,resume}() to libata-sata.c

    * add static inline for CONFIG_SATA_HOST=n case (only one,
    for sata_link_resume() is needed)

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    32816 572 40 33428 8294 drivers/ata/libata-core.o
    after:
    32724 572 40 33336 8238 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * move *sata_set_spd*() to libata-sata.c

    * add static inlines for CONFIG_SATA_HOST=n case

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    32842 572 40 33458 82ae drivers/ata/libata-core.o
    after:
    32812 572 40 33428 8290 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * move sata_scr_*() to libata-sata.c

    * add static inlines for CONFIG_SATA_HOST=n case

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    35642 572 40 36254 8d9e drivers/ata/libata-core.o
    16607 18 0 16625 40f1 drivers/ata/libata-eh.o
    after:
    32846 572 40 33458 82b2 drivers/ata/libata-core.o
    16243 18 0 16261 3f85 drivers/ata/libata-eh.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Start separating SATA specific code from libata-core.c:

    * move following functions to libata-sata.c:
    - ata_tf_to_fis()
    - ata_tf_from_fis()
    - sata_link_scr_lpm()
    - ata_slave_link_init()
    - sata_lpm_ignore_phy_events()

    * group above functions together in

    * include libata-sata.c in the build when CONFIG_SATA_HOST=y

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    37582 572 40 38194 9532 drivers/ata/libata-core.o
    after:
    36762 572 40 37374 91fe drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Add !IS_ENABLED(CONFIG_SATA_HOST) to ata_dev_config_ncq() to allow
    compiler to optimize out the function for non-SATA configs.

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    37582 572 40 38194 9532 drivers/ata/libata-core.o
    after:
    36462 572 40 37074 90d2 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Separate PATA timings code from libata-core.c:

    * add PATA_TIMINGS config option and make corresponding PATA
    host drivers (and ATA ACPI code) select it

    * move following PATA timings code to libata-pata-timings.c:
    - ata_timing_quantize()
    - ata_timing_merge()
    - ata_timing_find_mode()
    - ata_timing_compute()

    * group above functions together in

    * include libata-pata-timings.c in the build when PATA_TIMINGS
    config option is enabled

    * cover ata_timing_cycle2mode() with CONFIG_ATA_ACPI ifdef (it
    depends on code from libata-core.c and libata-pata-timings.c
    while its only user is ATA ACPI)

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    39688 573 40 40301 9d6d drivers/ata/libata-core.o
    after:
    37820 572 40 38432 9620 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • * fix the overly long line in ata_timing_quantize()

    * use standard kernel CodingStyle in ata_timing_merge()

    * do not use assignment in if condition in ata_timing_compute()

    * fix non-standard comment style in ata_timing_compute()

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Remove EXPORT_SYMBOL_GPL()s for functions used only by
    the core libata code.

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    39838 573 40 40451 9e03 drivers/ata/libata-core.o
    21071 105 576 21752 54f8 drivers/ata/libata-scsi.o
    17519 18 0 17537 4481 drivers/ata/libata-eh.o
    after:
    39688 573 40 40301 9d6d drivers/ata/libata-core.o
    21040 105 576 21721 54d9 drivers/ata/libata-scsi.o
    17405 18 0 17423 440f drivers/ata/libata-eh.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Move EXPORT_SYMBOL_GPL()s close to exported code like it is
    done in other kernel subsystems. As a nice side effect this
    results in the removal of few ifdefs.

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Optimize struct ata_force_param size by:
    - using u8 for cbl and spd_limit fields
    - using u16 for lflags field

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    41064 573 40 41677 a2cd drivers/ata/libata-core.o
    after:
    40654 573 40 41267 a133 drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • Use COMMAND_LINE_SIZE instead PAGE_SIZE for ata_force_param_buf[]
    size as libata parameters buffer doesn't need to be bigger than
    the command line buffer.

    For many architectures this results in decreased libata-core.o
    size (COMMAND_LINE_SIZE varies from 256 to 4096 while the minimum
    PAGE_SIZE is 4096).

    Code size savings on m68k arch using (modified) atari_defconfig:

    text data bss dec hex filename
    before:
    41064 4413 40 45517 b1cd drivers/ata/libata-core.o
    after:
    41064 573 40 41677 a2cd drivers/ata/libata-core.o

    Reviewed-by: Christoph Hellwig
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     
  • In commit 7634ccd2da97 ("libata: maintainership update") from 2018
    Jens has officially taken over libata maintainership from Tejun so
    remove stale information from core libata code.

    Acked-by: Tejun Heo
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Jens Axboe

    Bartlomiej Zolnierkiewicz
     

30 Jan, 2020

1 commit

  • device_shutdown() called from reboot or power_shutdown expect
    all devices to be shutdown. Same is true for even ahci pci driver.
    As no ahci shutdown function is implemented, the ata subsystem
    always remains alive with DMA & interrupt support. File system
    related calls should not be honored after device_shutdown().

    So defining ahci pci driver shutdown to freeze hardware (mask
    interrupt, stop DMA engine and free DMA resources).

    Signed-off-by: Prabhakar Kushwaha
    Signed-off-by: Jens Axboe

    Prabhakar Kushwaha
     

26 Dec, 2019

1 commit

  • ata_qc_complete_multiple() is called with a mask of the still active
    tags.

    mv_sata doesn't have this information directly and instead calculates
    the still active tags from the started tags (ap->qc_active) and the
    finished tags as (ap->qc_active ^ done_mask)

    Since 28361c40368 the hw_tag and tag are no longer the same and the
    equation is no longer valid. In ata_exec_internal_sg() ap->qc_active is
    initialized as 1ULL << ATA_TAG_INTERNAL, but in hardware tag 0 is
    started and this will be in done_mask on completion. ap->qc_active ^
    done_mask becomes 0x100000000 ^ 0x1 = 0x100000001 and thus tag 0 used as
    the internal tag will never be reported as completed.

    This is fixed by introducing ata_qc_get_active() which returns the
    active hardware tags and calling it where appropriate.

    This is tested on mv_sata, but sata_fsl and sata_nv suffer from the same
    problem. There is another case in sata_nv that most likely needs fixing
    as well, but this looks a little different, so I wasn't confident enough
    to change that.

    Fixes: 28361c403683 ("libata: add extra internal command")
    Cc: stable@vger.kernel.org
    Tested-by: Pali Rohár
    Signed-off-by: Sascha Hauer

    Add missing export of ata_qc_get_active(), as per Pali.

    Signed-off-by: Jens Axboe

    Sascha Hauer
     

01 Nov, 2019

2 commits

  • In case a driver wants to return an error from qc_prep, return enum
    ata_completion_errors. sata_mv is one of those drivers -- see the next
    patch. Other drivers return the newly defined AC_ERR_OK.

    [v2] use enum ata_completion_errors and AC_ERR_OK.

    Signed-off-by: Jiri Slaby
    Cc: Jens Axboe
    Cc: linux-ide@vger.kernel.org
    Signed-off-by: Jens Axboe

    Jiri Slaby
     
  • With CONFIG_DEBUG_TEST_DRIVER_REMOVE set, we may find the following WARN:

    [ 23.452574] ------------[ cut here ]------------
    [ 23.457190] WARNING: CPU: 59 PID: 1 at drivers/ata/libata-core.c:6676 ata_host_detach+0x15c/0x168
    [ 23.466047] Modules linked in:
    [ 23.469092] CPU: 59 PID: 1 Comm: swapper/0 Not tainted 5.4.0-rc1-00010-g5b83fd27752b-dirty #296
    [ 23.477776] Hardware name: Huawei D06 /D06, BIOS Hisilicon D06 UEFI RC0 - V1.16.01 03/15/2019
    [ 23.486286] pstate: a0c00009 (NzCv daif +PAN +UAO)
    [ 23.491065] pc : ata_host_detach+0x15c/0x168
    [ 23.495322] lr : ata_host_detach+0x88/0x168
    [ 23.499491] sp : ffff800011cabb50
    [ 23.502792] x29: ffff800011cabb50 x28: 0000000000000007
    [ 23.508091] x27: ffff80001137f068 x26: ffff8000112c0c28
    [ 23.513390] x25: 0000000000003848 x24: ffff0023ea185300
    [ 23.518689] x23: 0000000000000001 x22: 00000000000014c0
    [ 23.523987] x21: 0000000000013740 x20: ffff0023bdc20000
    [ 23.529286] x19: 0000000000000000 x18: 0000000000000004
    [ 23.534584] x17: 0000000000000001 x16: 00000000000000f0
    [ 23.539883] x15: ffff0023eac13790 x14: ffff0023eb76c408
    [ 23.545181] x13: 0000000000000000 x12: ffff0023eac13790
    [ 23.550480] x11: ffff0023eb76c228 x10: 0000000000000000
    [ 23.555779] x9 : ffff0023eac13798 x8 : 0000000040000000
    [ 23.561077] x7 : 0000000000000002 x6 : 0000000000000001
    [ 23.566376] x5 : 0000000000000002 x4 : 0000000000000000
    [ 23.571674] x3 : ffff0023bf08a0bc x2 : 0000000000000000
    [ 23.576972] x1 : 3099674201f72700 x0 : 0000000000400284
    [ 23.582272] Call trace:
    [ 23.584706] ata_host_detach+0x15c/0x168
    [ 23.588616] ata_pci_remove_one+0x10/0x18
    [ 23.592615] ahci_remove_one+0x20/0x40
    [ 23.596356] pci_device_remove+0x3c/0xe0
    [ 23.600267] really_probe+0xdc/0x3e0
    [ 23.603830] driver_probe_device+0x58/0x100
    [ 23.608000] device_driver_attach+0x6c/0x90
    [ 23.612169] __driver_attach+0x84/0xc8
    [ 23.615908] bus_for_each_dev+0x74/0xc8
    [ 23.619730] driver_attach+0x20/0x28
    [ 23.623292] bus_add_driver+0x148/0x1f0
    [ 23.627115] driver_register+0x60/0x110
    [ 23.630938] __pci_register_driver+0x40/0x48
    [ 23.635199] ahci_pci_driver_init+0x20/0x28
    [ 23.639372] do_one_initcall+0x5c/0x1b0
    [ 23.643199] kernel_init_freeable+0x1a4/0x24c
    [ 23.647546] kernel_init+0x10/0x108
    [ 23.651023] ret_from_fork+0x10/0x18
    [ 23.654590] ---[ end trace 634a14b675b71c13 ]---

    With KASAN also enabled, we may also get many use-after-free reports.

    The issue is that when CONFIG_DEBUG_TEST_DRIVER_REMOVE is set, we may
    attempt to detach the ata_port before it has been probed.

    This is because the ata_ports are async probed, meaning that there is no
    guarantee that the ata_port has probed prior to detach. When the ata_port
    does probe in this scenario, we get all sorts of issues as the detach may
    have already happened.

    Fix by ensuring synchronisation with async_synchronize_full(). We could
    alternatively use the cookie returned from the ata_port probe
    async_schedule() call, but that means managing the cookie, so more
    complicated.

    Signed-off-by: John Garry
    Signed-off-by: Jens Axboe

    John Garry
     

03 Jul, 2019

1 commit


13 Jun, 2019

1 commit

  • We've received a bugreport that using LPM with ST1000LM024 drives leads
    to system lockups. So it seems that these models are buggy in more then
    1 way. Add NOLPM quirk to the existing quirks entry for BROKEN_FPDMA_AA.

    BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1571330
    Cc: stable@vger.kernel.org
    Reviewed-by: Martin K. Petersen
    Signed-off-by: Hans de Goede
    Signed-off-by: Jens Axboe

    Hans de Goede
     

21 May, 2019

1 commit

  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 or at your option any
    later version this program is distributed in the hope that it will
    be useful but without any warranty without even the implied warranty
    of merchantability or fitness for a particular purpose see the gnu
    general public license for more details you should have received a
    copy of the gnu general public license along with this program see
    the file copying if not write to the free software foundation 675
    mass ave cambridge ma 02139 usa

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 52 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Jilayne Lovejoy
    Reviewed-by: Steve Winslow
    Reviewed-by: Kate Stewart
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190519154042.342335923@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

07 Feb, 2019

1 commit

  • We've received a bugreport that using LPM with a SAMSUNG
    MZ7TE512HMHP-000L1 SSD leads to system instability, we already have
    a quirk for the MZ7TD256HAFV-000L9, which is also a Samsun EVO 840 /
    PM851 OEM model, so it seems some of these models have a LPM issue.

    This commits adds a NOLPM quirk for the model string from the new
    bugeport, to avoid the reported stability issues.

    Cc: stable@vger.kernel.org
    BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1571330
    Signed-off-by: Hans de Goede
    Signed-off-by: Jens Axboe

    Hans de Goede
     

04 Dec, 2018

1 commit


13 Nov, 2018

1 commit


26 Oct, 2018

1 commit


21 Sep, 2018

1 commit

  • Jens writes:
    "Storage fixes for 4.19-rc5

    - Fix for leaking kernel pointer in floppy ioctl (Andy Whitcroft)

    - NVMe pull request from Christoph, and a single ANA log page fix
    (Hannes)

    - Regression fix for libata qd32 support, where we trigger an illegal
    active command transition. This fixes a CD-ROM detection issue that
    was reported, but could also trigger premature completion of the
    internal tag (me)"

    * tag 'for-linus-20180920' of git://git.kernel.dk/linux-block:
    floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl
    libata: mask swap internal and hardware tag
    nvme: count all ANA groups for ANA Log page

    Greg Kroah-Hartman
     

20 Sep, 2018

1 commit

  • hen we're comparing the hardware completion mask passed in from the
    driver with the internal tag pending mask, we need to account for the
    fact that the internal tag is different from the hardware tag. If not,
    then we can end up either prematurely completing the internal tag (since
    it's not set in the hw mask), or simply flag an error:

    ata2: illegal qc_active transition (100000000->00000001)

    If the internal tag is set, then swap that with the hardware tag in this
    case before comparing with what the hardware reports.

    Fixes: 28361c403683 ("libata: add extra internal command")
    Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=201151
    Cc: stable@vger.kernel.org
    Reported-by: Paul Sbarra
    Tested-by: Paul Sbarra
    Signed-off-by: Jens Axboe

    Jens Axboe
     

28 Aug, 2018

1 commit


25 Aug, 2018

1 commit

  • Pull libata updates from Tejun Heo:
    "Nothing too interesting. Mostly ahci and ahci_platform changes, many
    around power management"

    * 'for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (22 commits)
    ata: ahci_platform: enable to get and control reset
    ata: libahci_platform: add reset control support
    ata: add an extra argument to ahci_platform_get_resources()
    ata: sata_rcar: Add r8a77965 support
    ata: sata_rcar: exclude setting of PHY registers in Gen3
    ata: sata_rcar: really mask all interrupts on Gen2 and later
    Revert "ata: ahci_platform: allow disabling of hotplug to save power"
    ata: libahci: Allow reconfigure of DEVSLP register
    ata: libahci: Correct setting of DEVSLP register
    ata: ahci: Enable DEVSLP by default on x86 with SLP_S0
    ata: ahci: Support state with min power but Partial low power state
    Revert "ata: ahci_platform: convert kcalloc to devm_kcalloc"
    ata: sata_rcar: Add rudimentary Runtime PM support
    ata: sata_rcar: Provide a short-hand for &pdev->dev
    ata: Only output sg element mapped number in verbose debug
    ata: Guard ata_scsi_dump_cdb() by ATA_VERBOSE_DEBUG
    ata: ahci_platform: convert kcalloc to devm_kcalloc
    ata: ahci_platform: convert kzallloc to kcalloc
    ata: ahci_platform: correct parameter documentation for ahci_platform_shutdown
    libata: remove ata_sff_data_xfer_noirq()
    ...

    Linus Torvalds
     

16 Aug, 2018

1 commit

  • Pull SCSI updates from James Bottomley:
    "This is mostly updates to the usual drivers: mpt3sas, lpfc, qla2xxx,
    hisi_sas, smartpqi, megaraid_sas, arcmsr.

    In addition, with the continuing absence of Nic we have target updates
    for tcmu and target core (all with reviews and acks).

    The biggest observable change is going to be that we're (again) trying
    to switch to mulitqueue as the default (a user can still override the
    setting on the kernel command line).

    Other major core stuff is the removal of the remaining Microchannel
    drivers, an update of the internal timers and some reworks of
    completion and result handling"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (203 commits)
    scsi: core: use blk_mq_run_hw_queues in scsi_kick_queue
    scsi: ufs: remove unnecessary query(DM) UPIU trace
    scsi: qla2xxx: Fix issue reported by static checker for qla2x00_els_dcmd2_sp_done()
    scsi: aacraid: Spelling fix in comment
    scsi: mpt3sas: Fix calltrace observed while running IO & reset
    scsi: aic94xx: fix an error code in aic94xx_init()
    scsi: st: remove redundant pointer STbuffer
    scsi: qla2xxx: Update driver version to 10.00.00.08-k
    scsi: qla2xxx: Migrate NVME N2N handling into state machine
    scsi: qla2xxx: Save frame payload size from ICB
    scsi: qla2xxx: Fix stalled relogin
    scsi: qla2xxx: Fix race between switch cmd completion and timeout
    scsi: qla2xxx: Fix Management Server NPort handle reservation logic
    scsi: qla2xxx: Flush mailbox commands on chip reset
    scsi: qla2xxx: Fix unintended Logout
    scsi: qla2xxx: Fix session state stuck in Get Port DB
    scsi: qla2xxx: Fix redundant fc_rport registration
    scsi: qla2xxx: Silent erroneous message
    scsi: qla2xxx: Prevent sysfs access when chip is down
    scsi: qla2xxx: Add longer window for chip reset
    ...

    Linus Torvalds
     

30 Jul, 2018

1 commit

  • Currently when min_power policy is selected, the partial low power state
    is not entered and link will try aggressively enter to only slumber state.
    Add a new policy which still enable DEVSLP but also try to enter partial
    low power state. This policy is presented as "min_power_with_partial".

    For information the difference between partial and slumber
    Partial – PHY logic is powered up, and in a reduced power state. The link
    PM exit latency to active state maximum is 10 ns.
    Slumber – PHY logic is powered up, and in a reduced power state. The link
    PM exit latency to active state maximum is 10 ms.
    Devslp – PHY logic is powered down. The link PM exit latency from this
    state to active state maximum is 20 ms, unless otherwise specified by
    DETO.

    Suggested-and-reviewed-by: Hans de Goede
    Signed-off-by: Srinivas Pandruvada
    Signed-off-by: Tejun Heo

    Srinivas Pandruvada
     

13 Jul, 2018

1 commit