From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:58207) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RCw6J-0007wq-GR for qemu-devel@nongnu.org; Sun, 09 Oct 2011 12:19:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RCw6H-0002n4-Te for qemu-devel@nongnu.org; Sun, 09 Oct 2011 12:19:43 -0400 Received: from mx1.redhat.com ([209.132.183.28]:10067) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RCw6H-0002mu-L2 for qemu-devel@nongnu.org; Sun, 09 Oct 2011 12:19:41 -0400 Message-ID: <4E91C996.6040705@redhat.com> Date: Sun, 09 Oct 2011 18:19:34 +0200 From: Avi Kivity MIME-Version: 1.0 References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 3/3] vga: compile cirrus_vga in hwlib List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: qemu-devel On 10/09/2011 12:24 PM, Blue Swirl wrote: > Remove target dependencies and compile Cirrus VGA in hwlib. > @@ -618,10 +621,10 @@ static void > cirrus_invalidate_region(CirrusVGAState * s, int off_begin, > for (y = 0; y< lines; y++) { > off_cur = off_begin; > off_cur_end = (off_cur + bytesperline)& s->cirrus_addr_mask; > - off_cur&= TARGET_PAGE_MASK; > + off_cur&= CIRRUS_PAGE_MASK; > while (off_cur< off_cur_end) { > memory_region_set_dirty(&s->vga.vram, off_cur); > - off_cur += TARGET_PAGE_SIZE; > + off_cur += CIRRUS_PAGE_SIZE; > } > off_begin += off_pitch; > } > Won't that miss some pages, if CIRRUS_PAGE_SIZE > TARGET_PAGE_SIZE? We probably need to change memory_region_set_dirty() to take a range, or add a new API that accepts a range. The only time you can assume you only modify a single page is when you write an aligned natural type; not general DMA. -- error compiling committee.c: too many arguments to function