All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] daxctl: link against libndctl, in case its use doesn't get pruned
@ 2019-08-01  1:00 Adam Borowski
  2019-08-02 17:15 ` Verma, Vishal L
  0 siblings, 1 reply; 3+ messages in thread
From: Adam Borowski @ 2019-08-01  1:00 UTC (permalink / raw)
  To: linux-nvdimm; +Cc: Adam Borowski

util/json.c uses libndctl symbols, and is included by daxctl.  These
functions should then get pruned as unused, but on some platforms the
toolchain fails to do so.

These platforms are ia64, hppa and 32-bit powerpc.  It's generally a
waste of our time to build ndctl there, but as the lack of a
build-dependency requires annoying workarounds higher in the stack,
this has been requested in https://bugs.debian.org/914348 -- and is
trivially fixable on the ndctl side.

Thanks to -Wl,--as-needed there's no harm to architectures where the
pruning works, thus let's not bother with detection.

As daxctl and libdaxctl are separate, there's no circular dependency.

Signed-off-by: Adam Borowski <kilobyte@angband.pl>
---
 daxctl/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/daxctl/Makefile.am b/daxctl/Makefile.am
index 94f73f9..a5487d6 100644
--- a/daxctl/Makefile.am
+++ b/daxctl/Makefile.am
@@ -21,4 +21,5 @@ daxctl_LDADD =\
 	lib/libdaxctl.la \
 	../libutil.a \
 	$(UUID_LIBS) \
-	$(JSON_LIBS)
+	$(JSON_LIBS) \
+	../ndctl/lib/libndctl.la
-- 
2.23.0.rc0

_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

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

* Re: [PATCH] daxctl: link against libndctl, in case its use doesn't get pruned
  2019-08-01  1:00 [PATCH] daxctl: link against libndctl, in case its use doesn't get pruned Adam Borowski
@ 2019-08-02 17:15 ` Verma, Vishal L
  2019-08-02 18:36   ` Adam Borowski
  0 siblings, 1 reply; 3+ messages in thread
From: Verma, Vishal L @ 2019-08-02 17:15 UTC (permalink / raw)
  To: linux-nvdimm, kilobyte

On Thu, 2019-08-01 at 03:00 +0200, Adam Borowski wrote:
> util/json.c uses libndctl symbols, and is included by daxctl.  These
> functions should then get pruned as unused, but on some platforms the
> toolchain fails to do so.
> 
> These platforms are ia64, hppa and 32-bit powerpc.  It's generally a
> waste of our time to build ndctl there, but as the lack of a
> build-dependency requires annoying workarounds higher in the stack,
> this has been requested in https://bugs.debian.org/914348 -- and is
> trivially fixable on the ndctl side.
> 
> Thanks to -Wl,--as-needed there's no harm to architectures where the
> pruning works, thus let's not bother with detection.
> 
> As daxctl and libdaxctl are separate, there's no circular dependency.
> 
> Signed-off-by: Adam Borowski <kilobyte@angband.pl>
> ---
>  daxctl/Makefile.am | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Hi Adam,

Thanks for the report and the patch - however, historically, we've
avoided linking from daxctl to libndctl.

I think we can still avoid this by moving the libndctl users in
util/json.c and util/filter.c into respective ndctl/util/ files.

The same goes for libdaxctl users in those files - they move into
daxctl/util/

I think that would be a cleaner approach, and I can take a shot at
making the split next week, however we're close to a v66 release, and it
will have to be after that happens.

Perhaps the debian package can temporarily carry your patch for the
archs that fail?

Thanks,
	-Vishal

> 
> diff --git a/daxctl/Makefile.am b/daxctl/Makefile.am
> index 94f73f9..a5487d6 100644
> --- a/daxctl/Makefile.am
> +++ b/daxctl/Makefile.am
> @@ -21,4 +21,5 @@ daxctl_LDADD =\
>  	lib/libdaxctl.la \
>  	../libutil.a \
>  	$(UUID_LIBS) \
> -	$(JSON_LIBS)
> +	$(JSON_LIBS) \
> +	../ndctl/lib/libndctl.la

_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

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

* Re: [PATCH] daxctl: link against libndctl, in case its use doesn't get pruned
  2019-08-02 17:15 ` Verma, Vishal L
@ 2019-08-02 18:36   ` Adam Borowski
  0 siblings, 0 replies; 3+ messages in thread
From: Adam Borowski @ 2019-08-02 18:36 UTC (permalink / raw)
  To: Verma, Vishal L, 914348; +Cc: linux-nvdimm

On Fri, Aug 02, 2019 at 05:15:21PM +0000, Verma, Vishal L wrote:
> On Thu, 2019-08-01 at 03:00 +0200, Adam Borowski wrote:
> > util/json.c uses libndctl symbols, and is included by daxctl.  These
> > functions should then get pruned as unused, but on some platforms the
> > toolchain fails to do so.

> > this has been requested in https://bugs.debian.org/914348

> Thanks for the report and the patch - however, historically, we've
> avoided linking from daxctl to libndctl.
> 
> I think we can still avoid this by moving the libndctl users in
> util/json.c and util/filter.c into respective ndctl/util/ files.
> 
> The same goes for libdaxctl users in those files - they move into
> daxctl/util/
> 
> I think that would be a cleaner approach, and I can take a shot at
> making the split next week, however we're close to a v66 release, and it
> will have to be after that happens.
> 
> Perhaps the debian package can temporarily carry your patch for the
> archs that fail?

Sounds like a plan.

CCing the bug.  Breno: could you please take this patch for v65 or v66,
until it gets done a better (but more intrusive) way?


喵!
-- 
⢀⣴⠾⠻⢶⣦⠀ Latin:   meow 4 characters, 4 columns,  4 bytes
⣾⠁⢠⠒⠀⣿⡁ Greek:   μεου 4 characters, 4 columns,  8 bytes
⢿⡄⠘⠷⠚⠋  Runes:   ᛗᛖᛟᚹ 4 characters, 4 columns, 12 bytes
⠈⠳⣄⠀⠀⠀⠀ Chinese: 喵   1 character,  2 columns,  3 bytes <-- best!
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

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

end of thread, other threads:[~2019-08-02 18:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-01  1:00 [PATCH] daxctl: link against libndctl, in case its use doesn't get pruned Adam Borowski
2019-08-02 17:15 ` Verma, Vishal L
2019-08-02 18:36   ` Adam Borowski

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.