[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220404133312.GC3293@kadam>
Date: Mon, 4 Apr 2022 16:33:13 +0300
From: Dan Carpenter <dan.carpenter@...cle.com>
To: Michael Straube <straube.linux@...il.com>
Cc: "Fabio M. De Francesco" <fmdefrancesco@...il.com>,
Greg KH <gregkh@...uxfoundation.org>,
Larry Finger <Larry.Finger@...inger.net>,
Phillip Potter <phil@...lpotter.co.uk>,
"open list:STAGING SUBSYSTEM" <linux-staging@...ts.linux.dev>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: staging: r8188eu: how to handle nested mutex under spinlock
On Sun, Apr 03, 2022 at 02:18:04PM +0200, Michael Straube wrote:
> On 4/3/22 14:10, Fabio M. De Francesco wrote:
> > For a list of all the paths to a given function you may use Smatch:
> >
> > ./smatch/smatch_data/db/smdb.py ips_leave
> >
> > or
> >
> > ./smatch/smatch_data/db/smdb.py call_tree ips_leave
> >
> > But perhaps you already know how to do it.
>
> Yes, but thank you anyway. :)
>
My email (gmail account) has been so weird recently. I don't know why
I'm not getting Fabio's emails... Presumably they will show up in a few
days.
The other command to use is:
$ ./smatch/smatch_data/db/smdb.py preempt ips_leave
rtw_set_802_11_disassociate() <- disables preempt
-> _rtw_pwr_wakeup()
-> LeaveAllPowerSaveMode()
-> ips_leave()
I save that to a file, open it with with vim and run a vim function
`hall` (for highlight all) from my .vimrc file.
" Use :hall to highlight all the words in a file (for debugging sleeping bugs)
function HLall()
let a=[]
%s/\w\+/\=add(a, submatch(0))/gn
let @/ = join(a, "\\|")
endfunction
cnoreabbrev hall call HLall() <CR>:set hls<CR>
That highlights all the functions is the call tree, then I use cscope to
jump to rtw_set_802_11_disassociate and follow the highlighted functions
to ips_leave().
regards,
dan carpenter
Powered by blists - more mailing lists