Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp10543886imu; Thu, 6 Dec 2018 03:00:18 -0800 (PST) X-Google-Smtp-Source: AFSGD/V4BgmKw0gi7q4ccad1iuwnIABmjtu6QRPA9uax9fZhz4gQIU/APD2JHD3qhG9ZE07qjH9m X-Received: by 2002:a17:902:292b:: with SMTP id g40mr28216495plb.82.1544094018572; Thu, 06 Dec 2018 03:00:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544094018; cv=none; d=google.com; s=arc-20160816; b=u9EidmAis8lJLA86bSYgT7j1mgjNy6WDFiZoMPU6e+3ULKWf0mViKUjG4YFKfXo7MW cJeVzxV09uGjjcZmSpYV/VQswDJYiPg+PT2o9hyInrY8pO4JhSLEbqTHuj/Ad7c88VAY vyTR6ZpuklVqNDM2Bkddo9sLL1KFfSzqUQMY5Y9QI/ptaT8LTqwTd1JYVtus8r6m/YiS Yn37M7QHgUJz3X94xPf1Zxq/vVhF0cnXjOgFLtPN4av/nALPTMWf3ydctoPgvUvyk2Xe RNAtBvSz0MeRqqfui2/Vd3u/24HdVef564KKXoC7YD0C7nzKcNhk65l5373lDl+0sVUj 2faQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:thread-index:thread-topic :content-transfer-encoding:mime-version:subject:references :in-reply-to:message-id:cc:to:from:date; bh=09dTZE6q1bkN3LE0bB8dAhaRWze0ewGLzu1n4LXlJHk=; b=V2246HzK3TDvAbHhXrZDceE/sPSQ2vdDeYZftSy/m0PUB/Z2ualZrzvgsrieAP5ooG v6uYiexXNg04JCkPE4oOWIM12je7mwinKObD1Hs7ypNC3v7zRO7HTQao1yCC1vlIUTb2 PDYzxh1DWqgi52mb6qyRDc6JVtGwJ72GFiQM8hT0JvhjXYDSh6YCnc/4l2CYVq/iqwnp v8DL2x+xPKURR0bNDltjjU5/vd+FnZZTFbNqE2ZfheoO5dTAtRgUma2vlIWQhhCo2mYr MCZMAwuuGOg08A3KRRGNcbjGHv4nTmr/ZLpACemiEmPFKO2n8eGX4deasOfJyvY08M2m blzw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 69si14532pgd.290.2018.12.06.03.00.02; Thu, 06 Dec 2018 03:00:18 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729289AbeLFK70 (ORCPT + 99 others); Thu, 6 Dec 2018 05:59:26 -0500 Received: from mx1.redhat.com ([209.132.183.28]:44814 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727763AbeLFK70 (ORCPT ); Thu, 6 Dec 2018 05:59:26 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 9D93331256C4; Thu, 6 Dec 2018 10:59:25 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 8DD2F5D9CD; Thu, 6 Dec 2018 10:59:25 +0000 (UTC) Received: from zmail25.collab.prod.int.phx2.redhat.com (zmail25.collab.prod.int.phx2.redhat.com [10.5.83.31]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 7D0B5181B9E4; Thu, 6 Dec 2018 10:59:25 +0000 (UTC) Date: Thu, 6 Dec 2018 05:59:25 -0500 (EST) From: Frediano Ziglio To: Gerd Hoffmann Cc: dri-devel@lists.freedesktop.org, David Airlie , David Airlie , "open list:DRM DRIVER FOR QXL VIRTUAL GPU" , open list , "open list:DRM DRIVER FOR QXL VIRTUAL GPU" Message-ID: <207905511.48580418.1544093965441.JavaMail.zimbra@redhat.com> In-Reply-To: <20181206103352.20587-1-kraxel@redhat.com> References: <20181206103352.20587-1-kraxel@redhat.com> Subject: Re: [Spice-devel] [PATCH] drm/qxl: use qxl_num_crtc directly MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [10.33.32.16, 10.4.195.26] Thread-Topic: drm/qxl: use qxl_num_crtc directly Thread-Index: 6gu8SzX0lYQlCzMHMHMoA70PwbJvvQ== X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.46]); Thu, 06 Dec 2018 10:59:25 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > > Just use qxl_num_crtc directly everywhere instead of using > qdev->monitors_config->max_allowed. Drops pointless indirection > and also is less confusing. > To me is MORE confusing, why comparing number of something with another number? Previously code was comparing number of monitors with number of monitors, not number of CRTs with number of monitors. Why we are optimizing code that, as yours same saying, we are not much actively improving? > Signed-off-by: Gerd Hoffmann > --- > drivers/gpu/drm/qxl/qxl_display.c | 21 +++++++++------------ > 1 file changed, 9 insertions(+), 12 deletions(-) > > diff --git a/drivers/gpu/drm/qxl/qxl_display.c > b/drivers/gpu/drm/qxl/qxl_display.c > index ce0b9c40fc..6437369a31 100644 > --- a/drivers/gpu/drm/qxl/qxl_display.c > +++ b/drivers/gpu/drm/qxl/qxl_display.c > @@ -80,10 +80,10 @@ static int > qxl_display_copy_rom_client_monitors_config(struct qxl_device *qdev) > DRM_DEBUG_KMS("no client monitors configured\n"); > return status; > } > - if (num_monitors > qdev->monitors_config->max_allowed) { > + if (num_monitors > qxl_num_crtc) { > DRM_DEBUG_KMS("client monitors list will be truncated: %d < %d\n", > - qdev->monitors_config->max_allowed, num_monitors); > - num_monitors = qdev->monitors_config->max_allowed; > + qxl_num_crtc, num_monitors); > + num_monitors = qxl_num_crtc; > } else { > num_monitors = qdev->rom->client_monitors_config.count; > } > @@ -96,8 +96,7 @@ static int > qxl_display_copy_rom_client_monitors_config(struct qxl_device *qdev) > return status; > } > /* we copy max from the client but it isn't used */ > - qdev->client_monitors_config->max_allowed = > - qdev->monitors_config->max_allowed; > + qdev->client_monitors_config->max_allowed = qxl_num_crtc; > for (i = 0 ; i < qdev->client_monitors_config->count ; ++i) { > struct qxl_urect *c_rect = > &qdev->rom->client_monitors_config.heads[i]; > @@ -204,7 +203,7 @@ static int qxl_add_monitors_config_modes(struct > drm_connector *connector, > > if (!qdev->monitors_config) > return 0; > - if (h >= qdev->monitors_config->max_allowed) > + if (h >= qxl_num_crtc) > return 0; > if (!qdev->client_monitors_config) > return 0; > @@ -307,8 +306,7 @@ static void qxl_crtc_update_monitors_config(struct > drm_crtc *crtc, > return; > } > > - if (!qdev->monitors_config || > - qdev->monitors_config->max_allowed <= i) > + if (!qdev->monitors_config || qxl_num_crtc <= i) > return; > > head.id = i; > @@ -348,9 +346,10 @@ static void qxl_crtc_update_monitors_config(struct > drm_crtc *crtc, > if (oldcount != qdev->monitors_config->count) > DRM_DEBUG_KMS("active heads %d -> %d (%d total)\n", > oldcount, qdev->monitors_config->count, > - qdev->monitors_config->max_allowed); > + qxl_num_crtc); > > qdev->monitors_config->heads[i] = head; > + qdev->monitors_config->max_allowed = qxl_num_crtc; > qxl_send_monitors_config(qdev); > } > > @@ -1097,9 +1096,8 @@ int qxl_create_monitors_object(struct qxl_device *qdev) > { > int ret; > struct drm_gem_object *gobj; > - int max_allowed = qxl_num_crtc; > int monitors_config_size = sizeof(struct qxl_monitors_config) + > - max_allowed * sizeof(struct qxl_head); > + qxl_num_crtc * sizeof(struct qxl_head); > > ret = qxl_gem_object_create(qdev, monitors_config_size, 0, > QXL_GEM_DOMAIN_VRAM, > @@ -1121,7 +1119,6 @@ int qxl_create_monitors_object(struct qxl_device *qdev) > qxl_bo_physical_address(qdev, qdev->monitors_config_bo, 0); > > memset(qdev->monitors_config, 0, monitors_config_size); > - qdev->monitors_config->max_allowed = max_allowed; > return 0; > } > Frediano