All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kurz <groug@kaod.org>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Alex Williamson" <alex.williamson@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PULL 17/51] readline: add a free function
Date: Fri, 2 Feb 2018 10:05:23 +0100	[thread overview]
Message-ID: <20180202100523.3d2c0299@bahia.lan> (raw)
In-Reply-To: <6affcea1-a56b-f518-8b4b-a196d5401e33@redhat.com>

On Thu, 1 Feb 2018 19:10:06 -0500
Paolo Bonzini <pbonzini@redhat.com> wrote:

> On 01/02/2018 19:00, Alex Williamson wrote:
> > On Tue, 16 Jan 2018 15:16:59 +0100
> > Paolo Bonzini <pbonzini@redhat.com> wrote:
> >   
> >> From: Marc-André Lureau <marcandre.lureau@redhat.com>
> >>
> >> Fixes leaks such as:
> >>
> >> Direct leak of 2 byte(s) in 1 object(s) allocated from:
> >>     #0 0x7eff58beb850 in malloc (/lib64/libasan.so.4+0xde850)
> >>     #1 0x7eff57942f0c in g_malloc ../glib/gmem.c:94
> >>     #2 0x7eff579431cf in g_malloc_n ../glib/gmem.c:331
> >>     #3 0x7eff5795f6eb in g_strdup ../glib/gstrfuncs.c:363
> >>     #4 0x55db720f1d46 in readline_hist_add /home/elmarco/src/qq/util/readline.c:258
> >>     #5 0x55db720f2d34 in readline_handle_byte /home/elmarco/src/qq/util/readline.c:387
> >>     #6 0x55db71539d00 in monitor_read /home/elmarco/src/qq/monitor.c:3896
> >>     #7 0x55db71f9be35 in qemu_chr_be_write_impl /home/elmarco/src/qq/chardev/char.c:167
> >>     #8 0x55db71f9bed3 in qemu_chr_be_write /home/elmarco/src/qq/chardev/char.c:179
> >>     #9 0x55db71fa013c in fd_chr_read /home/elmarco/src/qq/chardev/char-fd.c:66
> >>     #10 0x55db71fe18a8 in qio_channel_fd_source_dispatch /home/elmarco/src/qq/io/channel-watch.c:84
> >>     #11 0x7eff5793a90b in g_main_dispatch ../glib/gmain.c:3182
> >>     #12 0x7eff5793b7ac in g_main_context_dispatch ../glib/gmain.c:3847
> >>     #13 0x55db720af3bd in glib_pollfds_poll /home/elmarco/src/qq/util/main-loop.c:214
> >>     #14 0x55db720af505 in os_host_main_loop_wait /home/elmarco/src/qq/util/main-loop.c:261
> >>     #15 0x55db720af6d6 in main_loop_wait /home/elmarco/src/qq/util/main-loop.c:515
> >>     #16 0x55db7184e0de in main_loop /home/elmarco/src/qq/vl.c:1995
> >>     #17 0x55db7185e956 in main /home/elmarco/src/qq/vl.c:4914
> >>     #18 0x7eff4ea17039 in __libc_start_main (/lib64/libc.so.6+0x21039)
> >>
> >> (while at it, use g_new0(ReadLineState), it's a bit easier to read)
> >>
> >> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> >> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> >> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> >> Message-Id: <20180104160523.22995-11-marcandre.lureau@redhat.com>
> >> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> >> ---  
> > 
> > I'm having some trouble with this patch, using b05631954d6d:
> > 
> > # /usr/local/bin/qemu-system-x86_64 -m 1G -nodefaults -net none -monitor stdio -serial none -parallel none -nographic 
> > QEMU 2.11.50 monitor - type 'help' for more information
> > (qemu) sys<tab>
> > system_powerdown  system_reset      system_wakeup     
> > (qemu) system_p<tab>    # resulting in system_powerdown
> > (qemu) quit
> > Segmentation fault (core dumped)
> > 
> > gdb shows:
> > 
> > Thread 1 "qemu-system-x86" received signal SIGSEGV, Segmentation fault.
> > 0x00007f7d64d82927 in malloc () from /lib64/libc.so.6
> > (gdb) bt
> > #0  0x00007f7d64d82927 in malloc () at /lib64/libc.so.6
> > #1  0x00007f7d6ef68359 in g_malloc () at /lib64/libglib-2.0.so.0
> > #2  0x00007f7d6ef83004 in g_strsplit () at /lib64/libglib-2.0.so.0
> > #3  0x000055e5ac0d549d in container_get (root=0x55e5ad570ee0, path=path@entry=0x55e5ac2fa0f8 "/chardevs") at qom/container.c:34
> > #4  0x000055e5ac14d102 in get_chardevs_root () at chardev/char.c:43
> > #5  0x000055e5ac14ec4d in qemu_chr_cleanup () at chardev/char.c:1107
> > #6  0x000055e5abeff1c4 in main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4780
> > 
> > Reverting this patch, commit e5dc1a6c6c435, I don't see the issue.
> > Thanks,  
> 
> Yeah, I have a fix queued.  Unfortunately, I don't have the usual setup
> to do pre-pull-request sets here so it will have to wait for next Monday.
> 
> Paolo
> 

The queued fix is:

http://patchwork.ozlabs.org/patch/862816/

  reply	other threads:[~2018-02-02 16:18 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-16 14:16 [Qemu-devel] [PULL v4 00/51] Misc patches for 2018-01-12 Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 01/51] scsi-generic: Add share-rw option Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 02/51] scsi: fix scsi_convert_sense crash when in_buf == NULL && in_len == 0 Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 03/51] pc: fail memory hot-plug/unplug with -no-acpi and Q35 machine type Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 04/51] hpet: recover timer offset correctly Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 05/51] i386/cpu/kvm: look at PMU's CPUID before setting MSRs Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 06/51] chardev: use backend chr context when watch for fe Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 07/51] chardev: let g_idle_add() be with chardev gcontext Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 08/51] chardev: introduce qemu_chr_timeout_add_ms() Paolo Bonzini
