From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B9F00C25B76 for ; Wed, 5 Jun 2024 22:52:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 44B716B00A2; Wed, 5 Jun 2024 18:52:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3FB5C6B00A8; Wed, 5 Jun 2024 18:52:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 29C826B00AA; Wed, 5 Jun 2024 18:52:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 0B22F6B00A2 for ; Wed, 5 Jun 2024 18:52:32 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 7D0BE80115 for ; Wed, 5 Jun 2024 22:52:31 +0000 (UTC) X-FDA: 82198335702.24.86DEB7E Received: from mail-il1-f174.google.com (mail-il1-f174.google.com [209.85.166.174]) by imf04.hostedemail.com (Postfix) with ESMTP id A14EC40008 for ; Wed, 5 Jun 2024 22:52:29 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=gNgMZuXg; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf04.hostedemail.com: domain of cmllamas@google.com designates 209.85.166.174 as permitted sender) smtp.mailfrom=cmllamas@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717627949; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=YSDCArb6+iGdyUdtqqd9pStleb4MvKmGGngMGBUDMQA=; b=gtm+ptjDvRr6nN9MsVi4OkTCwqioL6GuMnosdjSM7+spMMGP7DE92PTRgjsTf56ZOJhpQj /iD+dyT7LupR9iIESTApZzw3Kp6ewCH8YfUgvDLxkSIvq3jO2gCMuEh2cDFf+/zHM5UpA3 Z6xFUKIaHKpX3JEnrqeGPAICVlJTuao= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717627949; a=rsa-sha256; cv=none; b=17FPp0gyqAToJO3VgYbkTFzEp7ix//8qwmgGeBECKeosUBTSSpDdmav4L/2cobtllaxA6w JohMQKRI+7FyDvy41p85zLVQldR5Zo09C/L/3H9T0CCSDeZ94DtP3TglyDo4yoKzQjeKFA L6fWhe+zcs89SM37i/+4YUfT1QPOtIs= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=gNgMZuXg; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf04.hostedemail.com: domain of cmllamas@google.com designates 209.85.166.174 as permitted sender) smtp.mailfrom=cmllamas@google.com Received: by mail-il1-f174.google.com with SMTP id e9e14a558f8ab-3748ebe7e53so1527055ab.1 for ; Wed, 05 Jun 2024 15:52:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1717627949; x=1718232749; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=YSDCArb6+iGdyUdtqqd9pStleb4MvKmGGngMGBUDMQA=; b=gNgMZuXg7n60UevebtI2SKwjVG+Y+oF+XhNHDCES3O6++YsDVe+AxVwggbRq0xlIB4 ejrR5Oc5nuD/D8jSdRCKi+T+W1iyo8Uu/1vszcCUta7veIjEN2+604Jfq4vpo6hsbZrp hFujsFuGBBF+GZUgl8nP+53SGuijc9PiHK6SgbK2BmV7LFRE4xzR9MXZnG+3BoJ38Us2 D8gPoRGA2hFWYJM1dmRRC/SC39g8qTx5swAutGJRhgWvsRhm6imd3G08EDLvutPBne4W Juh0GV2ceLXiYOAK7x3OVqVcyDVgQHoh+qg7sdO8MzL/zB/3RINtla5bRVCpCtLM4oEX DoDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717627949; x=1718232749; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=YSDCArb6+iGdyUdtqqd9pStleb4MvKmGGngMGBUDMQA=; b=r/41ohQAmfhL2SUeK9rYMkFGgs8fQklmFXXulXirZYyyO3URo611J8V9IIDkn8j4mf w9iAEQovnPta0FwuFvnsvFFoSBMoTHqbReUHLtln08WMXc0NU5brWuiufhkAgfMHvZyg b/e9EvMqGCNm6XfvJhj93jEQGM0NPicOLkt7niLK/W70OldLPadL7agMCk7VHGf3mTNj DHm5W1z4tVTJWcY/stBVC3H3OL86RT220htE95FIG9svCBCqg4CyRefZ5GlaF9INfNmi B0F216Oc5tagie+MKPhXKXwtlGdy0IOpouWeUCoy7bRZJcELaAbWyON3D8TE5Z6JDE2S 3dcw== X-Forwarded-Encrypted: i=1; AJvYcCXxxjqsGAma7TWRQfXNz8VFi285jWVegL6F8Rhig+G6KtdyBDp/Rqad2Xb0rJ/Mie4oD6Lc0ZSiZfHVPI2/K3/+2R0= X-Gm-Message-State: AOJu0YyhvODWSK90nvHKuLmH1hirZnqHJr2zal1GVD0coYmU6mXaH/Kz A65Vd+jLi7vhOV0tMtsavjS4r/jifIDrWbvCIGYJtkG2/bLO+SWNTNMhkGLrHA== X-Google-Smtp-Source: AGHT+IGzKiuu7Olg+ErkMrLVtXTStiQhWRPUfQmlopnZPzGP8VPYwj/Ku5f0IqDPhNz9a6uiFJwWyw== X-Received: by 2002:a05:6e02:1fed:b0:374:9c23:a06a with SMTP id e9e14a558f8ab-374b1ee216fmr42265675ab.6.1717627948503; Wed, 05 Jun 2024 15:52:28 -0700 (PDT) Received: from google.com (226.75.127.34.bc.googleusercontent.com. [34.127.75.226]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-6de28f37482sm47423a12.94.2024.06.05.15.52.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Jun 2024 15:52:28 -0700 (PDT) Date: Wed, 5 Jun 2024 22:52:24 +0000 From: Carlos Llamas To: Edward Liaw Cc: shuah@kernel.org, Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andrew Morton , linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, kernel-team@android.com, llvm@lists.linux.dev, linux-mm@kvack.org Subject: Re: [PATCH v1 2/2] selftests/mm: Guard defines from shm Message-ID: References: <20240605223637.1374969-1-edliaw@google.com> <20240605223637.1374969-3-edliaw@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20240605223637.1374969-3-edliaw@google.com> X-Stat-Signature: xe9x31wef4mawjpn7jyy3b8bhhf89gbg X-Rspamd-Queue-Id: A14EC40008 X-Rspam-User: X-Rspamd-Server: rspam01 X-HE-Tag: 1717627949-760962 X-HE-Meta: U2FsdGVkX1/hFKBk4idJhx1l6p08c8H68A99Qvbji0W4G7RFhi6r+d66fcsivxhmIbsGfmsTikp8xGYTKJqqdkCIAjwHdMjwVB8mQKavipFePAdBW5kOPsTYejYLF6cBqdzs45nBWIhXn+MzEAP3FZ8yOUSa6kox2GiDXnWosc84O3U5T6ksnf2ecbp2XEkWYtxDP79oycRJTLV+7IuDomIIneY31m4H2KTUdSKDdFU3QRpBFIs/iu4+AXLYuZ6FHVqZaU/MLHIp4dRTgwGLVt//F4dLRnc8o9rJpMhiR2/n2hYqcavG1dg0dofoyalVkcZSxJ/SnedZMdSIHSC/JeTOXKhi6ImLO8yn4XGctwfg735GW0ayxbWNm91PaZhvgIfSClA4iINDidQX9avmkN0LVn4nRhp+gk8m2XfPy8jZUz2Fb5hVzZktxlUAwejbsxgzQfq2nUP4ObmVBVkQ9oymC7AglQtW7gN50oxj2UHliaTzX/Buov44em4izstIBDxeg4wO98FeYz7qpjHD3qWceDooVvRxrna5tZUHC+hiV4SQ7OMmWQDSCNb5xvq6+G0aLT4Rff/HLyw4OKMFbjDD5NhvuQhEho/hu7Vic4My/JWpnbGpFSOPBUyOhlM2m7xs+xt6Kfs1tjFXU7qNFtt/FH6Sx1fMi9A9t+OmS1E9bnLjIvk9fUvtm/kKOKmFPBQGJH0D+7CIk5vVBe/C7uUP8mj2S+Dr8Qp18i2TFSyZ2nPQLl0Rw+DcmxMtnRXZy+T2GhKVlJ17wSsdBbyKOzutLSpp+X5RjOwBH54OEFBRYY9lNcerjco+VDkbZpUM8kj4k7lajI5YKBcJd8OERKNKsqlF/KT76TqI0+IzF5wX+9Qbqt0ty9ivUcqEipZafTjRE9voWSHFY19cyRcbP2WWGBF5JkwHeXboAIoVTWAMGMY1vvestBYlX5Ui36D1OxGgWWg9K3rUROBw+j+ HSDkmgpW /0vAL/wIjvDIykn5f5u7L7Wxv4okhnTKf62/jVcqWM1da2Ei2LDb7ZHy9lXF8DansknWL74WjOIDnKiIKikW0SQHQtPbhcNHNdxKqqU+V2gXutd2AXh6C4LHUff/8QJGIm+r0aX0cOllqB1n0rRG37poY6zOQQzDba7PAS8UXhuv5YtORabjrWqrgSUmD/cFPSgsitopjMo1ByTlLJ7cZpsVV24UZgpLpxaDCl26uK+0+8ThPnhesumwHrDuv7hpXLJfa52OcRUTz9Zpw+f3Cike8VyUvtHMpudRvjI0DHap+xR6eamWMxvrjHJH2OmPFFuWnaC0wANkWybHJhIRaUDQUrovZpXibDxJ9mgsWItJMYCCvkERkFm2xtSz/FDgwYlyhSWeuUKYLbzwE6N50fNys+jXs5L7SokyIC0DlswBcJ9rvL8IfwNaiAih0iElfsGaTp6/jrR35lciuZ/ZjNpW6+CFk39vpvpH7 X-Bogosity: Ham, tests=bogofilter, spamicity=0.008271, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, Jun 05, 2024 at 10:36:35PM +0000, Edward Liaw wrote: > thuge-gen.c defines SHM_HUGE_* macros that are provided by the uapi > since 4.14. These macros get redefined when compiling with Android's > bionic because its sys/shm.h will import the uapi definitions. > > However if linux/shm.h is included, with glibc, sys/shm.h will clash on > some struct definitions: > > /usr/include/linux/shm.h:26:8: error: redefinition of ‘struct shmid_ds’ > 26 | struct shmid_ds { > | ^~~~~~~~ > In file included from /usr/include/x86_64-linux-gnu/bits/shm.h:45, > from /usr/include/x86_64-linux-gnu/sys/shm.h:30: > /usr/include/x86_64-linux-gnu/bits/types/struct_shmid_ds.h:24:8: note: originally defined here > 24 | struct shmid_ds > | ^~~~~~~~ I also hit this issue while using bionic. I have a thread reporting this issue here: https://lore.kernel.org/all/Zl4LC9lTNptB2xTJ@google.com/ According to Andi Kleen, glibc and others should add these defines in their headers. So it make sense to me that we would need indefs to prevent a redefine macro issue. > > For now, guard the SHM_HUGE_* defines with ifndef to prevent > redefinition warnings on Android bionic. > > Signed-off-by: Edward Liaw > --- > tools/testing/selftests/mm/thuge-gen.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/tools/testing/selftests/mm/thuge-gen.c b/tools/testing/selftests/mm/thuge-gen.c > index 034635317935..d50dc71cac32 100644 > --- a/tools/testing/selftests/mm/thuge-gen.c > +++ b/tools/testing/selftests/mm/thuge-gen.c > @@ -34,10 +34,18 @@ > #endif > > #define SHM_HUGETLB 04000 /* segment will use huge TLB pages */ > +#ifndef SHM_HUGE_SHIFT nit: I see this file uses the form "#if !defined()" above for MAP_HUGETLB. Perhaps it makes sense to use that and keep things consistent? I'm fine either way. Reviewed-by: Carlos Llamas > #define SHM_HUGE_SHIFT 26 > +#endif > +#ifndef SHM_HUGE_MASK > #define SHM_HUGE_MASK 0x3f > +#endif > +#ifndef SHM_HUGE_2MB > #define SHM_HUGE_2MB (21 << SHM_HUGE_SHIFT) > +#endif > +#ifndef SHM_HUGE_1GB > #define SHM_HUGE_1GB (30 << SHM_HUGE_SHIFT) > +#endif > > #define NUM_PAGESIZES 5 > #define NUM_PAGES 4 > -- > 2.45.1.467.gbab1589fc0-goog >