All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [Bug 1357206] [NEW] QEMU user mode still crashes in multi-thread code.
@ 2014-08-15  6:25 Jay Wong
  2014-08-15 10:26 ` [Qemu-devel] [Bug 1357206] " Erik de Castro Lopo
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Jay Wong @ 2014-08-15  6:25 UTC (permalink / raw)
  To: qemu-devel

Public bug reported:

I compiled the qemu 2.0 release source and find out qemu crashing when
emulating multi-thread code in user mode.

I did a little search and found LP:668799 but it is far from now and it
is probably not the problem here.

I used program below as the test program:

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

void *print_message_function( void *ptr );

main()
{
     pthread_t thread1, thread2;
     const char *message1 = "Thread 1";
     const char *message2 = "Thread 2";
     int  iret1, iret2;

    /* Create independent threads each of which will execute function */

     iret1 = pthread_create( &thread1, NULL, print_message_function, (void*) message1);
     if(iret1)
     {
         fprintf(stderr,"Error - pthread_create() return code: %d\n",iret1);
         exit(EXIT_FAILURE);
     }

     iret2 = pthread_create( &thread2, NULL, print_message_function, (void*) message2);
     if(iret2)
     {
         fprintf(stderr,"Error - pthread_create() return code: %d\n",iret2);
         exit(EXIT_FAILURE);
     }

     printf("pthread_create() for thread 1 returns: %d\n",iret1);
     printf("pthread_create() for thread 2 returns: %d\n",iret2);

     /* Wait till threads are complete before main continues. Unless we  */
     /* wait we run the risk of executing an exit which will terminate   */
     /* the process and all threads before the threads have completed.   */

     pthread_join( thread1, NULL);
     pthread_join( thread2, NULL); 

     exit(EXIT_SUCCESS);
}

void *print_message_function( void *ptr )
{
     char *message;
     message = (char *) ptr;
     printf("%s \n", message);
}

Compiled to i386 and aarch64 object, 
and both qemu-i386 and qemu-aarch64 had segmentation faults.

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1357206

Title:
  QEMU user mode still crashes in multi-thread code.

Status in QEMU:
  New

Bug description:
  I compiled the qemu 2.0 release source and find out qemu crashing when
  emulating multi-thread code in user mode.

  I did a little search and found LP:668799 but it is far from now and
  it is probably not the problem here.

  I used program below as the test program:

  #include <stdio.h>
  #include <stdlib.h>
  #include <pthread.h>

  void *print_message_function( void *ptr );

  main()
  {
       pthread_t thread1, thread2;
       const char *message1 = "Thread 1";
       const char *message2 = "Thread 2";
       int  iret1, iret2;

      /* Create independent threads each of which will execute function
  */

       iret1 = pthread_create( &thread1, NULL, print_message_function, (void*) message1);
       if(iret1)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret1);
           exit(EXIT_FAILURE);
       }

       iret2 = pthread_create( &thread2, NULL, print_message_function, (void*) message2);
       if(iret2)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret2);
           exit(EXIT_FAILURE);
       }

       printf("pthread_create() for thread 1 returns: %d\n",iret1);
       printf("pthread_create() for thread 2 returns: %d\n",iret2);

       /* Wait till threads are complete before main continues. Unless we  */
       /* wait we run the risk of executing an exit which will terminate   */
       /* the process and all threads before the threads have completed.   */

       pthread_join( thread1, NULL);
       pthread_join( thread2, NULL); 

       exit(EXIT_SUCCESS);
  }

  void *print_message_function( void *ptr )
  {
       char *message;
       message = (char *) ptr;
       printf("%s \n", message);
  }

  Compiled to i386 and aarch64 object, 
  and both qemu-i386 and qemu-aarch64 had segmentation faults.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1357206/+subscriptions

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Qemu-devel] [Bug 1357206] Re: QEMU user mode still crashes in multi-thread code.
  2014-08-15  6:25 [Qemu-devel] [Bug 1357206] [NEW] QEMU user mode still crashes in multi-thread code Jay Wong
@ 2014-08-15 10:26 ` Erik de Castro Lopo
  2016-06-17 16:47 ` Peter Maydell
  2017-01-17 18:33 ` Thomas Huth
  2 siblings, 0 replies; 4+ messages in thread
