M-Bab / linux-kernel-amdgpu-binaries

Kernel binaries (amd64) of amd-staging with DAL and latest security patches
214 stars 29 forks source link

Please remove the god dam + #60

Closed ghost closed 6 years ago

ghost commented 6 years ago

Adding a + to the kernel version breaks external modules, dkms, virtualbox and a bunch of other things.

ghost commented 6 years ago

Otherwise great job Bab You will see it missing the + plus sign causing problems vi /usr/src/linux-headers-4.16.12+/include/generated/utsrelease.h

I also sent up a recompiled virtualbox_modules.zip virtualbox modules since this will close that issue out too.

M-Bab commented 6 years ago

At first: Thanks tekcomm for the info this resolves a lot of issues I could not track down because I don't use virtualbox or dkms modules. Second: Any idea how to get rid of the '+'? This is not just the filename but the kernel version in the package as well right? The '+' is automatically added by make-kpkg when using the --revision or --append-to-version parameter. How did you build the kernel without the +? It should still be distinguishable from a standard kernel without the latest AMD code.

ghost commented 6 years ago

sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" .config

On Sat, Jun 9, 2018, 10:12 PM Martin notifications@github.com wrote:

At first: Thanks tekcomm for the info this resolves a lot of issues I could not track down because I don't use virtualbox or dkms modules. Second: Any idea how to get rid of the '+'? This is not just the filename but the kernel version in the package as well right? The '+' is automatically added by make-kpkg when using the --revision or --append-to-version parameter. How did you build the kernel without the +? It should still be distinguishable from a standard kernel without the latest AMD code.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/M-Bab/linux-kernel-amdgpu-binaries/issues/60#issuecomment-395976825, or mute the thread https://github.com/notifications/unsubscribe-auth/AWn0w23CPv-4LPs02M5I3m28yp1trHO4ks5t6-X0gaJpZM4UTE8K .

ghost commented 6 years ago

down vote

In this case the main reason was : scripts/setlocalversion line >170:

append a plus sign if the repository is not in a clean

annotated or signed tagged state (as git describe only

looks at signed or annotated tags - git tag -a/-s) and

LOCALVERSION= is not specified

if test "${LOCALVERSION+set}" != "set"; then scm=$(scm_version --short) res="$res${scm:++}" fi

On Sat, Jun 9, 2018, 11:12 PM Jason Kurtz tekcommnv@gmail.com wrote:

sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" .config

On Sat, Jun 9, 2018, 10:12 PM Martin notifications@github.com wrote:

At first: Thanks tekcomm for the info this resolves a lot of issues I could not track down because I don't use virtualbox or dkms modules. Second: Any idea how to get rid of the '+'? This is not just the filename but the kernel version in the package as well right? The '+' is automatically added by make-kpkg when using the --revision or --append-to-version parameter. How did you build the kernel without the +? It should still be distinguishable from a standard kernel without the latest AMD code.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/M-Bab/linux-kernel-amdgpu-binaries/issues/60#issuecomment-395976825, or mute the thread https://github.com/notifications/unsubscribe-auth/AWn0w23CPv-4LPs02M5I3m28yp1trHO4ks5t6-X0gaJpZM4UTE8K .

ghost commented 6 years ago

Change it to

down vote

In this case the main reason was : scripts/setlocalversion line >170:

append a plus sign if the repository is not in a clean

annotated or signed tagged state (as git describe only

looks at signed or annotated tags - git tag -a/-s) and

LOCALVERSION= is not specified

if test "${LOCALVERSION+set}" != "set"; then

scm=$(scm_version --short)

res="$res${scm:++}"

fi

On Sat, Jun 9, 2018, 11:16 PM Jason Kurtz tekcommnv@gmail.com wrote:

down vote

In this case the main reason was : scripts/setlocalversion line >170:

append a plus sign if the repository is not in a clean

annotated or signed tagged state (as git describe only

looks at signed or annotated tags - git tag -a/-s) and

LOCALVERSION= is not specified

if test "${LOCALVERSION+set}" != "set"; then scm=$(scm_version --short) res="$res${scm:++}" fi

On Sat, Jun 9, 2018, 11:12 PM Jason Kurtz tekcommnv@gmail.com wrote:

sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" .config

On Sat, Jun 9, 2018, 10:12 PM Martin notifications@github.com wrote:

At first: Thanks tekcomm for the info this resolves a lot of issues I could not track down because I don't use virtualbox or dkms modules. Second: Any idea how to get rid of the '+'? This is not just the filename but the kernel version in the package as well right? The '+' is automatically added by make-kpkg when using the --revision or --append-to-version parameter. How did you build the kernel without the +? It should still be distinguishable from a standard kernel without the latest AMD code.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/M-Bab/linux-kernel-amdgpu-binaries/issues/60#issuecomment-395976825, or mute the thread https://github.com/notifications/unsubscribe-auth/AWn0w23CPv-4LPs02M5I3m28yp1trHO4ks5t6-X0gaJpZM4UTE8K .

ghost commented 6 years ago

And you should be able to just use make menuconfig and set the local version as normal

On Sat, Jun 9, 2018, 11:18 PM Jason Kurtz tekcommnv@gmail.com wrote:

Change it to

down vote

In this case the main reason was : scripts/setlocalversion line >170:

append a plus sign if the repository is not in a clean

annotated or signed tagged state (as git describe only

looks at signed or annotated tags - git tag -a/-s) and

LOCALVERSION= is not specified

if test "${LOCALVERSION+set}" != "set"; then

