linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Question about ARM FASTFPE
@ 2019-07-10  4:30 Masahiro Yamada
  2019-07-10  8:23 ` Russell King - ARM Linux admin
  0 siblings, 1 reply; 7+ messages in thread
From: Masahiro Yamada @ 2019-07-10  4:30 UTC (permalink / raw)
  To: Russell King, linux-arm-kernel, Olof Johansson, Arnd Bergmann
  Cc: Linux Kernel Mailing List, masahiroy

Hi.

I have a question about the following code
in arch/arm/Makefile:


# Do we have FASTFPE?
FASTFPE :=arch/arm/fastfpe
ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
FASTFPE_OBJ :=$(FASTFPE)/
endif


Since arch/arm/fastfpe does not exist in the upstream tree,
I guess this is a hook to compile downstream source code.

If a user puts arch/arm/fastfpe/ into their local source tree,
Kbuild is supposed to compile the files in it.

Is this correct?


If so, I am afraid this would not work for O= building.

$(wildcard ...) checks if this directory exists in the *objtree*,
while scripts/Makefile.build needs to include
arch/arm/fastfpe/Makefile from *srctree*.

I think the correct code should be like follows:

# Do we have FASTFPE?
FASTFPE :=arch/arm/fastfpe
ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
FASTFPE_OBJ :=$(FASTFPE)/
endif


Having said that, I am not sure this code is worth fixing.

This code was added around v2.5.1.9,
and the actual source code for arch/arm/fastfpe/
was never upstreamed.


In general, we do not care much about the downstream code support.

What should we do about this?
Fix and keep maintaining? Delete?


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Question about ARM FASTFPE
  2019-07-10  4:30 Question about ARM FASTFPE Masahiro Yamada
@ 2019-07-10  8:23 ` Russell King - ARM Linux admin
  2019-07-10  9:54   ` Masahiro Yamada
  0 siblings, 1 reply; 7+ messages in thread
From: Russell King - ARM Linux admin @ 2019-07-10  8:23 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, Olof Johansson, Arnd Bergmann,
	Linux Kernel Mailing List, masahiroy

On Wed, Jul 10, 2019 at 01:30:24PM +0900, Masahiro Yamada wrote:
> Hi.
> 
> I have a question about the following code
> in arch/arm/Makefile:
> 
> 
> # Do we have FASTFPE?
> FASTFPE :=arch/arm/fastfpe
> ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
> FASTFPE_OBJ :=$(FASTFPE)/
> endif
> 
> 
> Since arch/arm/fastfpe does not exist in the upstream tree,
> I guess this is a hook to compile downstream source code.
> 
> If a user puts arch/arm/fastfpe/ into their local source tree,
> Kbuild is supposed to compile the files in it.
> 
> Is this correct?
> 
> 
> If so, I am afraid this would not work for O= building.
> 
> $(wildcard ...) checks if this directory exists in the *objtree*,
> while scripts/Makefile.build needs to include
> arch/arm/fastfpe/Makefile from *srctree*.
> 
> I think the correct code should be like follows:
> 
> # Do we have FASTFPE?
> FASTFPE :=arch/arm/fastfpe
> ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
> FASTFPE_OBJ :=$(FASTFPE)/
> endif
> 
> 
> Having said that, I am not sure this code is worth fixing.
> 
> This code was added around v2.5.1.9,

... as a _result_ of a discussion and deciding not to upstream it,
but to still allow its use.  Fastfpe is faster than nwfpe (so has
a definite advantage for FP intensive applications) but we decided
we didn't want two FP emulation codes in the kernel.  However, if
someone wants to use it, it has to be built into the kernel, it
can't be modular.

> and the actual source code for arch/arm/fastfpe/
> was never upstreamed.
> 
> 
> In general, we do not care much about the downstream code support.
> 
> What should we do about this?
> Fix and keep maintaining? Delete?
> 
> 
> -- 
> Best Regards
> Masahiro Yamada
> 

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Question about ARM FASTFPE
  2019-07-10  8:23 ` Russell King - ARM Linux admin
@ 2019-07-10  9:54   ` Masahiro Yamada
  2019-07-10 10:02     ` Russell King - ARM Linux admin
  0 siblings, 1 reply; 7+ messages in thread
From: Masahiro Yamada @ 2019-07-10  9:54 UTC (permalink / raw)
  To: Russell King - ARM Linux admin
  Cc: linux-arm-kernel, Olof Johansson, Arnd Bergmann,
	Linux Kernel Mailing List

