<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/include/trace/events/btrfs.h, branch linux-4.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-04-18T12:07:26Z</updated>
<entry>
<title>btrfs: qgroup: Add trace point for qgroup reserved space</title>
<updated>2017-04-18T12:07:26Z</updated>
<author>
<name>Qu Wenruo</name>
</author>
<published>2017-03-13T07:52:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3159fe7baef3a50fc332455e252d8a01a18f1ff1'/>
<id>urn:sha1:3159fe7baef3a50fc332455e252d8a01a18f1ff1</id>
<content type='text'>
Introduce the following trace points:
qgroup_update_reserve
qgroup_meta_reserve

These trace points are handy to trace qgroup reserve space related
problems.

Also export btrfs_qgroup structure, as now we directly pass btrfs_qgroup
structure to trace points, so that structure needs to be exported.

Signed-off-by: Qu Wenruo &lt;quwenruo@cn.fujitsu.com&gt;
Reviewed-by: David Sterba &lt;dsterba@suse.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>Btrfs: add file item tracepoints</title>
<updated>2017-04-18T12:07:24Z</updated>
<author>
<name>Liu Bo</name>
</author>
<published>2017-03-10T19:09:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=09ed2f165cb3449237dec842b3564044e12d22cb'/>
<id>urn:sha1:09ed2f165cb3449237dec842b3564044e12d22cb</id>
<content type='text'>
While debugging truncate problems, I found that these tracepoints could
help us quickly know what went wrong.

Two sets of tracepoints are created to track regular/prealloc file item
and inline file item respectively, I put inline as a separate one since
what inline file items cares about are way less than the regular one.

This adds four tracepoints:
- btrfs_get_extent_show_fi_regular
- btrfs_get_extent_show_fi_inline
- btrfs_truncate_show_fi_regular
- btrfs_truncate_show_fi_inline

Cc: David Sterba &lt;dsterba@suse.cz&gt;
Signed-off-by: Liu Bo &lt;bo.li.liu@oracle.com&gt;
Reviewed-by: David Sterba &lt;dsterba@suse.com&gt;
[ formatting adjustments ]
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>btrfs: convert btrfs_ordered_extent.refs from atomic_t to refcount_t</title>
<updated>2017-04-18T12:07:23Z</updated>
<author>
<name>Elena Reshetova</name>
</author>
<published>2017-03-03T08:55:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e76edab7f059bc1047c1865141e2709d70e74852'/>
<id>urn:sha1:e76edab7f059bc1047c1865141e2709d70e74852</id>
<content type='text'>
refcount_t type and corresponding API should be
used instead of atomic_t when the variable is used as
a reference counter. This allows to avoid accidental
refcounter overflows that might lead to use-after-free
situations.

Signed-off-by: Elena Reshetova &lt;elena.reshetova@intel.com&gt;
Signed-off-by: Hans Liljestrand &lt;ishkamiel@gmail.com&gt;
Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: David Windsor &lt;dwindsor@gmail.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>btrfs: convert extent_map.refs from atomic_t to refcount_t</title>
<updated>2017-04-18T12:07:23Z</updated>
<author>
<name>Elena Reshetova</name>
</author>
<published>2017-03-03T08:55:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=490b54d6fb75f6ffd0471ec58bb38a992e2b40cd'/>
<id>urn:sha1:490b54d6fb75f6ffd0471ec58bb38a992e2b40cd</id>
<content type='text'>
refcount_t type and corresponding API should be
used instead of atomic_t when the variable is used as
a reference counter. This allows to avoid accidental
refcounter overflows that might lead to use-after-free
situations.

Signed-off-by: Elena Reshetova &lt;elena.reshetova@intel.com&gt;
Signed-off-by: Hans Liljestrand &lt;ishkamiel@gmail.com&gt;
Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: David Windsor &lt;dwindsor@gmail.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>btrfs: Make btrfs_ino take a struct btrfs_inode</title>
<updated>2017-02-14T14:50:51Z</updated>
<author>
<name>Nikolay Borisov</name>
</author>
<published>2017-01-10T18:35:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4a0cc7ca6c40b607b8aaa0bf6e97ffd74d64c2d8'/>
<id>urn:sha1:4a0cc7ca6c40b607b8aaa0bf6e97ffd74d64c2d8</id>
<content type='text'>
Currently btrfs_ino takes a struct inode and this causes a lot of
internal btrfs functions which consume this ino to take a VFS inode,
rather than btrfs' own struct btrfs_inode. In order to fix this "leak"
of VFS structs into the internals of btrfs first it's necessary to
eliminate all uses of struct inode for the purpose of inode. This patch
does that by using BTRFS_I to convert an inode to btrfs_inode. With
this problem eliminated subsequent patches will start eliminating the
passing of struct inode altogether, eventually resulting in a lot cleaner
code.

