public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "ubizjak at gmail dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/108552] Linux i386 kernel 5.14 memory corruption for pre_compound_page() when gcov is enabled
Date: Fri, 27 Jan 2023 09:52:52 +0000	[thread overview]
Message-ID: <bug-108552-4-OsiyikCaHQ@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-108552-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108552

--- Comment #13 from Uroš Bizjak <ubizjak at gmail dot com> ---
-fverbose-asm annotated assembly:

prep_compound_page:
        pushl   %ebp    #
        movl    %esp, %ebp      #,
        pushl   %edi    #
        movl    %eax, %edi      # tmp356, page
        pushl   %esi    #
        pushl   %ebx    #
        subl    $20, %esp       #,
        cmpl    $31, %edx       #, order
        movl    %edx, -28(%ebp) # order, %sfp
        ja      .L1483  #,
.L1464:
        movzbl  -28(%ebp), %ecx # %sfp, tmp365
        movl    $1, %ebx        #, tmp182
        sall    %cl, %ebx       # tmp365, nr_pages
        cmpl    $-1, (%edi)     #, MEM[(const struct page *)page_12(D)].flags
        je      .L1486  #,
        addl    $1, __gcov0.prep_compound_page+16       #,
__gcov0.prep_compound_page[2]
        adcl    $0, __gcov0.prep_compound_page+20       #,
__gcov0.prep_compound_page[2]
#APP
# 68 "./arch/x86/include/asm/bitops.h" 1
         btsl  $16,(%edi)       #, MEM[(volatile long int *)_19]
# 0 "" 2
#NO_APP
        addl    $1, __gcov0.prep_compound_page+48       #,
__gcov0.prep_compound_page[6]
        adcl    $0, __gcov0.prep_compound_page+52       #,
__gcov0.prep_compound_page[6]
        cmpl    $1, %ebx        #, nr_pages
        jle     .L1470  #,
        leal    1(%edi), %eax   #, _159
        movl    __gcov0.prep_compound_page+60, %edx     #
__gcov0.prep_compound_page[7], ivtmp.1714
        movl    %eax, -24(%ebp) # _159, %sfp
        movl    __gcov0.prep_compound_page+56, %eax     #
__gcov0.prep_compound_page[7], ivtmp.1714
        leal    40(%edi), %ecx  #, ivtmp.1720
        movl    %edi, -32(%ebp) # page, %sfp
        addl    $1, %eax        #, ivtmp.1714
        movl    %eax, -20(%ebp) # ivtmp.1714, %sfp
        adcl    $0, %edx        #, ivtmp.1714
        movl    __gcov0.prep_compound_page+56, %eax     #
__gcov0.prep_compound_page[7], tmp228
        movl    %edx, -16(%ebp) # ivtmp.1714, %sfp
        movl    __gcov0.prep_compound_page+60, %edx     #
__gcov0.prep_compound_page[7],
        subl    $2, %ebx        #, tmp226
        xorl    %esi, %esi      #
        addl    $2, %eax        #, tmp228
        adcl    $0, %edx        #,
        addl    %eax, %ebx      # tmp228, tmp227
        movl    -20(%ebp), %eax # %sfp, ivtmp.1714
        adcl    %edx, %esi      #,
        movl    -16(%ebp), %edx # %sfp, ivtmp.1714
        movl    %esi, %edi      # _45, _45
        movl    %ebx, %esi      # _45, _45
        .p2align 4
        .p2align 3
.L1469:
        movl    %eax, __gcov0.prep_compound_page+56     # ivtmp.1714,
__gcov0.prep_compound_page[7]
        movl    -24(%ebp), %ebx # %sfp, _159
        addl    $1, %eax        #, ivtmp.1714
        movl    %edx, __gcov0.prep_compound_page+60     # ivtmp.1714,
__gcov0.prep_compound_page[7]
        adcl    $0, %edx        #, ivtmp.1714
        addl    $40, %ecx       #, ivtmp.1720
        movl    $1024, -28(%ecx)        #, MEM <struct address_space *> [(union
 *)p_15 + 12B]
        movl    %ebx, -36(%ecx) # _159, MEM[(volatile long unsigned int *)p_15
