DragonFly-2.3.1.768.ga3244 master sys/dev/misc/dcons dcons_os.c

看板DFBSD_commit作者時間16年前 (2009/07/12 07:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit a32446b7b42983c7cb48c360d105496b4a3596c3 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Sat Jul 11 15:56:25 2009 -0700 vrevoke/single-user - fix more revoke issues. * vrevoke() no longer clears vp->v_rdev. Doing so interferes with specfs's ability to call dev_dclose(). Fixing this will allow the regular close of the vnode to close the underlying device. Since the revoke code detaches the vnode from any user-visible file descriptors the vnode will end up being closed the moment the last referenced to the detached fp goes away. * kill 1 no longer leaves the syscons in a state where both /dev/ttyv0 and /dev/console are marked open (due to the above bug). This state would cause the keyboard to stop working sometimes when dropping into single user. * Add dev_drevoke() and friends. This allows a device to do something when an attempt is made to revoke() the related vnode. TTY and PTY devices now attempt to break out of any ttysleep() operation (such as when processes are blocked in read()). This is advisory and if it fails to break a process out of a blocked condition that process will still detach after the blocked condition is resolved normally. Summary of changes: sys/dev/misc/dcons/dcons_os.c | 1 + sys/dev/misc/nmdm/nmdm.c | 1 + sys/dev/misc/syscons/syscons.c | 3 ++- sys/dev/misc/syscons/sysmouse.c | 1 + sys/dev/serial/cy/cy.c | 3 ++- sys/dev/serial/dgb/dgm.c | 3 ++- sys/dev/serial/digi/digi.c | 3 ++- sys/dev/serial/rc/rc.c | 3 ++- sys/dev/serial/rp/rp.c | 1 + sys/dev/serial/si/si.c | 3 ++- sys/dev/serial/sio/sio.c | 3 ++- sys/dev/serial/stl/stallion.c | 3 ++- sys/dev/serial/stli/istallion.c | 3 ++- sys/dev/usbmisc/ucom/ucom.c | 3 ++- sys/kern/kern_device.c | 18 ++++++++++++++++++ sys/kern/tty.c | 22 ++++++++++++++++++++++ sys/kern/tty_pty.c | 6 ++++-- sys/kern/vfs_subr.c | 19 ++++++++++++++++--- sys/sys/device.h | 16 +++++++++++++++- sys/sys/tty.h | 1 + 20 files changed, 100 insertions(+), 16 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/a32446b7b42983c7cb48c360d105496b4a3596c3 -- DragonFly BSD source repository
文章代碼(AID): #1AMI3rXp (DFBSD_commit)