LKML Archive on lore.kernel.org
 help / Atom feed
From: tip-bot for YiFei Zhu <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: natechancellor@gmail.com, mingo@kernel.org, hpa@zytor.com,
	hdegoede@redhat.com, marc.zyngier@arm.com, dave.hansen@intel.com,
	bhsharma@redhat.com, zhuyifei1999@gmail.com,
	linux-kernel@vger.kernel.org, sai.praneeth.prakhya@intel.com,
	matt@codeblueprint.co.uk, peterz@infradead.org,
	jonathanh@nvidia.com, torvalds@linux-foundation.org,
	eric.snowberg@oracle.com, bp@alien8.de, luto@kernel.org,
	julien.thierry@arm.com, ard.biesheuvel@linaro.org,
	sedat.dilek@gmail.com, joe@perches.com,
	arend.vanspriel@broadcom.com, tglx@linutronix.de
Subject: [tip:efi/core] x86/earlyprintk/efi: Fix infinite loop on some screen widths
Date: Fri, 30 Nov 2018 01:55:42 -0800
Message-ID: <tip-79c2206d369b87b19ac29cb47601059b6bf5c291@git.kernel.org> (raw)
In-Reply-To: <20181129171230.18699-12-ard.biesheuvel@linaro.org>

Commit-ID:  79c2206d369b87b19ac29cb47601059b6bf5c291
Gitweb:     https://git.kernel.org/tip/79c2206d369b87b19ac29cb47601059b6bf5c291
Author:     YiFei Zhu <zhuyifei1999@gmail.com>
AuthorDate: Thu, 29 Nov 2018 18:12:30 +0100
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Fri, 30 Nov 2018 09:05:13 +0100

x86/earlyprintk/efi: Fix infinite loop on some screen widths

An affected screen resolution is 1366 x 768, which width is not
divisible by 8, the default font width. On such screens, when longer
lines are earlyprintk'ed, overflow-to-next-line can never trigger,
due to the left-most x-coordinate of the next character always less
than the screen width. Earlyprintk will infinite loop in trying to
print the rest of the string but unable to, due to the line being
full.

This patch makes the trigger consider the right-most x-coordinate,
instead of left-most, as the value to compare against the screen
width threshold.

Signed-off-by: YiFei Zhu <zhuyifei1999@gmail.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Arend van Spriel <arend.vanspriel@broadcom.com>
Cc: Bhupesh Sharma <bhsharma@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Eric Snowberg <eric.snowberg@oracle.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Joe Perches <joe@perches.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Julien Thierry <julien.thierry@arm.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Nathan Chancellor <natechancellor@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>
Cc: Sedat Dilek <sedat.dilek@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-efi@vger.kernel.org
Link: http://lkml.kernel.org/r/20181129171230.18699-12-ard.biesheuvel@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 arch/x86/platform/efi/early_printk.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/platform/efi/early_printk.c b/arch/x86/platform/efi/early_printk.c
index 7476b3b097e1..7138bc7a265c 100644
--- a/arch/x86/platform/efi/early_printk.c
+++ b/arch/x86/platform/efi/early_printk.c
@@ -183,7 +183,7 @@ early_efi_write(struct console *con, const char *str, unsigned int num)
 			num--;
 		}
 
-		if (efi_x >= si->lfb_width) {
+		if (efi_x + font->width > si->lfb_width) {
 			efi_x = 0;
 			efi_y += font->height;
 		}

  parent reply index

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-29 17:12 [GIT PULL 00/11] EFI updates Ard Biesheuvel
2018-11-29 17:12 ` [PATCH 01/11] x86/efi: Allocate e820 buffer before calling efi_exit_boot_service Ard Biesheuvel
2018-11-30  7:29   ` Ingo Molnar
2018-11-30  8:26     ` Ard Biesheuvel
2018-11-30  8:36       ` Ingo Molnar
2018-11-30  9:55   ` [tip:efi/core] " tip-bot for Eric Snowberg
2018-11-29 17:12 ` [PATCH 02/11] efi/fdt: Indentation fix Ard Biesheuvel
2018-11-30  7:56   ` [PATCH] efi/fdt: More cleanups Ingo Molnar
2018-11-30  8:31     ` Ard Biesheuvel
2018-11-30  9:48       ` Ingo Molnar
2018-11-30  9:56   ` [tip:efi/core] efi/fdt: Indentation fix tip-bot for Julien Thierry
2018-11-29 17:12 ` [PATCH 03/11] efi/fdt: Simplify get_fdt flow Ard Biesheuvel
2018-11-30  9:57   ` [tip:efi/core] efi/fdt: Simplify the get_fdt() flow tip-bot for Julien Thierry
2018-11-29 17:12 ` [PATCH 04/11] x86/mm/pageattr: Introduce helper function to unmap EFI boot services Ard Biesheuvel
2018-11-30  9:58   ` [tip:efi/core] " tip-bot for Sai Praneeth Prakhya
2018-11-29 17:12 ` [PATCH 05/11] x86/efi: Unmap EFI boot services code/data regions from efi_pgd Ard Biesheuvel
2018-11-30  9:58   ` [tip:efi/core] " tip-bot for Sai Praneeth Prakhya
2018-12-17 18:06     ` Prakhya, Sai Praneeth
2018-12-17 18:10       ` Ard Biesheuvel
2018-12-17 18:42         ` Prakhya, Sai Praneeth
2018-12-17 19:35           ` Ard Biesheuvel
2018-12-17 19:48             ` Prakhya, Sai Praneeth
2018-12-21 17:02               ` Ard Biesheuvel
2018-12-21 17:13                 ` Borislav Petkov
2018-12-21 17:26                   ` Ard Biesheuvel
2018-12-21 19:29                     ` Borislav Petkov
2018-12-22 11:07                       ` Ard Biesheuvel
2019-01-07 15:57                         ` Matt Fleming
2018-12-21 17:52                 ` Prakhya, Sai Praneeth
2018-11-29 17:12 ` [PATCH 06/11] x86/efi: Move efi_<reserve/free>_boot_services() to arch/x86 Ard Biesheuvel
2018-11-30  9:59   ` [tip:efi/core] " tip-bot for Sai Praneeth Prakhya
2018-11-29 17:12 ` [PATCH 07/11] efi/libstub: Disable some warnings for x86{,_64} Ard Biesheuvel
2018-11-30  9:59   ` [tip:efi/core] " tip-bot for Nathan Chancellor
2018-11-29 17:12 ` [PATCH 08/11] firmware: efi: add NULL pointer checks in efivars api functions Ard Biesheuvel
2018-11-30  8:11   ` Ingo Molnar
2018-11-30  8:37     ` Ard Biesheuvel
2018-11-30  9:56   ` [tip:efi/core] firmware/efi: Add NULL pointer checks in efivars API functions tip-bot for Arend van Spriel
2018-11-29 17:12 ` [PATCH 09/11] efi: permit multiple entries in persistent memreserve data structure Ard Biesheuvel
2018-11-30 10:00   ` [tip:efi/core] efi: Permit " tip-bot for Ard Biesheuvel
2018-11-29 17:12 ` [PATCH 10/11] efi: reduce the amount of memblock reservations for persistent allocations Ard Biesheuvel
2018-11-30  8:38   ` Ingo Molnar
2018-11-30  8:39     ` Ard Biesheuvel
2018-11-30 10:00   ` [tip:efi/core] efi: Reduce " tip-bot for Ard Biesheuvel
2018-11-29 17:12 ` [PATCH 11/11] efi/x86: earlyprintk - Fix infinite loop on some screen widths Ard Biesheuvel
2018-11-30  8:05   ` Ingo Molnar
2018-11-30  8:32     ` Ard Biesheuvel
2018-11-30  9:55   ` tip-bot for YiFei Zhu [this message]
2018-11-29 18:27 ` [GIT PULL 00/11] EFI updates Prakhya, Sai Praneeth
2018-11-30 12:01   ` Ard Biesheuvel
2018-11-30 18:01     ` Prakhya, Sai Praneeth

Reply instructions:

You may reply publically 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=tip-79c2206d369b87b19ac29cb47601059b6bf5c291@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=ard.biesheuvel@linaro.org \
    --cc=arend.vanspriel@broadcom.com \
    --cc=bhsharma@redhat.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@intel.com \
    --cc=eric.snowberg@oracle.com \
    --cc=hdegoede@redhat.com \
    --cc=hpa@zytor.com \
    --cc=joe@perches.com \
    --cc=jonathanh@nvidia.com \
    --cc=julien.thierry@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=luto@kernel.org \
    --cc=marc.zyngier@arm.com \
    --cc=matt@codeblueprint.co.uk \
    --cc=mingo@kernel.org \
    --cc=natechancellor@gmail.com \
    --cc=peterz@infradead.org \
    --cc=sai.praneeth.prakhya@intel.com \
    --cc=sedat.dilek@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=zhuyifei1999@gmail.com \
    /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

LKML Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git
	git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git
	git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git
	git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git
	git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git
	git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git
	git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \
		linux-kernel@vger.kernel.org linux-kernel@archiver.kernel.org
	public-inbox-index lkml


Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel


AGPL code for this site: git clone https://public-inbox.org/ public-inbox