+ 4B]
        movl    %edi, %ebx      # _45, tmp230
        xorl    %edx, %ebx      # ivtmp.1714, tmp230
        movl    %ebx, -20(%ebp) # tmp230, %sfp
        movl    %esi, %ebx      # _45, tmp231
        xorl    %eax, %ebx      # ivtmp.1714, tmp231
        orl     -20(%ebp), %ebx # %sfp, tmp358
        jne     .L1469  #,
        movl    -32(%ebp), %edi # %sfp, page
.L1470:
        movb    $1, 48(%edi)    #, MEM[(struct page *)page_12(D) +
40B].D.13727.D.13705.compound_dtor
        ...

  parent reply	other threads:[~2023-01-27  9:52 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-26  8:00 [Bug c/108552] New: " feng.tang at intel dot com
2023-01-26  8:01 ` [Bug c/108552] " feng.tang at intel dot com
2023-01-26  8:02 ` [Bug target/108552] " pinskia at gcc dot gnu.org
2023-01-26  8:05 ` pinskia at gcc dot gnu.org
2023-01-26  8:13 ` feng.tang at intel dot com
2023-01-26  8:19 ` pinskia at gcc dot gnu.org
2023-01-26 11:35 ` feng.tang at intel dot com
2023-01-26 11:37 ` feng.tang at intel dot com
2023-01-26 11:39 ` feng.tang at intel dot com
2023-01-26 16:03 ` feng.tang at intel dot com
2023-01-26 16:07 ` feng.tang at intel dot com
2023-01-26 19:06 ` pinskia at gcc dot gnu.org
2023-01-26 19:22 ` torvalds@linux-foundation.org
2023-01-27  9:52 ` ubizjak at gmail dot com [this message]
2023-01-27 10:47 ` ubizjak at gmail dot com
2023-01-27 10:56 ` ubizjak at gmail dot com
2023-01-27 12:23 ` ubizjak at gmail dot com
2023-01-27 12:29 ` ubizjak at gmail dot com
2023-01-27 12:31 ` [Bug tree-optimization/108552] " ubizjak at gmail dot com
2023-01-27 12:51 ` ubizjak at gmail dot com
2023-01-27 12:52 ` ubizjak at gmail dot com
2023-01-27 13:17 ` jakub at gcc dot gnu.org
2023-01-27 13:40 ` ubizjak at gmail dot com
2023-01-27 14:14 ` jakub at gcc dot gnu.org
2023-01-27 14:59 ` rguenth at gcc dot gnu.org
2023-01-27 15:01 ` rguenth at gcc dot gnu.org
2023-01-27 15:13 ` rguenth at gcc dot gnu.org
2023-01-27 15:15 ` jakub at gcc dot gnu.org
2023-01-27 15:18 ` rguenth at gcc dot gnu.org
2023-01-27 15:20 ` jakub at gcc dot gnu.org
2023-01-27 17:00 ` torvalds@linux-foundation.org
2023-01-27 17:05 ` torvalds@linux-foundation.org
2023-01-27 17:15 ` torvalds@linux-foundation.org
2023-01-27 17:19 ` jakub at gcc dot gnu.org
2023-01-27 17:29 ` jakub at gcc dot gnu.org
2023-01-27 22:30 ` vmakarov at gcc dot gnu.org
2023-01-28 14:20 ` feng.tang at intel dot com
2023-01-28 14:27 ` feng.tang at intel dot com
2023-01-28 14:29 ` feng.tang at intel dot com
2023-01-28 23:40 ` hubicka at ucw dot cz
2023-01-29 10:08 ` jakub at gcc dot gnu.org
2023-01-30  7:05 ` rguenth at gcc dot gnu.org
2023-01-30  7:09 ` rguenth at gcc dot gnu.org
2023-01-30  8:06 ` torvalds@linux-foundation.org
2023-01-30  8:30 ` jakub at gcc dot gnu.org
2023-01-30  8:44 ` rguenth at gcc dot gnu.org
2023-01-30  8:46 ` rguenther at suse dot de
2023-01-30 18:54 ` torvalds@linux-foundation.org

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=bug-108552-4-OsiyikCaHQ@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).