Now as the there is path in arg, so instead of reading the path from
cur_device just get it from the caller, and so the purpose of cur_device
is to skip the device, so rename it to skip_dev. Also drop the comment
about different path being used for the same device, since now we will
have cli to
On 12/15/2017 11:06 PM, Nikolay Borisov wrote:
On 15.12.2017 05:47, Anand Jain wrote:
Let the list iterator iterate further and find other stale
devices and delete it. This is in preparation to add support
for user land request-able stale devices cleanup.
Signed-off-by: Anand Jain
On 15.12.2017 21:58, Chris Mason wrote:
> refcounts have a generic implementation and an asm optimized one. The
> generic version has extra debugging to make sure that once a refcount
> goes to zero, refcount_inc won't increase it.
I guess you meant to say
@@ -788,6 +788,7 @@ static noinline int device_list_add(const char *path,
nit: not directly related to the series in question, but I think you can
add one more patch which sinks the devid argument passed to
device_list_add. We already pass the disk_super and we can get the devid
in
Tomasz Pala posted on Fri, 15 Dec 2017 09:22:14 +0100 as excerpted:
> I wonder how this one db-library behaves:
>
> $ find . -name \*.sqlite | xargs ls -gGhS | head -n1
> -rw-r--r-- 1 15M 2017-12-08 12:14
> ./.mozilla/firefox/vni9ojqi.default/extension-data/ublock0.sqlite
>
> $ ~/fiemap
On 12 December 2017 at 06:50, Chris Murphy wrote:
>
> On Mon, Dec 11, 2017 at 10:12 PM, Tomasz Kłoczko
> wrote:
> > Hi,
> >
> > Jut done upgrade on my laptop to the latest Fedora rawhide packages.
> > After reboot and login in dmesg I found
On 16.12.2017 04:13, Anand Jain wrote:
>
>
> On 12/15/2017 11:06 PM, Nikolay Borisov wrote:
>>
>>
>> On 15.12.2017 05:47, Anand Jain wrote:
>>> Let the list iterator iterate further and find other stale
>>> devices and delete it. This is in preparation to add support
>>> for user land
On 16.12.2017 04:14, Anand Jain wrote:
> /*
>>> @@ -637,8 +632,11 @@ static void btrfs_free_stale_device(struct
>>> btrfs_device *cur_dev)
>>> * either use mapper or non mapper path throughout.
>>> */
>>> rcu_read_lock();
>>> -
On 2017年12月15日 16:36, Ian Kumlien wrote:
> On Fri, Dec 15, 2017 at 6:34 AM, Roman Mamedov wrote:
>> On Fri, 15 Dec 2017 01:39:03 +0100
>> Ian Kumlien wrote:
>>
>>> Hi,
>>>
>>> Running a 4.14.3 kernel, this just happened, but there should have
>>> been
On Fri, Dec 15, 2017 at 6:34 AM, Roman Mamedov wrote:
> On Fri, 15 Dec 2017 01:39:03 +0100
> Ian Kumlien wrote:
>
>> Hi,
>>
>> Running a 4.14.3 kernel, this just happened, but there should have
>> been another 20 gigs or so available.
>>
>> The filesystem
On Tue, Dec 12, 2017 at 08:50:15 +0800, Qu Wenruo wrote:
> Even without snapshot, things can easily go crazy.
>
> This will write 128M file (max btrfs file extent size) and write it to disk.
> # xfs_io -f -c "pwrite 0 128M" -c "sync" /mnt/btrfs/file
>
> Then, overwrite the 1~128M range.
> #
When device is missing its not necessary that btrfs_device::name is null
or the path is different when it reappears. Its possible that device can
go missing after its been scanned where neither of
btrfs_device::name == NULL OR btrfs_device::name != reappear_dev_path,
is true. So just check for
@@ -715,7 +715,8 @@ static noinline int device_list_add(const char
*path,
ret = 1;
device->fs_devices = fs_devices;
- } else if (!device->name || strcmp(device->name->str, path)) {
+ } else if (!device->name || strcmp(device->name->str, path) ||
+
On 15.12.2017 13:36, Qu Wenruo wrote:
> .
>
> But btrfs_space_reservation() seems to be abused.
> Every type from delalloc to enospc debug will use it.
>
> What about splitting them into different trace events?
I think trace events form some sort of an ABI so we can't really be
modifying
On 2017年12月15日 18:05, Nikolay Borisov wrote:
> Currently when enoscp_debug mount option is turned on we do not print
> any debug info in case metadata reservation failures happen. Fix this
> by adding the necessary hook in reserve_metadata_bytes.
Reviewed-by: Qu Wenruo
>
>
Currently when enoscp_debug mount option is turned on we do not print
any debug info in case metadata reservation failures happen. Fix this
by adding the necessary hook in reserve_metadata_bytes.
Signed-off-by: Nikolay Borisov
---
fs/btrfs/extent-tree.c | 7 ++-
1 file
Hello!
During balance I'm seeing the following in dmesg:
[194123.693226] [ cut here ]
[194123.693231] WARNING: CPU: 2 PID: 779 at fs/btrfs/backref.c:1255
find_parent_nodes+0x892/0x1340
[194123.693232] Modules linked in: f2fs bridge stp llc cifs ccm xfs rfcomm bnep
fuse
Commit 0e8c36a9fd81 ("Btrfs: fix lots of orphan inodes when the space
is not enough") changed the way transaction reservation is made in
btrfs_evict_node and as a result this function became unused. This has
been the status quo for 5 years in which time no one noticed, so I'd
say it's safe to
On Fri 15-12-17 09:17:42, Yan, Zheng wrote:
> On Fri, Dec 15, 2017 at 12:53 AM, Jan Kara wrote:
> >> >
> >> > In this particular case I'm not sure why does ceph pass 'filp' into
> >> > readpage() / readpages() handler when it already gets that pointer as
> >> > part
> >> > of
Now as the there is path in arg, so instead of reading the path from
cur_device just get it from the caller, and so the purpose of cur_device
is to skip the device, so rename it to skip_dev. Also drop the comment
about different path being used for the same device, since now we will
have cli to
On 15.12.2017 05:47, Anand Jain wrote:
> We call btrfs_free_stale_device() only when we alloc a new
> struct btrfs_device (ret=1), so move it closer to where we
> alloc the new device. Also drop the comments.
>
> Signed-off-by: Anand Jain
> ---
> fs/btrfs/volumes.c | 8
On 15.12.2017 05:47, Anand Jain wrote:
> Let the list iterator iterate further and find other stale
> devices and delete it. This is in preparation to add support
> for user land request-able stale devices cleanup.
>
> Signed-off-by: Anand Jain
What is the lock
On 15.12.2017 05:47, Anand Jain wrote:
> This updates btrfs_free_stale_device() helper function to delete all
> unmouted devices, when arg is NULL.
>
> Signed-off-by: Anand Jain
> ---
> fs/btrfs/volumes.c | 14 ++
> 1 file changed, 6 insertions(+), 8
From: Matthew Wilcox
Signed-off-by: Matthew Wilcox
---
fs/btrfs/compression.c | 4 +---
fs/btrfs/extent_io.c | 6 ++
2 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c
index
From: Matthew Wilcox
Signed-off-by: Matthew Wilcox
---
mm/migrate.c | 41 -
1 file changed, 16 insertions(+), 25 deletions(-)
diff --git a/mm/migrate.c b/mm/migrate.c
index 75d19904dd9a..7122fec9b075
From: Matthew Wilcox
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 98 +---
1 file changed, 26 insertions(+), 72 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index
On Mon, Dec 11, 2017 at 03:10:22PM -0800, Randy Dunlap wrote:
> > +The XArray does not support storing :c:func:`IS_ERR` pointers; some
> > +conflict with data values and others conflict with entries the XArray
> > +uses for its own purposes. If you need to store special values which
> > +cannot
From: Josef Bacik
Error injection is sloppy and very ad-hoc. BPF could fill this niche
perfectly with it's kprobe functionality. We could make sure errors are
only triggered in specific call chains that we care about with very
specific situations. Accomplish this with the
From: Josef Bacik
This allows us to do error injection with BPF for open_ctree.
Signed-off-by: Josef Bacik
Acked-by: Ingo Molnar
---
fs/btrfs/disk-io.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fs/btrfs/disk-io.c
From: Josef Bacik
This adds a basic test for bpf_override_return to verify it works. We
override the main function for mounting a btrfs fs so it'll return
-ENOMEM and then make sure that trying to mount a btrfs fs will fail.
Acked-by: Alexei Starovoitov
Just one last go around I hope, fixed the preemption thing that Darrick
reported.
v9->v10:
- the kprobe dispather now requires us to re-enable preemption if we change the
ip ourselves, so do that.
v8->v9:
- rebased onto the bpf tree.
v7->v8:
- removed the _ASM_KPROBE_ERROR_INJECT since it was
From: Josef Bacik
Using BPF we can override kprob'ed functions and return arbitrary
values. Obviously this can be a bit unsafe, so make this feature opt-in
for functions. Simply tag a function with KPROBE_ERROR_INJECT_SYMBOL in
order to give BPF access to that function for error
From: Josef Bacik
This was instrumental in reproducing a space cache bug.
Signed-off-by: Josef Bacik
Acked-by: Ingo Molnar
---
fs/btrfs/free-space-cache.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fs/btrfs/free-space-cache.c
Also,
in theory that break following case:
When fs mounted with compress=no, you can uncompress data by btrfs fi
def -vr , because of "bug" in logic/defaults.
And man page show that btrfs "Currently it’s not possible to select no
compression. See also section EXAMPLES."
I have a two simple
On 12/15/2017 09:34 PM, Alexei Starovoitov wrote:
[...]
> Also how big is the v9-v10 change ?
> May be do it as separate patch, since previous set already sitting
> in bpf-next and there are patches on top?
+1
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body
Currently defrag ioctl only support compress files with specified
compression type. Allow set compression type to none, while call defrag.
Signed-off-by: Timofey Titovets
---
fs/btrfs/btrfs_inode.h | 1 +
fs/btrfs/inode.c | 4 ++--
fs/btrfs/ioctl.c | 17
Acked-by: Steve French
On Tue, Dec 12, 2017 at 11:38 PM, Adam Borowski wrote:
> This link is replicated in most filesystems' config stanzas. Referring
> to an archived version of that site is pointless as it mostly deals with
> patches; user
refcounts have a generic implementation and an asm optimized one. The
generic version has extra debugging to make sure that once a refcount
goes to zero, refcount_inc won't increase it.
The btrfs delayed inode code wasn't expecting this, and we're tripping
over the warnings when the generic
On 12/15/17 11:12 AM, Josef Bacik wrote:
+#ifdef CONFIG_BPF_KPROBE_OVERRIDE
+BPF_CALL_2(bpf_override_return, struct pt_regs *, regs, unsigned long, rc)
+{
+ __this_cpu_write(bpf_kprobe_override, 1);
+ regs_set_return_value(regs, rc);
+
From: Matthew Wilcox
Quite a straightforward conversion.
Signed-off-by: Matthew Wilcox
---
mm/huge_memory.c | 19 ---
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index
From: Matthew Wilcox
This results in no change in structure size on 64-bit x86 as it fits in
the padding between the gfp_t and the void *.
Signed-off-by: Matthew Wilcox
---
fs/f2fs/gc.c | 2 +-
include/linux/idr.h|
From: Matthew Wilcox
Introduce page_cache_pin() to factor out the common logic between the
various lookup routines:
find_get_entry
find_get_entries
find_get_pages_range
find_get_pages_contig
find_get_pages_range_tag
find_get_entries_tag
filemap_map_pages
By using the
From: Matthew Wilcox
As with shmem_tag_pins(), hold the lock around the entire loop instead
of acquiring & dropping it for each entry we're going to untag.
Signed-off-by: Matthew Wilcox
---
mm/shmem.c | 59
From: Matthew Wilcox
This iterator operates across each tagged entry in the specified range.
We do not yet have a user for an xa_for_each_tag iterator, but it would
be straight-forward to add one if needed. This commit also includes
xas_find_tag() and xas_next_tag().
From: Matthew Wilcox
Simpler code because the xarray takes care of things like the limit and
dereferencing the slot.
Signed-off-by: Matthew Wilcox
---
mm/shmem.c | 18 +++---
1 file changed, 3 insertions(+), 15 deletions(-)
diff
From: Matthew Wilcox
Introduce xarray value entries to replace the radix tree exceptional
entry code. This is a slight change in encoding to allow the use of an
extra bit (we can now store BITS_PER_LONG - 1 bits in a value entry).
It is also a change in emphasis;
From: Matthew Wilcox
This first function in the XArray API brings with it a lot of support
infrastructure. The advanced API is based around the xa_state which is
a more capable version of the radix_tree_iter.
As the test-suite demonstrates, it is possible to use the
From: Matthew Wilcox
XArray tags are slightly more strongly typed than the radix tree tags,
but occupy the same bits. This commit also adds the xas_ family of tag
operations, for cases where the caller is already holding the lock, and
xa_tagged() to ask whether any array
From: Matthew Wilcox
Removes another user of radix_tree_preload().
Signed-off-by: Matthew Wilcox
---
fs/fscache/cookie.c | 6 +-
fs/fscache/internal.h | 2 +-
fs/fscache/object.c | 2 +-
fs/fscache/page.c | 152
From: Matthew Wilcox
These functions allow a range of xarray entries to be extracted into a
compact normal array.
Signed-off-by: Matthew Wilcox
---
include/linux/xarray.h | 27
lib/xarray.c | 88
From: Matthew Wilcox
xa_load has its own RCU locking, so we can eliminate it here.
Signed-off-by: Matthew Wilcox
---
mm/shmem.c | 7 +--
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/mm/shmem.c b/mm/shmem.c
index
From: Matthew Wilcox
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
From: Matthew Wilcox
This is a simple rename, except that xa_ail becomes ail_head.
Signed-off-by: Matthew Wilcox
---
fs/xfs/xfs_buf_item.c| 10 ++--
fs/xfs/xfs_dquot.c | 4 +-
fs/xfs/xfs_dquot_item.c | 11 ++--
From: Matthew Wilcox
This is a direct replacement for struct radix_tree_root. Some of the
struct members have changed name; convert those, and use a #define so
that radix_tree users continue to work without change.
Signed-off-by: Matthew Wilcox
From: Matthew Wilcox
This is documentation on how to use the XArray, not details about its
internal implementation.
Signed-off-by: Matthew Wilcox
---
Documentation/core-api/index.rst | 1 +
Documentation/core-api/xarray.rst | 340
From: Matthew Wilcox
This one is trivial.
Signed-off-by: Matthew Wilcox
---
mm/readahead.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/mm/readahead.c b/mm/readahead.c
index f64b31b3a84a..66bcaffd47f0 100644
---
From: Matthew Wilcox
While the radix tree offers no ability to store IS_ERR pointers,
documenting that the XArray does not led to some concern. Here is a
sanctioned way to store errnos in the XArray. I'm concerned that it
will confuse people who can't tell the
From: Matthew Wilcox
This is a direct replacement for struct radix_tree_node. A couple of
struct members have changed name, so convert those. Use a #define so
that radix tree users continue to work without change.
Signed-off-by: Matthew Wilcox
From: Matthew Wilcox
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 18 ++
1 file changed, 6 insertions(+), 12 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index 9cfd4fcc0b0d..a3e795ad2493 100644
--- a/fs/dax.c
+++ b/fs/dax.c
@@
From: Matthew Wilcox
Replace slot_locked() with dax_locked() and inline unlock_slot() into
its only caller.
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 48
1 file changed, 16 insertions(+), 32
From: Matthew Wilcox
Rename pag_ici_root to pag_ici_xa and use XArray APIs instead of radix
tree APIs. Shorter code, typechecking on tag numbers, better error
checking in xfs_reclaim_inode(), and eliminates a call to
radix_tree_preload().
Signed-off-by: Matthew Wilcox
From: Matthew Wilcox
Simplify the locking by taking the spinlock while we walk the tree on
the assumption that many acquires and releases of the lock will be
worse than holding the lock for a (potentially) long time.
We could replicate the same locking behaviour with the
From: Matthew Wilcox
Combine __add_to_swap_cache and add_to_swap_cache into one function
since there is no more need to preload.
Signed-off-by: Matthew Wilcox
---
mm/swap_state.c | 93 ++---
1
From: Matthew Wilcox
Removes sparse warnings.
Signed-off-by: Matthew Wilcox
---
fs/btrfs/extent_io.c| 4 ++--
fs/ext4/inode.c | 2 +-
fs/f2fs/data.c | 2 +-
fs/gfs2/aops.c | 2 +-
include/linux/pagevec.h | 8
From: Matthew Wilcox
This eliminates a call to radix_tree_preload().
Signed-off-by: Matthew Wilcox
---
fs/xfs/xfs_mru_cache.c | 72 +++---
1 file changed, 33 insertions(+), 39 deletions(-)
diff --git
From: Matthew Wilcox
This is essentially xa_cmpxchg() with the locking handled above us,
and it doesn't have to handle replacing a NULL entry.
Signed-off-by: Matthew Wilcox
---
mm/truncate.c | 15 ++-
1 file changed, 6 insertions(+),
From: Matthew Wilcox
In a non-critical path, irqdomain wants to know how many entries are
stored in the xarray, so add xa_count(). This is a pretty straightforward
conversion; mostly just removing now-redundant locking. The only thing
of note is just how much simpler
From: Matthew Wilcox
Slightly shorter and easier to read code.
Signed-off-by: Matthew Wilcox
---
mm/khugepaged.c | 17 +
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/mm/khugepaged.c b/mm/khugepaged.c
index
From: Matthew Wilcox
This function frees all the internal memory allocated to the xarray
and reinitialises it to be empty.
Signed-off-by: Matthew Wilcox
---
include/linux/xarray.h | 1 +
lib/xarray.c | 25 +
2
From: Matthew Wilcox
Mostly comment fixes, but one use of __xa_set_tag.
Signed-off-by: Matthew Wilcox
---
fs/buffer.c | 14 +++---
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/fs/buffer.c b/fs/buffer.c
index
From: Matthew Wilcox
Getting rid of the m_perag_lock lets us also get rid of the call to
radix_tree_preload(). This is a relatively naive conversion; we could
improve performance over the radix tree implementation by passing around
xa_state pointers instead of indices,
From: Matthew Wilcox
This is a pretty straight-forward conversion.
Signed-off-by: Matthew Wilcox
---
fs/xfs/xfs_dquot.c | 38 +-
fs/xfs/xfs_qm.c| 32
fs/xfs/xfs_qm.h|
From: Matthew Wilcox
Remove the address_space ->tree_lock and use the xa_lock newly added to
the radix_tree_root. Rename the address_space ->page_tree to ->pages,
since we don't really care that it's a tree. Take the opportunity to
rearrange the elements of
From: Matthew Wilcox
Use the xarray infrstructure like we used the radix tree infrastructure.
This lets us get rid of idr_get_free() from the radix tree code.
Signed-off-by: Matthew Wilcox
---
include/linux/idr.h| 8 +-
From: Matthew Wilcox
sparse doesn't know that follow_pte_pmd conditionally acquires the ptl,
so add an annotation to let it know what's going on.
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 1 +
1 file changed, 1 insertion(+)
diff --git
From: Matthew Wilcox
Simple now that we already have an xa_state!
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index 2629ffa70575..d3894c15609a
From: Matthew Wilcox
This hopefully temporary function is useful for users who have not yet
been converted to multi-index entries.
Signed-off-by: Matthew Wilcox
---
include/linux/xarray.h | 2 ++
lib/xarray.c | 22
From: Matthew Wilcox
The page cache offers the ability to search for a miss in the previous or
next N locations. Rather than teach the XArray about the page cache's
definition of a miss, use xas_prev() and xas_next() to search the page
array. This should be more
From: Matthew Wilcox
The IDR distinguishes between unallocated entries (read as NULL) and
entries where the user has chosen to store NULL. The radix tree was
modified to consider NULL entries which had tag 0 _clear_ as being
allocated, but it added a lot of complexity.
From: Matthew Wilcox
This works like doing cmpxchg() on an array entry. Code which wants
the radix_tree_insert() semantic of not overwriting an existing entry
can cmpxchg() with NULL and get the action it wants. Plus, instead of
having an error returned, they get the
From: Matthew Wilcox
Convert brd_pages from a radix tree to an XArray. Simpler and smaller
code; in particular another user of radix_tree_preload is eliminated.
Signed-off-by: Matthew Wilcox
---
drivers/block/brd.c | 93
From: Matthew Wilcox
xa_store() differs from radix_tree_insert() in that it will overwrite an
existing element in the array rather than returning an error. This is
the behaviour which most users want, and those that want more complex
behaviour generally want to use the
From: Matthew Wilcox
This is a fairly naive conversion, leaving in place the GFP_ATOMIC
allocation. By switching the locking around, we could use GFP_KERNEL
and probably simplify the error handling.
Signed-off-by: Matthew Wilcox
---
From: Matthew Wilcox
Use the XArray APIs to add and replace pages in the page cache. This
removes two uses of the radix tree preload API and is significantly
shorter code.
Signed-off-by: Matthew Wilcox
---
mm/filemap.c | 143
From: Matthew Wilcox
We construct a fake XA_STATE and use it to delete the node with xa_store()
rather than adding a special function for this unique use case.
Signed-off-by: Matthew Wilcox
---
include/linux/swap.h | 4 ++--
mm/workingset.c
From: Matthew Wilcox
Both callers of __delete_from_swap_cache have the swp_entry_t already,
so pass that in to make constructing the XA_STATE easier.
Signed-off-by: Matthew Wilcox
---
include/linux/swap.h | 5 +++--
mm/swap_state.c | 24
From: Matthew Wilcox
This is a straightforward conversion.
Signed-off-by: Matthew Wilcox
---
fs/f2fs/data.c | 3 +--
fs/f2fs/dir.c| 5 +
fs/f2fs/inline.c | 6 +-
fs/f2fs/node.c | 10 ++
4 files changed, 5
From: Matthew Wilcox
A couple of short loops.
Signed-off-by: Matthew Wilcox
---
fs/fs-writeback.c | 25 +
1 file changed, 9 insertions(+), 16 deletions(-)
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
index
From: Matthew Wilcox
Likewise easy
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 17 +++--
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index d3894c15609a..d6dd779e1b46 100644
--- a/fs/dax.c
+++
From: Matthew Wilcox
Again, this patch set does not apply to any particular tree
because it depends on things which are purely noise, and I'm trying
to keep the patch count down [1]. If you want it in a git tree, try
From: Matthew Wilcox
I'm not 100% convinced that the rewrite of nilfs_copy_back_pages is
correct, but it will at least have different bugs from the current
version.
Signed-off-by: Matthew Wilcox
---
fs/nilfs2/btnode.c | 37
From: Matthew Wilcox
This removes the last caller of radix_tree_maybe_preload_order().
Simpler code, unless we run out of memory for new xa_nodes partway through
inserting entries into the xarray. Hopefully we can support multi-index
entries in the page cache soon and
From: Matthew Wilcox
The XArray API is a slightly better fit for xhci_insert_segment_mapping()
than the radix tree API was.
Signed-off-by: Matthew Wilcox
---
drivers/usb/host/xhci-mem.c | 68 +++--
From: Matthew Wilcox
Don't open-code accesses to data structure internals.
Signed-off-by: Matthew Wilcox
---
fs/fscache/cookie.c | 2 +-
fs/fscache/object.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git
From: Matthew Wilcox
Includes moving mapping_tagged() to fs.h as a static inline, and
changing it to return bool.
Signed-off-by: Matthew Wilcox
---
include/linux/fs.h | 17 +--
mm/page-writeback.c | 62
From: Matthew Wilcox
Rename the function from page_cache_tree_delete_batch to just
page_cache_delete_batch.
Signed-off-by: Matthew Wilcox
---
mm/filemap.c | 23 +--
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git
From: Matthew Wilcox
With no more radix tree API users left, we can drop the GFP flags
and use xa_init() instead of INIT_RADIX_TREE().
Signed-off-by: Matthew Wilcox
---
fs/inode.c | 2 +-
include/linux/fs.h | 2 +-
mm/swap_state.c| 2
From: Matthew Wilcox
Signed-off-by: Matthew Wilcox
---
fs/dax.c | 22 --
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index dd4674ce48f5..46a4d83b1b46 100644
--- a/fs/dax.c
+++ b/fs/dax.c
From: Matthew Wilcox
This is a perfect use for xa_cmpxchg(). Note the use of 0 for GFP
flags; we won't be allocating memory.
Signed-off-by: Matthew Wilcox
---
mm/shmem.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git
From: Matthew Wilcox
The code is slightly shorter and simpler.
Signed-off-by: Matthew Wilcox
---
mm/filemap.c | 26 --
1 file changed, 12 insertions(+), 14 deletions(-)
diff --git a/mm/filemap.c b/mm/filemap.c
index
1 - 100 of 116 matches
Mail list logo