Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

obmc-console.log will not update if don't open sol #20

Open
chen2150 opened this issue Nov 14, 2022 · 6 comments
Open

obmc-console.log will not update if don't open sol #20

chen2150 opened this issue Nov 14, 2022 · 6 comments

Comments

@chen2150
Copy link

When power cycle system, the obmc-console.log still keep the old logs until open the sol session.
I think obmc-console.log needs to be refreshed whether sol is opened or not.

@jk-ozlabs
Copy link
Member

The logs should continue regardless of whether a client is connected. Note that the log is a rolling buffer though, the old data will still be there, up to a specific size limit.

Could you provide a little detail on how you're observing this behaviour?

@chen2150
Copy link
Author

I have resolved this issue by changing the uart routing settings, it's strange that can reproduce this issue when using ttyS1 for obmc-console service, but when using ttyS2 for obmc-console service, no this issue. I suspect this issue maybe related with Aspeed uart routing driver.

@jk-ozlabs
Copy link
Member

I suspect you may be mixing up the local-tty with the host console. The former is intended to be a physical serial device (for example, as a RS232 connector on the server) - obmc-console-server will copy the serial output./input to that device from the host console.

The host console is typically the virtual UART device.

Can you share your configuration?

@chen2150
Copy link
Author

Here is my obmc-console.conf:
baud = 115200
local-tty = ttyS3
local-tty-baud = 115200
logsize = 2M

Issue can be reproduced with below settings:
[Unit]
Description=Phosphor Console Muxer listening on device /dev/%I
BindsTo=dev-%i.device
After=dev-%i.device

[Service]
ExecStartPre=/bin/sh -c 'echo -n "uart2" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart1'
ExecStartPre=/bin/sh -c 'echo -n "uart1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart2'
ExecStartPre=/bin/sh -c 'echo -n "io1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart4'
ExecStartPre=/bin/sh -c 'echo -n "uart4" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/io1'
ExecStart=/usr/bin/env obmc-console-server --config {sysconfdir}/obmc-console.conf ttyS1
ExecStopPost=/bin/sh -c 'echo -n "io1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart1'
ExecStopPost=/bin/sh -c 'echo -n "io2" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart2'
ExecStopPost=/bin/sh -c 'echo -n "io4" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart4'
ExecStopPost=/bin/sh -c 'echo -n "uart1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/io1'
SyslogIdentifier=obmc-console-server
Restart=always

[Install]
WantedBy={SYSTEMD_DEFAULT_TARGET}

But cannot reproduce with below settings:
[Unit]
Description=Phosphor Console Muxer listening on device /dev/%I
BindsTo=dev-%i.device
After=dev-%i.device

[Service]
ExecStartPre=/bin/sh -c 'echo -n "uart3" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart1'
ExecStartPre=/bin/sh -c 'echo -n "uart1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart3'
ExecStartPre=/bin/sh -c 'echo -n "io1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart4'
ExecStartPre=/bin/sh -c 'echo -n "uart4" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/io1'
ExecStart=/usr/bin/env obmc-console-server --config {sysconfdir}/obmc-console.conf ttyS2
ExecStopPost=/bin/sh -c 'echo -n "io1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart1'
ExecStopPost=/bin/sh -c 'echo -n "io3" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart3'
ExecStopPost=/bin/sh -c 'echo -n "io4" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/uart4'
ExecStopPost=/bin/sh -c 'echo -n "uart1" > /sys/bus/platform/drivers/aspeed-uart-routing/1e789098.uart-routing/io1'

SyslogIdentifier=obmc-console-server
Restart=always

[Install]
WantedBy={SYSTEMD_DEFAULT_TARGET}

@chen2150
Copy link
Author

BTW, BIOS and host OS use ttyS0

@jk-ozlabs
Copy link
Member

ok, that looks correct with the configuration there, but strange that the equivalent routing doesn't get the same data...

any reason for not using the VUART though?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants