public inbox for ipfire-scm@lists.ipfire.org
 help / color / mirror / Atom feed
From: git@ipfire.org
To: ipfire-scm@lists.ipfire.org
Subject: [git.ipfire.org] IPFire 2.x development tree branch, next, updated. c9ab30c5d31979ea7056261c9867cf42644b4a0d
Date: Mon, 13 Jul 2015 22:03:59 +0200	[thread overview]
Message-ID: <20150713200400.460F22239D@argus.ipfire.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 5967 bytes --]

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".

The branch, next has been updated
       via  c9ab30c5d31979ea7056261c9867cf42644b4a0d (commit)
      from  388f903e9e83a7013824fd858dbda23ba55bb9f8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit c9ab30c5d31979ea7056261c9867cf42644b4a0d
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date:   Mon Jul 13 22:00:57 2015 +0200

    kernel: fix trim dataloss on some solid state discs
    
    disable trim on SuperSSpeed S238
    update queued trim blacklist from kernel 4.2rc1
    (add Samsung SSD 8xx and some Crucial and Micron SSD)

-----------------------------------------------------------------------

Summary of changes:
 lfs/linux                                          |  7 +++-
 src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch | 47 ++++++++++++++++++++++
 .../linux-3.14.43_new_qtrim_blacklist.patch        | 18 +++++++++
 3 files changed, 71 insertions(+), 1 deletion(-)
 create mode 100644 src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch
 create mode 100644 src/patches/linux-3.14.43_new_qtrim_blacklist.patch

Difference in files:
diff --git a/lfs/linux b/lfs/linux
index f59a709..33bdf8f 100644
--- a/lfs/linux
+++ b/lfs/linux
@@ -37,7 +37,7 @@ DIR_APP    = $(DIR_SRC)/$(THISAPP)
 CFLAGS     =
 CXXFLAGS   =
 
-PAK_VER    = 61
+PAK_VER    = 62
 DEPS	   = ""
 
 VERSUFIX=ipfire$(KCFG)
@@ -161,6 +161,11 @@ endif
 	# r8169 L23 patch
 	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.32-r8169_disable_L23.patch
 
+	# SuperSSpeed S238 NOTRIM patch
+	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch
+	# update the queued trim blacklist from kernel 4.2rc1
+	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.43_new_qtrim_blacklist.patch
+
 	# HyperV 2008 patch
 	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.14.x-hyperv-2008-fix.patch
 
diff --git a/src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch b/src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch
new file mode 100644
index 0000000..1745bbc
--- /dev/null
+++ b/src/patches/linux-3.14.43_SuperSSpeed_NOTRIM.patch
@@ -0,0 +1,47 @@
+diff -Naur linux-3.14.43.org/drivers/ata/libata-core.c linux-3.14.43/drivers/ata/libata-core.c
+--- linux-3.14.43.org/drivers/ata/libata-core.c	2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/drivers/ata/libata-core.c	2015-07-11 19:15:01.450041507 +0200
+@@ -4229,6 +4229,9 @@
+ 	{ "Micron_M550*",		NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
+ 	{ "Crucial_CT*M550SSD*",	NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
+ 
++	/* devices that don't properly handle TRIM commands */
++	{ "SuperSSpeed S238*",		NULL,	ATA_HORKAGE_NOTRIM, },
++
+ 	/*
+ 	 * Some WD SATA-I drives spin up and down erratically when the link
+ 	 * is put into the slumber mode.  We don't have full list of the
+diff -Naur linux-3.14.43.org/drivers/ata/libata-scsi.c linux-3.14.43/drivers/ata/libata-scsi.c
+--- linux-3.14.43.org/drivers/ata/libata-scsi.c	2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/drivers/ata/libata-scsi.c	2015-07-11 20:47:22.570021716 +0200
+@@ -2510,11 +2513,15 @@
+ 		rbuf[14] = (lowest_aligned >> 8) & 0x3f;
+ 		rbuf[15] = lowest_aligned;
+ 
+-		if (ata_id_has_trim(args->id)) {
+-			rbuf[14] |= 0x80; /* TPE */
+ 
+-			if (ata_id_has_zero_after_trim(args->id))
+-				rbuf[14] |= 0x40; /* TPRZ */
++
++		if (!(dev->horkage & ATA_HORKAGE_NOTRIM)) { 
++			if (ata_id_has_trim(args->id)) {
++				rbuf[14] |= 0x80; /* TPE */
++
++				if (ata_id_has_zero_after_trim(args->id))
++					rbuf[14] |= 0x40; /* TPRZ */
++			}
+ 		}
+ 	}
+ 
+diff -Naur linux-3.14.43.org/include/linux/libata.h linux-3.14.43/include/linux/libata.h
+--- linux-3.14.43.org/include/linux/libata.h	2015-05-17 18:54:01.000000000 +0200
++++ linux-3.14.43/include/linux/libata.h	2015-07-11 19:13:03.190682173 +0200
+@@ -421,6 +421,7 @@
+ 	ATA_HORKAGE_NO_NCQ_TRIM	= (1 << 19),	/* don't use queued TRIM */
+ 	ATA_HORKAGE_NOLPM	= (1 << 20),	/* don't use LPM */
+ 	ATA_HORKAGE_WD_BROKEN_LPM = (1 << 21),	/* some WDs have broken LPM */
++	ATA_HORKAGE_NOTRIM	= (1 << 22),	/* don't use TRIM */
+ 
+ 	 /* DMA mask for user DMA control: User visible values; DO NOT
+ 	    renumber */
diff --git a/src/patches/linux-3.14.43_new_qtrim_blacklist.patch b/src/patches/linux-3.14.43_new_qtrim_blacklist.patch
new file mode 100644
index 0000000..f497070
--- /dev/null
+++ b/src/patches/linux-3.14.43_new_qtrim_blacklist.patch
@@ -0,0 +1,18 @@
+diff -Naur linux-3.14.43.org/drivers/ata/libata-core.c linux-3.14.43/drivers/ata/libata-core.c
+--- linux-3.14.43.org/drivers/ata/libata-core.c	2015-07-13 17:58:28.126607225 +0200
++++ linux-3.14.43/drivers/ata/libata-core.c	2015-07-13 18:06:07.430782102 +0200
+@@ -4225,9 +4225,11 @@
+ 
+ 	/* devices that don't properly handle queued TRIM commands */
+ 	{ "Micron_M500*",		NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
+-	{ "Crucial_CT???M500SSD*",	NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
+-	{ "Micron_M550*",		NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
+-	{ "Crucial_CT*M550SSD*",	NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
++	{ "Crucial_CT*M500*",		NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
++	{ "Micron_M5[15]0*",		"MU01",	ATA_HORKAGE_NO_NCQ_TRIM, },
++	{ "Crucial_CT*M550*",		"MU01",	ATA_HORKAGE_NO_NCQ_TRIM, },
++	{ "Crucial_CT*MX100*",		"MU01",	ATA_HORKAGE_NO_NCQ_TRIM, },
++	{ "Samsung SSD 8*",		NULL,	ATA_HORKAGE_NO_NCQ_TRIM, },
+ 
+ 	/* devices that don't properly handle TRIM commands */
+ 	{ "SuperSSpeed S238*",		NULL,	ATA_HORKAGE_NOTRIM, },


hooks/post-receive
--
IPFire 2.x development tree

                 reply	other threads:[~2015-07-13 20:03 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150713200400.460F22239D@argus.ipfire.org \
    --to=git@ipfire.org \
    --cc=ipfire-scm@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox