Re: [PATCH RFC 1/2] kcov: collect coverage from interrupts

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

 



On Tue, Dec 17, 2019 at 12:00 PM Dmitry Vyukov <dvyukov@xxxxxxxxxx> wrote:
>
> On Fri, Dec 13, 2019 at 1:09 PM Andrey Konovalov <andreyknvl@xxxxxxxxxx> wrote:
> >
> > On Thu, Dec 12, 2019 at 7:15 PM Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> > >
> > > On Thu, 12 Dec 2019, Andrey Konovalov wrote:
> > >
> > > > This change extends kcov remote coverage support to allow collecting
> > > > coverage from interrupts in addition to kernel background threads.
> > > >
> > > > To collect coverage from code that is executed in interrupt context, a
> > > > part of that code has to be annotated with kcov_remote_start/stop() in a
> > > > similar way as how it is done for global kernel background threads. Then
> > > > the handle used for the annotations has to be passed to the
> > > > KCOV_REMOTE_ENABLE ioctl.
> > > >
> > > > Internally this patch adjusts the __sanitizer_cov_trace_pc() compiler
> > > > inserted callback to not bail out when called from interrupt context.
> > > > kcov_remote_start/stop() are updated to save/restore the current per
> > > > task kcov state in a per-cpu area (in case the interrupt came when the
> > > > kernel was already collecting coverage in task context). Coverage from
> > > > interrupts is collected into pre-allocated per-cpu areas, whose size is
> > > > controlled by the new CONFIG_KCOV_IRQ_AREA_SIZE.
> > > >
> > > > This patch also cleans up some of kcov debug messages.
> > > >
> > > > Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
> > > > ---
> > >
> > > > diff --git a/drivers/usb/gadget/udc/dummy_hcd.c b/drivers/usb/gadget/udc/dummy_hcd.c
> > > > index 4c9d1e49d5ed..faf84ada71a5 100644
> > > > --- a/drivers/usb/gadget/udc/dummy_hcd.c
> > > > +++ b/drivers/usb/gadget/udc/dummy_hcd.c
> > > > @@ -38,6 +38,7 @@
> > > >  #include <linux/usb/gadget.h>
> > > >  #include <linux/usb/hcd.h>
> > > >  #include <linux/scatterlist.h>
> > > > +#include <linux/kcov.h>
> > > >
> > > >  #include <asm/byteorder.h>
> > > >  #include <linux/io.h>
> > >
> > > That's the only change to this driver.  As such, it doesn't appear to
> > > be needed, judging by the patch description.
> >
> > Right, will fix in the next version, thanks!
>
> Please also post a github or gerrit link. These small scraps of
> changes without context and better visualisation are extremely hard to
> review meaningfully.

The link is in the cover letter:

https://linux-review.googlesource.com/c/linux/kernel/git/torvalds/linux/+/2224/1



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux