Skip to contentSkip to conversation

Longstanding elf fix (2.4.3 fix)

PATCH Manfred Spraul 2 participants 2 messages Apr 23, 2001 – Apr 24, 2001

lore
Share & tools
lore
#0 lore raw
Quoted 3 lines

Well looking a little more closely than I did last night it looks like access_process_vm (called from ptrace) can cause what amounts to a page fault at pretty arbitrary times.

It's also used for several /proc/<pid> files.

I remember that I got crashes with concurrent exec+cat /proc/<pid>/cmdline until down(mmap_sem) was added into setup_arg_pages().

Quoted 3 lines

I'm actually a little curious what the big kernel lock in ptrace buys us. I suspect it could be a performance issue with user mode linux. Where you have multiple processes being ptraced at the same time.

I checked it a few months ago, and the lock is only required to prevent multiple concurrent attaches to the same process and concorrent ptrace/suid exec (in fs/exec.c, compute_creds)

--
Manfred

#1 lore raw
Quoted 9 lines · Manfred Spraul
Quoted 3 lines

Well looking a little more closely than I did last night it looks like access_process_vm (called from ptrace) can cause what amounts to a page fault at pretty arbitrary times.

It's also used for several /proc/<pid> files.

I remember that I got crashes with concurrent exec+cat /proc/<pid>/cmdline until down(mmap_sem) was added into setup_arg_pages().

O.k. Then the race I'm catching is real though because it is confined to bss sections, we are quite unlikely to trigger it.

Eric