View previous topic :: View next topic |
Author |
Message |
ulenrich Veteran
Joined: 10 Oct 2010 Posts: 1483
|
Posted: Fri Dec 17, 2021 12:35 am Post subject: Linux-5.15.9 The Ever Most CO2 Producing 3 Bit Change |
|
|
Yesterdays Linux version update
was the most expensive one bit change.
I don't need, because I don't us conntrack
(just a guess)
Code: | # diff -u patch-5.15.8 patch-5.15.9
--- patch-5.15.8 2021-12-14 11:04:05.000000000 +0100
+++ patch-5.15.9 2021-12-16 15:24:03.000000000 +0100
@@ -196,7 +196,7 @@
bit 1: enable rescheduling of new connections when it is safe.
That is, whenever expire_nodest_conn and for TCP sockets, when
diff --git a/Makefile b/Makefile
-index ed6e7ec60eff6..72344b214bba5 100644
+index ed6e7ec60eff6..e6d2ea920a1d1 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
@@ -204,7 +204,7 @@
VERSION = 5
PATCHLEVEL = 15
-SUBLEVEL = 0
-+SUBLEVEL = 8
++SUBLEVEL = 9
EXTRAVERSION =
NAME = Trick or Treat
@@ -72744,7 +72744,7 @@
LDLIBS = -lmnl
TEST_GEN_FILES = nf-queue
diff --git a/tools/testing/selftests/netfilter/conntrack_vrf.sh b/tools/testing/selftests/netfilter/conntrack_vrf.sh
-new file mode 100644
+new file mode 100755
index 0000000000000..8b5ea92345882
--- /dev/null
+++ b/tools/testing/selftests/netfilter/conntrack_vrf.sh |
Last edited by ulenrich on Sat Dec 18, 2021 2:34 am; edited 1 time in total |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5394 Location: Bavaria
|
Posted: Fri Dec 17, 2021 1:12 am Post subject: Re: Linux-5.15.9 The Ever Most CO2 Producing One Bit Change |
|
|
ulenrich wrote: | [...]I don't need, because I don't us conntrack
(just a guess) |
As far as I understand it, I dont need it also, even I am using conntrack in netfilter modules. (But my english is very poor and I dont understand "quilt" - leo translate this into german in a very obscure word):
Quote: | netfilter: selftest: conntrack_vrf.sh: fix file permission
When backporting 33b8aad21ac1 ("selftests: netfilter: add a
vrf+conntrack testcase") to this stable branch, the executable bits were
not properly set on the
tools/testing/selftests/netfilter/conntrack_vrf.sh file due to quilt not
honoring them. |
|
|
Back to top |
|
|
ulenrich Veteran
Joined: 10 Oct 2010 Posts: 1483
|
Posted: Fri Dec 17, 2021 1:45 am Post subject: |
|
|
Arrrgh, this an april 1. like joke, because it is a known bug of quilt!
"quilt" is a tool to manage series (a list file) of patches. When I noticed that quilt doesn't do well the job with creating files,
I changed to my own script, I called kuilt - kernel quilt:
(If the kernel guy would have used my script, which cleanly uses patch, we now wouldn't have number nine of linux-5.15)
Code: | #!/bin/bash
C="/usr/src"
# location of /usr/src(/linux-x.y) and /usr/src(/patches-x.y)
#set -x
function myexit() {
echo "$1"
exit
}
[ "$UID" = "0" ] \
|| myexit "only root can run this"
[ -f "./kernel/kexec.c" ] \
&& L=$(readlink -f -n ${PWD}) \
|| L=$(readlink -f -n $C/linux)
[ -f "$L/kernel/kexec.c" ] \
|| myexit "not found usr/src/linux sources"
version=""
[ -z "${version}" ] \
&& version=$(sed -n \
-e'/^VERSION/ {s/^VERSION...//;N;s/\nPATCHLEVEL..././p ;q}' $L/Makefile)
[ -z "${version}" ] \
&& myexit "cannot find version"
y=0
clean="no"
while [ "$1" != "" ] ;do
case $1 in
"-h"|"--help"|"help")
exec less $0
exit
;;
"-e"|"--edit"|"edit")
exec mcedit $0
exit
;;
"push"|"--push"|"-push")
y=1
;;
"pop"|"--pop"|"-pop")
y=-1
;;
"popa"|"popall"|"--popall"|"-popa")
y=-7899
;;
"pusha"|"pushall"|"--pushall"|"-pusha"|"--pusha")
y=6789
;;
"-a")
[ $y -gt 0 ] &&y=6789
[ $y -lt 0 ] &&y=-7899
;;
"clean"|"mrproper"|"--clean"|"--mrproper")
clean="mrproper"
y=-8999
;;
"conf"|"config"|"--conf"|"--config"|"newconf"|"newconfig"|"--newconf"|"--newconfig")
CONFIG=$( ls -1 /boot/config-${version}.* |sort --sort=version |tail -n 1 )
[ ! -f ${CONFIG} ] &&echo " ..... Warning: missing ${CONFIG}" &&exit
echo " ..... cat ${CONFIG} :"
cat ${CONFIG} >$L/.config
echo " ..... $L/.config"
exit
;;
*)
[ $y -gt 0 ] &&y=$(( 0 + $1 )) ||y=$(( 0 - $1 ))
;;
esac
shift
done
applied=${L}/.appliedseries
P=${L/linux/patches}
series=$P/series
[ -d "$L" ] ||myexit "missing Linux source dir: $L"
[ -f "$series" ] ||myexit "missing series file: $series"
touch $applied ||myexit "cannot touch $applied"
[ -f "$applied" ] ||myexit "missing applied file: $applied"
cd $L ||myexit "could not enter linux tree $L"
[ -f "./kernel/kexec.c" ] ||myexit "could not enter linux tree $L"
if [ "${clean}" = "mrproper" ] ;then
echo " ..... if /boot/config-${version} then mrproper else clean"
CONFIG=$( ls -1 /boot/config-${version}.* |sort --sort=version |tail -n 1 )
if [ "" = "${CONFIG}" ] ;then
echo " ..... warning: missing /boot/config-${version}.*"
echo " ..... $L : make clean "
make clean
else
echo " ..... $L : make mrproper "
make mrproper
echo " ..... cat ${CONFIG}"
cat ${CONFIG} >$L/.config
echo " ..... $L/.config"
fi
fi
if [ ${y} -gt 0 ] ;then
echo " ..... $L : patching"
while read f ;do
[ "${f:0:1}" = "#" ] &&continue
grep -q -e"^${f}$" ${applied} &&continue
g=$P/$f
if [ -f "$g" ] ;then
patch -p1 --dry-run --silent --input $g ||myexit " ..... exit : error patching $f"
echo " ..... patch -p1 --input $f"
patch -p1 --input $g ||myexit "$0 error apply $f"
echo "$f" >> $applied
fi
y=$(( y - 1 ))
[ $y = 0 ] &&break
done < $series
if [ ! -f ${applied} ] ;then
myexit " ..... $L : NOT any patch applied"
else
echo ""
echo -n " ..... ${applied} : "
grep -v -c -e'^#' ${applied}
fi
myexit " "
elif [ ${y} -lt 0 ] ;then
echo " ..... $L : reverse patching"
all=""
while read f ;do
[ "${f:0:1}" = "#" ] &&continue
all="$f $all"
done < $applied
set -- $all
while [ "$1" != "" ] ;do
g=$P/$1
echo " ..... patch -R -p1 --input $1"
patch -R -p1 --input $g \
||myexit "could not reverse $1"
sed -i -e"s:^\($1\)$:\#\1:" $applied \
||myexit "couldn't deactivate $1"
y=$(( y + 1 ))
[ $y = 0 ] &&break
shift
done
echo ""
echo -n " ..... remaining in tree patches : "
grep -v -c -e'^#' "$applied" \
|| rm "${applied}" # if none then rm
myexit " "
fi | quilt is more complicated, because it not only handles kernel series as my script
Last edited by ulenrich on Fri Dec 17, 2021 2:27 am; edited 1 time in total |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 23103
|
Posted: Fri Dec 17, 2021 2:22 am Post subject: Re: Linux-5.15.9 The Ever Most CO2 Producing One Bit Change |
|
|
ulenrich wrote: | Yesterdays Linux version update
was the most expensive one bit change. | The announcement specifically states: Quote: | Only change here is a permission setting of a netfilter selftest file. No need to upgrade if this problem is not bothering you. | This stands in stark contrast to typical announcements which very pointedly instruct users to upgrade. Users who notice the lack of instruction will likely not upgrade. |
|
Back to top |
|
|
ulenrich Veteran
Joined: 10 Oct 2010 Posts: 1483
|
Posted: Fri Dec 17, 2021 2:33 am Post subject: |
|
|
@Hu, my own kernel build script doesn't read change files, but pulls the patch and counts the locations of fixes in the new kernel version. Therefore I saw the new kernel is barely different. Don't you think there are many sites compiling automatically the new version without any AI used to understand the changes?
Does someone know:
Has there ever been published a one bit changing new linux version by kernel.org before?
A minimalist record ready for the guiness book. |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5394 Location: Bavaria
|
Posted: Fri Dec 17, 2021 12:31 pm Post subject: |
|
|
ulenrich wrote: | "quilt" is a tool to manage series (a list file) of patches. |
ulenrich, thank you for this information. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 23103
|
Posted: Fri Dec 17, 2021 4:37 pm Post subject: |
|
|
ulenrich wrote: | Don't you think there are many sites compiling automatically the new version without any AI used to understand the changes? | I expect that anyone who auto-builds the kernel without even waiting for human approval also has sufficient automation/caching that a trivial change like this would lead to a near perfect run of cache hits. That isn't quite as good as not building it at all, but considering how fast a ccache build is with hits versus without hits, it's still a huge savings. |
|
Back to top |
|
|
ulenrich Veteran
Joined: 10 Oct 2010 Posts: 1483
|
Posted: Fri Dec 17, 2021 10:07 pm Post subject: |
|
|
That's true: ccache
I never came to the idea to use having a little hard disk with my 12y old computer.
A day later kernel.org published the real version update with fixes! How about, they wanted to see how many downloads there will be from users not reading the ChangeLog about this one bit change? |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5394 Location: Bavaria
|
Posted: Fri Dec 17, 2021 10:51 pm Post subject: |
|
|
ulenrich wrote: | [...] about this one bit change? |
It has been 3 bits ...
(scnr) |
|
Back to top |
|
|
ulenrich Veteran
Joined: 10 Oct 2010 Posts: 1483
|
Posted: Sat Dec 18, 2021 2:33 am Post subject: |
|
|
pietinger wrote: | ulenrich wrote: | [...] about this one bit change? |
It has been 3 bits ...
(scnr) | Oh, yes. I looked only at the 6/7 and saw a pair as neighbour. |
|
Back to top |
|
|
|