Suppose I send down an SG_IO command on a generic scsi device node. As far as I can tell, the code path looks like this in 2.6.14: sg_ioctl sg_new_write scsi_execute_async (sets up sg_cmd_done as callback) scsi_do_req scsi_insert_special_req blk_insert_request and like this in 2.6.23: sg_ioctl sg_new_write scsi_execute_async (sets up sg_cmd_done as callback) blk_execute_rq_nowait At this point, is that request queued along with all the other commands, or is it injected immediately to the device? If it is queued up along with all the other commands, shouldn't the return path feed into the queue length calculations if we get BUSY/TASK_SET_FULL? Also, for the purposes of the device returning TASK_SET_FULL vs BUSY, does each userspace process count as a SCSI initiator port, or are they all sort of grouped together? (The reason I ask is that we're getting TASK_SET_FULL errors but according to SAM-3 that should only happen if we already have at least one outstanding request.) Thanks, Chris -
| Tony Lindgren | [PATCH 26/90] ARM: OMAP: abstract debug card setup (smc, leds) |
| Greg Kroah-Hartman | [PATCH 001/196] Chinese: Add the known_regression URI to the HOWTO |
| Vladislav Bolkhovitin | Re: Integration of SCST in the mainstream Linux kernel |
| Jesper Juhl | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
git: | |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | [GIT]: Networking |
| Frans Pop | svc: failed to register lockdv1 RPC service (errno 97). |
