From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 121397 invoked by alias); 22 Sep 2016 19:05:02 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 121379 invoked by uid 89); 22 Sep 2016 19:05:01 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy= X-HELO: mail-yw0-f179.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=9BqbY4pOqelEpap6bY6GJDybufajQQKnmTbyrjAcrks=; b=k7WM0tGpLfpZFr/pXEVBWtWJaj9IkRHJJdBsl3I8+0Ttkt+Y7tNInpt6RUr7bNxPkL 5SQ94b3BIfqmTM1RAPjpze+sX0pJosalVEuU3jFDiW08X0pvGhMOmWDSLBT2660lY7Rs Q1o5luVt5Be8p1nF32amjfWXgYD6x0sjLuYl4NL1ySQVA5Z5q+Z73sE3d7R6qvcMfOQK aQuylU6mZROZyCbJ6cSEcVEAGqB3PGO5J1/9n9gXgxx4PAK6YOR1tU+8mrKctDrduOiB 3alx9L+HKye58ncJIQc9g1MbW26IJbzLHal6VeJskvWPwyv3ESwNUdYbNNxiZO3UMqDV qKxQ== X-Gm-Message-State: AE9vXwNbH3BBuWZ3jV074ua45tas//2Uv8LN4otJO5wTT3r6MrhhSkPgVjtV29c2T0sCBeiH X-Received: by 10.129.42.213 with SMTP id q204mr2850974ywq.269.1474571089861; Thu, 22 Sep 2016 12:04:49 -0700 (PDT) Subject: Re: [PATCH 4/4] Consolidate Linux truncate implementations To: Yury Norov References: <1474383714-15187-1-git-send-email-adhemerval.zanella@linaro.org> <1474383714-15187-5-git-send-email-adhemerval.zanella@linaro.org> <20160922142442.GA5914@yury-N73SV> <330498bd-5430-94eb-f033-73236269be13@linaro.org> <20160922155131.GA20294@yury-N73SV> Cc: libc-alpha@sourceware.org From: Adhemerval Zanella Message-ID: <6e461b86-63e1-0980-0b26-608cea3575a0@linaro.org> Date: Thu, 22 Sep 2016 19:05:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <20160922155131.GA20294@yury-N73SV> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-SW-Source: 2016-09/txt/msg00464.txt.bz2 On 22/09/2016 12:51, Yury Norov wrote: > On Thu, Sep 22, 2016 at 11:42:11AM -0300, Adhemerval Zanella wrote: >> >> >> On 22/09/2016 11:24, Yury Norov wrote: >>>> +/* Truncate PATH to LENGTH bytes. */ >>>> int >>>> -truncate64 (const char *path, off64_t length) >>>> +__truncate64 (const char *path, off64_t length) >>>> { >>>> - unsigned int low = length & 0xffffffff; >>>> - unsigned int high = length >> 32; >>>> - int result = INLINE_SYSCALL (truncate64, 3, path, >>>> - __LONG_LONG_PAIR (high, low)); >>>> - return result; >>>> + return INLINE_SYSCALL_CALL (truncate64, path, >>>> + __ALIGNMENT_ARG SYSCALL_LL64 (length)); >>>> } >>>> +weak_alias (__truncate64, truncate64) >>>> + >>>> +#ifdef __OFF_T_MATCHES_OFF64_T >>>> +weak_alias (__truncate64, truncate); >>>> +#endif >>> >>> It seems you forgot weak_alias (__truncate64, __truncate); >>> >> >> I do not think it requires to add __truncate alias since glibc currently >> does have internal calls to truncate. > > Sorry, I was meaning __ftruncate: > /home/yury/work/toolchain/build-glibc-aarch64-thunderx-linux-gnu-mabi-ilp32/libc_pic.os: > In function `internal_fallocate': > /home/yury/work/toolchain/gits/glibc/io/../sysdeps/posix/posix_fallocate.c:64: > undefined reference to `__ftruncate' > > Truncate looks correct. > The fix is like this to me: > > -- > diff --git a/sysdeps/unix/sysv/linux/ftruncate64.c b/sysdeps/unix/sysv/linux/ftruncate64.c > index 914ce67..4a00db5 100644 > --- a/sysdeps/unix/sysv/linux/ftruncate64.c > +++ b/sysdeps/unix/sysv/linux/ftruncate64.c > @@ -33,5 +33,6 @@ __ftruncate64 (int fd, off64_t length) > weak_alias (__ftruncate64, ftruncate64) > > #ifdef __OFF_T_MATCHES_OFF64_T > +weak_alias (__ftruncate64, __ftruncate) > weak_alias (__ftruncate64, ftruncate); > #endif > Ah right, the fallback posix_fallocate implementation. I will add this to the patch, thanks.