* Deprecation/removal of nios2 target support
@ 2024-04-18 3:27 Sandra Loosemore
2024-04-18 5:53 ` Thomas Huth
2024-04-18 15:44 ` Joseph Myers
0 siblings, 2 replies; 10+ messages in thread
From: Sandra Loosemore @ 2024-04-18 3:27 UTC (permalink / raw)
To: gcc, binutils, gdb-patches, libc-alpha, Chung-Lin Tang, andrew, Yao Qi
Cc: Dinh Nguyen, qemu-devel, newlib
Tomorrow I plan to push patches to mark the nios2 target as obsolete in
GCC 14.
Background: Intel has EOL'ed the Nios II processor IP and is now
directing their FPGA customers to a RISC-V platform instead.
https://www.intel.com/content/www/us/en/content-details/781327/intel-is-discontinuing-ip-ordering-codes-listed-in-pdn2312-for-nios-ii-ip.html
The Nios II hardware on loan from Intel that we were using for testing
at Mentor Graphics/Siemens was returned around the first of the year.
For some time we had been using QEMU to test the nios2-elf target, but
we never had a QEMU test harness set up that would boot the Linux
kernel, and user-mode QEMU on this target is too buggy/unmaintained to
use for primary testing. So the current situation is that none of the
listed maintainers for any of the GNU toolchain components have access
to a fully working test configuration any more, we have all moved on to
new jobs and different projects, Intel has also moved on to a different
platform, and our former contacts on Intel's Nios II team have moved on
as well. It seems like it's time to pull the plug.
Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
support from all toolchain components after the release is made. I'm
not sure there is an established process for obsoleting/removing support
in other components; besides binutils, GDB, and GLIBC, there's QEMU,
newlib/libgloss, and the Linux kernel. But, we need to get the ball
rolling somewhere.
I did do some GCC testing on both ELF and Linux Nios II targets around
the end of December and another round about a month ago, so I believe
GCC 14 will pretty much be in working order. Beyond that, though, I
think it would be better to remove support promptly, rather than having
it hang around in an unmaintained/untestable zombie state, getting ever
more bit-rotten.
-Sandra
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 3:27 Deprecation/removal of nios2 target support Sandra Loosemore
@ 2024-04-18 5:53 ` Thomas Huth
2024-04-18 12:49 ` Marek Vasut
2024-04-18 15:44 ` Joseph Myers
1 sibling, 1 reply; 10+ messages in thread
From: Thomas Huth @ 2024-04-18 5:53 UTC (permalink / raw)
To: Sandra Loosemore, gcc, binutils, gdb-patches, libc-alpha,
Chung-Lin Tang, andrew, Yao Qi
Cc: Dinh Nguyen, qemu-devel, newlib, Philippe Mathieu-Daudé,
Chris Wulff, Marek Vasut
On 18/04/2024 05.27, Sandra Loosemore wrote:
> Tomorrow I plan to push patches to mark the nios2 target as obsolete in GCC 14.
>
> Background: Intel has EOL'ed the Nios II processor IP and is now directing
> their FPGA customers to a RISC-V platform instead.
>
> https://www.intel.com/content/www/us/en/content-details/781327/intel-is-discontinuing-ip-ordering-codes-listed-in-pdn2312-for-nios-ii-ip.html
>
> The Nios II hardware on loan from Intel that we were using for testing at
> Mentor Graphics/Siemens was returned around the first of the year. For some
> time we had been using QEMU to test the nios2-elf target, but we never had a
> QEMU test harness set up that would boot the Linux kernel, and user-mode
> QEMU on this target is too buggy/unmaintained to use for primary testing.
> So the current situation is that none of the listed maintainers for any of
> the GNU toolchain components have access to a fully working test
> configuration any more, we have all moved on to new jobs and different
> projects, Intel has also moved on to a different platform, and our former
> contacts on Intel's Nios II team have moved on as well. It seems like it's
> time to pull the plug.
>
> Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
> support from all toolchain components after the release is made. I'm not
> sure there is an established process for obsoleting/removing support in
> other components; besides binutils, GDB, and GLIBC, there's QEMU,
> newlib/libgloss, and the Linux kernel. But, we need to get the ball rolling
> somewhere.
Thanks for the heads-up, Sandra! FWIW: QEMU already marked the nios2 target
as deprecated, too, and plans to remove it in version 9.1 (in autumn this year).
Thomas
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 5:53 ` Thomas Huth
@ 2024-04-18 12:49 ` Marek Vasut
0 siblings, 0 replies; 10+ messages in thread
From: Marek Vasut @ 2024-04-18 12:49 UTC (permalink / raw)
To: Thomas Huth, Sandra Loosemore, gcc, binutils, gdb-patches,
libc-alpha, Chung-Lin Tang, andrew, Yao Qi
Cc: Dinh Nguyen, qemu-devel, newlib, Philippe Mathieu-Daudé,
Chris Wulff
On 4/18/24 7:53 AM, Thomas Huth wrote:
> On 18/04/2024 05.27, Sandra Loosemore wrote:
>> Tomorrow I plan to push patches to mark the nios2 target as obsolete
>> in GCC 14.
>>
>> Background: Intel has EOL'ed the Nios II processor IP and is now
>> directing their FPGA customers to a RISC-V platform instead.
>>
>> https://www.intel.com/content/www/us/en/content-details/781327/intel-is-discontinuing-ip-ordering-codes-listed-in-pdn2312-for-nios-ii-ip.html
>>
>> The Nios II hardware on loan from Intel that we were using for testing
>> at Mentor Graphics/Siemens was returned around the first of the year.
>> For some time we had been using QEMU to test the nios2-elf target, but
>> we never had a QEMU test harness set up that would boot the Linux
>> kernel, and user-mode QEMU on this target is too buggy/unmaintained to
>> use for primary testing. So the current situation is that none of the
>> listed maintainers for any of the GNU toolchain components have access
>> to a fully working test configuration any more, we have all moved on
>> to new jobs and different projects, Intel has also moved on to a
>> different platform, and our former contacts on Intel's Nios II team
>> have moved on as well. It seems like it's time to pull the plug.
>>
>> Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and
>> remove support from all toolchain components after the release is
>> made. I'm not sure there is an established process for
>> obsoleting/removing support in other components; besides binutils,
>> GDB, and GLIBC, there's QEMU, newlib/libgloss, and the Linux kernel.
>> But, we need to get the ball rolling somewhere.
>
> Thanks for the heads-up, Sandra! FWIW: QEMU already marked the nios2
> target as deprecated, too, and plans to remove it in version 9.1 (in
> autumn this year).
Thank you and sorry for being inactive for so long around nios2.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 3:27 Deprecation/removal of nios2 target support Sandra Loosemore
2024-04-18 5:53 ` Thomas Huth
@ 2024-04-18 15:44 ` Joseph Myers
2024-04-18 15:57 ` Joel Sherrill
2024-04-18 18:41 ` Arnd Bergmann
1 sibling, 2 replies; 10+ messages in thread
From: Joseph Myers @ 2024-04-18 15:44 UTC (permalink / raw)
To: Sandra Loosemore
Cc: gcc, binutils, gdb-patches, libc-alpha, Chung-Lin Tang, andrew,
Yao Qi, Dinh Nguyen, qemu-devel, newlib, Arnd Bergmann
On Wed, 17 Apr 2024, Sandra Loosemore wrote:
> Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
> support from all toolchain components after the release is made. I'm not sure
> there is an established process for obsoleting/removing support in other
> components; besides binutils, GDB, and GLIBC, there's QEMU, newlib/libgloss,
> and the Linux kernel. But, we need to get the ball rolling somewhere.
CC:ing Arnd Bergmann regarding the obsolescence in the Linux kernel.
--
Joseph S. Myers
josmyers@redhat.com
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 15:44 ` Joseph Myers
@ 2024-04-18 15:57 ` Joel Sherrill
2024-04-18 16:06 ` Jeff Law
2024-04-18 18:41 ` Arnd Bergmann
1 sibling, 1 reply; 10+ messages in thread
From: Joel Sherrill @ 2024-04-18 15:57 UTC (permalink / raw)
To: Joseph Myers
Cc: Sandra Loosemore, gcc, binutils, gdb-patches, libc-alpha,
Chung-Lin Tang, andrew, Yao Qi, Dinh Nguyen, qemu-devel, newlib,
Arnd Bergmann
[-- Attachment #1: Type: text/plain, Size: 791 bytes --]
On Thu, Apr 18, 2024 at 10:46 AM Joseph Myers <josmyers@redhat.com> wrote:
> On Wed, 17 Apr 2024, Sandra Loosemore wrote:
>
> > Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
> > support from all toolchain components after the release is made. I'm
> not sure
> > there is an established process for obsoleting/removing support in other
> > components; besides binutils, GDB, and GLIBC, there's QEMU,
> newlib/libgloss,
> > and the Linux kernel. But, we need to get the ball rolling somewhere.
>
> CC:ing Arnd Bergmann regarding the obsolescence in the Linux kernel.
>
Just an FYI that the RTEMS Project plans to drop NIOS II support based
on what happens with the tooling.
--joel
>
> --
> Joseph S. Myers
> josmyers@redhat.com
>
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 15:57 ` Joel Sherrill
@ 2024-04-18 16:06 ` Jeff Law
2024-04-18 17:00 ` Sandra Loosemore
0 siblings, 1 reply; 10+ messages in thread
From: Jeff Law @ 2024-04-18 16:06 UTC (permalink / raw)
To: joel, Joseph Myers
Cc: Sandra Loosemore, gcc, binutils, gdb-patches, libc-alpha,
Chung-Lin Tang, andrew, Yao Qi, Dinh Nguyen, qemu-devel, newlib,
Arnd Bergmann
On 4/18/24 9:57 AM, Joel Sherrill wrote:
>
>
> On Thu, Apr 18, 2024 at 10:46 AM Joseph Myers <josmyers@redhat.com
> <mailto:josmyers@redhat.com>> wrote:
>
> On Wed, 17 Apr 2024, Sandra Loosemore wrote:
>
> > Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and
> remove
> > support from all toolchain components after the release is made.
> I'm not sure
> > there is an established process for obsoleting/removing support
> in other
> > components; besides binutils, GDB, and GLIBC, there's QEMU,
> newlib/libgloss,
> > and the Linux kernel. But, we need to get the ball rolling
> somewhere.
>
> CC:ing Arnd Bergmann regarding the obsolescence in the Linux kernel.
>
>
> Just an FYI that the RTEMS Project plans to drop NIOS II support based
> on what happens with the tooling.
ACK. Just one more note to the wider audience. I looked at QEMU's user
mode support for nios2 on/off over the last couple years. It never
seemed to work well enough be able to run the GCC testsuite reliably.
As a result, my tester builds nios2 and will run the testsuite, but all
the execution tests are only built, they're not actually run. It's been
fairly stable, but its not doing in-depth testing.
jeff
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 16:06 ` Jeff Law
@ 2024-04-18 17:00 ` Sandra Loosemore
0 siblings, 0 replies; 10+ messages in thread
From: Sandra Loosemore @ 2024-04-18 17:00 UTC (permalink / raw)
To: Jeff Law, joel, Joseph Myers
Cc: gcc, binutils, gdb-patches, libc-alpha, Chung-Lin Tang, andrew,
Yao Qi, Dinh Nguyen, qemu-devel, newlib, Arnd Bergmann
On 4/18/24 10:06, Jeff Law wrote:
>
> ACK. Just one more note to the wider audience. I looked at QEMU's user
> mode support for nios2 on/off over the last couple years. It never
> seemed to work well enough be able to run the GCC testsuite reliably.
I looked at the problems with the nios2 user-mode support in QEMU in
some detail a few years ago. It looked like the problem was that it had
copied the target syscall data structures from GLIBC and wasn't
accounting for 32-bit target/64-bit host differences -- this
particularly affected signal handling. I'm pretty sure we asked Intel
if they wanted this fixed and they were not interested in pursuing that.
The end result is that user-mode QEMU is not very useful for GLIBC or
GDB testing.
> As a result, my tester builds nios2 and will run the testsuite, but all
> the execution tests are only built, they're not actually run. It's been
> fairly stable, but its not doing in-depth testing.
Yes, as I noted in my previous message, there is nothing seriously wrong
with the nios2 GCC port at present; it just seems kind of pointless to
invest time in continuing to maintain it as a hobby when the
architecture is dead. I think legacy customers generally would prefer
to keep using the toolchains previously distributed by Altera/Intel or
Mentor/Siemens instead of trying to build a new bleeding-edge toolchain
from scratch, too.
-Sandra
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 15:44 ` Joseph Myers
2024-04-18 15:57 ` Joel Sherrill
@ 2024-04-18 18:41 ` Arnd Bergmann
2024-04-19 3:50 ` Marek Vasut
2024-04-19 12:05 ` Dinh Nguyen
1 sibling, 2 replies; 10+ messages in thread
From: Arnd Bergmann @ 2024-04-18 18:41 UTC (permalink / raw)
To: Joseph Myers, Sandra Loosemore
Cc: gcc, binutils, gdb-patches, Xi Ruoyao, Chung-Lin Tang, andrew,
Yao Qi, Dinh Nguyen, qemu-devel, newlib, Andreas Oetken,
Bernd Weiberg, Marek Vasut
On Thu, Apr 18, 2024, at 17:44, Joseph Myers wrote:
> On Wed, 17 Apr 2024, Sandra Loosemore wrote:
>
>> Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
>> support from all toolchain components after the release is made. I'm not sure
>> there is an established process for obsoleting/removing support in other
>> components; besides binutils, GDB, and GLIBC, there's QEMU, newlib/libgloss,
>> and the Linux kernel. But, we need to get the ball rolling somewhere.
>
> CC:ing Arnd Bergmann regarding the obsolescence in the Linux kernel.
We have not yet marked nios2 as deprecated in the kernel, but that
is mostly because the implementation does not get in the way too
much and Dinh Nguyen is still around as a maintainer and merging
bugfixes.
Almost all nios2 kernel changes I see in the past decade have been
done blindly without testing on hardware, either for treewide
changes, or by code inspection. The only notable exceptions I could
find are from Andreas Oetken and Bernd Weiberg at Siemens and
from Marek Vasut (all added to Cc in case they have something to add).
We should probably remove nios2 from the kernel in the near future,
but even if we decide not to, I think deprecating it from gcc is the
right idea: If there are a few remaining users that still plan
to update their kernels, gcc-14 will still be able to build new
kernels for several years.
Arnd
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 18:41 ` Arnd Bergmann
@ 2024-04-19 3:50 ` Marek Vasut
2024-04-19 12:05 ` Dinh Nguyen
1 sibling, 0 replies; 10+ messages in thread
From: Marek Vasut @ 2024-04-19 3:50 UTC (permalink / raw)
To: Arnd Bergmann, Joseph Myers, Sandra Loosemore
Cc: gcc, binutils, gdb-patches, Xi Ruoyao, Chung-Lin Tang, andrew,
Yao Qi, Dinh Nguyen, qemu-devel, newlib, Andreas Oetken,
Bernd Weiberg
On 4/18/24 8:41 PM, Arnd Bergmann wrote:
> On Thu, Apr 18, 2024, at 17:44, Joseph Myers wrote:
>> On Wed, 17 Apr 2024, Sandra Loosemore wrote:
>>
>>> Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
>>> support from all toolchain components after the release is made. I'm not sure
>>> there is an established process for obsoleting/removing support in other
>>> components; besides binutils, GDB, and GLIBC, there's QEMU, newlib/libgloss,
>>> and the Linux kernel. But, we need to get the ball rolling somewhere.
>>
>> CC:ing Arnd Bergmann regarding the obsolescence in the Linux kernel.
>
> We have not yet marked nios2 as deprecated in the kernel, but that
> is mostly because the implementation does not get in the way too
> much and Dinh Nguyen is still around as a maintainer and merging
> bugfixes.
>
> Almost all nios2 kernel changes I see in the past decade have been
> done blindly without testing on hardware, either for treewide
> changes, or by code inspection. The only notable exceptions I could
> find are from Andreas Oetken and Bernd Weiberg at Siemens and
> from Marek Vasut (all added to Cc in case they have something to add).
I might still have the 10M50 board, but it wasn't powered for a very
long time.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Deprecation/removal of nios2 target support
2024-04-18 18:41 ` Arnd Bergmann
2024-04-19 3:50 ` Marek Vasut
@ 2024-04-19 12:05 ` Dinh Nguyen
1 sibling, 0 replies; 10+ messages in thread
From: Dinh Nguyen @ 2024-04-19 12:05 UTC (permalink / raw)
To: Arnd Bergmann, Joseph Myers, Sandra Loosemore
Cc: gcc, binutils, gdb-patches, Xi Ruoyao, Chung-Lin Tang, andrew,
Yao Qi, qemu-devel, newlib, Andreas Oetken, Bernd Weiberg,
Marek Vasut
On 4/18/24 13:41, Arnd Bergmann wrote:
> On Thu, Apr 18, 2024, at 17:44, Joseph Myers wrote:
>> On Wed, 17 Apr 2024, Sandra Loosemore wrote:
>>
>>> Therefore I'd like to mark Nios II as obsolete in GCC 14 now, and remove
>>> support from all toolchain components after the release is made. I'm not sure
>>> there is an established process for obsoleting/removing support in other
>>> components; besides binutils, GDB, and GLIBC, there's QEMU, newlib/libgloss,
>>> and the Linux kernel. But, we need to get the ball rolling somewhere.
>>
>> CC:ing Arnd Bergmann regarding the obsolescence in the Linux kernel.
>
> We have not yet marked nios2 as deprecated in the kernel, but that
> is mostly because the implementation does not get in the way too
> much and Dinh Nguyen is still around as a maintainer and merging
> bugfixes.
>
> Almost all nios2 kernel changes I see in the past decade have been
> done blindly without testing on hardware, either for treewide
> changes, or by code inspection. The only notable exceptions I could
> find are from Andreas Oetken and Bernd Weiberg at Siemens and
> from Marek Vasut (all added to Cc in case they have something to add).
>
> We should probably remove nios2 from the kernel in the near future,
> but even if we decide not to, I think deprecating it from gcc is the
> right idea: If there are a few remaining users that still plan
> to update their kernels, gcc-14 will still be able to build new
> kernels for several years.
>
I'm planning to do this soon.
Dinh
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2024-04-19 12:05 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-18 3:27 Deprecation/removal of nios2 target support Sandra Loosemore
2024-04-18 5:53 ` Thomas Huth
2024-04-18 12:49 ` Marek Vasut
2024-04-18 15:44 ` Joseph Myers
2024-04-18 15:57 ` Joel Sherrill
2024-04-18 16:06 ` Jeff Law
2024-04-18 17:00 ` Sandra Loosemore
2024-04-18 18:41 ` Arnd Bergmann
2024-04-19 3:50 ` Marek Vasut
2024-04-19 12:05 ` Dinh Nguyen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).