Signed-off-by: Nikolay Borisov &lt;n.borisov.lkml@gmail.com&gt;
[ fix btrfs_get_extent tracepoint prototype ]
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>btrfs: make tracepoint format strings more compact</title>
<updated>2017-01-09T10:27:07Z</updated>
<author>
<name>David Sterba</name>
</author>
<published>2017-01-06T14:51:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=562a7a07bf61e2949f7cbdb6ac7537ad9e2794d1'/>
<id>urn:sha1:562a7a07bf61e2949f7cbdb6ac7537ad9e2794d1</id>
<content type='text'>
We've recently added the fsid to trace events, this makes the line quite
long. To reduce the it again, remove extra spaces around = and remove
",".

Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>Btrfs: add truncated_len for ordered extent tracepoints</title>
<updated>2017-01-09T10:27:07Z</updated>
<author>
<name>Liu Bo</name>
</author>
<published>2016-12-01T00:10:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7856654842bdbebc0fbcbf51573da5d70a787aba'/>
<id>urn:sha1:7856654842bdbebc0fbcbf51573da5d70a787aba</id>
<content type='text'>
This can help us monitor truncated ordered extents.

Signed-off-by: Liu Bo &lt;bo.li.liu@oracle.com&gt;
Reviewed-by: David Sterba &lt;dsterba@suse.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>Btrfs: add 'inode' for extent map tracepoint</title>
<updated>2017-01-09T10:27:02Z</updated>
<author>
<name>Liu Bo</name>
</author>
<published>2016-11-17T23:00:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=92a1bf76a89ad338f00eb9a2c7689a3907fbcaad'/>
<id>urn:sha1:92a1bf76a89ad338f00eb9a2c7689a3907fbcaad</id>
<content type='text'>
'inode' is an important field for btrfs_get_extent, lets trace it.

Signed-off-by: Liu Bo &lt;bo.li.liu@oracle.com&gt;
Reviewed-by: David Sterba &lt;dsterba@suse.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>btrfs: fix crash when tracepoint arguments are freed by wq callbacks</title>
<updated>2017-01-09T10:24:50Z</updated>
<author>
<name>David Sterba</name>
</author>
<published>2017-01-06T13:12:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac0c7cf8be00f269f82964cf7b144ca3edc5dbc4'/>
<id>urn:sha1:ac0c7cf8be00f269f82964cf7b144ca3edc5dbc4</id>
<content type='text'>
Enabling btrfs tracepoints leads to instant crash, as reported. The wq
callbacks could free the memory and the tracepoints started to
dereference the members to get to fs_info.

The proposed fix https://marc.info/?l=linux-btrfs&amp;m=148172436722606&amp;w=2
removed the tracepoints but we could preserve them by passing only the
required data in a safe way.

Fixes: bc074524e123 ("btrfs: prefix fsid to all trace events")
CC: stable@vger.kernel.org # 4.8+
Reported-by: Sebastian Andrzej Siewior &lt;bigeasy@linutronix.de&gt;
Reviewed-by: Qu Wenruo &lt;quwenruo@cn.fujitsu.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
<entry>
<title>btrfs: convert extent-tree tracepoints to use fs_info</title>
<updated>2016-12-06T15:06:59Z</updated>
<author>
<name>Jeff Mahoney</name>
</author>
<published>2016-09-06T20:00:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=71ff6437c23643bfc0e8f0015538adefb30eec04'/>
<id>urn:sha1:71ff6437c23643bfc0e8f0015538adefb30eec04</id>
<content type='text'>
The extent-tree tracepoints all operate on the extent root, regardless of
which root is passed in.  Let's just use the extent root objectid instead.
If it turns out that nobody is depending on the format of this tracepoint,
we can drop the root printing entirely.

Signed-off-by: Jeff Mahoney &lt;jeffm@suse.com&gt;
Signed-off-by: David Sterba &lt;dsterba@suse.com&gt;
</content>
</entry>
</feed>
