Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 3 May 2008 01:36:09 +0400 (MSD)
From:      Chagin Dmitry <chagin.dmitry@gmail.com>
To:        Kostik Belousov <kostikbel@gmail.com>
Cc:        emulation@freebsd.org
Subject:   Re: [RFC]: a place for [f]truncate64
Message-ID:  <alpine.BSF.1.10.0805030114580.75027@ora.chd.net>
In-Reply-To: <20080423114242.GY18958@deviant.kiev.zoral.com.ua>
References:  <20080423112543.GA20954@freebsd.org> <20080423114242.GY18958@deviant.kiev.zoral.com.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 23 Apr 2008, Kostik Belousov wrote:

> On Wed, Apr 23, 2008 at 01:25:43PM +0200, Roman Divacky wrote:
>> hi,
>>
>> Linux defines two syscalls ftruncate64 and truncate64 that are
>> defined only on 32bit archs, currently Linuxulator implementes
>> ftruncate64 which is defined in linux[32]_machdep.c, ie. in
>> machine dependant file.
>>
>> I plan to commit truncate64 but I prefer it to be placed in
>> linux_file.c which is machine independent. Kostik and I had
>> a discussion about this yesterday and we didnt agree what
>> is the best place for these functions.
>>

It's better to have some the duplicated lines of a code in 
linux[32]_machdep.c, rather than dust (aka more lines of #ifdef XX32x64) 
in machine independant code.
On an example linux_fcntl64 defined only for 32bit archs, but look at 
realization of linux_fcntl. The variable of type linux_fcntl64_args is 
used, which in 64bit world will be undefined.


>> I think it's better to have it in linux_file.c because the
>> only problem that can arise is that on platforms that don't
>> use these syscalls there will be unused function in linux_file.c
>> Kostik prefers each linux[32]_machdep.c to have it's own copy.
>>
>> So I ask emulation@ what should be done, do we want this in linux_file.c
>> or linux[32]_machdep.c
>
> It is wrong to limit the discussion to not quite interesting case of the
> truncate64. There is a lot more duplication, see the linux{,32}_machdep.c.
>
> I would prefer to have some definite word on the reason for this.
>

I think that that there was no mess in the further, it's necessary to 
transfer a machine dependent code according to definition.

thnx!

-- 
Have fun!
chd



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.1.10.0805030114580.75027>