Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1223236 > unrolled thread

[PATCH 3.14 00/18] 3.14.52-stable review

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2015-09-12 01:20 +0200
Last post2015-09-21 07:00 +0200
Articles 15 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 3.14 00/18] 3.14.52-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 18/18] arm64: KVM: Fix host crash when injecting a fault into a 32bit guest Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 14/18] regmap: regcache-rbtree: Clean new present bits on present bitmap resize Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 06/18] perf: Fix PERF_EVENT_IOC_PERIOD migration race Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 16/18] arm64/mm: Remove hack in mmap randomize layout Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 05/18] perf: Fix fasync handling on inherited events Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 03/18] mm/hwpoison: fix page refcount of unknown non LRU page Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    [PATCH 3.14 07/18] dm thin metadata: delete btrees when releasing metadata snapshot Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 01:20 +0200
    Re: [PATCH 3.14 00/18] 3.14.52-stable review Shuah Khan <shuahkh@osg.samsung.com> - 2015-09-12 03:10 +0200
    Re: [PATCH 3.14 00/18] 3.14.52-stable review Guenter Roeck <linux@roeck-us.net> - 2015-09-12 06:30 +0200
    Re: [PATCH 3.14 00/18] 3.14.52-stable review Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-12 13:10 +0200
      Re: [PATCH 3.14 00/18] 3.14.52-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-12 18:00 +0200
        [PATCH] tty/vt: don't set font mappings on vc not supporting this Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-13 08:10 +0200
          Re: [PATCH] tty/vt: don't set font mappings on vc not supporting this Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-21 06:50 +0200
            Re: [PATCH] tty/vt: don't set font mappings on vc not supporting this Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-21 07:00 +0200

#1223236 — [PATCH 3.14 00/18] 3.14.52-stable review

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 00/18] 3.14.52-stable review
Message-ID<q7FiN-75P-23@gated-at.bofh.it>
This is the start of the stable review cycle for the 3.14.52 release.
There are 18 patches in this series, all will be posted as a response
to this one.  If anyone has any issues with these being applied, please
let me know.

Responses should be made by Sun Sep 13 22:46:12 UTC 2015.
Anything received after that time might be too late.

The whole patch series can be found in one patch at:
	kernel.org/pub/linux/kernel/v3.x/stable-review/patch-3.14.52-rc1.gz
and the diffstat can be found below.

thanks,

greg k-h

-------------
Pseudo-Shortlog of commits:

Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Linux 3.14.52-rc1

Marc Zyngier <marc.zyngier@arm.com>
    arm64: KVM: Fix host crash when injecting a fault into a 32bit guest

Alan Stern <stern@rowland.harvard.edu>
    SCSI: Fix NULL pointer dereference in runtime PM

Yann Droneaud <ydroneaud@opteya.com>
    arm64/mm: Remove hack in mmap randomize layout

Horia Geant? <horia.geanta@freescale.com>
    crypto: caam - fix memory corruption in ahash_final_ctx

Guenter Roeck <linux@roeck-us.net>
    regmap: regcache-rbtree: Clean new present bits on present bitmap resize

Bart Van Assche <bart.vanassche@sandisk.com>
    libfc: Fix fc_fcp_cleanup_each_cmd()

Bart Van Assche <bart.vanassche@sandisk.com>
    libfc: Fix fc_exch_recv_req() error path

Thomas Hellstrom <thellstrom@vmware.com>
    drm/vmwgfx: Fix execbuf locking issues

Alex Deucher <alexander.deucher@amd.com>
    drm/radeon: add new OLAND pci id

Michael Walle <michael@walle.cc>
    EDAC, ppc4xx: Access mci->csrows array elements properly

Richard Weinberger <richard@nod.at>
    localmodconfig: Use Kbuild files too

Joe Thornber <ejt@redhat.com>
    dm thin metadata: delete btrees when releasing metadata snapshot

Peter Zijlstra <peterz@infradead.org>
    perf: Fix PERF_EVENT_IOC_PERIOD migration race

