Date: Tue, 9 Apr 2002 21:08:16 +0530 From: "Yassar S" <yassars@infy.com> To: "Kenneth D. Merry" <ken@kdm.org> Cc: <freebsd-scsi@FreeBSD.ORG> Subject: RE: SCSI Callback function not getting called Message-ID: <755FA95DB839D211856B0008C7287D930F3286E8@kecmsg02.ad.infosys.com>
next in thread | raw e-mail | index | archive | help
I'm currently developing an application on FreeBSD3.1 to test the SCSI devices (hard disks). Whenever I do read/write on the SCSI disks, I'm not able read or write more than 126 blocks in a single operation. Any pointers what could be the reason? How can I ovecome this limitation? Thanks Yassar. -----Original Message----- From: Kenneth D. Merry [mailto:ken@kdm.org] Sent: Thursday, April 04, 2002 11:19 AM To: Yassar S Cc: freebsd-scsi@FreeBSD.ORG Subject: Re: SCSI Callback function not getting called On Thu, Apr 04, 2002 at 09:15:25 +0530, Yassar S wrote: > I'm not writing a driver. I'm writing an application which uses > the SIM calls like scsi_read_write etc. Those aren't SIM calls. The SIM layer (SIM =3D=3D System Interface Module) is the layer where = the various SCSI and FC drivers live. Functions like scsi_read_write() fill CCBs, they don't actually execute = any I/O. You probably want to look at the cam(3) man page, and in particular = you'll want to look at the camcontrol(8) source, located in = src/sbin/camcontrol. That's probably the best example of how to issue SCSI commands from userland. The short answer to your original question is: scsi_read_write() and = the other commands like it just fill CCBs, they don't actually execute I/O. = In addition, the callback function pointer is only used in the kernel, not = in userland. In userland, CCBs are currently issued synchronously, so = there is no need for a callback function anyway. Ken --=20 Kenneth Merry ken@kdm.org 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?755FA95DB839D211856B0008C7287D930F3286E8>