From owner-svn-src-head@freebsd.org Mon May 1 22:26:36 2017 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 86143D59E94; Mon, 1 May 2017 22:26:36 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) by mx1.freebsd.org (Postfix) with ESMTP id 0453814F4; Mon, 1 May 2017 22:26:35 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Subject: Re: svn commit: r317171 - head/sys/dev/vt To: Ed Maste Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" References: <201704192221.v3JMLFPs032866@repo.freebsd.org> From: Jung-uk Kim Message-ID: Date: Mon, 1 May 2017 18:26:30 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.0.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="6aPrr0tDOmCmg8qbDKsFTuBjbaVbdugQW" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 May 2017 22:26:36 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --6aPrr0tDOmCmg8qbDKsFTuBjbaVbdugQW Content-Type: multipart/mixed; boundary="AskN0PpHWXPevlE3cejCgW0Qsvn95lF3D"; protected-headers="v1" From: Jung-uk Kim To: Ed Maste Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-ID: Subject: Re: svn commit: r317171 - head/sys/dev/vt References: <201704192221.v3JMLFPs032866@repo.freebsd.org> In-Reply-To: --AskN0PpHWXPevlE3cejCgW0Qsvn95lF3D Content-Type: multipart/mixed; boundary="------------E589CBB9D5721B08A742F296" Content-Language: en-US This is a multi-part message in MIME format. --------------E589CBB9D5721B08A742F296 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 05/01/2017 16:55, Ed Maste wrote: > On 20 April 2017 at 14:06, Jung-uk Kim wrote: >> >> Maybe but I haven't seen much improvement in the area for many years. >> Do you have any reason to believe someone is working on it? >> >> Even if we have such backend, I don't expect much difference in drawin= g >> small area, i.e., redrawing narrow borders. On top of that, I don't >> like "if (vd->vd_driver->vd_drawrect =3D=3D NULL) return (ENOTSUP)" st= uff. >=20 > I don't believe anyone is working on it at the moment, but I expect > that effort will go into improved VGA / VESA support at some point and > that might implement an improved drawrect. I agree that there's > unlikely to be a noticeable difference in the case of occasional > operations filling a small region (e.g., border clearing after vt > switch). >=20 > However, the vd_drawrect =3D=3D NULL case is really no different than > vd_setpixel =3D=3D NULL. All vt drivers except ofwfb provide both, and > ofwfb provides neither. I can revert it but I don't like the previous implementation. There were overlapping regions and off-by-one issues. Please see the attached patch, which is against the previous version. Jung-uk Kim --------------E589CBB9D5721B08A742F296 Content-Type: text/x-patch; name="vt_core.diff" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="vt_core.diff" --- vt_core.c.orig +++ vt_core.c @@ -1546,21 +1546,23 @@ /* Left bar. */ if (vw->vw_draw_area.tr_begin.tp_col > 0) vd->vd_driver->vd_drawrect(vd, - 0, 0, - vw->vw_draw_area.tr_begin.tp_col - 1, vd->vd_height - 1, + 0, vw->vw_draw_area.tr_begin.tp_row, + vw->vw_draw_area.tr_begin.tp_col - 1, + vw->vw_draw_area.tr_end.tp_row - 1, 1, c); =20 /* Right bar. */ if (vw->vw_draw_area.tr_end.tp_col < vd->vd_width) vd->vd_driver->vd_drawrect(vd, - vw->vw_draw_area.tr_end.tp_col - 1, 0, - vd->vd_width - 1, vd->vd_height - 1, + vw->vw_draw_area.tr_end.tp_col, + vw->vw_draw_area.tr_begin.tp_row, + vd->vd_width - 1, vw->vw_draw_area.tr_end.tp_row - 1, 1, c); =20 /* Bottom bar. */ if (vw->vw_draw_area.tr_end.tp_row < vd->vd_height) vd->vd_driver->vd_drawrect(vd, - 0, vw->vw_draw_area.tr_end.tp_row - 1, + 0, vw->vw_draw_area.tr_end.tp_row, vd->vd_width - 1, vd->vd_height - 1, 1, c); =20 --------------E589CBB9D5721B08A742F296-- --AskN0PpHWXPevlE3cejCgW0Qsvn95lF3D-- --6aPrr0tDOmCmg8qbDKsFTuBjbaVbdugQW Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEl1bqgKaRyqfWXu/CfJ+WJvzb8UYFAlkHthYACgkQfJ+WJvzb 8Ub8xQf+LSNyv25YHjZXI26jjDmtinxhhRVAA0+hsfBYvKgWnjU04L/K2820wza1 8vhoKnjQRUPFMmCY1V1aXXkk/1yl/IfCc/6D1BdpvrJEBW0T+8HnRxfk28FG+9Z3 G5ruRBZHSI3urBF8FcU4lY3349YGEzykjAZCSin9cCiQN5fUTlfZYejniDpOJuBo CXuQptxw80V5vP9p+0TkPiPRc89nmy2OMFgsNxXCUuAXHJQIFmoNvsGgT/9xzH9I LE2UpRbSQKjARZUZEc7ZEVdLiv0tI0PNQ6e8S6igLLn683AUeNKOI1eCVYnYnaGJ nUortZ3bSyCMSI3m8MNOK8AK0QzNHA== =p+Wt -----END PGP SIGNATURE----- --6aPrr0tDOmCmg8qbDKsFTuBjbaVbdugQW--