Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp2389979ioo; Sat, 28 May 2022 12:07:59 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxqwWyVjWsiLDi+QAOmcN9bFSB9RyCLX+/5wBEZAIV3ewvHV65VUrZVz9IxhW/U2+WfNZMJ X-Received: by 2002:a63:4f1e:0:b0:3f5:cf9b:7b94 with SMTP id d30-20020a634f1e000000b003f5cf9b7b94mr41424800pgb.457.1653764878977; Sat, 28 May 2022 12:07:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653764878; cv=none; d=google.com; s=arc-20160816; b=JpuayWZvqWDTrwDgu4usMJ3NeHJycTALjjQxmEYpY8XSZLtfv7oUAwy7Orlg61zW+5 68eMThZ5eCfBfYqcMYL7A3buotBhv07u/3HcRdz1DCqEZaVHx1jH6d7kZ+vc/u5UyWAD kB7vPpXBuqvuNhewZMFBQk32d4TCckOwwT5QFFgwD74fJYcX2YujOx0d2ZfijtXientW LCW/+bgH2AVU7AJGlqzuSrbOSvRQnDPpkmOPdj7YbkZ5C5fYpUv67RYCfP3kxG1Il1g5 geoSUW4ZEhWIthvMOM9rwKKBYJY/mmoQPt1Zb65MNBHatimVzAt3UgkLlFUfrKR3qtKO qSZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=iTR0/aN6WIYBcQyUEiEBuZV6pe3Rw5uuGZW0ai5F2Cc=; b=znFh4pOor9Tp1G/ulBiUr1AviR7SBJ9f4LoYuG5PyChjKR4gJICIZEh6w7yntM1HA5 ufmb8ZE8pdgOnc4lWJKifKmZJ3USOQYHq5WqnxOn30ONhPzSSLYgLKsiPh3Jyf0oTgSX ZB/Oi1HdzXxKX46a7kQJM90uriEwJyC8z9aGNlBUArZtnXIG6l9njGlNxtWjD8bHzmuW 66d8neNEBKW7WozNJw3i1fv40xmm1lcAnspcamSlQzbMbWK8UHnlBBsF0OPDRQAUiS6J NAn8Hpw2DKdpPC4k5qr69S8vo0W8WqbKdyWo6FvIM5D23yBcfamP/9YRsaqPG+X6fz+f Z7xg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id e23-20020a62aa17000000b0050cf90ed6f1si8529706pff.272.2022.05.28.12.07.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 May 2022 12:07:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id AAFAB2BC9; Sat, 28 May 2022 11:46:37 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230520AbiE1IKE (ORCPT + 99 others); Sat, 28 May 2022 04:10:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37690 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229998AbiE1IKA (ORCPT ); Sat, 28 May 2022 04:10:00 -0400 Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4904962C6 for ; Sat, 28 May 2022 01:09:58 -0700 (PDT) Received: (Authenticated sender: alex@ghiti.fr) by mail.gandi.net (Postfix) with ESMTPSA id 05DFE200004; Sat, 28 May 2022 08:09:52 +0000 (UTC) Message-ID: Date: Sat, 28 May 2022 10:09:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 Subject: Re: [syzbot] riscv/fixes test error: lost connection to test machine Content-Language: en-US To: Dmitry Vyukov , Alexandre Ghiti Cc: syzkaller-bugs , syzbot , Albert Ou , LKML , linux-riscv , Palmer Dabbelt , Paul Walmsley References: <000000000000d0437b05dffdd1de@google.com> <36f4745f-0e47-4f49-8f4e-ff7544f163d8n@googlegroups.com> From: Alexandre Ghiti In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A, RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 5/27/22 19:12, Dmitry Vyukov wrote: > On Fri, 27 May 2022 at 19:04, Dmitry Vyukov wrote: >> On Fri, 27 May 2022 at 16:01, Alexandre Ghiti >> wrote: >>> On Friday, May 27, 2022 at 3:55:24 PM UTC+2 Dmitry Vyukov wrote: >>>> On Fri, 27 May 2022 at 15:50, Alexandre Ghiti >>>> wrote: >>>>> On Friday, May 27, 2022 at 3:02:01 PM UTC+2 Dmitry Vyukov wrote: >>>>>> On Fri, 27 May 2022 at 14:55, syzbot >>>>>> wrote: >>>>>>> Hello, >>>>>>> >>>>>>> syzbot found the following issue on: >>>>>>> >>>>>>> HEAD commit: c932edeaf6d6 riscv: dts: microchip: fix gpio1 reg property.. >>>>>>> git tree: git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git fixes >>>>>>> console output: https://syzkaller.appspot.com/x/log.txt?x=1418add5f00000 >>>>>>> kernel config: https://syzkaller.appspot.com/x/.config?x=aa6b5702bdf14a17 >>>>>>> dashboard link: https://syzkaller.appspot.com/bug?extid=2c5da6a0a16a0c4f34aa >>>>>>> compiler: riscv64-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2 >>>>>>> userspace arch: riscv64 >>>>>>> >>>>>>> IMPORTANT: if you fix the issue, please add the following tag to the commit: >>>>>>> Reported-by: syzbot+2c5da6...@syzkaller.appspotmail.com >>>>>> The CONFIG_KASAN_VMALLOC allows riscv kernel to boot, but now Go >>>>>> processes started crashing with: >>>>>> >>>>>> 1970/01/01 00:06:55 fuzzer started >>>>>> runtime: lfstack.push invalid packing: node=0xffffff5908a940 cnt=0x1 >>>>>> packed=0xffff5908a9400001 -> node=0xffff5908a940 >>>>>> fatal error: lfstack.push >>>>>> runtime stack: >>>>>> runtime.throw({0x30884c, 0xc}) >>>>>> /usr/local/go/src/runtime/panic.go:1198 +0x60 >>>>>> runtime.(*lfstack).push(0xdb3850, 0xffffff5908a940) >>>>>> /usr/local/go/src/runtime/lfstack.go:30 +0x1a8 >>>>>> >>>>>> Go runtime tries to shove some data into the upper 16 bits of pointers >>>>>> assuming they are unused. >>>>>> However, the original pointer node=0xffffff5908a940 suggest riscv now >>>>>> has 56-bit users-space address space? >>>>> >>>>> Yes, sv57 was merged recently. >>>>> >>>>>> Documentation/riscv/vm-layout.rst claims 48-bit pointers: >>>>>> " >>>>>> The RISC-V privileged architecture document states that the 64bit addresses >>>>>> "must have bits 63–48 all equal to bit 47, or else a page-fault exception will >>>>>> occur.": >>>>> >>>>> Thanks for pointing that, I extracted that from the specification before sv57 was specified, I'll fix that. >>>>> >>>>> The current kernel code will use sv57 as it is supported and advertised by qemu, and to my knowledge, you can't downgrade to sv48 unless by re-compiling qemu using the following: >>>>> >>>>> diff --git a/target/riscv/csr.c b/target/riscv/csr.c >>>>> index 6dbe9b541f..a64b50ed75 100644 >>>>> --- a/target/riscv/csr.c >>>>> +++ b/target/riscv/csr.c >>>>> @@ -637,7 +637,7 @@ static const char valid_vm_1_10_64[16] = { >>>>> [VM_1_10_MBARE] = 1, >>>>> [VM_1_10_SV39] = 1, >>>>> [VM_1_10_SV48] = 1, >>>>> - [VM_1_10_SV57] = 1 >>>>> + [VM_1_10_SV57] = 0 >>>>> }; >>>>> >>>>> /* Machine Information Registers */ >>>>> >>>>>> ... >>>>>> 0000000000000000 | 0 | 0000003fffffffff | 256 GB | >>>>>> user-space virtual memory, different per mm >>>>>> " >>>> There is no kernel config to force SV48/39, right? >>> >>> No, we rely on what the hardware advertises, if it supports sv57, we'll go for sv57, if not, we'll try sv48...etc. I had some patches to force the downgrade by using the device tree but they never got merged though. >> +original CC list >> >> FTR sent Go runtime change to support SV57: >> https://go-review.googlesource.com/c/go/+/409055 > > > Is CONFIG_CMDLINE broken on riscv? > I am running with: > > CONFIG_CMDLINE="earlyprintk=serial net.ifnames=0 > sysctl.kernel.hung_task_all_cpu_backtrace=1 ima_policy=tcb > nf-conntrack-ftp.ports=20000 nf-conntrack-tftp.ports=20000 > nf-conntrack-sip.ports=20000 nf-conntrack-irc.ports=20000 > nf-conntrack-sane.ports=20000 binder.debug_mask=0 > rcupdate.rcu_expedited=1 no_hash_pointers page_owner=on > sysctl.vm.nr_hugepages=4 sysctl.vm.nr_overcommit_hugepages=4 > secretmem.enable=1 sysctl.max_rcu_stall_to_panic=1 > msr.allow_writes=off dummy_hcd.num=2 smp.csd_lock_timeout=300000 > watchdog_thresh=165 workqueue.watchdog_thresh=420 > sysctl.net.core.netdev_unregister_timeout_secs=420 panic_on_warn=1" This command line is 608-character long, but we are still stuck with the default COMMAND_LINE_SIZE to 512, I imagine that it is the problem. I had proposed a patch last year to bump that to 1024, but it never got merged https://lore.kernel.org/lkml/CAEn-LTqTXCEC=bXTvGyo8SNL0JMWRKtiSwQB7R=Pc4uhxZUruA@mail.gmail.com/T/#m4b45019dc0f5573f2a50c1f6007c5109fa35efff > > But getting BUGs with the default timeout: > watchdog: BUG: soft lockup - CPU#0 stuck for 23s! [kworker/0:4:2039] > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv