* [PATCH] mk: remove module compilation noise
@ 2016-09-08 12:33 Ferruh Yigit
2016-09-22 23:35 ` Thomas Monjalon
0 siblings, 1 reply; 8+ messages in thread
From: Ferruh Yigit @ 2016-09-08 12:33 UTC (permalink / raw)
To: dev; +Cc: Thomas Monjalon
Following log generated by Linux kernel Makefiles:
(cat /dev/null; echo
kernel/.../build/lib/librte_eal/linuxapp/igb_uio/igb_uio.ko;) >
.../build/lib/librte_eal/linuxapp/igb_uio/modules.order
This happens because $(Q) used for both Linux and DPDK makefiles and
DPDK unsets this variable when V=0, which makes Linux verbose.
More details:
rte.modules calls kernel makefile with V=0 argument
kernel makefile includes igb_uio/Makefile, which includes rte.vars.mk
rte.vars.mk unsets Q when V=0
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
mk/rte.module.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mk/rte.module.mk b/mk/rte.module.mk
index 53ed4fe..10cb667 100644
--- a/mk/rte.module.mk
+++ b/mk/rte.module.mk
@@ -78,7 +78,7 @@ build: _postbuild
$(MODULE).ko: $(SRCS_LINKS)
@if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi
@$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \
- CC="$(KERNELCC)" CROSS_COMPILE=$(CROSS) V=$(if $V,1,0)
+ CC="$(KERNELCC)" CROSS_COMPILE=$(CROSS) V=$(if $V,1,)
# install module in $(RTE_OUTPUT)/kmod
$(RTE_OUTPUT)/kmod/$(MODULE).ko: $(MODULE).ko
--
2.7.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] mk: remove module compilation noise
2016-09-08 12:33 [PATCH] mk: remove module compilation noise Ferruh Yigit
@ 2016-09-22 23:35 ` Thomas Monjalon
2016-09-22 23:42 ` [PATCH] mk: fix verbosity zero Thomas Monjalon
2016-09-23 9:04 ` [PATCH] mk: remove module compilation noise Ferruh Yigit
0 siblings, 2 replies; 8+ messages in thread
From: Thomas Monjalon @ 2016-09-22 23:35 UTC (permalink / raw)
To: Ferruh Yigit; +Cc: dev
2016-09-08 13:33, Ferruh Yigit:
> Following log generated by Linux kernel Makefiles:
> (cat /dev/null; echo
> kernel/.../build/lib/librte_eal/linuxapp/igb_uio/igb_uio.ko;) >
> .../build/lib/librte_eal/linuxapp/igb_uio/modules.order
>
> This happens because $(Q) used for both Linux and DPDK makefiles and
> DPDK unsets this variable when V=0, which makes Linux verbose.
>
> More details:
> rte.modules calls kernel makefile with V=0 argument
> kernel makefile includes igb_uio/Makefile, which includes rte.vars.mk
> rte.vars.mk unsets Q when V=0
Yes good analysis.
Another consequence is that V=0 is equivalent to V=1 (verbose mode).
I think it is better to fix the latter issue. I'll send a patch.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] mk: fix verbosity zero
2016-09-22 23:35 ` Thomas Monjalon
@ 2016-09-22 23:42 ` Thomas Monjalon
2016-09-23 9:06 ` Ferruh Yigit
2016-09-23 9:33 ` Ferruh Yigit
2016-09-23 9:04 ` [PATCH] mk: remove module compilation noise Ferruh Yigit
1 sibling, 2 replies; 8+ messages in thread
From: Thomas Monjalon @ 2016-09-22 23:42 UTC (permalink / raw)
To: dev; +Cc: Ferruh Yigit
Verbosity is considered enabled when $V is not empty.
So V=0 and V=1 are equivalent.
It is fixed by unsetting V when it is 0.
A side effect is to fix kernel module compilation verbosity
which is set to 0 when V is empty.
Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
mk/rte.sdkroot.mk | 3 +++
mk/rte.vars.mk | 3 +++
2 files changed, 6 insertions(+)
diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index 55a9d8a..04ad523 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -34,6 +34,9 @@ MAKEFLAGS += --no-print-directory
# define Q to '@' or not. $(Q) is used to prefix all shell commands to
# be executed silently.
Q=@
+ifeq '$V' '0'
+override V=
+endif
ifdef V
ifeq ("$(origin V)", "command line")
Q=
diff --git a/mk/rte.vars.mk b/mk/rte.vars.mk
index 28982a5..c240a0e 100644
--- a/mk/rte.vars.mk
+++ b/mk/rte.vars.mk
@@ -46,6 +46,9 @@ endif
# define Q to '@' or not. $(Q) is used to prefix all shell commands to
# be executed silently.
Q=@
+ifeq '$V' '0'
+override V=
+endif
ifdef V
ifeq ("$(origin V)", "command line")
Q=
--
2.7.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH] mk: fix verbosity zero
2016-09-22 23:42 ` [PATCH] mk: fix verbosity zero Thomas Monjalon
@ 2016-09-23 9:06 ` Ferruh Yigit
2016-09-23 9:30 ` Thomas Monjalon
2016-09-23 9:33 ` Ferruh Yigit
1 sibling, 1 reply; 8+ messages in thread
From: Ferruh Yigit @ 2016-09-23 9:06 UTC (permalink / raw)
To: Thomas Monjalon, dev
On 9/23/2016 12:42 AM, Thomas Monjalon wrote:
> Verbosity is considered enabled when $V is not empty.
> So V=0 and V=1 are equivalent.
> It is fixed by unsetting V when it is 0.
>
> A side effect is to fix kernel module compilation verbosity
> which is set to 0 when V is empty.
>
> Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
> ---
> mk/rte.sdkroot.mk | 3 +++
> mk/rte.vars.mk | 3 +++
> 2 files changed, 6 insertions(+)
>
> diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
> index 55a9d8a..04ad523 100644
> --- a/mk/rte.sdkroot.mk
> +++ b/mk/rte.sdkroot.mk
> @@ -34,6 +34,9 @@ MAKEFLAGS += --no-print-directory
> # define Q to '@' or not. $(Q) is used to prefix all shell commands to
> # be executed silently.
> Q=@
> +ifeq '$V' '0'
> +override V=
> +endif
> ifdef V
Why not simply:
-ifdef V
+ifeq ($(V),1)
> ifeq ("$(origin V)", "command line")
> Q=
> diff --git a/mk/rte.vars.mk b/mk/rte.vars.mk
> index 28982a5..c240a0e 100644
> --- a/mk/rte.vars.mk
> +++ b/mk/rte.vars.mk
> @@ -46,6 +46,9 @@ endif
> # define Q to '@' or not. $(Q) is used to prefix all shell commands to
> # be executed silently.
> Q=@
> +ifeq '$V' '0'
> +override V=
> +endif
> ifdef V
> ifeq ("$(origin V)", "command line")
> Q=
>
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH] mk: fix verbosity zero
2016-09-23 9:06 ` Ferruh Yigit
@ 2016-09-23 9:30 ` Thomas Monjalon
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Monjalon @ 2016-09-23 9:30 UTC (permalink / raw)
To: Ferruh Yigit; +Cc: dev
2016-09-23 10:06, Ferruh Yigit:
> On 9/23/2016 12:42 AM, Thomas Monjalon wrote:
> > Verbosity is considered enabled when $V is not empty.
> > So V=0 and V=1 are equivalent.
> > It is fixed by unsetting V when it is 0.
> >
> > A side effect is to fix kernel module compilation verbosity
> > which is set to 0 when V is empty.
> >
> > Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
[...]
> > --- a/mk/rte.sdkroot.mk
> > +++ b/mk/rte.sdkroot.mk
> > @@ -34,6 +34,9 @@ MAKEFLAGS += --no-print-directory
> > # define Q to '@' or not. $(Q) is used to prefix all shell commands to
> > # be executed silently.
> > Q=@
> > +ifeq '$V' '0'
> > +override V=
> > +endif
> > ifdef V
>
> Why not simply:
> -ifdef V
> +ifeq ($(V),1)
Because:
- V could have a higher value
- $(if $V) construct is used in several places in the makefiles
See git grep '$(if $(*V'
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] mk: fix verbosity zero
2016-09-22 23:42 ` [PATCH] mk: fix verbosity zero Thomas Monjalon
2016-09-23 9:06 ` Ferruh Yigit
@ 2016-09-23 9:33 ` Ferruh Yigit
2016-09-23 14:26 ` Thomas Monjalon
1 sibling, 1 reply; 8+ messages in thread
From: Ferruh Yigit @ 2016-09-23 9:33 UTC (permalink / raw)
To: Thomas Monjalon, dev
On 9/23/2016 12:42 AM, Thomas Monjalon wrote:
> Verbosity is considered enabled when $V is not empty.
> So V=0 and V=1 are equivalent.
> It is fixed by unsetting V when it is 0.
>
> A side effect is to fix kernel module compilation verbosity
> which is set to 0 when V is empty.
>
> Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] mk: fix verbosity zero
2016-09-23 9:33 ` Ferruh Yigit
@ 2016-09-23 14:26 ` Thomas Monjalon
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Monjalon @ 2016-09-23 14:26 UTC (permalink / raw)
To: Ferruh Yigit; +Cc: dev
2016-09-23 10:33, Ferruh Yigit:
> On 9/23/2016 12:42 AM, Thomas Monjalon wrote:
> > Verbosity is considered enabled when $V is not empty.
> > So V=0 and V=1 are equivalent.
> > It is fixed by unsetting V when it is 0.
> >
> > A side effect is to fix kernel module compilation verbosity
> > which is set to 0 when V is empty.
> >
> > Reported-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
>
> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied with additional comment:
"It is a well spread shortcut in makefiles, see git grep '$(if $(*V'"
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] mk: remove module compilation noise
2016-09-22 23:35 ` Thomas Monjalon
2016-09-22 23:42 ` [PATCH] mk: fix verbosity zero Thomas Monjalon
@ 2016-09-23 9:04 ` Ferruh Yigit
1 sibling, 0 replies; 8+ messages in thread
From: Ferruh Yigit @ 2016-09-23 9:04 UTC (permalink / raw)
To: Thomas Monjalon; +Cc: dev
On 9/23/2016 12:35 AM, Thomas Monjalon wrote:
> 2016-09-08 13:33, Ferruh Yigit:
>> Following log generated by Linux kernel Makefiles:
>> (cat /dev/null; echo
>> kernel/.../build/lib/librte_eal/linuxapp/igb_uio/igb_uio.ko;) >
>> .../build/lib/librte_eal/linuxapp/igb_uio/modules.order
>>
>> This happens because $(Q) used for both Linux and DPDK makefiles and
>> DPDK unsets this variable when V=0, which makes Linux verbose.
>>
>> More details:
>> rte.modules calls kernel makefile with V=0 argument
>> kernel makefile includes igb_uio/Makefile, which includes rte.vars.mk
>> rte.vars.mk unsets Q when V=0
>
> Yes good analysis.
> Another consequence is that V=0 is equivalent to V=1 (verbose mode).
Yes.
> I think it is better to fix the latter issue. I'll send a patch.
OK.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-09-23 14:26 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-08 12:33 [PATCH] mk: remove module compilation noise Ferruh Yigit
2016-09-22 23:35 ` Thomas Monjalon
2016-09-22 23:42 ` [PATCH] mk: fix verbosity zero Thomas Monjalon
2016-09-23 9:06 ` Ferruh Yigit
2016-09-23 9:30 ` Thomas Monjalon
2016-09-23 9:33 ` Ferruh Yigit
2016-09-23 14:26 ` Thomas Monjalon
2016-09-23 9:04 ` [PATCH] mk: remove module compilation noise Ferruh Yigit
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.