From: Erik de Castro Lopo @ 2014-08-15 10:26 UTC (permalink / raw)
  To: qemu-devel

I think this if bug lp:1098729 which is still open.

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1357206

Title:
  QEMU user mode still crashes in multi-thread code.

Status in QEMU:
  New

Bug description:
  I compiled the qemu 2.0 release source and find out qemu crashing when
  emulating multi-thread code in user mode.

  I did a little search and found LP:668799 but it is far from now and
  it is probably not the problem here.

  I used program below as the test program:

  #include <stdio.h>
  #include <stdlib.h>
  #include <pthread.h>

  void *print_message_function( void *ptr );

  main()
  {
       pthread_t thread1, thread2;
       const char *message1 = "Thread 1";
       const char *message2 = "Thread 2";
       int  iret1, iret2;

      /* Create independent threads each of which will execute function
  */

       iret1 = pthread_create( &thread1, NULL, print_message_function, (void*) message1);
       if(iret1)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret1);
           exit(EXIT_FAILURE);
       }

       iret2 = pthread_create( &thread2, NULL, print_message_function, (void*) message2);
       if(iret2)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret2);
           exit(EXIT_FAILURE);
       }

       printf("pthread_create() for thread 1 returns: %d\n",iret1);
       printf("pthread_create() for thread 2 returns: %d\n",iret2);

       /* Wait till threads are complete before main continues. Unless we  */
       /* wait we run the risk of executing an exit which will terminate   */
       /* the process and all threads before the threads have completed.   */

       pthread_join( thread1, NULL);
       pthread_join( thread2, NULL); 

       exit(EXIT_SUCCESS);
  }

  void *print_message_function( void *ptr )
  {
       char *message;
       message = (char *) ptr;
       printf("%s \n", message);
  }

  Compiled to i386 and aarch64 object, 
  and both qemu-i386 and qemu-aarch64 had segmentation faults.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1357206/+subscriptions

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Qemu-devel] [Bug 1357206] Re: QEMU user mode still crashes in multi-thread code.
  2014-08-15  6:25 [Qemu-devel] [Bug 1357206] [NEW] QEMU user mode still crashes in multi-thread code Jay Wong
  2014-08-15 10:26 ` [Qemu-devel] [Bug 1357206] " Erik de Castro Lopo
@ 2016-06-17 16:47 ` Peter Maydell
  2017-01-17 18:33 ` Thomas Huth
  2 siblings, 0 replies; 4+ messages in thread
From: Peter Maydell @ 2016-06-17 16:47 UTC (permalink / raw)
  To: qemu-devel

This test case now works for me, so I think we have resolved the bug
that was showing up here.


** Changed in: qemu
       Status: New => Fix Committed

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1357206

Title:
  QEMU user mode still crashes in multi-thread code.

Status in QEMU:
  Fix Committed

Bug description:
  I compiled the qemu 2.0 release source and find out qemu crashing when
  emulating multi-thread code in user mode.

  I did a little search and found LP:668799 but it is far from now and
  it is probably not the problem here.

  I used program below as the test program:

  #include <stdio.h>
  #include <stdlib.h>
  #include <pthread.h>

  void *print_message_function( void *ptr );

  main()
  {
       pthread_t thread1, thread2;
       const char *message1 = "Thread 1";
       const char *message2 = "Thread 2";
       int  iret1, iret2;

      /* Create independent threads each of which will execute function
  */

       iret1 = pthread_create( &thread1, NULL, print_message_function, (void*) message1);
       if(iret1)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret1);
           exit(EXIT_FAILURE);
       }

       iret2 = pthread_create( &thread2, NULL, print_message_function, (void*) message2);
       if(iret2)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret2);
           exit(EXIT_FAILURE);
       }

       printf("pthread_create() for thread 1 returns: %d\n",iret1);
       printf("pthread_create() for thread 2 returns: %d\n",iret2);

       /* Wait till threads are complete before main continues. Unless we  */
       /* wait we run the risk of executing an exit which will terminate   */
       /* the process and all threads before the threads have completed.   */

       pthread_join( thread1, NULL);
       pthread_join( thread2, NULL); 

       exit(EXIT_SUCCESS);
  }

  void *print_message_function( void *ptr )
  {
       char *message;
       message = (char *) ptr;
       printf("%s \n", message);
  }

  Compiled to i386 and aarch64 object, 
  and both qemu-i386 and qemu-aarch64 had segmentation faults.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1357206/+subscriptions

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Qemu-devel] [Bug 1357206] Re: QEMU user mode still crashes in multi-thread code.
  2014-08-15  6:25 [Qemu-devel] [Bug 1357206] [NEW] QEMU user mode still crashes in multi-thread code Jay Wong
  2014-08-15 10:26 ` [Qemu-devel] [Bug 1357206] " Erik de Castro Lopo
  2016-06-17 16:47 ` Peter Maydell
@ 2017-01-17 18:33 ` Thomas Huth
  2 siblings, 0 replies; 4+ messages in thread
