6 Commits

Author SHA1 Message Date
hselasky
cd2aff7346 Streamline use of cdevpriv and correct some corner cases.
1) It is not useful to call "devfs_clear_cdevpriv()" from
"d_close" callbacks, hence for example read, write, ioctl and
so on might be sleeping at the time of "d_close" being called
and then then freed private data can still be accessed.
Examples: dtrace, linux_compat, ksyms (all fixed by this patch)

2) In sys/dev/drm* there are some cases in which memory will
be freed twice, if open fails, first by code in the open
routine, secondly by the cdevpriv destructor. Move registration
of the cdevpriv to the end of the drm open routines.

3) devfs_clear_cdevpriv() is not called if the "d_open" callback
registered cdevpriv data and the "d_open" callback function
returned an error. Fix this.

Discussed with:	phk
MFC after:	2 weeks
2012-08-15 16:19:39 +00:00
ru
2628ba45f7 [mdoc] Fixed .Dt call. 2011-05-25 14:13:53 +00:00
uqs
3960614646 mdoc: order prologue macros consistently by Dd/Dt/Os
Although groff_mdoc(7) gives another impression, this is the ordering
most widely used and also required by mdocml/mandoc.

Reviewed by:	ru
Approved by:	philip, ed (mentors)
2010-04-14 19:08:06 +00:00
delphij
40da08a8a7 Add several necessary .El's.
MFC after:	2 weeks
2010-02-27 01:17:44 +00:00
ed
e74a903243 Fix argument layout of devfs_get_cdevpriv().
Right now it shows `void' and `**datap' as two different arguments,
while they belong together.
2008-11-16 21:26:56 +00:00
kib
26d6e1da5d Add a first draft of the cdevpriv(9) documentation 2008-09-11 11:41:33 +00:00