From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: raw disks no longer work in latest kvm (kvm-88 was fine) Date: Sun, 23 May 2010 18:12:36 +0300 Message-ID: <4BF945E4.8080209@redhat.com> References: <4B92BF97.4040001@nagafix.co.uk> <4B932829.8090503@nagafix.co.uk> <4B9372B6.3050408@msgid.tls.msk.ru> <20100307100022.GA23201@infradead.org> <4B93A624.8010707@nagafix.co.uk> <4B93AF8A.3070805@nagafix.co.uk> <4B93C2F9.7030904@msgid.tls.msk.ru> <4B93DE3F.4090103@nagafix.co.uk> <4B93DFF0.5050905@redhat.com> <20100307172151.GA24859@infradead.org> <4B93E29E.6090609@redhat.com> <4B93E9EE.6020701@nagafix.co.uk> <4B93F4A4.9050003@redhat.com> <4B93F96E.30508@nagafix.co.uk> <4B93FA18.2090808@redhat.com> <4B93FAD8.9010207@nagafix.co.uk> <4B93FBC1.3000209@redhat.com> <4B93FD94.7060508@nagafix.co.uk> <4B93FFEE.4080007@redhat.com> <4B9B6008.4090902@nagafix.co.uk> <4BBE51F4.6070904@nagafix.co.uk> <4BF7B589.1070808@nagafix.co.uk> <4BF7BD33.2090700@msgid.tls.msk.ru> <4BF7C172.2000508@nagafix.co .uk> <4BF8ED0C.2070004@nagafix.co.uk> <4BF91844.8030903@redhat.com> <4BF936BB.5000401@nagafix.co.uk> <4BF9391A.1080302@redhat.com> <4BF93EF5.5090106@nagafix.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: Michael Tokarev , Christoph Hellwig , kvm@vger.kernel.org To: Antoine Martin Return-path: Received: from mx1.redhat.com ([209.132.183.28]:13258 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753837Ab0EWPMq (ORCPT ); Sun, 23 May 2010 11:12:46 -0400 In-Reply-To: <4BF93EF5.5090106@nagafix.co.uk> Sender: kvm-owner@vger.kernel.org List-ID: On 05/23/2010 05:43 PM, Antoine Martin wrote: >>> Description of the problem: >>> A guest tries to mount a large raw partition (1.5TB /dev/sda9 in my >>> case), this fails with pread enabled, works with it disabled. >> >> Did you mean: preadv? > > Yes, here's what makes it work ok (as suggested by Christoph earlier > in the thread) in posix-aio-compat.c: > #undef CONFIG_PREADV > #ifdef CONFIG_PREADV > static int preadv_present = 1; > #else > static int preadv_present = 0; > #endif When preadv_present=1, does strace -fF show preadv being called? If so, the kernel's preadv() is broken. If not, glibc's preadv() emulation is broken. >> >> Does aio=native help? > It does indeed! That's recommended anyway on raw partitions with cache=off. -- error compiling committee.c: too many arguments to function