From patchwork Thu Jul 18 15:37:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Ravnborg X-Patchwork-Id: 11049243 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id F0E8113AC for ; Thu, 18 Jul 2019 15:38:02 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E1F6928867 for ; Thu, 18 Jul 2019 15:38:02 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D67F82887A; Thu, 18 Jul 2019 15:38:02 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 8046C28867 for ; Thu, 18 Jul 2019 15:38:02 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 776486E41A; Thu, 18 Jul 2019 15:38:01 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf1-x141.google.com (mail-lf1-x141.google.com [IPv6:2a00:1450:4864:20::141]) by gabe.freedesktop.org (Postfix) with ESMTPS id 666E36E40C; Thu, 18 Jul 2019 15:37:58 +0000 (UTC) Received: by mail-lf1-x141.google.com with SMTP id b17so19553660lff.7; Thu, 18 Jul 2019 08:37:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=LLrJd06qiFDP4GE0liBgjxZMnk5poDqpfuPX5kofgWM=; b=ilc/E1d+KOqZ6BWS+BgkW0cvOsUN+e4RAWetsNtZSgeagNk1gCDkLdzu3fBcJTYGvB xZ+DHhRswm4yVBMnHVsUrxDq7cwEwwCXnBmcQ63G0H44eBMmxZdMaljwB9eXnCma6X1w jAYomKI1r0/hwjrRMHkdr+KSr3VjcWlmIqVjDu+0If7hGZpsfIG090eV98q7m6ec7vcQ 3uhzMmPv4RN4F+IwdbbWURCXbyeAu6gP5WlunN4JDFk6kz9mJk+lw2Tv1pvnjO2ty5gF 7Facno+dj/9+4/UeuKOd2ADKMMAv7/WLecombZAjGK5xz3J+LguYH8sH88Mdd41uBIem mM5g== X-Gm-Message-State: APjAAAXnJ52XEHckjJGYqwbZnzzLAFAX38poSJpggIW9F6D3lNq41VZa KfFjoHdkA10iI/7VlQDL7vDJDqeAR4w= X-Google-Smtp-Source: APXvYqz+tuBXxumYanvzxdC1TzdnCeeorGWynHiiVTy6bzSeFsNP8JSHOBvdEged/Qx+QDSMXAJzfA== X-Received: by 2002:a05:6512:48f:: with SMTP id v15mr17733196lfq.37.1563464276494; Thu, 18 Jul 2019 08:37:56 -0700 (PDT) Received: from saturn.lan (18.158-248-194.customer.lyse.net. [158.248.194.18]) by smtp.gmail.com with ESMTPSA id c30sm4062388lfp.70.2019.07.18.08.37.55 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Thu, 18 Jul 2019 08:37:56 -0700 (PDT) From: Sam Ravnborg To: dri-devel@lists.freedesktop.org, openchrome-devel@lists.freedesktop.org Subject: [PATCH v1 6/6] drm/via: drop DRM_WAIT_ON() in via_video Date: Thu, 18 Jul 2019 17:37:37 +0200 Message-Id: <20190718153737.28657-7-sam@ravnborg.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190718153737.28657-1-sam@ravnborg.org> References: <20190718153737.28657-1-sam@ravnborg.org> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=LLrJd06qiFDP4GE0liBgjxZMnk5poDqpfuPX5kofgWM=; b=jDhxEVsoTa506cjPZjB31vsZDAtu/mmo7nfsZRGkU63NCjhpDvPmh1ClUPYoOHKwIz 8Xc7GWx8FRQAqyKKEP59TAqWJm8hfzDQey2Ng5i6+QgT9zLzWuAF5wSaSFzMRYlaIgUZ +V+AccBzDPxepfolh+4ZSFjpfI0JPAdV2RPZ7GGU8Fk2JH91XJUG5JgwJb/E8gpAlHPe d/E4XQOf3+dAjDYS1KoLWWzp/nNr14HHxkxCPFwWmTT01J/1G1hjhdUVQpy7WsiVq0oX KrJYq/F5UhYZId5aeyNkFzcnmOQUIj9+999VzNSzPBJK6MVMt/bslQP7LDrTi8laWTwO CUpw== X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Hellstrom , Sam Ravnborg , "Gustavo A. R. Silva" , David Airlie , Daniel Vetter , Kevin Brace , Mike Marshall , Ira Weiny , Emil Velikov Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Replace DRM_WAIT_ON() with wait_event_interruptible(). Be careful to keep same return value semantics Signed-off-by: Sam Ravnborg Cc: Kevin Brace Cc: Thomas Hellstrom Cc: "Gustavo A. R. Silva" Cc: Mike Marshall Cc: Ira Weiny Cc: Daniel Vetter Cc: Emil Velikov --- drivers/gpu/drm/via/via_video.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/via/via_video.c b/drivers/gpu/drm/via/via_video.c index 4e165b1b0b18..1f88180affef 100644 --- a/drivers/gpu/drm/via/via_video.c +++ b/drivers/gpu/drm/via/via_video.c @@ -26,7 +26,6 @@ */ #include -#include #include #include "via_drv.h" @@ -73,7 +72,7 @@ int via_decoder_futex(struct drm_device *dev, void *data, struct drm_file *file_ volatile int *lock; drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; drm_via_sarea_t *sAPriv = dev_priv->sarea_priv; - int ret = 0; + int ret; DRM_DEBUG("\n"); @@ -84,9 +83,21 @@ int via_decoder_futex(struct drm_device *dev, void *data, struct drm_file *file_ switch (fx->func) { case VIA_FUTEX_WAIT: - DRM_WAIT_ON(ret, dev_priv->decoder_queue[fx->lock], - (fx->ms / 10) * (HZ / 100), *lock != fx->val); - return ret; + ret = wait_event_interruptible_timeout( + dev_priv->decoder_queue[fx->lock], + *lock != fx->val, + msecs_to_jiffies(fx->ms)); + switch (ret) { + case 0: + /* timeout */ + return -EBUSY; + case -ERESTARTSYS: + /* interrupted by signal */ + return -EINTR; + default: + return 0; + } + case VIA_FUTEX_WAKE: wake_up(&(dev_priv->decoder_queue[fx->lock])); return 0;