On Tue, 2024-07-16 at 14:36 +0200, Philipp Kern wrote:
> Hi,
> 
> On 2024-07-16 14:14, Andrey Rakhmatullin wrote:
> > On Tue, Jul 16, 2024 at 12:46:01PM +0100, Phil Wyett wrote:
> > > > > > Packages built for the i386 arch need to conform to the i386 
> > > > > > baseline,
> > > > > > which is currently i686. If a package contains a newer instruction 
> > > > > > it's a
> > > > > > bug in that package and gcc is not the cause of it, the package is.
> > > > > > https://buildd.debian.org/status/fetch.php?pkg=filezilla&arch=i386&ver=3.63.0-1%2Bdeb12u3&stamp=1704758683&raw=0
> > > > > > indeed contains at least one compile command with -msse4.1.
> > > > [...]
> > > > > Yeah, I have discovered that it is indeed a cause of the d/rules in 
> > > > > the
> > > > > filezilla package. I blame having taken over it recently, and still
> > > > > haven't learned the ins and outs of it.
> > > > It'd also be good to document reasons for such workarounds next time.
> > > > Both the changelog and the surrounding comments don't really tell you
> > > > what to watch out for in a new gcc version. There's no bug reference
> > > > (GCC or Debian bug) or example error message or a pointer to possible
> > > > miscompilation.
> > > The addition to 'debian/rules' was in response to the below.
> > > 
> > > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053804
> > That bug report looks like the outcome of the "addition", not the 
> > reason
> > for it. Did you mean
> > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1034195 ?
> 
> Yeah it'd have been good if there had been a link to that. E.g. in the 
> changelog or as a comment in debian/rules.
> 
> > The interactions in both bugs look very weird to me, especially when 
> > the
> > same person proposes compiling software with SSE4.1 and then complains
> > that it fails on older hardware, and the reason for closing the newer 
> > bug
> > also looks weird to me. I think it should be reopened and bumped to RC.
> 
> I'm a bit confused as to why Filezilla bundles an ancient version of 
> Putty. The official Putty code does compile *that specific unit*[1] with 
> -msse4.1 but there is also a gate in the code to only use the 
> accelerated path if cpuid signals support for the new instructions. As 
> far as I can see you added the flag to all source files in the putty/ 
> subtree, thus more compilation units will use the new instructions that 
> are not necessarily ready for it (i.e. have extensive checking logic 
> upfront). It's not entirely surprising that the compiler then finds more 
> efficient ways to do operations using the new instructions, which will 
> then fail execution with invalid opcode.
> 
> I'm with Andrey that the bug should be reopened and RC'ed because this 
> is effectively producing a miscompilation on i386.
> 
> Kind regards
> Philipp Kern
> 
> [1] 
> https://sources.debian.org/src/putty/0.81-2/crypto/CMakeLists.txt/?hl=88#L130 
> (it checks for the capability and then adds a specific library just for 
> that source file if successful)

Hi,

Reopening it and looking at it again is the way forward. I hope in
conjunction with upstream where necessary this can resolved.

Regards

Phil

-- 

"I play the game for the game’s own sake"

Arthur Conan Doyle - The Adventure of the Bruce-Partington Plans

--

Internet Relay Chat (IRC): kathenas

Website: https://kathenas.org

Instagram: https://instagram.com/kathenasorg/

Buy Me A Coffee: https://buymeacoffee.com/kathenasorg

--

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to