From patchwork Wed Oct 16 23:44:06 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 1178254 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=libc-alpha-return-106046-incoming=patchwork.ozlabs.org@sourceware.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=wdc.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.b="ifK4wLrA"; dkim=pass (2048-bit key; unprotected) header.d=wdc.com header.i=@wdc.com header.b="hoFjMsqK"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46tpsm56GVz9sNw for ; Thu, 17 Oct 2019 10:49:00 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id :mime-version:content-transfer-encoding; q=dns; s=default; b=i2c htn13MdfWzwRx6oyS7gfDF11OmpULh70hKWOZEXMY+Sn2cfHP6Q2B8ocQX/3MSs0 Lc9j+VyM5V6m56R0hya6fFBcX4XNGW7vvB7LiGeMdLlAuSlVZVC+b78ZSEAFk838 eWYGoR2IH8veritn8CqlTgkKlTC8mD7BAxaRWWJ4= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id :mime-version:content-transfer-encoding; s=default; bh=eNdpid3mg ZZ1Du3+S5oduF3iEtM=; b=ifK4wLrAbLuDyJmz5WumNMgM/Oc8hOANcbwzljK3M DosF6fAXP0Hioqi2l1Dg6wxFIN+euE7JXvrPgCh9f/3U6weAp1BGxhUuk0MHc7Iv IhAap/rn7zSkwOmXUcfyQ4BNm5XXSXVz+KRE2hm/BYg05Zzg0uNK/66qSFfq9r4c Mo= Received: (qmail 4818 invoked by alias); 16 Oct 2019 23:48:55 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 4804 invoked by uid 89); 16 Oct 2019 23:48:54 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.6 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3 autolearn=ham version=3.3.1 spammy=vers, HContent-Transfer-Encoding:8bit X-HELO: esa4.hgst.iphmx.com DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1571269733; x=1602805733; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=kdGPlkHpBBAWnZn4qDE0urpFR9v0U0XjBDQFyVxCryk=; b=hoFjMsqK7TX3nEH/HYcZEOagLIM+m2Wz5HqtwWHpIG+6s3U82hKgVLAy yhT2RtOyQ3qlpAS2Ozg4d4ptWuATHIgSfxTj1yWlsCrvxD04aQL/INqL/ HhhNgWVKVyP84FTbvtadyFLuYPSW30Mw9xxH7PzhzMlgTK1rdt3Fwdezl euhr2Qv8FWvtxwy3yzssvLsV2sDJEQ7UlyGlI7bz+ZtXmUsEmT2ccECxN wEIom1YtebxY5h1Px52rJ0HuDk0tKzYG6eIqQ4eEIMmcxbl2DX5ZMk/Wu fniETMIpRIpP+QlCsIQgyok8WFugENXdwlsiOY/HyPG2XU9H7gOAeN9R3 g==; IronPort-SDR: Ncb16topTn4Vb1E2bJlPRJgYfkQYMhVY0GbbBDE4jPvu8hs4txGv/0+Aa/oQ9/h/U+QARdXJW4 Xjyiw+wwzkmljjYzJIvrHPOqLDXAFkuNiThwPSiBwEgaW6aywqsOx2lQ4mI+pNwgqq6Uo7IRPg UDU4Y3BeOfYlWj+GnFCzP4S+zr86GDt4hS4Svdrlj+dD1qH2OZx5yVm3teuVmgq7zHs7Y0fwdE ZcncXQPPI4LpV7SBzGCxRqKTyaTYRasBakXYwjBuA9AjU0kkbY76eKxUzas/PyuYnSECz4Pgi5 2to= IronPort-SDR: qSlDkX/8iWAZ8o1D0i9+Bs4sSWUQG03Zjlb/cHhmf2PLcccv+6GpWQX1QXXViI0hZ/yr+yoyl7 xpb08cNNrmZKvM89cyIxZUMPbyap7Nc085VA6TKyhy5atL+n9nGFVyNU0R6gJMGM7b3hjF03g+ O+uI10rJxI2FdRpHA1SMjHoPFgjlmAcvMHDfVSFDvsmBRfO1R4S187YtUdN/yOYhJVLU9ydxU3 UFEFbcvJpc+aHNEo3gdyrvBPPnp+07BTNoOPn78T954A6bn5InZzVgTVEJ//vxEDOJty5rk1Oq 0AAdSm0sLoAahzSwku4z/TU2 IronPort-SDR: qp8qpxqeiJrRuh2rfeYHWZuaEU3rpy485/JH6TAju/mbQw8Ey2DZgL0cAvtHzQd6rvQRE0T8BX 7DiRQRWKRVpamPifFRDxoVjQpMmGDNLHbVP4UXydjieMuFjKNaf+eNmxsDRrwIprBXyIK58C4Z QUWE7jCGj6bpGRYVInT8eJbVFjH5ubMSvG1Pcxl71QzXGMfTkzTpQ4GmCXtXzJlxjo8iWCtUyh Fga5mv3Imqld9cBfCNGgs9SV1JW6jLnyoS1vFwBgjRB8pYde7gtqw1E6a8cIN421m7NGtXnF8s qdQ= WDCIronportException: Internal From: Alistair Francis To: libc-alpha@sourceware.org Cc: alistair23@gmaill.com, Alistair Francis Subject: [PATCH v4 1/2] sysdeps/stat: Handle 64-bit ino_t types on 32-bit hosts Date: Wed, 16 Oct 2019 16:44:06 -0700 Message-Id: <20191016234407.4306-1-alistair.francis@wdc.com> MIME-Version: 1.0 On a 32-bit platform with a 64-bit ino_t type (__INO_T_MATCHES_INO64_T defined) we want to update the stat struct to remove the padding as it isn't required. As we don't have the padding we also need to update the overflow checker to not access the undefined members. * sysdeps/unix/sysv/linux/generic/bits/stat.h: Handle 64-bit ino_t types on 32-bit hosts. * sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h: Likewise. * sysdeps/unix/sysv/linux/generic/xstat.c: Ensure __blkcnt_t == __blkcnt64_t if __INO_T_MATCHES_INO64_T is defined. --- sysdeps/unix/sysv/linux/generic/bits/stat.h | 5 ++++- sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h | 4 ++++ sysdeps/unix/sysv/linux/generic/xstat.c | 5 +++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/sysdeps/unix/sysv/linux/generic/bits/stat.h b/sysdeps/unix/sysv/linux/generic/bits/stat.h index 1565f3f8248..34c455ed786 100644 --- a/sysdeps/unix/sysv/linux/generic/bits/stat.h +++ b/sysdeps/unix/sysv/linux/generic/bits/stat.h @@ -42,7 +42,10 @@ #if defined __USE_FILE_OFFSET64 # define __field64(type, type64, name) type64 name -#elif __WORDSIZE == 64 +#elif __WORDSIZE == 64 || defined __INO_T_MATCHES_INO64_T +# if defined __INO_T_MATCHES_INO64_T && !defined __OFF_T_MATCHES_OFF64_T +# error "ino_t and off_t must both be the same type" +# endif # define __field64(type, type64, name) type name #elif __BYTE_ORDER == __LITTLE_ENDIAN # define __field64(type, type64, name) \ diff --git a/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h b/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h index 45efcd8fd34..66546b07ccd 100644 --- a/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h +++ b/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h @@ -36,12 +36,16 @@ static inline off_t lseek_overflow (loff_t res) static inline int stat_overflow (struct stat *buf) { +#if defined __INO_T_MATCHES_INO64_T + return 0; +#else if (buf->__st_ino_pad == 0 && buf->__st_size_pad == 0 && buf->__st_blocks_pad == 0) return 0; __set_errno (EOVERFLOW); return -1; +#endif } /* Note that f_files and f_ffree may validly be a sign-extended -1. */ diff --git a/sysdeps/unix/sysv/linux/generic/xstat.c b/sysdeps/unix/sysv/linux/generic/xstat.c index 75ceb9bc74b..ece14fc5838 100644 --- a/sysdeps/unix/sysv/linux/generic/xstat.c +++ b/sysdeps/unix/sysv/linux/generic/xstat.c @@ -28,6 +28,11 @@ #include #include +#if __INO_T_MATCHES_INO64_T +_Static_assert (sizeof (__blkcnt_t) == sizeof (__blkcnt64_t), + "__blkcnt_t and __blkcnt64_t must match"); +#endif + /* Get information about the file NAME in BUF. */ int __xstat (int vers, const char *name, struct stat *buf) From patchwork Wed Oct 16 23:44:07 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 1178255 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=libc-alpha-return-106047-incoming=patchwork.ozlabs.org@sourceware.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=wdc.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.b="eznM21sP"; dkim=pass (2048-bit key; unprotected) header.d=wdc.com header.i=@wdc.com header.b="kDuumL6z"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46tpsx5Fgdz9sNw for ; Thu, 17 Oct 2019 10:49:09 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; q=dns; s= default; b=ULq1ler6NN6/PcMRq54u0SCz/w+X7c8iEt1VcKC9cB2IJQRXDcoPx +VUdJmP6QjgCefCaUQ7ohv1OlJH/QtEMWzGorYiRV7QQHxx7II1+t4CAJzH5TmJB NfCPXzhlEPhx8uY7+vA6rivcORCCtsz4keBgPHebC1JXuX5pHRLS20= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; s=default; bh=3GuIdrZ0kIGZ5O6cYLjQL3l7rKE=; b=eznM21sPjOjyZK9fpEAIWI3yl/y+ H3eo/gMTp0nfv1xOTVsDDlbmzGMt7qajIEdC+3bUxRzcxh2c7J4ZQLJZugT9MC38 m3eVUGRdfy5MAtgUhXjtUGQXxO8clxKkLhwwChCTiC2dnBgKGpLkhxd31LwxIZtb DicGtBT0ATRaOOo= Received: (qmail 5129 invoked by alias); 16 Oct 2019 23:48:57 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 5067 invoked by uid 89); 16 Oct 2019 23:48:56 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.4 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_NUMSUBJECT autolearn=ham version=3.3.1 spammy=HContent-Transfer-Encoding:8bit X-HELO: esa4.hgst.iphmx.com DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1571269734; x=1602805734; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=XRe+mNRDpfB2L4W2iOIq22+StEz9IDi+3SpnaFzOPGQ=; b=kDuumL6zID8aDIvP+gE3Qfhrv8MYI1MIuMp3Dp3uw39vSxm0JSAojAbc AI7vBOVw/OQPm8H2pZEqYDiOTOv9uMpcY7/QlCt2yh0jsRpU5On65lnyJ bmwB8gTHP4tLOYoe1zuEGbfki1cTGFYSnCfYXtxv8JTZJMV99dXNArx1A AM6XTnXYFhOlSCkWdsKZOi+r3L+LR6jcbx7i5r0BGMwYFXzzKm/vb6o4F BVMMp+O8vgXMC9d2uRYPn88FzxpEm6mmYfu42mhRRnoHJ5LjPtDFuBFJb XQUTwkCmpyUPTjXjiwVuU01f5AgSKyM+i/bzJJ1Msr1KiAitpqk0ch3bF A==; IronPort-SDR: 97zOmeN7EsM2UBjTJGcVG6s2g0Du5P/KWbnLVW/YIAL9PhxCQ9Igl77ALR6r3vHb2DAJ9f4Sc/ CRX1YIabWp0pyfYukill9kpSDpam2a03qwZaC2Hl+Us4K8OrbWSgSJZhycLT/hRTkB5KJEzIU2 a3ZkLXA+UtShh2xMr5A1/W+Pr9OnkyFQjhfp3IwOuCIfprsBabNHGUCg+SihuJfoDZplb9uWnz 772p07xkuk7NMiGCKgqe5V0x2UJU5QD8c9H3aJ+ePJgtRlHbSYThD00Ef/4ybLDCT3pZ3IZSLb tjA= IronPort-SDR: oiUQi+8XmXfI+1UTse6w6+vOhUpTW2U9Lip0+p4bN+VpmfDuNFjFdx5NLUBrNst2+6gga0gx02 acE8NWhxkCP1s+cgYOPmR/bX/D8e6VmtnNd2dcNoUl0X5du/QG0Tgx30iiiTUAFvRU5pKv3Mgk CkfowhCuPBysRv6XrADOKif+vNiQpGl43MgC9aY1XiIza2VKuKSEs8/ACe8J2uDSlK8YDP0LMn Nz0lCDqkKwTvrx2B32vCEC3P+zc2/KDFZJWmJTSqb0lUMXOV0qW7PYs93AF0posi4xUENjqT8w SPUUEXacW9sfRMxI1Xm20iS/ IronPort-SDR: 3DTQCWLfv6c2E5MT9GNyU1q7MKl3ZYvXDQOODTMMCYOd7Q2jiEH4bdRFJ1wmJWqmURK80foy/t QR0gscdnEJJjnh5IiVRP3nkqKjVpfWa4/1MfToJFhunEYLt7kLaT3ulBObdzv8wvWadZqxq8XI qFvDuuGDPzf2PbVH7EwG+FClL67gP51GEnl3kxOkRZat6cEwZvFJWNQXHIvHlKb0maMSnqfL0E XJeHWyayxUZ4PPR06UomISHJSE82/h42HSgk60aBPqGwVHS/aveADybsqpl7j4KHqtXmc8rwdU +x8= WDCIronportException: Internal From: Alistair Francis To: libc-alpha@sourceware.org Cc: alistair23@gmaill.com, Alistair Francis Subject: [PATCH v4 2/2] Define __STATFS_MATCHES_STATFS64 Date: Wed, 16 Oct 2019 16:44:07 -0700 Message-Id: <20191016234407.4306-2-alistair.francis@wdc.com> In-Reply-To: <20191016234407.4306-1-alistair.francis@wdc.com> References: <20191016234407.4306-1-alistair.francis@wdc.com> MIME-Version: 1.0 Add a new macro __STATFS_MATCHES_STATFS64 that specifies if fsblkcnt_t matches fsblkcnt64_t and if fsfilcnt_t matches fsfilcnt64_t. On a 32-bit platform with a 64-bit ino_t type (__STATFS_MATCHES_STATFS64 == 1) we want to update the statfs struct to remove the padding as it isn't required. As we don't have the padding we also need to update the overflow checker to not access the undefined members. * bits/typesizes.h: Define __STATFS_MATCHES_STATFS64 to handle 64-bit __fsblkcnt_t and __fsfilcnt_t types on 32-bit hosts. * sysdeps/unix/sysv/linux/generic/bits/statfs.h: Likewise. * sysdeps/unix/sysv/linux/generic/bits/typesizes.h: Likewise. * sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: Likewise. * sysdeps/unix/sysv/linux/x86/bits/typesizes.h: Likewise. --- bits/typesizes.h | 5 +++++ sysdeps/unix/sysv/linux/generic/bits/statfs.h | 2 +- sysdeps/unix/sysv/linux/generic/bits/typesizes.h | 6 +++++- sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h | 4 ++++ sysdeps/unix/sysv/linux/s390/bits/typesizes.h | 5 +++++ sysdeps/unix/sysv/linux/sparc/bits/typesizes.h | 5 +++++ sysdeps/unix/sysv/linux/x86/bits/typesizes.h | 5 +++++ 7 files changed, 30 insertions(+), 2 deletions(-) diff --git a/bits/typesizes.h b/bits/typesizes.h index 779945bf099..ae6eff5fc5f 100644 --- a/bits/typesizes.h +++ b/bits/typesizes.h @@ -72,8 +72,13 @@ /* And for rlim_t and rlim64_t. */ # define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 #else # define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 #endif /* Number of descriptors that can fit in an `fd_set'. */ diff --git a/sysdeps/unix/sysv/linux/generic/bits/statfs.h b/sysdeps/unix/sysv/linux/generic/bits/statfs.h index c4069aba620..e622daf2240 100644 --- a/sysdeps/unix/sysv/linux/generic/bits/statfs.h +++ b/sysdeps/unix/sysv/linux/generic/bits/statfs.h @@ -34,7 +34,7 @@ #if defined __USE_FILE_OFFSET64 # define __field64(type, type64, name) type64 name -#elif __WORDSIZE == 64 +#elif __WORDSIZE == 64 || __STATFS_MATCHES_STATFS64 # define __field64(type, type64, name) type name #elif __BYTE_ORDER == __LITTLE_ENDIAN # define __field64(type, type64, name) \ diff --git a/sysdeps/unix/sysv/linux/generic/bits/typesizes.h b/sysdeps/unix/sysv/linux/generic/bits/typesizes.h index 05e3cfee454..0c8c2e0c12a 100644 --- a/sysdeps/unix/sysv/linux/generic/bits/typesizes.h +++ b/sysdeps/unix/sysv/linux/generic/bits/typesizes.h @@ -73,10 +73,14 @@ /* And for __rlim_t and __rlim64_t. */ # define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 #else # define __RLIM_T_MATCHES_RLIM64_T 0 -#endif +# define __STATFS_MATCHES_STATFS64 0 +#endif /* Number of descriptors that can fit in an `fd_set'. */ #define __FD_SETSIZE 1024 diff --git a/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h b/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h index 66546b07ccd..f63dbfae899 100644 --- a/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h +++ b/sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h @@ -51,6 +51,9 @@ static inline int stat_overflow (struct stat *buf) /* Note that f_files and f_ffree may validly be a sign-extended -1. */ static inline int statfs_overflow (struct statfs *buf) { +#if __STATFS_MATCHES_STATFS64 + return 0; +#else if (buf->__f_blocks_pad == 0 && buf->__f_bfree_pad == 0 && buf->__f_bavail_pad == 0 && (buf->__f_files_pad == 0 @@ -61,4 +64,5 @@ static inline int statfs_overflow (struct statfs *buf) __set_errno (EOVERFLOW); return -1; +#endif } diff --git a/sysdeps/unix/sysv/linux/s390/bits/typesizes.h b/sysdeps/unix/sysv/linux/s390/bits/typesizes.h index 94234f92427..38034e3ad40 100644 --- a/sysdeps/unix/sysv/linux/s390/bits/typesizes.h +++ b/sysdeps/unix/sysv/linux/s390/bits/typesizes.h @@ -78,8 +78,13 @@ /* And for __rlim_t and __rlim64_t. */ # define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 #else # define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 #endif /* Number of descriptors that can fit in an `fd_set'. */ diff --git a/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h b/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h index 037f530d65b..c93f428017b 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h @@ -72,8 +72,13 @@ /* And for __rlim_t and __rlim64_t. */ # define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 #else # define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 #endif /* Number of descriptors that can fit in an `fd_set'. */ diff --git a/sysdeps/unix/sysv/linux/x86/bits/typesizes.h b/sysdeps/unix/sysv/linux/x86/bits/typesizes.h index 012651b3ab5..168990f9dda 100644 --- a/sysdeps/unix/sysv/linux/x86/bits/typesizes.h +++ b/sysdeps/unix/sysv/linux/x86/bits/typesizes.h @@ -84,8 +84,13 @@ /* And for __rlim_t and __rlim64_t. */ # define __RLIM_T_MATCHES_RLIM64_T 1 + +/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */ +# define __STATFS_MATCHES_STATFS64 1 #else # define __RLIM_T_MATCHES_RLIM64_T 0 + +# define __STATFS_MATCHES_STATFS64 0 #endif /* Number of descriptors that can fit in an `fd_set'. */