Question about do_sync_read()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

In the implementation of file systems for 2.6 kernels,
generic_file_read is often replaced with do_sync_read(). In this
function we call "filp->f_op->aio_read" unconditionally.
where most of the times aio_read is intialized as
generic_file_aio_read(). Wouldn't it be a good idea to change the
following code

241  for (;;) {
242   ret = filp->f_op->aio_read(&kiocb, &iov, 1, kiocb.ki_pos);
243   if (ret != -EIOCBRETRY)
244    break;
245   wait_on_retry_sync_kiocb(&kiocb);

to

241  for (;;) {
242     if(filp->f_op->aio_read)
243         ret = filp->f_op->aio_read(&kiocb, &iov, 1, kiocb.ki_pos);
244     else
245              ret = generic_file_aio_read(&kiocb, &iov, 1, kiocb.ki_pos);
246   if (ret != -EIOCBRETRY)
247    break;
248   wait_on_retry_sync_kiocb(&kiocb);

Just to have a fall back mechanism as we do at many places in the VFS layer..

-- 
Thanks & Regards,
********************************************
Manish Katiyar  ( http://mkatiyar.googlepages.com )
3rd Floor, Fair Winds Block
EGL Software Park
Off Intermediate Ring Road
Bangalore 560071, India
***********************************************
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs

[Index of Archives]     [Audio]     [Hams]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Fedora Users]

  Powered by Linux