Re: [PATCH 0/2] Cleanup the MAINTAINER's file

2024-07-11 Thread Wolfram Sang
On Fri, Jul 12, 2024 at 01:19:24AM +0200, Andi Shyti wrote: > Hi, > > while reviewing Wolfram's series, I received some delivery > failure notifications for e-mails that don't exist anymore. > > With this series I'm removing: > > - Conghui Chen > - Thor Thayer Fixes for these two are alread

Re: [PATCH v2 00/11] perf/uprobe: Optimize uprobes

2024-07-11 Thread Andrii Nakryiko
On Thu, Jul 11, 2024 at 4:07 AM Peter Zijlstra wrote: > > Hi! > > These patches implement the (S)RCU based proposal to optimize uprobes. > > On my c^Htrusty old IVB-EP -- where each (of the 40) CPU calls 'func' in a > tight loop: > > perf probe -x ./uprobes test=func > perf stat -ae probe_upro

[PATCH] MAINTAINERS: Add uprobes entry

2024-07-11 Thread Masami Hiramatsu (Google)
From: Masami Hiramatsu (Google) Add uprobes entry to MAINTAINERS to clarify the maintainers. Suggested-by: Peter Zijlstra Signed-off-by: Masami Hiramatsu (Google) --- MAINTAINERS | 13 + 1 file changed, 13 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index da5352dbd4f3.

[PATCH 0/2] Cleanup the MAINTAINER's file

2024-07-11 Thread Andi Shyti
Hi, while reviewing Wolfram's series, I received some delivery failure notifications for e-mails that don't exist anymore. With this series I'm removing: - Conghui Chen - Thor Thayer unfortunately both from Intel :-( In the case of Altera's subsystems (except for the i2c), I didn't really

Re: [PATCH v2] bootconfig: Remove duplicate included header file linux/bootconfig.h

2024-07-11 Thread Google
On Thu, 11 Jul 2024 10:43:16 +0200 Thorsten Blum wrote: > The header file linux/bootconfig.h is included whether __KERNEL__ is > defined or not. > > Include it only once before the #ifdef/#else/#endif preprocessor > directives and remove the following make includecheck warning: > > linux/boot

[PATCH 1/2] MAINTAINERS: i2c-virtio: Drop Conghui Chen from Maintainers

2024-07-11 Thread Andi Shyti
E-mails to Conghui Chen have bounced back: : host mgamail.eglb.intel.com[198.175.65.14] said: 550 #5.1.0 Address rejected. (in reply to RCPT TO command) Remove him as maintainer of the i2c Virtio driver in the MAINTAINERS file. Signed-off-by: Andi Shyti Cc: Viresh Kumar Cc: Wolfram San

Re: [PATCH] virtio: add missing MODULE_DESCRIPTION() macro

2024-07-11 Thread Michael S. Tsirkin
On Thu, Jul 11, 2024 at 11:43:18AM -0700, Jeff Johnson wrote: > On 6/23/24 10:36, Jeff Johnson wrote: > > On 6/2/2024 1:25 PM, Jeff Johnson wrote: > > > make allmodconfig && make W=1 C=1 reports: > > > WARNING: modpost: missing MODULE_DESCRIPTION() in > > > drivers/virtio/virtio_dma_buf.o > > > >

Re: [PATCH] virtio: add missing MODULE_DESCRIPTION() macro

2024-07-11 Thread Jeff Johnson
On 6/23/24 10:36, Jeff Johnson wrote: On 6/2/2024 1:25 PM, Jeff Johnson wrote: make allmodconfig && make W=1 C=1 reports: WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/virtio/virtio_dma_buf.o Add the missing invocation of the MODULE_DESCRIPTION() macro. Signed-off-by: Jeff Johnson

Re: [PATCH v2 10/11] perf/uprobe: Convert single-step and uretprobe to SRCU

2024-07-11 Thread Peter Zijlstra
On Thu, Jul 11, 2024 at 06:06:53PM +0200, Oleg Nesterov wrote: > I'll try to actually apply the whole series and read the code tomorrow. > Right now I can't understand this change... Just one question for now. > > On 07/11, Peter Zijlstra wrote: > > > > @@ -1956,11 +1960,13 @@ static void prepare_

