On Mon, Jan 29, 2024 at 02:23:21AM +0530, Nilesh Patra wrote: > +Maytha who prepared the upload. > > On Sun, Jan 28, 2024 at 05:05:55PM +0000, Julian Gilbey wrote: > > Hi Nilesh, > > > > You did the last upload of this package - do you have any idea about > > this bug? > > I've been trying to track it down for the past hour but I don't have a fix > that I am confident about. > [...] > > On compiler level O_LARGEFILE is set to 0x0 on 64 bit systems while it is > 0x8000 (equivalent to 32-bit integer) for i386. > In fuse/print.go, LARGEFILE is hard-coded to "0x8000" which ends up matching > the value on 32-bit system > and it chokes with the panic. > > Interestingly, for all other 32-bit archs that are tested on debci, it is set > to a value higher than 0x8000 and so > they magically work. Given that the package is written with 64-bit systems in > focus, this change can work: > > - 0x8000: "LARGEFILE", > + 0x0: "LARGEFILE", > > And I have confirmed that it gets the test passing, but this looks... wrong. > OTOH, the if block inside and the panic statements were probably always > deadcode > whenever LARGEFILE flag was being passed considering it was geared towards > 64-bit use-cases. > > Please let me know what you think about this.
Hi Nilesh and Maytha, Thanks for your work on this! Unfortunately, I really don't know enough about the inner workings of go-fuse to know how best to handle this. But your reasoning sounds good to me. Let's see if Hanwen responds to the GitHub issue. Best wishes, Julian