public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@linux.intel.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Dave Jones <davej@redhat.com>,
	Linux Kernel <linux-kernel@vger.kernel.org>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Ingo Molnar <mingo@redhat.com>, Andi Kleen <ak@linux.intel.com>
Subject: Re: tracing ring_buffer_resize oops.
Date: Thu, 24 May 2012 16:53:10 -0700	[thread overview]
Message-ID: <4FBEC9E6.8040301@linux.intel.com> (raw)
In-Reply-To: <1337902816.13348.224.camel@gandalf.stny.rr.com>

On 05/24/2012 04:40 PM, Steven Rostedt wrote:
> On Thu, 2012-05-24 at 13:22 -0400, Dave Jones wrote:
> 
> I found a clue!
> 
> 
>> [ 1013.243754] BUG: unable to handle kernel NULL pointer dereference at 0000000000000002
>> [ 1013.272665] IP: [<ffff880145cc0000>] 0xffff880145cbffff
>> [ 1013.285186] PGD 1401b2067 PUD 14324c067 PMD 0 
>> [ 1013.298832] Oops: 0010 [#1] PREEMPT SMP 
>> [ 1013.310600] CPU 2 
>> [ 1013.317904] Modules linked in: ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables crc32c_intel ghash_clmulni_intel microcode usb_debug serio_raw pcspkr iTCO_wdt i2c_i801 iTCO_vendor_support e1000e nfsd nfs_acl auth_rpcgss lockd sunrpc i915 video i2c_algo_bit drm_kms_helper drm i2c_core [last unloaded: scsi_wait_scan]
>> [ 1013.401848] 
>> [ 1013.407399] Pid: 112, comm: kworker/2:1 Not tainted 3.4.0+ #30 
>> [ 1013.437943] RIP: 8eb8:[<ffff88014630a000>]  [<ffff88014630a000>] 0xffff880146309fff
> 
> RIP is always near the GS segment. As GS points to the per_cpu area, we
> may somehow be getting our GS screwed up. I'm not sure why that would
> affect the RIP. Maybe stacks are not being processed properly somewhere?
> 
> It's strange because I can either trigger it on the first try, or it
> never triggers at all??
> 

Much more fundamentally, RIP should never leave the range [-2G, 0).
What is happening here is almost certainly that we jump through
something which isn't a function pointer.

The other thing worth noting is that the code segment is not the
standard Linux code segment, not even close; it *also* doesn't look like
the typical Xen code segment.  This makes be believe that we did an IRET
with the stack pointer set to something other than a valid interrupt
stack frame.  Specifically, note that the value of R12 is the same
value; R12 is a preserved register and may have been pushed onto the
stack by something that wants to save it.

Waitaminute... this isn't related to your using R12 to save a pointer to
something, is it?

> [ 1013.459871] RSP: ffffffff8165e919:ffff88014780f408  EFLAGS: 00010046

	-hpa


  reply	other threads:[~2012-05-24 23:53 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-24 16:01 tracing ring_buffer_resize oops Dave Jones
2012-05-24 16:19 ` Steven Rostedt
2012-05-24 17:22   ` Dave Jones
2012-05-24 17:35     ` Steven Rostedt
2012-05-24 18:47       ` Dave Jones
2012-05-24 18:54         ` Steven Rostedt
2012-05-24 19:11           ` Dave Jones
2012-05-24 19:24             ` Steven Rostedt
2012-05-24 20:05               ` Dave Jones
2012-05-24 20:18                 ` Steven Rostedt
2012-05-24 20:33                   ` Steven Rostedt
2012-05-24 21:15                     ` Dave Jones
2012-05-24 21:25                       ` Steven Rostedt
2012-05-24 22:49                 ` Steven Rostedt
2012-05-24 22:57                   ` Dave Jones
2012-05-24 23:40     ` Steven Rostedt
2012-05-24 23:53       ` H. Peter Anvin [this message]
2012-05-25  1:32         ` Steven Rostedt
2012-05-25  1:39         ` Steven Rostedt
2012-05-25  1:41           ` Steven Rostedt
2012-05-25 14:31             ` BUG - function tracing with breakpoints (was: Re: tracing ring_buffer_resize oops.) Steven Rostedt
2012-05-25 15:29               ` Steven Rostedt
2012-05-25 17:40                 ` BUG - function tracing with breakpoints H. Peter Anvin
2012-05-25 18:46                   ` Steven Rostedt
2012-05-25 20:51                     ` Steven Rostedt
2012-05-26  1:36                       ` Steven Rostedt
2012-05-29 11:37                       ` Steven Rostedt
2012-05-29 13:26                         ` Steven Rostedt
2012-05-25  0:14       ` tracing ring_buffer_resize oops Andi Kleen
2012-05-25  1:31         ` Steven Rostedt

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=4FBEC9E6.8040301@linux.intel.com \
    --to=hpa@linux.intel.com \
    --cc=ak@linux.intel.com \
    --cc=davej@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=rostedt@goodmis.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox