Re: [PATCH v1 3/8] Deferred batching of iput()

From: Evgeniy Polyakov
Date: Sat Jan 17 2009 - 05:18:24 EST


On Fri, Jan 16, 2009 at 06:29:52PM -0800, Mike Waychison (mikew@xxxxxxxxxx) wrote:
> +static void postpone_iput(struct inode *inode)
> +{
> + struct postponed_inodes *ppi, *new_ppi;
> +
> +again:
> + ppi = get_cpu_var(postponed_inodes);
> + if (!pending_iput_full(ppi)) {
> + add_pending_iput(ppi, inode);
> + put_cpu_var(postponed_inodes);
> + return;
> + }
> +
> + /* Need to flush out existing pending inodes */
> + put_cpu_var(postponed_inodes);
> + /* Allocate more space.. */
> + new_ppi = new_postponed_inodes();
> + if (!new_ppi) {
> + struct postponed_inodes_onstack ppi_onstack;
> +
> + ppi = init_ppi_onstack(&ppi_onstack);
> + add_pending_iput(ppi, inode);
> + process_postponed_inodes(ppi);
> + return;
> + }

The same here: what just not to call a real_iput() without on-stack
allocation and the line?

--
Evgeniy Polyakov
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" 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.tux.org/lkml/