RE: ARCH=hexagon unsupported?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
> Sent: Friday, April 23, 2021 4:40 PM
> To: Brian Cain <bcain@xxxxxxxxxxxxxx>
> Cc: Arnd Bergmann <arnd@xxxxxxxxxx>; open list:QUALCOMM HEXAGON...
> <linux-hexagon@xxxxxxxxxxxxxxx>; clang-built-linux <clang-built-
> linux@xxxxxxxxxxxxxxxx>; linux-arch <linux-arch@xxxxxxxxxxxxxxx>; Guenter
> Roeck <linux@xxxxxxxxxxxx>; Randy Dunlap <rdunlap@xxxxxxxxxxxxx>; Miguel
> Ojeda <miguel.ojeda.sandonis@xxxxxxxxx>
> Subject: Re: ARCH=hexagon unsupported?
> 
> On Fri, Apr 23, 2021 at 11:35 AM Brian Cain <bcain@xxxxxxxxxxxxxx> wrote:
> >
> > > -----Original Message-----
> > > From: Arnd Bergmann <arnd@xxxxxxxxxx>
> > > Sent: Friday, April 23, 2021 4:37 AM
> > > To: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
> > > Cc: open list:QUALCOMM HEXAGON... <linux-hexagon@xxxxxxxxxxxxxxx>;
> > > clang-built-linux <clang-built-linux@xxxxxxxxxxxxxxxx>; Brian Cain
> > > <bcain@xxxxxxxxxxxxxx>; linux-arch <linux-arch@xxxxxxxxxxxxxxx>;
> > > Guenter Roeck <linux@xxxxxxxxxxxx>
> > > Subject: Re: ARCH=hexagon unsupported?
> > >
> > > On Fri, Apr 23, 2021 at 12:12 AM 'Nick Desaulniers' via Clang Built
> > > Linux <clang-built-linux@xxxxxxxxxxxxxxxx> wrote:
> > > >
> > > > Arnd,
> > > > No one can build ARCH=hexagon and
> > > > https://github.com/ClangBuiltLinux/linux/issues/759 has been open
> > > > for
> > > > 2 years.
> > > >
> > > > Trying to build
> > > > $ ARCH=hexagon CROSS_COMPILE=hexagon-linux-gnu make LLVM=1
> > > LLVM_IAS=1
> > > > -j71
> > > >
> > > > shows numerous issues, the latest of which commit 8320514c91bea
> > > > ("hexagon: switch to ->regset_get()") has a very obvious typo
> > > > which misspells the `struct` keyword and has been in the tree for
> > > > almost 1 year.
> > >
> > > Thank you for looking into it.
> > >
> > > > Why is arch/hexagon/ in the tree if no one can build it?
> > >
> > > Removing it sounds reasonable to me, it's been broken for too long,
> > > and we did the same thing for unicore32 that was in the same
> > > situation where the gcc port was too old to build the kernel and the
> > > clang port never quite work in mainline.
> > >
> > > Guenter also brought up the issue a year ago, and nothing happened.
> > > I see Brian still occasionally sends an Ack to a patch that gets
> > > merged through another tree, but he has not send any patches or pull
> > > requests himself after taking over maintainership from Richard Kuo
> > > in 2019, and the four hexagon pull requests after 2014 only
> > > contained build fixes from developers that don't have access to the
> > > hardware (Randy Dunlap, Viresh Kumar, Mike Frysinger and me).
> >
> > Nick, Arnd,
> >
> > I can appreciate your frustration, I can see that I have let the community
> down here.  I would like to keep hexagon in-tree and I am committed to
> making the changes necessary to do so.
> 
> I'm very happy to hear that.
> 
> > I have a patch under internal review to address the cited build issues and
> libgcc/compiler-rt content.
> 
> We'd be first in line to help build test such a patch. Please consider cc'ing
> myself and clang-built-linux@xxxxxxxxxxxxxxxx when such a patch is
> available externally.  Further, we have the CI ready and waiting to add new
> architectures, even if it's just build testing. That would have caught
> regressions like 8320514c91bea; we were down to 1 build failure with
> https://github.com/ClangBuiltLinux/linux/issues/759 last I looked which was
> preventing us from adding Hexagon to any CI, but we must now dig ourselves
> out of a slightly deeper hole now.
> 
> Is this patch something you suspect will take quite some time to work through
> internal review?

I don't think it should take long, no.  I should have a better idea today of about how long it will take.  We will share it ASAP.

> > In addition, my team has been focusing on developing QEMU system mode
> support that would mitigate some of the need for having hardware access.
> We have landed support for userspace hexagon-linux in upstream QEMU.
> 
> That's also great to hear. QEMU is a critical part of our CI for boot testing; if
> there's more info on timelines or what's involved with booting a hexagon
> kernel in QEMU, we'd be very happy to know how or when that's available.
> 
> > My team and I want to make hexagon's open source footprint larger, not
> smaller.  I realize that not being a good steward of the hexagon kernel has not
> helped, and we will do what we can to fix it.
> 
> A worthwhile and appreciated sentiment. I believe you.
> 
> Hexagon could be an interesting case for LLVM support in general for the
> Linux kernel; a case where each target or driver need not necessarily have a
> GCC backend to be acceptable.  But barring anyone from being able to actually
> build it (let alone run it), it's not that; it's less than that. It's dead code that bit
> rots further and burdens maintainers who are maintaining something that's
> already broken. I'm not sure who derives any benefit.
> 
> I think it's in everyone's best interest to see Linux support more targets than
> fewer, and 2020 has been a hard year, but I'm curious how long something
> has to be broken before folks say "enough." Please let's support this properly
> or recognize the situation for what it is.

I don't think the special circumstances of 2020 are to blame, it's just my failure to give this work the priority it deserves.  Agreed: we will support the target properly.

-Brian





[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux