From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?iso-8859-1?Q?M=E5ns_Rullg=E5rd?= Subject: Re: [PATCH] x86: Deprecate a.out support Date: Mon, 11 Mar 2019 22:06:19 +0000 Message-ID: References: <20190305091904.GB8256@zn.tnic> <20190305122218.GD13380@bombadil.infradead.org> <20190305134347.4be2449c@alans-desktop> <20190305145717.GD8256@zn.tnic> <20190305173134.GE8256@zn.tnic> <20190305181138.GG8256@zn.tnic> <20190305181808.GH8256@zn.tnic> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8BIT Return-path: In-Reply-To: (Arnd Bergmann's message of "Mon, 11 Mar 2019 22:34:26 +0100") Sender: linux-kernel-owner@vger.kernel.org To: Arnd Bergmann Cc: Linus Torvalds , Matt Turner , Borislav Petkov , Alan Cox , Matthew Wilcox , Jann Horn , Al Viro , Thomas Gleixner , kernel list , linux-fsdevel , the arch/x86 maintainers , Linux API , Andrew Morton , Richard Weinberger , Anton Ivanov , linux-alpha , linux-m68k List-Id: linux-api@vger.kernel.org Arnd Bergmann writes: > On Mon, Mar 11, 2019 at 8:47 PM Måns Rullgård wrote: >> Linus Torvalds writes: >> > On Mon, Mar 11, 2019 at 11:08 AM Måns Rullgård wrote: >> >> >> >> The latest version I have is 5.1, and that uses ECOFF. >> > >> > ECOFF _is_ a.out as far as Linux is concerned. >> > >> > So Linux basically treats ECOFF as "regular a.out with just some >> > header extensions". >> > >> > We don't have any specific support for ECOFF. >> > >> > I _think_. Again, it's been years and years. >> >> Right, which is why killing a.out entirely would have the unfortunate >> effect of also removing the OSF/1 compatibility on Alpha. >> >> If we are to support Alpha as an architecture at all, it makes sense to >> support the things people actually use it for. >> >> Now, personally I can live without it. I just don't like to see >> features removed without due consideration. > > The main historic use case I've heard of was running Netscape > Navigator on Alpha Linux, before there was an open source version. > Doing this today to connect to the open internet is probably > a bit pointless, but there may be other use cases. Once upon a time, I used it to run Matlab. > Looking at the system call table in the kernel > (arch/alpha/kernel/syscalls/syscall.tbl), we seem to support a > specific subset that was required for a set of applications, and > not much more. Old system calls (osf_old_open, osf_execve, > osf_old_sigaction) are listed but not implemented, and the same > is true for most of the later calls (osf_fuser, osf_sigsendset, > osf_waitid, osf_signal, ...), just the ones in the middle are there. > This would also indicate that it never really worked as a > general-purpose emulation layer but was only there for a specific > set of applications. It works for many applications, though I did have to add a few syscalls myself (yes, I sent patches). > Another data point I have is that osf1 emulation was broken > between linux-4.13 and linux-4.16 without anyone noticing, see > 47669fb6b595 ("alpha: osf_sys.c: fix put_tv32 regression"). That's interesting, but it doesn't mean nobody is using it. I tend to run the LTS branches and switch to a new one only once it seems to have settled a bit, so when 4.16 was released, I was probably still running 4.9. I don't think I'm the only one using this strategy. -- Måns Rullgård