From: Tejun Heo <tj@kernel.org>
To: akpm@linux-foundation.org
Cc: linux-kernel@vger.kernel.org
Subject: [PATCHSET] idr: deprecate idr_remova_all() and add idr_alloc()
Date: Wed, 6 Feb 2013 11:39:32 -0800 [thread overview]
Message-ID: <1360179649-22465-1-git-send-email-tj@kernel.org> (raw)
(If you're reading this patchset for the first time, this patchset is
an effort to improve idr interface. This posting is mostly for
collecting and routing the patches towards -mm. Please follow the
link at the end for details on each patchset.)
Hello, Andrew.
This patchset is combination of the following three on top of
linux-next as of 20130204 (the one before idr_removal_all() got
included).
[1] [PATCH] idr: fix a subtle bug in idr_get_next()
+ [2] [PATCHSET] idr: deprecate idr_remove_all()
+ [3] [PATCHSET] idr: implement idr_alloc() and convert existing users (w/ all updates)
Please note that we need the idr_get_next() fix before
idr_remove_all() deprecation.
The idr_alloc() part has all the posted updates rolled in and acks
added, and I think it's at least ready for testing. Ah, right, I
skipped deprecation of idr_pre_get() and idr_get_new*() for now. nfs
changes are being routed separately and we can do the deprecation
after after -rc1.
This patchset contains the following 77 patches.
0001-idr-fix-a-subtle-bug-in-idr_get_next.patch
0002-idr-make-idr_destroy-imply-idr_remove_all.patch
0003-atm-nicstar-don-t-use-idr_remove_all.patch
0004-block-loop-don-t-use-idr_remove_all.patch
0005-firewire-don-t-use-idr_remove_all.patch
0006-drm-don-t-use-idr_remove_all.patch
0007-dm-don-t-use-idr_remove_all.patch
0008-remoteproc-don-t-use-idr_remove_all.patch
0009-rpmsg-don-t-use-idr_remove_all.patch
0010-dlm-use-idr_for_each_entry-in-recover_idr_clear-erro.patch
0011-dlm-don-t-use-idr_remove_all.patch
0012-nfs-idr_destroy-no-longer-needs-idr_remove_all.patch
0013-inotify-don-t-use-idr_remove_all.patch
0014-cgroup-don-t-use-idr_remove_all.patch
0015-idr-deprecate-idr_remove_all.patch
0016-idr-cosmetic-updates-to-struct-initializer-definitio.patch
0017-idr-relocate-idr_for_each_entry-and-reorganize-id-r-.patch
0018-idr-remove-_idr_rc_to_errno-hack.patch
0019-idr-refactor-idr_get_new_above.patch
0020-idr-implement-idr_preload-_end-and-idr_alloc.patch
0021-block-fix-synchronization-and-limit-check-in-blk_all.patch
0022-block-convert-to-idr_alloc.patch
0023-block-loop-convert-to-idr_alloc.patch
0024-atm-nicstar-convert-to-idr_alloc.patch
0025-drbd-convert-to-idr_alloc.patch
0026-dca-convert-to-idr_alloc.patch
0027-dmaengine-convert-to-idr_alloc.patch
0028-firewire-add-minor-number-range-check-to-fw_device_i.patch
0029-firewire-convert-to-idr_alloc.patch
0030-gpio-convert-to-idr_alloc.patch
0031-drm-convert-to-idr_alloc.patch
0032-drm-exynos-convert-to-idr_alloc.patch
0033-drm-i915-convert-to-idr_alloc.patch
0034-drm-sis-convert-to-idr_alloc.patch
0035-drm-via-convert-to-idr_alloc.patch
0036-drm-vmwgfx-convert-to-idr_alloc.patch
0037-i2c-convert-to-idr_alloc.patch
0038-IB-core-convert-to-idr_alloc.patch
0039-IB-amso1100-convert-to-idr_alloc.patch
0040-IB-cxgb3-convert-to-idr_alloc.patch
0041-IB-cxgb4-convert-to-idr_alloc.patch
0042-IB-ehca-convert-to-idr_alloc.patch
0043-IB-ipath-convert-to-idr_alloc.patch
0044-IB-mlx4-convert-to-idr_alloc.patch
0045-IB-ocrdma-convert-to-idr_alloc.patch
0046-IB-qib-convert-to-idr_alloc.patch
0047-dm-convert-to-idr_alloc.patch
0048-memstick-convert-to-idr_alloc.patch
0049-mfd-convert-to-idr_alloc.patch
0050-misc-c2port-convert-to-idr_alloc.patch
0051-misc-tifm_core-convert-to-idr_alloc.patch
0052-mmc-convert-to-idr_alloc.patch
0053-mtd-convert-to-idr_alloc.patch
0054-macvtap-convert-to-idr_alloc.patch
0055-ppp-convert-to-idr_alloc.patch
0056-power-convert-to-idr_alloc.patch
0057-pps-convert-to-idr_alloc.patch
0058-remoteproc-convert-to-idr_alloc.patch
0059-rpmsg-convert-to-idr_alloc.patch
0060-scsi-bfa-convert-to-idr_alloc.patch
0061-scsi-convert-to-idr_alloc.patch
0062-target-iscsi-convert-to-idr_alloc.patch
0063-scsi-lpfc-convert-to-idr_alloc.patch
0064-thermal-convert-to-idr_alloc.patch
0065-uio-convert-to-idr_alloc.patch
0066-vfio-convert-to-idr_alloc.patch
0067-dlm-convert-to-idr_alloc.patch
0068-inotify-convert-to-idr_alloc.patch
0069-ocfs2-convert-to-idr_alloc.patch
0070-ipc-convert-to-idr_alloc.patch
0071-cgroup-convert-to-idr_alloc.patch
0072-events-convert-to-idr_alloc.patch
0073-posix-timers-convert-to-idr_alloc.patch
0074-net-9p-convert-to-idr_alloc.patch
0075-mac80211-convert-to-idr_alloc.patch
0076-sctp-convert-to-idr_alloc.patch
0077-nfs4client-convert-to-idr_alloc.patch
and is available in the following git branch.
git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git convert-to-idr_alloc
diffstat follows.
block/bsg.c | 26 --
block/genhd.c | 22 --
drivers/atm/nicstar.c | 25 --
drivers/block/drbd/drbd_main.c | 29 +-
drivers/block/loop.c | 24 --
drivers/dca/dca-sysfs.c | 23 --
drivers/dma/dmaengine.c | 16 -
drivers/firewire/core-cdev.c | 20 -
drivers/firewire/core-device.c | 4
drivers/gpio/gpiolib.c | 11 -
drivers/gpu/drm/drm_context.c | 19 -
drivers/gpu/drm/drm_crtc.c | 20 -
drivers/gpu/drm/drm_drv.c | 1
drivers/gpu/drm/drm_gem.c | 37 +--
drivers/gpu/drm/drm_stub.c | 19 -
drivers/gpu/drm/exynos/exynos_drm_ipp.c | 20 -
drivers/gpu/drm/i915/i915_gem_context.c | 21 --
drivers/gpu/drm/sis/sis_drv.c | 1
drivers/gpu/drm/sis/sis_mm.c | 13 -
drivers/gpu/drm/via/via_map.c | 1
drivers/gpu/drm/via/via_mm.c | 13 -
drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 17 -
drivers/i2c/i2c-core.c | 45 ----
drivers/infiniband/core/cm.c | 22 +-
drivers/infiniband/core/cma.c | 24 --
drivers/infiniband/core/sa_query.c | 18 -
drivers/infiniband/core/ucm.c | 16 -
drivers/infiniband/core/ucma.c | 32 ---
drivers/infiniband/core/uverbs_cmd.c | 17 -
drivers/infiniband/hw/amso1100/c2_qp.c | 19 +
drivers/infiniband/hw/cxgb3/iwch.h | 24 +-
drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 27 +-
drivers/infiniband/hw/ehca/ehca_cq.c | 27 --
drivers/infiniband/hw/ehca/ehca_qp.c | 34 +--
drivers/infiniband/hw/ipath/ipath_driver.c | 16 -
drivers/infiniband/hw/mlx4/cm.c | 32 +--
drivers/infiniband/hw/ocrdma/ocrdma_main.c | 14 -
drivers/infiniband/hw/qib/qib_init.c | 21 --
drivers/md/dm.c | 55 +----
drivers/memstick/core/memstick.c | 21 --
drivers/memstick/core/mspro_block.c | 17 -
drivers/mfd/rtsx_pcr.c | 13 -
drivers/misc/c2port/core.c | 22 --
drivers/misc/tifm_core.c | 11 -
drivers/mmc/core/host.c | 11 -
drivers/mtd/mtdcore.c | 9
drivers/net/macvtap.c | 21 --
drivers/net/ppp/ppp_generic.c | 33 ---
drivers/power/bq2415x_charger.c | 11 -
drivers/power/bq27x00_battery.c | 9
drivers/power/ds2782_battery.c | 9
drivers/pps/kapi.c | 2
drivers/pps/pps.c | 36 +--
drivers/remoteproc/remoteproc_core.c | 11 -
drivers/rpmsg/virtio_rpmsg_bus.c | 31 +--
drivers/scsi/bfa/bfad_im.c | 15 -
drivers/scsi/ch.c | 21 --
drivers/scsi/lpfc/lpfc_init.c | 12 -
drivers/scsi/sg.c | 43 +---
drivers/scsi/st.c | 27 --
drivers/target/iscsi/iscsi_target.c | 15 -
drivers/target/iscsi/iscsi_target_login.c | 15 -
drivers/thermal/cpu_cooling.c | 17 -
drivers/thermal/thermal_sys.c | 17 -
drivers/uio/uio.c | 19 -
drivers/vfio/vfio.c | 17 -
fs/dlm/lock.c | 18 -
fs/dlm/lockspace.c | 1
fs/dlm/recover.c | 52 ++---
fs/nfs/client.c | 1
fs/nfs/nfs4client.c | 13 -
fs/notify/inotify/inotify_fsnotify.c | 1
fs/notify/inotify/inotify_user.c | 24 +-
fs/ocfs2/cluster/tcp.c | 32 +--
include/linux/idr.h | 109 +++++++---
ipc/util.c | 30 --
kernel/cgroup.c | 31 ---
kernel/events/core.c | 10
kernel/posix-timers.c | 18 -
lib/idr.c | 298 ++++++++++++++++++++---------
net/9p/util.c | 17 -
net/mac80211/main.c | 2
net/mac80211/tx.c | 18 -
net/sctp/associola.c | 31 +--
84 files changed, 832 insertions(+), 1184 deletions(-)
Thanks.
--
tejun
[1] https://lkml.org/lkml/2013/2/2/145
[2] https://lkml.org/lkml/2013/1/25/759
[3] http://thread.gmane.org/gmane.linux.kernel/1434387
next reply other threads:[~2013-02-06 19:49 UTC|newest]
Thread overview: 106+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-06 19:39 Tejun Heo [this message]
2013-02-06 19:39 ` [PATCH 01/77] idr: fix a subtle bug in idr_get_next() Tejun Heo
2013-02-06 19:39 ` [PATCH 02/77] idr: make idr_destroy() imply idr_remove_all() Tejun Heo
2013-02-06 19:39 ` [PATCH 03/77] atm/nicstar: don't use idr_remove_all() Tejun Heo
2013-02-06 19:39 ` [PATCH 04/77] block/loop: " Tejun Heo
2013-02-06 19:39 ` [PATCH 05/77] firewire: " Tejun Heo
2013-02-06 19:39 ` [PATCH 06/77] drm: " Tejun Heo
2013-02-06 19:39 ` [PATCH 07/77] dm: " Tejun Heo
2013-02-06 19:39 ` [PATCH 08/77] remoteproc: " Tejun Heo
2013-02-06 19:39 ` [PATCH 09/77] rpmsg: " Tejun Heo
2013-02-06 19:39 ` [PATCH 10/77] dlm: use idr_for_each_entry() in recover_idr_clear() error path Tejun Heo
2013-02-06 19:39 ` [PATCH 11/77] dlm: don't use idr_remove_all() Tejun Heo
2013-02-06 19:39 ` [PATCH 12/77] nfs: idr_destroy() no longer needs idr_remove_all() Tejun Heo
2013-02-06 19:39 ` [PATCH 13/77] inotify: don't use idr_remove_all() Tejun Heo
2013-02-06 19:39 ` [PATCH 14/77] cgroup: " Tejun Heo
2013-02-07 1:29 ` Li Zefan
2013-02-06 19:39 ` [PATCH 15/77] idr: deprecate idr_remove_all() Tejun Heo
2013-02-06 19:39 ` [PATCH 16/77] idr: cosmetic updates to struct / initializer definitions Tejun Heo
2013-02-06 19:39 ` [PATCH 17/77] idr: relocate idr_for_each_entry() and reorganize id[r|a]_get_new() Tejun Heo
2013-02-06 19:39 ` [PATCH 18/77] idr: remove _idr_rc_to_errno() hack Tejun Heo
2013-02-06 19:39 ` [PATCH 19/77] idr: refactor idr_get_new_above() Tejun Heo
2013-02-06 19:39 ` [PATCH 20/77] idr: implement idr_preload[_end]() and idr_alloc() Tejun Heo
2013-02-07 19:53 ` [PATCH v3 " Tejun Heo
2013-02-06 19:39 ` [PATCH 21/77] block: fix synchronization and limit check in blk_alloc_devt() Tejun Heo
2013-02-06 22:24 ` Andrew Morton
2013-02-06 22:27 ` Tejun Heo
2013-02-06 22:32 ` Andrew Morton
2013-02-06 22:33 ` Tejun Heo
2013-02-06 19:39 ` [PATCH 22/77] block: convert to idr_alloc() Tejun Heo
2013-02-06 19:39 ` [PATCH 23/77] block/loop: " Tejun Heo
2013-02-07 18:25 ` [PATCH 22.5/77] block/loop: fix error return value in loop_add() Tejun Heo
2013-02-07 18:26 ` [PATCH v2 23/77] block/loop: convert to idr_alloc() Tejun Heo
2013-02-06 19:39 ` [PATCH 24/77] atm/nicstar: " Tejun Heo
2013-02-06 19:39 ` [PATCH 25/77] drbd: " Tejun Heo
2013-02-06 19:39 ` [PATCH 26/77] dca: " Tejun Heo
2013-02-06 19:39 ` [PATCH 27/77] dmaengine: " Tejun Heo
2013-02-06 19:40 ` [PATCH 28/77] firewire: add minor number range check to fw_device_init() Tejun Heo
2013-02-06 19:40 ` [PATCH 29/77] firewire: convert to idr_alloc() Tejun Heo
2013-02-06 19:40 ` [PATCH 30/77] gpio: " Tejun Heo
2013-02-06 19:40 ` [PATCH 31/77] drm: " Tejun Heo
2013-02-06 19:40 ` [PATCH 32/77] drm/exynos: " Tejun Heo
2013-02-06 19:40 ` [PATCH 33/77] drm/i915: " Tejun Heo
2013-02-06 19:40 ` [PATCH 34/77] drm/sis: " Tejun Heo
2013-02-06 19:40 ` [PATCH 35/77] drm/via: " Tejun Heo
2013-02-06 19:40 ` [PATCH 36/77] drm/vmwgfx: " Tejun Heo
2013-02-06 19:40 ` [PATCH 37/77] i2c: " Tejun Heo
2013-02-07 15:28 ` Mark Brown
2013-02-07 16:32 ` Tejun Heo
2013-02-07 16:39 ` Mark Brown
2013-02-07 16:55 ` [PATCH v2] " Tejun Heo
2013-02-07 18:52 ` Mark Brown
2013-02-08 12:10 ` Mark Brown
2013-02-10 11:47 ` Wolfram Sang
2013-02-12 17:34 ` [PATCH -mm] i2c: style cleanups after idr_alloc() conversion Tejun Heo
2013-02-12 17:36 ` Tejun Heo
2013-02-12 18:00 ` Jean Delvare
2013-02-13 20:42 ` Wolfram Sang
2013-02-06 19:40 ` [PATCH 38/77] IB/core: convert to idr_alloc() Tejun Heo
2013-02-06 19:40 ` [PATCH 39/77] IB/amso1100: " Tejun Heo
2013-02-06 19:40 ` [PATCH 40/77] IB/cxgb3: " Tejun Heo
2013-02-06 19:40 ` [PATCH 41/77] IB/cxgb4: " Tejun Heo
2013-02-06 19:40 ` [PATCH 42/77] IB/ehca: " Tejun Heo
2013-02-06 19:40 ` [PATCH 43/77] IB/ipath: " Tejun Heo
2013-02-06 19:40 ` [PATCH 44/77] IB/mlx4: " Tejun Heo
2013-02-06 19:40 ` [PATCH 45/77] IB/ocrdma: " Tejun Heo
2013-02-06 19:40 ` [PATCH 46/77] IB/qib: " Tejun Heo
2013-02-06 19:40 ` [PATCH 47/77] dm: " Tejun Heo
2013-02-06 19:40 ` [PATCH 48/77] memstick: " Tejun Heo
2013-02-06 19:40 ` [PATCH 49/77] mfd: " Tejun Heo
2013-02-06 19:40 ` [PATCH 50/77] misc/c2port: " Tejun Heo
2013-02-06 19:40 ` [PATCH 51/77] misc/tifm_core: " Tejun Heo
2013-02-06 19:40 ` [PATCH 52/77] mmc: " Tejun Heo
2013-02-06 19:40 ` [PATCH 53/77] mtd: " Tejun Heo
2013-02-06 19:40 ` [PATCH 54/77] macvtap: " Tejun Heo
2013-02-06 19:40 ` [PATCH 55/77] ppp: " Tejun Heo
2013-02-06 19:40 ` [PATCH 56/77] power: " Tejun Heo
2013-02-06 19:40 ` [PATCH 57/77] pps: " Tejun Heo
2013-02-06 19:40 ` [PATCH 58/77] remoteproc: " Tejun Heo
2013-02-06 19:40 ` [PATCH 59/77] rpmsg: " Tejun Heo
2013-02-06 19:40 ` [PATCH 60/77] scsi/bfa: " Tejun Heo
2013-02-06 19:40 ` [PATCH 61/77] scsi: " Tejun Heo
2013-02-06 19:40 ` [PATCH 62/77] target/iscsi: " Tejun Heo
2013-02-06 19:40 ` [PATCH 63/77] scsi/lpfc: " Tejun Heo
2013-02-11 22:47 ` James Smart
2013-02-06 19:40 ` [PATCH 64/77] thermal: " Tejun Heo
2013-02-06 19:40 ` [PATCH 65/77] uio: " Tejun Heo
2013-02-06 19:40 ` [PATCH 66/77] vfio: " Tejun Heo
2013-02-06 19:40 ` [PATCH 67/77] dlm: " Tejun Heo
2013-03-11 19:29 ` David Teigland
2013-03-11 20:28 ` Tejun Heo
2013-03-12 15:17 ` David Teigland
2013-03-12 21:22 ` [PATCH] idr: idr_alloc() shouldn't trigger lowmem warning when preloaded Tejun Heo
2013-02-06 19:40 ` [PATCH 68/77] inotify: convert to idr_alloc() Tejun Heo
2013-02-06 19:40 ` [PATCH 69/77] ocfs2: " Tejun Heo
2013-02-06 19:40 ` [PATCH 70/77] ipc: " Tejun Heo
2013-02-07 19:43 ` [PATCH v2 " Tejun Heo
2013-02-06 19:40 ` [PATCH 71/77] cgroup: " Tejun Heo
2013-02-06 19:40 ` [PATCH 72/77] events: " Tejun Heo
2013-02-06 19:40 ` [PATCH 73/77] posix-timers: " Tejun Heo
2013-02-06 19:40 ` [PATCH 74/77] net/9p: " Tejun Heo
2013-02-06 19:40 ` [PATCH 75/77] mac80211: " Tejun Heo
2013-02-06 19:40 ` [PATCH 76/77] sctp: " Tejun Heo
2013-02-06 20:07 ` Vlad Yasevich
2013-02-07 14:49 ` Neil Horman
2013-02-06 19:40 ` [PATCH 77/77] nfs4client: " Tejun Heo
2013-02-08 4:04 ` [PATCHSET] idr: deprecate idr_remova_all() and add idr_alloc() Dave Airlie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1360179649-22465-1-git-send-email-tj@kernel.org \
--to=tj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome