Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Dec 2015 18:27:30 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r291653 - in head: share/man/man9 sys/fs/devfs sys/sys
Message-ID:  <201512021827.tB2IRUdV074513@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Wed Dec  2 18:27:30 2015
New Revision: 291653
URL: https://svnweb.freebsd.org/changeset/base/291653

Log:
  The cdevpriv_dtr_t typedef was not able to be used in a function prototype
  like the various d_*_t typedefs since it declared a function pointer rather
  than a function.  Add a new d_priv_dtor_t typedef that declares the function
  and can be used as a function prototype.  The previous typedef wasn't
  useful outside of the cdevpriv implementation, so retire it.
  
  The name d_priv_dtor_t was chosen to be more consistent with cdev methods
  since it is commonly used in place of d_close_t even though it is not a
  direct pointer in struct cdevsw.
  
  Reviewed by:	kib, imp
  MFC after:	1 month
  Differential Revision:	https://reviews.freebsd.org/D4340

Modified:
  head/share/man/man9/devfs_set_cdevpriv.9
  head/sys/fs/devfs/devfs_vnops.c
  head/sys/sys/conf.h

Modified: head/share/man/man9/devfs_set_cdevpriv.9
==============================================================================
--- head/share/man/man9/devfs_set_cdevpriv.9	Wed Dec  2 17:26:37 2015	(r291652)
+++ head/share/man/man9/devfs_set_cdevpriv.9	Wed Dec  2 18:27:30 2015	(r291653)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd August 20, 2015
+.Dd December 2, 2015
 .Dt DEVFS_CDEVPRIV 9
 .Os
 .Sh NAME
@@ -36,12 +36,12 @@
 .In sys/param.h
 .In sys/conf.h
 .Bd -literal
-typedef	void (*cdevpriv_dtr_t)(void *data);
+typedef	void d_priv_dtor_t(void *data);
 .Ed
 .Ft int
 .Fn devfs_get_cdevpriv "void **datap"
 .Ft int
-.Fn devfs_set_cdevpriv "void *priv" "cdevpriv_dtr_t dtr"
+.Fn devfs_set_cdevpriv "void *priv" "d_priv_dtor_t *dtr"
 .Ft void
 .Fn devfs_clear_cdevpriv "void"
 .Sh DESCRIPTION

Modified: head/sys/fs/devfs/devfs_vnops.c
==============================================================================
--- head/sys/fs/devfs/devfs_vnops.c	Wed Dec  2 17:26:37 2015	(r291652)
+++ head/sys/fs/devfs/devfs_vnops.c	Wed Dec  2 18:27:30 2015	(r291653)
@@ -151,7 +151,7 @@ devfs_get_cdevpriv(void **datap)
 }
 
 int
-devfs_set_cdevpriv(void *priv, cdevpriv_dtr_t priv_dtr)
+devfs_set_cdevpriv(void *priv, d_priv_dtor_t *priv_dtr)
 {
 	struct file *fp;
 	struct cdev_priv *cdp;

Modified: head/sys/sys/conf.h
==============================================================================
--- head/sys/sys/conf.h	Wed Dec  2 17:26:37 2015	(r291652)
+++ head/sys/sys/conf.h	Wed Dec  2 18:27:30 2015	(r291653)
@@ -277,9 +277,9 @@ void	setconf(void);
 
 #define	dev2unit(d)	((d)->si_drv0)
 
-typedef	void (*cdevpriv_dtr_t)(void *data);
+typedef void d_priv_dtor_t(void *data);
 int	devfs_get_cdevpriv(void **datap);
-int	devfs_set_cdevpriv(void *priv, cdevpriv_dtr_t dtr);
+int	devfs_set_cdevpriv(void *priv, d_priv_dtor_t *dtr);
 void	devfs_clear_cdevpriv(void);
 void	devfs_fpdrop(struct file *fp);	/* XXX This is not public KPI */
 



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