On Wed, 27 Sep 2006 20:58:30 -0400 Jeff Garzik <jeff@xxxxxxxxxx> wrote: > The following patch (DO NOT APPLY) illustrates why > device_for_each_child() should not be marked with __must_check. > > The function returns the return value of the actor function, and ceases > iteration upon error. > > However, _every_ case in drivers/scsi has a hardcoded return value, > illustrating how it is quite valid to not check the return value of this > function. > What does "has a hardcoded return value" mean? AFICT the problem here is that (for example) (going up the call stack in the callee->caller direction): scsi_internal_device_block() returns an error code but device_block() drops that on the floor so target_block() drops it on the floor too so scsi_target_block() drops it on the floor too It's a small matter of (correct kernel) programming to correctly propagate the scsi_internal_device_block() error code all the way back out of scsi_target_block(). It all looks rather sloppy? - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html