From nobody Mon Feb 9 10:32:40 2026 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.zoho.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; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1486974190836470.6720658924705; Mon, 13 Feb 2017 00:23:10 -0800 (PST) Received: from localhost ([::1]:55085 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdBuf-0000fy-Gg for importer@patchew.org; Mon, 13 Feb 2017 03:23:09 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54353) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdBpR-0004va-ER for qemu-devel@nongnu.org; Mon, 13 Feb 2017 03:17:46 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdBpN-0004bl-Gs for qemu-devel@nongnu.org; Mon, 13 Feb 2017 03:17:44 -0500 Received: from mx1.redhat.com ([209.132.183.28]:58360) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdBpN-0004a8-8Q for qemu-devel@nongnu.org; Mon, 13 Feb 2017 03:17:41 -0500 Received: from smtp.corp.redhat.com (int-mx16.intmail.prod.int.phx2.redhat.com [10.5.11.28]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7804B81239; Mon, 13 Feb 2017 08:17:41 +0000 (UTC) Received: from nilsson.home.kraxel.org (ovpn-116-154.ams2.redhat.com [10.36.116.154]) by smtp.corp.redhat.com (Postfix) with ESMTP id D749B2D5D4; Mon, 13 Feb 2017 08:17:40 +0000 (UTC) Received: by nilsson.home.kraxel.org (Postfix, from userid 500) id 3865680FD4; Mon, 13 Feb 2017 09:17:37 +0100 (CET) From: Gerd Hoffmann To: qemu-devel@nongnu.org Date: Mon, 13 Feb 2017 09:17:31 +0100 Message-Id: <1486973851-21645-7-git-send-email-kraxel@redhat.com> In-Reply-To: <1486973851-21645-1-git-send-email-kraxel@redhat.com> References: <1486973851-21645-1-git-send-email-kraxel@redhat.com> X-Scanned-By: MIMEDefang 2.74 on 10.5.11.28 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Mon, 13 Feb 2017 08:17:41 +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 6/6] Revert "cirrus: allow zero source pitch in pattern fill rops" 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: Wolfgang Bumiller , Gerd Hoffmann , "Dr. David Alan Gilbert" 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" This reverts commit 5858dd1801883309bdd208d72ddb81c4e9fee30c. Conflicts: hw/display/cirrus_vga.c Cc: Wolfgang Bumiller Cc: Dr. David Alan Gilbert Signed-off-by: Gerd Hoffmann Reviewed-by: Dr. David Alan Gilbert Reviewed-by: Laurent Vivier Message-id: 1486645341-5010-2-git-send-email-kraxel@redhat.com --- hw/display/cirrus_vga.c | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c index 1bcf9a4..1deb520 100644 --- a/hw/display/cirrus_vga.c +++ b/hw/display/cirrus_vga.c @@ -273,6 +273,9 @@ static void cirrus_update_memory_access(CirrusVGAState = *s); static bool blit_region_is_unsafe(struct CirrusVGAState *s, int32_t pitch, int32_t addr) { + if (!pitch) { + return true; + } if (pitch < 0) { int64_t min =3D addr + ((int64_t)s->cirrus_blt_height - 1) * pitch @@ -291,11 +294,8 @@ static bool blit_region_is_unsafe(struct CirrusVGAStat= e *s, return false; } =20 -static bool blit_is_unsafe(struct CirrusVGAState *s, bool dst_only, - bool zero_src_pitch_ok) +static bool blit_is_unsafe(struct CirrusVGAState *s, bool dst_only) { - int32_t check_pitch; - /* should be the case, see cirrus_bitblt_start */ assert(s->cirrus_blt_width > 0); assert(s->cirrus_blt_height > 0); @@ -304,10 +304,6 @@ static bool blit_is_unsafe(struct CirrusVGAState *s, b= ool dst_only, return true; } =20 - if (!s->cirrus_blt_dstpitch) { - return true; - } - if (blit_region_is_unsafe(s, s->cirrus_blt_dstpitch, s->cirrus_blt_dstaddr)) { return true; @@ -315,13 +311,7 @@ static bool blit_is_unsafe(struct CirrusVGAState *s, b= ool dst_only, if (dst_only) { return false; } - - check_pitch =3D s->cirrus_blt_srcpitch; - if (!zero_src_pitch_ok && !check_pitch) { - check_pitch =3D s->cirrus_blt_width; - } - - if (blit_region_is_unsafe(s, check_pitch, + if (blit_region_is_unsafe(s, s->cirrus_blt_srcpitch, s->cirrus_blt_srcaddr)) { return true; } @@ -716,7 +706,7 @@ static int cirrus_bitblt_common_patterncopy(CirrusVGASt= ate *s, bool videosrc) src =3D s->cirrus_bltbuf; } =20 - if (blit_is_unsafe(s, true, true)) { + if (blit_is_unsafe(s, true)) { return 0; } =20 @@ -735,7 +725,7 @@ static int cirrus_bitblt_solidfill(CirrusVGAState *s, i= nt blt_rop) { cirrus_fill_t rop_func; =20 - if (blit_is_unsafe(s, true, true)) { + if (blit_is_unsafe(s, true)) { return 0; } rop_func =3D cirrus_fill[rop_to_index[blt_rop]][s->cirrus_blt_pixelwid= th - 1]; @@ -835,7 +825,7 @@ static int cirrus_do_copy(CirrusVGAState *s, int dst, i= nt src, int w, int h) =20 static int cirrus_bitblt_videotovideo_copy(CirrusVGAState * s) { - if (blit_is_unsafe(s, false, false)) + if (blit_is_unsafe(s, false)) return 0; =20 return cirrus_do_copy(s, s->cirrus_blt_dstaddr - s->vga.start_addr, --=20 1.8.3.1