<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED --- - Resume from suspend triggers assertion"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=64299#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED --- - Resume from suspend triggers assertion"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=64299">bug 64299</a>
              from <span class="vcard"><a class="email" href="mailto:david.henningsson@canonical.com" title="David Henningsson <david.henningsson@canonical.com>"> <span class="fn">David Henningsson</span></a>
</span></b>
        <pre>(In reply to <a href="show_bug.cgi?id=64299#c5">comment #5</a>)
<span class="quote">> What version of alsa-lib do you have? I just hit this one.

> pulseaudio: pcm.c:2731: snd_pcm_area_copy: Assertion `dst < src || dst >=
> src + bytes' failed.

> Program received signal SIGABRT, Aborted.
> [Switching to Thread 0x7fffed5b5700 (LWP 27410)]
> 0x00007ffff4389209 in __GI_raise (sig=6) at
> ../nptl/sysdeps/unix/sysv/linux/raise.c:56
> 56   return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
> (gdb) bt
> #0  0x00007ffff4389209 in __GI_raise (sig=6) at
> ../nptl/sysdeps/unix/sysv/linux/raise.c:56
> #1  0x00007ffff438a720 in __GI_abort () at abort.c:90
> #2  0x00007ffff43821db in __assert_fail_base (fmt=0x7ffff44c17c8 "%s%s%s:%u:
> %s%sAssertion `%s' failed.\n%n", 
>     assertion=0x7fffed6bbc48 "dst < src || dst >= src + bytes",
> file=<optimized out>, line=<optimized out>, function=<optimized out>) at
> assert.c:92
> #3  0x00007ffff4382283 in __GI___assert_fail (assertion=0x7fffed6bbc48 "dst
> < src || dst >= src + bytes", file=0x7fffed6bf02d "pcm.c", line=2731, 
>     function=0x7fffed6bca50 <__PRETTY_FUNCTION__.12828> "snd_pcm_area_copy")
> at assert.c:101
> #4  0x00007fffed6607c0 in snd_pcm_area_copy (format=<optimized out>,
> samples=<optimized out>, src_offset=<optimized out>,
> src_area=0x7fffed5b4c20, 
>     dst_offset=<optimized out>, dst_area=0x7fffed5b4c30) at pcm.c:2731
> #5  snd_pcm_area_copy (dst_area=0x7fffed5b4c30, dst_offset=<optimized out>,
> src_area=0x7fffed5b4c20, src_offset=<optimized out>, samples=<optimized
> out>, 
>     format=<optimized out>) at pcm.c:2708</span >


<span class="quote">> #6  0x00007fffed660985 in snd_pcm_areas_copy (dst_areas=0x7cf2b0,
> dst_offset=22896, src_areas=0x7cf2b0, src_offset=22480, channels=2,
> frames=5133, 
>     format=SND_PCM_FORMAT_S16_LE) at pcm.c:2877</span >

In frame #6 src_areas == dst_areas (but offset is different), and 22896-22480 =
416 < 5133, which is overlapping!

<span class="quote">> #7  0x00007fffed69e24a in snd_pcm_softvol_write_areas (pcm=0x6f6a10,
> areas=<optimized out>, offset=<optimized out>, size=5133,
> slave_areas=0x7cf290, 
>     slave_offset=22896, slave_sizep=0x7fffed5b4d48) at pcm_softvol.c:607</span >

Here slave_areas is 0x7cf290, but dst_areas in frame #6 should be the same as
slave_areas in frame #7!


<span class="quote">> #8  0x00007fffed66fe86 in snd_pcm_plugin_mmap_commit (pcm=0x6f6a10,
> offset=<optimized out>, size=5133) at pcm_plugin.c:424
> #9  0x00007fffed918b63 in mmap_write (on_timeout=false, polled=false,
> sleep_usec=<synthetic pointer>, u=0x6e5070) at
> ../../src/modules/alsa/alsa-sink.c:647
> #10 thread_func (userdata=0x6e5070) at
> ../../src/modules/alsa/alsa-sink.c:1734
> #11 0x00007ffff6cc3ef8 in internal_thread_func (userdata=0x6f9830) at
> ../../src/pulsecore/thread-posix.c:83
> #12 0x00007ffff4708f15 in start_thread (arg=0x7fffed5b5700) at
> pthread_create.c:308
> #13 0x00007ffff44427bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:113</span ></pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>