From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CE9D8C07545 for ; Tue, 24 Oct 2023 19:33:16 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvN8b-0002UY-AK; Tue, 24 Oct 2023 15:32:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvN8U-0002T6-Ad for qemu-devel@nongnu.org; Tue, 24 Oct 2023 15:32:19 -0400 Received: from smtp-out1.suse.de ([2001:67c:2178:6::1c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qvN8R-0003g1-Qe for qemu-devel@nongnu.org; Tue, 24 Oct 2023 15:32:18 -0400 Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 261E92191A; Tue, 24 Oct 2023 19:32:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1698175933; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=mryiOJDNqj1idpVKnZeEiFHCzB+QlrOfw5xwppCj8Ic=; b=AkECAJL6e2zbySCGTkFK+Nsw13F3EShoPdg+IFZWm929b9H1Z8JBfXJedKs2oruobWHdkK FZXatmamUaZsC2uhMKuf8sB8xvHfUE3S59AeRBvIu/04LKgbW8ZJJi4nw9vFp39wwhDlTj 1XdHczA/j7cQYEWUQJiNoUURhqcgwLI= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1698175933; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=mryiOJDNqj1idpVKnZeEiFHCzB+QlrOfw5xwppCj8Ic=; b=eURQ1a9Pjuhvq6nyTP/fTdaf4K98WyliYvdkyGdrF4AXNr/UQoWELtg0y8ubZ8BoUAWBX1 3wd6FBksaU/MwYBw== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id AA6BF134F5; Tue, 24 Oct 2023 19:32:12 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id ZC8xHbwbOGUGQAAAMHmgww (envelope-from ); Tue, 24 Oct 2023 19:32:12 +0000 From: Fabiano Rosas To: Markus Armbruster Cc: qemu-devel@nongnu.org, berrange@redhat.com, Juan Quintela , Peter Xu , Leonardo Bras , Claudio Fontana , Eric Blake Subject: Re: [PATCH v2 28/29] migration: Add direct-io parameter In-Reply-To: <878r7svapt.fsf@pond.sub.org> References: <20231023203608.26370-1-farosas@suse.de> <20231023203608.26370-29-farosas@suse.de> <878r7svapt.fsf@pond.sub.org> Date: Tue, 24 Oct 2023 16:32:10 -0300 Message-ID: <87msw7ddfp.fsf@suse.de> MIME-Version: 1.0 Content-Type: text/plain Authentication-Results: smtp-out1.suse.de; none X-Spamd-Result: default: False [-6.23 / 50.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; BAYES_HAM(-2.13)[95.79%]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-3.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; NEURAL_HAM_SHORT(-1.00)[-1.000]; RCPT_COUNT_SEVEN(0.00)[8]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[] Received-SPF: pass client-ip=2001:67c:2178:6::1c; envelope-from=farosas@suse.de; helo=smtp-out1.suse.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Markus Armbruster writes: > Fabiano Rosas writes: > >> Add the direct-io migration parameter that tells the migration code to >> use O_DIRECT when opening the migration stream file whenever possible. >> >> This is currently only used for the secondary channels of fixed-ram >> migration, which can guarantee that writes are page aligned. >> >> However the parameter could be made to affect other types of >> file-based migrations in the future. >> >> Signed-off-by: Fabiano Rosas > > When would you want to enable @direct-io, and when would you want to > leave it disabled? That depends on a performance analysis. You'd generally leave it disabled unless there's some indication that the operating system is having trouble draining the page cache. However I don't think QEMU should attempt any kind of prescription in that regard. >From the migration implementation perspective, we need to provide alignment guarantees on the stream before allowing direct IO to be enabled. In this series we're just enabling it for the secondary multifd channels which do page-aligned reads/writes. > What happens when you enable @direct-io with a migration that cannot use > O_DIRECT? > In this version of the series Daniel suggested that we fail migration in case there's no support for direct IO or the migration doesn't support it.