On Wed, Jul 10, 2019 at 5:23 PM Russell King - ARM Linux admin
<linux@armlinux.org.uk> wrote:
>
> On Wed, Jul 10, 2019 at 01:30:24PM +0900, Masahiro Yamada wrote:
> > Hi.
> >
> > I have a question about the following code
> > in arch/arm/Makefile:
> >
> >
> > # Do we have FASTFPE?
> > FASTFPE :=arch/arm/fastfpe
> > ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
> > FASTFPE_OBJ :=$(FASTFPE)/
> > endif
> >
> >
> > Since arch/arm/fastfpe does not exist in the upstream tree,
> > I guess this is a hook to compile downstream source code.
> >
> > If a user puts arch/arm/fastfpe/ into their local source tree,
> > Kbuild is supposed to compile the files in it.
> >
> > Is this correct?
> >
> >
> > If so, I am afraid this would not work for O= building.
> >
> > $(wildcard ...) checks if this directory exists in the *objtree*,
> > while scripts/Makefile.build needs to include
> > arch/arm/fastfpe/Makefile from *srctree*.
> >
> > I think the correct code should be like follows:
> >
> > # Do we have FASTFPE?
> > FASTFPE :=arch/arm/fastfpe
> > ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
> > FASTFPE_OBJ :=$(FASTFPE)/
> > endif
> >
> >
> > Having said that, I am not sure this code is worth fixing.
> >
> > This code was added around v2.5.1.9,
>
> ... as a _result_ of a discussion and deciding not to upstream it,
> but to still allow its use.  Fastfpe is faster than nwfpe (so has
> a definite advantage for FP intensive applications) but we decided
> we didn't want two FP emulation codes in the kernel.  However, if
> someone wants to use it, it has to be built into the kernel, it
> can't be modular.


IMHO, the entry in Makefile and Kconfig should be removed
from upstream, then moved to a part of the fastfpe local patch.



-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Question about ARM FASTFPE
  2019-07-10  9:54   ` Masahiro Yamada
@ 2019-07-10 10:02     ` Russell King - ARM Linux admin
  2019-07-10 10:26       ` Russell King - ARM Linux admin
  2019-07-10 10:43       ` Masahiro Yamada
  0 siblings, 2 replies; 7+ messages in thread
From: Russell King - ARM Linux admin @ 2019-07-10 10:02 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, Olof Johansson, Arnd Bergmann,
	Linux Kernel Mailing List

On Wed, Jul 10, 2019 at 06:54:06PM +0900, Masahiro Yamada wrote:
> On Wed, Jul 10, 2019 at 5:23 PM Russell King - ARM Linux admin
> <linux@armlinux.org.uk> wrote:
> >
> > On Wed, Jul 10, 2019 at 01:30:24PM +0900, Masahiro Yamada wrote:
> > > Hi.
> > >
> > > I have a question about the following code
> > > in arch/arm/Makefile:
> > >
> > >
> > > # Do we have FASTFPE?
> > > FASTFPE :=arch/arm/fastfpe
> > > ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
> > > FASTFPE_OBJ :=$(FASTFPE)/
> > > endif
> > >
> > >
> > > Since arch/arm/fastfpe does not exist in the upstream tree,
> > > I guess this is a hook to compile downstream source code.
> > >
> > > If a user puts arch/arm/fastfpe/ into their local source tree,
> > > Kbuild is supposed to compile the files in it.
> > >
> > > Is this correct?
> > >
> > >
> > > If so, I am afraid this would not work for O= building.
> > >
> > > $(wildcard ...) checks if this directory exists in the *objtree*,
> > > while scripts/Makefile.build needs to include
> > > arch/arm/fastfpe/Makefile from *srctree*.
> > >
> > > I think the correct code should be like follows:
> > >
> > > # Do we have FASTFPE?
> > > FASTFPE :=arch/arm/fastfpe
> > > ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
> > > FASTFPE_OBJ :=$(FASTFPE)/
> > > endif
> > >
> > >
> > > Having said that, I am not sure this code is worth fixing.
> > >
> > > This code was added around v2.5.1.9,
> >
> > ... as a _result_ of a discussion and deciding not to upstream it,
> > but to still allow its use.  Fastfpe is faster than nwfpe (so has
> > a definite advantage for FP intensive applications) but we decided
> > we didn't want two FP emulation codes in the kernel.  However, if
> > someone wants to use it, it has to be built into the kernel, it
> > can't be modular.
> 
> 
> IMHO, the entry in Makefile and Kconfig should be removed
> from upstream, then moved to a part of the fastfpe local patch.

