Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp6134340ybn; Sun, 29 Sep 2019 13:07:17 -0700 (PDT) X-Google-Smtp-Source: APXvYqxVRsjKLds3nhpCIHtHHbFueBQenO7bROvPjAF7r+9S2RuS61+wizkaufWX/kp2QhoI1/VN X-Received: by 2002:a50:9eee:: with SMTP id a101mr14093706edf.128.1569787636916; Sun, 29 Sep 2019 13:07:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569787636; cv=none; d=google.com; s=arc-20160816; b=zdEn0SK9WlM0brPnckJqRGrRrOcaoO05QjQm4H+wij5d/B/NSC4oNT7k3/N1eWIMQD rs/OdFG1z51j5UhHLFfK4QZoWo7LD7g5d60Cc7UCy43eKzrmV5upY5nH8dHMXfayxDxe jZqyxwdQBYymNhf/z6kzwRgEkwyKk/swn0tq6LQMXyTWlTHPK6fNlLYOWbvU+1ULFicR nWdJs1jWJspw6+5WFnQO1SGyEMWXP8bjGYU2N1vE5U9jrEWB+rGgCHa3SzeYsvyt6SvQ V1axei041nZdWqfxiBVMrxmqjXCRvvU3G9PMrApIAITDsBZyhur+7tYTNK2s/szxDHHP KD4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:content-disposition :mime-version:message-id:subject:cc:to:from:date:dkim-signature; bh=mT9ftoA5wWDdYwyTtIXi6V3u3yJIxYq3zwgrONn+Tc4=; b=iGtPRvqX6J0wAwaAaTZIV8+GMYAaYRhxfSAibr7kbF5u8RaB3ilh764sJbrhQnFWBy 9PtKX19Jeh0cLCVwtTzGW44VdQIJb24biD0C1Tq0z4bIHSWH8rKwhEKtnreOLo9B9VnM UUN9QjgaK3K2mrgNdpwubzns6fSPCOxQMEImz4olJOQtK7v6VfsbD++AudFttypX8R/7 Zb+cKUGC5HeM8yDBo8xk4MYTYXl+pQVnBA2k6uBU94uDBqlZu1d3+jpLRfWw3KXWUbVk OuTzzJaj8ucG3YJ+SUC3BPmGKmLrqYY8IgSl0WpgpkEvitmO1F7N9JLnW0FJ2q1C168T kahQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=jxMZB8aS; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g11si6044429ejc.366.2019.09.29.13.06.51; Sun, 29 Sep 2019 13:07:16 -0700 (PDT) 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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=jxMZB8aS; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728809AbfI2UG0 (ORCPT + 99 others); Sun, 29 Sep 2019 16:06:26 -0400 Received: from mail-wr1-f66.google.com ([209.85.221.66]:46949 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725948AbfI2UG0 (ORCPT ); Sun, 29 Sep 2019 16:06:26 -0400 Received: by mail-wr1-f66.google.com with SMTP id o18so8679496wrv.13 for ; Sun, 29 Sep 2019 13:06:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:mime-version:content-disposition :user-agent; bh=mT9ftoA5wWDdYwyTtIXi6V3u3yJIxYq3zwgrONn+Tc4=; b=jxMZB8aSLiOwuPNsX304DJ6OL2djgwusWv0qyTm1Gy7gxjJpkneyriO57P9SvRJl2w EXEVdsBNFHIqwMTMo3+IrKOwqtfpvPyv6Fwux2F/KSPbyN78giTyTyiUmAhl8B/WZcsj saydtcpws2nzwSaOO7ag2wp8J466rLPYWW5ANxhcwsYhVfOkxUbtPySaWnMZ0Eoeka39 YfXwYTO03KylIdfCkM/vnXpFoLPecl/anLeOH3zPY9tap6XVGhrr9lnTSwu4CedfeAFZ XLs6wYCXH1VFPbsBJo6+juNV3EM57kSV/nPfSDl74fSfKP5MAf4bHhrbuzy3qhCb5bMS 44Cw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition:user-agent; bh=mT9ftoA5wWDdYwyTtIXi6V3u3yJIxYq3zwgrONn+Tc4=; b=J4xft5B15PFXZoh6JWmDtVs0kv9OM22WcSZlprxLGmVJ8R1B6nMU3j57PcbgydPzFi 6gWSinlyfv5Eq3HuPXuLY9Vo3QU9PRquWWICz0ubTQ/AOeX1bTpf7DeVqVBVvPRx+qLL jNbR9Z2srNJ5eqvtVNxdXHTZZhdiNLT1EGNOu1R3WWfz0CbunwcxW62iqR07GMiGQ7V7 ch+PKR0nPpDtDeizb/y2PlUwknktR+DGWo5LRMosC+quqCEDpZPi4Q4kFS9r1A2JCHd9 qF9CCxbF32po3odxS+N+VsQO3OcgpQj3nA1EantwMNypofRPX/S0swJAR83oAaJUiEDu rqrA== X-Gm-Message-State: APjAAAXEKWMUblVFeaFuTdFNvgXJcaEKrSGOJX8eENZmnSvu/oi6UbAw o/vVkcJjN/oUcK4jQwy4SLjzdWQ= X-Received: by 2002:a05:6000:50:: with SMTP id k16mr10871657wrx.161.1569787582036; Sun, 29 Sep 2019 13:06:22 -0700 (PDT) Received: from avx2 ([46.53.250.203]) by smtp.gmail.com with ESMTPSA id p85sm25860899wme.23.2019.09.29.13.06.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 29 Sep 2019 13:06:21 -0700 (PDT) Date: Sun, 29 Sep 2019 23:06:19 +0300 From: Alexey Dobriyan To: akpm@linux-foundation.org Cc: linux-kernel@vger.kernel.org, jani.nikula@linux.intel.com, joonas.lahtinen@linux.intel.com, rodrigo.vivi@intel.com, intel-gfx@lists.freedesktop.org, rostedt@goodmis.org, mingo@redhat.com, linux@rasmusvillemoes.dk Subject: [PATCH] Make is_signed_type() simpler Message-ID: <20190929200619.GA12851@avx2> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Simply compare -1 with 0, * Drop unnecessary parenthesis sets New macro leaves pointer as "unsigned type" but gives a warning, which should be fine because asking whether a pointer is signed is strange question. I'm not sure what's going on in the i915 driver, it is shipping kernel pointers to userspace. Signed-off-by: Alexey Dobriyan --- drivers/gpu/drm/i915/i915_trace.h | 86 +++++++++++++++++++------------------- include/linux/overflow.h | 2 include/linux/trace_events.h | 2 tools/include/linux/overflow.h | 2 4 files changed, 46 insertions(+), 46 deletions(-) --- a/drivers/gpu/drm/i915/i915_trace.h +++ b/drivers/gpu/drm/i915/i915_trace.h @@ -419,16 +419,16 @@ TRACE_EVENT(i915_gem_object_create, TP_ARGS(obj), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) + __field(unsigned long, obj) __field(u64, size) ), TP_fast_assign( - __entry->obj = obj; + __entry->obj = (unsigned long)obj; __entry->size = obj->base.size; ), - TP_printk("obj=%p, size=0x%llx", __entry->obj, __entry->size) + TP_printk("obj=%p, size=0x%llx", (void *)__entry->obj, __entry->size) ); TRACE_EVENT(i915_gem_shrink, @@ -456,25 +456,25 @@ TRACE_EVENT(i915_vma_bind, TP_ARGS(vma, flags), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) - __field(struct i915_address_space *, vm) + __field(unsigned long, obj) + __field(unsigned long, vm) __field(u64, offset) __field(u64, size) __field(unsigned, flags) ), TP_fast_assign( - __entry->obj = vma->obj; - __entry->vm = vma->vm; + __entry->obj = (unsigned long)vma->obj; + __entry->vm = (unsigned long)vma->vm; __entry->offset = vma->node.start; __entry->size = vma->node.size; __entry->flags = flags; ), TP_printk("obj=%p, offset=0x%016llx size=0x%llx%s vm=%p", - __entry->obj, __entry->offset, __entry->size, + (void *)__entry->obj, __entry->offset, __entry->size, __entry->flags & PIN_MAPPABLE ? ", mappable" : "", - __entry->vm) + (void *)__entry->vm) ); TRACE_EVENT(i915_vma_unbind, @@ -482,21 +482,21 @@ TRACE_EVENT(i915_vma_unbind, TP_ARGS(vma), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) - __field(struct i915_address_space *, vm) + __field(unsigned long, obj) + __field(unsigned long, vm) __field(u64, offset) __field(u64, size) ), TP_fast_assign( - __entry->obj = vma->obj; - __entry->vm = vma->vm; + __entry->obj = (unsigned long)vma->obj; + __entry->vm = (unsigned long)vma->vm; __entry->offset = vma->node.start; __entry->size = vma->node.size; ), TP_printk("obj=%p, offset=0x%016llx size=0x%llx vm=%p", - __entry->obj, __entry->offset, __entry->size, __entry->vm) + (void *)__entry->obj, __entry->offset, __entry->size, (void *)__entry->vm) ); TRACE_EVENT(i915_gem_object_pwrite, @@ -504,19 +504,19 @@ TRACE_EVENT(i915_gem_object_pwrite, TP_ARGS(obj, offset, len), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) + __field(unsigned long, obj) __field(u64, offset) __field(u64, len) ), TP_fast_assign( - __entry->obj = obj; + __entry->obj = (unsigned long)obj; __entry->offset = offset; __entry->len = len; ), TP_printk("obj=%p, offset=0x%llx, len=0x%llx", - __entry->obj, __entry->offset, __entry->len) + (void *)__entry->obj, __entry->offset, __entry->len) ); TRACE_EVENT(i915_gem_object_pread, @@ -524,19 +524,19 @@ TRACE_EVENT(i915_gem_object_pread, TP_ARGS(obj, offset, len), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) + __field(unsigned long, obj) __field(u64, offset) __field(u64, len) ), TP_fast_assign( - __entry->obj = obj; + __entry->obj = (unsigned long)obj; __entry->offset = offset; __entry->len = len; ), TP_printk("obj=%p, offset=0x%llx, len=0x%llx", - __entry->obj, __entry->offset, __entry->len) + (void *)__entry->obj, __entry->offset, __entry->len) ); TRACE_EVENT(i915_gem_object_fault, @@ -544,21 +544,21 @@ TRACE_EVENT(i915_gem_object_fault, TP_ARGS(obj, index, gtt, write), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) + __field(unsigned long, obj) __field(u64, index) __field(bool, gtt) __field(bool, write) ), TP_fast_assign( - __entry->obj = obj; + __entry->obj = (unsigned long)obj; __entry->index = index; __entry->gtt = gtt; __entry->write = write; ), TP_printk("obj=%p, %s index=%llu %s", - __entry->obj, + (void *)__entry->obj, __entry->gtt ? "GTT" : "CPU", __entry->index, __entry->write ? ", writable" : "") @@ -569,14 +569,14 @@ DECLARE_EVENT_CLASS(i915_gem_object, TP_ARGS(obj), TP_STRUCT__entry( - __field(struct drm_i915_gem_object *, obj) + __field(unsigned long, obj) ), TP_fast_assign( - __entry->obj = obj; + __entry->obj = (unsigned long)obj; ), - TP_printk("obj=%p", __entry->obj) + TP_printk("obj=%p", (void *)__entry->obj) ); DEFINE_EVENT(i915_gem_object, i915_gem_object_clflush, @@ -595,7 +595,7 @@ TRACE_EVENT(i915_gem_evict, TP_STRUCT__entry( __field(u32, dev) - __field(struct i915_address_space *, vm) + __field(unsigned long, vm) __field(u64, size) __field(u64, align) __field(unsigned int, flags) @@ -603,14 +603,14 @@ TRACE_EVENT(i915_gem_evict, TP_fast_assign( __entry->dev = vm->i915->drm.primary->index; - __entry->vm = vm; + __entry->vm = (unsigned long)vm; __entry->size = size; __entry->align = align; __entry->flags = flags; ), TP_printk("dev=%d, vm=%p, size=0x%llx, align=0x%llx %s", - __entry->dev, __entry->vm, __entry->size, __entry->align, + __entry->dev, (void *)__entry->vm, __entry->size, __entry->align, __entry->flags & PIN_MAPPABLE ? ", mappable" : "") ); @@ -620,7 +620,7 @@ TRACE_EVENT(i915_gem_evict_node, TP_STRUCT__entry( __field(u32, dev) - __field(struct i915_address_space *, vm) + __field(unsigned long, vm) __field(u64, start) __field(u64, size) __field(unsigned long, color) @@ -629,7 +629,7 @@ TRACE_EVENT(i915_gem_evict_node, TP_fast_assign( __entry->dev = vm->i915->drm.primary->index; - __entry->vm = vm; + __entry->vm = (unsigned long)vm; __entry->start = node->start; __entry->size = node->size; __entry->color = node->color; @@ -637,7 +637,7 @@ TRACE_EVENT(i915_gem_evict_node, ), TP_printk("dev=%d, vm=%p, start=0x%llx size=0x%llx, color=0x%lx, flags=%x", - __entry->dev, __entry->vm, + __entry->dev, (void *)__entry->vm, __entry->start, __entry->size, __entry->color, __entry->flags) ); @@ -648,15 +648,15 @@ TRACE_EVENT(i915_gem_evict_vm, TP_STRUCT__entry( __field(u32, dev) - __field(struct i915_address_space *, vm) + __field(unsigned long, vm) ), TP_fast_assign( __entry->dev = vm->i915->drm.primary->index; - __entry->vm = vm; + __entry->vm = (unsigned long)vm; ), - TP_printk("dev=%d, vm=%p", __entry->dev, __entry->vm) + TP_printk("dev=%d, vm=%p", __entry->dev, (void *)__entry->vm) ); TRACE_EVENT(i915_request_queue, @@ -922,16 +922,16 @@ DECLARE_EVENT_CLASS(i915_ppgtt, TP_ARGS(vm), TP_STRUCT__entry( - __field(struct i915_address_space *, vm) + __field(unsigned long, vm) __field(u32, dev) ), TP_fast_assign( - __entry->vm = vm; + __entry->vm = (unsigned long)vm; __entry->dev = vm->i915->drm.primary->index; ), - TP_printk("dev=%u, vm=%p", __entry->dev, __entry->vm) + TP_printk("dev=%u, vm=%p", __entry->dev, (void *)__entry->vm) ) DEFINE_EVENT(i915_ppgtt, i915_ppgtt_create, @@ -957,20 +957,20 @@ DECLARE_EVENT_CLASS(i915_context, TP_STRUCT__entry( __field(u32, dev) - __field(struct i915_gem_context *, ctx) + __field(unsigned long, ctx) __field(u32, hw_id) - __field(struct i915_address_space *, vm) + __field(unsigned long, vm) ), TP_fast_assign( __entry->dev = ctx->i915->drm.primary->index; - __entry->ctx = ctx; + __entry->ctx = (unsigned long)ctx; __entry->hw_id = ctx->hw_id; - __entry->vm = ctx->vm; + __entry->vm = (unsigned long)ctx->vm; ), TP_printk("dev=%u, ctx=%p, ctx_vm=%p, hw_id=%u", - __entry->dev, __entry->ctx, __entry->vm, __entry->hw_id) + __entry->dev, (void *)__entry->ctx, (void *)__entry->vm, __entry->hw_id) ) DEFINE_EVENT(i915_context, i915_context_create, --- a/include/linux/overflow.h +++ b/include/linux/overflow.h @@ -31,7 +31,7 @@ * https://mail-index.netbsd.org/tech-misc/2007/02/05/0000.html - * credit to Christian Biere. */ -#define is_signed_type(type) (((type)(-1)) < (type)1) +#define is_signed_type(type) ((type)-1 < 0) #define __type_half_max(type) ((type)1 << (8*sizeof(type) - 1 - is_signed_type(type))) #define type_max(T) ((T)((__type_half_max(T) - 1) + __type_half_max(T))) #define type_min(T) ((T)((T)-type_max(T)-(T)1)) --- a/include/linux/trace_events.h +++ b/include/linux/trace_events.h @@ -546,7 +546,7 @@ extern int trace_add_event_call(struct trace_event_call *call); extern int trace_remove_event_call(struct trace_event_call *call); extern int trace_event_get_offsets(struct trace_event_call *call); -#define is_signed_type(type) (((type)(-1)) < (type)1) +#define is_signed_type(type) ((type)-1 < 0) int ftrace_set_clr_event(struct trace_array *tr, char *buf, int set); int trace_set_clr_event(const char *system, const char *event, int set); --- a/tools/include/linux/overflow.h +++ b/tools/include/linux/overflow.h @@ -31,7 +31,7 @@ * https://mail-index.netbsd.org/tech-misc/2007/02/05/0000.html - * credit to Christian Biere. */ -#define is_signed_type(type) (((type)(-1)) < (type)1) +#define is_signed_type(type) ((type)-1 < 0) #define __type_half_max(type) ((type)1 << (8*sizeof(type) - 1 - is_signed_type(type))) #define type_max(T) ((T)((__type_half_max(T) - 1) + __type_half_max(T))) #define type_min(T) ((T)((T)-type_max(T)-(T)1))