The pppoe_seq_show() function displays session ID, remote MAC address, and the underlying Ethernet device, but omits the associated PPP interface name. This makes it difficult to correlate PPPoE sessions with their respective pppX interfaces. Retrieve the interface name using ppp_dev_name() and append it as a new "PPP-Device" column in the /proc/net/pppoe output. Signed-off-by: Pavan Kumar --- drivers/net/ppp/pppoe.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/ppp/pppoe.c b/drivers/net/ppp/pppoe.c index 6874a1a8edaf..cb31f5db43e8 100644 --- a/drivers/net/ppp/pppoe.c +++ b/drivers/net/ppp/pppoe.c @@ -963,17 +963,19 @@ static int pppoe_seq_show(struct seq_file *seq, void *v) { struct pppox_sock *po; char *dev_name; + char *ppp_name; if (v == SEQ_START_TOKEN) { - seq_puts(seq, "Id Address Device\n"); + seq_puts(seq, "Id Address Device PPP-Device\n"); goto out; } po = v; dev_name = po->pppoe_pa.dev; + ppp_name = ppp_dev_name(&po->chan); - seq_printf(seq, "%08X %pM %8s\n", - po->pppoe_pa.sid, po->pppoe_pa.remote, dev_name); + seq_printf(seq, "%08X %pM %8s %10s\n", + po->pppoe_pa.sid, po->pppoe_pa.remote, dev_name, ppp_name ? ppp_name : ""); out: return 0; }