All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Bringmann <mwb@linux.vnet.ibm.com>
To: gregkh@linuxfoundation.org, mpe@ellerman.id.au
Cc: stable@vger.kernel.org
Subject: Re: FAILED: patch "[PATCH] powerpc/pseries: Fix unitialized timer reset on migration" failed to apply to 4.4-stable tree
Date: Tue, 2 Oct 2018 09:18:26 -0500	[thread overview]
Message-ID: <10de1312-353a-2c0e-ab00-6a4e037a5fae@linux.vnet.ibm.com> (raw)
In-Reply-To: <153848271313943@kroah.com>

To backport the patc

    commit 8604895a34d92f5e186ceb931b0d1b384030ea3d

to the 4.4-stable tree, please try the following backport:

diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
--- a/arch/powerpc/mm/numa.c	2018-10-02 09:03:06.232491410 -0500
+++ b/arch/powerpc/mm/numa.c	2018-10-02 09:04:17.152494472 -0500
@@ -1606,7 +1606,8 @@
 {
 	topology_timer.data = 0;
 	topology_timer.expires = jiffies + topology_timer_secs * HZ;
-	mod_timer(&topology_timer, topology_timer.expires);
+	if (vphn_enabled)
+		mod_timer(&topology_timer, topology_timer.expires);
 }
 
 #ifdef CONFIG_SMP



On 10/02/2018 07:18 AM, gregkh@linuxfoundation.org wrote:
> 
> The patch below does not apply to the 4.4-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git commit
> id to <stable@vger.kernel.org>.
> 
> thanks,
> 
> greg k-h
> 
> ------------------ original commit in Linus's tree ------------------
> 
>>>From 8604895a34d92f5e186ceb931b0d1b384030ea3d Mon Sep 17 00:00:00 2001
> From: Michael Bringmann <mwb@linux.vnet.ibm.com>
> Date: Thu, 20 Sep 2018 11:45:13 -0500
> Subject: [PATCH] powerpc/pseries: Fix unitialized timer reset on migration
> 
> After migration of a powerpc LPAR, the kernel executes code to
> update the system state to reflect new platform characteristics.
> 
> Such changes include modifications to device tree properties provided
> to the system by PHYP. Property notifications received by the
> post_mobility_fixup() code are passed along to the kernel in general
> through a call to of_update_property() which in turn passes such
> events back to all modules through entries like the '.notifier_call'
> function within the NUMA module.
> 
> When the NUMA module updates its state, it resets its event timer. If
> this occurs after a previous call to stop_topology_update() or on a
> system without VPHN enabled, the code runs into an unitialized timer
> structure and crashes. This patch adds a safety check along this path
> toward the problem code.
> 
> An example crash log is as follows.
> 
>   ibmvscsi 30000081: Re-enabling adapter!
>   ------------[ cut here ]------------
>   kernel BUG at kernel/time/timer.c:958!
>   Oops: Exception in kernel mode, sig: 5 [#1]
>   LE SMP NR_CPUS=2048 NUMA pSeries
>   Modules linked in: nfsv3 nfs_acl nfs tcp_diag udp_diag inet_diag lockd unix_diag af_packet_diag netlink_diag grace fscache sunrpc xts vmx_crypto pseries_rng sg binfmt_misc ip_tables xfs libcrc32c sd_mod ibmvscsi ibmveth scsi_transport_srp dm_mirror dm_region_hash dm_log dm_mod
>   CPU: 11 PID: 3067 Comm: drmgr Not tainted 4.17.0+ #179
>   ...
>   NIP mod_timer+0x4c/0x400
>   LR  reset_topology_timer+0x40/0x60
>   Call Trace:
>     0xc0000003f9407830 (unreliable)
>     reset_topology_timer+0x40/0x60
>     dt_update_callback+0x100/0x120
>     notifier_call_chain+0x90/0x100
>     __blocking_notifier_call_chain+0x60/0x90
>     of_property_notify+0x90/0xd0
>     of_update_property+0x104/0x150
>     update_dt_property+0xdc/0x1f0
>     pseries_devicetree_update+0x2d0/0x510
>     post_mobility_fixup+0x7c/0xf0
>     migration_store+0xa4/0xc0
>     kobj_attr_store+0x30/0x60
>     sysfs_kf_write+0x64/0xa0
>     kernfs_fop_write+0x16c/0x240
>     __vfs_write+0x40/0x200
>     vfs_write+0xc8/0x240
>     ksys_write+0x5c/0x100
>     system_call+0x58/0x6c
> 
> Fixes: 5d88aa85c00b ("powerpc/pseries: Update CPU maps when device tree is updated")
> Cc: stable@vger.kernel.org # v3.10+
> Signed-off-by: Michael Bringmann <mwb@linux.vnet.ibm.com>
> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
> 
> diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c
> index 35ac5422903a..b5a71baedbc2 100644
> --- a/arch/powerpc/mm/numa.c
> +++ b/arch/powerpc/mm/numa.c
> @@ -1452,7 +1452,8 @@ static struct timer_list topology_timer;
> 
>  static void reset_topology_timer(void)
>  {
> -	mod_timer(&topology_timer, jiffies + topology_timer_secs * HZ);
> +	if (vphn_enabled)
> +		mod_timer(&topology_timer, jiffies + topology_timer_secs * HZ);
>  }
> 
>  #ifdef CONFIG_SMP
> 
> 

-- 
Michael W. Bringmann
Linux Technology Center
IBM Corporation
Tie-Line  363-5196
External: (512) 286-5196
Cell:       (512) 466-0650
mwb@linux.vnet.ibm.com

  reply	other threads:[~2018-10-02 21:02 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-02 12:18 FAILED: patch "[PATCH] powerpc/pseries: Fix unitialized timer reset on migration" failed to apply to 4.4-stable tree gregkh
2018-10-02 14:18 ` Michael Bringmann [this message]
2018-10-02 16:27   ` Greg KH
2018-10-02 18:30     ` Michael Bringmann
2018-10-02 18:37       ` Greg KH
2018-10-02 19:36         ` Michael Bringmann
2018-10-02 19:42           ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=10de1312-353a-2c0e-ab00-6a4e037a5fae@linux.vnet.ibm.com \
    --to=mwb@linux.vnet.ibm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=mpe@ellerman.id.au \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.