[RFC]: a place for [f]truncate64
Chagin Dmitry
chagin.dmitry at gmail.com
Fri May 2 21:35:47 UTC 2008
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
More information about the freebsd-emulation
mailing list