[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200329161410.GW22483@bombadil.infradead.org>
Date: Sun, 29 Mar 2020 09:14:10 -0700
From: Matthew Wilcox <willy@...radead.org>
To: Jaewon Kim <jaewon31.kim@...sung.com>
Cc: walken@...gle.com, bp@...e.de, akpm@...ux-foundation.org,
srostedt@...are.com, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, jaewon31.kim@...il.com
Subject: Re: [PATCH v3 2/2] mm: mmap: add trace point of vm_unmapped_area
On Fri, Mar 20, 2020 at 02:58:23PM +0900, Jaewon Kim wrote:
> + TP_printk("addr=%lx err=%ld total_vm=0x%lx flags=0x%lx len=0x%lx lo=0x%lx hi=0x%lx mask=0x%lx ofs=0x%lx\n",
> + IS_ERR_VALUE(__entry->addr) ? 0 : __entry->addr,
> + IS_ERR_VALUE(__entry->addr) ? __entry->addr : 0,
I didn't see the IS_ERR_VALUE problem that Vlastimil mentioned get resolved?
I might suggest ...
+++ b/include/linux/err.h
@@ -19,7 +19,8 @@
#ifndef __ASSEMBLY__
-#define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO)
+#define __IS_ERR_VALUE(x) ((unsigned long)(void *)(x) >= (unsigned long)-MAX_ERRNO)
+#define IS_ERR_VALUE(x) unlikely(__IS_ERR_VALUE(x))
static inline void * __must_check ERR_PTR(long error)
{
and then you can use __IS_ERR_VALUE() which removes the unlikely() problem.
Powered by blists - more mailing lists