lkml.org 
[lkml]   [2021]   [May]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [syzbot] WARNING in ex_handler_fprestore
From
Date
On 5/26/2021 12:00 AM, Dmitry Vyukov wrote:
> On Wed, May 26, 2021 at 2:33 AM Andy Lutomirski <luto@kernel.org> wrote:
>>
>> On 5/24/21 1:51 AM, syzbot wrote:
>>> Hello,
>>>
>>> syzbot found the following issue on:
>>>
>>> HEAD commit: 45af60e7 Merge tag 'for-5.13-rc2-tag' of git://git.kernel...
>>> git tree: upstream
>>> console output: https://syzkaller.appspot.com/x/log.txt?x=1591e9f7d00000
>>> kernel config: https://syzkaller.appspot.com/x/.config?x=18fade5827eb74f7
>>> dashboard link: https://syzkaller.appspot.com/bug?extid=2067e764dbcd10721e2e
>>> compiler: Debian clang version 11.0.1-2
>>> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11be6bd1d00000
>>
>> Hi syz people and x86 people-
>>
>> I entirely believe that this bug is real and that syzbot bisected it
>> correctly, but I'm puzzled by the reproducer. It says:
>>
>> ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080))
>>
>> I would really, really expect this to result from PTRACE_SETREGSET or
>> PTRACE_SETFPREGS, but this is PTRACE_SETREGS.
>>
>> Am I missing something really obvious here?
>
> Hi Andy,
>
> Sometimes syzkaller uses data format from one syscall variant, but
> actually invokes another.
> But here it does _not_ seem to be the case: 0xd is actually
> PTRACE_SETREGS. And the other ptrace calls in the reproducer are
> PTRACE_SEIZE and PTRACE_SINGLESTEP.
> So I would assume somehow it happened with PTRACE_SETREGS.
> Is there any indication from hardware as to what's wrong with fpregs?
>

PTRACE_SETREGS can change segment registers. The PTRACE_SETREGS is
using some uninitialized memory area. One possibility would be that
XRSTORS has a memory operand outside of segment limits.

\
 
 \ /
  Last update: 2021-05-26 23:22    [W:0.090 / U:0.284 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site