All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thorsten Leemhuis <linux@leemhuis.info>
To: Bagas Sanjaya <bagasdotme@gmail.com>, Jonathan Corbet <corbet@lwn.net>
Cc: Randy Dunlap <rdunlap@infradead.org>,
	Lukas Bulwahn <lukas.bulwahn@gmail.com>,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
	regressions@lists.linux.dev
Subject: Re: [PATCH v3] docs: describe how to quickly build a trimmed kernel
Date: Mon, 6 Mar 2023 07:03:49 +0100	[thread overview]
Message-ID: <80c249ca-fe51-7a7b-da1d-ab14873170aa@leemhuis.info> (raw)
In-Reply-To: <ZAVopho26SPotT6v@debian.me>

Thx for the feedback

On 06.03.23 05:14, Bagas Sanjaya wrote:
> On Sun, Mar 05, 2023 at 02:04:44PM +0100, Thorsten Leemhuis wrote:
>> +.. _patching_sbs:
>> +
>> + * In case you want to apply a kernel patch, do so now. Often a command like
>> +   this will do the trick::
>> +
>> +     patch -p1 < ../proposed-fix.patch
>> +
>> +   If the ``-p1`` is actually needed, depends on how the patch was created; in
>> +   case it does not apply thus try without it.
>> +
>> +   If you cloned the sources with git and anything goes sideways, run ``git
>> +   reset --hard`` to undo any changes to the sources.
> 
> Alternatively, if you have ``b4`` installed, you can prepare the patch
> with ``b4 am -l <message-id of the patch>``. The -l option adds a Link:
> to lore.kernel.org for the patch. Apply the resulting patch with
> ``git am``.
> 
> It is often wise to branch-off from mainline before applying patches, to
> keep the remote-tracking mainline pristine. Create a branch with ``git
> checkout -b <branch name>``.

Well, for developers of course all that is helpful, but at the same time
it's just overhead and complicated stuff for people that just want to
quickly compile a kernel (maybe for the first time) and might or might
not apply a patch for testing -- hence I'd say that this text is the
wrong place to explain such things.

I wonders if I needs to describe the target audience more explicitly in
the text, but OTOH it kinda feels like it's clear enough already. But
well, maybe adding something like "this document is not intended for
kernel developers" somewhere might be worth it.

>> +Changes merged into the mainline repository are only synced to the master branch
>> +of the Linux stable repository  every few hours. This lag most of the time is
>> +not something to worry about; but in case you really need the latest code, just
>> +add the mainline repo as additional remote and checkout the code from there::
>> +
>> +    git remote add mainline \
>> +      https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>> +    git fetch mainline
>> +    git checkout --detach mainline/master
> 
> You will most likely change the tracking remote for your master branch
> to mainline by ``git branch --set-upstream-to=mainline/master``.

Why? The document doesn't even use that branch, git is just used to
retrieve the sources.

>> +The step-by-step guide uses the default make targets (e.g. 'bzImage' and
>> +'modules' on x86) to build the image and the modules of your kernel, which later
>> +steps of the guide then install. You instead can also directly build everything
>> +and directly package it up by using one of the following targets:
>> +
>> + * ``make -j $(nproc --all) bindeb-pkg`` to generate a deb package
>> +
>> + * ``make -j $(nproc --all) binrpm-pkg`` to generate a rpm package
>> +
>> + * ``make -j $(nproc --all) tarbz2-pkg`` to generate a bz2 compressed tarball
> 
> I used to try compiling kernel in rpm-based systems (at that time
> CentOS). make binrpm-pkg generates kernel headers, image, and sanitized
> kernel headers for libc packages. These three packages have to be
> installed together.> However, the generated libc headers package most
> likely overwrite distro-installed one, thus rebuilding the world is
> necessary.

Is it? This is totally not my area of expertise, but I thought updating
those is not a problem, as long as you don't expect stuff compiled
against those headers to work on older kernels all the time. At least
Fedora updates its kernel-headers package (which contains the C header
files that specify the interface between the Linux kernel and userspace
libraries) occasionally to newer mainline versions within a release and
doesn't rebuild the world when they do so.

Ciao, Thorsten

  reply	other threads:[~2023-03-06  6:03 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-05 13:04 [PATCH v3] docs: describe how to quickly build a trimmed kernel Thorsten Leemhuis
2023-03-06  4:14 ` Bagas Sanjaya
2023-03-06  6:03   ` Thorsten Leemhuis [this message]
2023-03-06  4:19 ` Bagas Sanjaya
2023-03-06  5:40   ` Thorsten Leemhuis
2023-03-06  8:57     ` Bagas Sanjaya
2023-03-06  9:07       ` Thorsten Leemhuis
2023-03-07  2:57         ` Bagas Sanjaya
2023-03-09 14:42 ` Greg KH
2023-03-14 18:35 ` Jonathan Corbet
2023-03-15  4:17   ` Bagas Sanjaya
2023-03-15  9:28   ` Thorsten Leemhuis
2023-03-16 18:27     ` Jonathan Corbet
2023-03-22 13:47       ` Thorsten Leemhuis
2023-03-23 17:24         ` Jonathan Corbet
2023-03-23 17:37           ` Thorsten Leemhuis
2023-03-23 18:08             ` Jonathan Corbet
2023-03-15  4:19 ` Bagas Sanjaya

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=80c249ca-fe51-7a7b-da1d-ab14873170aa@leemhuis.info \
    --to=linux@leemhuis.info \
    --cc=bagasdotme@gmail.com \
    --cc=corbet@lwn.net \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lukas.bulwahn@gmail.com \
    --cc=rdunlap@infradead.org \
    --cc=regressions@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.