lkml.org 
[lkml]   [2008]   [Jun]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch -v3 07/22] nwflash: use simple_read_from_buffer
    Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
    Cc: Russell King <linux@arm.linux.org.uk>
    ---
    drivers/char/nwflash.c | 31 ++++++++-----------------------
    1 file changed, 8 insertions(+), 23 deletions(-)

    Index: 2.6-git/drivers/char/nwflash.c
    ===================================================================
    --- 2.6-git.orig/drivers/char/nwflash.c
    +++ 2.6-git/drivers/char/nwflash.c
    @@ -122,35 +122,20 @@ static int flash_ioctl(struct inode *ino
    static ssize_t flash_read(struct file *file, char __user *buf, size_t size,
    loff_t *ppos)
    {
    - unsigned long p = *ppos;
    - unsigned int count = size;
    - int ret = 0;
    + ssize_t ret;

    if (flashdebug)
    printk(KERN_DEBUG "flash_read: flash_read: offset=0x%lX, "
    "buffer=%p, count=0x%X.\n", p, buf, count);
    + /*
    + * We now lock against reads and writes. --rmk
    + */
    + if (mutex_lock_interruptible(&nwflash_mutex))
    + return -ERESTARTSYS;

    - if (count)
    - ret = -ENXIO;
    + ret = simple_read_from_buffer(buf, size, ppos, FLASH_BASE, gbFlashSize);
    + mutex_unlock(&nwflash_mutex);

    - if (p < gbFlashSize) {
    - if (count > gbFlashSize - p)
    - count = gbFlashSize - p;
    -
    - /*
    - * We now lock against reads and writes. --rmk
    - */
    - if (mutex_lock_interruptible(&nwflash_mutex))
    - return -ERESTARTSYS;
    -
    - ret = copy_to_user(buf, (void *)(FLASH_BASE + p), count);
    - if (ret == 0) {
    - ret = count;
    - *ppos += count;
    - } else
    - ret = -EFAULT;
    - mutex_unlock(&nwflash_mutex);
    - }
    return ret;
    }

    --


    \
     
     \ /
      Last update: 2008-06-04 14:15    [W:0.024 / U:30.080 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site