Reading from alloc/free_traces attribute in /sys/kernel/debug/slab/ results in an endless sequence of "No data". This is because slab_debugfs_start() does not check for a "past end of file" condition and return NULL. Fix it by adding such a check and return NULL. Fixes: 64dd68497be7 ("mm: slub: move sysfs slab alloc/free interfaces to debugfs") Cc: <stable@xxxxxxxxxxxxxxx> # v5.14+ Reported-by: Steffen Maier <maier@xxxxxxxxxxxxx> Signed-off-by: Gerald Schaefer <gerald.schaefer@xxxxxxxxxxxxx> --- mm/slub.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mm/slub.c b/mm/slub.c index f7368bfffb7a..336609671bc2 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -6115,6 +6115,11 @@ static void *slab_debugfs_next(struct seq_file *seq, void *v, loff_t *ppos) static void *slab_debugfs_start(struct seq_file *seq, loff_t *ppos) { + struct loc_track *t = seq->private; + + if (*ppos > t->count) + return NULL; + return ppos; } -- 2.25.1