Re: [PATCH] kgdb: Remove kgdb_schedule_breakpoint()

From: Davidlohr Bueso
Date: Wed Feb 10 2021 - 14:48:33 EST


On Wed, 10 Feb 2021, Daniel Thompson wrote:

To the very best of my knowledge there has never been any in-tree
code that calls this function. It exists largely to support an
out-of-tree driver that provides kgdb-over-ethernet using the
netpoll API.

kgdboe has been out-of-tree for more than 10 years and I don't
recall any serious attempt to upstream it at any point in the last
five. At this stage it looks better to stop carrying this code in
the kernel and integrate the code into the out-of-tree driver
instead.

The long term trajectory for the kernel looks likely to include
effort to remove or reduce the use of tasklets (something that has
also been true for the last 10 years). Thus the main real reason
for this patch is to make explicit that the in-tree kgdb features
do not require tasklets.

I'm happy to see another user gone, I missed that it was even an option
to remove this altogether. Yeah so in general I started sending random
patches to get rid of some tasklets after seeing the recent extentions
in 12cc923f1cc (tasklet: Introduce new initialization API), which is
really the wrong way to go imo. Some driver maintainers/authors push
back in the name of performance (albeit tasklets provide no guarantees
because of ksoftirqd, for example), some don't care as much. There are
also constantly new users being added (despite the explicit deprecation
of the api) defering through tasklets, which makes me wonder if the tasklet
removal is anything but a pipe dream.

Acked-by: Davidlohr Bueso <dbueso@xxxxxxx>

Signed-off-by: Daniel Thompson <daniel.thompson@xxxxxxxxxx>
---

Notes:
During this cycle two developers have proposed tidying up the
DECLARE_TASKLET_OLD() in the debug core. Both threads ended with a
suggestion to remove kgdb_schedule_breakpoint() but I don't recall
seeing a follow up patch for either thread... so I wrote it myself.

Thanks,
Davidlohr