Date: Tue, 9 May 2006 15:11:30 +0100 From: "Steven Hartland" <killing@multiplay.co.uk> To: <freebsd-hackers@freebsd.org> Subject: htpmv driver update v1.14 + patch Message-ID: <023101c67372$7ce49920$b3db87d4@multiplay.co.uk>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. ------=_NextPart_000_022E_01C6737A.DA00FCE0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit Seems the current FreeBSD source tree is behind the released driver version v1.12 vs v1.14. This can be obtained here: http://www.highpoint-tech.com/BIOS%20+%20Driver/rr1820a/FreeBSD/rr182x-opensource-bsd-1.14-0321.tgz In addition to that I've attached a patch which fixes a multi card flush issue which would cause FS corruption for machines with more than one 1820a card installed. Hope someone can commit these updates. Steve ================================================ This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. In the event of misdirection, illegible or incomplete transmission please telephone (023) 8024 3137 or return the E.mail to postmaster@multiplay.co.uk. ------=_NextPart_000_022E_01C6737A.DA00FCE0 Content-Type: application/octet-stream; name="entry.c.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="entry.c.patch" --- entry.c.orig Sun Apr 2 04:21:53 2006=0A= +++ entry.c Sun Apr 2 05:07:08 2006=0A= @@ -1905,5 +1905,5 @@=0A= {=0A= IAL_ADAPTER_T * pAdapter =3D device_get_softc(dev);=0A= - int rid;=0A= + int rid, dev_unit;=0A= union ccb *ccb;=0A= struct cam_devq *devq;=0A= @@ -1999,12 +1999,18 @@=0A= free(ccb, M_DEVBUF);=0A= =0A= - /* Register shutdown handler, and start the work thread. */=0A= - if (device_get_unit(dev) =3D=3D 0) {=0A= - pAdapter->eh =3D EVENTHANDLER_REGISTER(shutdown_final, =0A= - hpt_shutdown, dev, SHUTDOWN_PRI_DEFAULT);=0A= - if (pAdapter->eh)=0A= - launch_worker_thread();=0A= + /* Register shutdown handler */=0A= + dev_unit =3D device_get_unit(dev);=0A= + pAdapter->eh =3D EVENTHANDLER_REGISTER(shutdown_final, hpt_shutdown, = dev, SHUTDOWN_PRI_DEFAULT);=0A= + if ( ! pAdapter->eh) {=0A= + if ( 0 =3D=3D dev_unit )=0A= + hpt_printk(("shutdown event registration failed dev %d ( no work = thread started )\n", dev_unit ));=0A= else=0A= - hpt_printk(("shutdown event registration failed\n"));=0A= + hpt_printk(("shutdown event registration failed dev %d\n", dev_unit = ));=0A= + }=0A= + else if ( 0 =3D=3D dev_unit ) {=0A= + // Note: No worker thread will be started if subsiquent shutdown=0A= + // registrations succeed after unit 0 failure this may be a bug=0A= + // but at least the user will have some indication of the failure=0A= + launch_worker_thread();=0A= }=0A= =0A= @@ -2076,5 +2082,5 @@=0A= int i;=0A= =0A= - hpt_printk(("flush all devices\n"));=0A= + hpt_printk(("flushing unit %d devices\n", = device_get_unit(pAdapter->hpt_dev) ));=0A= =0A= /* flush all devices */=0A= @@ -2088,16 +2094,16 @@=0A= hpt_shutdown(device_t dev)=0A= {=0A= - IAL_ADAPTER_T *pAdapter;=0A= + IAL_ADAPTER_T *pAdapter;=0A= =0A= - pAdapter =3D device_get_softc(dev);=0A= - if (pAdapter =3D=3D NULL)=0A= - return (EINVAL);=0A= -=0A= - EVENTHANDLER_DEREGISTER(shutdown_final, pAdapter->eh);=0A= - FlushAdapter(pAdapter);=0A= - /* give the flush some time to happen, =0A= - *otherwise "shutdown -p now" will make file system corrupted */=0A= - DELAY(1000 * 1000 * 5);=0A= - return 0;=0A= + pAdapter =3D device_get_softc(dev);=0A= + if (pAdapter =3D=3D NULL)=0A= + return (EINVAL);=0A= +=0A= + EVENTHANDLER_DEREGISTER(shutdown_final, pAdapter->eh);=0A= + FlushAdapter(pAdapter);=0A= + /* give the flush some time to happen, =0A= + * otherwise "shutdown -p now" will make file system corrupted */=0A= + DELAY(1000 * 1000 * 5);=0A= + return 0;=0A= }=0A= =0A= ------=_NextPart_000_022E_01C6737A.DA00FCE0--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?023101c67372$7ce49920$b3db87d4>