lkml.org 
[lkml]   [2005]   [Jul]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectext2: buffer_head usage with and without O_DIRECT
This is with respect to 2.4.28 on
http://lxr.linux.no/source/?v=2.4.18

When i do read/write on ext2 without opening files
with O_DIRECT, i can see buffer_head constantly
increasing in /proc/slabinfo.

But when I open files with O_DIRECT, the i/o is done
without using buffer_head, /proc/slabinfo shows this
as constant throughout the i/o.
There is no other i/o activity on the box.

Stacks below show that both of them creates
buffer_head's. Any idea why this is happening ?

As per the code, Without O_DIRECT, stack is:
(See fs/buffer.c)
submit_bh_rsector
submit_bh
block_read_full_page (This calls create_buffers to
create buffer_head's)
ext2_readpage
do_generic_file_read
generic_file_new_read
generic_file_read

With O_DIRECT:
brw_kiovec (This creates buffer_head's)
generic_direct_sector_IO (cals
prepare_direct_IO_iobuf)
ext2_direct_IO
generic_file_direct_IO
generic_file_new_read
generic_file_read

-Thanks.



____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-07-24 15:20    [W:0.019 / U:2.140 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site