??????[PATCH 1/3 v3] dcache: Don't take unnecessary lock in d_count update

2013-05-23 Thread remaper
maybe you can use the atomic_dec_and_lock(>d_count, >d_lock) here, right ? -- Origin -- >The current code takes the dentry's d_lock lock whenever the d_count >reference count is being updated. In reality, nothing big really > happens until d_count goes to 0 in

??????[PATCH 1/3 v3] dcache: Don't take unnecessary lock in d_count update

2013-05-23 Thread remaper
maybe you can use the atomic_dec_and_lock(dentry-d_count, dentry-d_lock) here, right ? -- Origin -- The current code takes the dentry's d_lock lock whenever the d_count reference count is being updated. In reality, nothing big really happens until d_count goes to

how is the /proc/[pid] directories created?

2013-05-10 Thread remaper
hi, everyone when we start a new program, how and where(source code) is the relative /proc/[pid] directory create?N‹§²æìr¸›yúèšØb²X¬¶Ç§vØ^–)Þº{.nÇ+‰·¥Š{±‘êçzX§¶›¡Ü¨}©ž²Æ  zÚ:+v‰¨¾«‘êçzZ+€Ê+zf£¢·hšˆ§~†­†Ûiÿûàz¹®w¥¢¸?™¨è­Ú&¢)ߢf”ù^jÇ«y§m…á@A«a¶Úÿ 0¶ìh®å’i

how is the /proc/[pid] directories created?

2013-05-10 Thread remaper
hi, everyone when we start a new program, how and where(source code) is the relative /proc/[pid] directory create?N‹§²æìr¸›yúèšØb²X¬¶Ç§vØ^–)Þº{.nÇ+‰·¥Š{±‘êçzX§¶›¡Ü¨}©ž²Æ  zÚj:+v‰¨¾«‘êçzZ+€Ê+zf£¢·hšˆ§~†­†Ûiÿûàz¹®w¥¢¸?™¨è­Ú¢)ߢf”ù^jÇ«y§m…á@A«a¶Úÿ 0¶ìh®å’i

the rq_timed_out_fn for block device(hd)

2013-04-30 Thread remaper
my kernel version: linux 2.6.34.14 in block/blk-core.c file, blk_alloc_queue_node() function: struct request_queue *blk_alloc_queue_node(gfp_t gfp_mask, int node_id) { ... setup_timer(>timeout, blk_rq_timed_out_timer, (unsigned long) q); ... } when bio request timeout, execute

the rq_timed_out_fn for block device(hd)

2013-04-30 Thread remaper
my kernel version: linux 2.6.34.14 in block/blk-core.c file, blk_alloc_queue_node() function: struct request_queue *blk_alloc_queue_node(gfp_t gfp_mask, int node_id) { ... setup_timer(q-timeout, blk_rq_timed_out_timer, (unsigned long) q); ... } when bio request timeout, execute

generic_make_request not locked

2013-04-29 Thread remaper
/* * We only want one ->make_request_fn to be active at a time, * else stack usage with stacked devices could be a problem. * So use current->bio_list to keep a list of requests * submited by a make_request_fn function. * current->bio_list is also used as a flag to say if *

generic_make_request not locked

2013-04-29 Thread remaper
/* * We only want one -make_request_fn to be active at a time, * else stack usage with stacked devices could be a problem. * So use current-bio_list to keep a list of requests * submited by a make_request_fn function. * current-bio_list is also used as a flag to say if * generic_make_request