From nobody Tue Nov 4 15:27:56 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1530619913883451.5207008837385; Tue, 3 Jul 2018 05:11:53 -0700 (PDT) Received: from localhost ([::1]:40194 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1faK9t-0005Yj-O1 for importer@patchew.org; Tue, 03 Jul 2018 08:11:49 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41709) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1faK8U-0004gN-0E for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1faK8R-0001ry-Cd for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:21 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36186) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1faK8R-0001rO-5S for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:19 -0400 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.25]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7D530BDC1 for ; Tue, 3 Jul 2018 12:10:18 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-116-220.phx2.redhat.com [10.3.116.220]) by smtp.corp.redhat.com (Postfix) with ESMTP id 023A82010CBA; Tue, 3 Jul 2018 12:10:14 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id E060A17538; Tue, 3 Jul 2018 14:10:13 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Date: Tue, 3 Jul 2018 14:10:11 +0200 Message-Id: <20180703121013.12126-2-kraxel@redhat.com> In-Reply-To: <20180703121013.12126-1-kraxel@redhat.com> References: <20180703121013.12126-1-kraxel@redhat.com> X-Scanned-By: MIMEDefang 2.84 on 10.5.11.25 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Tue, 03 Jul 2018 12:10:18 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PULL 1/3] audio/hda: adjust larger gaps faster X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Gerd Hoffmann Message-id: 20180702145513.11481-1-kraxel@redhat.com --- hw/audio/hda-codec.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c index 31c66d4255..9f630fa37f 100644 --- a/hw/audio/hda-codec.c +++ b/hw/audio/hda-codec.c @@ -203,6 +203,9 @@ static inline void hda_timer_sync_adjust(HDAAudioStream= *st, int64_t target_pos) if (target_pos < -limit) { corr =3D -HDA_TIMER_TICKS; } + if (target_pos < -(2 * limit)) { + corr =3D -(4 * HDA_TIMER_TICKS); + } if (corr =3D=3D 0) { return; } --=20 2.9.3 From nobody Tue Nov 4 15:27:56 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1530619913881205.44969952326244; Tue, 3 Jul 2018 05:11:53 -0700 (PDT) Received: from localhost ([::1]:40195 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1faK9u-0005Z9-8d for importer@patchew.org; Tue, 03 Jul 2018 08:11:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41708) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1faK8U-0004gM-02 for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1faK8Q-0001rS-NA for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:21 -0400 Received: from mx1.redhat.com ([209.132.183.28]:42100) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1faK8Q-0001r0-F5 for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:18 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C4D308762D for ; Tue, 3 Jul 2018 12:10:17 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-116-220.phx2.redhat.com [10.3.116.220]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0D3BE6016F; Tue, 3 Jul 2018 12:10:15 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id EA49C17539; Tue, 3 Jul 2018 14:10:13 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Date: Tue, 3 Jul 2018 14:10:12 +0200 Message-Id: <20180703121013.12126-3-kraxel@redhat.com> In-Reply-To: <20180703121013.12126-1-kraxel@redhat.com> References: <20180703121013.12126-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Tue, 03 Jul 2018 12:10:17 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PULL 2/3] audio/hda: fix CID 1393631 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Gerd Hoffmann Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-id: 20180702145513.11481-2-kraxel@redhat.com --- hw/audio/hda-codec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/audio/hda-codec.c b/hw/audio/hda-codec.c index 9f630fa37f..2b58c3505b 100644 --- a/hw/audio/hda-codec.c +++ b/hw/audio/hda-codec.c @@ -189,7 +189,7 @@ struct HDAAudioState { =20 static inline int64_t hda_bytes_per_second(HDAAudioStream *st) { - return 2 * st->as.nchannels * st->as.freq; + return 2LL * st->as.nchannels * st->as.freq; } =20 static inline void hda_timer_sync_adjust(HDAAudioStream *st, int64_t targe= t_pos) --=20 2.9.3 From nobody Tue Nov 4 15:27:56 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1530620011034845.3073288270865; Tue, 3 Jul 2018 05:13:31 -0700 (PDT) Received: from localhost ([::1]:40203 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1faKBW-0006kP-BQ for importer@patchew.org; Tue, 03 Jul 2018 08:13:30 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41713) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1faK8U-0004gQ-14 for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1faK8R-0001sF-St for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:21 -0400 Received: from mx1.redhat.com ([209.132.183.28]:55330) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1faK8R-0001rg-HD for qemu-devel@nongnu.org; Tue, 03 Jul 2018 08:10:19 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id DA3BF30832D4 for ; Tue, 3 Jul 2018 12:10:18 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-116-220.phx2.redhat.com [10.3.116.220]) by smtp.corp.redhat.com (Postfix) with ESMTP id 178535C54A; Tue, 3 Jul 2018 12:10:15 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 026F91FCC0; Tue, 3 Jul 2018 14:10:14 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Date: Tue, 3 Jul 2018 14:10:13 +0200 Message-Id: <20180703121013.12126-4-kraxel@redhat.com> In-Reply-To: <20180703121013.12126-1-kraxel@redhat.com> References: <20180703121013.12126-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.44]); Tue, 03 Jul 2018 12:10:18 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PULL 3/3] audio: add audio timer trace points X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Track audio timer starts and stops. Also trace delayed audio timer calls. Signed-off-by: Gerd Hoffmann Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Message-id: 20180702161524.17268-1-kraxel@redhat.com --- audio/audio.c | 28 +++++++++++++++++++++++++--- audio/trace-events | 5 +++++ 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/audio/audio.c b/audio/audio.c index d6e91901aa..1ace47f510 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -29,6 +29,7 @@ #include "sysemu/sysemu.h" #include "qemu/cutils.h" #include "sysemu/replay.h" +#include "trace.h" =20 #define AUDIO_CAP "audio" #include "audio_int.h" @@ -1129,6 +1130,10 @@ static void audio_pcm_print_info (const char *cap, s= truct audio_pcm_info *info) /* * Timer */ + +static bool audio_timer_running; +static uint64_t audio_timer_last; + static int audio_is_timer_needed (void) { HWVoiceIn *hwi =3D NULL; @@ -1148,14 +1153,31 @@ static void audio_reset_timer (AudioState *s) if (audio_is_timer_needed ()) { timer_mod_anticipate_ns(s->ts, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) + conf.period.ticks); - } - else { - timer_del (s->ts); + if (!audio_timer_running) { + audio_timer_running =3D true; + audio_timer_last =3D qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL); + trace_audio_timer_start(conf.period.ticks / SCALE_MS); + } + } else { + timer_del(s->ts); + if (audio_timer_running) { + audio_timer_running =3D false; + trace_audio_timer_stop(); + } } } =20 static void audio_timer (void *opaque) { + int64_t now, diff; + + now =3D qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL); + diff =3D now - audio_timer_last; + if (diff > conf.period.ticks * 3 / 2) { + trace_audio_timer_delayed(diff / SCALE_MS); + } + audio_timer_last =3D now; + audio_run ("timer"); audio_reset_timer (opaque); } diff --git a/audio/trace-events b/audio/trace-events index d37639e611..c986469319 100644 --- a/audio/trace-events +++ b/audio/trace-events @@ -15,3 +15,8 @@ alsa_no_frames(int state) "No frames available and ALSA s= tate is %d" # audio/ossaudio.c oss_version(int version) "OSS version =3D 0x%x" oss_invalid_available_size(int size, int bufsize) "Invalid available size,= size=3D%d bufsize=3D%d" + +# audio/audio.c +audio_timer_start(int interval) "interval %d ms" +audio_timer_stop(void) "" +audio_timer_delayed(int interval) "interval %d ms" --=20 2.9.3