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
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
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
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
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
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
/*
* 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
*
/*
* 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
8 matches
Mail list logo