Date: Mon, 08 Feb 1999 20:14:43 +0000 From: David Malone <dwmalone@maths.tcd.ie> To: freebsd-scsi@FreeBSD.ORG Subject: Vmcore dumping through cam. Message-ID: <9902082014.aa26935@salmon.maths.tcd.ie>
next in thread | raw e-mail | index | archive | help
Vmcore dumping through cam seems to take ages. We've a machine with 1GB of ram and it takes ages to dump (~20minutes). I think what is happening is that xpt_polled_action is getting called so quickly that the action is nowhere near complete and so you have to wait atleast another second for it to finish. The timeout is given in the ccb and copied to a unsigned 32 bit number. A nasty way to fix this would be to only wait 1/1000s and multiply the timeout by 1000. (This instead of allowing a 135 year timeout allows a 49 day timeout - which seems OK). I'm going to test the folloing patch, but maybe there is a better way? David. *** cam_xpt.c Mon Feb 8 20:08:15 1999 --- /usr/src/sys/cam/cam_xpt.c Wed Jan 20 23:00:31 1999 *************** *** 3139,3145 **** struct cam_devq *devq; struct cam_ed *dev; ! timeout = start_ccb->ccb_h.timeout * 1000; sim = start_ccb->ccb_h.path->bus->sim; devq = sim->devq; dev = start_ccb->ccb_h.path->device; --- 3139,3145 ---- struct cam_devq *devq; struct cam_ed *dev; ! timeout = start_ccb->ccb_h.timeout; sim = start_ccb->ccb_h.path->bus->sim; devq = sim->devq; dev = start_ccb->ccb_h.path->device; *************** *** 3155,3161 **** while((devq->send_openings <= 0 || dev->ccbq.dev_openings < 0) && (--timeout > 0)) { ! DELAY(1); (*(sim->sim_poll))(sim); swi_camnet(); swi_cambio(); --- 3155,3161 ---- while((devq->send_openings <= 0 || dev->ccbq.dev_openings < 0) && (--timeout > 0)) { ! DELAY(1000); (*(sim->sim_poll))(sim); swi_camnet(); swi_cambio(); *************** *** 3173,3179 **** if ((start_ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_INPROG) break; ! DELAY(1); } if (timeout == 0) { /* --- 3173,3179 ---- if ((start_ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_INPROG) break; ! DELAY(1000); } if (timeout == 0) { /* To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi? <9902082014.aa26935>