Peter Zijlstra <peterz@infradead.org>
    perf: Fix fasync handling on inherited events

Bob Liu <bob.liu@oracle.com>
    xen-blkfront: don't add indirect pages to list when !feature_persistent

Wanpeng Li <wanpeng.li@hotmail.com>
    mm/hwpoison: fix page refcount of unknown non LRU page

Manfred Spraul <manfred@colorfullife.com>
    ipc/sem.c: update/correct memory barriers

Herton R. Krzesinski <herton@redhat.com>
    ipc,sem: fix use after free on IPC_RMID after a task using same semaphore set exits


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

Diffstat:

 Makefile                                |  4 +-
 arch/arm64/kvm/inject_fault.c           | 12 ++---
 arch/arm64/mm/mmap.c                    | 12 +----
 drivers/base/regmap/regcache-rbtree.c   | 19 +++++--
 drivers/block/xen-blkfront.c            |  6 ++-
 drivers/crypto/caam/caamhash.c          |  7 +--
 drivers/edac/ppc4xx_edac.c              |  2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c |  4 +-
 drivers/md/dm-thin-metadata.c           |  4 +-
 drivers/scsi/libfc/fc_exch.c            |  8 +--
 drivers/scsi/libfc/fc_fcp.c             | 19 ++++++-
 drivers/scsi/scsi_pm.c                  | 22 ++++-----
 include/drm/drm_pciids.h                |  1 +
 ipc/sem.c                               | 43 +++++++++++++---
 kernel/events/core.c                    | 87 ++++++++++++++++++++++++---------
 mm/memory-failure.c                     |  2 +
 scripts/kconfig/streamline_config.pl    |  2 +-
 17 files changed, 173 insertions(+), 81 deletions(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1223237 — [PATCH 3.14 18/18] arm64: KVM: Fix host crash when injecting a fault into a 32bit guest

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 18/18] arm64: KVM: Fix host crash when injecting a fault into a 32bit guest
Message-ID<q7FLQ-7Un-25@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Marc Zyngier <marc.zyngier@arm.com>

commit 126c69a0bd0e441bf6766a5d9bf20de011be9f68 upstream.

When injecting a fault into a misbehaving 32bit guest, it seems
rather idiotic to also inject a 64bit fault that is only going
to corrupt the guest state. This leads to a situation where we
perform an illegal exception return at EL2 causing the host
to crash instead of killing the guest.

Just fix the stupid bug that has been there from day 1.

Reported-by: Russell King <rmk+kernel@arm.linux.org.uk>
Tested-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/arm64/kvm/inject_fault.c |   12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

