On 3/11/24 14:32, Andrea Bolognani wrote:
> On Thu, Mar 07, 2024 at 07:47:23PM +0100, Bernd Schubert wrote:
>> Hi all,
>>
>> this is certainly not kind of the mail I was hoping for as a new libfuse
>> maintainer.
>>
>> As you can see from the title and from discussion below (sorry this is 
>> not typical ML discussion style), we have a bit of of problem with 
>> libfuse ABI compatibility. 
> 
> [...]
> 
>>>> On 3/7/24 16:43, Ashley Pittman wrote:
>>>>> I’ve spotted an issue with the linked commit, the fuse_file_info struct 
>>>>> should have been modified by adding new entries just before the padding, 
>>>>> with this commit then members after the new entry will be moved creating 
>>>>> a change in the ABI for members after this.
>>>>>
>>>>> https://github.com/libfuse/libfuse/commit/a5eb7f2a0117ab43119ef5724cf5f4f2f181804a
>>>>>
>>>>> This affects the flush, nonseekable, flock_release, cache_readdir and 
>>>>> noflush flags, each one of which could be set or cleared accidentally 
>>>>> with one of the flags before or after it depending on what version of 
>>>>> libfuse the application is compiled and linked with.
>>>>>
>>>>> This isn’t a failure mode that I’ve experience before when using linux so 
>>>>> I don’t have a playbook to work from in how to correct this but 
>>>>> essentially fuse3 releases up to and including 3.13 have one ABI and 3.13 
>>>>> to 3.16 have a different ABI.
> 
> Not strictly related to the change at hand, but since we're
> discussing recent-ish changes that negatively affected backwards
> compatibility in libfuse I will mention this too:
> 
>   https://bugs.debian.org/1031802
> 
> It has been reported downstream a year ago, but I'm not sure if it
> ever got upstream's attention. Now it should have :)
> 

Arg thanks, I don't think that was ever posted. Clearly my fault, I had
added that symbol when I noticed it is missing.

Going to follow up in the debian report.


Thanks,
Bernd

Reply via email to