lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87mv8b7auk.fsf@concordia.ellerman.id.au>
Date:   Tue, 11 Jul 2017 16:21:07 +1000
From:   Michael Ellerman <mpe@...erman.id.au>
To:     Palmer Dabbelt <palmer@...belt.com>, yamada.masahiro@...ionext.com,
        mmarek@...e.com, will.deacon@....com, peterz@...radead.org,
        boqun.feng@...il.com, mingo@...hat.com, daniel.lezcano@...aro.org,
        tglx@...utronix.de, jason@...edaemon.net, marc.zyngier@....com,
        gregkh@...uxfoundation.org, jslaby@...e.com, davem@...emloft.net,
        mchehab@...nel.org, sfr@...b.auug.org.au, fweisbec@...il.com,
        viro@...iv.linux.org.uk, mcgrof@...nel.org, dledford@...hat.com,
        bart.vanassche@...disk.com, sstabellini@...nel.org,
        daniel.vetter@...ll.ch, msalter@...hat.com,
        nicolas.dichtel@...nd.com, james.hogan@...tec.com,
        paul.gortmaker@...driver.com, linux@...ck-us.net,
        heiko.carstens@...ibm.com, schwidefsky@...ibm.com,
        linux-kernel@...r.kernel.org, patches@...ups.riscv.org,
        akpm@...ux-foundation.org
Cc:     albert@...ive.com, Palmer Dabbelt <palmer@...belt.com>
Subject: Re: [PATCH 08/17] tty: New RISC-V SBI console driver

Palmer Dabbelt <palmer@...belt.com> writes:
>
...
> +#ifdef CONFIG_EARLY_PRINTK
> +static void sbi_console_write(struct console *co, const char *buf,
> +			      unsigned int n)
> +{
> +	int i;
> +
> +	for (i = 0; i < n; ++i) {
> +		if (buf[i] == '\n')
> +			sbi_console_putchar('\r');
> +		sbi_console_putchar(buf[i]);
> +	}
> +}
> +
> +static struct console early_console_dev __initdata = {
> +	.name	= "early",
> +	.write	= sbi_console_write,
> +	.flags	= CON_PRINTBUFFER | CON_BOOT,

AFAICS you could add CON_ANYTIME here, which would mean this console
would print output before the CPU is online.

I think it doesn't currently matter because you call parse_early_param()
from setup_arch(), at which point the boot CPU has been marked online.

But if this console can actually work earlier then you might be better
off just registering it unconditionally very early.

cheers

> +static int __init setup_early_printk(char *str)
> +{
> +	if (early_console == NULL) {
> +		early_console = &early_console_dev;
> +		register_console(early_console);
> +	}
> +	return 0;
> +}
> +early_param("earlyprintk", setup_early_printk);
> +#endif
> -- 
> 2.13.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