Linux v4.2.2
This commit is contained in:
parent
676ff28931
commit
774ec9b607
|
@ -25,6 +25,7 @@ CONFIG_ARM64_ERRATUM_827319=y
|
|||
CONFIG_ARM64_ERRATUM_824069=y
|
||||
CONFIG_ARM64_ERRATUM_819472=y
|
||||
CONFIG_ARM64_ERRATUM_832075=y
|
||||
CONFIG_ARM64_ERRATUM_843419=y
|
||||
|
||||
# AMBA / VExpress
|
||||
# CONFIG_RTC_DRV_PL030 is not set
|
||||
|
|
|
@ -1,66 +0,0 @@
|
|||
From: Eric Sandeen <sandeen@xxxxxxxxxx>
|
||||
Date: Wed, 05 Aug 2015 15:13:58 -0700
|
||||
Subject: [PATCH] ext4: don't manipulate recovery flag when freezing no-journal fs
|
||||
|
||||
At some point along this sequence of changes:
|
||||
|
||||
f6e63f9 ext4: fold ext4_nojournal_sops into ext4_sops
|
||||
bb04457 ext4: support freezing ext2 (nojournal) file systems
|
||||
9ca9238 ext4: Use separate super_operations structure for no_journal filesystems
|
||||
|
||||
ext4 started setting needs_recovery on filesystems without journals
|
||||
when they are unfrozen. This makes no sense, and in fact confuses
|
||||
blkid to the point where it doesn't recognize the filesystem at all.
|
||||
|
||||
(freeze ext2; unfreeze ext2; run blkid; see no output; run dumpe2fs,
|
||||
see needs_recovery set on fs w/ no journal).
|
||||
|
||||
To fix this, don't manipulate the INCOMPAT_RECOVER feature on
|
||||
filesystems without journals.
|
||||
|
||||
Reported-by: Stu Mark <smark@xxxxxxxxx>
|
||||
Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
|
||||
---
|
||||
|
||||
Note, is there a reason that in ext4_freeze, if journal_flush
|
||||
fails, we skip the ext4_commit_super call? I didn't change that
|
||||
here, but it seems odd.
|
||||
|
||||
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
|
||||
index 58987b5..e7b345d 100644
|
||||
--- a/fs/ext4/super.c
|
||||
+++ b/fs/ext4/super.c
|
||||
@@ -4833,10 +4833,11 @@ static int ext4_freeze(struct super_block *sb)
|
||||
error = jbd2_journal_flush(journal);
|
||||
if (error < 0)
|
||||
goto out;
|
||||
+
|
||||
+ /* Journal blocked and flushed, clear needs_recovery flag. */
|
||||
+ EXT4_CLEAR_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_RECOVER);
|
||||
}
|
||||
|
||||
- /* Journal blocked and flushed, clear needs_recovery flag. */
|
||||
- EXT4_CLEAR_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_RECOVER);
|
||||
error = ext4_commit_super(sb, 1);
|
||||
out:
|
||||
if (journal)
|
||||
@@ -4854,8 +4855,11 @@ static int ext4_unfreeze(struct super_block *sb)
|
||||
if (sb->s_flags & MS_RDONLY)
|
||||
return 0;
|
||||
|
||||
- /* Reset the needs_recovery flag before the fs is unlocked. */
|
||||
- EXT4_SET_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_RECOVER);
|
||||
+ if (EXT4_SB(sb)->s_journal) {
|
||||
+ /* Reset the needs_recovery flag before the fs is unlocked. */
|
||||
+ EXT4_SET_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_RECOVER);
|
||||
+ }
|
||||
+
|
||||
ext4_commit_super(sb, 1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
|
||||
the body of a message to majordomo@xxxxxxxxxxxxxxx
|
||||
More majordomo info at http://vger.kernel.org/majordomo-info.html
|
||||
|
11
kernel.spec
11
kernel.spec
|
@ -52,7 +52,7 @@ Summary: The Linux kernel
|
|||
%if 0%{?released_kernel}
|
||||
|
||||
# Do we have a -stable update to apply?
|
||||
%define stable_update 1
|
||||
%define stable_update 2
|
||||
# Set rpm version accordingly
|
||||
%if 0%{?stable_update}
|
||||
%define stablerev %{stable_update}
|
||||
|
@ -610,9 +610,6 @@ Patch509: ideapad-laptop-Add-Lenovo-Yoga-3-14-to-no_hw_rfkill-.patch
|
|||
#rhbz 1253789
|
||||
Patch511: iSCSI-let-session-recovery_tmo-sysfs-writes-persist.patch
|
||||
|
||||
#rhbz 1250717
|
||||
Patch512: ext4-dont-manipulate-recovery-flag-when-freezing.patch
|
||||
|
||||
#rhbz 1256281
|
||||
Patch26265: mmc-sdhci-fix-dma-memory-leak-in-sdhci_pre_req.patch
|
||||
|
||||
|
@ -623,9 +620,6 @@ Patch515: nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch
|
|||
Patch517: vmwgfx-Rework-device-initialization.patch
|
||||
Patch518: drm-vmwgfx-Allow-dropped-masters-render-node-like-ac.patch
|
||||
|
||||
#rhbz 1259231
|
||||
Patch519: make-flush-workqueue-available-to-non-GPL-modules.patch
|
||||
|
||||
#rhbz 1237136
|
||||
Patch522: block-blkg_destroy_all-should-clear-q-root_blkg-and-.patch
|
||||
|
||||
|
@ -2245,6 +2239,9 @@ fi
|
|||
#
|
||||
#
|
||||
%changelog
|
||||
* Tue Sep 29 2015 Justin M. Forbes <jforbes@fedoraproject.org>
|
||||
- - Linux v4.2.2
|
||||
|
||||
* Mon Sep 28 2015 Peter Robinson <pbrobinson@fedoraproject.org>
|
||||
- Add upstream patch to fix a Allwinner regulator loading as a module
|
||||
|
||||
|
|
|
@ -1,32 +0,0 @@
|
|||
From 1dadafa86a779884f14a6e7a3ddde1a57b0a0a65 Mon Sep 17 00:00:00 2001
|
||||
From: Tim Gardner <tim.gardner@canonical.com>
|
||||
Date: Tue, 4 Aug 2015 11:26:04 -0600
|
||||
Subject: [PATCH] workqueue: Make flush_workqueue() available again to non GPL
|
||||
modules
|
||||
|
||||
Commit 37b1ef31a568fc02e53587620226e5f3c66454c8 ("workqueue: move
|
||||
flush_scheduled_work() to workqueue.h") moved the exported non GPL
|
||||
flush_scheduled_work() from a function to an inline wrapper.
|
||||
Unfortunately, it directly calls flush_workqueue() which is a GPL function.
|
||||
This has the effect of changing the licensing requirement for this function
|
||||
and makes it unavailable to non GPL modules.
|
||||
|
||||
See commit ad7b1f841f8a54c6d61ff181451f55b68175e15a ("workqueue: Make
|
||||
schedule_work() available again to non GPL modules") for precedent.
|
||||
|
||||
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
|
||||
Signed-off-by: Tejun Heo <tj@kernel.org>
|
||||
|
||||
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
|
||||
index 4c4f061..a413acb 100644
|
||||
--- a/kernel/workqueue.c
|
||||
+++ b/kernel/workqueue.c
|
||||
@@ -2614,7 +2614,7 @@ void flush_workqueue(struct workqueue_struct *wq)
|
||||
out_unlock:
|
||||
mutex_unlock(&wq->mutex);
|
||||
}
|
||||
-EXPORT_SYMBOL_GPL(flush_workqueue);
|
||||
+EXPORT_SYMBOL(flush_workqueue);
|
||||
|
||||
/**
|
||||
* drain_workqueue - drain a workqueue
|
Loading…
Reference in New Issue