Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 626dcb1e authored by Kai Makisara's avatar Kai Makisara Committed by James Bottomley
Browse files

[SCSI] st: Move buffer pointer back when data could not be written.



Move buffer pointer back when data could not be written. Bug found by
Mike Christie.

Signed-off-by: default avatarKai Mäkisara <Kai.Makisara@kolumbus.fi>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
parent f0773b5f
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -17,7 +17,7 @@
   Last modified: 18-JAN-1998 Richard Gooch <rgooch@atnf.csiro.au> Devfs support
   Last modified: 18-JAN-1998 Richard Gooch <rgooch@atnf.csiro.au> Devfs support
 */
 */


static const char *verstr = "20080224";
static const char *verstr = "20080504";


#include <linux/module.h>
#include <linux/module.h>


@@ -1670,6 +1670,7 @@ st_write(struct file *filp, const char __user *buf, size_t count, loff_t * ppos)
				if (undone <= do_count) {
				if (undone <= do_count) {
					/* Only data from this write is not written */
					/* Only data from this write is not written */
					count += undone;
					count += undone;
					b_point -= undone;
					do_count -= undone;
					do_count -= undone;
					if (STp->block_size)
					if (STp->block_size)
						blks = (transfer - undone) / STp->block_size;
						blks = (transfer - undone) / STp->block_size;