From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH] Segments can span multiple clusters with tap:qcow Date: Thu, 26 Apr 2007 11:00:54 +0100 Message-ID: References: <1177579115.3487.27.camel@blaa> Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1177579115.3487.27.camel@blaa> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Mark McLoughlin Cc: xen-devel List-Id: xen-devel@lists.xenproject.org On 26/4/07 10:18, "Mark McLoughlin" wrote: >> The current code allocates aio-request info for every segment in a request >> ring (MAX_AIO_REQUESTS == BLK_RING_SIZE * MAX_SEGMENTS_PER_REQUEST). This >> patch seems to take into account that each segment (part-of-page) can itself >> be split into clusters, hence the page_size/cluster_size calculation, but >> shouldn't this be multiplied by the existing MAX_AIO_REQUESTS? Otherwise you >> provide only enough aio requests for one segment at a time, rather than a >> request ring's worth of segments? > > Absolutely, well spotted. I fixed that typo after testing, but > obviously forgot to run "quilt refresh" before sending ... > > Fixed version attached. This one doesn't build (free_aio_state: line 164: structure has no member named 'private'). Perhaps free_aio_state() should take a 'struct disk_driver' rather than a 'struct td_state'? -- Keir