From: Daniel Henrique Barboza <danielhb413@gmail.com>
To: Scott Cheloha <cheloha@linux.ibm.com>, linux-watchdog@vger.kernel.org
Cc: nathanl@linux.ibm.com, wvoigt@us.ibm.com, aik@ozlabs.ru,
vaishnavi@linux.ibm.com, npiggin@gmail.com, tzungbi@kernel.org,
brking@linux.ibm.com, linuxppc-dev@lists.ozlabs.org,
linux@roeck-us.net
Subject: Re: [PATCH v2 0/4] pseries-wdt: initial support for H_WATCHDOG-based watchdog timers
Date: Wed, 15 Jun 2022 22:43:55 -0300 [thread overview]
Message-ID: <74ac21a1-d56f-50fb-71c2-e800e943f340@gmail.com> (raw)
In-Reply-To: <20220602175353.68942-1-cheloha@linux.ibm.com>
Hi,
I tried this series out with mainline QEMU built with Alexey's patch [1]
and I wasn't able to get it to work. I'm using a simple QEMU command line
booting a fedora36 guest in a Power9 boston host:
sudo ./qemu-system-ppc64 \
-M pseries,cap-cfpc=broken,cap-sbbc=broken,cap-ibs=broken,cap-ccf-assist=off,ic-mode=dual \
-m 4G -accel kvm -cpu POWER9 -smp 1,maxcpus=1,threads=1,cores=1,sockets=1 \
-device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x2 \
-drive file=/home/danielhb/fedora36.qcow2,if=none,id=drive-scsi0-0-0-0,format=qcow2,cache=none \
-device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=2 \
-device qemu-xhci,id=usb,bus=pci.0,addr=0x4 -nographic -display none
Guest is running v5.19-rc2 with this series applied. Kernel config consists of
'pseries_le_defconfig' plus the following 'watchdog' related changes:
[root@fedora ~]# cat linux/.config | grep PSERIES_WDT
CONFIG_PSERIES_WDT=y
[root@fedora ~]# cat linux/.config | grep -i watchdog
CONFIG_PPC_WATCHDOG=y
CONFIG_HAVE_NMI_WATCHDOG=y
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
CONFIG_WATCHDOG_NOWAYOUT=y
CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
CONFIG_WATCHDOG_OPEN_TIMEOUT=0
# CONFIG_WATCHDOG_SYSFS is not set
# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
# Watchdog Pretimeout Governors
# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
# Watchdog Device Drivers
# CONFIG_SOFT_WATCHDOG is not set
# CONFIG_XILINX_WATCHDOG is not set
# CONFIG_ZIIRAVE_WATCHDOG is not set
# CONFIG_CADENCE_WATCHDOG is not set
# CONFIG_DW_WATCHDOG is not set
# CONFIG_MAX63XX_WATCHDOG is not set
CONFIG_WATCHDOG_RTAS=y
# PCI-based Watchdog Cards
# CONFIG_PCIPCWATCHDOG is not set
# USB-based Watchdog Cards
# CONFIG_USBPCWATCHDOG is not set
# CONFIG_WQ_WATCHDOG is not set
[root@fedora ~]#
Kernel command line:
[root@fedora ~]# cat /proc/cmdline
BOOT_IMAGE=(ieee1275/disk,msdos2)/vmlinuz-5.19.0-rc2-00054-g12ede8ffb103 \
root=/dev/mapper/fedora_fedora-root ro rd.lvm.lv=fedora_fedora/root \
pseries-wdt.timeout=60 pseries-wdt.nowayout=1 pseries-wdt.action=2
With all that, executing
echo V > /dev/watchdog0
Does nothing. dmesg is clean and the guest doesn't reboot after the 60 sec
timeout. I also tried with PSERIES_WDT being compiled as a module instead
of built-in. Same results.
What am I missing?
[1] https://patchwork.ozlabs.org/project/qemu-ppc/patch/20220608030153.1862335-1-aik@ozlabs.ru/
Thanks,
Daniel
On 6/2/22 14:53, Scott Cheloha wrote:
> PAPR v2.12 defines a new hypercall, H_WATCHDOG. This patch series
> adds support for this hypercall to powerpc/pseries kernels and
> introduces a new watchdog driver, "pseries-wdt", for the virtual
> timers exposed by the hypercall.
>
> This series is preceded by the following:
>
> RFC v1: https://lore.kernel.org/linux-watchdog/20220413165104.179144-1-cheloha@linux.ibm.com/
> RFC v2: https://lore.kernel.org/linux-watchdog/20220509174357.5448-1-cheloha@linux.ibm.com/
> PATCH v1: https://lore.kernel.org/linux-watchdog/20220520183552.33426-1-cheloha@linux.ibm.com/
>
> Changes of note from PATCH v1:
>
> - Trim down the large comment documenting the H_WATCHDOG hypercall.
> The comment is likely to rot, so remove anything we aren't using
> and anything overly obvious.
>
> - Remove any preprocessor definitions not actually used in the module
> right now. If we want to use other features offered by the hypercall
> we can add them in later. They're just clutter until then.
>
> - Simplify the "action" module parameter. The value is now an index
> into an array of possible timeoutAction values. This design removes
> the need for the custom get/set methods used in PATCH v1.
>
> Now we merely need to check that the "action" value is a valid
> index during pseries_wdt_probe(). Easy.
>
> - Make the timeoutAction a member of pseries_wdt, "action". This
> eliminates the use of a global variable during pseries_wdt_start().
>
> - Use watchdog_init_timeout() idiomatically. Check its return value
> and error out of pseries_wdt_probe() if it fails.
>
>
next prev parent reply other threads:[~2022-06-16 1:44 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-02 17:53 [PATCH v2 0/4] pseries-wdt: initial support for H_WATCHDOG-based watchdog timers Scott Cheloha
2022-06-02 17:53 ` [PATCH v2 1/4] powerpc/pseries: hvcall.h: add H_WATCHDOG opcode, H_NOOP return code Scott Cheloha
2022-06-21 14:44 ` Nathan Lynch
2022-06-21 17:31 ` Segher Boessenkool
2022-06-21 22:22 ` Nathan Lynch
2022-06-02 17:53 ` [PATCH v2 2/4] powerpc/pseries: add FW_FEATURE_WATCHDOG flag Scott Cheloha
2022-06-21 15:03 ` Nathan Lynch
2022-06-02 17:53 ` [PATCH v2 3/4] powerpc/pseries: register pseries-wdt device with platform bus Scott Cheloha
2022-06-21 15:30 ` Nathan Lynch
2022-06-24 13:27 ` Michael Ellerman
2022-07-07 15:53 ` Scott Cheloha
2022-06-02 17:53 ` [PATCH v2 4/4] watchdog/pseries-wdt: initial support for H_WATCHDOG-based watchdog timers Scott Cheloha
2022-06-20 6:09 ` Alexey Kardashevskiy
2022-06-21 15:45 ` Nathan Lynch
2022-06-24 13:27 ` Michael Ellerman
2022-06-24 15:31 ` Segher Boessenkool
2022-07-08 5:51 ` Scott Cheloha
2022-06-24 13:51 ` Michael Ellerman
2022-07-07 15:53 ` Scott Cheloha
2022-06-16 1:43 ` Daniel Henrique Barboza [this message]
2022-06-16 16:44 ` [PATCH v2 0/4] pseries-wdt: " Tyrel Datwyler
2022-06-16 18:16 ` Daniel Henrique Barboza
2022-06-16 18:33 ` Daniel Henrique Barboza
2022-06-17 12:54 ` Daniel Henrique Barboza
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=74ac21a1-d56f-50fb-71c2-e800e943f340@gmail.com \
--to=danielhb413@gmail.com \
--cc=aik@ozlabs.ru \
--cc=brking@linux.ibm.com \
--cc=cheloha@linux.ibm.com \
--cc=linux-watchdog@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=nathanl@linux.ibm.com \
--cc=npiggin@gmail.com \
--cc=tzungbi@kernel.org \
--cc=vaishnavi@linux.ibm.com \
--cc=wvoigt@us.ibm.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
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;
as well as URLs for NNTP newsgroup(s).