From mboxrd@z Thu Jan 1 00:00:00 1970 From: Petr Mladek Date: Tue, 15 Jan 2019 15:09:38 +0000 Subject: Re: [PATCH v4 1/2] fbcon: Silence fbcon logo on 'quiet' boots Message-Id: <20190115150938.bycn3j3rleifpo2c@pathway.suse.cz> List-Id: References: <20181030154419.2889-1-prarit@redhat.com> <20190110190325.15241-1-prarit@redhat.com> <20190110190325.15241-2-prarit@redhat.com> <20190111060432.GB5766@jagdpanzerIV> In-Reply-To: <20190111060432.GB5766@jagdpanzerIV> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Sergey Senozhatsky Cc: Prarit Bhargava , Yisheng Xie , linux-fbdev@vger.kernel.org, Sergey Senozhatsky , Kees Cook , Bartlomiej Zolnierkiewicz , Daniel Vetter , Steven Rostedt , Marko Myllynen , Hans de Goede , dri-devel@lists.freedesktop.org, Thierry Reding On Fri 2019-01-11 15:04:32, Sergey Senozhatsky wrote: > On (01/10/19 14:03), Prarit Bhargava wrote: > > +++ b/drivers/video/fbdev/core/fbcon.c > > @@ -649,11 +649,14 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info, > > kfree(save); > > } > > > > + if (logo_shown = FBCON_LOGO_DONTSHOW) > > + return; > > + if (console_loglevel <= CONSOLE_LOGLEVEL_QUIET) > + return; > > Would this two-liner do the trick? But then the other functions, like fbcon_scroll() or fbcon_switch(), would think that the logo was shown because logo_shown !FBCON_LOGO_DONTSHOW. It might be possible to do logo_shown = FBCON_LOGO_DONTSHOW. But I am not sure if it is safe, see below. > -ss > > > + > > if (logo_lines > vc->vc_bottom) { > > logo_shown = FBCON_LOGO_CANSHOW; > > printk(KERN_INFO > > "fbcon_init: disable boot-logo (boot-logo bigger than screen).\n"); > > - } else if (logo_shown != FBCON_LOGO_DONTSHOW) { > > + } else { > > logo_shown = FBCON_LOGO_DRAW; > > vc->vc_top = logo_lines; > > } > > @@ -1059,9 +1062,11 @@ static void fbcon_init(struct vc_data *vc, int init) > > > > cap = info->flags; > > > > - if (vc != svc || logo_shown = FBCON_LOGO_DONTSHOW || > > - (info->fix.type = FB_TYPE_TEXT)) > > + if (vc != svc || console_loglevel <= CONSOLE_LOGLEVEL_QUIET || > > + (info->fix.type = FB_TYPE_TEXT)) { > > logo = 0; > > + logo_shown = FBCON_LOGO_DONTSHOW; This has still the problem mentioned in the v3 feedback. It modifies the global variable logo_shown even when vc != svc. You still need check and explain why it is safe. It is not clear to me. Best Regards, Petr > > + } > > > > if (var_to_display(p, &info->var, info)) > > return; > > -- > > 2.17.2 > > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Petr Mladek Subject: Re: [PATCH v4 1/2] fbcon: Silence fbcon logo on 'quiet' boots Date: Tue, 15 Jan 2019 16:09:38 +0100 Message-ID: <20190115150938.bycn3j3rleifpo2c@pathway.suse.cz> References: <20181030154419.2889-1-prarit@redhat.com> <20190110190325.15241-1-prarit@redhat.com> <20190110190325.15241-2-prarit@redhat.com> <20190111060432.GB5766@jagdpanzerIV> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4268D89B45 for ; Tue, 15 Jan 2019 15:09:42 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190111060432.GB5766@jagdpanzerIV> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Sergey Senozhatsky Cc: Prarit Bhargava , Yisheng Xie , linux-fbdev@vger.kernel.org, Sergey Senozhatsky , Kees Cook , Bartlomiej Zolnierkiewicz , Daniel Vetter , Steven Rostedt , Marko Myllynen , Hans de Goede , dri-devel@lists.freedesktop.org, Thierry Reding List-Id: dri-devel@lists.freedesktop.org T24gRnJpIDIwMTktMDEtMTEgMTU6MDQ6MzIsIFNlcmdleSBTZW5vemhhdHNreSB3cm90ZToKPiBP biAoMDEvMTAvMTkgMTQ6MDMpLCBQcmFyaXQgQmhhcmdhdmEgd3JvdGU6Cj4gPiArKysgYi9kcml2 ZXJzL3ZpZGVvL2ZiZGV2L2NvcmUvZmJjb24uYwo+ID4gQEAgLTY0OSwxMSArNjQ5LDE0IEBAIHN0 YXRpYyB2b2lkIGZiY29uX3ByZXBhcmVfbG9nbyhzdHJ1Y3QgdmNfZGF0YSAqdmMsIHN0cnVjdCBm Yl9pbmZvICppbmZvLAo+ID4gIAkJa2ZyZWUoc2F2ZSk7Cj4gPiAgCX0KPiA+ICAKPiA+ICsJaWYg KGxvZ29fc2hvd24gPT0gRkJDT05fTE9HT19ET05UU0hPVykKPiA+ICsJCXJldHVybjsKPiAKPiAr CWlmIChjb25zb2xlX2xvZ2xldmVsIDw9IENPTlNPTEVfTE9HTEVWRUxfUVVJRVQpCj4gKwkJcmV0 dXJuOwo+IAo+IFdvdWxkIHRoaXMgdHdvLWxpbmVyIGRvIHRoZSB0cmljaz8KCkJ1dCB0aGVuIHRo ZSBvdGhlciBmdW5jdGlvbnMsIGxpa2UgZmJjb25fc2Nyb2xsKCkgb3IgZmJjb25fc3dpdGNoKCks CndvdWxkIHRoaW5rIHRoYXQgdGhlIGxvZ28gd2FzIHNob3duIGJlY2F1c2UgbG9nb19zaG93biAh PQpGQkNPTl9MT0dPX0RPTlRTSE9XLgoKSXQgbWlnaHQgYmUgcG9zc2libGUgdG8gZG8gbG9nb19z aG93biA9IEZCQ09OX0xPR09fRE9OVFNIT1cuCkJ1dCBJIGFtIG5vdCBzdXJlIGlmIGl0IGlzIHNh ZmUsIHNlZSBiZWxvdy4KCj4gCS1zcwo+IAo+ID4gKwo+ID4gIAlpZiAobG9nb19saW5lcyA+IHZj LT52Y19ib3R0b20pIHsKPiA+ICAJCWxvZ29fc2hvd24gPSBGQkNPTl9MT0dPX0NBTlNIT1c7Cj4g PiAgCQlwcmludGsoS0VSTl9JTkZPCj4gPiAgCQkgICAgICAgImZiY29uX2luaXQ6IGRpc2FibGUg Ym9vdC1sb2dvIChib290LWxvZ28gYmlnZ2VyIHRoYW4gc2NyZWVuKS5cbiIpOwo+ID4gLQl9IGVs c2UgaWYgKGxvZ29fc2hvd24gIT0gRkJDT05fTE9HT19ET05UU0hPVykgewo+ID4gKwl9IGVsc2Ug ewo+ID4gIAkJbG9nb19zaG93biA9IEZCQ09OX0xPR09fRFJBVzsKPiA+ICAJCXZjLT52Y190b3Ag PSBsb2dvX2xpbmVzOwo+ID4gIAl9Cj4gPiBAQCAtMTA1OSw5ICsxMDYyLDExIEBAIHN0YXRpYyB2 b2lkIGZiY29uX2luaXQoc3RydWN0IHZjX2RhdGEgKnZjLCBpbnQgaW5pdCkKPiA+ICAKPiA+ICAJ Y2FwID0gaW5mby0+ZmxhZ3M7Cj4gPiAgCj4gPiAtCWlmICh2YyAhPSBzdmMgfHwgbG9nb19zaG93 biA9PSBGQkNPTl9MT0dPX0RPTlRTSE9XIHx8Cj4gPiAtCSAgICAoaW5mby0+Zml4LnR5cGUgPT0g RkJfVFlQRV9URVhUKSkKPiA+ICsJaWYgKHZjICE9IHN2YyB8fCBjb25zb2xlX2xvZ2xldmVsIDw9 IENPTlNPTEVfTE9HTEVWRUxfUVVJRVQgfHwKPiA+ICsJICAgIChpbmZvLT5maXgudHlwZSA9PSBG Ql9UWVBFX1RFWFQpKSB7Cj4gPiAgCQlsb2dvID0gMDsKPiA+ICsJCWxvZ29fc2hvd24gPSBGQkNP Tl9MT0dPX0RPTlRTSE9XOwoKVGhpcyBoYXMgc3RpbGwgdGhlIHByb2JsZW0gbWVudGlvbmVkIGlu IHRoZSB2MyBmZWVkYmFjay4gSXQgbW9kaWZpZXMKdGhlIGdsb2JhbCB2YXJpYWJsZSBsb2dvX3No b3duIGV2ZW4gd2hlbiB2YyAhPSBzdmMuIFlvdSBzdGlsbCBuZWVkCmNoZWNrIGFuZCBleHBsYWlu IHdoeSBpdCBpcyBzYWZlLiBJdCBpcyBub3QgY2xlYXIgdG8gbWUuCgpCZXN0IFJlZ2FyZHMsClBl dHIKCj4gPiArCX0KPiA+ICAKPiA+ICAJaWYgKHZhcl90b19kaXNwbGF5KHAsICZpbmZvLT52YXIs IGluZm8pKQo+ID4gIAkJcmV0dXJuOwo+ID4gLS0gCj4gPiAyLjE3LjIKPiA+IApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK