=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/kdump/kdump.c,v retrieving revision 1.158 retrieving revision 1.159 diff -c -r1.158 -r1.159 *** src/usr.bin/kdump/kdump.c 2023/08/21 01:37:56 1.158 --- src/usr.bin/kdump/kdump.c 2023/11/09 15:43:28 1.159 *************** *** 1,4 **** ! /* $OpenBSD: kdump.c,v 1.158 2023/08/21 01:37:56 visa Exp $ */ /*- * Copyright (c) 1988, 1993 --- 1,4 ---- ! /* $OpenBSD: kdump.c,v 1.159 2023/11/09 15:43:28 kn Exp $ */ /*- * Copyright (c) 1988, 1993 *************** *** 88,93 **** --- 88,94 ---- char *tracefile = DEF_TRACEFILE; struct ktr_header ktr_header; pid_t pid_opt = -1; + const char *program; char* utracefilter; #define eqs(s1, s2) (strcmp((s1), (s2)) == 0) *************** *** 169,175 **** screenwidth = 80; } ! while ((ch = getopt(argc, argv, "f:dHlm:np:RTt:u:xX")) != -1) switch (ch) { case 'f': tracefile = optarg; --- 170,176 ---- screenwidth = 80; } ! while ((ch = getopt(argc, argv, "f:dHlm:nP:p:RTt:u:xX")) != -1) switch (ch) { case 'f': tracefile = optarg; *************** *** 191,196 **** --- 192,200 ---- case 'n': fancy = 0; break; + case 'P': + program = optarg; + break; case 'p': pid_opt = strtonum(optarg, 1, INT_MAX, &errstr); if (errstr) *************** *** 252,257 **** --- 256,264 ---- silent = 0; if (pid_opt != -1 && pid_opt != ktr_header.ktr_pid) silent = 1; + if (program != NULL && + strcmp(ktr_header.ktr_comm, program) != 0) + silent = 1; if (utracefilter == NULL && silent == 0 && trpoints & (1<