Bug 151450

Summary: enabling vdso causes crash
Product: [Fedora] Fedora Reporter: Roland McGrath <roland>
Component: kernelAssignee: Roland McGrath <roland>
Status: CLOSED RAWHIDE QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mingo, wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-04-24 01:04:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 136451, 151452, 151453    

Description Roland McGrath 2005-03-18 02:25:36 UTC
Description of problem:


Version-Release number of selected component (if applicable):
2.6.11-1.1177_FC4smp

How reproducible:
100%

Steps to Reproduce:
1. sysctl -w kernel.vdso=1
2.
3.
  
Actual results:

Unable to handle kernel NULL pointer dereference at virtual address 00000098

 printing eip:

c014cb5c

*pde = 3239d001

Oops: 0000 [#3]

SMP DEBUG_PAGEALLOC

Modules linked in: md5 ipv6 parport_pc lp parport autofs4 nfs lockd sunrpc
dm_mod video button battery ac ohci1394 ieee1394 uhci_hcd ehci_hcd hw_random
i2c_i801 i2c_core snd_intel8x0 snd_ac97_codec snd_pcm_oss snd_mixer_oss snd_pcm
snd_timer snd soundcore snd_page_alloc e1000 floppy ext3 jbd ata_piix libata
sd_mod scsi_mod

CPU:    1

EIP:    0060:[<c014cb5c>]    Not tainted VLI

EFLAGS: 00010282   (2.6.11-1.1177_FC4smp) 

EIP is at install_page+0x6c/0x202

eax: 00000000   ebx: f7fcfa80   ecx: c05cee28   edx: f7353c30

esi: 007ff000   edi: f239cd78   ebp: f239cdbc   esp: f4f36e78

ds: 007b   es: 007b   ss: 0068

Process bash (pid: 2863, threadinfo=f4f36000 task=f6f0cac0)

Stack: f7353c30 fffc5ff8 f286f7d4 f286f7e0 00000000 007ff000 f7353c30 f4f36000 

       f23a1ef8 c0118b38 c16f7660 00000025 00000000 080dfd34 080dfd34 00000004 

       c0185b9c 00000004 00001812 00000000 f4f36fc4 f2390df8 00000004 00000008 

Call Trace:

 [<c0118b38>] map_vsyscall+0xdb/0x114

 [<c0185b9c>] load_elf_binary+0x8fd/0xda4

 [<c014d375>] kunmap_high+0x7b/0x9f

 [<c018529f>] load_elf_binary+0x0/0xda4

 [<c0168fd8>] search_binary_handler+0x94/0x22f

 [<c016937e>] do_execve+0x20b/0x238

 [<c0102b0d>] sys_execve+0x30/0x95

 [<c0103f4b>] syscall_call+0x7/0xb



Expected results:


Additional info:

map_vsyscall's use of install_page doesn't mesh with changes to that function.
I'm looking into cleaning up the vdso setup, maybe sharing some code for
multiple architectures.  Will follow up in email.

Comment 1 Roland McGrath 2005-04-24 01:04:09 UTC
My fixes now in rawhide kernels seem to make it all happy.