Nope.  It means that rather than it being merely a drop-in, it has
to be maintained against changes to both these files.  Sorry, that's
more work.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Question about ARM FASTFPE
  2019-07-10 10:02     ` Russell King - ARM Linux admin
@ 2019-07-10 10:26       ` Russell King - ARM Linux admin
  2019-07-10 10:43       ` Masahiro Yamada
  1 sibling, 0 replies; 7+ messages in thread
From: Russell King - ARM Linux admin @ 2019-07-10 10:26 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Olof Johansson, Arnd Bergmann, linux-arm-kernel,
	Linux Kernel Mailing List

On Wed, Jul 10, 2019 at 11:02:06AM +0100, Russell King - ARM Linux admin wrote:
> On Wed, Jul 10, 2019 at 06:54:06PM +0900, Masahiro Yamada wrote:
> > On Wed, Jul 10, 2019 at 5:23 PM Russell King - ARM Linux admin
> > <linux@armlinux.org.uk> wrote:
> > > On Wed, Jul 10, 2019 at 01:30:24PM +0900, Masahiro Yamada wrote:
> > > > $(wildcard ...) checks if this directory exists in the *objtree*,
> > > > while scripts/Makefile.build needs to include
> > > > arch/arm/fastfpe/Makefile from *srctree*.
> > > >
> > > > I think the correct code should be like follows:
> > > >
> > > > # Do we have FASTFPE?
> > > > FASTFPE :=arch/arm/fastfpe
> > > > ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
> > > > FASTFPE_OBJ :=$(FASTFPE)/
> > > > endif

That does indeed work for split object builds.
 
-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Question about ARM FASTFPE
  2019-07-10 10:02     ` Russell King - ARM Linux admin
  2019-07-10 10:26       ` Russell King - ARM Linux admin
@ 2019-07-10 10:43       ` Masahiro Yamada
  2019-07-10 10:46         ` Russell King - ARM Linux admin
  1 sibling, 1 reply; 7+ messages in thread
From: Masahiro Yamada @ 2019-07-10 10:43 UTC (permalink / raw)
  To: Russell King - ARM Linux admin
  Cc: linux-arm-kernel, Olof Johansson, Arnd Bergmann,
	Linux Kernel Mailing List

On Wed, Jul 10, 2019 at 7:02 PM Russell King - ARM Linux admin
<linux@armlinux.org.uk> wrote:
>
> On Wed, Jul 10, 2019 at 06:54:06PM +0900, Masahiro Yamada wrote:
> > On Wed, Jul 10, 2019 at 5:23 PM Russell King - ARM Linux admin
> > <linux@armlinux.org.uk> wrote:
> > >
> > > On Wed, Jul 10, 2019 at 01:30:24PM +0900, Masahiro Yamada wrote:
> > > > Hi.
> > > >
> > > > I have a question about the following code
> > > > in arch/arm/Makefile:
> > > >
> > > >
> > > > # Do we have FASTFPE?
> > > > FASTFPE :=arch/arm/fastfpe
> > > > ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
> > > > FASTFPE_OBJ :=$(FASTFPE)/
> > > > endif
> > > >
> > > >
> > > > Since arch/arm/fastfpe does not exist in the upstream tree,
> > > > I guess this is a hook to compile downstream source code.
> > > >
> > > > If a user puts arch/arm/fastfpe/ into their local source tree,
> > > > Kbuild is supposed to compile the files in it.
> > > >
> > > > Is this correct?
> > > >
> > > >
> > > > If so, I am afraid this would not work for O= building.
> > > >
> > > > $(wildcard ...) checks if this directory exists in the *objtree*,
> > > > while scripts/Makefile.build needs to include
> > > > arch/arm/fastfpe/Makefile from *srctree*.
> > > >
> > > > I think the correct code should be like follows:
> > > >
> > > > # Do we have FASTFPE?
> > > > FASTFPE :=arch/arm/fastfpe
> > > > ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
> > > > FASTFPE_OBJ :=$(FASTFPE)/
> > > > endif
> > > >
> > > >
> > > > Having said that, I am not sure this code is worth fixing.
> > > >
> > > > This code was added around v2.5.1.9,
> > >
> > > ... as a _result_ of a discussion and deciding not to upstream it,
> > > but to still allow its use.  Fastfpe is faster than nwfpe (so has
> > > a definite advantage for FP intensive applications) but we decided
> > > we didn't want two FP emulation codes in the kernel.  However, if
> > > someone wants to use it, it has to be built into the kernel, it
> > > can't be modular.
> >
> >
> > IMHO, the entry in Makefile and Kconfig should be removed
> > from upstream, then moved to a part of the fastfpe local patch.
>
> Nope.  It means that rather than it being merely a drop-in, it has
> to be maintained against changes to both these files.  Sorry, that's
> more work.


This is the motivation of upstreaming for everybody.

We never know the code that does not exist in upstream.
Downstream code must pay maintenance cost for ever.


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Question about ARM FASTFPE
  2019-07-10 10:43       ` Masahiro Yamada
