All of lore.kernel.org
 help / color / mirror / Atom feed
* builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
@ 2018-11-13 14:46 Sedat Dilek
  2018-11-22 10:11 ` Sedat Dilek
  0 siblings, 1 reply; 7+ messages in thread
From: Sedat Dilek @ 2018-11-13 14:46 UTC (permalink / raw)
  To: Masahiro Yamada, Ben Hutchings; +Cc: linux-kbuild

Hi,

I wanted to compile acpi-call-dkms on Debian/testing AMD64 with
clang-8/experimental.

When doing a...

# LC_ALL=C dkms install -m acpi-call -v 1.1.0 -k 4.20.0-rc2-2-amd64-cbl

...I saw that arch/x86/kernel/macros.s file was missing.

My workaround was...

$ cd $BUILD_DIR
$ sudo cp -av arch/x86/kernel/macros.s
/usr/src/linux-headers-4.20.0-rc2-2-amd64-cbl/arch/x86/kernel/

I guess the generated linux-headers debian package is missing this file.

I wanted to let you and others know.

Regards,
- Sedat -

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

* Re: builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
  2018-11-13 14:46 builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms Sedat Dilek
@ 2018-11-22 10:11 ` Sedat Dilek
  2018-11-24  0:52   ` Masahiro Yamada
  0 siblings, 1 reply; 7+ messages in thread
From: Sedat Dilek @ 2018-11-22 10:11 UTC (permalink / raw)
  To: Masahiro Yamada, Ben Hutchings; +Cc: linux-kbuild

On Tue, Nov 13, 2018 at 3:46 PM Sedat Dilek <sedat.dilek@gmail.com> wrote:
>
> Hi,
>
> I wanted to compile acpi-call-dkms on Debian/testing AMD64 with
> clang-8/experimental.
>
> When doing a...
>
> # LC_ALL=C dkms install -m acpi-call -v 1.1.0 -k 4.20.0-rc2-2-amd64-cbl
>
> ...I saw that arch/x86/kernel/macros.s file was missing.
>
> My workaround was...
>
> $ cd $BUILD_DIR
> $ sudo cp -av arch/x86/kernel/macros.s
> /usr/src/linux-headers-4.20.0-rc2-2-amd64-cbl/arch/x86/kernel/
>
> I guess the generated linux-headers debian package is missing this file.
>
> I wanted to let you and others know.
>

Hi,

where is the right place to put a cp-line to copy the missing
arch/x86/kernel/macro.s file?

In the section of [1]?

[ scripts/package/builddeb ]

# Build kernel header package
(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name
\*.pl) > "$objtree/debian/hdrsrcfiles"
(cd $srctree; find arch/*/include include scripts -type f -o -type l)
>> "$objtree/debian/hdrsrcfiles"
(cd $srctree; find arch/$SRCARCH -name module.lds -o -name
Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfi

Is the macro.s file only generated for x86 arch only or also for other archs?

Thanks for your feedback.

Regards,
- Sedat -

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/scripts/package/builddeb#n156

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

* Re: builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
  2018-11-22 10:11 ` Sedat Dilek
@ 2018-11-24  0:52   ` Masahiro Yamada
  2018-11-24  6:51     ` Sedat Dilek
  0 siblings, 1 reply; 7+ messages in thread
From: Masahiro Yamada @ 2018-11-24  0:52 UTC (permalink / raw)
  To: sedat.dilek; +Cc: Ben Hutchings, Linux Kbuild mailing list

Hi Sedat,

Sorry, I missed your email.



On Fri, Nov 23, 2018 at 6:25 PM Sedat Dilek <sedat.dilek@gmail.com> wrote:
>
> On Tue, Nov 13, 2018 at 3:46 PM Sedat Dilek <sedat.dilek@gmail.com> wrote:
> >
> > Hi,
> >
> > I wanted to compile acpi-call-dkms on Debian/testing AMD64 with
> > clang-8/experimental.
> >
> > When doing a...
> >
> > # LC_ALL=C dkms install -m acpi-call -v 1.1.0 -k 4.20.0-rc2-2-amd64-cbl
> >
> > ...I saw that arch/x86/kernel/macros.s file was missing.
> >
> > My workaround was...
> >
> > $ cd $BUILD_DIR
> > $ sudo cp -av arch/x86/kernel/macros.s
> > /usr/src/linux-headers-4.20.0-rc2-2-amd64-cbl/arch/x86/kernel/
> >
> > I guess the generated linux-headers debian package is missing this file.
> >
> > I wanted to let you and others know.
> >
>
> Hi,
>
> where is the right place to put a cp-line to copy the missing
> arch/x86/kernel/macro.s file?
>
> In the section of [1]?
>
> [ scripts/package/builddeb ]
>
> # Build kernel header package
> (cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name
> \*.pl) > "$objtree/debian/hdrsrcfiles"
> (cd $srctree; find arch/*/include include scripts -type f -o -type l)
> >> "$objtree/debian/hdrsrcfiles"
> (cd $srctree; find arch/$SRCARCH -name module.lds -o -name
> Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfi
>
> Is the macro.s file only generated for x86 arch only or also for other archs?


Only for x86.

> Thanks for your feedback.
>
> Regards,
> - Sedat -
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/scripts/package/builddeb#n156

Yes, this section.


Maybe like this?


diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index f43a274..4cf5a5c 100755
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -165,6 +165,9 @@ fi
 if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then
        (cd $objtree; find scripts/gcc-plugins -name \*.so -o -name
gcc-common.h) >> "$objtree/debian/hdrobjfiles"
 fi
+if [ -r arch/$SRCARCH/kernel/macros.s ]; then
+       echo arch/$SRCARCH/kernel/macros.s >> "$objtree/debian/hdrobjfiles"
+fi
 destdir=$kernel_headers_dir/usr/src/linux-headers-$version
 mkdir -p "$destdir"
 (cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd
$destdir; tar -xf -)


--
Best Regards
Masahiro Yamada

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

* Re: builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
  2018-11-24  0:52   ` Masahiro Yamada
@ 2018-11-24  6:51     ` Sedat Dilek
  2018-11-24 17:49       ` Ben Hutchings
  0 siblings, 1 reply; 7+ messages in thread
From: Sedat Dilek @ 2018-11-24  6:51 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: Ben Hutchings, linux-kbuild

On Sat, Nov 24, 2018 at 1:53 AM Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
>
> Hi Sedat,
>
> Sorry, I missed your email.
>
>
>
> On Fri, Nov 23, 2018 at 6:25 PM Sedat Dilek <sedat.dilek@gmail.com> wrote:
> >
> > On Tue, Nov 13, 2018 at 3:46 PM Sedat Dilek <sedat.dilek@gmail.com> wrote:
> > >
> > > Hi,
> > >
> > > I wanted to compile acpi-call-dkms on Debian/testing AMD64 with
> > > clang-8/experimental.
> > >
> > > When doing a...
> > >
> > > # LC_ALL=C dkms install -m acpi-call -v 1.1.0 -k 4.20.0-rc2-2-amd64-cbl
> > >
> > > ...I saw that arch/x86/kernel/macros.s file was missing.
> > >
> > > My workaround was...
> > >
> > > $ cd $BUILD_DIR
> > > $ sudo cp -av arch/x86/kernel/macros.s
> > > /usr/src/linux-headers-4.20.0-rc2-2-amd64-cbl/arch/x86/kernel/
> > >
> > > I guess the generated linux-headers debian package is missing this file.
> > >
> > > I wanted to let you and others know.
> > >
> >
> > Hi,
> >
> > where is the right place to put a cp-line to copy the missing
> > arch/x86/kernel/macro.s file?
> >
> > In the section of [1]?
> >
> > [ scripts/package/builddeb ]
> >
> > # Build kernel header package
> > (cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name
> > \*.pl) > "$objtree/debian/hdrsrcfiles"
> > (cd $srctree; find arch/*/include include scripts -type f -o -type l)
> > >> "$objtree/debian/hdrsrcfiles"
> > (cd $srctree; find arch/$SRCARCH -name module.lds -o -name
> > Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfi
> >
> > Is the macro.s file only generated for x86 arch only or also for other archs?
>
>
> Only for x86.
>
> > Thanks for your feedback.
> >
> > Regards,
> > - Sedat -
> >
> > [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/scripts/package/builddeb#n156
>
> Yes, this section.
>
>
> Maybe like this?
>
>
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index f43a274..4cf5a5c 100755
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -165,6 +165,9 @@ fi
>  if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then
>         (cd $objtree; find scripts/gcc-plugins -name \*.so -o -name
> gcc-common.h) >> "$objtree/debian/hdrobjfiles"
>  fi
> +if [ -r arch/$SRCARCH/kernel/macros.s ]; then
> +       echo arch/$SRCARCH/kernel/macros.s >> "$objtree/debian/hdrobjfiles"
> +fi
>  destdir=$kernel_headers_dir/usr/src/linux-headers-$version
>  mkdir -p "$destdir"
>  (cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd
> $destdir; tar -xf -)
>
>
> --
> Best Regards
> Masahiro Yamada

Hi Masahiro Yamada,

thanks, that fixes here the problem with building DKMS kernel modules:

# find /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl -name macros.s
/usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl/arch/x86/kernel/macros.

I guess commit...

77b0bf55bc67 kbuild/Makefile: Prepare for using macros in inline
assembly code to work around asm() related GCC inlining bugs

...is the root cause (mention as a "Fixes:" tag in a future patch)?

Not sure if the according script for building Linux RPM packages needs
the same fix, too.

I can send a fix for the builddeb part or if you want to do it, it's OK for me.

I highly appreciate to see a fix in Linux v4.20-rcN if possible.

Thanks.

Kind regards,
- Sedat -

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=77b0bf55bc67

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

* Re: builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
  2018-11-24  6:51     ` Sedat Dilek
@ 2018-11-24 17:49       ` Ben Hutchings
  2018-11-30  9:53         ` Masahiro Yamada
  0 siblings, 1 reply; 7+ messages in thread
From: Ben Hutchings @ 2018-11-24 17:49 UTC (permalink / raw)
  To: sedat.dilek, Masahiro Yamada; +Cc: linux-kbuild

[-- Attachment #1: Type: text/plain, Size: 2063 bytes --]

On Sat, 2018-11-24 at 07:51 +0100, Sedat Dilek wrote:
> On Sat, Nov 24, 2018 at 1:53 AM Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
[...]
> > Maybe like this?
> > 
> > 
> > diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> > index f43a274..4cf5a5c 100755
> > --- a/scripts/package/builddeb
> > +++ b/scripts/package/builddeb
> > @@ -165,6 +165,9 @@ fi
> >  if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then
> >         (cd $objtree; find scripts/gcc-plugins -name \*.so -o -name
> > gcc-common.h) >> "$objtree/debian/hdrobjfiles"
> >  fi
> > +if [ -r arch/$SRCARCH/kernel/macros.s ]; then
> > +       echo arch/$SRCARCH/kernel/macros.s >> "$objtree/debian/hdrobjfiles"
> > +fi
> >  destdir=$kernel_headers_dir/usr/src/linux-headers-$version
> >  mkdir -p "$destdir"
> >  (cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd
> > $destdir; tar -xf -)
> > 
> > 
> > --
> > Best Regards
> > Masahiro Yamada
> 
> Hi Masahiro Yamada,
> 
> thanks, that fixes here the problem with building DKMS kernel modules:
> 
> # find /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl -name macros.s
> /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl/arch/x86/kernel/macros.
> 
> I guess commit...
> 
> 77b0bf55bc67 kbuild/Makefile: Prepare for using macros in inline
> assembly code to work around asm() related GCC inlining bugs
> 
> ...is the root cause (mention as a "Fixes:" tag in a future patch)?
> 
> Not sure if the according script for building Linux RPM packages needs
> the same fix, too.
> 
> I can send a fix for the builddeb part or if you want to do it, it's OK for me.
> 
> I highly appreciate to see a fix in Linux v4.20-rcN if possible.

Perhaps it would make more sense to move this file under
arch/x86/include/generated, so there's no need to add a special case to
the packaging rules.

Ben.

-- 
Ben Hutchings
I'm always amazed by the number of people who take up solipsism because
they heard someone else explain it. - E*Borg on alt.fan.pratchett



[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
  2018-11-24 17:49       ` Ben Hutchings
@ 2018-11-30  9:53         ` Masahiro Yamada
  2018-12-19 16:00           ` Sedat Dilek
  0 siblings, 1 reply; 7+ messages in thread
From: Masahiro Yamada @ 2018-11-30  9:53 UTC (permalink / raw)
  To: Ben Hutchings; +Cc: sedat.dilek, Linux Kbuild mailing list

On Sun, Nov 25, 2018 at 2:51 AM Ben Hutchings <ben@decadent.org.uk> wrote:
>
> On Sat, 2018-11-24 at 07:51 +0100, Sedat Dilek wrote:
> > On Sat, Nov 24, 2018 at 1:53 AM Masahiro Yamada
> > <yamada.masahiro@socionext.com> wrote:
> [...]
> > > Maybe like this?
> > >
> > >
> > > diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> > > index f43a274..4cf5a5c 100755
> > > --- a/scripts/package/builddeb
> > > +++ b/scripts/package/builddeb
> > > @@ -165,6 +165,9 @@ fi
> > >  if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then
> > >         (cd $objtree; find scripts/gcc-plugins -name \*.so -o -name
> > > gcc-common.h) >> "$objtree/debian/hdrobjfiles"
> > >  fi
> > > +if [ -r arch/$SRCARCH/kernel/macros.s ]; then
> > > +       echo arch/$SRCARCH/kernel/macros.s >> "$objtree/debian/hdrobjfiles"
> > > +fi
> > >  destdir=$kernel_headers_dir/usr/src/linux-headers-$version
> > >  mkdir -p "$destdir"
> > >  (cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd
> > > $destdir; tar -xf -)
> > >
> > >
> > > --
> > > Best Regards
> > > Masahiro Yamada
> >
> > Hi Masahiro Yamada,
> >
> > thanks, that fixes here the problem with building DKMS kernel modules:
> >
> > # find /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl -name macros.s
> > /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl/arch/x86/kernel/macros.
> >
> > I guess commit...
> >
> > 77b0bf55bc67 kbuild/Makefile: Prepare for using macros in inline
> > assembly code to work around asm() related GCC inlining bugs
> >
> > ...is the root cause (mention as a "Fixes:" tag in a future patch)?
> >
> > Not sure if the according script for building Linux RPM packages needs
> > the same fix, too.
> >
> > I can send a fix for the builddeb part or if you want to do it, it's OK for me.
> >
> > I highly appreciate to see a fix in Linux v4.20-rcN if possible.
>
> Perhaps it would make more sense to move this file under
> arch/x86/include/generated, so there's no need to add a special case to
> the packaging rules.


Yeah, moving the file under include/ would be nicer.

But, I am asking if they are fine with reverting the commits causing
the problems.
(https://lkml.org/lkml/2018/11/29/910)

Please give me time to decide what to do.


-- 
Best Regards
Masahiro Yamada

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

* Re: builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms
  2018-11-30  9:53         ` Masahiro Yamada
@ 2018-12-19 16:00           ` Sedat Dilek
  0 siblings, 0 replies; 7+ messages in thread
From: Sedat Dilek @ 2018-12-19 16:00 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: Ben Hutchings, Linux Kbuild mailing list

On Fri, Nov 30, 2018 at 10:54 AM Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
>
> On Sun, Nov 25, 2018 at 2:51 AM Ben Hutchings <ben@decadent.org.uk> wrote:
> >
> > On Sat, 2018-11-24 at 07:51 +0100, Sedat Dilek wrote:
> > > On Sat, Nov 24, 2018 at 1:53 AM Masahiro Yamada
> > > <yamada.masahiro@socionext.com> wrote:
> > [...]
> > > > Maybe like this?
> > > >
> > > >
> > > > diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> > > > index f43a274..4cf5a5c 100755
> > > > --- a/scripts/package/builddeb
> > > > +++ b/scripts/package/builddeb
> > > > @@ -165,6 +165,9 @@ fi
> > > >  if grep -q '^CONFIG_GCC_PLUGINS=y' $KCONFIG_CONFIG ; then
> > > >         (cd $objtree; find scripts/gcc-plugins -name \*.so -o -name
> > > > gcc-common.h) >> "$objtree/debian/hdrobjfiles"
> > > >  fi
> > > > +if [ -r arch/$SRCARCH/kernel/macros.s ]; then
> > > > +       echo arch/$SRCARCH/kernel/macros.s >> "$objtree/debian/hdrobjfiles"
> > > > +fi
> > > >  destdir=$kernel_headers_dir/usr/src/linux-headers-$version
> > > >  mkdir -p "$destdir"
> > > >  (cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd
> > > > $destdir; tar -xf -)
> > > >
> > > >
> > > > --
> > > > Best Regards
> > > > Masahiro Yamada
> > >
> > > Hi Masahiro Yamada,
> > >
> > > thanks, that fixes here the problem with building DKMS kernel modules:
> > >
> > > # find /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl -name macros.s
> > > /usr/src/linux-headers-4.20.0-rc3-7-amd64-cbl/arch/x86/kernel/macros.
> > >
> > > I guess commit...
> > >
> > > 77b0bf55bc67 kbuild/Makefile: Prepare for using macros in inline
> > > assembly code to work around asm() related GCC inlining bugs
> > >
> > > ...is the root cause (mention as a "Fixes:" tag in a future patch)?
> > >
> > > Not sure if the according script for building Linux RPM packages needs
> > > the same fix, too.
> > >
> > > I can send a fix for the builddeb part or if you want to do it, it's OK for me.
> > >
> > > I highly appreciate to see a fix in Linux v4.20-rcN if possible.
> >
> > Perhaps it would make more sense to move this file under
> > arch/x86/include/generated, so there's no need to add a special case to
> > the packaging rules.
>
>
> Yeah, moving the file under include/ would be nicer.
>
> But, I am asking if they are fine with reverting the commits causing
> the problems.
> (https://lkml.org/lkml/2018/11/29/910)
>
> Please give me time to decide what to do.
>

I see Ingo reverted patches in tip.git#x86/urgent.

- Sedat -

[1] https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/log/?h=x86/urgent

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

end of thread, other threads:[~2018-12-19 16:01 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-13 14:46 builddeb: Missing arch/x86/kernel/macros.s when building modules with dkms Sedat Dilek
2018-11-22 10:11 ` Sedat Dilek
2018-11-24  0:52   ` Masahiro Yamada
2018-11-24  6:51     ` Sedat Dilek
2018-11-24 17:49       ` Ben Hutchings
2018-11-30  9:53         ` Masahiro Yamada
2018-12-19 16:00           ` Sedat Dilek

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.