]>
www.infradead.org Git - users/willy/xarray.git/log
Matthew Wilcox [Mon, 18 Feb 2019 22:17:56 +0000 (17:17 -0500)]
spi: Convert spi_master_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 22:08:02 +0000 (17:08 -0500)]
soc/qcom: Convert svcs_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:56:39 +0000 (16:56 -0500)]
rpmsg: Convert endpoints to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:49:49 +0000 (16:49 -0500)]
reset: Convert reset-ti-sci to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:43:36 +0000 (16:43 -0500)]
remoteproc: Convert notifyids to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:29:20 +0000 (16:29 -0500)]
pps: Convert pps_idr to XArray
The pps_idr_lock mutex is unnecessary thanks to the included xa_lock.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:23:11 +0000 (16:23 -0500)]
powercap: Convert IDRs to IDAs
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:16:25 +0000 (16:16 -0500)]
power: Convert ds2782_battery to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:15:02 +0000 (16:15 -0500)]
power: Convert bq27xxx_battery to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:13:37 +0000 (16:13 -0500)]
power: Convert bq2415x_charger to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:11:16 +0000 (16:11 -0500)]
pci: Convert endpoint functions_idr to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 21:09:14 +0000 (16:09 -0500)]
of: Convert ovcs_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 20:30:42 +0000 (15:30 -0500)]
ubiblock: Convert ubiblock_minor_idr to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 20:27:48 +0000 (15:27 -0500)]
mtdcore: Convert mtd_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 19:23:02 +0000 (14:23 -0500)]
scif: Convert scif_ports to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 19:08:36 +0000 (14:08 -0500)]
mei: Convert mei_idr to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 18:41:32 +0000 (13:41 -0500)]
i3c: Convert i3c_bus_idr to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 18:39:27 +0000 (13:39 -0500)]
i2c: Convert i2c_adapter_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 15:08:06 +0000 (10:08 -0500)]
events: Convert pmu_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 14:58:53 +0000 (09:58 -0500)]
workqueue: Convert to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 14:49:21 +0000 (09:49 -0500)]
ac97: Convert ac97_adapter_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sat, 16 Feb 2019 02:28:08 +0000 (21:28 -0500)]
fpga: Convert dfl idrs to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 22:39:57 +0000 (17:39 -0500)]
firewire: Convert firewire_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 21:01:15 +0000 (16:01 -0500)]
nicstar: Convert to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 20:38:03 +0000 (15:38 -0500)]
arm_scmi: Convert scmi_protocols to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 20:08:36 +0000 (15:08 -0500)]
idr: Handle integer overflow correctly
If there is an entry at INT_MAX then idr_for_each_entry() will increment
id after handling it. This is undefined behaviour, and is caught by
UBSAN. Adding 1U to id forces the operation to be carried out as an
unsigned addition which (when assigned to id) will result in INT_MIN.
Since there is never an entry stored at INT_MIN, idr_get_next() will
return NULL, ending the loop as expected.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 19:54:00 +0000 (14:54 -0500)]
Remove idr_for_each()
With no more users remaining, delete the function.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 18:42:08 +0000 (13:42 -0500)]
arm_scmi: Convert tx_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 14:56:21 +0000 (09:56 -0500)]
target_core_user: Convert comamnds IDR to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 13:16:26 +0000 (08:16 -0500)]
Remove idr_preload
With all users gone, we can delete the implementation and various pieces
of infrastructure that it used.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 15 Feb 2019 13:06:23 +0000 (08:06 -0500)]
visorhba: Convert to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 14 Feb 2019 21:46:47 +0000 (16:46 -0500)]
idr: Remove idr_replace()
All users are now converted.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 21:20:07 +0000 (16:20 -0500)]
tifm: Convert to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 21:17:48 +0000 (16:17 -0500)]
cxl: Convert adapter_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 21:11:40 +0000 (16:11 -0500)]
cxl: Convert contexts_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 18:48:38 +0000 (13:48 -0500)]
rtsx_pcr: Convert to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 14:36:36 +0000 (09:36 -0500)]
irq: Convert timings to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 13:47:51 +0000 (08:47 -0500)]
tpm: Convert dev_nums to XArray
Also fix a couple of memory leaks on allocation failure.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 13:35:25 +0000 (08:35 -0500)]
vmscan: Convert shrinker_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 12 Feb 2019 04:19:18 +0000 (23:19 -0500)]
memcontrol: Convert mem_cgroup IDR to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 21:56:34 +0000 (16:56 -0500)]
c2port: Convert IDR to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 21:38:45 +0000 (16:38 -0500)]
tee: Convert shm IDR to XArray
Also remove the unused shm_list
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 21:13:59 +0000 (16:13 -0500)]
mspro_block: Convert disks IDR to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 21:12:20 +0000 (16:12 -0500)]
ms_block: Convert disk IDR to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 21:09:07 +0000 (16:09 -0500)]
memstick: Convert host IDR to IDA
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 21:04:04 +0000 (16:04 -0500)]
iscsi_target: Convert g_tiqn_list and tiqn_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 11 Feb 2019 20:42:19 +0000 (15:42 -0500)]
iommu: Convert intel_pasid to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sun, 10 Feb 2019 04:14:03 +0000 (23:14 -0500)]
idr: Remove idr_alloc_u32
The last user is now gone, so remove the export of this function.
It reamins as a static function as it is used by idr_alloc(), and it's not
worth simplifying the source code since idr_alloc should be removed soon.
Also remove idr_get_next_ul() and idr_for_each_entry_ul().
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 7 Feb 2019 13:33:47 +0000 (08:33 -0500)]
apparmor: Convert aa_secids to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 16 Jan 2019 19:31:52 +0000 (14:31 -0500)]
IDR: Remove idr_alloc_cyclic
With all users now converted to XArray, remove this API.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 16 Jan 2019 19:24:15 +0000 (14:24 -0500)]
bpf: Convert map & prog IDRs to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 11 Jan 2019 20:41:39 +0000 (15:41 -0500)]
bpf: Convert btf_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 9 Jan 2019 13:34:37 +0000 (08:34 -0500)]
target: Convert devices_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 20:31:13 +0000 (15:31 -0500)]
soc: qcom: Convert txns to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 20:16:04 +0000 (15:16 -0500)]
slimbus: Convert tid_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 18:38:28 +0000 (13:38 -0500)]
rpmsg: Convert riids to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 17:50:33 +0000 (12:50 -0500)]
rpmsg; Convert liids to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 17:20:22 +0000 (12:20 -0500)]
rpmsg: Convert rcids to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 17:07:21 +0000 (12:07 -0500)]
rpmsg: Convert lcids to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 8 Jan 2019 15:05:31 +0000 (10:05 -0500)]
rapidio: Convert ch_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sun, 6 Jan 2019 20:23:54 +0000 (15:23 -0500)]
x86,hyperv: Convert conn_to_evt to XArray
This IDR wasn't being used to allocate IDs, just as somewhere to store
pointers. It moves out from under the protection of the mutex to its
own spinlock.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 15 Nov 2018 07:02:19 +0000 (02:02 -0500)]
scsi: Convert same_target_siblings to XArray
Generally each target has only one LUN, so the target will have a direct
pointer to the sdev.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sat, 3 Nov 2018 12:57:46 +0000 (08:57 -0400)]
firewire: Convert resource_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sat, 3 Nov 2018 03:17:29 +0000 (23:17 -0400)]
dca: Convert dca_idr to IDA
The DCA code never looks up the pointer it stores in the IDR, so it
can use the IDA which is more efficient and easier to use.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 2 Nov 2018 03:26:21 +0000 (23:26 -0400)]
dm: Convert _minor_idr to XArray
Drop the use of the custom MINOR_ALLOCATED define in favour of using the
ability to allocate an index for a NULL pointer. Rename the structure
to dm_minors.
It's probably possible to replace the _minor_lock with the xa_lock, but
it might be better to separate out the multiple things which are being
protected.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 9 Jan 2019 18:31:15 +0000 (13:31 -0500)]
cgroup: Convert cgroup_hierarchy to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sat, 3 Nov 2018 12:23:42 +0000 (08:23 -0400)]
cgroup: Convert css_idr to XArray
Remove the internal wrappers as the XArray behaves exactly how the
cgroup code wishes the IDR did.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sat, 27 Oct 2018 03:24:58 +0000 (23:24 -0400)]
cgroup: Convert cgroup_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox (Oracle) [Sun, 4 Aug 2019 11:20:30 +0000 (07:20 -0400)]
ipc: Convert ipcs_idr to XArray
The XArray has better loops than the IDR has, removing the need to
open-code them. We also don't need to call idr_destroy() any more.
Allocating the ID is a little tricky due to needing to get 'seq'
correct. Open-code a variant of __xa_alloc() which lets us set the
ID and the seq before depositing the pointer in the array.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 29 Oct 2018 16:44:30 +0000 (12:44 -0400)]
radix tree: Remove more unused functions
radix_tree_insert, radix_tree_delete, radix_tree_tag_set and
radix_tree_tag_clear are all now unused.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 29 Oct 2018 16:26:24 +0000 (12:26 -0400)]
radix tree: Remove unused iteration code
The ability to iterate over tags or iterate contiguously,
radix_tree_iter_delete(), radix_tree_iter_resume(),
radix_tree_iter_retry() and radix_tree_iter_lookup() are all now unused.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 29 Oct 2018 16:10:21 +0000 (12:10 -0400)]
radix tree: Remove radix_tree_{insert,replace}_slot
Now unused. Also radix_tree_deref_slot, radix_tree_deref_slot_protected,
radix_tree_deref_retry and radix_tree_exception.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 29 Oct 2018 16:04:06 +0000 (12:04 -0400)]
radix tree: Remove radix_tree_gang_lookup*
Users of these functions have all been converted to use xa_extract().
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 17 Dec 2018 23:05:18 +0000 (18:05 -0500)]
XArray: Remove radix tree compatibility
The xa_flags field in the XArray was compatible with the radix tree
in order to make conversion easier. With the page cache converted,
all future conversions will be done one data structure at a time, so
there is no more need for this compatibility. This reduces the header
dependencies of the XArray to not require gfp.h, which would otherwise
introduce a header loop in a later patch.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 29 Oct 2018 15:20:35 +0000 (11:20 -0400)]
radix tree test suite: Convert to XArray
With only the IDR remaining as a user of the radix tree API, convert
the non-IDR pieces of the radix tree test suite to the XArray API.
Matthew Wilcox [Fri, 14 Dec 2018 19:36:47 +0000 (14:36 -0500)]
radix tree test suite: Convert regression4 to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Fri, 26 Oct 2018 03:22:20 +0000 (23:22 -0400)]
radix tree test suite: Convert regression3 to XArray
Move the test to the in-kernel test suite
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 20:50:34 +0000 (16:50 -0400)]
pinctrl: Convert pin_desc_tree to XArray
Straightforward conversion; no locking changes.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 20:42:48 +0000 (16:42 -0400)]
pinctrl: Convert pin_function_tree to XArray
Straightforward conversion; no locking changes.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 20:36:55 +0000 (16:36 -0400)]
pinctrl: Convert pin_group_tree to XArray
Straightforward conversion; no locking changes.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 19:38:24 +0000 (15:38 -0400)]
powerpc: Remove obsolete radix-tree includes
This code hasn't used the radix tree API since 2012.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 19:36:42 +0000 (15:36 -0400)]
c6x: Remove unused radix-tree includes
These files do not use the radix tree API.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 18:05:37 +0000 (14:05 -0400)]
nvme target: Convert p2p_ns_map to XArray
Straightforward conversion, no locking changes.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 16:42:36 +0000 (12:42 -0400)]
dm-zoned-target: Convert to XArray
Switch the locking from a mutex to the xa spinlock.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 25 Oct 2018 16:22:46 +0000 (12:22 -0400)]
pwm: Convert to XArray
Straightforward conversion.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 24 Oct 2018 15:03:37 +0000 (11:03 -0400)]
scsi: tcmu: Convert to XArray
I used xa_for_each() instead of a counting loop which will speed up
deleting sparsely-populated devices.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 24 Oct 2018 13:26:22 +0000 (09:26 -0400)]
irqdesc: Convert to XArray
There was no locking here to convert; possibly this is a bugfix, or
maybe simultaneous modification was excluded in some other way.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 20:20:22 +0000 (15:20 -0500)]
ocxl: Convert minors_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 20:15:43 +0000 (15:15 -0500)]
ocxl: Convert contexts_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Mon, 18 Feb 2019 20:05:53 +0000 (15:05 -0500)]
ocxl: Convert irq_idr to XArray
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 24 Oct 2018 12:00:04 +0000 (08:00 -0400)]
ocxl: Convert pe_tree to XArray
Straightforward conversion.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 18 Oct 2018 20:15:35 +0000 (16:15 -0400)]
dma-debug: Convert to XArray
The dma-debug code was using the radix tree tags in a tremendously
inefficient way. Instead, chain dma entries which hit the same
cacheline just like the s390 and btrfs code do.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 18 Oct 2018 19:39:00 +0000 (15:39 -0400)]
radix tree: Remove preload API
With all callers gone, we can remove the radix_tree_preload API.
The mechanism remains in order to support the IDR preload API.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Thu, 18 Oct 2018 19:36:42 +0000 (15:36 -0400)]
erofs: Convert workstn_tree to XArray
Rename it to compression_work as a better reflection of what it's for.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 17 Oct 2018 18:45:31 +0000 (14:45 -0400)]
hwspinlock: Convert to XArray
I had to mess with the locking a bit as I converted the code from a
mutex to the xa_lock.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 17 Oct 2018 18:43:43 +0000 (14:43 -0400)]
radix tree: Remove radix_tree_maybe_preload
This function is now unused; delete it.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 17 Oct 2018 18:19:14 +0000 (14:19 -0400)]
md: Convert raid5-cache to XArray
This is the first user of the radix tree I've converted which was
storing numbers rather than pointers. I'm fairly pleased with how
well it came out. There's less boiler-plate involved than there was
with the radix tree, so that's a win. It does use the advanced API,
and I think that's a signal that there needs to be a separate API for
using the XArray for only integers.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Wed, 24 Oct 2018 13:32:01 +0000 (09:32 -0400)]
s390: Convert vsie to XArray
No locking conversion, just using the new API.
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Tue, 16 Oct 2018 21:01:23 +0000 (17:01 -0400)]
s390: Convert gmap to XArray
The three radix trees in gmap are all converted to the XArray.
This is another case where the multiple locks held mandates the use
of the xa_reserve() API. The gmap_insert_rmap() function is
considerably simplified by using the advanced API;
gmap_radix_tree_free() turns out to just be xa_destroy(), and
gmap_rmap_radix_tree_free() is a nice little iteration followed
by xa_destroy().
Signed-off-by: Matthew Wilcox <willy@infradead.org>
Matthew Wilcox [Sat, 13 Oct 2018 11:47:30 +0000 (07:47 -0400)]
radix tree tests: Convert regression2 to XArray
The regression2 test was the last user of
radix_tree_gang_lookup_tag_slot() and was testing functionality that
was only used by the page cache, so it makes sense to convert it to
the XArray. The actual bug that it attempts to catch was really in
radix_tree_range_tag_if_tagged() which was deleted months ago.
Signed-off-by: Matthew Wilcox <willy@infradead.org>