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 X-Spam-Level: X-Spam-Status: No, score=-5.0 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B760CC433E3 for ; Wed, 26 Aug 2020 13:37:26 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 7C068208E4 for ; Wed, 26 Aug 2020 13:37:26 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="iFOWNELb" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7C068208E4 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:41622 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kAvcD-0000RV-NB for qemu-devel@archiver.kernel.org; Wed, 26 Aug 2020 09:37:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58042) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kAvbg-0008RR-M6 for qemu-devel@nongnu.org; Wed, 26 Aug 2020 09:36:52 -0400 Received: from us-smtp-delivery-1.mimecast.com ([207.211.31.120]:54924 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kAvbe-0006fK-Fr for qemu-devel@nongnu.org; Wed, 26 Aug 2020 09:36:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1598449009; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=1g8amj6zMF8d08abjkQZOc5L5cNYqr2NtB0aF5i//iE=; b=iFOWNELbMVWk49b3AqAw235B/+QP4sZnwQFRqpOzpmX9zvZ498BPxlA7DxnRaLiaYxMeQm c+9qXRXoftSmQSLtxifXmcd/NwaO+AiV6UkAfXWp+fWjPDXXh2MNQO2WB/7g5cSKfE94Qf SRP+sesMg27Chdon8VuleelEo7wSWlk= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-197-68XG6J36MkeSg9hrQJQWXQ-1; Wed, 26 Aug 2020 09:36:47 -0400 X-MC-Unique: 68XG6J36MkeSg9hrQJQWXQ-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E6260801ABE; Wed, 26 Aug 2020 13:36:45 +0000 (UTC) Received: from redhat.com (ovpn-114-142.ams2.redhat.com [10.36.114.142]) by smtp.corp.redhat.com (Postfix) with ESMTPS id DE7B17E722; Wed, 26 Aug 2020 13:36:40 +0000 (UTC) Date: Wed, 26 Aug 2020 14:36:38 +0100 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= To: Igor Mammedov Subject: Re: [PATCH v5 0/8] Remove EPYC mode apicid decode and use generic decode Message-ID: <20200826133638.GO168515@redhat.com> References: <159804762216.39954.15502128500494116468.stgit@naples-babu.amd.com> <20200826143849.59f6970b@redhat.com> <20200826125059.GN168515@redhat.com> <20200826153034.115126cb@redhat.com> MIME-Version: 1.0 In-Reply-To: <20200826153034.115126cb@redhat.com> User-Agent: Mutt/1.14.6 (2020-07-11) X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=berrange@redhat.com X-Mimecast-Spam-Score: 0.001 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Disposition: inline Received-SPF: pass client-ip=207.211.31.120; envelope-from=berrange@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/08/26 03:56:58 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.959, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, 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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= Cc: ehabkost@redhat.com, mst@redhat.com, Michal Privoznik , qemu-devel@nongnu.org, Babu Moger , pbonzini@redhat.com, rth@twiddle.net Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" On Wed, Aug 26, 2020 at 03:30:34PM +0200, Igor Mammedov wrote: > On Wed, 26 Aug 2020 13:50:59 +0100 > Daniel P. Berrangé wrote: > > > On Wed, Aug 26, 2020 at 02:38:49PM +0200, Igor Mammedov wrote: > > > On Fri, 21 Aug 2020 17:12:19 -0500 > > > Babu Moger wrote: > > > > > > > To support some of the complex topology, we introduced EPYC mode apicid decode. > > > > But, EPYC mode decode is running into problems. Also it can become quite a > > > > maintenance problem in the future. So, it was decided to remove that code and > > > > use the generic decode which works for majority of the topology. Most of the > > > > SPECed configuration would work just fine. With some non-SPECed user inputs, > > > > it will create some sub-optimal configuration. > > > > Here is the discussion thread. > > > > https://lore.kernel.org/qemu-devel/c0bcc1a6-1d84-a6e7-e468-d5b437c1b254@amd.com/ > > > > > > > > This series removes all the EPYC mode specific apicid changes and use the generic > > > > apicid decode. > > > > > > the main difference between EPYC and all other CPUs is that > > > it requires numa configuration (it's not optional) > > > so we need an extra patch on top of this series to enfoce that, i.e: > > > > > > if (epyc && !numa) > > > error("EPYC cpu requires numa to be configured") > > > > Please no. This will break 90% of current usage of the EPYC CPU in > > real world QEMU deployments. That is way too user hostile to introduce > > as a requirement. > > > > Why do we need to force this ? People have been successfuly using > > EPYC CPUs without NUMA in QEMU for years now. > > > > It might not match behaviour of bare metal silicon, but that hasn't > > obviously caused the world to come crashing down. > So far it produces warning in linux kernel (RHBZ1728166), > (resulting performance might be suboptimal), but I haven't seen > anyone reporting crashes yet. > > > What other options do we have? > Perhaps we can turn on strict check for new machine types only, > so old configs can keep broken topology (CPUID), > while new ones would require -numa and produce correct topology. No, tieing this to machine types is not viable either. That is still going to break essentially every single management application that exists today using QEMU. Breaking stuff existing apps is not acceptable for something that is merely reporting sub-optimal performance. That's simply a documentation task to highlight best practice to app developers. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|