mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Konstantin Khorenko <khorenko@virtuozzo.com>
To: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: "linux-fbdev@vger.kernel.org" <linux-fbdev@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH] fbcon: use kvmalloc() for scrollback buffer
Date: Fri, 21 Dec 2018 10:58:59 +0000	[thread overview]
Message-ID: <4eba60c6-4eb8-5a82-f394-307f835f41e1@virtuozzo.com> (raw)
In-Reply-To: <a7f6bf30-5094-b669-126d-e4751c17dcbb@samsung.com>

Hi Bartlomiej,

On 12/20/2018 07:21 PM, Bartlomiej Zolnierkiewicz wrote:
> On 11/26/2018 11:02 AM, Konstantin Khorenko wrote:
>> Scrollback frame buffer is rather big - 32K,
>> so it requires 3rd order page, so let's use kvmalloc() instead of
>> ordinary kmalloc() for it.
>
> Is it actually safe to use non-contiguous memory for softback_buf?

Well, that's why we need a review. :)

i've asked myself same question while fixing this,
i've dig sources a bit and did not find places when softback_buf is provided for DMA,
all other places seems to work with virtual addresses, so there should be no problem.

Even more i saw a function which mentions that softback might be non-contigious:

/* As we might be inside of softback, we may work with non-contiguous buffer,
    that's why we have to use a separate routine. */
static void fbcon_invert_region(struct vc_data *vc, u16 * p, int cnt)

So i think it's safe to use kvmalloc() here.

--
Best regards,

Konstantin Khorenko,
Virtuozzo Linux Kernel Team

>> Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>
>> ---
>>  drivers/video/fbdev/core/fbcon.c | 6 +++---
>>  1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c
>> index 8958ccc8b1ac..2b1a34d3f5e2 100644
>> --- a/drivers/video/fbdev/core/fbcon.c
>> +++ b/drivers/video/fbdev/core/fbcon.c
>> @@ -992,7 +992,7 @@ static const char *fbcon_startup(void)
>>  			if (!softback_buf) {
>>  				softback_buf =
>>  				    (unsigned long)
>> -				    kmalloc(fbcon_softback_size,
>> +				    kvmalloc(fbcon_softback_size,
>>  					    GFP_KERNEL);
>>  				if (!softback_buf) {
>>  					fbcon_softback_size = 0;
>> @@ -1001,7 +1001,7 @@ static const char *fbcon_startup(void)
>>  			}
>>  		} else {
>>  			if (softback_buf) {
>> -				kfree((void *) softback_buf);
>> +				kvfree((void *) softback_buf);
>>  				softback_buf = 0;
>>  				softback_top = 0;
>>  			}
>> @@ -3665,7 +3665,7 @@ static void fbcon_exit(void)
>>  	}
>>  #endif
>>
>> -	kfree((void *)softback_buf);
>> +	kvfree((void *)softback_buf);
>>  	softback_buf = 0UL;
>>
>>  	for_each_registered_fb(i) {
>
> Best regards,
> --
> Bartlomiej Zolnierkiewicz
> Samsung R&D Institute Poland
> Samsung Electronics

  reply	other threads:[~2018-12-21 10:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20181126100342epcas3p12a1e6505ff4b73375ac3fcf5d0355d3f@epcas3p1.samsung.com>
2018-11-26 10:02 ` Konstantin Khorenko
2018-12-20 16:21   ` Bartlomiej Zolnierkiewicz
2018-12-21 10:58     ` Konstantin Khorenko [this message]
2019-02-08 17:02       ` Bartlomiej Zolnierkiewicz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4eba60c6-4eb8-5a82-f394-307f835f41e1@virtuozzo.com \
    --to=khorenko@virtuozzo.com \
    --cc=b.zolnierkie@samsung.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®