* [PATCH] drm: qxl: ratelimit pr_info message, reduce log spamming
@ 2017-09-12 9:45 Colin King
0 siblings, 0 replies; 4+ messages in thread
From: Colin King @ 2017-09-12 9:45 UTC (permalink / raw)
To: Dave Airlie, Gerd Hoffmann, David Airlie, virtualization,
dri-devel
Cc: kernel-janitors, linux-kernel
From: Colin Ian King <colin.king@canonical.com>
Simply mmap'ing /dev/dri/card0 repeatedly will spam the kernel
log with qxl_mmap information messages. The following example code
illustrates this:
int main(void)
{
int fd = open("/dev/dri/card0", O_RDONLY);
if (fd == -1)
err(1, "open failed");
for (;;) {
void *m = mmap(NULL, 4096, PROT_READ,
MAP_SHARED, fd, 0);
if (m != MAP_FAILED)
munmap(m, 4096);
}
}
Reduce the spamming by ratelimiting the pr_info messages.
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
drivers/gpu/drm/qxl/qxl_ttm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/qxl/qxl_ttm.c b/drivers/gpu/drm/qxl/qxl_ttm.c
index 7ecf8a4b9fe6..6502e699f462 100644
--- a/drivers/gpu/drm/qxl/qxl_ttm.c
+++ b/drivers/gpu/drm/qxl/qxl_ttm.c
@@ -124,7 +124,7 @@ int qxl_mmap(struct file *filp, struct vm_area_struct *vma)
int r;
if (unlikely(vma->vm_pgoff < DRM_FILE_PAGE_OFFSET)) {
- pr_info("%s: vma->vm_pgoff (%ld) < DRM_FILE_PAGE_OFFSET\n",
+ pr_info_ratelimited("%s: vma->vm_pgoff (%ld) < DRM_FILE_PAGE_OFFSET\n",
__func__, vma->vm_pgoff);
return -EINVAL;
}
--
2.14.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] drm: qxl: ratelimit pr_info message, reduce log spamming
[not found] <20170912094548.30603-1-colin.king@canonical.com>
@ 2017-09-12 14:02 ` Emil Velikov
[not found] ` <CACvgo53vbGbvejkEnQuuB-ZuVfbzvSmAsx3Ovj-wMWMQE8ihXw@mail.gmail.com>
1 sibling, 0 replies; 4+ messages in thread
From: Emil Velikov @ 2017-09-12 14:02 UTC (permalink / raw)
To: Colin King
Cc: David Airlie, kernel-janitors, Linux-Kernel@Vger. Kernel. Org,
ML dri-devel, open list:VIRTIO GPU DRIVER, Dave Airlie
Hi Colin,
On 12 September 2017 at 10:45, Colin King <colin.king@canonical.com> wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> Simply mmap'ing /dev/dri/card0 repeatedly will spam the kernel
> log with qxl_mmap information messages. The following example code
> illustrates this:
>
> int main(void)
> {
> int fd = open("/dev/dri/card0", O_RDONLY);
> if (fd == -1)
> err(1, "open failed");
>
> for (;;) {
> void *m = mmap(NULL, 4096, PROT_READ,
> MAP_SHARED, fd, 0);
> if (m != MAP_FAILED)
> munmap(m, 4096);
> }
> }
>
> Reduce the spamming by ratelimiting the pr_info messages.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
> drivers/gpu/drm/qxl/qxl_ttm.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/qxl/qxl_ttm.c b/drivers/gpu/drm/qxl/qxl_ttm.c
> index 7ecf8a4b9fe6..6502e699f462 100644
> --- a/drivers/gpu/drm/qxl/qxl_ttm.c
> +++ b/drivers/gpu/drm/qxl/qxl_ttm.c
> @@ -124,7 +124,7 @@ int qxl_mmap(struct file *filp, struct vm_area_struct *vma)
> int r;
>
> if (unlikely(vma->vm_pgoff < DRM_FILE_PAGE_OFFSET)) {
> - pr_info("%s: vma->vm_pgoff (%ld) < DRM_FILE_PAGE_OFFSET\n",
> + pr_info_ratelimited("%s: vma->vm_pgoff (%ld) < DRM_FILE_PAGE_OFFSET\n",
Quick grep suggests that only qxl and vmwgfx produce any output in
this case, likely for the reasons you mentioned.
That said, I'm not sure how useful the information is - perhaps it's
better to drop it all together? Regardless of the route taken, vmwgfx
could use a similar fix.
HTH
Emil
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm: qxl: ratelimit pr_info message, reduce log spamming
[not found] ` <CACvgo53vbGbvejkEnQuuB-ZuVfbzvSmAsx3Ovj-wMWMQE8ihXw@mail.gmail.com>
@ 2017-09-12 14:09 ` Dan Carpenter
[not found] ` <20170912140921.maegwq32x5a6jyql@mwanda>
1 sibling, 0 replies; 4+ messages in thread
From: Dan Carpenter @ 2017-09-12 14:09 UTC (permalink / raw)
To: Emil Velikov
Cc: David Airlie, kernel-janitors, Linux-Kernel@Vger. Kernel. Org,
ML dri-devel, open list:VIRTIO GPU DRIVER, Dave Airlie,
Colin King
On Tue, Sep 12, 2017 at 03:02:04PM +0100, Emil Velikov wrote:
> That said, I'm not sure how useful the information is - perhaps it's
> better to drop it all together?
Or a WARN_ONCE().
regards,
dan carpenter
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm: qxl: ratelimit pr_info message, reduce log spamming
[not found] ` <20170912140921.maegwq32x5a6jyql@mwanda>
@ 2017-09-12 14:21 ` Gerd Hoffmann
0 siblings, 0 replies; 4+ messages in thread
From: Gerd Hoffmann @ 2017-09-12 14:21 UTC (permalink / raw)
To: Dan Carpenter, Emil Velikov
Cc: David Airlie, kernel-janitors, Linux-Kernel@Vger. Kernel. Org,
ML dri-devel, open list:VIRTIO GPU DRIVER, Dave Airlie,
Colin King
On Tue, 2017-09-12 at 17:09 +0300, Dan Carpenter wrote:
> On Tue, Sep 12, 2017 at 03:02:04PM +0100, Emil Velikov wrote:
> > That said, I'm not sure how useful the information is - perhaps
> > it's
> > better to drop it all together?
>
> Or a WARN_ONCE().
It's userspace calling into the driver with invalid parameters.
IMO we should never WARN_ONCE() on something userspace can trigger.
I'd suggest to just drop the message altogether, simply throwing EINVAL
at userspace is perfectly fine IMHO.
cheers,
Gerd
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-09-12 14:21 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20170912094548.30603-1-colin.king@canonical.com>
2017-09-12 14:02 ` [PATCH] drm: qxl: ratelimit pr_info message, reduce log spamming Emil Velikov
[not found] ` <CACvgo53vbGbvejkEnQuuB-ZuVfbzvSmAsx3Ovj-wMWMQE8ihXw@mail.gmail.com>
2017-09-12 14:09 ` Dan Carpenter
[not found] ` <20170912140921.maegwq32x5a6jyql@mwanda>
2017-09-12 14:21 ` Gerd Hoffmann
2017-09-12 9:45 Colin King
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).