Date: Wed, 20 Aug 2008 08:31:58 +0000 (UTC) From: Ed Schouten <ed@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src ObsoleteFiles.inc UPDATING src/bin/sh miscbltin.c src/etc login.conf src/etc/defaults devfs.rules src/lib/libc/stdlib Makefile.inc Symbol.map grantpt.3 ptsname.3 ptsname.c src/lib/libc/sys Makefile.inc Symbol.map getrlimit.2 ... Message-ID: <200808200836.m7K8aoi3023764@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
ed 2008-08-20 08:31:58 UTC FreeBSD src repository Modified files: . ObsoleteFiles.inc UPDATING bin/sh miscbltin.c etc login.conf etc/defaults devfs.rules lib/libc/stdlib Makefile.inc Symbol.map lib/libc/sys Makefile.inc Symbol.map getrlimit.2 lib/libutil login.conf.5 login_class.c share/man/man4 Makefile ddb.4 pty.4 termios.4 sys/amd64/conf GENERIC sys/bsm audit_kevents.h sys/compat/freebsd32 freebsd32_syscall.h freebsd32_syscalls.c freebsd32_sysent.c syscalls.master sys/compat/linux linux_ioctl.c linux_stats.c sys/conf NOTES files options sys/dev/dcons dcons.h dcons_os.c sys/dev/nmdm nmdm.c sys/dev/ofw ofw_console.c sys/dev/syscons schistory.c scmouse.c scterm-sc.c scvesactl.c scvidctl.c syscons.c syscons.h sysmouse.c sys/dev/uart uart_core.c uart_tty.c sys/dev/usb ucom.c ucomvar.h uftdi.c umodem.c sys/fs/devfs devfs_vnops.c sys/i386/conf GENERIC XBOX sys/i386/ibcs2 ibcs2_ioctl.c sys/ia64/conf GENERIC SKI sys/ia64/ia64 ssc.c sys/kern init_main.c init_sysent.c kern_acct.c kern_conf.c kern_descrip.c kern_exit.c kern_proc.c kern_resource.c subr_prf.c syscalls.c syscalls.master systrace_args.c tty.c tty_compat.c tty_cons.c tty_info.c tty_pts.c tty_pty.c sys/modules/nmdm Makefile sys/modules/rc Makefile sys/pc98/cbus scterm-sck.c sys/pc98/conf GENERIC NOTES sys/powerpc/conf GENERIC sys/sparc64/conf GENERIC sys/sun4v/conf GENERIC sys/sun4v/sun4v hvcons.c sys/sys conf.h file.h param.h proc.h resource.h resourcevar.h syscall.h syscall.mk sysproto.h termios.h tty.h ttycom.h ttydefaults.h user.h usr.bin/fstat fstat.c usr.bin/procstat procstat.1 procstat_files.c usr.sbin/pstat pstat.8 pstat.c Added files: lib/libc/stdlib ptsname.3 ptsname.c lib/libc/sys posix_openpt.2 share/man/man4 pts.4 sys/kern tty_inq.c tty_outq.c tty_ttydisc.c sys/sys ttydevsw.h ttydisc.h ttyqueue.h Removed files: lib/libc/stdlib grantpt.3 sys/kern tty_conf.c sys/sys linedisc.h Log: SVN rev 181905 on 2008-08-20 08:31:58Z by ed Integrate the new MPSAFE TTY layer to the FreeBSD operating system. The last half year I've been working on a replacement TTY layer for the FreeBSD kernel. The new TTY layer was designed to improve the following: - Improved driver model: The old TTY layer has a driver model that is not abstract enough to make it friendly to use. A good example is the output path, where the device drivers directly access the output buffers. This means that an in-kernel PPP implementation must always convert network buffers into TTY buffers. If a PPP implementation would be built on top of the new TTY layer (still needs a hooks layer, though), it would allow the PPP implementation to directly hand the data to the TTY driver. - Improved hotplugging: With the old TTY layer, it isn't entirely safe to destroy TTY's from the system. This implementation has a two-step destructing design, where the driver first abandons the TTY. After all threads have left the TTY, the TTY layer calls a routine in the driver, which can be used to free resources (unit numbers, etc). The pts(4) driver also implements this feature, which means posix_openpt() will now return PTY's that are created on the fly. - Improved performance: One of the major improvements is the per-TTY mutex, which is expected to improve scalability when compared to the old Giant locking. Another change is the unbuffered copying to userspace, which is both used on TTY device nodes and PTY masters. Upgrading should be quite straightforward. Unlike previous versions, existing kernel configuration files do not need to be changed, except when they reference device drivers that are listed in UPDATING. Obtained from: //depot/projects/mpsafetty/... Approved by: philip (ex-mentor) Discussed: on the lists, at BSDCan, at the DevSummit Sponsored by: Snow B.V., the Netherlands dcons(4) fixed by: kan Revision Changes Path 1.155 +3 -0 src/ObsoleteFiles.inc 1.539 +19 -0 src/UPDATING 1.36 +4 -1 src/bin/sh/miscbltin.c 1.6 +2 -1 src/etc/defaults/devfs.rules 1.52 +1 -0 src/etc/login.conf 1.55 +6 -6 src/lib/libc/stdlib/Makefile.inc 1.8 +0 -1 src/lib/libc/stdlib/Symbol.map 1.4 +0 -225 src/lib/libc/stdlib/grantpt.3 (dead) 1.1 +160 -0 src/lib/libc/stdlib/ptsname.3 (new) 1.1 +95 -0 src/lib/libc/stdlib/ptsname.c (new) 1.137 +2 -2 src/lib/libc/sys/Makefile.inc 1.18 +1 -0 src/lib/libc/sys/Symbol.map 1.25 +3 -1 src/lib/libc/sys/getrlimit.2 1.1 +135 -0 src/lib/libc/sys/posix_openpt.2 (new) 1.62 +3 -2 src/lib/libutil/login.conf.5 1.27 +13 -12 src/lib/libutil/login_class.c 1.426 +1 -0 src/share/man/man4/Makefile 1.57 +7 -1 src/share/man/man4/ddb.4 1.1 +181 -0 src/share/man/man4/pts.4 (new) 1.20 +48 -201 src/share/man/man4/pty.4 1.34 +20 -4 src/share/man/man4/termios.4 1.507 +1 -1 src/sys/amd64/conf/GENERIC 1.14 +1 -0 src/sys/bsm/audit_kevents.h 1.86 +2 -1 src/sys/compat/freebsd32/freebsd32_syscall.h 1.77 +1 -0 src/sys/compat/freebsd32/freebsd32_syscalls.c 1.87 +1 -0 src/sys/compat/freebsd32/freebsd32_sysent.c 1.102 +1 -0 src/sys/compat/freebsd32/syscalls.master 1.142 +7 -2 src/sys/compat/linux/linux_ioctl.c 1.93 +11 -1 src/sys/compat/linux/linux_stats.c 1.1504 +1 -8 src/sys/conf/NOTES 1.1331 +5 -3 src/sys/conf/files 1.636 +1 -1 src/sys/conf/options 1.7 +1 -1 src/sys/dev/dcons/dcons.h 1.23 +48 -345 src/sys/dev/dcons/dcons_os.c 1.41 +158 -252 src/sys/dev/nmdm/nmdm.c 1.40 +32 -111 src/sys/dev/ofw/ofw_console.c 1.21 +3 -4 src/sys/dev/syscons/schistory.c 1.43 +2 -3 src/sys/dev/syscons/scmouse.c 1.24 +1 -1 src/sys/dev/syscons/scterm-sc.c 1.26 +4 -8 src/sys/dev/syscons/scvesactl.c 1.40 +6 -12 src/sys/dev/syscons/scvidctl.c 1.461 +156 -171 src/sys/dev/syscons/syscons.c 1.91 +15 -9 src/sys/dev/syscons/syscons.h 1.31 +32 -103 src/sys/dev/syscons/sysmouse.c 1.25 +1 -2 src/sys/dev/uart/uart_core.c 1.30 +72 -93 src/sys/dev/uart/uart_tty.c 1.67 +131 -203 src/sys/dev/usb/ucom.c 1.11 +5 -3 src/sys/dev/usb/ucomvar.h 1.39 +16 -11 src/sys/dev/usb/uftdi.c 1.72 +2 -2 src/sys/dev/usb/umodem.c 1.165 +0 -3 src/sys/fs/devfs/devfs_vnops.c 1.497 +1 -1 src/sys/i386/conf/GENERIC 1.10 +1 -1 src/sys/i386/conf/XBOX 1.32 +17 -2 src/sys/i386/ibcs2/ibcs2_ioctl.c 1.99 +1 -1 src/sys/ia64/conf/GENERIC 1.26 +1 -1 src/sys/ia64/conf/SKI 1.31 +40 -100 src/sys/ia64/ia64/ssc.c 1.294 +1 -1 src/sys/kern/init_main.c 1.241 +2 -1 src/sys/kern/init_sysent.c 1.99 +3 -3 src/sys/kern/kern_acct.c 1.220 +0 -11 src/sys/kern/kern_conf.c 1.337 +12 -0 src/sys/kern/kern_descrip.c 1.312 +28 -34 src/sys/kern/kern_exit.c 1.266 +30 -27 src/sys/kern/kern_proc.c 1.190 +25 -0 src/sys/kern/kern_resource.c 1.131 +14 -10 src/sys/kern/subr_prf.c 1.225 +2 -1 src/sys/kern/syscalls.c 1.244 +1 -0 src/sys/kern/syscalls.master 1.25 +27 -0 src/sys/kern/systrace_args.c 1.282 +1374 -2852 src/sys/kern/tty.c 1.40 +32 -23 src/sys/kern/tty_compat.c 1.25 +0 -205 src/sys/kern/tty_conf.c (dead) 1.145 +12 -3 src/sys/kern/tty_cons.c 1.2 +4 -10 src/sys/kern/tty_info.c 1.1 +502 -0 src/sys/kern/tty_inq.c (new) 1.1 +365 -0 src/sys/kern/tty_outq.c (new) 1.19 +516 -783 src/sys/kern/tty_pts.c 1.160 +60 -752 src/sys/kern/tty_pty.c 1.1 +1131 -0 src/sys/kern/tty_ttydisc.c (new) 1.4 +0 -9 src/sys/modules/nmdm/Makefile 1.4 +1 -6 src/sys/modules/rc/Makefile 1.18 +1 -1 src/sys/pc98/cbus/scterm-sck.c 1.309 +2 -2 src/sys/pc98/conf/GENERIC 1.93 +1 -1 src/sys/pc98/conf/NOTES 1.82 +1 -1 src/sys/powerpc/conf/GENERIC 1.140 +1 -1 src/sys/sparc64/conf/GENERIC 1.21 +1 -1 src/sys/sun4v/conf/GENERIC 1.9 +49 -113 src/sys/sun4v/sun4v/hvcons.c 1.243 +0 -3 src/sys/sys/conf.h 1.81 +1 -0 src/sys/sys/file.h 1.193 +0 -141 src/sys/sys/linedisc.h (dead) 1.363 +1 -1 src/sys/sys/param.h 1.518 +4 -5 src/sys/sys/proc.h 1.33 +2 -1 src/sys/sys/resource.h 1.54 +2 -0 src/sys/sys/resourcevar.h 1.222 +3 -2 src/sys/sys/syscall.h 1.177 +3 -2 src/sys/sys/syscall.mk 1.226 +6 -1 src/sys/sys/sysproto.h 1.23 +13 -6 src/sys/sys/termios.h 1.104 +5 -18 src/sys/sys/tty.h 1.28 +2 -1 src/sys/sys/ttycom.h 1.21 +1 -0 src/sys/sys/ttydefaults.h 1.1 +158 -0 src/sys/sys/ttydevsw.h (new) 1.1 +105 -0 src/sys/sys/ttydisc.h (new) 1.1 +157 -0 src/sys/sys/ttyqueue.h (new) 1.77 +1 -0 src/sys/sys/user.h 1.70 +52 -0 src/usr.bin/fstat/fstat.c 1.6 +3 -1 src/usr.bin/procstat/procstat.1 1.7 +5 -0 src/usr.bin/procstat/procstat_files.c 1.50 +39 -76 src/usr.sbin/pstat/pstat.8 1.105 +53 -87 src/usr.sbin/pstat/pstat.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200808200836.m7K8aoi3023764>