From patchwork Wed Jun 21 23:16:12 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Engestrom X-Patchwork-Id: 9803143 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 06894600C5 for ; Wed, 21 Jun 2017 23:18:33 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D827F28533 for ; Wed, 21 Jun 2017 23:18:32 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CC7CC2853C; Wed, 21 Jun 2017 23:18:32 +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=-4.2 required=2.0 tests=BAYES_00, 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 EABDE28533 for ; Wed, 21 Jun 2017 23:18:31 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3F2426E09F; Wed, 21 Jun 2017 23:18:31 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-wr0-f194.google.com (mail-wr0-f194.google.com [209.85.128.194]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA5206E09C for ; Wed, 21 Jun 2017 23:18:29 +0000 (UTC) Received: by mail-wr0-f194.google.com with SMTP id k67so60373wrc.1 for ; Wed, 21 Jun 2017 16:18:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=zlM4h6UaTHq9wqZ8cNcMLA7ifUrPy+Zbl2vneCoN/aw=; b=CtAEuZhHdBKE16zMcUeSHSTaRcl6SpKmGqkRYP+7sACg4mKYV4BZ8xA8rCnyVlVJoU R495InheVXdyqtHecQ8838gWYMz99bAqJzkirz3/+fJmCzJpl5Ki2CCjHc+V/DcJ9sEe bA9JITTAvH2n6tKE5eMMz6Yqv9jaOea7S5AlejUlABcLVwx5hadNppORiRif8JSfdLku yrlGL96K8KN24gL4JoaVcHrpQ10fvMeBreKKXkLJjVRCQc71nI9Q4TMF5RrPPjZSZRzr j0T8ZpVChN5y8fHoom7N7RLRn/CiUrx5r0hoo03wtTBcSkv0v7EeEQZAml9KS9A1noHc fFsg== X-Gm-Message-State: AKS2vOzkBM37MQL4ZnzMTzTzCH3HUfwRKOnfmPXVtF59SxJ5xGSsgt/i KIEPSNfv3nbCPjwO0A4= X-Received: by 10.223.161.149 with SMTP id u21mr21071617wru.70.1498087107996; Wed, 21 Jun 2017 16:18:27 -0700 (PDT) Received: from localhost.localdomain ([5.80.129.103]) by smtp.gmail.com with ESMTPSA id t70sm26821580wmd.1.2017.06.21.16.18.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 21 Jun 2017 16:18:26 -0700 (PDT) From: Eric Engestrom To: dri-devel@lists.freedesktop.org Subject: [PATCH libdrm 1/2] xf86drm: inline drmIoctl() Date: Thu, 22 Jun 2017 00:16:12 +0100 Message-Id: <20170621231613.20619-1-eric@engestrom.ch> X-Mailer: git-send-email 2.13.1 In-Reply-To: References: Cc: Chad Versace X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP As Chad [1] puts it: > it's excessive to jump through the PLT into a shared object for a mere > ioctl wrapper. [1] https://lists.freedesktop.org/archives/mesa-dev/2017-June/159951.html Signed-off-by: Eric Engestrom --- xf86drm.c | 14 -------------- xf86drm.h | 18 +++++++++++++++++- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/xf86drm.c b/xf86drm.c index 728ac78c..c82a76d2 100644 --- a/xf86drm.c +++ b/xf86drm.c @@ -179,20 +179,6 @@ void drmFree(void *pt) free(pt); } -/** - * Call ioctl, restarting if it is interupted - */ -int -drmIoctl(int fd, unsigned long request, void *arg) -{ - int ret; - - do { - ret = ioctl(fd, request, arg); - } while (ret == -1 && (errno == EINTR || errno == EAGAIN)); - return ret; -} - static unsigned long drmGetKeyFromFd(int fd) { stat_t st; diff --git a/xf86drm.h b/xf86drm.h index 74f54f17..aeed543f 100644 --- a/xf86drm.h +++ b/xf86drm.h @@ -38,6 +38,8 @@ #include #include #include +#include +#include #if defined(__cplusplus) extern "C" { @@ -118,7 +120,21 @@ typedef struct drmHashEntry { void *tagTable; } drmHashEntry; -extern int drmIoctl(int fd, unsigned long request, void *arg); +/** + * Call ioctl, restarting if it is interupted + */ +static inline int +drmIoctl(int fd, unsigned long request, void *arg) +{ + int ret; + + do { + ret = ioctl(fd, request, arg); + } while (ret == -1 && (errno == EINTR || errno == EAGAIN)); + + return ret; +} + extern void *drmGetHashTable(void); extern drmHashEntry *drmGetEntry(int fd);