[S390] tape: remove f_pos changes from read / write function.
authorMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 7 Dec 2009 11:52:01 +0000 (12:52 +0100)
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>
Mon, 7 Dec 2009 11:51:36 +0000 (12:51 +0100)
The change to f_pos in the read / write method has no effect as the
value is controlled by the VFS layer, e.g. for vfs_read:

loff_t pos = file_pos_read(file);
ret = vfs_read(file, buf, count, &pos);
file_pos_write(file, pos);

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/char/tape_char.c

index 31566c55adfe18b7140c127bc87284a5a4353053..b47e20d3d1da9a2dad66d7034ce79ff218f5aad7 100644 (file)
@@ -170,7 +170,6 @@ tapechar_read(struct file *filp, char __user *data, size_t count, loff_t *ppos)
        if (rc == 0) {
                rc = block_size - request->rescnt;
                DBF_EVENT(6, "TCHAR:rbytes:  %x\n", rc);
-               filp->f_pos += rc;
                /* Copy data from idal buffer to user space. */
                if (idal_buffer_to_user(device->char_data.idal_buf,
                                        data, rc) != 0)
@@ -238,7 +237,6 @@ tapechar_write(struct file *filp, const char __user *data, size_t count, loff_t
                        break;
                DBF_EVENT(6, "TCHAR:wbytes: %lx\n",
                          block_size - request->rescnt);
-               filp->f_pos += block_size - request->rescnt;
                written += block_size - request->rescnt;
                if (request->rescnt != 0)
                        break;