summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandre Oliva <lxoliva@fsfla.org>2018-03-21 05:37:52 +0000
committerAlexandre Oliva <lxoliva@fsfla.org>2018-03-21 05:37:52 +0000
commitf72b7cebd5a0f9aa52a78aacff262693d951bc5d (patch)
tree8bb42df70e03024b3ef13553dc239530f45c879d
parentc6396e250c616e6bde8e418522174a85054d21d7 (diff)
downloadlinux-libre-raptor-f72b7cebd5a0f9aa52a78aacff262693d951bc5d.tar.gz
linux-libre-raptor-f72b7cebd5a0f9aa52a78aacff262693d951bc5d.zip
4.15.11-200.fc26.gnu
-rw-r--r--freed-ora/current/f26/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch17
-rw-r--r--freed-ora/current/f26/0001-scsi-libsas-direct-call-probe-and-destruct.patch299
-rw-r--r--freed-ora/current/f26/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch84
-rw-r--r--freed-ora/current/f26/kernel-aarch64-debug.config2
-rw-r--r--freed-ora/current/f26/kernel-aarch64.config2
-rw-r--r--freed-ora/current/f26/kernel-armv7hl-debug.config2
-rw-r--r--freed-ora/current/f26/kernel-armv7hl-lpae-debug.config2
-rw-r--r--freed-ora/current/f26/kernel-armv7hl-lpae.config2
-rw-r--r--freed-ora/current/f26/kernel-armv7hl.config2
-rw-r--r--freed-ora/current/f26/kernel-i686-PAE.config1
-rw-r--r--freed-ora/current/f26/kernel-i686-PAEdebug.config1
-rw-r--r--freed-ora/current/f26/kernel-i686-debug.config1
-rw-r--r--freed-ora/current/f26/kernel-i686.config1
-rw-r--r--freed-ora/current/f26/kernel-ppc64-debug.config1
-rw-r--r--freed-ora/current/f26/kernel-ppc64.config1
-rw-r--r--freed-ora/current/f26/kernel-ppc64le-debug.config1
-rw-r--r--freed-ora/current/f26/kernel-ppc64le.config1
-rw-r--r--freed-ora/current/f26/kernel-s390x-debug.config1
-rw-r--r--freed-ora/current/f26/kernel-s390x.config1
-rw-r--r--freed-ora/current/f26/kernel-x86_64-debug.config1
-rw-r--r--freed-ora/current/f26/kernel-x86_64.config1
-rw-r--r--freed-ora/current/f26/kernel.spec18
-rw-r--r--freed-ora/current/f26/mmu-ALIGN_DOWN-correct-variable.patch49
-rw-r--r--freed-ora/current/f26/patch-4.15-gnu-4.15.10-gnu.xz.sign6
-rw-r--r--freed-ora/current/f26/patch-4.15-gnu-4.15.11-gnu.xz.sign6
-rw-r--r--freed-ora/current/f26/sources2
26 files changed, 404 insertions, 101 deletions
diff --git a/freed-ora/current/f26/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch b/freed-ora/current/f26/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
index e15ec6bb1..56bcc7ec6 100644
--- a/freed-ora/current/f26/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
+++ b/freed-ora/current/f26/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
@@ -1,8 +1,8 @@
-From f5c1da991de077420fda17a236342de5a0068f5d Mon Sep 17 00:00:00 2001
+From 8c6b638bb620eef53cb83ffe88d7b528f666af10 Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede@redhat.com>
Date: Wed, 22 Nov 2017 12:57:08 +0100
-Subject: [PATCH v2 1/3] HID: multitouch: Properly deal with Win8 PTP reports
- with 0 touches
+Subject: [PATCH] HID: multitouch: Properly deal with Win8 PTP reports with 0
+ touches
The Windows Precision Touchpad spec "Figure 4 Button Only Down and Up"
and "Table 9 Report Sequence for Button Only Down and Up" indicate
@@ -24,7 +24,7 @@ Signed-off-by: Jiri Kosina <jkosina@suse.cz>
1 file changed, 30 insertions(+), 2 deletions(-)
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
-index 9ef24b518f12..d8b1cad74faf 100644
+index 397592959238..0a42e19d914a 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -119,6 +119,9 @@ struct mt_device {
@@ -50,19 +50,20 @@ index 9ef24b518f12..d8b1cad74faf 100644
return 1;
case HID_DG_CONTACTCOUNT:
/* Ignore if indexes are out of bounds. */
-@@ -855,9 +864,10 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
+@@ -866,10 +875,11 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
{
struct mt_device *td = hid_get_drvdata(hid);
+ __s32 cls = td->mtclass.name;
struct hid_field *field;
+ bool first_packet;
unsigned count;
- int r, n;
+ int r, n, scantime = 0;
/* sticky fingers release in progress, abort */
if (test_and_set_bit(MT_IO_FLAGS_RUNNING, &td->mt_io_flags))
-@@ -867,12 +877,29 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
+@@ -879,12 +889,29 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
* Includes multi-packet support where subsequent
* packets are sent with zero contactcount.
*/
@@ -91,9 +92,9 @@ index 9ef24b518f12..d8b1cad74faf 100644
}
+ td->prev_scantime = scantime;
+ first_packet = td->num_received == 0;
for (r = 0; r < report->maxfield; r++) {
- field = report->field[r];
-@@ -1329,6 +1356,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)
+@@ -1342,6 +1369,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)
td->maxcontact_report_id = -1;
td->inputmode_value = MT_INPUTMODE_TOUCHSCREEN;
td->cc_index = -1;
diff --git a/freed-ora/current/f26/0001-scsi-libsas-direct-call-probe-and-destruct.patch b/freed-ora/current/f26/0001-scsi-libsas-direct-call-probe-and-destruct.patch
new file mode 100644
index 000000000..20976a2c8
--- /dev/null
+++ b/freed-ora/current/f26/0001-scsi-libsas-direct-call-probe-and-destruct.patch
@@ -0,0 +1,299 @@
+From 0558f33c06bb910e2879e355192227a8e8f0219d Mon Sep 17 00:00:00 2001
+From: Jason Yan <yanaijie@huawei.com>
+Date: Fri, 8 Dec 2017 17:42:09 +0800
+Subject: [PATCH] scsi: libsas: direct call probe and destruct
+
+In commit 87c8331fcf72 ("[SCSI] libsas: prevent domain rediscovery
+competing with ata error handling") introduced disco mutex to prevent
+rediscovery competing with ata error handling and put the whole
+revalidation in the mutex. But the rphy add/remove needs to wait for the
+error handling which also grabs the disco mutex. This may leads to dead
+lock.So the probe and destruct event were introduce to do the rphy
+add/remove asynchronously and out of the lock.
+
+The asynchronously processed workers makes the whole discovery process
+not atomic, the other events may interrupt the process. For example,
+if a loss of signal event inserted before the probe event, the
+sas_deform_port() is called and the port will be deleted.
+
+And sas_port_delete() may run before the destruct event, but the
+port-x:x is the top parent of end device or expander. This leads to
+a kernel WARNING such as:
+
+[ 82.042979] sysfs group 'power' not found for kobject 'phy-1:0:22'
+[ 82.042983] ------------[ cut here ]------------
+[ 82.042986] WARNING: CPU: 54 PID: 1714 at fs/sysfs/group.c:237
+sysfs_remove_group+0x94/0xa0
+[ 82.043059] Call trace:
+[ 82.043082] [<ffff0000082e7624>] sysfs_remove_group+0x94/0xa0
+[ 82.043085] [<ffff00000864e320>] dpm_sysfs_remove+0x60/0x70
+[ 82.043086] [<ffff00000863ee10>] device_del+0x138/0x308
+[ 82.043089] [<ffff00000869a2d0>] sas_phy_delete+0x38/0x60
+[ 82.043091] [<ffff00000869a86c>] do_sas_phy_delete+0x6c/0x80
+[ 82.043093] [<ffff00000863dc20>] device_for_each_child+0x58/0xa0
+[ 82.043095] [<ffff000008696f80>] sas_remove_children+0x40/0x50
+[ 82.043100] [<ffff00000869d1bc>] sas_destruct_devices+0x64/0xa0
+[ 82.043102] [<ffff0000080e93bc>] process_one_work+0x1fc/0x4b0
+[ 82.043104] [<ffff0000080e96c0>] worker_thread+0x50/0x490
+[ 82.043105] [<ffff0000080f0364>] kthread+0xfc/0x128
+[ 82.043107] [<ffff0000080836c0>] ret_from_fork+0x10/0x50
+
+Make probe and destruct a direct call in the disco and revalidate function,
+but put them outside the lock. The whole discovery or revalidate won't
+be interrupted by other events. And the DISCE_PROBE and DISCE_DESTRUCT
+event are deleted as a result of the direct call.
+
+Introduce a new list to destruct the sas_port and put the port delete after
+the destruct. This makes sure the right order of destroying the sysfs
+kobject and fix the warning above.
+
+In sas_ex_revalidate_domain() have a loop to find all broadcasted
+device, and sometimes we have a chance to find the same expander twice.
+Because the sas_port will be deleted at the end of the whole revalidate
+process, sas_port with the same name cannot be added before this.
+Otherwise the sysfs will complain of creating duplicate filename. Since
+the LLDD will send broadcast for every device change, we can only
+process one expander's revalidation.
+
+[mkp: kbuild test robot warning]
+
+Signed-off-by: Jason Yan <yanaijie@huawei.com>
+CC: John Garry <john.garry@huawei.com>
+CC: Johannes Thumshirn <jthumshirn@suse.de>
+CC: Ewan Milne <emilne@redhat.com>
+CC: Christoph Hellwig <hch@lst.de>
+CC: Tomas Henzl <thenzl@redhat.com>
+CC: Dan Williams <dan.j.williams@intel.com>
+Reviewed-by: Hannes Reinecke <hare@suse.com>
+Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
+---
+ drivers/scsi/libsas/sas_ata.c | 1 -
+ drivers/scsi/libsas/sas_discover.c | 32 ++++++++++++++++++--------------
+ drivers/scsi/libsas/sas_expander.c | 8 +++-----
+ drivers/scsi/libsas/sas_internal.h | 1 +
+ drivers/scsi/libsas/sas_port.c | 3 +++
+ include/scsi/libsas.h | 3 +--
+ include/scsi/scsi_transport_sas.h | 1 +
+ 7 files changed, 27 insertions(+), 22 deletions(-)
+
+diff --git a/drivers/scsi/libsas/sas_ata.c b/drivers/scsi/libsas/sas_ata.c
+index 70be4425ae0b..2b3637b40dde 100644
+--- a/drivers/scsi/libsas/sas_ata.c
++++ b/drivers/scsi/libsas/sas_ata.c
+@@ -730,7 +730,6 @@ int sas_discover_sata(struct domain_device *dev)
+ if (res)
+ return res;
+
+- sas_discover_event(dev->port, DISCE_PROBE);
+ return 0;
+ }
+
+diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c
+index 14f714d05767..e4fd078e4175 100644
+--- a/drivers/scsi/libsas/sas_discover.c
++++ b/drivers/scsi/libsas/sas_discover.c
+@@ -212,13 +212,9 @@ void sas_notify_lldd_dev_gone(struct domain_device *dev)
+ }
+ }
+
+-static void sas_probe_devices(struct work_struct *work)
++static void sas_probe_devices(struct asd_sas_port *port)
+ {
+ struct domain_device *dev, *n;
+- struct sas_discovery_event *ev = to_sas_discovery_event(work);
+- struct asd_sas_port *port = ev->port;
+-
+- clear_bit(DISCE_PROBE, &port->disc.pending);
+
+ /* devices must be domain members before link recovery and probe */
+ list_for_each_entry(dev, &port->disco_list, disco_list_node) {
+@@ -294,7 +290,6 @@ int sas_discover_end_dev(struct domain_device *dev)
+ res = sas_notify_lldd_dev_found(dev);
+ if (res)
+ return res;
+- sas_discover_event(dev->port, DISCE_PROBE);
+
+ return 0;
+ }
+@@ -353,13 +348,9 @@ static void sas_unregister_common_dev(struct asd_sas_port *port, struct domain_d
+ sas_put_device(dev);
+ }
+
+-static void sas_destruct_devices(struct work_struct *work)
++void sas_destruct_devices(struct asd_sas_port *port)
+ {
+ struct domain_device *dev, *n;
+- struct sas_discovery_event *ev = to_sas_discovery_event(work);
+- struct asd_sas_port *port = ev->port;
+-
+- clear_bit(DISCE_DESTRUCT, &port->disc.pending);
+
+ list_for_each_entry_safe(dev, n, &port->destroy_list, disco_list_node) {
+ list_del_init(&dev->disco_list_node);
+@@ -370,6 +361,16 @@ static void sas_destruct_devices(struct work_struct *work)
+ }
+ }
+
++static void sas_destruct_ports(struct asd_sas_port *port)
++{
++ struct sas_port *sas_port, *p;
++
++ list_for_each_entry_safe(sas_port, p, &port->sas_port_del_list, del_list) {
++ list_del_init(&sas_port->del_list);
++ sas_port_delete(sas_port);
++ }
++}
++
+ void sas_unregister_dev(struct asd_sas_port *port, struct domain_device *dev)
+ {
+ if (!test_bit(SAS_DEV_DESTROY, &dev->state) &&
+@@ -384,7 +385,6 @@ void sas_unregister_dev(struct asd_sas_port *port, struct domain_device *dev)
+ if (!test_and_set_bit(SAS_DEV_DESTROY, &dev->state)) {
+ sas_rphy_unlink(dev->rphy);
+ list_move_tail(&dev->disco_list_node, &port->destroy_list);
+- sas_discover_event(dev->port, DISCE_DESTRUCT);
+ }
+ }
+
+@@ -490,6 +490,8 @@ static void sas_discover_domain(struct work_struct *work)
+ port->port_dev = NULL;
+ }
+
++ sas_probe_devices(port);
++
+ SAS_DPRINTK("DONE DISCOVERY on port %d, pid:%d, result:%d\n", port->id,
+ task_pid_nr(current), error);
+ }
+@@ -523,6 +525,10 @@ static void sas_revalidate_domain(struct work_struct *work)
+ port->id, task_pid_nr(current), res);
+ out:
+ mutex_unlock(&ha->disco_mutex);
++
++ sas_destruct_devices(port);
++ sas_destruct_ports(port);
++ sas_probe_devices(port);
+ }
+
+ /* ---------- Events ---------- */
+@@ -578,10 +584,8 @@ void sas_init_disc(struct sas_discovery *disc, struct asd_sas_port *port)
+ static const work_func_t sas_event_fns[DISC_NUM_EVENTS] = {
+ [DISCE_DISCOVER_DOMAIN] = sas_discover_domain,
+ [DISCE_REVALIDATE_DOMAIN] = sas_revalidate_domain,
+- [DISCE_PROBE] = sas_probe_devices,
+ [DISCE_SUSPEND] = sas_suspend_devices,
+ [DISCE_RESUME] = sas_resume_devices,
+- [DISCE_DESTRUCT] = sas_destruct_devices,
+ };
+
+ disc->pending = 0;
+diff --git a/drivers/scsi/libsas/sas_expander.c b/drivers/scsi/libsas/sas_expander.c
+index a8a57b0593e3..7444d40e261c 100644
+--- a/drivers/scsi/libsas/sas_expander.c
++++ b/drivers/scsi/libsas/sas_expander.c
+@@ -1916,7 +1916,8 @@ static void sas_unregister_devs_sas_addr(struct domain_device *parent,
+ sas_port_delete_phy(phy->port, phy->phy);
+ sas_device_set_phy(found, phy->port);
+ if (phy->port->num_phys == 0)
+- sas_port_delete(phy->port);
++ list_add_tail(&phy->port->del_list,
++ &parent->port->sas_port_del_list);
+ phy->port = NULL;
+ }
+ }
+@@ -2124,7 +2125,7 @@ int sas_ex_revalidate_domain(struct domain_device *port_dev)
+ struct domain_device *dev = NULL;
+
+ res = sas_find_bcast_dev(port_dev, &dev);
+- while (res == 0 && dev) {
++ if (res == 0 && dev) {
+ struct expander_device *ex = &dev->ex_dev;
+ int i = 0, phy_id;
+
+@@ -2136,9 +2137,6 @@ int sas_ex_revalidate_domain(struct domain_device *port_dev)
+ res = sas_rediscover(dev, phy_id);
+ i = phy_id + 1;
+ } while (i < ex->num_phys);
+-
+- dev = NULL;
+- res = sas_find_bcast_dev(port_dev, &dev);
+ }
+ return res;
+ }
+diff --git a/drivers/scsi/libsas/sas_internal.h b/drivers/scsi/libsas/sas_internal.h
+index d8826a747690..50e12d662ffe 100644
+--- a/drivers/scsi/libsas/sas_internal.h
++++ b/drivers/scsi/libsas/sas_internal.h
+@@ -101,6 +101,7 @@ int sas_try_ata_reset(struct asd_sas_phy *phy);
+ void sas_hae_reset(struct work_struct *work);
+
+ void sas_free_device(struct kref *kref);
++void sas_destruct_devices(struct asd_sas_port *port);
+
+ #ifdef CONFIG_SCSI_SAS_HOST_SMP
+ extern void sas_smp_host_handler(struct bsg_job *job, struct Scsi_Host *shost);
+diff --git a/drivers/scsi/libsas/sas_port.c b/drivers/scsi/libsas/sas_port.c
+index 64722f42b256..f07e55d3aa73 100644
+--- a/drivers/scsi/libsas/sas_port.c
++++ b/drivers/scsi/libsas/sas_port.c
+@@ -66,6 +66,7 @@ static void sas_resume_port(struct asd_sas_phy *phy)
+ rc = sas_notify_lldd_dev_found(dev);
+ if (rc) {
+ sas_unregister_dev(port, dev);
++ sas_destruct_devices(port);
+ continue;
+ }
+
+@@ -220,6 +221,7 @@ void sas_deform_port(struct asd_sas_phy *phy, int gone)
+
+ if (port->num_phys == 1) {
+ sas_unregister_domain_devices(port, gone);
++ sas_destruct_devices(port);
+ sas_port_delete(port->port);
+ port->port = NULL;
+ } else {
+@@ -317,6 +319,7 @@ static void sas_init_port(struct asd_sas_port *port,
+ INIT_LIST_HEAD(&port->dev_list);
+ INIT_LIST_HEAD(&port->disco_list);
+ INIT_LIST_HEAD(&port->destroy_list);
++ INIT_LIST_HEAD(&port->sas_port_del_list);
+ spin_lock_init(&port->phy_list_lock);
+ INIT_LIST_HEAD(&port->phy_list);
+ port->ha = sas_ha;
+diff --git a/include/scsi/libsas.h b/include/scsi/libsas.h
+index 6255bb5ed1e4..1cab6f7af425 100644
+--- a/include/scsi/libsas.h
++++ b/include/scsi/libsas.h
+@@ -82,10 +82,8 @@ enum phy_event {
+ enum discover_event {
+ DISCE_DISCOVER_DOMAIN = 0U,
+ DISCE_REVALIDATE_DOMAIN,
+- DISCE_PROBE,
+ DISCE_SUSPEND,
+ DISCE_RESUME,
+- DISCE_DESTRUCT,
+ DISC_NUM_EVENTS,
+ };
+
+@@ -262,6 +260,7 @@ struct asd_sas_port {
+ struct list_head dev_list;
+ struct list_head disco_list;
+ struct list_head destroy_list;
++ struct list_head sas_port_del_list;
+ enum sas_linkrate linkrate;
+
+ struct sas_work work;
+diff --git a/include/scsi/scsi_transport_sas.h b/include/scsi/scsi_transport_sas.h
+index 62895b405933..05ec927a3c72 100644
+--- a/include/scsi/scsi_transport_sas.h
++++ b/include/scsi/scsi_transport_sas.h
+@@ -156,6 +156,7 @@ struct sas_port {
+
+ struct mutex phy_list_mutex;
+ struct list_head phy_list;
++ struct list_head del_list; /* libsas only */
+ };
+
+ #define dev_to_sas_port(d) \
+--
+2.14.3
+
diff --git a/freed-ora/current/f26/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch b/freed-ora/current/f26/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch
deleted file mode 100644
index 3ea374ff5..000000000
--- a/freed-ora/current/f26/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From c25d877f4ee97deb92170129eee4777a5d5997d9 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Wed, 22 Nov 2017 12:57:09 +0100
-Subject: [PATCH v2 2/3] HID: multitouch: Only look at non touch fields in
- first packet of a frame
-
-Devices in "single finger hybrid mode" will send one report per finger,
-on some devices only the first report of such a multi-packet frame will
-contain a value for BTN_LEFT, in subsequent reports (if multiple fingers
-are down) the value is always 0, causing hid-mt to report BTN_LEFT going
-1 - 0 - 1 - 0 when pressing a clickpad and putting down a second finger.
-This happens for example on USB 0603:0002 mt touchpads.
-
-This commit fixes this by only reporting non touch fields for the first
-packet of a (possibly) multi-packet frame.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
-Signed-off-by: Jiri Kosina <jkosina@suse.cz>
----
- drivers/hid/hid-multitouch.c | 17 +++++++++++++++--
- 1 file changed, 15 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
-index d8b1cad74faf..760c4a042e6a 100644
---- a/drivers/hid/hid-multitouch.c
-+++ b/drivers/hid/hid-multitouch.c
-@@ -787,9 +787,11 @@ static int mt_touch_event(struct hid_device *hid, struct hid_field *field,
- }
-
- static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
-- struct hid_usage *usage, __s32 value)
-+ struct hid_usage *usage, __s32 value,
-+ bool first_packet)
- {
- struct mt_device *td = hid_get_drvdata(hid);
-+ __s32 cls = td->mtclass.name;
- __s32 quirks = td->mtclass.quirks;
- struct input_dev *input = field->hidinput->input;
-
-@@ -846,6 +848,15 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
- break;
-
- default:
-+ /*
-+ * For Win8 PTP touchpads we should only look at
-+ * non finger/touch events in the first_packet of
-+ * a (possible) multi-packet frame.
-+ */
-+ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) &&
-+ !first_packet)
-+ return;
-+
- if (usage->type)
- input_event(input, usage->type, usage->code,
- value);
-@@ -866,6 +877,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
- struct mt_device *td = hid_get_drvdata(hid);
- __s32 cls = td->mtclass.name;
- struct hid_field *field;
-+ bool first_packet;
- unsigned count;
- int r, n, scantime = 0;
-
-@@ -901,6 +913,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
- }
- td->prev_scantime = scantime;
-
-+ first_packet = td->num_received == 0;
- for (r = 0; r < report->maxfield; r++) {
- field = report->field[r];
- count = field->report_count;
-@@ -910,7 +923,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
-
- for (n = 0; n < count; n++)
- mt_process_mt_event(hid, field, &field->usage[n],
-- field->value[n]);
-+ field->value[n], first_packet);
- }
-
- if (td->num_received >= td->num_expected)
---
-2.14.3
-
diff --git a/freed-ora/current/f26/kernel-aarch64-debug.config b/freed-ora/current/f26/kernel-aarch64-debug.config
index 0ad9131d3..094326b82 100644
--- a/freed-ora/current/f26/kernel-aarch64-debug.config
+++ b/freed-ora/current/f26/kernel-aarch64-debug.config
@@ -1163,6 +1163,7 @@ CONFIG_DEBUG_SECTION_MISMATCH=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACK_USAGE=y
@@ -1284,6 +1285,7 @@ CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_CEC=m
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI=m
+CONFIG_DRM_ETNAVIV_THERMAL=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HDLCD=m
diff --git a/freed-ora/current/f26/kernel-aarch64.config b/freed-ora/current/f26/kernel-aarch64.config
index 60dbf4260..9109fae58 100644
--- a/freed-ora/current/f26/kernel-aarch64.config
+++ b/freed-ora/current/f26/kernel-aarch64.config
@@ -1155,6 +1155,7 @@ CONFIG_DEBUG_SECTION_MISMATCH=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
@@ -1274,6 +1275,7 @@ CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_CEC=m
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI=m
+CONFIG_DRM_ETNAVIV_THERMAL=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HDLCD=m
diff --git a/freed-ora/current/f26/kernel-armv7hl-debug.config b/freed-ora/current/f26/kernel-armv7hl-debug.config
index 6c12892a3..ca1676854 100644
--- a/freed-ora/current/f26/kernel-armv7hl-debug.config
+++ b/freed-ora/current/f26/kernel-armv7hl-debug.config
@@ -1218,6 +1218,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACK_USAGE=y
@@ -1349,6 +1350,7 @@ CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI=m
CONFIG_DRM_ETNAVIV=m
# CONFIG_DRM_ETNAVIV_REGISTER_LOGGING is not set
+CONFIG_DRM_ETNAVIV_THERMAL=y
CONFIG_DRM_EXYNOS5433_DECON=y
CONFIG_DRM_EXYNOS7_DECON=y
CONFIG_DRM_EXYNOS_DPI=y
diff --git a/freed-ora/current/f26/kernel-armv7hl-lpae-debug.config b/freed-ora/current/f26/kernel-armv7hl-lpae-debug.config
index 17018d288..5ecb8fe15 100644
--- a/freed-ora/current/f26/kernel-armv7hl-lpae-debug.config
+++ b/freed-ora/current/f26/kernel-armv7hl-lpae-debug.config
@@ -1164,6 +1164,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACK_USAGE=y
@@ -1292,6 +1293,7 @@ CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_CEC=m
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI=m
+CONFIG_DRM_ETNAVIV_THERMAL=y
CONFIG_DRM_EXYNOS5433_DECON=y
CONFIG_DRM_EXYNOS7_DECON=y
CONFIG_DRM_EXYNOS_DPI=y
diff --git a/freed-ora/current/f26/kernel-armv7hl-lpae.config b/freed-ora/current/f26/kernel-armv7hl-lpae.config
index 6d4e2ac7e..b09ce7d5d 100644
--- a/freed-ora/current/f26/kernel-armv7hl-lpae.config
+++ b/freed-ora/current/f26/kernel-armv7hl-lpae.config
@@ -1155,6 +1155,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
@@ -1282,6 +1283,7 @@ CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_CEC=m
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI=m
+CONFIG_DRM_ETNAVIV_THERMAL=y
CONFIG_DRM_EXYNOS5433_DECON=y
CONFIG_DRM_EXYNOS7_DECON=y
CONFIG_DRM_EXYNOS_DPI=y
diff --git a/freed-ora/current/f26/kernel-armv7hl.config b/freed-ora/current/f26/kernel-armv7hl.config
index f5ecdde5b..becb063b3 100644
--- a/freed-ora/current/f26/kernel-armv7hl.config
+++ b/freed-ora/current/f26/kernel-armv7hl.config
@@ -1209,6 +1209,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
@@ -1339,6 +1340,7 @@ CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI=m
CONFIG_DRM_ETNAVIV=m
# CONFIG_DRM_ETNAVIV_REGISTER_LOGGING is not set
+CONFIG_DRM_ETNAVIV_THERMAL=y
CONFIG_DRM_EXYNOS5433_DECON=y
CONFIG_DRM_EXYNOS7_DECON=y
CONFIG_DRM_EXYNOS_DPI=y
diff --git a/freed-ora/current/f26/kernel-i686-PAE.config b/freed-ora/current/f26/kernel-i686-PAE.config
index 91b39982e..09c53b9ca 100644
--- a/freed-ora/current/f26/kernel-i686-PAE.config
+++ b/freed-ora/current/f26/kernel-i686-PAE.config
@@ -1005,6 +1005,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACK_USAGE is not set
diff --git a/freed-ora/current/f26/kernel-i686-PAEdebug.config b/freed-ora/current/f26/kernel-i686-PAEdebug.config
index b71164523..ec5d53cf5 100644
--- a/freed-ora/current/f26/kernel-i686-PAEdebug.config
+++ b/freed-ora/current/f26/kernel-i686-PAEdebug.config
@@ -1014,6 +1014,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACKOVERFLOW=y
diff --git a/freed-ora/current/f26/kernel-i686-debug.config b/freed-ora/current/f26/kernel-i686-debug.config
index 303a47570..7cbbf4d65 100644
--- a/freed-ora/current/f26/kernel-i686-debug.config
+++ b/freed-ora/current/f26/kernel-i686-debug.config
@@ -1014,6 +1014,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACKOVERFLOW=y
diff --git a/freed-ora/current/f26/kernel-i686.config b/freed-ora/current/f26/kernel-i686.config
index 73acc16ed..47a1afece 100644
--- a/freed-ora/current/f26/kernel-i686.config
+++ b/freed-ora/current/f26/kernel-i686.config
@@ -1005,6 +1005,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACK_USAGE is not set
diff --git a/freed-ora/current/f26/kernel-ppc64-debug.config b/freed-ora/current/f26/kernel-ppc64-debug.config
index 82bc5f4a6..189cb87f1 100644
--- a/freed-ora/current/f26/kernel-ppc64-debug.config
+++ b/freed-ora/current/f26/kernel-ppc64-debug.config
@@ -994,6 +994,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACKOVERFLOW=y
diff --git a/freed-ora/current/f26/kernel-ppc64.config b/freed-ora/current/f26/kernel-ppc64.config
index a90d778b1..76de41cf4 100644
--- a/freed-ora/current/f26/kernel-ppc64.config
+++ b/freed-ora/current/f26/kernel-ppc64.config
@@ -985,6 +985,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACK_USAGE is not set
diff --git a/freed-ora/current/f26/kernel-ppc64le-debug.config b/freed-ora/current/f26/kernel-ppc64le-debug.config
index 381bc75d8..16e3ea1d5 100644
--- a/freed-ora/current/f26/kernel-ppc64le-debug.config
+++ b/freed-ora/current/f26/kernel-ppc64le-debug.config
@@ -948,6 +948,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACKOVERFLOW=y
diff --git a/freed-ora/current/f26/kernel-ppc64le.config b/freed-ora/current/f26/kernel-ppc64le.config
index 45232f5b9..0c168bce2 100644
--- a/freed-ora/current/f26/kernel-ppc64le.config
+++ b/freed-ora/current/f26/kernel-ppc64le.config
@@ -939,6 +939,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACK_USAGE is not set
diff --git a/freed-ora/current/f26/kernel-s390x-debug.config b/freed-ora/current/f26/kernel-s390x-debug.config
index b661e9d0e..6df5be395 100644
--- a/freed-ora/current/f26/kernel-s390x-debug.config
+++ b/freed-ora/current/f26/kernel-s390x-debug.config
@@ -951,6 +951,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACK_USAGE=y
diff --git a/freed-ora/current/f26/kernel-s390x.config b/freed-ora/current/f26/kernel-s390x.config
index 2b4be382a..172445b5a 100644
--- a/freed-ora/current/f26/kernel-s390x.config
+++ b/freed-ora/current/f26/kernel-s390x.config
@@ -942,6 +942,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
diff --git a/freed-ora/current/f26/kernel-x86_64-debug.config b/freed-ora/current/f26/kernel-x86_64-debug.config
index 42f4b5c64..ff7277347 100644
--- a/freed-ora/current/f26/kernel-x86_64-debug.config
+++ b/freed-ora/current/f26/kernel-x86_64-debug.config
@@ -1054,6 +1054,7 @@ CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_STACKOVERFLOW=y
diff --git a/freed-ora/current/f26/kernel-x86_64.config b/freed-ora/current/f26/kernel-x86_64.config
index fd50cea41..c675fb3a7 100644
--- a/freed-ora/current/f26/kernel-x86_64.config
+++ b/freed-ora/current/f26/kernel-x86_64.config
@@ -1045,6 +1045,7 @@ CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_SET_MODULE_RONX=y
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_SHIRQ=y
+CONFIG_DEBUG_SHOW_MEMALLOC_LINE=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACK_USAGE is not set
diff --git a/freed-ora/current/f26/kernel.spec b/freed-ora/current/f26/kernel.spec
index dc9f417ca..0d35053a0 100644
--- a/freed-ora/current/f26/kernel.spec
+++ b/freed-ora/current/f26/kernel.spec
@@ -92,7 +92,7 @@ Summary: The Linux kernel
%if 0%{?released_kernel}
# Do we have a -stable update to apply?
-%define stable_update 10
+%define stable_update 11
# Set rpm version accordingly
%if 0%{?stable_update}
%define stablerev %{stable_update}
@@ -658,7 +658,6 @@ Patch628: 0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch
# Adding these suggested by Benjamin Tissoires
# Queued in hid.git/for-4.16/hid-quirks-cleanup/multitouch for merging into 4.16
Patch630: 0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
-Patch631: 0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch
Patch632: 0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch
# Make SATA link powermanagement policy configurable for:
@@ -690,6 +689,12 @@ Patch661: drm-i915-dp-Write-to-SET_POWER-dpcd-to-enable-MST-hub..patch
# rhbz 1546709
Patch662: mm-khugepaged-Convert-VM_BUG_ON-to-collapse-fail.patch
+# CVE-2017-18232 rhbz 1558066 1558067
+Patch663: 0001-scsi-libsas-direct-call-probe-and-destruct.patch
+
+# rhbz 1547037
+Patch664: mmu-ALIGN_DOWN-correct-variable.patch
+
# END OF PATCH DEFINITIONS
%endif
@@ -2049,6 +2054,15 @@ fi
#
#
%changelog
+* Tue Mar 20 2018 Alexandre Oliva <lxoliva@fsfla.org> -libre
+- GNU Linux-libre 4.15.11-gnu.
+
+* Mon Mar 19 2018 Laura Abbott <labbott@redhat.com> - 4.15.11-200
+- Linux v4.15.11
+
+* Mon Mar 19 2018 Justin M. Forbes <jforbes@fedoraproject.org>
+- Fix CVE-2017-18232 (rhbz 1558066 1558067)
+
* Fri Mar 16 2018 Alexandre Oliva <lxoliva@fsfla.org> -libre
- GNU Linux-libre 4.15.10-gnu.
diff --git a/freed-ora/current/f26/mmu-ALIGN_DOWN-correct-variable.patch b/freed-ora/current/f26/mmu-ALIGN_DOWN-correct-variable.patch
new file mode 100644
index 000000000..5ea481a6b
--- /dev/null
+++ b/freed-ora/current/f26/mmu-ALIGN_DOWN-correct-variable.patch
@@ -0,0 +1,49 @@
+From 73422d1684caa09afe011cc404477836b537ac6b Mon Sep 17 00:00:00 2001
+From: Maris Nartiss <maris.nartiss@gmail.com>
+Date: Mon, 19 Mar 2018 09:55:07 -0700
+Subject: [PATCH] mmu: ALIGN_DOWN correct variable
+
+Commit 7110c89bb8852ff8b0f88ce05b332b3fe22bd11e ("mmu: swap out round
+for ALIGN") replaced two calls to round/rounddown with ALIGN/ALIGN_DOWN,
+but erroneously applied ALIGN_DOWN to a different variable (addr) and left
+intended variable (tail) not rounded/ALIGNed.
+
+As a result screen corruption, X lockups are observable. An example of kernel
+log of affected system with NV98 card where it was bisected:
+
+nouveau 0000:01:00.0: gr: TRAP_M2MF 00000002 [IN]
+nouveau 0000:01:00.0: gr: TRAP_M2MF 00320951 400007c0 00000000 04000000
+nouveau 0000:01:00.0: gr: 00200000 [] ch 1 [000fbbe000 DRM] subc 4 class 5039
+mthd 0100 data 00000000
+nouveau 0000:01:00.0: fb: trapped read at 0040000000 on channel 1
+[0fbbe000 DRM]
+engine 00 [PGRAPH] client 03 [DISPATCH] subclient 04 [M2M_IN] reason 00000006
+[NULL_DMAOBJ]
+
+Fixes bug 105173 ("[MCP79][Regression] Unhandled NULL pointer dereference in
+nvkm_object_unmap since kernel 4.15")
+https://bugs.freedesktop.org/show_bug.cgi?id=105173
+
+Fixes: 7110c89bb885 ("mmu: swap out round for ALIGN ")
+Tested-by: Pierre Moreau <pierre.morrow@free.fr>
+Reviewed-by: Pierre Moreau <pierre.morrow@free.fr>
+---
+ drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c b/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c
+index e35d3e17cd7c..c6e3d0dd1070 100644
+--- a/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c
++++ b/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c
+@@ -1354,7 +1354,7 @@ nvkm_vmm_get_locked(struct nvkm_vmm *vmm, bool getref, bool mapref, bool sparse,
+
+ tail = this->addr + this->size;
+ if (vmm->func->page_block && next && next->page != p)
+- tail = ALIGN_DOWN(addr, vmm->func->page_block);
++ tail = ALIGN_DOWN(tail, vmm->func->page_block);
+
+ if (addr <= tail && tail - addr >= size) {
+ rb_erase(&this->tree, &vmm->free);
+--
+2.14.3
+
diff --git a/freed-ora/current/f26/patch-4.15-gnu-4.15.10-gnu.xz.sign b/freed-ora/current/f26/patch-4.15-gnu-4.15.10-gnu.xz.sign
deleted file mode 100644
index 28b645705..000000000
--- a/freed-ora/current/f26/patch-4.15-gnu-4.15.10-gnu.xz.sign
+++ /dev/null
@@ -1,6 +0,0 @@
------BEGIN PGP SIGNATURE-----
-
-iF0EABECAB0WIQRHRALIxYLa++OJxCe8t8+Hfn1HpwUCWqqxOwAKCRC8t8+Hfn1H
-p14UAJ9OvDflFLnJDrIpNsPJPmJc3+3nQACfdiQdaWso1WsJzezedK5MxdO1rgk=
-=FYhq
------END PGP SIGNATURE-----
diff --git a/freed-ora/current/f26/patch-4.15-gnu-4.15.11-gnu.xz.sign b/freed-ora/current/f26/patch-4.15-gnu-4.15.11-gnu.xz.sign
new file mode 100644
index 000000000..09e749c67
--- /dev/null
+++ b/freed-ora/current/f26/patch-4.15-gnu-4.15.11-gnu.xz.sign
@@ -0,0 +1,6 @@
+-----BEGIN PGP SIGNATURE-----
+
+iF0EABECAB0WIQRHRALIxYLa++OJxCe8t8+Hfn1HpwUCWrAj+QAKCRC8t8+Hfn1H
+pxubAJ4zi9sEUb6BfY6MqgpugJh9Fge43QCfTcvkjFWfpufIj3PN72Un59DXGPk=
+=It9t
+-----END PGP SIGNATURE-----
diff --git a/freed-ora/current/f26/sources b/freed-ora/current/f26/sources
index d418e404a..ca4559d2c 100644
--- a/freed-ora/current/f26/sources
+++ b/freed-ora/current/f26/sources
@@ -1,2 +1,2 @@
SHA512 (linux-libre-4.15-gnu.tar.xz) = a55cc663c6fb1e1cfa7905282b368b5d5888bc2398f0acf37e5bb9a232ded04fd566b1980e654da26aaec005332e458581495184d6bd4cec669181085d4d78a5
-SHA512 (patch-4.15-gnu-4.15.10-gnu.xz) = 74d7cb1a74a4020e71646da8853287b062562c8a8c965a6e4b4e6a8c5a5c43711c6a74359634cf119821f4f6caef4caf8e1647ff82cce3eb4b189d918956ff68
+SHA512 (patch-4.15-gnu-4.15.11-gnu.xz) = 0ee05924956716bbac97d5a3282df6a40c90852615be2a9d22f74984880efc6ce61991c3de4241bc4fbeb5c9d869a1d937518dac8bade257359996c053fcb977
OpenPOWER on IntegriCloud