Re: [PATCH v3 0/2] btrfs: trace: Trace events for btrfs tree locking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 15, 2019 at 09:15:23PM +0800, Qu Wenruo wrote:
> This branch can be fetched from github:
> https://github.com/adam900710/linux/tree/trace_locking
> Which is based on v5.1-rc4 tag.
> 
> This patchset will introduce the following trace events for corresponding
> functions:
>   btrfs_tree_lock			(sleepable)
>   btrfs_tree_unlock
>   btrfs_tree_read_lock			(sleepable)
>   btrfs_tree_read_unlock
>   btrfs_tree_read_unlock_blocking
>   btrfs_set_lock_blocking_read
>   btrfs_set_lock_blocking_write
>   btrfs_clear_lock_blocking_read
>   btrfs_clear_lock_blocking_write
>   btrfs_try_tree_read_lock
>   btrfs_try_tree_write_lock
>   btrfs_tree_read_lock_atomic
> 
> The two sleepable ones will have extra info like start_ns, end_ns,
> diff_ns.
> Those two can be specially useful for tree lock wait time.
> There is tool to utilize those two events already:
> https://github.com/adam900710/btrfs-profiler/blob/master/tree_lock_wait.py
> 
> The non-sleepable can be useful for possible user space based lock
> leakage/dead lock detector.
> 
> Changelog:
> v2:
> - Hide all ktime_get_ns() call out of trace events
>   So there will be no overhead if trace events are not enabled.
> 
> v3:
> - More output for human to take a glance
> - More trace events for later bcc usage
>   Like lock leakage and deadlock detection.

V3 looks good to me, thanks. The enhanced output of the sleepable lock
is still sane.



[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux