diff --git a/kernel/drivers/module-bbswitch/pspec.xml b/kernel/drivers/module-bbswitch/pspec.xml
index 392f767e..d0651179 100644
--- a/kernel/drivers/module-bbswitch/pspec.xml
+++ b/kernel/drivers/module-bbswitch/pspec.xml
@@ -11,7 +11,7 @@
Kernel module allowing to switch dedicated graphics card on Optimus laptops
kernel module allowing to switch dedicated graphics card on Optimus laptops
- kernel-module-headers
+ kernel-module-headers
https://github.com/Bumblebee-Project/bbswitch/archive/v0.8.tar.gz
@@ -20,7 +20,7 @@
module-bbswitch
- kernel
+ kernel
/lib/modules
@@ -34,6 +34,13 @@
+
+ 2016-08-24
+ 0.8
+ Rebuild for new kernel.
+ Ertuğrul Erata
+ ertugrulerata@gmail.com
+
2016-08-06
0.8
diff --git a/kernel/drivers/module-broadcom-wl/pspec.xml b/kernel/drivers/module-broadcom-wl/pspec.xml
index 1ab2b28a..bc8d8f2d 100644
--- a/kernel/drivers/module-broadcom-wl/pspec.xml
+++ b/kernel/drivers/module-broadcom-wl/pspec.xml
@@ -15,7 +15,7 @@
http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz
http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz
- kernel-module-headers
+ kernel-module-headers
patch/license.patch
@@ -27,7 +27,7 @@
module-broadcom-wl
- kernel
+ kernel
module-broadcom-wl-userspace
@@ -56,6 +56,13 @@
+
+ 2016-08-24
+ 6.30.223.271
+ Rebuild for new kernel.
+ PisiLinux Community
+ admin@pisilinux.org
+
2016-08-06
6.30.223.271
diff --git a/kernel/drivers/ndiswrapper/pspec.xml b/kernel/drivers/ndiswrapper/pspec.xml
index 9928faf5..dd4d934c 100644
--- a/kernel/drivers/ndiswrapper/pspec.xml
+++ b/kernel/drivers/ndiswrapper/pspec.xml
@@ -15,7 +15,7 @@
module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux drivers.
http://download.sourceforge.net/ndiswrapper/ndiswrapper-1.60.tar.gz
- kernel-module-headers
+ kernel-module-headers
upstream.patch
@@ -25,7 +25,7 @@
ndiswrapper
- kernel
+ kernel
/lib/modules
@@ -41,6 +41,13 @@
+
+ 2016-08-24
+ 1.60
+ Rebuild for new kernel.
+ PisiLinux Community
+ admin@pisilinux.org
+
2016-08-06
1.60
diff --git a/kernel/kernel/files/configs/kernel-x86_64-config b/kernel/kernel/files/configs/kernel-x86_64-config
index d91fa00f..177bdf87 100644
--- a/kernel/kernel/files/configs/kernel-x86_64-config
+++ b/kernel/kernel/files/configs/kernel-x86_64-config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86_64 4.7.0 Kernel Configuration
+# Linux/x86_64 4.7.2 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -3802,7 +3802,7 @@ CONFIG_RETU_WATCHDOG=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_F71808E_WDT=m
-CONFIG_SP5100_TCO=m
+# CONFIG_SP5100_TCO is not set
CONFIG_SBC_FITPC2_WATCHDOG=m
# CONFIG_EUROTECH_WDT is not set
CONFIG_IB700_WDT=m
@@ -5944,9 +5944,9 @@ CONFIG_GOOGLE_SMI=m
#
# EFI (Extensible Firmware Interface) Support
#
-CONFIG_EFI_VARS=y
+CONFIG_EFI_VARS=m
CONFIG_EFI_ESRT=y
-CONFIG_EFI_VARS_PSTORE=y
+CONFIG_EFI_VARS_PSTORE=m
# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
CONFIG_EFI_RUNTIME_MAP=y
# CONFIG_EFI_FAKE_MEMMAP is not set
@@ -6090,7 +6090,7 @@ CONFIG_TMPFS_XATTR=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_CONFIGFS_FS=y
-CONFIG_EFIVAR_FS=m
+CONFIG_EFIVAR_FS=y
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_ORANGEFS_FS is not set
# CONFIG_ADFS_FS is not set
@@ -6802,7 +6802,7 @@ CONFIG_ARCH_HAS_MMIO_FLUSH=y
#
# Unofficial 3rd party kernel additions
#
-CONFIG_VIAHSS=m
CONFIG_RTL8723BS=m
CONFIG_WLAN_SDIO=y
CONFIG_NDISWRAPPER=m
+CONFIG_VIAHSS=m
diff --git a/kernel/kernel/pspec.xml b/kernel/kernel/pspec.xml
index 0a42c675..694e8c67 100644
--- a/kernel/kernel/pspec.xml
+++ b/kernel/kernel/pspec.xml
@@ -190,7 +190,7 @@
2016-08-24
4.7.2
- version bump.
+ Version Bump.
security
systemRestart
diff --git a/kernel/tools/cpupowertools/files/patches/linux/patch-4.7.2.xz b/kernel/tools/cpupowertools/files/patches/linux/patch-4.7.2.xz
new file mode 100644
index 00000000..cbf8f777
Binary files /dev/null and b/kernel/tools/cpupowertools/files/patches/linux/patch-4.7.2.xz differ
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/Bluetooth-Add-support-of-13d3-3490-AR3012-device.patch b/kernel/tools/cpupowertools/files/patches/mageia/Bluetooth-Add-support-of-13d3-3490-AR3012-device.patch
deleted file mode 100644
index 851dcecd..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/Bluetooth-Add-support-of-13d3-3490-AR3012-device.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 12d868964f7352e8b18e755488f7265a93431de1 Mon Sep 17 00:00:00 2001
-From: Dmitry Tunin
-Date: Tue, 12 Jul 2016 01:35:18 +0300
-Subject: [PATCH] Bluetooth: Add support of 13d3:3490 AR3012 device
-
-T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=05 Dev#= 5 Spd=12 MxCh= 0
-D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
-P: Vendor=13d3 ProdID=3490 Rev=00.01
-C: #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
-I: If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
-I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
-
-BugLink: https://bugs.launchpad.net/bugs/1600623
-
-Signed-off-by: Dmitry Tunin
-Signed-off-by: Marcel Holtmann
-Cc: stable@vger.kernel.org
----
- drivers/bluetooth/ath3k.c | 2 ++
- drivers/bluetooth/btusb.c | 1 +
- 2 files changed, 3 insertions(+)
-
-diff --git a/drivers/bluetooth/ath3k.c b/drivers/bluetooth/ath3k.c
-index 2589468..fadba88 100644
---- a/drivers/bluetooth/ath3k.c
-+++ b/drivers/bluetooth/ath3k.c
-@@ -123,6 +123,7 @@ static const struct usb_device_id ath3k_table[] = {
- { USB_DEVICE(0x13d3, 0x3472) },
- { USB_DEVICE(0x13d3, 0x3474) },
- { USB_DEVICE(0x13d3, 0x3487) },
-+ { USB_DEVICE(0x13d3, 0x3490) },
-
- /* Atheros AR5BBU12 with sflash firmware */
- { USB_DEVICE(0x0489, 0xE02C) },
-@@ -190,6 +191,7 @@ static const struct usb_device_id ath3k_blist_tbl[] = {
- { USB_DEVICE(0x13d3, 0x3472), .driver_info = BTUSB_ATH3012 },
- { USB_DEVICE(0x13d3, 0x3474), .driver_info = BTUSB_ATH3012 },
- { USB_DEVICE(0x13d3, 0x3487), .driver_info = BTUSB_ATH3012 },
-+ { USB_DEVICE(0x13d3, 0x3490), .driver_info = BTUSB_ATH3012 },
-
- /* Atheros AR5BBU22 with sflash firmware */
- { USB_DEVICE(0x0489, 0xE036), .driver_info = BTUSB_ATH3012 },
-diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
-index f2e8fd7..811f9b9 100644
---- a/drivers/bluetooth/btusb.c
-+++ b/drivers/bluetooth/btusb.c
-@@ -237,6 +237,7 @@ static const struct usb_device_id blacklist_table[] = {
- { USB_DEVICE(0x13d3, 0x3472), .driver_info = BTUSB_ATH3012 },
- { USB_DEVICE(0x13d3, 0x3474), .driver_info = BTUSB_ATH3012 },
- { USB_DEVICE(0x13d3, 0x3487), .driver_info = BTUSB_ATH3012 },
-+ { USB_DEVICE(0x13d3, 0x3490), .driver_info = BTUSB_ATH3012 },
-
- /* Atheros AR5BBU12 with sflash firmware */
- { USB_DEVICE(0x0489, 0xe02c), .driver_info = BTUSB_IGNORE },
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/HID-uhid-fix-timeout-when-probe-races-with-IO.patch b/kernel/tools/cpupowertools/files/patches/mageia/HID-uhid-fix-timeout-when-probe-races-with-IO.patch
deleted file mode 100644
index c166ab8d..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/HID-uhid-fix-timeout-when-probe-races-with-IO.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From 67f8ecc550b5bda03335f845dc869b8501d25fd0 Mon Sep 17 00:00:00 2001
-From: Roderick Colenbrander
-Date: Wed, 18 May 2016 13:11:09 -0700
-Subject: [PATCH] HID: uhid: fix timeout when probe races with IO
-
-Many devices use userspace bluetooth stacks like BlueZ or Bluedroid in combination
-with uhid. If any of these stacks is used with a HID device for which the driver
-performs a HID request as part .probe (or technically another HID operation),
-this results in a deadlock situation. The deadlock results in a 5 second timeout
-for I/O operations in HID drivers, so isn't fatal, but none of the I/O operations
-have a chance of succeeding.
-
-The root cause for the problem is that uhid only allows for one request to be
-processed at a time per uhid instance and locks out other operations. This means
-that if a user space is creating a new HID device through 'UHID_CREATE', which
-ultimately triggers '.probe' through the HID layer. Then any HID request e.g. a
-read for calibration data would trigger a HID operation on uhid again, but it
-won't go out to userspace, because it is still stuck in UHID_CREATE.
-In addition bluetooth stacks are typically single threaded, so they wouldn't be
-able to handle any requests while waiting on uhid.
-
-Lucikly the UHID spec is somewhat flexible and allows for fixing the issue,
-without breaking user space. The idea which the patch implements as discussed
-with David Herrmann is to decouple adding of a hid device (which triggers .probe)
-from UHID_CREATE. The work will kick off roughly once UHID_CREATE completed (or
-else will wait a tiny bit of time in .probe for a lock). A HID driver has to call
-HID to call 'hid_hw_start()' as part of .probe once it is ready for I/O, which
-triggers UHID_START to user space. Any HID operations should function now within
-.probe and won't deadlock because userspace is stuck on UHID_CREATE.
-
-We verified this patch on Bluedroid with Android 6.0 and on desktop Linux with
-BlueZ stacks. Prior to the patch they had the deadlock issue.
-
-[jkosina@suse.cz: reword subject]
-Signed-off-by: Roderick Colenbrander
-Cc: stable@vger.kernel.org
-Signed-off-by: Jiri Kosina
----
- drivers/hid/uhid.c | 33 ++++++++++++++++++++++++---------
- 1 file changed, 24 insertions(+), 9 deletions(-)
-
-diff --git a/drivers/hid/uhid.c b/drivers/hid/uhid.c
-index 16b6f11..99ec3ff 100644
---- a/drivers/hid/uhid.c
-+++ b/drivers/hid/uhid.c
-@@ -51,10 +51,26 @@ struct uhid_device {
- u32 report_id;
- u32 report_type;
- struct uhid_event report_buf;
-+ struct work_struct worker;
- };
-
- static struct miscdevice uhid_misc;
-
-+static void uhid_device_add_worker(struct work_struct *work)
-+{
-+ struct uhid_device *uhid = container_of(work, struct uhid_device, worker);
-+ int ret;
-+
-+ ret = hid_add_device(uhid->hid);
-+ if (ret) {
-+ hid_err(uhid->hid, "Cannot register HID device: error %d\n", ret);
-+
-+ hid_destroy_device(uhid->hid);
-+ uhid->hid = NULL;
-+ uhid->running = false;
-+ }
-+}
-+
- static void uhid_queue(struct uhid_device *uhid, struct uhid_event *ev)
- {
- __u8 newhead;
-@@ -498,18 +514,14 @@ static int uhid_dev_create2(struct uhid_device *uhid,
- uhid->hid = hid;
- uhid->running = true;
-
-- ret = hid_add_device(hid);
-- if (ret) {
-- hid_err(hid, "Cannot register HID device\n");
-- goto err_hid;
-- }
-+ /* Adding of a HID device is done through a worker, to allow HID drivers
-+ * which use feature requests during .probe to work, without they would
-+ * be blocked on devlock, which is held by uhid_char_write.
-+ */
-+ schedule_work(&uhid->worker);
-
- return 0;
-
--err_hid:
-- hid_destroy_device(hid);
-- uhid->hid = NULL;
-- uhid->running = false;
- err_free:
- kfree(uhid->rd_data);
- uhid->rd_data = NULL;
-@@ -550,6 +562,8 @@ static int uhid_dev_destroy(struct uhid_device *uhid)
- uhid->running = false;
- wake_up_interruptible(&uhid->report_wait);
-
-+ cancel_work_sync(&uhid->worker);
-+
- hid_destroy_device(uhid->hid);
- kfree(uhid->rd_data);
-
-@@ -612,6 +626,7 @@ static int uhid_char_open(struct inode *inode, struct file *file)
- init_waitqueue_head(&uhid->waitq);
- init_waitqueue_head(&uhid->report_wait);
- uhid->running = false;
-+ INIT_WORK(&uhid->worker, uhid_device_add_worker);
-
- file->private_data = uhid;
- nonseekable_open(inode, file);
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/Revert-cpufreq-pcc-cpufreq-update-default-value-of-c.patch b/kernel/tools/cpupowertools/files/patches/mageia/Revert-cpufreq-pcc-cpufreq-update-default-value-of-c.patch
deleted file mode 100644
index fa50aa8f..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/Revert-cpufreq-pcc-cpufreq-update-default-value-of-c.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From da7d3abe1c9e5ebac2cf86f97e9e89888a5e2094 Mon Sep 17 00:00:00 2001
-From: Andreas Herrmann
-Date: Fri, 22 Jul 2016 17:14:11 +0200
-Subject: [PATCH] Revert "cpufreq: pcc-cpufreq: update default value of
- cpuinfo_transition_latency"
-
-This reverts commit 790d849bf811a8ab5d4cd2cce0f6fda92f6aebf2.
-
-Using a v4.7-rc7 kernel on a HP ProLiant triggered following messages
-
- pcc-cpufreq: (v1.10.00) driver loaded with frequency limits: 1200 MHz, 2800 MHz
- cpufreq: ondemand governor failed, too long transition latency of HW, fallback to performance governor
-
-The last line was shown for each CPU in the system.
-Testing v4.5 (where commit 790d849b was integrated) triggered
-similar messages. Same behaviour on a 2nd HP Proliant system.
-
-So commit 790d849bf (cpufreq: pcc-cpufreq: update default value of
-cpuinfo_transition_latency) causes the system to use performance
-governor which, I guess, was not the intention of the patch.
-
-Enabling debug output in pcc-cpufreq provides following verbose output:
-
- pcc-cpufreq: (v1.10.00) driver loaded with frequency limits: 1200 MHz, 2800 MHz
- pcc_get_offset: for CPU 0: pcc_cpu_data input_offset: 0x44, pcc_cpu_data output_offset: 0x48
- init: policy->max is 2800000, policy->min is 1200000
- get: get_freq for CPU 0
- get: SUCCESS: (virtual) output_offset for cpu 0 is 0xffffc9000d7c0048, contains a value of: 0xff06. Speed is: 168000 MHz
- cpufreq: ondemand governor failed, too long transition latency of HW, fallback to performance governor
- target: CPU 0 should go to target freq: 2800000 (virtual) input_offset is 0xffffc9000d7c0044
- target: was SUCCESSFUL for cpu 0
-
-I am asking to revert 790d849bf to re-enable usage of ondemand
-governor with pcc-cpufreq.
-
-Fixes: 790d849bf (cpufreq: pcc-cpufreq: update default value of cpuinfo_transition_latency)
-CC: # 4.5+
-Signed-off-by: Andreas Herrmann
-Signed-off-by: Rafael J. Wysocki
----
- Documentation/cpu-freq/pcc-cpufreq.txt | 4 ++--
- drivers/cpufreq/pcc-cpufreq.c | 2 --
- 2 files changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/Documentation/cpu-freq/pcc-cpufreq.txt b/Documentation/cpu-freq/pcc-cpufreq.txt
-index 0a94224..9e3c3b3 100644
---- a/Documentation/cpu-freq/pcc-cpufreq.txt
-+++ b/Documentation/cpu-freq/pcc-cpufreq.txt
-@@ -159,8 +159,8 @@ to be strictly associated with a P-state.
-
- 2.2 cpuinfo_transition_latency:
- -------------------------------
--The cpuinfo_transition_latency field is CPUFREQ_ETERNAL. The PCC specification
--does not include a field to expose this value currently.
-+The cpuinfo_transition_latency field is 0. The PCC specification does
-+not include a field to expose this value currently.
-
- 2.3 cpuinfo_cur_freq:
- ---------------------
-diff --git a/drivers/cpufreq/pcc-cpufreq.c b/drivers/cpufreq/pcc-cpufreq.c
-index a7ecb9a..3f0ce2a 100644
---- a/drivers/cpufreq/pcc-cpufreq.c
-+++ b/drivers/cpufreq/pcc-cpufreq.c
-@@ -555,8 +555,6 @@ static int pcc_cpufreq_cpu_init(struct cpufreq_policy *policy)
- policy->min = policy->cpuinfo.min_freq =
- ioread32(&pcch_hdr->minimum_frequency) * 1000;
-
-- policy->cpuinfo.transition_latency = CPUFREQ_ETERNAL;
--
- pr_debug("init: policy->max is %d, policy->min is %d\n",
- policy->max, policy->min);
- out:
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/fs-ext4-don-t-call-ext4_should_journal_data-on-the-jour.patch b/kernel/tools/cpupowertools/files/patches/mageia/fs-ext4-don-t-call-ext4_should_journal_data-on-the-jour.patch
deleted file mode 100644
index cf55d7cc..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/fs-ext4-don-t-call-ext4_should_journal_data-on-the-jour.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 6a7fd522a7c94cdef0a3b08acf8e6702056e635c Mon Sep 17 00:00:00 2001
-From: Vegard Nossum
-Date: Mon, 4 Jul 2016 11:03:00 -0400
-Subject: [PATCH] ext4: don't call ext4_should_journal_data() on the journal
- inode
-
-If ext4_fill_super() fails early, it's possible for ext4_evict_inode()
-to call ext4_should_journal_data() before superblock options and flags
-are fully set up. In that case, the iput() on the journal inode can
-end up causing a BUG().
-
-Work around this problem by reordering the tests so we only call
-ext4_should_journal_data() after we know it's not the journal inode.
-
-Fixes: 2d859db3e4 ("ext4: fix data corruption in inodes with journalled data")
-Fixes: 2b405bfa84 ("ext4: fix data=journal fast mount/umount hang")
-Cc: Jan Kara
-Cc: stable@vger.kernel.org
-Signed-off-by: Vegard Nossum
-Signed-off-by: Theodore Ts'o
-Reviewed-by: Jan Kara
----
- fs/ext4/inode.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
-index 321a31c..ea39d19 100644
---- a/fs/ext4/inode.c
-+++ b/fs/ext4/inode.c
-@@ -211,9 +211,9 @@ void ext4_evict_inode(struct inode *inode)
- * Note that directories do not have this problem because they
- * don't use page cache.
- */
-- if (ext4_should_journal_data(inode) &&
-- (S_ISLNK(inode->i_mode) || S_ISREG(inode->i_mode)) &&
-- inode->i_ino != EXT4_JOURNAL_INO) {
-+ if (inode->i_ino != EXT4_JOURNAL_INO &&
-+ ext4_should_journal_data(inode) &&
-+ (S_ISLNK(inode->i_mode) || S_ISREG(inode->i_mode))) {
- journal_t *journal = EXT4_SB(inode->i_sb)->s_journal;
- tid_t commit_tid = EXT4_I(inode)->i_datasync_tid;
-
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/fs-ext4-fix-deadlock-during-page-writeback.patch b/kernel/tools/cpupowertools/files/patches/mageia/fs-ext4-fix-deadlock-during-page-writeback.patch
deleted file mode 100644
index ea56d5d8..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/fs-ext4-fix-deadlock-during-page-writeback.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 646caa9c8e196880b41cd3e3d33a2ebc752bdb85 Mon Sep 17 00:00:00 2001
-From: Jan Kara
-Date: Mon, 4 Jul 2016 10:14:01 -0400
-Subject: [PATCH] ext4: fix deadlock during page writeback
-
-Commit 06bd3c36a733 (ext4: fix data exposure after a crash) uncovered a
-deadlock in ext4_writepages() which was previously much harder to hit.
-After this commit xfstest generic/130 reproduces the deadlock on small
-filesystems.
-
-The problem happens when ext4_do_update_inode() sets LARGE_FILE feature
-and marks current inode handle as synchronous. That subsequently results
-in ext4_journal_stop() called from ext4_writepages() to block waiting for
-transaction commit while still holding page locks, reference to io_end,
-and some prepared bio in mpd structure each of which can possibly block
-transaction commit from completing and thus results in deadlock.
-
-Fix the problem by releasing page locks, io_end reference, and
-submitting prepared bio before calling ext4_journal_stop().
-
-[ Changed to defer the call to ext4_journal_stop() only if the handle
- is synchronous. --tytso ]
-
-Reported-and-tested-by: Eryu Guan
-Signed-off-by: Theodore Ts'o
-CC: stable@vger.kernel.org
-Signed-off-by: Jan Kara
----
- fs/ext4/inode.c | 29 ++++++++++++++++++++++++++---
- 1 file changed, 26 insertions(+), 3 deletions(-)
-
-diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
-index 44ee5d9..321a31c 100644
---- a/fs/ext4/inode.c
-+++ b/fs/ext4/inode.c
-@@ -2754,13 +2754,36 @@ retry:
- done = true;
- }
- }
-- ext4_journal_stop(handle);
-+ /*
-+ * Caution: If the handle is synchronous,
-+ * ext4_journal_stop() can wait for transaction commit
-+ * to finish which may depend on writeback of pages to
-+ * complete or on page lock to be released. In that
-+ * case, we have to wait until after after we have
-+ * submitted all the IO, released page locks we hold,
-+ * and dropped io_end reference (for extent conversion
-+ * to be able to complete) before stopping the handle.
-+ */
-+ if (!ext4_handle_valid(handle) || handle->h_sync == 0) {
-+ ext4_journal_stop(handle);
-+ handle = NULL;
-+ }
- /* Submit prepared bio */
- ext4_io_submit(&mpd.io_submit);
- /* Unlock pages we didn't use */
- mpage_release_unused_pages(&mpd, give_up_on_write);
-- /* Drop our io_end reference we got from init */
-- ext4_put_io_end(mpd.io_submit.io_end);
-+ /*
-+ * Drop our io_end reference we got from init. We have
-+ * to be careful and use deferred io_end finishing if
-+ * we are still holding the transaction as we can
-+ * release the last reference to io_end which may end
-+ * up doing unwritten extent conversion.
-+ */
-+ if (handle) {
-+ ext4_put_io_end_defer(mpd.io_submit.io_end);
-+ ext4_journal_stop(handle);
-+ } else
-+ ext4_put_io_end(mpd.io_submit.io_end);
-
- if (ret == -ENOSPC && sbi->s_journal) {
- /*
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/hp-wmi-Fix-wifi-cannot-be-hard-unblocked.patch b/kernel/tools/cpupowertools/files/patches/mageia/hp-wmi-Fix-wifi-cannot-be-hard-unblocked.patch
deleted file mode 100644
index 6e817416..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/hp-wmi-Fix-wifi-cannot-be-hard-unblocked.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From fc8a601e1175ae351f662506030f9939cb7fdbfe Mon Sep 17 00:00:00 2001
-From: Alex Hung
-Date: Mon, 13 Jun 2016 19:44:00 +0800
-Subject: [PATCH] hp-wmi: Fix wifi cannot be hard-unblocked
-
-Several users reported wifi cannot be unblocked as discussed in [1].
-This patch removes the use of the 2009 flag by BIOS but uses the actual
-WMI function calls - it will be skipped if WMI reports unsupported.
-
-[1] https://bugzilla.kernel.org/show_bug.cgi?id=69131
-
-Signed-off-by: Alex Hung
-Tested-by: Evgenii Shatokhin
-Cc: stable@vger.kernel.org
-Signed-off-by: Darren Hart
----
- drivers/platform/x86/hp-wmi.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/platform/x86/hp-wmi.c b/drivers/platform/x86/hp-wmi.c
-index 6f145f2..96ffda4 100644
---- a/drivers/platform/x86/hp-wmi.c
-+++ b/drivers/platform/x86/hp-wmi.c
-@@ -718,6 +718,11 @@ static int __init hp_wmi_rfkill_setup(struct platform_device *device)
- if (err)
- return err;
-
-+ err = hp_wmi_perform_query(HPWMI_WIRELESS_QUERY, 1, &wireless,
-+ sizeof(wireless), 0);
-+ if (err)
-+ return err;
-+
- if (wireless & 0x1) {
- wifi_rfkill = rfkill_alloc("hp-wifi", &device->dev,
- RFKILL_TYPE_WLAN,
-@@ -882,7 +887,7 @@ static int __init hp_wmi_bios_setup(struct platform_device *device)
- wwan_rfkill = NULL;
- rfkill2_count = 0;
-
-- if (hp_wmi_bios_2009_later() || hp_wmi_rfkill_setup(device))
-+ if (hp_wmi_rfkill_setup(device))
- hp_wmi_rfkill2_setup(device);
-
- err = device_create_file(&device->dev, &dev_attr_display);
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/media-media-usbtv-prevent-access-to-free-d-resources.patch b/kernel/tools/cpupowertools/files/patches/mageia/media-media-usbtv-prevent-access-to-free-d-resources.patch
deleted file mode 100644
index 46e8338c..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/media-media-usbtv-prevent-access-to-free-d-resources.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 2a00932f082aff93c3a55426e0c7af6d0ec03997 Mon Sep 17 00:00:00 2001
-From: Matthew Leach
-Date: Fri, 8 Jul 2016 09:04:27 -0300
-Subject: [PATCH] [media] media: usbtv: prevent access to free'd resources
-
-When disconnecting the usbtv device, the sound card is unregistered
-from ALSA and the snd member of the usbtv struct is set to NULL. If
-the usbtv snd_trigger work is running, this can cause a race condition
-where the kernel will attempt to access free'd resources, shown in
-[1].
-
-This patch fixes the disconnection code by cancelling any snd_trigger
-work before unregistering the sound card from ALSA and checking that
-the snd member still exists in the work function.
-
-[1]:
- usb 3-1.2: USB disconnect, device number 6
- BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
- IP: [] process_one_work+0x30/0x480
- PGD 405bbf067 PUD 405bbe067 PMD 0
- Call Trace:
- [] worker_thread+0x48/0x4e0
- [] ? process_one_work+0x480/0x480
- [] ? process_one_work+0x480/0x480
- [] kthread+0xd8/0xf0
- [] ret_from_fork+0x22/0x40
- [] ? kthread_worker_fn+0x170/0x170
- ---[ end trace 0f3dac5c1a38e610 ]---
-
-Signed-off-by: Matthew Leach
-Tested-by: Peter Sutton
-Cc: stable@vger.kernel.org
-Signed-off-by: Hans Verkuil
-Signed-off-by: Mauro Carvalho Chehab
----
- drivers/media/usb/usbtv/usbtv-audio.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/drivers/media/usb/usbtv/usbtv-audio.c b/drivers/media/usb/usbtv/usbtv-audio.c
-index d4b4db3..1965ff1 100644
---- a/drivers/media/usb/usbtv/usbtv-audio.c
-+++ b/drivers/media/usb/usbtv/usbtv-audio.c
-@@ -292,6 +292,9 @@ static void snd_usbtv_trigger(struct work_struct *work)
- {
- struct usbtv *chip = container_of(work, struct usbtv, snd_trigger);
-
-+ if (!chip->snd)
-+ return;
-+
- if (atomic_read(&chip->snd_stream))
- usbtv_audio_start(chip);
- else
-@@ -392,6 +395,8 @@ err:
-
- void usbtv_audio_free(struct usbtv *usbtv)
- {
-+ cancel_work_sync(&usbtv->snd_trigger);
-+
- if (usbtv->snd && usbtv->udev) {
- snd_card_free(usbtv->snd);
- usbtv->snd = NULL;
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/media-vb2-core-Skip-planes-array-verification-if-pb-.patch b/kernel/tools/cpupowertools/files/patches/mageia/media-vb2-core-Skip-planes-array-verification-if-pb-.patch
deleted file mode 100644
index 18987c08..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/media-vb2-core-Skip-planes-array-verification-if-pb-.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 126f40298446a82116e1f92a1aaf72b8c8228fae Mon Sep 17 00:00:00 2001
-From: Sakari Ailus
-Date: Wed, 11 May 2016 18:44:32 -0300
-Subject: [PATCH] [media] vb2: core: Skip planes array verification if pb is
- NULL
-
-An earlier patch fixing an input validation issue introduced another
-issue: vb2_core_dqbuf() is called with pb argument value NULL in some
-cases, causing a NULL pointer dereference. Fix this by skipping the
-verification as there's nothing to verify.
-
-Fixes: e7e0c3e26587 ("[media] videobuf2-core: Check user space planes array in dqbuf")
-
-Signed-off-by: David R
-Signed-off-by: Sakari Ailus
-Reviewed-by: Hans Verkuil
-Cc: stable@vger.kernel.org # for v4.4 and later
-Signed-off-by: Mauro Carvalho Chehab
----
- drivers/media/v4l2-core/videobuf2-core.c | 10 ++++++----
- 1 file changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/media/v4l2-core/videobuf2-core.c b/drivers/media/v4l2-core/videobuf2-core.c
-index 9fbcb67..633fc1a 100644
---- a/drivers/media/v4l2-core/videobuf2-core.c
-+++ b/drivers/media/v4l2-core/videobuf2-core.c
-@@ -1648,7 +1648,7 @@ static int __vb2_get_done_vb(struct vb2_queue *q, struct vb2_buffer **vb,
- void *pb, int nonblocking)
- {
- unsigned long flags;
-- int ret;
-+ int ret = 0;
-
- /*
- * Wait for at least one buffer to become available on the done_list.
-@@ -1664,10 +1664,12 @@ static int __vb2_get_done_vb(struct vb2_queue *q, struct vb2_buffer **vb,
- spin_lock_irqsave(&q->done_lock, flags);
- *vb = list_first_entry(&q->done_list, struct vb2_buffer, done_entry);
- /*
-- * Only remove the buffer from done_list if v4l2_buffer can handle all
-- * the planes.
-+ * Only remove the buffer from done_list if all planes can be
-+ * handled. Some cases such as V4L2 file I/O and DVB have pb
-+ * == NULL; skip the check then as there's nothing to verify.
- */
-- ret = call_bufop(q, verify_planes_array, *vb, pb);
-+ if (pb)
-+ ret = call_bufop(q, verify_planes_array, *vb, pb);
- if (!ret)
- list_del(&(*vb)->done_entry);
- spin_unlock_irqrestore(&q->done_lock, flags);
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/media-videobuf2-v4l2-Verify-planes-array-in-buffer-d.patch b/kernel/tools/cpupowertools/files/patches/mageia/media-videobuf2-v4l2-Verify-planes-array-in-buffer-d.patch
deleted file mode 100644
index 55c0acea..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/media-videobuf2-v4l2-Verify-planes-array-in-buffer-d.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 83934b75c368f529d084815c463a7ef781dc9751 Mon Sep 17 00:00:00 2001
-From: Sakari Ailus
-Date: Sun, 3 Apr 2016 16:31:03 -0300
-Subject: [PATCH] [media] videobuf2-v4l2: Verify planes array in buffer
- dequeueing
-
-When a buffer is being dequeued using VIDIOC_DQBUF IOCTL, the exact buffer
-which will be dequeued is not known until the buffer has been removed from
-the queue. The number of planes is specific to a buffer, not to the queue.
-
-This does lead to the situation where multi-plane buffers may be requested
-and queued with n planes, but VIDIOC_DQBUF IOCTL may be passed an argument
-struct with fewer planes.
-
-__fill_v4l2_buffer() however uses the number of planes from the dequeued
-videobuf2 buffer, overwriting kernel memory (the m.planes array allocated
-in video_usercopy() in v4l2-ioctl.c) if the user provided fewer
-planes than the dequeued buffer had. Oops!
-
-Fixes: b0e0e1f83de3 ("[media] media: videobuf2: Prepare to divide videobuf2")
-
-Signed-off-by: Sakari Ailus
-Acked-by: Hans Verkuil
-Cc: stable@vger.kernel.org # for v4.4 and later
-Signed-off-by: Mauro Carvalho Chehab
-Signed-off-by: Mauro Carvalho Chehab
----
- drivers/media/v4l2-core/videobuf2-v4l2.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/drivers/media/v4l2-core/videobuf2-v4l2.c b/drivers/media/v4l2-core/videobuf2-v4l2.c
-index 0b1b8c7..7f366f1 100644
---- a/drivers/media/v4l2-core/videobuf2-v4l2.c
-+++ b/drivers/media/v4l2-core/videobuf2-v4l2.c
-@@ -74,6 +74,11 @@ static int __verify_planes_array(struct vb2_buffer *vb, const struct v4l2_buffer
- return 0;
- }
-
-+static int __verify_planes_array_core(struct vb2_buffer *vb, const void *pb)
-+{
-+ return __verify_planes_array(vb, pb);
-+}
-+
- /**
- * __verify_length() - Verify that the bytesused value for each plane fits in
- * the plane length and that the data offset doesn't exceed the bytesused value.
-@@ -437,6 +442,7 @@ static int __fill_vb2_buffer(struct vb2_buffer *vb,
- }
-
- static const struct vb2_buf_ops v4l2_buf_ops = {
-+ .verify_planes_array = __verify_planes_array_core,
- .fill_user_buffer = __fill_v4l2_buffer,
- .fill_vb2_buffer = __fill_vb2_buffer,
- .copy_timestamp = __copy_timestamp,
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/megaraid_sas-Do-not-fire-MR_DCMD_PD_LIST_QUERY-to-co.patch b/kernel/tools/cpupowertools/files/patches/mageia/megaraid_sas-Do-not-fire-MR_DCMD_PD_LIST_QUERY-to-co.patch
deleted file mode 100644
index f6c3de35..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/megaraid_sas-Do-not-fire-MR_DCMD_PD_LIST_QUERY-to-co.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From d9083160c2f6ee456ea867ea2279c1fc6124e56f Mon Sep 17 00:00:00 2001
-From: Sumit Saxena
-Date: Fri, 8 Jul 2016 03:30:16 -0700
-Subject: [PATCH] megaraid_sas: Do not fire MR_DCMD_PD_LIST_QUERY to
- controllers which do not support it
-
-There was an issue reported by Lucz Geza on Dell Perc 6i. As per issue
-reported, megaraid_sas driver goes into an infinite error reporting loop
-as soon as there is a change in the status of one of the
-arrays (degrade, resync online etc ). Below are the error logs reported
-continuously-
-
-Jun 25 08:49:30 ns8 kernel: [ 757.757017] megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: megasas_get_pd_list 4115
-Jun 25 08:49:30 ns8 kernel: [ 757.778017] megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: megasas_get_pd_list 4115
-Jun 25 08:49:30 ns8 kernel: [ 757.799017] megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: megasas_get_pd_list 4115
-Jun 25 08:49:30 ns8 kernel: [ 757.820018] megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: megasas_get_pd_list 4115
-Jun 25 08:49:30 ns8 kernel: [ 757.841018] megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: megasas_get_pd_list 4115
-
-This issue is very much specific to controllers which do not support
-DCMD- MR_DCMD_PD_LIST_QUERY. In case of any hotplugging/rescanning of
-drives, AEN thread will be scheduled by driver and fire DCMD-
-MR_DCMD_PD_LIST_QUERY and if this DCMD is failed then driver will fail
-this event processing and will not go ahead for further events. This
-will cause infinite loop of same event getting retried infinitely and
-causing above mentioned logs.
-
-Fix for this problem is: not to fire DCMD MR_DCMD_PD_LIST_QUERY for
-controllers which do not support it and send DCMD SUCCESS status to AEN
-function so that it can go ahead with other event processing.
-
-Reported-by: Lucz Geza
-Cc:
-Signed-off-by: Sumit Saxena
-Reviewed-by: Tomas Henzl
-Signed-off-by: Martin K. Petersen
----
- drivers/scsi/megaraid/megaraid_sas_base.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
-index f4b0690..2dab3dc 100644
---- a/drivers/scsi/megaraid/megaraid_sas_base.c
-+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
-@@ -4079,6 +4079,12 @@ megasas_get_pd_list(struct megasas_instance *instance)
- struct MR_PD_ADDRESS *pd_addr;
- dma_addr_t ci_h = 0;
-
-+ if (instance->pd_list_not_supported) {
-+ dev_info(&instance->pdev->dev, "MR_DCMD_PD_LIST_QUERY "
-+ "not supported by firmware\n");
-+ return ret;
-+ }
-+
- cmd = megasas_get_cmd(instance);
-
- if (!cmd) {
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/net-bcma-add-PCI-ID-for-Foxconn-s-BCM43142-device.patch b/kernel/tools/cpupowertools/files/patches/mageia/net-bcma-add-PCI-ID-for-Foxconn-s-BCM43142-device.patch
deleted file mode 100644
index 14784de4..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/net-bcma-add-PCI-ID-for-Foxconn-s-BCM43142-device.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 1bea0512c3394965de28a152149b90afd686fae5 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?=
-Date: Mon, 11 Jul 2016 23:01:36 +0200
-Subject: [PATCH] bcma: add PCI ID for Foxconn's BCM43142 device
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-After discovering there are 2 very different 14e4:4365 PCI devices we
-made ID tables less generic. Back then we believed there are only 2 such
-devices:
-1) 14e4:4365 1028:0016 with SoftMAC BCM43142 chipset
-2) 14e4:4365 14e4:4365 with FullMAC BCM4366 chipset
-
->From the recent report it appears there is also 14e4:4365 105b:e092
-which should be claimed by bcma. Add back support for it.
-
-Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=121881
-Fixes: 515b399c9a20 ("bcma: claim only 14e4:4365 PCI Dell card with SoftMAC BCM43142")
-Reported-by: Igor Mammedov
-Signed-off-by: Rafał Miłecki
-Cc: Stable [4.6+]
-Tested-by: Igor Mammedov
-Signed-off-by: Kalle Valo
----
- drivers/bcma/host_pci.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/bcma/host_pci.c b/drivers/bcma/host_pci.c
-index cae5385..bd46569 100644
---- a/drivers/bcma/host_pci.c
-+++ b/drivers/bcma/host_pci.c
-@@ -295,6 +295,7 @@ static const struct pci_device_id bcma_pci_bridge_tbl[] = {
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4359) },
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4360) },
- { PCI_DEVICE_SUB(PCI_VENDOR_ID_BROADCOM, 0x4365, PCI_VENDOR_ID_DELL, 0x0016) },
-+ { PCI_DEVICE_SUB(PCI_VENDOR_ID_BROADCOM, 0x4365, PCI_VENDOR_ID_FOXCONN, 0xe092) },
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43a0) },
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43a9) },
- { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x43aa) },
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/net-brcmfmac-restore-stopping-netdev-queue-when-bus-clog.patch b/kernel/tools/cpupowertools/files/patches/mageia/net-brcmfmac-restore-stopping-netdev-queue-when-bus-clog.patch
deleted file mode 100644
index 6704452f..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/net-brcmfmac-restore-stopping-netdev-queue-when-bus-clog.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 82bc9ab6a8f577d2174a736c33f3d4ecf7d9ef47 Mon Sep 17 00:00:00 2001
-From: Arend Van Spriel
-Date: Fri, 15 Jul 2016 12:16:12 +0200
-Subject: [PATCH] brcmfmac: restore stopping netdev queue when bus clogs up
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-When the host-interface bus has hard time handling transmit packets
-it informs higher layer about this and it would stop the netdev
-queue when needed. However, since commit 9cd18359d31e ("brcmfmac:
-Make FWS queueing configurable.") this was broken. With this patch
-the behaviour is restored.
-
-Cc: stable@vger.kernel.org # v4.5, v4.6, v4.7
-Fixes: 9cd18359d31e ("brcmfmac: Make FWS queueing configurable.")
-Tested-by: Per Förlin
-Reviewed-by: Hante Meuleman
-Reviewed-by: Pieter-Paul Giesberts
-Reviewed-by: Franky Lin
-Signed-off-by: Arend van Spriel
-Signed-off-by: Kalle Valo
----
- .../broadcom/brcm80211/brcmfmac/fwsignal.c | 22 +++++++++++++++++-----
- 1 file changed, 17 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c
-index cd221ab..9f9024a 100644
---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c
-@@ -2469,10 +2469,22 @@ void brcmf_fws_bustxfail(struct brcmf_fws_info *fws, struct sk_buff *skb)
- void brcmf_fws_bus_blocked(struct brcmf_pub *drvr, bool flow_blocked)
- {
- struct brcmf_fws_info *fws = drvr->fws;
-+ struct brcmf_if *ifp;
-+ int i;
-
-- fws->bus_flow_blocked = flow_blocked;
-- if (!flow_blocked)
-- brcmf_fws_schedule_deq(fws);
-- else
-- fws->stats.bus_flow_block++;
-+ if (fws->avoid_queueing) {
-+ for (i = 0; i < BRCMF_MAX_IFS; i++) {
-+ ifp = drvr->iflist[i];
-+ if (!ifp || !ifp->ndev)
-+ continue;
-+ brcmf_txflowblock_if(ifp, BRCMF_NETIF_STOP_REASON_FLOW,
-+ flow_blocked);
-+ }
-+ } else {
-+ fws->bus_flow_blocked = flow_blocked;
-+ if (!flow_blocked)
-+ brcmf_fws_schedule_deq(fws);
-+ else
-+ fws->stats.bus_flow_block++;
-+ }
- }
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-add-new-8260-PCI-IDs.patch b/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-add-new-8260-PCI-IDs.patch
deleted file mode 100644
index 3b783060..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-add-new-8260-PCI-IDs.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From: Luca Coelho
-Subject: [PATCH 13/56] iwlwifi: add new 8260 PCI IDs
-Date: Wed, 6 Jul 2016 13:40:08 +0300
-
-From: Oren Givon
-
-Add 3 new 8260 series PCI IDs:
- - (0x24F3, 0x10B0)
- - (0x24F3, 0xD0B0)
- - (0x24F3, 0xB0B0)
-
-CC: [4.1+]
-Signed-off-by: Oren Givon
-Signed-off-by: David Spinadel
-Signed-off-by: Luca Coelho
----
- drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
-index a588b05..1cae19d 100644
---- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
-+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
-@@ -433,6 +433,7 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
- /* 8000 Series */
- {IWL_PCI_DEVICE(0x24F3, 0x0010, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x1010, iwl8260_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24F3, 0x10B0, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x0130, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x1130, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x0132, iwl8260_2ac_cfg)},
-@@ -454,6 +455,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
- {IWL_PCI_DEVICE(0x24F3, 0xD010, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0xC050, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0xD050, iwl8260_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24F3, 0xD0B0, iwl8260_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24F3, 0xB0B0, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x8010, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x8110, iwl8260_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24F3, 0x9010, iwl8260_2ac_cfg)},
---
-2.8.1
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-add-new-8265.patch b/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-add-new-8265.patch
deleted file mode 100644
index 56eb2464..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-add-new-8265.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From: Luca Coelho
-Subject: [PATCH 14/56] iwlwifi: add new 8265
-Date: Wed, 6 Jul 2016 13:40:09 +0300
-
-From: Oren Givon
-
-Add 6 new 8265 series PCI IDs:
- - (0x24FD, 0x1130)
- - (0x24FD, 0x0130)
- - (0x24FD, 0x0910)
- - (0x24FD, 0x0930)
- - (0x24FD, 0x0950)
- - (0x24FD, 0x0850)
-
-CC: [4.6+]
-Signed-off-by: Oren Givon
-Signed-off-by: David Spinadel
-Signed-off-by: Luca Coelho
----
- drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
-index 1cae19d..6f020e4 100644
---- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
-+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
-@@ -484,6 +484,8 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
- {IWL_PCI_DEVICE(0x24FD, 0x0010, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x0110, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x1110, iwl8265_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24FD, 0x1130, iwl8265_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24FD, 0x0130, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x1010, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x0050, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x0150, iwl8265_2ac_cfg)},
-@@ -494,6 +496,10 @@ static const struct pci_device_id iwl_hw_card_ids[] = {
- {IWL_PCI_DEVICE(0x24FD, 0x0810, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x9110, iwl8265_2ac_cfg)},
- {IWL_PCI_DEVICE(0x24FD, 0x8130, iwl8265_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24FD, 0x0910, iwl8265_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24FD, 0x0930, iwl8265_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24FD, 0x0950, iwl8265_2ac_cfg)},
-+ {IWL_PCI_DEVICE(0x24FD, 0x0850, iwl8265_2ac_cfg)},
-
- /* 9000 Series */
- {IWL_PCI_DEVICE(0x2526, 0x0000, iwl9260_2ac_cfg)},
---
-2.8.1
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-pcie-enable-interrupts-before-releasing-the-NICs-CPU.patch b/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-pcie-enable-interrupts-before-releasing-the-NICs-CPU.patch
deleted file mode 100644
index b7b37825..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-pcie-enable-interrupts-before-releasing-the-NICs-CPU.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From: Luca Coelho
-Subject: [PATCH 28/56] iwlwifi: pcie: enable interrupts before releasing the NIC's CPU
-Date: Wed, 6 Jul 2016 13:40:23 +0300
-
-From: Emmanuel Grumbach
-
-The NIC's CPU gets started after the firmware has been
-written to its memory. The first thing it does is to
-send an interrupt to let the driver know that it is
-running. In order to get that interrupt, the driver needs
-to make sure it is not masked. Of course, the interrupt
-needs to be enabled in the driver before the CPU starts to
-run.
-I mistakenly inversed those two steps leading to races
-which prevented the driver from getting the alive interrupt
-from the firmware.
-Fix that.
-
-Cc: [4.5+]
-Fixes: a6bd005fe92 ("iwlwifi: pcie: fix RF-Kill vs. firmware load race")
-Signed-off-by: Emmanuel Grumbach
-Signed-off-by: Luca Coelho
----
- drivers/net/wireless/intel/iwlwifi/pcie/trans.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-index 3badebb..ac623c3 100644
---- a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-+++ b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-@@ -801,6 +801,8 @@ static int iwl_pcie_load_cpu_sections_8000(struct iwl_trans *trans,
-
- *first_ucode_section = last_read_idx;
-
-+ iwl_enable_interrupts(trans);
-+
- if (cpu == 1)
- iwl_write_direct32(trans, FH_UCODE_LOAD_STATUS, 0xFFFF);
- else
-@@ -980,6 +982,8 @@ static int iwl_pcie_load_given_ucode(struct iwl_trans *trans,
- iwl_pcie_apply_destination(trans);
- }
-
-+ iwl_enable_interrupts(trans);
-+
- /* release CPU reset */
- iwl_write32(trans, CSR_RESET, 0);
-
-@@ -1215,7 +1219,6 @@ static int iwl_trans_pcie_start_fw(struct iwl_trans *trans,
- ret = iwl_pcie_load_given_ucode_8000(trans, fw);
- else
- ret = iwl_pcie_load_given_ucode(trans, fw);
-- iwl_enable_interrupts(trans);
-
- /* re-check RF-Kill state since we may have missed the interrupt */
- hw_rfkill = iwl_is_rfkill_set(trans);
---
-2.8.1
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-pcie-fix-a-race-in-firmware-loading-flow.patch b/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-pcie-fix-a-race-in-firmware-loading-flow.patch
deleted file mode 100644
index 4ea2eee8..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/net-wireless-iwlwifi-pcie-fix-a-race-in-firmware-loading-flow.patch
+++ /dev/null
@@ -1,195 +0,0 @@
-From: Luca Coelho
-Subject: [PATCH 48/56] iwlwifi: pcie: fix a race in firmware loading flow
-Date: Wed, 6 Jul 2016 13:40:43 +0300
-
-From: Emmanuel Grumbach
-
-Upon firmware load interrupt (FH_TX), the ISR re-enables the
-firmware load interrupt only to avoid races with other
-flows as described in the commit below. When the firmware
-is completely loaded, the thread that is loading the
-firmware will enable all the interrupts to make sure that
-the driver gets the ALIVE interrupt.
-The problem with that is that the thread that is loading
-the firmware is actually racing against the ISR and we can
-get to the following situation:
-
-CPU0 CPU1
-iwl_pcie_load_given_ucode
- ...
- iwl_pcie_load_firmware_chunk
- wait_for_interrupt
-
- ISR handles CSR_INT_BIT_FH_TX
- ISR wakes up the thread on CPU0
- /* enable all the interrupts
- * to get the ALIVE interrupt
- */
- iwl_enable_interrupts
- ISR re-enables CSR_INT_BIT_FH_TX only
- /* start the firmware */
- iwl_write32(trans, CSR_RESET, 0);
-
-BUG! ALIVE interrupt will never arrive since it has been
-masked by CPU1.
-
-In order to fix that, change the ISR to first check if
-STATUS_INT_ENABLED is set. If so, re-enable all the
-interrupts. If STATUS_INT_ENABLED is clear, then we can
-check what specific interrupt happened and re-enable only
-that specific interrupt (RFKILL or FH_TX).
-
-All the credit for the analysis goes to Kirtika who did the
-actual debugging work.
-
-Cc: [4.5+]
-Fixes: a6bd005fe92 ("iwlwifi: pcie: fix RF-Kill vs. firmware load race")
-Signed-off-by: Luca Coelho
----
- drivers/net/wireless/intel/iwlwifi/pcie/internal.h | 21 +++++++++++++++++++--
- drivers/net/wireless/intel/iwlwifi/pcie/rx.c | 16 +++++++++-------
- drivers/net/wireless/intel/iwlwifi/pcie/trans.c | 8 --------
- 3 files changed, 28 insertions(+), 17 deletions(-)
-
-diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/internal.h b/drivers/net/wireless/intel/iwlwifi/pcie/internal.h
-index f684b9d..54af3da 100644
---- a/drivers/net/wireless/intel/iwlwifi/pcie/internal.h
-+++ b/drivers/net/wireless/intel/iwlwifi/pcie/internal.h
-@@ -500,7 +500,7 @@ void iwl_pcie_dump_csr(struct iwl_trans *trans);
- /*****************************************************
- * Helpers
- ******************************************************/
--static inline void iwl_disable_interrupts(struct iwl_trans *trans)
-+static inline void _iwl_disable_interrupts(struct iwl_trans *trans)
- {
- struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
-
-@@ -523,7 +523,16 @@ static inline void iwl_disable_interrupts(struct iwl_trans *trans)
- IWL_DEBUG_ISR(trans, "Disabled interrupts\n");
- }
-
--static inline void iwl_enable_interrupts(struct iwl_trans *trans)
-+static inline void iwl_disable_interrupts(struct iwl_trans *trans)
-+{
-+ struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
-+
-+ spin_lock(&trans_pcie->irq_lock);
-+ _iwl_disable_interrupts(trans);
-+ spin_unlock(&trans_pcie->irq_lock);
-+}
-+
-+static inline void _iwl_enable_interrupts(struct iwl_trans *trans)
- {
- struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
-
-@@ -546,6 +555,14 @@ static inline void iwl_enable_interrupts(struct iwl_trans *trans)
- }
- }
-
-+static inline void iwl_enable_interrupts(struct iwl_trans *trans)
-+{
-+ struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
-+
-+ spin_lock(&trans_pcie->irq_lock);
-+ _iwl_enable_interrupts(trans);
-+ spin_unlock(&trans_pcie->irq_lock);
-+}
- static inline void iwl_enable_hw_int_msk_msix(struct iwl_trans *trans, u32 msk)
- {
- struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
-diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/rx.c b/drivers/net/wireless/intel/iwlwifi/pcie/rx.c
-index 0296c29..45f1b7e 100644
---- a/drivers/net/wireless/intel/iwlwifi/pcie/rx.c
-+++ b/drivers/net/wireless/intel/iwlwifi/pcie/rx.c
-@@ -1535,7 +1535,7 @@ irqreturn_t iwl_pcie_irq_handler(int irq, void *dev_id)
- * have anything to service
- */
- if (test_bit(STATUS_INT_ENABLED, &trans->status))
-- iwl_enable_interrupts(trans);
-+ _iwl_enable_interrupts(trans);
- spin_unlock(&trans_pcie->irq_lock);
- lock_map_release(&trans->sync_cmd_lockdep_map);
- return IRQ_NONE;
-@@ -1727,15 +1727,17 @@ irqreturn_t iwl_pcie_irq_handler(int irq, void *dev_id)
- inta & ~trans_pcie->inta_mask);
- }
-
-+ spin_lock(&trans_pcie->irq_lock);
-+ /* only Re-enable all interrupt if disabled by irq */
-+ if (test_bit(STATUS_INT_ENABLED, &trans->status))
-+ _iwl_enable_interrupts(trans);
- /* we are loading the firmware, enable FH_TX interrupt only */
-- if (handled & CSR_INT_BIT_FH_TX)
-+ else if (handled & CSR_INT_BIT_FH_TX)
- iwl_enable_fw_load_int(trans);
-- /* only Re-enable all interrupt if disabled by irq */
-- else if (test_bit(STATUS_INT_ENABLED, &trans->status))
-- iwl_enable_interrupts(trans);
- /* Re-enable RF_KILL if it occurred */
- else if (handled & CSR_INT_BIT_RF_KILL)
- iwl_enable_rfkill_int(trans);
-+ spin_unlock(&trans_pcie->irq_lock);
-
- out:
- lock_map_release(&trans->sync_cmd_lockdep_map);
-@@ -1799,7 +1801,7 @@ void iwl_pcie_reset_ict(struct iwl_trans *trans)
- return;
-
- spin_lock(&trans_pcie->irq_lock);
-- iwl_disable_interrupts(trans);
-+ _iwl_disable_interrupts(trans);
-
- memset(trans_pcie->ict_tbl, 0, ICT_SIZE);
-
-@@ -1815,7 +1817,7 @@ void iwl_pcie_reset_ict(struct iwl_trans *trans)
- trans_pcie->use_ict = true;
- trans_pcie->ict_index = 0;
- iwl_write32(trans, CSR_INT, trans_pcie->inta_mask);
-- iwl_enable_interrupts(trans);
-+ _iwl_enable_interrupts(trans);
- spin_unlock(&trans_pcie->irq_lock);
- }
-
-diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-index 3b7a414..9e953a4 100644
---- a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-+++ b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-@@ -1037,9 +1037,7 @@ static void _iwl_trans_pcie_stop_device(struct iwl_trans *trans, bool low_power)
- was_hw_rfkill = iwl_is_rfkill_set(trans);
-
- /* tell the device to stop sending interrupts */
-- spin_lock(&trans_pcie->irq_lock);
- iwl_disable_interrupts(trans);
-- spin_unlock(&trans_pcie->irq_lock);
-
- /* device going down, Stop using ICT table */
- iwl_pcie_disable_ict(trans);
-@@ -1083,9 +1081,7 @@ static void _iwl_trans_pcie_stop_device(struct iwl_trans *trans, bool low_power)
- * the time, unless the interrupt is ACKed even if the interrupt
- * should be masked. Re-ACK all the interrupts here.
- */
-- spin_lock(&trans_pcie->irq_lock);
- iwl_disable_interrupts(trans);
-- spin_unlock(&trans_pcie->irq_lock);
-
- /* clear all status bits */
- clear_bit(STATUS_SYNC_HCMD_ACTIVE, &trans->status);
-@@ -1578,15 +1574,11 @@ static void iwl_trans_pcie_op_mode_leave(struct iwl_trans *trans)
- mutex_lock(&trans_pcie->mutex);
-
- /* disable interrupts - don't enable HW RF kill interrupt */
-- spin_lock(&trans_pcie->irq_lock);
- iwl_disable_interrupts(trans);
-- spin_unlock(&trans_pcie->irq_lock);
-
- iwl_pcie_apm_stop(trans, true);
-
-- spin_lock(&trans_pcie->irq_lock);
- iwl_disable_interrupts(trans);
-- spin_unlock(&trans_pcie->irq_lock);
-
- iwl_pcie_disable_ict(trans);
-
---
-2.8.1
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/pinctrl-cherryview-prevent-concurrent-access-to-GPIO.patch b/kernel/tools/cpupowertools/files/patches/mageia/pinctrl-cherryview-prevent-concurrent-access-to-GPIO.patch
deleted file mode 100644
index cccb9fd6..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/pinctrl-cherryview-prevent-concurrent-access-to-GPIO.patch
+++ /dev/null
@@ -1,339 +0,0 @@
-From 0bd50d719b004110e791800450ad204399100a86 Mon Sep 17 00:00:00 2001
-From: Dan O'Donovan
-Date: Fri, 10 Jun 2016 13:23:34 +0100
-Subject: [PATCH] pinctrl: cherryview: prevent concurrent access to GPIO
- controllers
-
-Due to a silicon issue on the Atom X5-Z8000 "Cherry Trail" processor
-series, a common lock must be used to prevent concurrent accesses
-across the 4 GPIO controllers managed by this driver.
-
-See Intel Atom Z8000 Processor Series Specification Update
-(Rev. 005), errata #CHT34, for further information.
-
-Cc: stable
-Signed-off-by: Dan O'Donovan
-Acked-by: Mika Westerberg
-Signed-off-by: Linus Walleij
----
- drivers/pinctrl/intel/pinctrl-cherryview.c | 80 ++++++++++++++++--------------
- 1 file changed, 44 insertions(+), 36 deletions(-)
-
-diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c b/drivers/pinctrl/intel/pinctrl-cherryview.c
-index ac4f564..bf65c94 100644
---- a/drivers/pinctrl/intel/pinctrl-cherryview.c
-+++ b/drivers/pinctrl/intel/pinctrl-cherryview.c
-@@ -160,7 +160,6 @@ struct chv_pin_context {
- * @pctldev: Pointer to the pin controller device
- * @chip: GPIO chip in this pin controller
- * @regs: MMIO registers
-- * @lock: Lock to serialize register accesses
- * @intr_lines: Stores mapping between 16 HW interrupt wires and GPIO
- * offset (in GPIO number space)
- * @community: Community this pinctrl instance represents
-@@ -174,7 +173,6 @@ struct chv_pinctrl {
- struct pinctrl_dev *pctldev;
- struct gpio_chip chip;
- void __iomem *regs;
-- raw_spinlock_t lock;
- unsigned intr_lines[16];
- const struct chv_community *community;
- u32 saved_intmask;
-@@ -657,6 +655,17 @@ static const struct chv_community *chv_communities[] = {
- &southeast_community,
- };
-
-+/*
-+ * Lock to serialize register accesses
-+ *
-+ * Due to a silicon issue, a shared lock must be used to prevent
-+ * concurrent accesses across the 4 GPIO controllers.
-+ *
-+ * See Intel Atom Z8000 Processor Series Specification Update (Rev. 005),
-+ * errata #CHT34, for further information.
-+ */
-+static DEFINE_RAW_SPINLOCK(chv_lock);
-+
- static void __iomem *chv_padreg(struct chv_pinctrl *pctrl, unsigned offset,
- unsigned reg)
- {
-@@ -718,13 +727,13 @@ static void chv_pin_dbg_show(struct pinctrl_dev *pctldev, struct seq_file *s,
- u32 ctrl0, ctrl1;
- bool locked;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- ctrl0 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0));
- ctrl1 = readl(chv_padreg(pctrl, offset, CHV_PADCTRL1));
- locked = chv_pad_locked(pctrl, offset);
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- if (ctrl0 & CHV_PADCTRL0_GPIOEN) {
- seq_puts(s, "GPIO ");
-@@ -787,14 +796,14 @@ static int chv_pinmux_set_mux(struct pinctrl_dev *pctldev, unsigned function,
-
- grp = &pctrl->community->groups[group];
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- /* Check first that the pad is not locked */
- for (i = 0; i < grp->npins; i++) {
- if (chv_pad_locked(pctrl, grp->pins[i])) {
- dev_warn(pctrl->dev, "unable to set mode for locked pin %u\n",
- grp->pins[i]);
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- return -EBUSY;
- }
- }
-@@ -837,7 +846,7 @@ static int chv_pinmux_set_mux(struct pinctrl_dev *pctldev, unsigned function,
- pin, altfunc->mode, altfunc->invert_oe ? "" : "not ");
- }
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- return 0;
- }
-@@ -851,13 +860,13 @@ static int chv_gpio_request_enable(struct pinctrl_dev *pctldev,
- void __iomem *reg;
- u32 value;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- if (chv_pad_locked(pctrl, offset)) {
- value = readl(chv_padreg(pctrl, offset, CHV_PADCTRL0));
- if (!(value & CHV_PADCTRL0_GPIOEN)) {
- /* Locked so cannot enable */
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- return -EBUSY;
- }
- } else {
-@@ -897,7 +906,7 @@ static int chv_gpio_request_enable(struct pinctrl_dev *pctldev,
- chv_writel(value, reg);
- }
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- return 0;
- }
-@@ -911,13 +920,13 @@ static void chv_gpio_disable_free(struct pinctrl_dev *pctldev,
- void __iomem *reg;
- u32 value;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- reg = chv_padreg(pctrl, offset, CHV_PADCTRL0);
- value = readl(reg) & ~CHV_PADCTRL0_GPIOEN;
- chv_writel(value, reg);
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- }
-
- static int chv_gpio_set_direction(struct pinctrl_dev *pctldev,
-@@ -929,7 +938,7 @@ static int chv_gpio_set_direction(struct pinctrl_dev *pctldev,
- unsigned long flags;
- u32 ctrl0;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- ctrl0 = readl(reg) & ~CHV_PADCTRL0_GPIOCFG_MASK;
- if (input)
-@@ -938,7 +947,7 @@ static int chv_gpio_set_direction(struct pinctrl_dev *pctldev,
- ctrl0 |= CHV_PADCTRL0_GPIOCFG_GPO << CHV_PADCTRL0_GPIOCFG_SHIFT;
- chv_writel(ctrl0, reg);
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- return 0;
- }
-@@ -963,10 +972,10 @@ static int chv_config_get(struct pinctrl_dev *pctldev, unsigned pin,
- u16 arg = 0;
- u32 term;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
- ctrl0 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
- ctrl1 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL1));
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- term = (ctrl0 & CHV_PADCTRL0_TERM_MASK) >> CHV_PADCTRL0_TERM_SHIFT;
-
-@@ -1040,7 +1049,7 @@ static int chv_config_set_pull(struct chv_pinctrl *pctrl, unsigned pin,
- unsigned long flags;
- u32 ctrl0, pull;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
- ctrl0 = readl(reg);
-
- switch (param) {
-@@ -1063,7 +1072,7 @@ static int chv_config_set_pull(struct chv_pinctrl *pctrl, unsigned pin,
- pull = CHV_PADCTRL0_TERM_20K << CHV_PADCTRL0_TERM_SHIFT;
- break;
- default:
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- return -EINVAL;
- }
-
-@@ -1081,7 +1090,7 @@ static int chv_config_set_pull(struct chv_pinctrl *pctrl, unsigned pin,
- pull = CHV_PADCTRL0_TERM_20K << CHV_PADCTRL0_TERM_SHIFT;
- break;
- default:
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- return -EINVAL;
- }
-
-@@ -1089,12 +1098,12 @@ static int chv_config_set_pull(struct chv_pinctrl *pctrl, unsigned pin,
- break;
-
- default:
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- return -EINVAL;
- }
-
- chv_writel(ctrl0, reg);
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- return 0;
- }
-@@ -1160,9 +1169,9 @@ static int chv_gpio_get(struct gpio_chip *chip, unsigned offset)
- unsigned long flags;
- u32 ctrl0, cfg;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
- ctrl0 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- cfg = ctrl0 & CHV_PADCTRL0_GPIOCFG_MASK;
- cfg >>= CHV_PADCTRL0_GPIOCFG_SHIFT;
-@@ -1180,7 +1189,7 @@ static void chv_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
- void __iomem *reg;
- u32 ctrl0;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- reg = chv_padreg(pctrl, pin, CHV_PADCTRL0);
- ctrl0 = readl(reg);
-@@ -1192,7 +1201,7 @@ static void chv_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
-
- chv_writel(ctrl0, reg);
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- }
-
- static int chv_gpio_get_direction(struct gpio_chip *chip, unsigned offset)
-@@ -1202,9 +1211,9 @@ static int chv_gpio_get_direction(struct gpio_chip *chip, unsigned offset)
- u32 ctrl0, direction;
- unsigned long flags;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
- ctrl0 = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- direction = ctrl0 & CHV_PADCTRL0_GPIOCFG_MASK;
- direction >>= CHV_PADCTRL0_GPIOCFG_SHIFT;
-@@ -1242,14 +1251,14 @@ static void chv_gpio_irq_ack(struct irq_data *d)
- int pin = chv_gpio_offset_to_pin(pctrl, irqd_to_hwirq(d));
- u32 intr_line;
-
-- raw_spin_lock(&pctrl->lock);
-+ raw_spin_lock(&chv_lock);
-
- intr_line = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
- intr_line &= CHV_PADCTRL0_INTSEL_MASK;
- intr_line >>= CHV_PADCTRL0_INTSEL_SHIFT;
- chv_writel(BIT(intr_line), pctrl->regs + CHV_INTSTAT);
-
-- raw_spin_unlock(&pctrl->lock);
-+ raw_spin_unlock(&chv_lock);
- }
-
- static void chv_gpio_irq_mask_unmask(struct irq_data *d, bool mask)
-@@ -1260,7 +1269,7 @@ static void chv_gpio_irq_mask_unmask(struct irq_data *d, bool mask)
- u32 value, intr_line;
- unsigned long flags;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- intr_line = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
- intr_line &= CHV_PADCTRL0_INTSEL_MASK;
-@@ -1273,7 +1282,7 @@ static void chv_gpio_irq_mask_unmask(struct irq_data *d, bool mask)
- value |= BIT(intr_line);
- chv_writel(value, pctrl->regs + CHV_INTMASK);
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- }
-
- static void chv_gpio_irq_mask(struct irq_data *d)
-@@ -1307,7 +1316,7 @@ static unsigned chv_gpio_irq_startup(struct irq_data *d)
- unsigned long flags;
- u32 intsel, value;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
- intsel = readl(chv_padreg(pctrl, pin, CHV_PADCTRL0));
- intsel &= CHV_PADCTRL0_INTSEL_MASK;
- intsel >>= CHV_PADCTRL0_INTSEL_SHIFT;
-@@ -1322,7 +1331,7 @@ static unsigned chv_gpio_irq_startup(struct irq_data *d)
- irq_set_handler_locked(d, handler);
- pctrl->intr_lines[intsel] = offset;
- }
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
- }
-
- chv_gpio_irq_unmask(d);
-@@ -1338,7 +1347,7 @@ static int chv_gpio_irq_type(struct irq_data *d, unsigned type)
- unsigned long flags;
- u32 value;
-
-- raw_spin_lock_irqsave(&pctrl->lock, flags);
-+ raw_spin_lock_irqsave(&chv_lock, flags);
-
- /*
- * Pins which can be used as shared interrupt are configured in
-@@ -1387,7 +1396,7 @@ static int chv_gpio_irq_type(struct irq_data *d, unsigned type)
- else if (type & IRQ_TYPE_LEVEL_MASK)
- irq_set_handler_locked(d, handle_level_irq);
-
-- raw_spin_unlock_irqrestore(&pctrl->lock, flags);
-+ raw_spin_unlock_irqrestore(&chv_lock, flags);
-
- return 0;
- }
-@@ -1499,7 +1508,6 @@ static int chv_pinctrl_probe(struct platform_device *pdev)
- if (i == ARRAY_SIZE(chv_communities))
- return -ENODEV;
-
-- raw_spin_lock_init(&pctrl->lock);
- pctrl->dev = &pdev->dev;
-
- #ifdef CONFIG_PM_SLEEP
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/series b/kernel/tools/cpupowertools/files/patches/mageia/series
index 6372abff..6452397c 100644
--- a/kernel/tools/cpupowertools/files/patches/mageia/series
+++ b/kernel/tools/cpupowertools/files/patches/mageia/series
@@ -38,15 +38,9 @@ x86-increase-default-minimum-vmalloc-area-by-64MB-to-192MB.patch
# slows down boot
Revert-cpufreq-pcc-Enable-autoload-of-pcc-cpufreq-fo.patch
-#
-Revert-cpufreq-pcc-cpufreq-update-default-value-of-c.patch
-
# breaks nvidia304
Revert-x86-mm-mtrr-Remove-kernel-internal-MTRR-inter.patch
-#
-x86-power-64-Fix-hibernation-return-address-corrupti.patch
-
###
### Core
###
@@ -128,9 +122,6 @@ block-Make-CFQ-default-to-IOPS-mode-on-SSDs.patch
# ahci ids
ahci-add-new-Intel-device-IDs.patch
-#
-megaraid_sas-Do-not-fire-MR_DCMD_PD_LIST_QUERY-to-co.patch
-
###
### Char
###
@@ -147,10 +138,6 @@ fs-aufs-4.7.patch
fs-aufs-4.7-modular.patch
fs-aufs-4.7-ver-fix.patch
-# ext4
-fs-ext4-don-t-call-ext4_should_journal_data-on-the-jour.patch
-fs-ext4-fix-deadlock-during-page-writeback.patch
-
###
### FireWire
###
@@ -235,16 +222,6 @@ net-netfilter-psd.patch
net-netfilter-psd-mdv.patch
net-netfilter-psd-2.6.35-buildfix.patch
-# iwlwifi fixes
-net-wireless-iwlwifi-add-new-8260-PCI-IDs.patch
-net-wireless-iwlwifi-add-new-8265.patch
-net-wireless-iwlwifi-pcie-enable-interrupts-before-releasing-the-NICs-CPU.patch
-net-wireless-iwlwifi-pcie-fix-a-race-in-firmware-loading-flow.patch
-
-#
-net-bcma-add-PCI-ID-for-Foxconn-s-BCM43142-device.patch
-net-brcmfmac-restore-stopping-netdev-queue-when-bus-clog.patch
-
###
### Platform drivers
###
@@ -256,12 +233,8 @@ platform-x86-shuttle-wmi-drop-devinit-exit.patch
platform-x86-shuttle-wmi-4.2-buildfix.patch
#
-hp-wmi-Fix-wifi-cannot-be-hard-unblocked.patch
-
-Bluetooth-Add-support-of-13d3-3490-AR3012-device.patch
intel_th-Fix-a-deadlock-in-modprobing.patch
intel_th-pci-Add-Kaby-Lake-PCH-H-support.patch
-pinctrl-cherryview-prevent-concurrent-access-to-GPIO.patch
###
### RTC
@@ -300,13 +273,6 @@ hid-usbhid-IBM-BladeCenterHS20-quirk.patch
usb-storage-unusual_devs-add-id.patch
usb-storage-unusual_devs-add-id-2.6.37-buildfix.patch
-#
-usb-dwc3-fix-for-the-isoc-transfer-EP_BUSY-flag.patch
-usb-renesas_usbhs-fix-NULL-pointer-dereference-in-xf.patch
-
-#
-HID-uhid-fix-timeout-when-probe-races-with-IO.patch
-
###
### V4L
###
@@ -314,11 +280,6 @@ HID-uhid-fix-timeout-when-probe-races-with-IO.patch
# pwc driver name in /proc/bus/devices, /sys fix and "advertisement" removal
media-usb-pwc-lie-in-proc-usb-devices.patch
-#
-media-media-usbtv-prevent-access-to-free-d-resources.patch
-media-vb2-core-Skip-planes-array-verification-if-pb-.patch
-media-videobuf2-v4l2-Verify-planes-array-in-buffer-d.patch
-
###
### Video
###
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/usb-dwc3-fix-for-the-isoc-transfer-EP_BUSY-flag.patch b/kernel/tools/cpupowertools/files/patches/mageia/usb-dwc3-fix-for-the-isoc-transfer-EP_BUSY-flag.patch
deleted file mode 100644
index d8215124..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/usb-dwc3-fix-for-the-isoc-transfer-EP_BUSY-flag.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 9cad39fe4e4a4fe95d8ea5a7b0692b0a6e89e38b Mon Sep 17 00:00:00 2001
-From: Konrad Leszczynski
-Date: Mon, 8 Feb 2016 16:13:12 +0100
-Subject: [PATCH] usb: dwc3: fix for the isoc transfer EP_BUSY flag
-
-commit f3af36511e60 ("usb: dwc3: gadget: always
-enable IOC on bulk/interrupt transfers") ended up
-regressing Isochronous endpoints by clearing
-DWC3_EP_BUSY flag too early, which resulted in
-choppy audio playback over USB.
-
-Fix that by partially reverting original commit and
-making sure that we check for isochronous endpoints.
-
-Fixes: f3af36511e60 ("usb: dwc3: gadget: always enable IOC
- on bulk/interrupt transfers")
-Cc:
-Signed-off-by: Konrad Leszczynski
-Signed-off-by: Rafal Redzimski
-Signed-off-by: Felipe Balbi
----
- drivers/usb/dwc3/gadget.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
-index 5e7b2ba..867adc9 100644
---- a/drivers/usb/dwc3/gadget.c
-+++ b/drivers/usb/dwc3/gadget.c
-@@ -2058,6 +2058,10 @@ static int dwc3_cleanup_done_reqs(struct dwc3 *dwc, struct dwc3_ep *dep,
- return 1;
- }
-
-+ if (usb_endpoint_xfer_isoc(dep->endpoint.desc))
-+ if ((event->status & DEPEVT_STATUS_IOC) &&
-+ (trb->ctrl & DWC3_TRB_CTRL_IOC))
-+ return 0;
- return 1;
- }
-
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/usb-renesas_usbhs-fix-NULL-pointer-dereference-in-xf.patch b/kernel/tools/cpupowertools/files/patches/mageia/usb-renesas_usbhs-fix-NULL-pointer-dereference-in-xf.patch
deleted file mode 100644
index 8f648d43..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/usb-renesas_usbhs-fix-NULL-pointer-dereference-in-xf.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From 4fdef698383db07d829da567e0e405fc41ff3a89 Mon Sep 17 00:00:00 2001
-From: Yoshihiro Shimoda
-Date: Wed, 8 Jun 2016 16:32:49 +0900
-Subject: [PATCH] usb: renesas_usbhs: fix NULL pointer dereference in
- xfer_work()
-
-This patch fixes an issue that the xfer_work() is possible to cause
-NULL pointer dereference if the usb cable is disconnected while data
-transfer is running.
-
-In such case, a gadget driver may call usb_ep_disable()) before
-xfer_work() is actually called. In this case, the usbhs_pkt_pop()
-will call usbhsf_fifo_unselect(), and then usbhs_pipe_to_fifo()
-in xfer_work() will return NULL.
-
-Fixes: e73a989 ("usb: renesas_usbhs: add DMAEngine support")
-Cc: # v3.1+
-Signed-off-by: Yoshihiro Shimoda
-Signed-off-by: Felipe Balbi
----
- drivers/usb/renesas_usbhs/fifo.c | 18 ++++++++++++++----
- 1 file changed, 14 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/usb/renesas_usbhs/fifo.c b/drivers/usb/renesas_usbhs/fifo.c
-index 7be4e7d..280ed5f 100644
---- a/drivers/usb/renesas_usbhs/fifo.c
-+++ b/drivers/usb/renesas_usbhs/fifo.c
-@@ -810,20 +810,27 @@ static void xfer_work(struct work_struct *work)
- {
- struct usbhs_pkt *pkt = container_of(work, struct usbhs_pkt, work);
- struct usbhs_pipe *pipe = pkt->pipe;
-- struct usbhs_fifo *fifo = usbhs_pipe_to_fifo(pipe);
-+ struct usbhs_fifo *fifo;
- struct usbhs_priv *priv = usbhs_pipe_to_priv(pipe);
- struct dma_async_tx_descriptor *desc;
-- struct dma_chan *chan = usbhsf_dma_chan_get(fifo, pkt);
-+ struct dma_chan *chan;
- struct device *dev = usbhs_priv_to_dev(priv);
- enum dma_transfer_direction dir;
-+ unsigned long flags;
-
-+ usbhs_lock(priv, flags);
-+ fifo = usbhs_pipe_to_fifo(pipe);
-+ if (!fifo)
-+ goto xfer_work_end;
-+
-+ chan = usbhsf_dma_chan_get(fifo, pkt);
- dir = usbhs_pipe_is_dir_in(pipe) ? DMA_DEV_TO_MEM : DMA_MEM_TO_DEV;
-
- desc = dmaengine_prep_slave_single(chan, pkt->dma + pkt->actual,
- pkt->trans, dir,
- DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
- if (!desc)
-- return;
-+ goto xfer_work_end;
-
- desc->callback = usbhsf_dma_complete;
- desc->callback_param = pipe;
-@@ -831,7 +838,7 @@ static void xfer_work(struct work_struct *work)
- pkt->cookie = dmaengine_submit(desc);
- if (pkt->cookie < 0) {
- dev_err(dev, "Failed to submit dma descriptor\n");
-- return;
-+ goto xfer_work_end;
- }
-
- dev_dbg(dev, " %s %d (%d/ %d)\n",
-@@ -842,6 +849,9 @@ static void xfer_work(struct work_struct *work)
- usbhs_pipe_set_trans_count_if_bulk(pipe, pkt->trans);
- dma_async_issue_pending(chan);
- usbhs_pipe_enable(pipe);
-+
-+xfer_work_end:
-+ usbhs_unlock(priv, flags);
- }
-
- /*
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/files/patches/mageia/x86-power-64-Fix-hibernation-return-address-corrupti.patch b/kernel/tools/cpupowertools/files/patches/mageia/x86-power-64-Fix-hibernation-return-address-corrupti.patch
deleted file mode 100644
index 640b76a3..00000000
--- a/kernel/tools/cpupowertools/files/patches/mageia/x86-power-64-Fix-hibernation-return-address-corrupti.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 4ce827b4cc58bec7952591b96cce2b28553e4d5b Mon Sep 17 00:00:00 2001
-From: Josh Poimboeuf
-Date: Thu, 28 Jul 2016 23:15:21 +0200
-Subject: [PATCH] x86/power/64: Fix hibernation return address corruption
-
-In kernel bug 150021, a kernel panic was reported when restoring a
-hibernate image. Only a picture of the oops was reported, so I can't
-paste the whole thing here. But here are the most interesting parts:
-
- kernel tried to execute NX-protected page - exploit attempt? (uid: 0)
- BUG: unable to handle kernel paging request at ffff8804615cfd78
- ...
- RIP: ffff8804615cfd78
- RSP: ffff8804615f0000
- RBP: ffff8804615cfdc0
- ...
- Call Trace:
- do_signal+0x23
- exit_to_usermode_loop+0x64
- ...
-
-The RIP is on the same page as RBP, so it apparently started executing
-on the stack.
-
-The bug was bisected to commit ef0f3ed5a4ac (x86/asm/power: Create
-stack frames in hibernate_asm_64.S), which in retrospect seems quite
-dangerous, since that code saves and restores the stack pointer from a
-global variable ('saved_context').
-
-There are a lot of moving parts in the hibernate save and restore paths,
-so I don't know exactly what caused the panic. Presumably, a FRAME_END
-was executed without the corresponding FRAME_BEGIN, or vice versa. That
-would corrupt the return address on the stack and would be consistent
-with the details of the above panic.
-
-[ rjw: One major problem is that by the time the FRAME_BEGIN in
- restore_registers() is executed, the stack pointer value may not
- be valid any more. Namely, the stack area pointed to by it
- previously may have been overwritten by some image memory contents
- and that page frame may now be used for whatever different purpose
- it had been allocated for before hibernation. In that case, the
- FRAME_BEGIN will corrupt that memory. ]
-
-Instead of doing the frame pointer save/restore around the bounds of the
-affected functions, just do it around the call to swsusp_save().
-
-That has the same effect of ensuring that if swsusp_save() sleeps, the
-frame pointers will be correct. It's also a much more obviously safe
-way to do it than the original patch. And objtool still doesn't report
-any warnings.
-
-Fixes: ef0f3ed5a4ac (x86/asm/power: Create stack frames in hibernate_asm_64.S)
-Link: https://bugzilla.kernel.org/show_bug.cgi?id=150021
-Cc: 4.6+ # 4.6+
-Reported-by: Andre Reinke
-Tested-by: Andre Reinke
-Signed-off-by: Josh Poimboeuf
-Acked-by: Ingo Molnar
-Signed-off-by: Rafael J. Wysocki
----
- arch/x86/power/hibernate_asm_64.S | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/arch/x86/power/hibernate_asm_64.S b/arch/x86/power/hibernate_asm_64.S
-index 3177c2b..8eee0e9 100644
---- a/arch/x86/power/hibernate_asm_64.S
-+++ b/arch/x86/power/hibernate_asm_64.S
-@@ -24,7 +24,6 @@
- #include
-
- ENTRY(swsusp_arch_suspend)
-- FRAME_BEGIN
- movq $saved_context, %rax
- movq %rsp, pt_regs_sp(%rax)
- movq %rbp, pt_regs_bp(%rax)
-@@ -48,6 +47,7 @@ ENTRY(swsusp_arch_suspend)
- movq %cr3, %rax
- movq %rax, restore_cr3(%rip)
-
-+ FRAME_BEGIN
- call swsusp_save
- FRAME_END
- ret
-@@ -104,7 +104,6 @@ ENTRY(core_restore_code)
- /* code below belongs to the image kernel */
- .align PAGE_SIZE
- ENTRY(restore_registers)
-- FRAME_BEGIN
- /* go back to the original page tables */
- movq %r9, %cr3
-
-@@ -145,6 +144,5 @@ ENTRY(restore_registers)
- /* tell the hibernation core that we've just restored the memory */
- movq %rax, in_suspend(%rip)
-
-- FRAME_END
- ret
- ENDPROC(restore_registers)
---
-2.9.2
-
diff --git a/kernel/tools/cpupowertools/pspec.xml b/kernel/tools/cpupowertools/pspec.xml
index 6ded859f..3115b317 100644
--- a/kernel/tools/cpupowertools/pspec.xml
+++ b/kernel/tools/cpupowertools/pspec.xml
@@ -18,8 +18,8 @@
-
-
+ patches/linux/patch-4.7.2.xz
+
patches/mageia/Revert-ipmi-Start-the-timer-and-thread-on-internal-m.patch
@@ -27,10 +27,8 @@
patches/mageia/x86-boot-video-80x25-if-break.patch
patches/mageia/x86-default_poweroff_up_machines.patch
patches/mageia/x86-increase-default-minimum-vmalloc-area-by-64MB-to-192MB.patch
- patches/mageia/Revert-cpufreq-pcc-Enable-autoload-of-pcc-cpufreq-fo.patch
- patches/mageia/Revert-cpufreq-pcc-cpufreq-update-default-value-of-c.patch
+ patches/mageia/Revert-cpufreq-pcc-Enable-autoload-of-pcc-cpufreq-fo.patch
patches/mageia/Revert-x86-mm-mtrr-Remove-kernel-internal-MTRR-inter.patch
- patches/mageia/x86-power-64-Fix-hibernation-return-address-corrupti.patch
patches/mageia/base-cacheinfo-silence-DT-warnings.patch
patches/mageia/pci-add-ALI-M5229-ide-compatibility-mode-quirk.patch
patches/mageia/pci-quirks-drop-devinit-exit.patch
@@ -53,8 +51,6 @@
patches/mageia/fs-aufs-4.7.patch
patches/mageia/fs-aufs-4.7-modular.patch
patches/mageia/fs-aufs-4.7-ver-fix.patch
- patches/mageia/fs-ext4-don-t-call-ext4_should_journal_data-on-the-jour.patch
- patches/mageia/fs-ext4-fix-deadlock-during-page-writeback.patch
patches/mageia/firewire-ieee1394-module-aliases.patch
patches/mageia/char-agp-intel-new-Q57-id.patch
@@ -87,31 +83,16 @@
patches/mageia/net-netfilter-psd.patch
patches/mageia/net-netfilter-psd-mdv.patch
patches/mageia/net-netfilter-psd-2.6.35-buildfix.patch
- patches/mageia/net-wireless-iwlwifi-add-new-8260-PCI-IDs.patch
- patches/mageia/net-wireless-iwlwifi-add-new-8265.patch
- patches/mageia/net-wireless-iwlwifi-pcie-enable-interrupts-before-releasing-the-NICs-CPU.patch
- patches/mageia/net-wireless-iwlwifi-pcie-fix-a-race-in-firmware-loading-flow.patch
- patches/mageia/net-bcma-add-PCI-ID-for-Foxconn-s-BCM43142-device.patch
- patches/mageia/net-brcmfmac-restore-stopping-netdev-queue-when-bus-clog.patch
patches/mageia/platform-x86-add-shuttle-wmi-driver.patch
patches/mageia/platform-x86-shuttle-wmi-drop-devinit-exit.patch
patches/mageia/platform-x86-shuttle-wmi-4.2-buildfix.patch
- patches/mageia/hp-wmi-Fix-wifi-cannot-be-hard-unblocked.patch
- patches/mageia/Bluetooth-Add-support-of-13d3-3490-AR3012-device.patch
patches/mageia/intel_th-Fix-a-deadlock-in-modprobing.patch
- patches/mageia/intel_th-pci-Add-Kaby-Lake-PCH-H-support.patch
- patches/mageia/pinctrl-cherryview-prevent-concurrent-access-to-GPIO.patch
+ patches/mageia/intel_th-pci-Add-Kaby-Lake-PCH-H-support.patch
patches/mageia/include-kbuild-export-pci_ids.patch
patches/mageia/hid-usbhid-IBM-BladeCenterHS20-quirk.patch
patches/mageia/usb-storage-unusual_devs-add-id.patch
patches/mageia/usb-storage-unusual_devs-add-id-2.6.37-buildfix.patch
- patches/mageia/usb-dwc3-fix-for-the-isoc-transfer-EP_BUSY-flag.patch
- patches/mageia/usb-renesas_usbhs-fix-NULL-pointer-dereference-in-xf.patch
- patches/mageia/HID-uhid-fix-timeout-when-probe-races-with-IO.patch
patches/mageia/media-usb-pwc-lie-in-proc-usb-devices.patch
- patches/mageia/media-media-usbtv-prevent-access-to-free-d-resources.patch
- patches/mageia/media-vb2-core-Skip-planes-array-verification-if-pb-.patch
- patches/mageia/media-videobuf2-v4l2-Verify-planes-array-in-buffer-d.patch
patches/mageia/3rd-3rdparty-1.0-tree.patch
patches/mageia/3rd-3rdparty-merge.patch
patches/mageia/3rd-acerhk-0.5.35.patch
@@ -140,7 +121,6 @@
patches/mageia/3rd-rtl8723bs.patch
patches/mageia/3rd-rtl8723bs-4.7-buildfix.patch
patches/mageia/ahci-add-new-Intel-device-IDs.patch
- patches/mageia/megaraid_sas-Do-not-fire-MR_DCMD_PD_LIST_QUERY-to-co.patch
patches/mageia/arm-0001-ARM-bcm2835-dt-Add-the-ethernet-to-the-device-trees.patch
@@ -167,6 +147,13 @@
-->
+
+ 2016-08-24
+ 4.7.2
+ Release bump
+ PisiLinux Community
+ admin@pisilinux.org
+
2016-08-06
4.7.0