--- a/arch/arm64/kvm/inject_fault.c
+++ b/arch/arm64/kvm/inject_fault.c
@@ -168,8 +168,8 @@ void kvm_inject_dabt(struct kvm_vcpu *vc
 {
 	if (!(vcpu->arch.hcr_el2 & HCR_RW))
 		inject_abt32(vcpu, false, addr);
-
-	inject_abt64(vcpu, false, addr);
+	else
+		inject_abt64(vcpu, false, addr);
 }
 
 /**
@@ -184,8 +184,8 @@ void kvm_inject_pabt(struct kvm_vcpu *vc
 {
 	if (!(vcpu->arch.hcr_el2 & HCR_RW))
 		inject_abt32(vcpu, true, addr);
-
-	inject_abt64(vcpu, true, addr);
+	else
+		inject_abt64(vcpu, true, addr);
 }
 
 /**
@@ -198,6 +198,6 @@ void kvm_inject_undefined(struct kvm_vcp
 {
 	if (!(vcpu->arch.hcr_el2 & HCR_RW))
 		inject_undef32(vcpu);
-
-	inject_undef64(vcpu);
+	else
+		inject_undef64(vcpu);
 }


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223238 — [PATCH 3.14 14/18] regmap: regcache-rbtree: Clean new present bits on present bitmap resize

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 14/18] regmap: regcache-rbtree: Clean new present bits on present bitmap resize
Message-ID<q7FLQ-7Un-27@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Guenter Roeck <linux@roeck-us.net>

commit 8ef9724bf9718af81cfc5132253372f79c71b7e2 upstream.

When inserting a new register into a block, the present bit map size is
increased using krealloc. krealloc does not clear the additionally
allocated memory, leaving it filled with random values. Result is that
some registers are considered cached even though this is not the case.

Fix the problem by clearing the additionally allocated memory. Also, if
the bitmap size does not increase, do not reallocate the bitmap at all
to reduce overhead.

Fixes: 3f4ff561bc88 ("regmap: rbtree: Make cache_present bitmap per node")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/base/regmap/regcache-rbtree.c |   19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

--- a/drivers/base/regmap/regcache-rbtree.c
+++ b/drivers/base/regmap/regcache-rbtree.c
@@ -302,11 +302,20 @@ static int regcache_rbtree_insert_to_blo
 	if (!blk)
 		return -ENOMEM;
 
-	present = krealloc(rbnode->cache_present,
-		    BITS_TO_LONGS(blklen) * sizeof(*present), GFP_KERNEL);
-	if (!present) {
-		kfree(blk);
-		return -ENOMEM;
+	if (BITS_TO_LONGS(blklen) > BITS_TO_LONGS(rbnode->blklen)) {
+		present = krealloc(rbnode->cache_present,
+				   BITS_TO_LONGS(blklen) * sizeof(*present),
+				   GFP_KERNEL);
+		if (!present) {
+			kfree(blk);
+			return -ENOMEM;
+		}
+
+		memset(present + BITS_TO_LONGS(rbnode->blklen), 0,
+		       (BITS_TO_LONGS(blklen) - BITS_TO_LONGS(rbnode->blklen))
+		       * sizeof(*present));
+	} else {
+		present = rbnode->cache_present;
 	}
 
 	/* insert the register value in the correct place in the rbnode block */


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223240 — [PATCH 3.14 06/18] perf: Fix PERF_EVENT_IOC_PERIOD migration race

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 06/18] perf: Fix PERF_EVENT_IOC_PERIOD migration race
Message-ID<q7FLQ-7Un-33@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Peter Zijlstra <peterz@infradead.org>

commit c7999c6f3fed9e383d3131474588f282ae6d56b9 upstream.

I ran the perf fuzzer, which triggered some WARN()s which are due to
trying to stop/restart an event on the wrong CPU.

Use the normal IPI pattern to ensure we run the code on the correct CPU.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: bad7192b842c ("perf: Fix PERF_EVENT_IOC_PERIOD to force-reset the period")
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 kernel/events/core.c |   75 +++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 55 insertions(+), 20 deletions(-)

--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -3562,28 +3562,21 @@ static void perf_event_for_each(struct p
 	mutex_unlock(&ctx->mutex);
 }
 
