Test version of glibc 2.3.5-10, kfreebsd-amd64
Aurelien Jarno
aurelien at aurel32.net
Mon Jan 2 15:34:08 UTC 2006
Petr Salinger a écrit :
> On Mon, 2 Jan 2006, Aurelien Jarno wrote:
>
>
>>Hi
>>
>>On Mon, Jan 02, 2006 at 12:18:43PM +0100, Petr Salinger wrote:
>>
>>>>There is still a few problem to be solved before though:
>>>
>>>>* struct statfs & syscalls.list upgrade
>>>>
>>>>Personally I would prefer that the change in the structure is handled
>>>>via symbol versioning, therefore we don't need to break the ABI.
>>>>
>>>>Please also note that when the port will move to ftp.debian.org (aj said
>>>>at the end of the month), it will not be possible to break the ABI.
>>>>
>>>>We can live with the old syscalls, however I think we have to switch to
>>>>at least 5.4 soon.
>>>
>>>I will write necessary wrappers for struct statfs and related syscalls.
>>>They will be ABI compatible with glibc 2.3.0 on kfreebsd-i386,
>>>symbol versions will be unchanged.
>>
>>I have already started to work on this. First please find below the list of
>>packages that uses those syscalls:
>>As you can see there is not a lot of file. I already have here wrappers
>>for statfs, statfs64, fstatfs, fstatfs64, fhstatfs and fhstatfs64.
>>
>>As for getfsstat, getfsstat64, getmntinfo, getmntinfo64, the wrappers
>>are not trivial, unless we still uses old syscall. But given the number
>>of package affected (5), I think we could break the ABI, and do some binNMU.
>
>
>>I forget to say that in my implementation statfs == statfs64.
>>Any comments?
>
>
> We don't have to break ABI at all.
> Kernel structure don't have to be the same as user structure.
>
> In 2.3.0, user structure statfs is the same as in kernel,
> but statfs64 is different -> conversion is needed anyway.
Yes, it's exactly what I have done for statfs, fhstatfs and fstatfs,
however, have a look at getfsstat64.c. You will see that the conversion
is not so tricky, it uses the fact that sizeof(statfs64) >
sizeof(statfs). This is not the case in our case, so it is not that easy
to do the conversion. It would be possible using malloc, but I think it
is a bit dangerous to do that here.
--
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73
: :' : Debian developer | Electrical Engineer
`. `' aurel32 at debian.org | aurelien at aurel32.net
`- people.debian.org/~aurel32 | www.aurel32.net
More information about the Glibc-bsd-devel
mailing list