Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Mar 2018 19:33:00 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r331319 - in stable/11: lib/libpmc sys/dev/hwpmc
Message-ID:  <201803211933.w2LJX05p042562@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Wed Mar 21 19:33:00 2018
New Revision: 331319
URL: https://svnweb.freebsd.org/changeset/base/331319

Log:
  MFC r328087 (by fabient):
  Fix pmcstat exit from kernel introduced by r325275.
  
  PR:	223689

Modified:
  stable/11/lib/libpmc/pmclog.c
  stable/11/sys/dev/hwpmc/hwpmc_logging.c
  stable/11/sys/dev/hwpmc/hwpmc_mod.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/lib/libpmc/pmclog.c
==============================================================================
--- stable/11/lib/libpmc/pmclog.c	Wed Mar 21 18:57:31 2018	(r331318)
+++ stable/11/lib/libpmc/pmclog.c	Wed Mar 21 19:33:00 2018	(r331319)
@@ -335,6 +335,8 @@ pmclog_get_event(void *cookie, char **data, ssize_t *l
 			ev->pl_u.pl_cc.pl_pc[npc] = (uintfptr_t) 0;
 		break;
 	case PMCLOG_TYPE_CLOSELOG:
+		ev->pl_state = PMCLOG_EOF;
+		return (-1);
 	case PMCLOG_TYPE_DROPNOTIFY:
 		/* nothing to do */
 		break;

Modified: stable/11/sys/dev/hwpmc/hwpmc_logging.c
==============================================================================
--- stable/11/sys/dev/hwpmc/hwpmc_logging.c	Wed Mar 21 18:57:31 2018	(r331318)
+++ stable/11/sys/dev/hwpmc/hwpmc_logging.c	Wed Mar 21 19:33:00 2018	(r331319)
@@ -803,6 +803,8 @@ pmclog_close(struct pmc_owner *po)
 
 	PMCDBG1(LOG,CLO,1, "po=%p", po);
 
+	pmclog_process_closelog(po);
+
 	mtx_lock(&pmc_kthread_mtx);
 
 	/*

Modified: stable/11/sys/dev/hwpmc/hwpmc_mod.c
==============================================================================
--- stable/11/sys/dev/hwpmc/hwpmc_mod.c	Wed Mar 21 18:57:31 2018	(r331318)
+++ stable/11/sys/dev/hwpmc/hwpmc_mod.c	Wed Mar 21 19:33:00 2018	(r331319)
@@ -2928,7 +2928,6 @@ pmc_syscall_handler(struct thread *td, void *syscall_a
 			    po : NULL);
 		} else if (po->po_flags & PMC_PO_OWNS_LOGFILE) {
 			pmclog_proc_ignite(pmclog_proc_handle, NULL);
-			pmclog_process_closelog(po);
 			error = pmclog_close(po);
 			if (error == 0) {
 				LIST_FOREACH(pm, &po->po_pmcs, pm_next)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803211933.w2LJX05p042562>