@ 2019-07-10 10:46         ` Russell King - ARM Linux admin
  0 siblings, 0 replies; 7+ messages in thread
From: Russell King - ARM Linux admin @ 2019-07-10 10:46 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, Olof Johansson, Arnd Bergmann,
	Linux Kernel Mailing List

On Wed, Jul 10, 2019 at 07:43:19PM +0900, Masahiro Yamada wrote:
> On Wed, Jul 10, 2019 at 7:02 PM Russell King - ARM Linux admin
> <linux@armlinux.org.uk> wrote:
> >
> > On Wed, Jul 10, 2019 at 06:54:06PM +0900, Masahiro Yamada wrote:
> > > On Wed, Jul 10, 2019 at 5:23 PM Russell King - ARM Linux admin
> > > <linux@armlinux.org.uk> wrote:
> > > >
> > > > On Wed, Jul 10, 2019 at 01:30:24PM +0900, Masahiro Yamada wrote:
> > > > > Hi.
> > > > >
> > > > > I have a question about the following code
> > > > > in arch/arm/Makefile:
> > > > >
> > > > >
> > > > > # Do we have FASTFPE?
> > > > > FASTFPE :=arch/arm/fastfpe
> > > > > ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
> > > > > FASTFPE_OBJ :=$(FASTFPE)/
> > > > > endif
> > > > >
> > > > >
> > > > > Since arch/arm/fastfpe does not exist in the upstream tree,
> > > > > I guess this is a hook to compile downstream source code.
> > > > >
> > > > > If a user puts arch/arm/fastfpe/ into their local source tree,
> > > > > Kbuild is supposed to compile the files in it.
> > > > >
> > > > > Is this correct?
> > > > >
> > > > >
> > > > > If so, I am afraid this would not work for O= building.
> > > > >
> > > > > $(wildcard ...) checks if this directory exists in the *objtree*,
> > > > > while scripts/Makefile.build needs to include
> > > > > arch/arm/fastfpe/Makefile from *srctree*.
> > > > >
> > > > > I think the correct code should be like follows:
> > > > >
> > > > > # Do we have FASTFPE?
> > > > > FASTFPE :=arch/arm/fastfpe
> > > > > ifneq ($(wildcard $(srctree)/$(FASTFPE)),)
> > > > > FASTFPE_OBJ :=$(FASTFPE)/
> > > > > endif
> > > > >
> > > > >
> > > > > Having said that, I am not sure this code is worth fixing.
> > > > >
> > > > > This code was added around v2.5.1.9,
> > > >
> > > > ... as a _result_ of a discussion and deciding not to upstream it,
> > > > but to still allow its use.  Fastfpe is faster than nwfpe (so has
> > > > a definite advantage for FP intensive applications) but we decided
> > > > we didn't want two FP emulation codes in the kernel.  However, if
> > > > someone wants to use it, it has to be built into the kernel, it
> > > > can't be modular.
> > >
> > >
> > > IMHO, the entry in Makefile and Kconfig should be removed
> > > from upstream, then moved to a part of the fastfpe local patch.
> >
> > Nope.  It means that rather than it being merely a drop-in, it has
> > to be maintained against changes to both these files.  Sorry, that's
> > more work.
> 
> 
> This is the motivation of upstreaming for everybody.
> 
> We never know the code that does not exist in upstream.
> Downstream code must pay maintenance cost for ever.

I'm the maintainer of the files in question.  I also care-take
fastfpe.  It's my choice to make.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-07-10 10:46 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-10  4:30 Question about ARM FASTFPE Masahiro Yamada
2019-07-10  8:23 ` Russell King - ARM Linux admin
2019-07-10  9:54   ` Masahiro Yamada
2019-07-10 10:02     ` Russell King - ARM Linux admin
2019-07-10 10:26       ` Russell King - ARM Linux admin
2019-07-10 10:43       ` Masahiro Yamada
2019-07-10 10:46         ` Russell King - ARM Linux admin

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 NNTP newsgroup(s).