linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHSET] idr: deprecate idr_remova_all() and add idr_alloc()
@ 2013-02-06 19:39 Tejun Heo
  2013-02-06 19:39 ` [PATCH 01/77] idr: fix a subtle bug in idr_get_next() Tejun Heo
                   ` (77 more replies)
  0 siblings, 78 replies; 106+ messages in thread
From: Tejun Heo @ 2013-02-06 19:39 UTC (permalink / raw)
  To: akpm; +Cc: linux-kernel

(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

^ permalink raw reply	[flat|nested] 106+ messages in thread

end of thread, other threads:[~2013-03-12 21:22 UTC | newest]

Thread overview: 106+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-06 19:39 [PATCHSET] idr: deprecate idr_remova_all() and add idr_alloc() Tejun Heo
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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).