scm=$(scm_version --short)

res="$res${scm:++}"

fi

On Sat, Jun 9, 2018, 11:16 PM Jason Kurtz tekcommnv@gmail.com wrote:

down vote

In this case the main reason was : scripts/setlocalversion line >170:

append a plus sign if the repository is not in a clean

annotated or signed tagged state (as git describe only

looks at signed or annotated tags - git tag -a/-s) and

LOCALVERSION= is not specified

if test "${LOCALVERSION+set}" != "set"; then scm=$(scm_version --short) res="$res${scm:++}" fi

On Sat, Jun 9, 2018, 11:12 PM Jason Kurtz tekcommnv@gmail.com wrote:

sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" .config

On Sat, Jun 9, 2018, 10:12 PM Martin notifications@github.com wrote:

At first: Thanks tekcomm for the info this resolves a lot of issues I could not track down because I don't use virtualbox or dkms modules. Second: Any idea how to get rid of the '+'? This is not just the filename but the kernel version in the package as well right? The '+' is automatically added by make-kpkg when using the --revision or --append-to-version parameter. How did you build the kernel without the +? It should still be distinguishable from a standard kernel without the latest AMD code.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/M-Bab/linux-kernel-amdgpu-binaries/issues/60#issuecomment-395976825, or mute the thread https://github.com/notifications/unsubscribe-auth/AWn0w23CPv-4LPs02M5I3m28yp1trHO4ks5t6-X0gaJpZM4UTE8K .

M-Bab commented 6 years ago

But when I hardcode the local version the resulting filenames look weird and it is not possible to dynamically add a date. Didn't work as I liked on this try, will try again with the next kernel.

ghost commented 6 years ago

are the kernel sources in the git up to date ill take a look at it.

M-Bab commented 6 years ago

Yeah this one is up to date: https://github.com/M-Bab/linux-kernel-amdgpu/tree/mbab_4.16

ghost commented 6 years ago

root@rippa:/usr/src/linux# DEBIAN_REVISION="18.06.14" CONCURRENCY_LEVEL=getconf _NPROCESSORS_ONLN fakeroot make-kpkg --initrd --overlay-dir=$HOME/ubuntu-package kernel_image kernel_headers

then there is the option --append-to-version=custom see https://www.howtoforge.com/kernel_compilation_ubuntu_p2

ghost commented 6 years ago

linux-source-4.16.15-amd (18.06.14) unstable; urgency=low

Local variables: mode: debian-changelog End: Here are the files to change before compiling the deb's

include/generated/utsrelease.h:#define UTS_RELEASE "4.16.15-amd" include/generated/autoconf.h: * Linux/x86_64 4.16.15-amd Kernel Configuration include/config/kernel.release:4.16.15-amd include/config/auto.conf:# Linux/x86_64 4.16.15-amd Kernel Configuration include/config/auto.conf.cmd:ifneq "$(KERNELVERSION)" "4.16.15-amd" include/config/tristate.conf:# Linux/x86_64 4.16.15-amd Kernel Configuration

M-Bab commented 6 years ago

I built with something like fakeroot make-kpkg --initrd --append-to-version=.amdgpu.$(date +%y.%m.%d) kernel_image kernel_headers Didn't really improve. File name got even more weird and package name still contains a plus. Compare with uploaded packages.

ghost commented 6 years ago

https://github.com/tekcomm/linux-kernel-amdgpu-binaries

On Tue, Jun 19, 2018 at 3:00 PM, Martin notifications@github.com wrote:

I built with something like fakeroot make-kpkg --initrd --append-to-version=.amdgpu.$(date +%y.%m.%d) kernel_image kernel_headers Didn't really improve. File name got even more weird and package name still contains a plus. Compare with uploaded packages.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/M-Bab/linux-kernel-amdgpu-binaries/issues/60#issuecomment-398508894, or mute the thread https://github.com/notifications/unsubscribe-auth/AWn0w6F1PP1vwS7X95yWYhpeUIPIEOqIks5t-Uo_gaJpZM4UTE8K .

ghost commented 6 years ago

past this point are only slain dragons and decapitated monkeys +1

--------------------------------------------------CUT HERE-----------------------------------------------------------

!/bin/bash

checkout the kernel in /usr/src

Set the version to the new standard DEBIAN_REVISION MUST START WITH A NUMBER?

export LOCALVERSION="" export DEBIAN_REVISION="0-amdgpu-18.20.60-ubuntu"

cd /usr/src/linux-kernel-amdgpu

install our build deps

apt install kernel-package bison flex libelf-dev

CLEAN THE EVIL + SIGN DIE DIE DIE!

sed -i s/\ \ \ \ scm=/#\ \ \ \ scm=/g scripts/setlocalversion sed -i s/\ \ \ \ res=/#\ \ \ \ res=/g scripts/setlocalversion make oldconfig sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" .config

Build the kernel and all the packages

DEBIAN_REVISION="$DEBIAN_REVISION" CONCURRENCY_LEVEL=8 make-kpkg --initrd --overlay-dir=$HOME/ubuntu-package kernel_image kernel_headers

--------------------------------------------------CUT HERE----------------------------------------------------------- P.S. It uses your naming convention but the base debian naming system so the modules for virtualbox built automagicly with DKMS now. There is a bug in the 4.17 kernel that is a acpi know known lol for some users :)

ghost commented 6 years ago

CLOSE THIS BYATCH

This lets you name it what you want and dkms actually built the modules out of the box :) NO MORE MANUEL!!! Coffee time