Messages in this thread | | | Date | Tue, 21 Aug 2018 21:27:22 -0700 | From | Matthew Wilcox <> | Subject | Re: [GIT PULL] IDA changes for 4.19 |
| |
On Mon, Aug 13, 2018 at 01:00:03PM -0700, Matthew Wilcox wrote: > > Hi Linus, > > Please pull the IDA patchset. It depends on the XArray patchset, so > ignore this pull request if you've decided not to pull the XArray patches. > The new IDA API is similar to ida_simple_get() but better named. The > internal restructuring of the IDA code removes the bitmap preallocation > nonsense.
I've redone this patchset to not depend on the XArray. It no longer removes the bitmap preallocation because that was too entangled with the rewrite to use the XArray. But it does give us a better IDA API -- id = ida_alloc(ida, GFP_xxx); ida_free(ida, id); rather than the cumbersome ida_simple_get(), ida_simple_remove(). The preallocation is no longer visible to consumers, so removing it will be easier next round.
I hope the net -200 lines of code is convincing.
The following changes since commit 94710cac0ef4ee177a63b5227664b38c95bbf703:
Linux 4.18 (2018-08-12 13:41:04 -0700)
are available in the Git repository at:
git://git.infradead.org/users/willy/linux-dax.git ida-4.19
for you to fetch changes up to 1df895190233fcc30d46beca4550bcafb7b959a6:
ida: Change ida_get_new_above to return the id (2018-08-21 23:54:21 -0400)
---------------------------------------------------------------- Matthew Wilcox (28): radix tree test suite: Fix compilation radix tree test suite: Enable ubsan radix-tree: Fix UBSAN warning ida: Lock the IDA in ida_destroy ida: Add new API mtip32xx: Convert to new IDA API fs: Convert unnamed_dev_ida to new API fs: Convert namespace IDAs to new API devpts: Convert to new IDA API sd: Convert to new IDA API osd: Convert to new IDA API rsxx: Convert to new IDA API cb710: Convert to new IDA API Convert net_namespace to new IDA API ppc: Convert mmu context allocation to new IDA API media: Convert entity ID allocation to new IDA API ppc: Convert vas ID allocation to new IDA API dmaengine: Convert to new IDA API drm/vmwgfx: Convert to new IDA API target/iscsi: Allocate session IDs from an IDA ida: Start new test_ida module idr-test: Convert ida_check_nomem to new API test_ida: Move ida_check_leaf test_ida: Move ida_check_max test_ida: Convert check_ida_conv to new API test_ida: check_ida_destroy and check_ida_alloc ida: Remove old API ida: Change ida_get_new_above to return the id
Mike Christie (1): iscsi target: fix session creation failure handling
arch/powerpc/mm/mmu_context_book3s64.c | 44 +----- arch/powerpc/platforms/powernv/vas-window.c | 26 +--- drivers/block/mtip32xx/mtip32xx.c | 29 +--- drivers/block/rsxx/core.c | 21 +-- drivers/dma/dmaengine.c | 23 +-- drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c | 41 ++--- drivers/media/media-device.c | 16 +- drivers/misc/cb710/core.c | 23 +-- drivers/scsi/osd/osd_uld.c | 22 +-- drivers/scsi/sd.c | 21 +-- drivers/target/iscsi/iscsi_target.c | 10 +- drivers/target/iscsi/iscsi_target.h | 4 +- drivers/target/iscsi/iscsi_target_login.c | 41 +++-- fs/devpts/inode.c | 47 ++---- fs/namespace.c | 50 ++---- fs/super.c | 67 +++----- include/linux/idr.h | 68 ++++++-- lib/Kconfig.debug | 3 + lib/Makefile | 1 + lib/idr.c | 155 +++++++------------ lib/radix-tree.c | 11 +- lib/test_ida.c | 177 +++++++++++++++++++++ net/core/net_namespace.c | 16 +- tools/testing/radix-tree/Makefile | 6 +- tools/testing/radix-tree/idr-test.c | 214 +++++--------------------- tools/testing/radix-tree/linux/xarray.h | 2 + tools/testing/radix-tree/main.c | 23 +-- tools/testing/radix-tree/test.h | 3 +- 28 files changed, 485 insertions(+), 679 deletions(-) create mode 100644 lib/test_ida.c create mode 100644 tools/testing/radix-tree/linux/xarray.h
| |