From: Thomas Huth @ 2017-01-17 18:33 UTC (permalink / raw)
  To: qemu-devel

** Changed in: qemu
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1357206

Title:
  QEMU user mode still crashes in multi-thread code.

Status in QEMU:
  Fix Released

Bug description:
  I compiled the qemu 2.0 release source and find out qemu crashing when
  emulating multi-thread code in user mode.

  I did a little search and found LP:668799 but it is far from now and
  it is probably not the problem here.

  I used program below as the test program:

  #include <stdio.h>
  #include <stdlib.h>
  #include <pthread.h>

  void *print_message_function( void *ptr );

  main()
  {
       pthread_t thread1, thread2;
       const char *message1 = "Thread 1";
       const char *message2 = "Thread 2";
       int  iret1, iret2;

      /* Create independent threads each of which will execute function
  */

       iret1 = pthread_create( &thread1, NULL, print_message_function, (void*) message1);
       if(iret1)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret1);
           exit(EXIT_FAILURE);
       }

       iret2 = pthread_create( &thread2, NULL, print_message_function, (void*) message2);
       if(iret2)
       {
           fprintf(stderr,"Error - pthread_create() return code: %d\n",iret2);
           exit(EXIT_FAILURE);
       }

       printf("pthread_create() for thread 1 returns: %d\n",iret1);
       printf("pthread_create() for thread 2 returns: %d\n",iret2);

       /* Wait till threads are complete before main continues. Unless we  */
       /* wait we run the risk of executing an exit which will terminate   */
       /* the process and all threads before the threads have completed.   */

       pthread_join( thread1, NULL);
       pthread_join( thread2, NULL); 

       exit(EXIT_SUCCESS);
  }

  void *print_message_function( void *ptr )
  {
       char *message;
       message = (char *) ptr;
       printf("%s \n", message);
  }

  Compiled to i386 and aarch64 object, 
  and both qemu-i386 and qemu-aarch64 had segmentation faults.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1357206/+subscriptions

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-01-17 18:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-15  6:25 [Qemu-devel] [Bug 1357206] [NEW] QEMU user mode still crashes in multi-thread code Jay Wong
2014-08-15 10:26 ` [Qemu-devel] [Bug 1357206] " Erik de Castro Lopo
2016-06-17 16:47 ` Peter Maydell
2017-01-17 18:33 ` Thomas Huth

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.