Date: Tue, 3 Oct 2000 08:10:03 -0700 (PDT) From: Matthew Jacob <mjacob@feral.com> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/21723: sa device driver bug Message-ID: <200010031510.IAA30841@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/21723; it has been noted by GNATS. From: Matthew Jacob <mjacob@feral.com> To: razuwaev@relex.ru Cc: freebsd-gnats-submit@FreeBSD.ORG Subject: Re: kern/21723: sa device driver bug Date: Tue, 3 Oct 2000 08:08:01 -0700 (PDT) Good spotting, thanks... On Tue, 3 Oct 2000 razuwaev@relex.ru wrote: > > >Number: 21723 > >Category: kern > >Synopsis: sa device driver bug > >Confidential: no > >Severity: non-critical > >Priority: low > >Responsible: freebsd-bugs > >State: open > >Quarter: > >Keywords: > >Date-Required: > >Class: sw-bug > >Submitter-Id: current-users > >Arrival-Date: Tue Oct 03 02:40:00 PDT 2000 > >Closed-Date: > >Last-Modified: > >Originator: Andrew > >Release: 4.1-STABLE > >Organization: > Relex, Ltd. > >Environment: > FreeBSD p227.relex.ru 4.1-STABLE > FreeBSD 4.1-STABLE #12: Mon Sep 25 15:50:49 MSD 2000 > amass@p227.relex.ru:/usr/src/sys/compile/KERNEL-A i386 > >Description: > f=open("/dev/nrsa0",O_RDWR); > write(f, buf, size); > ioctl(fd, MTIOCRDSPOS, &offs); > This sequence hangs up the task on waiting disk operation. > Driver waits for awake on sys/cam/cam_periph.c : cam_periph_getccb() on > tsleep(&periph->ccb_list, PRIBIO, "cgticb", 0); > > >How-To-Repeat: > f=open("/dev/nrsa0",O_RDWR); > write(f, buf, size); > ioctl(fd, MTIOCRDSPOS, &offs); > > >Fix: > This problem is fixed by replace : > ccb = cam_periph_getccb(periph, 1); > if (softc->flags & SA_FLAG_TAPE_WRITTEN) { > error = sawritefilemarks(periph, 0, 0); > if (error && error != EACCES) > return (error); > } > to : > if (softc->flags & SA_FLAG_TAPE_WRITTEN) { > error = sawritefilemarks(periph, 0, 0); > if (error && error != EACCES) > return (error); > } > ccb = cam_periph_getccb(periph, 1); > > > > >Release-Note: > >Audit-Trail: > >Unformatted: > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-bugs" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200010031510.IAA30841>