-static int perf_event_period(struct perf_event *event, u64 __user *arg)
-{
-	struct perf_event_context *ctx = event->ctx;
-	int ret = 0, active;
+struct period_event {
+	struct perf_event *event;
 	u64 value;
+};
 
-	if (!is_sampling_event(event))
-		return -EINVAL;
-
-	if (copy_from_user(&value, arg, sizeof(value)))
-		return -EFAULT;
-
-	if (!value)
-		return -EINVAL;
+static int __perf_event_period(void *info)
+{
+	struct period_event *pe = info;
+	struct perf_event *event = pe->event;
+	struct perf_event_context *ctx = event->ctx;
+	u64 value = pe->value;
+	bool active;
 
-	raw_spin_lock_irq(&ctx->lock);
+	raw_spin_lock(&ctx->lock);
 	if (event->attr.freq) {
-		if (value > sysctl_perf_event_sample_rate) {
-			ret = -EINVAL;
-			goto unlock;
-		}
-
 		event->attr.sample_freq = value;
 	} else {
 		event->attr.sample_period = value;
@@ -3602,11 +3595,53 @@ static int perf_event_period(struct perf
 		event->pmu->start(event, PERF_EF_RELOAD);
 		perf_pmu_enable(ctx->pmu);
 	}
+	raw_spin_unlock(&ctx->lock);
+
+	return 0;
+}
+
+static int perf_event_period(struct perf_event *event, u64 __user *arg)
+{
+	struct period_event pe = { .event = event, };
+	struct perf_event_context *ctx = event->ctx;
+	struct task_struct *task;
+	u64 value;
+
+	if (!is_sampling_event(event))
+		return -EINVAL;
+
+	if (copy_from_user(&value, arg, sizeof(value)))
+		return -EFAULT;
+
+	if (!value)
+		return -EINVAL;
+
+	if (event->attr.freq && value > sysctl_perf_event_sample_rate)
+		return -EINVAL;
+
+	task = ctx->task;
+	pe.value = value;
+
+	if (!task) {
+		cpu_function_call(event->cpu, __perf_event_period, &pe);
+		return 0;
+	}
+
+retry:
+	if (!task_function_call(task, __perf_event_period, &pe))
+		return 0;
+
+	raw_spin_lock_irq(&ctx->lock);
+	if (ctx->is_active) {
+		raw_spin_unlock_irq(&ctx->lock);
+		task = ctx->task;
+		goto retry;
+	}
 
-unlock:
+	__perf_event_period(&pe);
 	raw_spin_unlock_irq(&ctx->lock);
 
-	return ret;
+	return 0;
 }
 
 static const struct file_operations perf_fops;


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223241 — [PATCH 3.14 16/18] arm64/mm: Remove hack in mmap randomize layout

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 16/18] arm64/mm: Remove hack in mmap randomize layout
Message-ID<q7FLR-7Un-39@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Yann Droneaud <ydroneaud@opteya.com>

commit d6c763afab142a85e4770b4bc2a5f40f256d5c5d upstream.

Since commit 8a0a9bd4db63 ('random: make get_random_int() more
random'), get_random_int() returns a random value for each call,
so comment and hack introduced in mmap_rnd() as part of commit
1d18c47c735e ('arm64: MMU fault handling and page table management')
are incorrects.

Commit 1d18c47c735e seems to use the same hack introduced by
commit a5adc91a4b44 ('powerpc: Ensure random space between stack
and mmaps'), latter copied in commit 5a0efea09f42 ('sparc64: Sharpen
address space randomization calculations.').

But both architectures were cleaned up as part of commit
fa8cbaaf5a68 ('powerpc+sparc64/mm: Remove hack in mmap randomize
layout') as hack is no more needed since commit 8a0a9bd4db63.

So the present patch removes the comment and the hack around
get_random_int() on AArch64's mmap_rnd().

Cc: David S. Miller <davem@davemloft.net>
Cc: Anton Blanchard <anton@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: Dan McGee <dpmcgee@gmail.com>
Signed-off-by: Yann Droneaud <ydroneaud@opteya.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Cc: Matthias Brugger <mbrugger@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/arm64/mm/mmap.c |   12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

--- a/arch/arm64/mm/mmap.c
+++ b/arch/arm64/mm/mmap.c
@@ -47,22 +47,14 @@ static int mmap_is_legacy(void)
 	return sysctl_legacy_va_layout;
 }
 
-/*
- * Since get_random_int() returns the same value within a 1 jiffy window, we
- * will almost always get the same randomisation for the stack and mmap
- * region. This will mean the relative distance between stack and mmap will be
- * the same.
- *
- * To avoid this we can shift the randomness by 1 bit.
- */
 static unsigned long mmap_rnd(void)
 {
 	unsigned long rnd = 0;
 
 	if (current->flags & PF_RANDOMIZE)
-		rnd = (long)get_random_int() & (STACK_RND_MASK >> 1);
+		rnd = (long)get_random_int() & STACK_RND_MASK;
 
-	return rnd << (PAGE_SHIFT + 1);
+	return rnd << PAGE_SHIFT;
 }
 
 static unsigned long mmap_base(void)


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223242 — [PATCH 3.14 05/18] perf: Fix fasync handling on inherited events

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 05/18] perf: Fix fasync handling on inherited events
Message-ID<q7FLR-7Un-35@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Peter Zijlstra <peterz@infradead.org>

commit fed66e2cdd4f127a43fd11b8d92a99bdd429528c upstream.

Vince reported that the fasync signal stuff doesn't work proper for
inherited events. So fix that.

Installing fasync allocates memory and sets filp->f_flags |= FASYNC,
which upon the demise of the file descriptor ensures the allocation is
freed and state is updated.

Now for perf, we can have the events stick around for a while after the
original FD is dead because of references from child events. So we
cannot copy the fasync pointer around. We can however consistently use
the parent's fasync, as that will be updated.

Reported-and-Tested-by: Vince Weaver <vincent.weaver@maine.edu>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Arnaldo Carvalho deMelo <acme@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: eranian@google.com
Link: http://lkml.kernel.org/r/1434011521.1495.71.camel@twins
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 kernel/events/core.c |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -4218,12 +4218,20 @@ static const struct file_operations perf
  * to user-space before waking everybody up.
  */
 
+static inline struct fasync_struct **perf_event_fasync(struct perf_event *event)
+{
+	/* only the parent has fasync state */
+	if (event->parent)
+		event = event->parent;
+	return &event->fasync;
+}
+
 void perf_event_wakeup(struct perf_event *event)
 {
 	ring_buffer_wakeup(event);
 
 	if (event->pending_kill) {
-		kill_fasync(&event->fasync, SIGIO, event->pending_kill);
+		kill_fasync(perf_event_fasync(event), SIGIO, event->pending_kill);
 		event->pending_kill = 0;
 	}
 }
@@ -5432,7 +5440,7 @@ static int __perf_event_overflow(struct
 	else
 		perf_event_output(event, data, regs);
 
-	if (event->fasync && event->pending_kill) {
+	if (*perf_event_fasync(event) && event->pending_kill) {
 		event->pending_wakeup = 1;
 		irq_work_queue(&event->pending);
 	}


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223243 — [PATCH 3.14 03/18] mm/hwpoison: fix page refcount of unknown non LRU page

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 03/18] mm/hwpoison: fix page refcount of unknown non LRU page
Message-ID<q7FLR-7Un-41@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Wanpeng Li <wanpeng.li@hotmail.com>

commit 4f32be677b124a49459e2603321c7a5605ceb9f8 upstream.

After trying to drain pages from pagevec/pageset, we try to get reference
count of the page again, however, the reference count of the page is not
reduced if the page is still not on LRU list.

Fix it by adding the put_page() to drop the page reference which is from
__get_any_page().

Signed-off-by: Wanpeng Li <wanpeng.li@hotmail.com>
Acked-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 mm/memory-failure.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/mm/memory-failure.c
+++ b/mm/memory-failure.c
@@ -1510,6 +1510,8 @@ static int get_any_page(struct page *pag
 		 */
 		ret = __get_any_page(page, pfn, 0);
 		if (!PageLRU(page)) {
+			/* Drop page reference which is from __get_any_page() */
+			put_page(page);
 			pr_info("soft_offline: %#lx: unknown non LRU page type %lx\n",
 				pfn, page->flags);
 			return -EIO;


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223250 — [PATCH 3.14 07/18] dm thin metadata: delete btrees when releasing metadata snapshot

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 01:20 +0200
Subject[PATCH 3.14 07/18] dm thin metadata: delete btrees when releasing metadata snapshot
Message-ID<q7FLR-7Un-59@gated-at.bofh.it>
In reply to#1223236
3.14-stable review patch.  If anyone has any objections, please let me know.

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

From: Joe Thornber <ejt@redhat.com>

commit 7f518ad0a212e2a6fd68630e176af1de395070a7 upstream.

The device details and mapping trees were just being decremented
before.  Now btree_del() is called to do a deep delete.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/md/dm-thin-metadata.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/md/dm-thin-metadata.c
+++ b/drivers/md/dm-thin-metadata.c
@@ -1295,8 +1295,8 @@ static int __release_metadata_snap(struc
 		return r;
 
 	disk_super = dm_block_data(copy);
-	dm_sm_dec_block(pmd->metadata_sm, le64_to_cpu(disk_super->data_mapping_root));
-	dm_sm_dec_block(pmd->metadata_sm, le64_to_cpu(disk_super->device_details_root));
+	dm_btree_del(&pmd->info, le64_to_cpu(disk_super->data_mapping_root));
+	dm_btree_del(&pmd->details_info, le64_to_cpu(disk_super->device_details_root));
 	dm_sm_dec_block(pmd->metadata_sm, held_root);
 
 	return dm_tm_unlock(pmd->tm, copy);


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223279

FromShuah Khan <shuahkh@osg.samsung.com>
Date2015-09-12 03:10 +0200
Message-ID<q7Huh-1Yb-5@gated-at.bofh.it>
In reply to#1223236
On 09/11/2015 04:49 PM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 3.14.52 release.
> There are 18 patches in this series, all will be posted as a response
> to this one.  If anyone has any issues with these being applied, please
> let me know.
> 
> Responses should be made by Sun Sep 13 22:46:12 UTC 2015.
> Anything received after that time might be too late.
> 
> The whole patch series can be found in one patch at:
> 	kernel.org/pub/linux/kernel/v3.x/stable-review/patch-3.14.52-rc1.gz
> and the diffstat can be found below.
> 

Compiled and booted on my test system. No dmesg regressions.

thanks,
-- Shuah



-- 
Shuah Khan
Sr. Linux Kernel Developer
Open Source Innovation Group
Samsung Research America (Silicon Valley)
shuahkh@osg.samsung.com | (970) 217-8978
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223297

FromGuenter Roeck <linux@roeck-us.net>
Date2015-09-12 06:30 +0200
Message-ID<q7KBP-6za-3@gated-at.bofh.it>
In reply to#1223236
On 09/11/2015 03:49 PM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 3.14.52 release.
> There are 18 patches in this series, all will be posted as a response
> to this one.  If anyone has any issues with these being applied, please
> let me know.
>
> Responses should be made by Sun Sep 13 22:46:12 UTC 2015.
> Anything received after that time might be too late.
>
Build results:
	total: 128 pass: 128 fail: 0
Qemu test results:
	total: 80 pass: 80 fail: 0

Details are available at http://server.roeck-us.net:8010/builders.

Guenter


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223387

FromSudip Mukherjee <sudipm.mukherjee@gmail.com>
Date2015-09-12 13:10 +0200
Message-ID<q7QQV-77O-19@gated-at.bofh.it>
In reply to#1223236
On Fri, Sep 11, 2015 at 03:49:18PM -0700, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 3.14.52 release.
> There are 18 patches in this series, all will be posted as a response
> to this one.  If anyone has any issues with these being applied, please
> let me know.
> 
> Responses should be made by Sun Sep 13 22:46:12 UTC 2015.
> Anything received after that time might be too late.

Compiled and booted on x86_32. dmesg showd:
kmemleak: 47 new suspected memory leaks (see /sys/kernel/debug/kmemleak)

/sys/kernel/debug/kmemleak showed lots of:
unreferenced object 0xf3204fb0 (size 1024):
 comm "setfont", pid 326, jiffies 4294897405 (age 2079.568s)
 hex dump (first 32 bytes):
	a3 00 a0 25 92 25 b1 00 a2 00 a5 00 a9 00 ae 00 ...%.%..........
	c6 00 dd 00 e6 00 52 01 53 01 78 01 14 20 20 20  ......R.S.x..   
 backtrace:
	[<c1637adc>] kmemleak_alloc+0x3c/0xa0
	[<c116845f>] kmem_cache_alloc_trace+0x9f/0x140
	[<c13d3caa>] set_inverse_trans_unicode.isra.0+0x10a/0x120
	[<c13d4672>] con_set_unimap+0x1b2/0x230
	[<c13cee27>] vt_ioctl+0x857/0x1020
	[<c13c40e3>] tty_ioctl+0x233/0xa40
	[<c1188e82>] do_vfs_ioctl+0x2e2/0x540
	[<c1189140>] SyS_ioctl+0x60/0x90
	[<c164f086>] sysenter_after_call+0x0/0x21
	[<ffffffff>] 0xffffffff

9e326f78713a ("tty/vt: don't set font mappings on vc not supporting this")
solved the error for me. 9e326f78713a is marked for stable also and it
will not apply cleanly.

cross_compiled with allmodconfig:

i386 - pass
x86_64 - pass
alphacheck - pass
arm - pass
cris - fail
m68k - pass
mips - pass
powerpc - pass
s390 - pass
sparc - pass
sparc64 - pass
tile - fail
tilegx - fail
xtensa - pass

build report at:
https://travis-ci.org/sudipm-mukherjee/parport/builds/79960443

regards
sudip
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223427

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-12 18:00 +0200
Message-ID<q7VnA-4Zv-25@gated-at.bofh.it>
In reply to#1223387
On Sat, Sep 12, 2015 at 04:37:51PM +0530, Sudip Mukherjee wrote:
> On Fri, Sep 11, 2015 at 03:49:18PM -0700, Greg Kroah-Hartman wrote:
> > This is the start of the stable review cycle for the 3.14.52 release.
> > There are 18 patches in this series, all will be posted as a response
> > to this one.  If anyone has any issues with these being applied, please
> > let me know.
> > 
> > Responses should be made by Sun Sep 13 22:46:12 UTC 2015.
> > Anything received after that time might be too late.
> 
> Compiled and booted on x86_32. dmesg showd:
> kmemleak: 47 new suspected memory leaks (see /sys/kernel/debug/kmemleak)
> 
> /sys/kernel/debug/kmemleak showed lots of:
> unreferenced object 0xf3204fb0 (size 1024):
>  comm "setfont", pid 326, jiffies 4294897405 (age 2079.568s)
>  hex dump (first 32 bytes):
> 	a3 00 a0 25 92 25 b1 00 a2 00 a5 00 a9 00 ae 00 ...%.%..........
> 	c6 00 dd 00 e6 00 52 01 53 01 78 01 14 20 20 20  ......R.S.x..   
>  backtrace:
> 	[<c1637adc>] kmemleak_alloc+0x3c/0xa0
> 	[<c116845f>] kmem_cache_alloc_trace+0x9f/0x140
> 	[<c13d3caa>] set_inverse_trans_unicode.isra.0+0x10a/0x120
> 	[<c13d4672>] con_set_unimap+0x1b2/0x230
> 	[<c13cee27>] vt_ioctl+0x857/0x1020
> 	[<c13c40e3>] tty_ioctl+0x233/0xa40
> 	[<c1188e82>] do_vfs_ioctl+0x2e2/0x540
> 	[<c1189140>] SyS_ioctl+0x60/0x90
> 	[<c164f086>] sysenter_after_call+0x0/0x21
> 	[<ffffffff>] 0xffffffff
> 
> 9e326f78713a ("tty/vt: don't set font mappings on vc not supporting this")
> solved the error for me. 9e326f78713a is marked for stable also and it
> will not apply cleanly.

So this isn't a new thing at all, can you provide a backport that worked
for you so I can queue it up for the next round?

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1223551 — [PATCH] tty/vt: don't set font mappings on vc not supporting this

FromSudip Mukherjee <sudipm.mukherjee@gmail.com>
Date2015-09-13 08:10 +0200
Subject[PATCH] tty/vt: don't set font mappings on vc not supporting this
Message-ID<q88Ea-7Cy-5@gated-at.bofh.it>
In reply to#1223427
commit 9e326f78713a4421fe11afc2ddeac07698fac131 upstream

We can call this function for a dummy console that doesn't support
setting the font mapping, which will result in a null ptr BUG. So check
for this case and return error for consoles w/o font mapping support.

Cc: <stable@vger.kernel.org> # 3.14.x
Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
---

backporting for the first time so not exactly sure if the format is ok.

 drivers/tty/vt/consolemap.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/tty/vt/consolemap.c b/drivers/tty/vt/consolemap.c
index 2978ca5..08d36e4 100644
--- a/drivers/tty/vt/consolemap.c
+++ b/drivers/tty/vt/consolemap.c
@@ -540,6 +540,11 @@ int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
 
 	/* Save original vc_unipagdir_loc in case we allocate a new one */
 	p = (struct uni_pagedir *)*vc->vc_uni_pagedir_loc;
+
+	if (!p) {
+		err = -EINVAL;
+		goto out_unlock;
+	}
 	if (p->readonly) {
 		console_unlock();
 		return -EIO;
@@ -633,6 +638,7 @@ int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
 		set_inverse_transl(vc, p, i); /* Update inverse translations */
 	set_inverse_trans_unicode(vc, p);
 
+out_unlock:
 	console_unlock();
 	return err;
 }
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1229031 — Re: [PATCH] tty/vt: don't set font mappings on vc not supporting this

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-21 06:50 +0200
SubjectRe: [PATCH] tty/vt: don't set font mappings on vc not supporting this
Message-ID<qb1d8-4DV-5@gated-at.bofh.it>
In reply to#1223551
On Sun, Sep 13, 2015 at 11:33:51AM +0530, Sudip Mukherjee wrote:
> commit 9e326f78713a4421fe11afc2ddeac07698fac131 upstream
> 
> We can call this function for a dummy console that doesn't support
> setting the font mapping, which will result in a null ptr BUG. So check
> for this case and return error for consoles w/o font mapping support.
> 
> Cc: <stable@vger.kernel.org> # 3.14.x
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> ---
> 
> backporting for the first time so not exactly sure if the format is ok.

You need to keep the original authorship of the patch around, as well as
their signed-off-by information.  Also, you didn't backport it
identically:

> 
>  drivers/tty/vt/consolemap.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/tty/vt/consolemap.c b/drivers/tty/vt/consolemap.c
> index 2978ca5..08d36e4 100644
> --- a/drivers/tty/vt/consolemap.c
> +++ b/drivers/tty/vt/consolemap.c
> @@ -540,6 +540,11 @@ int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
>  
>  	/* Save original vc_unipagdir_loc in case we allocate a new one */
>  	p = (struct uni_pagedir *)*vc->vc_uni_pagedir_loc;
> +
> +	if (!p) {
> +		err = -EINVAL;
> +		goto out_unlock;

The original has a blank line between these two lines, why not keep it?

I'll fix it up, but be a bit more careful next time please.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1229037 — Re: [PATCH] tty/vt: don't set font mappings on vc not supporting this

FromSudip Mukherjee <sudipm.mukherjee@gmail.com>
Date2015-09-21 07:00 +0200
SubjectRe: [PATCH] tty/vt: don't set font mappings on vc not supporting this
Message-ID<qb1mO-4P7-9@gated-at.bofh.it>
In reply to#1229031
On Sun, Sep 20, 2015 at 06:40:15PM -0700, Greg Kroah-Hartman wrote:
> On Sun, Sep 13, 2015 at 11:33:51AM +0530, Sudip Mukherjee wrote:
> > commit 9e326f78713a4421fe11afc2ddeac07698fac131 upstream
<snip> 
> > Cc: <stable@vger.kernel.org> # 3.14.x
> > Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> > ---
> > 
> > backporting for the first time so not exactly sure if the format is ok.
> 
> You need to keep the original authorship of the patch around, as well as
> their signed-off-by information.  Also, you didn't backport it
> identically:
> 
<snip>
> > +
> > +	if (!p) {
> > +		err = -EINVAL;
> > +		goto out_unlock;
> 
> The original has a blank line between these two lines, why not keep it?
> 
> I'll fix it up, but be a bit more careful next time please.
Sure, next time you will have no complaints about this.

regards
sudip
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web