aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/oxnas/patches-4.1/999-libata-hacks.patch
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2017-01-01 10:05:24 +0100
committerDaniel Golle <daniel@makrotopia.org>2017-01-01 10:07:40 +0100
commitae21033e764dde7d359e2bfaac1de83081318f22 (patch)
tree40af122d3a3ec60dd5b1d57be010727e24cc9130 /target/linux/oxnas/patches-4.1/999-libata-hacks.patch
parent1f7a3584e5e582e45d2731b40612afe45f1f34a5 (diff)
downloadupstream-ae21033e764dde7d359e2bfaac1de83081318f22.tar.gz
upstream-ae21033e764dde7d359e2bfaac1de83081318f22.tar.bz2
upstream-ae21033e764dde7d359e2bfaac1de83081318f22.zip
oxnas: drop support for kernel 4.1
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'target/linux/oxnas/patches-4.1/999-libata-hacks.patch')
-rw-r--r--target/linux/oxnas/patches-4.1/999-libata-hacks.patch57
1 files changed, 0 insertions, 57 deletions
diff --git a/target/linux/oxnas/patches-4.1/999-libata-hacks.patch b/target/linux/oxnas/patches-4.1/999-libata-hacks.patch
deleted file mode 100644
index f4574da9ba..0000000000
--- a/target/linux/oxnas/patches-4.1/999-libata-hacks.patch
+++ /dev/null
@@ -1,57 +0,0 @@
---- a/drivers/ata/libata-core.c
-+++ b/drivers/ata/libata-core.c
-@@ -1589,6 +1589,14 @@ unsigned ata_exec_internal_sg(struct ata
- return AC_ERR_SYSTEM;
- }
-
-+ if (ap->ops->acquire_hw && !ap->ops->acquire_hw(ap, 0, 0)) {
-+ spin_unlock_irqrestore(ap->lock, flags);
-+ if (!ap->ops->acquire_hw(ap, 1, (2*HZ))) {
-+ return AC_ERR_TIMEOUT;
-+ }
-+ spin_lock_irqsave(ap->lock, flags);
-+ }
-+
- /* initialize internal qc */
-
- /* XXX: Tag 0 is used for drivers with legacy EH as some
-@@ -4786,6 +4794,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
- if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
- return NULL;
-
-+ if (ap->ops->qc_new && ap->ops->qc_new(ap))
-+ return NULL;
-+
- /* libsas case */
- if (ap->flags & ATA_FLAG_SAS_HOST) {
- tag = ata_sas_allocate_tag(ap);
-@@ -4831,6 +4842,8 @@ void ata_qc_free(struct ata_queued_cmd *
- qc->tag = ATA_TAG_POISON;
- if (ap->flags & ATA_FLAG_SAS_HOST)
- ata_sas_free_tag(tag, ap);
-+ if (ap->ops->qc_free)
-+ ap->ops->qc_free(qc);
- }
- }
-
---- a/include/linux/libata.h
-+++ b/include/linux/libata.h
-@@ -905,6 +905,8 @@ struct ata_port_operations {
- void (*qc_prep)(struct ata_queued_cmd *qc);
- unsigned int (*qc_issue)(struct ata_queued_cmd *qc);
- bool (*qc_fill_rtf)(struct ata_queued_cmd *qc);
-+ int (*qc_new)(struct ata_port *ap);
-+ void (*qc_free)(struct ata_queued_cmd *qc);
-
- /*
- * Configuration and exception handling
-@@ -995,6 +997,9 @@ struct ata_port_operations {
- void (*phy_reset)(struct ata_port *ap);
- void (*eng_timeout)(struct ata_port *ap);
-
-+ int (*acquire_hw)(struct ata_port *ap, int may_sleep,
-+ int timeout_jiffies);
-+
- /*
- * ->inherits must be the last field and all the preceding
- * fields must be pointers.