scsi: core: Fix the scsi_set_resid() documentation

Because scsi_finish_command() subtracts the residual from the buffer
length, residual overflows must not be reported. Reflect this in the SCSI
documentation. See also commit 9237f04e12 ("scsi: core: Fix
scsi_get/set_resid() interface")

Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Hannes Reinecke <hare@suse.de>
Cc: Douglas Gilbert <dgilbert@interlog.com>
Cc: stable@vger.kernel.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Link: https://lore.kernel.org/r/20230721160154.874010-2-bvanassche@acm.org
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Bart Van Assche 2023-07-21 09:01:32 -07:00 committed by Martin K. Petersen
parent 0645ab15ed
commit f669b8a683
1 changed files with 2 additions and 2 deletions

View File

@ -1190,11 +1190,11 @@ Members of interest:
- pointer to scsi_device object that this command is - pointer to scsi_device object that this command is
associated with. associated with.
resid resid
- an LLD should set this signed integer to the requested - an LLD should set this unsigned integer to the requested
transfer length (i.e. 'request_bufflen') less the number transfer length (i.e. 'request_bufflen') less the number
of bytes that are actually transferred. 'resid' is of bytes that are actually transferred. 'resid' is
preset to 0 so an LLD can ignore it if it cannot detect preset to 0 so an LLD can ignore it if it cannot detect
underruns (overruns should be rare). If possible an LLD underruns (overruns should not be reported). An LLD
should set 'resid' prior to invoking 'done'. The most should set 'resid' prior to invoking 'done'. The most
interesting case is data transfers from a SCSI target interesting case is data transfers from a SCSI target
device (e.g. READs) that underrun. device (e.g. READs) that underrun.