2018-01-16 14:43   ` Daniel P. Berrange
2018-01-16 15:07     ` Paolo Bonzini
2018-01-17 16:21   ` Marc-André Lureau
2018-01-18  5:00     ` Peter Xu
2018-01-16 14:16 ` [Qemu-devel] [PULL 09/51] build-sys: fix qemu-ga -pthread linking Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 10/51] build-sys: silence make by default or V=0 Paolo Bonzini
2018-01-23 15:38   ` Daniel P. Berrange
2018-01-23 16:08     ` Marc-Andre Lureau
2018-01-23 17:05       ` Daniel P. Berrange
2018-01-16 14:16 ` [Qemu-devel] [PULL 11/51] build-sys: add a rule to print a variable Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 12/51] build-sys: compile with -Og or -O1 when --enable-debug Paolo Bonzini
2018-03-02 18:48   ` Peter Maydell
2018-03-02 21:04     ` Alex Bennée
2018-03-06 10:33     ` Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 13/51] tests/docker: add some sanitizers to fedora dockerfile Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 14/51] tests/docker: add test-debug Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 15/51] tests: fix check-qobject leak Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 16/51] vl: fix direct firmware directories leak Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 17/51] readline: add a free function Paolo Bonzini
2018-02-02  0:00   ` Alex Williamson
2018-02-02  0:10     ` Paolo Bonzini
2018-02-02  9:05       ` Greg Kurz [this message]
2018-01-16 14:17 ` [Qemu-devel] [PULL 18/51] tests: fix migration-test leak Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 19/51] crypto: fix stack-buffer-overflow error Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 20/51] qemu-config: fix leak in query-command-line-options Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 21/51] tests: fix qmp-test leak Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 22/51] tests: fix coroutine leak in /basic/entered Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 23/51] mips: fix potential fopen(NULL,...) Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 24/51] disas/s390: fix global-buffer-overflow Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 25/51] scsi-disk: release AioContext in unaligned WRITE SAME case Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 26/51] tests/boot-serial-test: Add tests for microblaze boards Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 27/51] tests/boot-serial-test: Add a test for the moxiesim machine Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 28/51] tests/boot-serial-test: Add support for the raspi2 machine Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 29/51] target/i386: move hflags update code to a function Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 30/51] target/i386: hax: change to use x86_update_hflags Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 31/51] target/i386: hax: Move x86_update_hflags Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 32/51] target-i386: update hflags on Hypervisor.framework Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 33/51] scripts/qemu-gdb: add simple tcg lock status helper Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 34/51] scripts/qemu-gdb/timers.py: new helper to dump timer state Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 35/51] icount: fixed saving/restoring of icount warp timers Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 36/51] cpus: unify qemu_*_wait_io_event Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 37/51] irq: fix memory leak Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 38/51] net: Drop unusual use of do { } while (0); Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 39/51] mips: Tweak location of ';' in macros Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 40/51] chardev: Use goto/label instead of do/break/while(0) Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 41/51] chardev: Clean up previous patch indentation Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 42/51] tests: Avoid 'do/while(false); ' in vhost-user-bridge Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 43/51] maint: Fix macros with broken 'do/while(0); ' usage Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 44/51] checkpatch: Enforce proper do/while (0) style Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 45/51] cpu_physical_memory_sync_dirty_bitmap: Another alignment fix Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 46/51] find_ram_offset: Add comments and tracing Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 47/51] find_ram_offset: Align ram_addr_t allocation on long boundaries Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 48/51] block/iscsi: fix initialization of iTask in iscsi_co_get_block_status Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 49/51] cpu: flush TB cache when loading VMState Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 50/51] util/qemu-thread-*: add qemu_lock, locked and unlock trace events Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 51/51] scripts/analyse-locks-simpletrace.py: script to analyse lock times Paolo Bonzini
2018-01-16 15:30 ` [Qemu-devel] [PULL v4 00/51] Misc patches for 2018-01-12 no-reply
2018-01-16 17:36 ` Peter Maydell

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=20180202100523.3d2c0299@bahia.lan \
    --to=groug@kaod.org \
    --cc=alex.williamson@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.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 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.