Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Mar 2010 14:35:48 +0000 (UTC)
From:      Fabien Thomas <fabient@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r205694 - head/sys/dev/hwpmc
Message-ID:  <201003261435.o2QEZmv5073442@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: fabient
Date: Fri Mar 26 14:35:48 2010
New Revision: 205694
URL: http://svn.freebsd.org/changeset/base/205694

Log:
  Handling SIGPIPE will cause deadlock/crash.
  Return an error immediatly in case of hard shutdown.
  
  MFC after: 3days

Modified:
  head/sys/dev/hwpmc/hwpmc_logging.c

Modified: head/sys/dev/hwpmc/hwpmc_logging.c
==============================================================================
--- head/sys/dev/hwpmc/hwpmc_logging.c	Fri Mar 26 14:29:57 2010	(r205693)
+++ head/sys/dev/hwpmc/hwpmc_logging.c	Fri Mar 26 14:35:48 2010	(r205694)
@@ -298,7 +298,6 @@ pmclog_loop(void *arg)
 
 		mtx_unlock(&pmc_kthread_mtx);
 
-sigpipe_retry:
 		/* process the request */
 		PMCDBG(LOG,WRI,2, "po=%p base=%p ptr=%p", po,
 		    lb->plb_base, lb->plb_ptr);
@@ -322,9 +321,6 @@ sigpipe_retry:
 
 		if (error) {
 			/* XXX some errors are recoverable */
-			if (error == EPIPE)
-				goto sigpipe_retry;
-
 			/* send a SIGIO to the owner and exit */
 			PROC_LOCK(p);
 			psignal(p, SIGIO);



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