X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/b886928ded347f9ee990fa7ddab7e4339bedeee1..ad7871609881e73855d0b04da49b486cd93efca7:/usr/src/sys/tahoe/vba/mp.c diff --git a/usr/src/sys/tahoe/vba/mp.c b/usr/src/sys/tahoe/vba/mp.c index 169555b9a9..250f4c91fa 100644 --- a/usr/src/sys/tahoe/vba/mp.c +++ b/usr/src/sys/tahoe/vba/mp.c @@ -5,19 +5,35 @@ * This code is derived from software contributed to Berkeley by * Computer Consoles Inc. * - * Redistribution and use in source and binary forms are permitted - * provided that the above copyright notice and this paragraph are - * duplicated in all such forms and that any documentation, - * advertising materials, and other materials related to such - * distribution and use acknowledge that the software was developed - * by the University of California, Berkeley. The name of the - * University may not be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED - * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * - * @(#)mp.c 7.12 (Berkeley) %G% + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)mp.c 7.17 (Berkeley) 5/16/91 */ #include "mp.h" @@ -26,25 +42,25 @@ * Multi Protocol Communications Controller (MPCC). * Asynchronous Terminal Protocol Support. */ -#include "param.h" -#include "ioctl.h" -#include "tty.h" -#include "user.h" -#include "map.h" -#include "buf.h" -#include "conf.h" -#include "file.h" -#include "errno.h" -#include "syslog.h" -#include "vmmac.h" -#include "kernel.h" -#include "clist.h" - -#include "machine/pte.h" -#include "machine/mtpr.h" - -#include "../tahoevba/vbavar.h" -#include "../tahoevba/mpreg.h" +#include "sys/param.h" +#include "sys/ioctl.h" +#include "sys/tty.h" +#include "sys/user.h" +#include "sys/map.h" +#include "sys/buf.h" +#include "sys/conf.h" +#include "sys/file.h" +#include "sys/errno.h" +#include "sys/syslog.h" +#include "sys/vmmac.h" +#include "sys/kernel.h" +#include "sys/clist.h" + +#include "../include/pte.h" +#include "../include/mtpr.h" + +#include "../vba/vbavar.h" +#include "../vba/mpreg.h" #define MPCHUNK 16 #define MPPORT(n) ((n) & 0xf) @@ -258,9 +274,8 @@ restart: } while ((mode&O_NONBLOCK) == 0 && (tp->t_cflag&CLOCAL) == 0 && (tp->t_state & TS_CARR_ON) == 0) { - if ((error = tsleep((caddr_t)&tp->t_rawq, TTIPRI | PCATCH, - ttopen, 0)) || - (error = ttclosed(tp))) + if (error = ttysleep(tp, (caddr_t)&tp->t_rawq, TTIPRI | PCATCH, + ttopen, 0)) goto bad; /* * a mpclose() might have disabled port. if so restart @@ -315,7 +330,7 @@ mpclose(dev, flag) } } mp->mp_flags |= MP_PROGRESS; - (*linesw[tp->t_line].l_close)(tp); + (*linesw[tp->t_line].l_close)(tp, flag); ev = mp_getevent(mp, unit, 1); if (ev == 0) { error = ENOBUFS;