[dm-devel] Re: [PATCH resubmit] do_mount: reduce stack consumption

Andrew Morton akpm at osdl.org
Mon Nov 7 23:37:06 UTC 2005


Neil Brown <neilb at suse.de> wrote:
>
> ...
> Reduce stack usage with stacked block devices
> 
> ...
> diff ./include/linux/sched.h~current~ ./include/linux/sched.h
> --- ./include/linux/sched.h~current~	2005-11-07 10:01:36.000000000 +1100
> +++ ./include/linux/sched.h	2005-11-07 10:02:23.000000000 +1100
> @@ -829,6 +829,9 @@ struct task_struct {
>  /* journalling filesystem info */
>  	void *journal_info;
>  
> +/* stacked block device info */
> +	struct bio *bio_list, **bio_tail;
> +
>  /* VM state */
>  	struct reclaim_state *reclaim_state;
>  

More state in the task_strut is a bit sad, but not nearly as sad as deep
recursion in our deepest codepath..

Possibly one could do:

struct make_request_state {
	struct bio *bio_list;
	struct bio **bio_tail;
};

and stick a `struct make_request_state *' into the task_struct and actually
allocate the thing on the stack.  That's not much nicer though.




More information about the dm-devel mailing list