Re: [PATCH v2 0/4] Introduce and use absolute_pointer macro
From: Ulrich Teichert <hidden>
Date: 2021-09-18 20:26:45
Also in:
lkml, netdev
Hi,
quoted
quoted
On Thu, Sep 16, 2021 at 11:35:36AM -0700, Linus Torvalds wrote:quoted
Naah. I think the Jensen actually had an ISA slot. Came with a whopping 8MB too, so the ISA DMA should work just fine. Or maybe it was EISA only? I really don't remember.It's EISA only. I've made some pictures of a somewhat dusty inside of a Jensen with 4 EISA cards (from bottom to top: SCSI, video, 2x network):Ok. Looking around the config options, there _are_ systems with ISA slots, but it's not the old Jensen one. It's apparently some evaluation boards but also the "AlphaPC64" one. So we do want CONFIG_ISA for alpha, even if not Jensen. (I forget which alpha I had. For some reason I want to think I had an EISA machine and probably Jensen. Maybe upgraded to a 164 later?)
Well, as this was way back in 1995, it was perhaps a Multia? Also named UDB, a small "booksize" model.
quoted
I could not get a recent kernel to boot, but it's booting ancient kernels just fine: Linux version 2.4.27-2-generic (tretkowski@bastille) (gcc version 3.3.5 (Debian 1:3.3.5-12)) #1 Sun May 29 18:40:58 UTC 2005Ouch. Without having some kind of bisection, I guess we'll never know. And I assume it's not really been tested since, so it could be multiple reasons, including compiler updates causing dodgy code to not work etc etc.
Well, I doubt that bisecting will be practical going that way back.
quoted
While we're at it, during my vain attempts to get new kernels to boot, I tried to disable PCI support to make the kernels smaller (after all, the Jensen has only EISA, so what good would PCI support for?) and got it to compile with the attached patch (which fixes some warnings, too).Can you send me your Jensen config?
Sure, attached here. I don't know if it helps - I can't tell you why I used 4.18-rc5 for it, that was in 2018... Oh man, I am spending too much time at work...
I do not see why you should be using that horrible __EXERN_INLINE. It will cause gcc to sometimes not inline at all, and not generate the out-of-line body either. Sometimes that is what you want: you want to generate one single body of the function, and particularly one that is _different_ from the inlining case (ie for inlining you want to do the simple thing, for out-of-line you do something fancier). But that isn't the case here, so this looks like a workaround for something else. But this code does end up using preprocessor concatenation etc, so I might be missing some case.
I was just tinkering with it to get it compiled without warning, I certainly didn't get the big picture :-/ HTH, Uli -- Dipl. Inf. Ulrich Teichert|e-mail: Ulrich.Teichert@gmx.de | Listening to: Stormweg 24 |Eat Lipstick: Dirty Little Secret, The Baboon Show: 24539 Neumuenster, Germany|Work Work Work, The Bellrays: Bad Reaction