Re: [PATCH 3/3] uprobes: make uprobe_register() return struct uprobe *

2024-07-11 Thread Oleg Nesterov
On 07/11, Andrii Nakryiko wrote: > > On Thu, Jul 11, 2024 at 2:28 AM Oleg Nesterov wrote: > > > > On 07/10, Oleg Nesterov wrote: > > > > > > -void uprobe_unregister(struct inode *inode, loff_t offset, struct > > > uprobe_consumer *uc) > > > +void uprobe_unregister(struct uprobe *uprobe, struct up

Re: [PATCH] lib: test_objpool: add missing MODULE_DESCRIPTION() macro

2024-07-11 Thread Jeff Johnson
On 6/2/24 23:45, Masami Hiramatsu (Google) wrote: On Mon, 3 Jun 2024 11:25:59 +0800 "wuqiang.matt" wrote: On 2024/6/1 08:31, Jeff Johnson wrote: make allmodconfig && make W=1 C=1 reports: WARNING: modpost: missing MODULE_DESCRIPTION() in lib/test_objpool.o Add the missing invocation of the M

Re: [PATCH 3/3] uprobes: make uprobe_register() return struct uprobe *

2024-07-11 Thread Andrii Nakryiko
On Thu, Jul 11, 2024 at 2:28 AM Oleg Nesterov wrote: > > On 07/10, Oleg Nesterov wrote: > > > > -void uprobe_unregister(struct inode *inode, loff_t offset, struct > > uprobe_consumer *uc) > > +void uprobe_unregister(struct uprobe *uprobe, struct uprobe_consumer *uc) > > { > > - struct uprobe

Re: [PATCH v2 10/11] perf/uprobe: Convert single-step and uretprobe to SRCU

2024-07-11 Thread Oleg Nesterov
I'll try to actually apply the whole series and read the code tomorrow. Right now I can't understand this change... Just one question for now. On 07/11, Peter Zijlstra wrote: > > @@ -1956,11 +1960,13 @@ static void prepare_uretprobe(struct upr >* attack from user-space. >

Re: [PATCH v2 11/11] perf/uprobe: Add uretprobe timer

2024-07-11 Thread Peter Zijlstra
On Thu, Jul 11, 2024 at 05:55:42PM +0200, Peter Zijlstra wrote: > On Thu, Jul 11, 2024 at 05:00:54PM +0200, Peter Zijlstra wrote: > > > Let me ponder that a little, I *can* make it work, but all 'solutions' > > I've come up with so far are really rather vile. > > This is the least horrible soluti

Re: [PATCH v2 11/11] perf/uprobe: Add uretprobe timer

2024-07-11 Thread Peter Zijlstra
On Thu, Jul 11, 2024 at 05:00:54PM +0200, Peter Zijlstra wrote: > Let me ponder that a little, I *can* make it work, but all 'solutions' > I've come up with so far are really rather vile. This is the least horrible solution I could come up with... --- --- a/include/linux/uprobes.h +++ b/include/

Re: [PATCH 2/3] uprobes: simplify error handling for alloc_uprobe()

2024-07-11 Thread Google
On Wed, 10 Jul 2024 18:31:11 +0200 Oleg Nesterov wrote: > From: Andrii Nakryiko > > Return -ENOMEM instead of NULL, which makes caller's error handling just > a touch simpler. > > Signed-off-by: Andrii Nakryiko > Signed-off-by: Oleg Nesterov Looks good to me. Reviewed-by: Masami Hiramatsu

[ANNOUNCE] 5.10.221-rt113

2024-07-11 Thread Luis Claudio R. Goncalves
Hello RT-list! I'm pleased to announce the 5.10.221-rt113 stable release. This release is just an update to the new stable 5.10.221 version and no RT specific changes have been made. You can get this release via the git tree at: git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-stable-rt

Re: [PATCH v2 11/11] perf/uprobe: Add uretprobe timer

2024-07-11 Thread Peter Zijlstra
On Thu, Jul 11, 2024 at 03:19:19PM +0200, Oleg Nesterov wrote: > Not sure I read this patch correctly, but at first glance it looks > suspicious.. > > On 07/11, Peter Zijlstra wrote: > > > > +static void return_instance_timer(struct timer_list *timer) > > +{ > > + struct uprobe_task *utask = con

[PATCH net-next v3 1/2] vsock/virtio: refactor virtio_transport_send_pkt_work

2024-07-11 Thread Luigi Leonardi via B4 Relay
From: Marco Pinna Preliminary patch to introduce an optimization to the enqueue system. All the code used to enqueue a packet into the virtqueue is removed from virtio_transport_send_pkt_work() and moved to the new virtio_transport_send_skb() function. Co-developed-by: Luigi Leonardi Signed-of

[PATCH net-next v3 2/2] vsock/virtio: avoid queuing packets when work queue is empty

2024-07-11 Thread Luigi Leonardi via B4 Relay
From: Luigi Leonardi Introduce an optimization in virtio_transport_send_pkt: when the work queue (send_pkt_queue) is empty the packet is put directly in the virtqueue increasing the throughput. In the following benchmark (pingpong mode) the host sends a payload to the guest and waits for the sam

[PATCH net-next v3 0/2] vsock: avoid queuing on workqueue if possible

2024-07-11 Thread Luigi Leonardi via B4 Relay
sock/virtio: refactor virtio_transport_send_pkt_work net/vmw_vsock/virtio_transport.c | 143 +-- 1 file changed, 93 insertions(+), 50 deletions(-) --- base-commit: 58f9416d413aa2c20b2515233ce450a1607ef843 change-id: 20240711-pinna-49bf0ab09909 Best regards, -- Luigi Leonardi

Re: [PATCH v2 00/60] i2c: reword first drivers according to newest specification

2024-07-11 Thread Wolfram Sang
> Thanks for this big work, at the end it turned out quite nice and > I'm happy of the outcome! Me too. And thanks for the enormous review work! signature.asc Description: PGP signature

Re: [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_released

2024-07-11 Thread Steven Rostedt
On Thu, 4 Jul 2024 22:12:45 +0200 Jesper Dangaard Brouer wrote: > > > > WARNING: possible recursive locking detected > > 6.10.0-rc2-syzkaller-00797-ga12978712d90 #0 Not tainted > > > > syz-executor646/5097 i

Re: [PATCH RFC 1/1] remoteproc: mediatek: Support reserved CMA regions

2024-07-11 Thread Mathieu Poirier
On Wed, 10 Jul 2024 at 02:42, Shun-yi Wang wrote: > > From: "shun-yi.wang" > > In order to reserve specific Contiguous Memory Allocator (CMA) regions > for hardware use. When the name of the reserved region contains "cma", > then a corresponding CMA heap is added. > > Signed-off-by: shun-yi.wang

Re: [PATCH] test/vsock: add install target

2024-07-11 Thread Jakub Kicinski
On Thu, 11 Jul 2024 15:38:01 +0200 Stefan Hajnoczi wrote: > > Usually vsock tests test both the driver (virtio-vsock) in the guest and the > > device in the host kernel (vhost-vsock). So I usually run the tests in 2 > > nested VMs to test the latest changes for both the guest and the host. > > > >

Re: [PATCH v2] ring-buffer: Limit time with disabled interrupts in rb_check_pages()

2024-07-11 Thread Steven Rostedt
On Thu, 4 Jul 2024 13:03:47 +0200 Petr Pavlu wrote: > > I'm dumb. What's an "era"? > > I meant it as a calendar era or epoch. The idea was to hint this is > a number that identifies some structural state of the pages list. Maybe > pages_gen ("generation") or another name would be better? Ah,

Re: [PATCH v2 08/11] perf/uprobe: Convert (some) uprobe->refcount to SRCU

2024-07-11 Thread Jiri Olsa
On Thu, Jul 11, 2024 at 01:02:43PM +0200, Peter Zijlstra wrote: SNIP > /* Tracing handlers use ->utask to communicate with fetch methods */ > if (!get_utask()) > - goto out; > + return; > > if (arch_uprobe_ignore(&uprobe->arch, regs)) > - go

Re: [PATCH v2 04/11] perf/uprobe: RCU-ify find_uprobe()

2024-07-11 Thread Google
On Thu, 11 Jul 2024 13:02:39 +0200 Peter Zijlstra wrote: > With handle_swbp() triggering concurrently on (all) CPUs, tree_lock > becomes a bottleneck. Avoid treelock by doing RCU lookups of the > uprobe. > Looks good to me. Acked-by: Masami Hiramatsu (Google) Thanks, > Signed-off-by: Peter

Re: [PATCH] test/vsock: add install target

2024-07-11 Thread Stefan Hajnoczi
On Thu, Jul 11, 2024 at 09:07:04AM +0200, Stefano Garzarella wrote: > CCing Stefan. > > On Wed, Jul 10, 2024 at 07:00:59PM GMT, Jakub Kicinski wrote: > > On Wed, 10 Jul 2024 13:58:39 +0200 Stefano Garzarella wrote: > > > There is a comment there: > > > > > > # Avoid changing the rest of the

Re: [PATCH v2 2/2] virtio: fix vq # for balloon

2024-07-11 Thread kernel test robot
us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Michael-S-Tsirkin/virtio_balloon-add-work-around-for-out-of-spec-QEMU/20240711-0

Re: [PATCH v2 1/2] virtio_balloon: add work around for out of spec QEMU

2024-07-11 Thread kernel test robot
us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Michael-S-Tsirkin/virtio_balloon-add-work-around-for-out-of-spec-QEMU/20240711-0

Re: [PATCH v2 11/11] perf/uprobe: Add uretprobe timer

2024-07-11 Thread Oleg Nesterov
Not sure I read this patch correctly, but at first glance it looks suspicious.. On 07/11, Peter Zijlstra wrote: > > +static void return_instance_timer(struct timer_list *timer) > +{ > + struct uprobe_task *utask = container_of(timer, struct uprobe_task, > ri_timer); > + task_work_add(utas

Re: [PATCH v2 00/60] i2c: reword first drivers according to newest specification

2024-07-11 Thread Andi Shyti
Hi Wolfram, pushed in i2c/i2c-host. Thanks for this big work, at the end it turned out quite nice and I'm happy of the outcome! Thanks Andi On Sat, Jul 06, 2024 at 01:20:00PM GMT, Wolfram Sang wrote: > Start changing the wording of the I2C main header wrt. the newest I2C > v7 and SMBus 3.2 spec

Re: [PATCH v2 58/60] i2c: virtio: reword according to newest specification

2024-07-11 Thread Andi Shyti
Hi Wolfram, On Sat, Jul 06, 2024 at 01:20:58PM GMT, Wolfram Sang wrote: > Change the wording of this driver wrt. the newest I2C v7 and SMBus 3.2 > specifications and replace "master/slave" with more appropriate terms. > > Signed-off-by: Wolfram Sang Reviewed-by: Andi Shyti Thanks, Andi

Re: [PATCH v2 01/11] perf/uprobe: Re-indent labels

2024-07-11 Thread Peter Zijlstra
On Thu, Jul 11, 2024 at 01:58:04PM +0200, Jiri Olsa wrote: > On Thu, Jul 11, 2024 at 01:02:36PM +0200, Peter Zijlstra wrote: > > SNIP > > > @@ -1159,7 +1159,7 @@ static int __uprobe_register(struct inod > > if (!IS_ALIGNED(ref_ctr_offset, sizeof(short))) > > return -EINVAL; > >

Re: [PATCH v2 01/11] perf/uprobe: Re-indent labels

2024-07-11 Thread Jiri Olsa
On Thu, Jul 11, 2024 at 01:02:36PM +0200, Peter Zijlstra wrote: SNIP > @@ -1159,7 +1159,7 @@ static int __uprobe_register(struct inod > if (!IS_ALIGNED(ref_ctr_offset, sizeof(short))) > return -EINVAL; > > - retry: > +retry: > uprobe = alloc_uprobe(inode, offset, ref_c

[PATCH v2 10/11] perf/uprobe: Convert single-step and uretprobe to SRCU

2024-07-11 Thread Peter Zijlstra
Both single-step and uretprobes take a refcount on struct uprobe in handle_swbp() in order to ensure struct uprobe stays extant until a next trap. Since uprobe_unregister() only cares about the uprobe_consumer life-time, and these intra-trap sections can be arbitrarily large, create a second SRCU

[PATCH v2 03/11] rbtree: Provide rb_find_rcu() / rb_find_add_rcu()

2024-07-11 Thread Peter Zijlstra
Much like latch_tree, add two RCU methods for the regular RB-tree, which can be used in conjunction with a seqcount to provide lockless lookups. Signed-off-by: Peter Zijlstra (Intel) Reviewed-by: Masami Hiramatsu (Google) --- include/linux/rbtree.h | 67 +++

[PATCH v2 07/11] perf/uprobe: Split uprobe_unregister()

2024-07-11 Thread Peter Zijlstra
With uprobe_unregister() having grown a synchronize_srcu(), it becomes fairly slow to call. Esp. since both users of this API call it in a loop. Peel off the sync_srcu() and do it once, after the loop. Signed-off-by: Peter Zijlstra (Intel) Acked-by: Masami Hiramatsu (Google) --- include/linux/

[PATCH v2 02/11] perf/uprobe: Remove spurious whitespace

2024-07-11 Thread Peter Zijlstra
Signed-off-by: Peter Zijlstra (Intel) --- kernel/events/uprobes.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c @@ -67,7 +67,7 @@ struct uprobe { * The generic code assumes that it has two members of un

[PATCH v2 11/11] perf/uprobe: Add uretprobe timer

2024-07-11 Thread Peter Zijlstra
In order to put a bound on the uretprobe_srcu critical section, add a timer to uprobe_task. Upon every RI added or removed the timer is pushed forward to now + 1s. If the timer were ever to fire, it would convert the SRCU 'reference' to a refcount reference if possible. Signed-off-by: Peter Zijlst

[PATCH v2 08/11] perf/uprobe: Convert (some) uprobe->refcount to SRCU

2024-07-11 Thread Peter Zijlstra
With handle_swbp() hitting concurrently on (all) CPUs, potentially on the same uprobe, the uprobe->refcount can get *very* hot. Move the struct uprobe lifetime into uprobes_srcu such that it covers both the uprobe and the uprobe->consumers list. With this, handle_swbp() can use a single large SRCU

[PATCH v2 06/11] perf/uprobe: SRCU-ify uprobe->consumer list

2024-07-11 Thread Peter Zijlstra
With handle_swbp() hitting concurrently on (all) CPUs the uprobe->register_rwsem can get very contended. Add an SRCU instance to cover the consumer list and consumer lifetime. Since the consumer are externally embedded structures, unregister will have to suffer a synchronize_srcu(). A notably com

[PATCH v2 01/11] perf/uprobe: Re-indent labels

2024-07-11 Thread Peter Zijlstra
Remove the silly label indenting. s/^\ \([[:alnum:]]*\):$/\1:/g Signed-off-by: Peter Zijlstra (Intel) --- kernel/events/uprobes.c | 26 +- 1 file changed, 13 insertions(+), 13 deletions(-) --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c @@ -205,7 +205,7 @

[PATCH v2 04/11] perf/uprobe: RCU-ify find_uprobe()

2024-07-11 Thread Peter Zijlstra
With handle_swbp() triggering concurrently on (all) CPUs, tree_lock becomes a bottleneck. Avoid treelock by doing RCU lookups of the uprobe. Signed-off-by: Peter Zijlstra (Intel) --- kernel/events/uprobes.c | 49 +++- 1 file changed, 40 insertions(+)

[PATCH v2 00/11] perf/uprobe: Optimize uprobes

2024-07-11 Thread Peter Zijlstra
Hi! These patches implement the (S)RCU based proposal to optimize uprobes. On my c^Htrusty old IVB-EP -- where each (of the 40) CPU calls 'func' in a tight loop: perf probe -x ./uprobes test=func perf stat -ae probe_uprobe:test -- sleep 1 perf probe -x ./uprobes test=func%return perf s

[PATCH v2 05/11] perf/uprobe: Simplify UPROBE_HANDLER_REMOVE logic

2024-07-11 Thread Peter Zijlstra
Specifically, get rid of the uprobe->consumers re-load, which isn't sound under RCU. Signed-off-by: Peter Zijlstra (Intel) --- kernel/events/uprobes.c | 17 ++--- 1 file changed, 14 insertions(+), 3 deletions(-) --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c @@ -2101,

[PATCH v2 09/11] srcu: Add __srcu_clone_read_lock()

2024-07-11 Thread Peter Zijlstra
In order to support carrying an srcu_read_lock() section across fork, where both the parent and child process will do: srcu_read_unlock(), it is needed to account for the extra decrement with an extra increment at fork time. Signed-off-by: Peter Zijlstra (Intel) --- include/linux/srcu.h |

Re: [PATCH 3/3] uprobes: make uprobe_register() return struct uprobe *

2024-07-11 Thread Oleg Nesterov
On 07/10, Oleg Nesterov wrote: > > -void uprobe_unregister(struct inode *inode, loff_t offset, struct > uprobe_consumer *uc) > +void uprobe_unregister(struct uprobe *uprobe, struct uprobe_consumer *uc) > { > - struct uprobe *uprobe; > - > - uprobe = find_uprobe(inode, offset); > - if

Re: [PATCH v3 0/2] vdpa: support set mac address from vdpa tool

2024-07-11 Thread Leonardo Milleri
Sorry for the noise, resending the email in text format Hi All, My answers inline below >> Any specific reason to pre-create those large number of vdpa devices of the >> pool? >> I was hoping to create vdpa device with needed attributes, when spawning a >> kubevirt instance. >> K8s DRA infrast

Re: [PATCH 0/3] uprobes: future cleanups for review

2024-07-11 Thread Oleg Nesterov
On 07/11, Peter Zijlstra wrote: > > On Wed, Jul 10, 2024 at 06:30:22PM +0200, Oleg Nesterov wrote: > > > > In fact I would like to push 2 more cleanups before the more significant > > changes, but they certainly conflict with your ongoing work, albeit only > > textually. > > > > Let me send the pat

[PATCH v2] bootconfig: Remove duplicate included header file linux/bootconfig.h

2024-07-11 Thread Thorsten Blum
The header file linux/bootconfig.h is included whether __KERNEL__ is defined or not. Include it only once before the #ifdef/#else/#endif preprocessor directives and remove the following make includecheck warning: linux/bootconfig.h is included more than once Move the comment to the top and del

Re: [PATCH 0/3] uprobes: future cleanups for review

2024-07-11 Thread Peter Zijlstra
On Wed, Jul 10, 2024 at 06:30:22PM +0200, Oleg Nesterov wrote: > On 07/10, Oleg Nesterov wrote: > > > > Peter, these simple cleanups should not conflict with your changes, > > but I can resend them later if it causes any inconvenience. > > In fact I would like to push 2 more cleanups before the mo

Re: [RFC PATCH v4] ptp: Add vDSO-style vmclock support

2024-07-11 Thread David Woodhouse
On Thu, 2024-07-11 at 09:25 +0200, Peter Hilber wrote: > > IMHO this phrasing is better, since it directly refers to the state of the > structure. Thanks. I'll update it. > AFAIU if there would be abnormal delays in store buffers, causing some > driver to still see the old clock for some time, t

Re: [RFC PATCH v4] ptp: Add vDSO-style vmclock support

2024-07-11 Thread Peter Hilber
On 10.07.24 18:01, David Woodhouse wrote: > On Wed, 2024-07-10 at 15:07 +0200, Peter Hilber wrote: >> On 08.07.24 11:27, David Woodhouse wrote: >>> From: David Woodhouse >>> >>> The vmclock "device" provides a shared memory region with precision clock >>> information. By using shared memory, it is

Re: [PATCH] test/vsock: add install target

2024-07-11 Thread Stefano Garzarella
CCing Stefan. On Wed, Jul 10, 2024 at 07:00:59PM GMT, Jakub Kicinski wrote: On Wed, 10 Jul 2024 13:58:39 +0200 Stefano Garzarella wrote: There is a comment there: # Avoid changing the rest of the logic here and lib.mk. Added by commit 17eac6c2db8b2cdfe33d40229bdda2acd86b304a. IIUC they