[Ocfs2-devel] + ocfs2-convert-to-idr_alloc.patch added to -mm tree

Joel Becker jlbec at evilplan.org
Wed Feb 6 19:55:34 PST 2013


On Wed, Feb 06, 2013 at 02:39:32PM -0800, akpm at linux-foundation.org wrote:
> 
> The patch titled
>      Subject: ocfs2: convert to idr_alloc()
> has been added to the -mm tree.  Its filename is
>      ocfs2-convert-to-idr_alloc.patch
> 
> Before you just go and hit "reply", please:
>    a) Consider who else should be cc'ed
>    b) Prefer to cc a suitable mailing list as well
>    c) Ideally: find the original patch on the mailing list and do a
>       reply-to-all to that, adding suitable additional cc's
> 
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
> 
> The -mm tree is included into linux-next and is updated
> there every 3-4 working days
> 
> ------------------------------------------------------
> From: Tejun Heo <tj at kernel.org>
> Subject: ocfs2: convert to idr_alloc()
> 
> Convert to the much saner new idr interface.
> 
> Only compile tested.
> 
> Signed-off-by: Tejun Heo <tj at kernel.org>
> Cc: Mark Fasheh <mfasheh at suse.com>
> Cc: Joel Becker <jlbec at evilplan.org>
> Signed-off-by: Andrew Morton <akpm at linux-foundation.org>

Acked-by: Joel Becker <jlbec at evilplan.org>

> ---
> 
>  fs/ocfs2/cluster/tcp.c |   32 +++++++++++++-------------------
>  1 file changed, 13 insertions(+), 19 deletions(-)
> 
> diff -puN fs/ocfs2/cluster/tcp.c~ocfs2-convert-to-idr_alloc fs/ocfs2/cluster/tcp.c
> --- a/fs/ocfs2/cluster/tcp.c~ocfs2-convert-to-idr_alloc
> +++ a/fs/ocfs2/cluster/tcp.c
> @@ -304,28 +304,22 @@ static u8 o2net_num_from_nn(struct o2net
>  
>  static int o2net_prep_nsw(struct o2net_node *nn, struct o2net_status_wait *nsw)
>  {
> -	int ret = 0;
> -
> -	do {
> -		if (!idr_pre_get(&nn->nn_status_idr, GFP_ATOMIC)) {
> -			ret = -EAGAIN;
> -			break;
> -		}
> -		spin_lock(&nn->nn_lock);
> -		ret = idr_get_new(&nn->nn_status_idr, nsw, &nsw->ns_id);
> -		if (ret == 0)
> -			list_add_tail(&nsw->ns_node_item,
> -				      &nn->nn_status_list);
> -		spin_unlock(&nn->nn_lock);
> -	} while (ret == -EAGAIN);
> +	int ret;
>  
> -	if (ret == 0)  {
> -		init_waitqueue_head(&nsw->ns_wq);
> -		nsw->ns_sys_status = O2NET_ERR_NONE;
> -		nsw->ns_status = 0;
> +	spin_lock(&nn->nn_lock);
> +	ret = idr_alloc(&nn->nn_status_idr, nsw, 0, 0, GFP_ATOMIC);
> +	if (ret >= 0) {
> +		nsw->ns_id = ret;
> +		list_add_tail(&nsw->ns_node_item, &nn->nn_status_list);
>  	}
> +	spin_unlock(&nn->nn_lock);
> +	if (ret < 0)
> +		return ret;
>  
> -	return ret;
> +	init_waitqueue_head(&nsw->ns_wq);
> +	nsw->ns_sys_status = O2NET_ERR_NONE;
> +	nsw->ns_status = 0;
> +	return 0;
>  }
>  
>  static void o2net_complete_nsw_locked(struct o2net_node *nn,
> _
> 
> Patches currently in -mm which might be from tj at kernel.org are
> 
> linux-next.patch
> cfq-fix-lock-imbalance-with-failed-allocations.patch
> block-restore-proc-partitions-to-not-display-non-partitionable-removable-devices.patch
> memcg-do-not-create-memsw-files-if-swap-accounting-is-disabled.patch
> memcg-clean-up-swap-accounting-initialization-code.patch
> memcg-prevent-changes-to-move_charge_at_immigrate-during-task-attach.patch
> memcg-split-part-of-memcg-creation-to-css_online.patch
> memcg-fast-hierarchy-aware-child-test.patch
> memcg-fast-hierarchy-aware-child-test-fix.patch
> memcg-replace-cgroup_lock-with-memcg-specific-memcg_lock.patch
> memcg-increment-static-branch-right-after-limit-set.patch
> memcg-avoid-dangling-reference-count-in-creation-failure.patch
> idr-fix-a-subtle-bug-in-idr_get_next.patch
> idr-make-idr_destroy-imply-idr_remove_all.patch
> atm-nicstar-dont-use-idr_remove_all.patch
> block-loop-dont-use-idr_remove_all.patch
> firewire-dont-use-idr_remove_all.patch
> drm-dont-use-idr_remove_all.patch
> dm-dont-use-idr_remove_all.patch
> remoteproc-dont-use-idr_remove_all.patch
> rpmsg-dont-use-idr_remove_all.patch
> dlm-use-idr_for_each_entry-in-recover_idr_clear-error-path.patch
> dlm-dont-use-idr_remove_all.patch
> nfs-idr_destroy-no-longer-needs-idr_remove_all.patch
> inotify-dont-use-idr_remove_all.patch
> cgroup-dont-use-idr_remove_all.patch
> idr-deprecate-idr_remove_all.patch
> idr-cosmetic-updates-to-struct-initializer-definitions.patch
> idr-relocate-idr_for_each_entry-and-reorganize-id_get_new.patch
> idr-remove-_idr_rc_to_errno-hack.patch
> idr-refactor-idr_get_new_above.patch
> idr-implement-idr_preload-and-idr_alloc.patch
> block-fix-synchronization-and-limit-check-in-blk_alloc_devt.patch
> block-convert-to-idr_alloc.patch
> block-loop-convert-to-idr_alloc.patch
> atm-nicstar-convert-to-idr_alloc.patch
> drbd-convert-to-idr_alloc.patch
> dca-convert-to-idr_alloc.patch
> dmaengine-convert-to-idr_alloc.patch
> firewire-add-minor-number-range-check-to-fw_device_init.patch
> firewire-convert-to-idr_alloc.patch
> gpio-convert-to-idr_alloc.patch
> drm-convert-to-idr_alloc.patch
> drm-exynos-convert-to-idr_alloc.patch
> drm-i915-convert-to-idr_alloc.patch
> drm-sis-convert-to-idr_alloc.patch
> drm-via-convert-to-idr_alloc.patch
> drm-vmwgfx-convert-to-idr_alloc.patch
> i2c-convert-to-idr_alloc.patch
> ib-core-convert-to-idr_alloc.patch
> ib-amso1100-convert-to-idr_alloc.patch
> ib-cxgb3-convert-to-idr_alloc.patch
> ib-cxgb4-convert-to-idr_alloc.patch
> ib-ehca-convert-to-idr_alloc.patch
> ib-ipath-convert-to-idr_alloc.patch
> ib-mlx4-convert-to-idr_alloc.patch
> ib-ocrdma-convert-to-idr_alloc.patch
> ib-qib-convert-to-idr_alloc.patch
> dm-convert-to-idr_alloc.patch
> memstick-convert-to-idr_alloc.patch
> mfd-convert-to-idr_alloc.patch
> misc-c2port-convert-to-idr_alloc.patch
> misc-tifm_core-convert-to-idr_alloc.patch
> mmc-convert-to-idr_alloc.patch
> mtd-convert-to-idr_alloc.patch
> macvtap-convert-to-idr_alloc.patch
> ppp-convert-to-idr_alloc.patch
> power-convert-to-idr_alloc.patch
> pps-convert-to-idr_alloc.patch
> remoteproc-convert-to-idr_alloc.patch
> rpmsg-convert-to-idr_alloc.patch
> scsi-bfa-convert-to-idr_alloc.patch
> scsi-convert-to-idr_alloc.patch
> target-iscsi-convert-to-idr_alloc.patch
> scsi-lpfc-convert-to-idr_alloc.patch
> thermal-convert-to-idr_alloc.patch
> uio-convert-to-idr_alloc.patch
> vfio-convert-to-idr_alloc.patch
> dlm-convert-to-idr_alloc.patch
> inotify-convert-to-idr_alloc.patch
> ocfs2-convert-to-idr_alloc.patch
> ipc-convert-to-idr_alloc.patch
> cgroup-convert-to-idr_alloc.patch
> events-convert-to-idr_alloc.patch
> posix-timers-convert-to-idr_alloc.patch
> net-9p-convert-to-idr_alloc.patch
> mac80211-convert-to-idr_alloc.patch
> sctp-convert-to-idr_alloc.patch
> nfs4client-convert-to-idr_alloc.patch
> 

-- 

To spot the expert, pick the one who predicts the job will take the
longest and cost the most.

			http://www.jlbec.org/
			jlbec at evilplan.org



More information about the Ocfs2-devel mailing list