linux-riscv.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
@ 2018-12-20  1:45 Guenter Roeck
  2018-12-20  5:25 ` Guenter Roeck
  2018-12-20 21:33 ` Palmer Dabbelt
  0 siblings, 2 replies; 10+ messages in thread
From: Guenter Roeck @ 2018-12-20  1:45 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: linux-riscv, Albert Ou

On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
> I don't remember who suggested this, but I was talking to someone at
> Plumbers about all the horrible bugs we've had lurking around in our
> port despite it still getting to userspace and they suggested that I
> enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
> issues.
> 
> This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
> still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
> paranoid, but I still don't trust our port enough to just pull the
> trigger on this without at least accumulating some "Tested-by"s on it.
> 
> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>

I can only give you a

Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>

Not the new defconfig itself, but the new defconfig plus a variety of
selftest options. I don't know what exactly is failing, but here is
my list of enabled selftests on top of defconfig:

CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
CONFIG_CRC32_SELFTEST=y
CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
CONFIG_DEBUG_NMI_SELFTEST=y
CONFIG_DEBUG_RODATA_TEST=y
CONFIG_DEBUG_TLBFLUSH=y
CONFIG_DMATEST=y
CONFIG_GLOB_SELFTEST=y
CONFIG_OF_UNITTEST=y
CONFIG_PCI_EPF_TEST=y
CONFIG_PCI_ENDPOINT_TEST=y
CONFIG_PROVE_LOCKING=y
CONFIG_PROVE_RCU=y
CONFIG_RCU_EQS_DEBUG=y
CONFIG_STATIC_KEYS_SELFTEST=y
CONFIG_STRING_SELFTEST=y
CONFIG_TEST_BITMAP=y
CONFIG_TEST_FIRMWARE=y
CONFIG_TEST_SORT=y
CONFIG_TEST_SYSCTL=y
CONFIG_TEST_UUID=y
CONFIG_USB_TEST=y
CONFIG_USB_EHSET_TEST_FIXTURE=y
CONFIG_USB_LINK_LAYER_TEST=y
CONFIG_WW_MUTEX_SELFTEST=y
CONFIG_TORTURE_TEST=y
CONFIG_LOCK_TORTURE_TEST=y
CONFIG_RCU_TORTURE_TEST=y
CONFIG_RBTREE_TEST=y
CONFIG_INTERVAL_TREE_TEST=y

Tests pass after disabling those tests (or after reverting your patch).

Guenter

> ---
>  arch/riscv/configs/defconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
> index ef4f15df9adf..8869471af0fc 100644
> --- a/arch/riscv/configs/defconfig
> +++ b/arch/riscv/configs/defconfig
> @@ -1,5 +1,6 @@
>  CONFIG_SYSVIPC=y
>  CONFIG_POSIX_MQUEUE=y
> +CONFIG_PREEMPT=y
>  CONFIG_IKCONFIG=y
>  CONFIG_IKCONFIG_PROC=y
>  CONFIG_CGROUPS=y
> @@ -77,4 +78,3 @@ CONFIG_NFS_V4_2=y
>  CONFIG_ROOT_NFS=y
>  CONFIG_CRYPTO_USER_API_HASH=y
>  CONFIG_PRINTK_TIME=y
> -# CONFIG_RCU_TRACE is not set
> -- 
> 2.7.4

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2018-12-20  1:45 [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig Guenter Roeck
@ 2018-12-20  5:25 ` Guenter Roeck
  2018-12-26  3:23   ` Guenter Roeck
  2018-12-20 21:33 ` Palmer Dabbelt
  1 sibling, 1 reply; 10+ messages in thread
From: Guenter Roeck @ 2018-12-20  5:25 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: linux-riscv, Albert Ou

On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
> On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
> > I don't remember who suggested this, but I was talking to someone at
> > Plumbers about all the horrible bugs we've had lurking around in our
> > port despite it still getting to userspace and they suggested that I
> > enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
> > issues.
> > 
> > This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
> > still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
> > paranoid, but I still don't trust our port enough to just pull the
> > trigger on this without at least accumulating some "Tested-by"s on it.
> > 
> > Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
> 
> I can only give you a
> 
> Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
> 
> Not the new defconfig itself, but the new defconfig plus a variety of
> selftest options. I don't know what exactly is failing, but here is
> my list of enabled selftests on top of defconfig:
> 
> CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
> CONFIG_CRC32_SELFTEST=y
> CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
> CONFIG_DEBUG_NMI_SELFTEST=y
> CONFIG_DEBUG_RODATA_TEST=y
> CONFIG_DEBUG_TLBFLUSH=y
> CONFIG_DMATEST=y
> CONFIG_GLOB_SELFTEST=y
> CONFIG_OF_UNITTEST=y
> CONFIG_PCI_EPF_TEST=y
> CONFIG_PCI_ENDPOINT_TEST=y
> CONFIG_PROVE_LOCKING=y
> CONFIG_PROVE_RCU=y
> CONFIG_RCU_EQS_DEBUG=y
> CONFIG_STATIC_KEYS_SELFTEST=y
> CONFIG_STRING_SELFTEST=y
> CONFIG_TEST_BITMAP=y
> CONFIG_TEST_FIRMWARE=y
> CONFIG_TEST_SORT=y
> CONFIG_TEST_SYSCTL=y
> CONFIG_TEST_UUID=y
> CONFIG_USB_TEST=y
> CONFIG_USB_EHSET_TEST_FIXTURE=y
> CONFIG_USB_LINK_LAYER_TEST=y
> CONFIG_WW_MUTEX_SELFTEST=y
> CONFIG_TORTURE_TEST=y
> CONFIG_LOCK_TORTURE_TEST=y
> CONFIG_RCU_TORTURE_TEST=y
> CONFIG_RBTREE_TEST=y
> CONFIG_INTERVAL_TREE_TEST=y
> 

Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
if CONFIG_PREEMPT=y.

Guenter

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2018-12-20  1:45 [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig Guenter Roeck
  2018-12-20  5:25 ` Guenter Roeck
@ 2018-12-20 21:33 ` Palmer Dabbelt
  1 sibling, 0 replies; 10+ messages in thread
From: Palmer Dabbelt @ 2018-12-20 21:33 UTC (permalink / raw)
  To: linux; +Cc: linux-riscv, aou

On Wed, 19 Dec 2018 17:45:11 PST (-0800), linux@roeck-us.net wrote:
> On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
>> I don't remember who suggested this, but I was talking to someone at
>> Plumbers about all the horrible bugs we've had lurking around in our
>> port despite it still getting to userspace and they suggested that I
>> enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
>> issues.
>>
>> This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
>> still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
>> paranoid, but I still don't trust our port enough to just pull the
>> trigger on this without at least accumulating some "Tested-by"s on it.
>>
>> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
>
> I can only give you a
>
> Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>

Ah, perfect -- I get a lot more worried when things like this pass then when 
they fail :)

> Not the new defconfig itself, but the new defconfig plus a variety of
> selftest options. I don't know what exactly is failing, but here is
> my list of enabled selftests on top of defconfig:
>
> CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
> CONFIG_CRC32_SELFTEST=y
> CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
> CONFIG_DEBUG_NMI_SELFTEST=y
> CONFIG_DEBUG_RODATA_TEST=y
> CONFIG_DEBUG_TLBFLUSH=y
> CONFIG_DMATEST=y
> CONFIG_GLOB_SELFTEST=y
> CONFIG_OF_UNITTEST=y
> CONFIG_PCI_EPF_TEST=y
> CONFIG_PCI_ENDPOINT_TEST=y
> CONFIG_PROVE_LOCKING=y
> CONFIG_PROVE_RCU=y
> CONFIG_RCU_EQS_DEBUG=y
> CONFIG_STATIC_KEYS_SELFTEST=y
> CONFIG_STRING_SELFTEST=y
> CONFIG_TEST_BITMAP=y
> CONFIG_TEST_FIRMWARE=y
> CONFIG_TEST_SORT=y
> CONFIG_TEST_SYSCTL=y
> CONFIG_TEST_UUID=y
> CONFIG_USB_TEST=y
> CONFIG_USB_EHSET_TEST_FIXTURE=y
> CONFIG_USB_LINK_LAYER_TEST=y
> CONFIG_WW_MUTEX_SELFTEST=y
> CONFIG_TORTURE_TEST=y
> CONFIG_LOCK_TORTURE_TEST=y
> CONFIG_RCU_TORTURE_TEST=y
> CONFIG_RBTREE_TEST=y
> CONFIG_INTERVAL_TREE_TEST=y
>
> Tests pass after disabling those tests (or after reverting your patch).

Great.  I'll take a look when I have time, and I definitely won't merge the 
patch.

Thanks for testing!

>
> Guenter
>
>> ---
>>  arch/riscv/configs/defconfig | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
>> index ef4f15df9adf..8869471af0fc 100644
>> --- a/arch/riscv/configs/defconfig
>> +++ b/arch/riscv/configs/defconfig
>> @@ -1,5 +1,6 @@
>>  CONFIG_SYSVIPC=y
>>  CONFIG_POSIX_MQUEUE=y
>> +CONFIG_PREEMPT=y
>>  CONFIG_IKCONFIG=y
>>  CONFIG_IKCONFIG_PROC=y
>>  CONFIG_CGROUPS=y
>> @@ -77,4 +78,3 @@ CONFIG_NFS_V4_2=y
>>  CONFIG_ROOT_NFS=y
>>  CONFIG_CRYPTO_USER_API_HASH=y
>>  CONFIG_PRINTK_TIME=y
>> -# CONFIG_RCU_TRACE is not set
>> --
>> 2.7.4

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2018-12-20  5:25 ` Guenter Roeck
@ 2018-12-26  3:23   ` Guenter Roeck
  2018-12-26 17:19     ` Palmer Dabbelt
  0 siblings, 1 reply; 10+ messages in thread
From: Guenter Roeck @ 2018-12-26  3:23 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: linux-riscv, Albert Ou

On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
> > On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
> > > I don't remember who suggested this, but I was talking to someone at
> > > Plumbers about all the horrible bugs we've had lurking around in our
> > > port despite it still getting to userspace and they suggested that I
> > > enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
> > > issues.
> > > 
> > > This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
> > > still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
> > > paranoid, but I still don't trust our port enough to just pull the
> > > trigger on this without at least accumulating some "Tested-by"s on it.
> > > 
> > > Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
> > 
> > I can only give you a
> > 
> > Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
> > 
> > Not the new defconfig itself, but the new defconfig plus a variety of
> > selftest options. I don't know what exactly is failing, but here is
> > my list of enabled selftests on top of defconfig:
> > 
> > CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
> > CONFIG_CRC32_SELFTEST=y
> > CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
> > CONFIG_DEBUG_NMI_SELFTEST=y
> > CONFIG_DEBUG_RODATA_TEST=y
> > CONFIG_DEBUG_TLBFLUSH=y
> > CONFIG_DMATEST=y
> > CONFIG_GLOB_SELFTEST=y
> > CONFIG_OF_UNITTEST=y
> > CONFIG_PCI_EPF_TEST=y
> > CONFIG_PCI_ENDPOINT_TEST=y
> > CONFIG_PROVE_LOCKING=y
> > CONFIG_PROVE_RCU=y
> > CONFIG_RCU_EQS_DEBUG=y
> > CONFIG_STATIC_KEYS_SELFTEST=y
> > CONFIG_STRING_SELFTEST=y
> > CONFIG_TEST_BITMAP=y
> > CONFIG_TEST_FIRMWARE=y
> > CONFIG_TEST_SORT=y
> > CONFIG_TEST_SYSCTL=y
> > CONFIG_TEST_UUID=y
> > CONFIG_USB_TEST=y
> > CONFIG_USB_EHSET_TEST_FIXTURE=y
> > CONFIG_USB_LINK_LAYER_TEST=y
> > CONFIG_WW_MUTEX_SELFTEST=y
> > CONFIG_TORTURE_TEST=y
> > CONFIG_LOCK_TORTURE_TEST=y
> > CONFIG_RCU_TORTURE_TEST=y
> > CONFIG_RBTREE_TEST=y
> > CONFIG_INTERVAL_TREE_TEST=y
> > 
> 
> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
> if CONFIG_PREEMPT=y.
> 

Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
also result in hangs, only a bit later. I have now disabled all three test
options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
reports in the future does _not_ mean that the problem has magically
disappeared. I just find it pointless to keep testing a known broken
configuration, even more so since doing so would hide other potential
problems.

Guenter

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2018-12-26  3:23   ` Guenter Roeck
@ 2018-12-26 17:19     ` Palmer Dabbelt
  2019-01-03  2:59       ` Vincent Chen
  0 siblings, 1 reply; 10+ messages in thread
From: Palmer Dabbelt @ 2018-12-26 17:19 UTC (permalink / raw)
  To: linux; +Cc: linux-riscv, aou

On Tue, 25 Dec 2018 19:23:50 PST (-0800), linux@roeck-us.net wrote:
> On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
>> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
>> > On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
>> > > I don't remember who suggested this, but I was talking to someone at
>> > > Plumbers about all the horrible bugs we've had lurking around in our
>> > > port despite it still getting to userspace and they suggested that I
>> > > enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
>> > > issues.
>> > >
>> > > This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
>> > > still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
>> > > paranoid, but I still don't trust our port enough to just pull the
>> > > trigger on this without at least accumulating some "Tested-by"s on it.
>> > >
>> > > Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
>> >
>> > I can only give you a
>> >
>> > Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
>> >
>> > Not the new defconfig itself, but the new defconfig plus a variety of
>> > selftest options. I don't know what exactly is failing, but here is
>> > my list of enabled selftests on top of defconfig:
>> >
>> > CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
>> > CONFIG_CRC32_SELFTEST=y
>> > CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
>> > CONFIG_DEBUG_NMI_SELFTEST=y
>> > CONFIG_DEBUG_RODATA_TEST=y
>> > CONFIG_DEBUG_TLBFLUSH=y
>> > CONFIG_DMATEST=y
>> > CONFIG_GLOB_SELFTEST=y
>> > CONFIG_OF_UNITTEST=y
>> > CONFIG_PCI_EPF_TEST=y
>> > CONFIG_PCI_ENDPOINT_TEST=y
>> > CONFIG_PROVE_LOCKING=y
>> > CONFIG_PROVE_RCU=y
>> > CONFIG_RCU_EQS_DEBUG=y
>> > CONFIG_STATIC_KEYS_SELFTEST=y
>> > CONFIG_STRING_SELFTEST=y
>> > CONFIG_TEST_BITMAP=y
>> > CONFIG_TEST_FIRMWARE=y
>> > CONFIG_TEST_SORT=y
>> > CONFIG_TEST_SYSCTL=y
>> > CONFIG_TEST_UUID=y
>> > CONFIG_USB_TEST=y
>> > CONFIG_USB_EHSET_TEST_FIXTURE=y
>> > CONFIG_USB_LINK_LAYER_TEST=y
>> > CONFIG_WW_MUTEX_SELFTEST=y
>> > CONFIG_TORTURE_TEST=y
>> > CONFIG_LOCK_TORTURE_TEST=y
>> > CONFIG_RCU_TORTURE_TEST=y
>> > CONFIG_RBTREE_TEST=y
>> > CONFIG_INTERVAL_TREE_TEST=y
>> >
>>
>> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
>> if CONFIG_PREEMPT=y.
>>
>
> Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
> also result in hangs, only a bit later. I have now disabled all three test
> options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
> reports in the future does _not_ mean that the problem has magically
> disappeared. I just find it pointless to keep testing a known broken
> configuration, even more so since doing so would hide other potential
> problems.

Thanks.  I agree it's pointless to test more, as there appear to be lots of 
bugs to fix already and this will just mask other bugs.

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2018-12-26 17:19     ` Palmer Dabbelt
@ 2019-01-03  2:59       ` Vincent Chen
  2019-01-03  3:51         ` Guenter Roeck
  2019-01-08 19:24         ` Palmer Dabbelt
  0 siblings, 2 replies; 10+ messages in thread
From: Vincent Chen @ 2019-01-03  2:59 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: linux-riscv, aou, linux

Palmer Dabbelt <palmer@sifive.com> 於 2018年12月27日 週四 上午1:19寫道:
>
> On Tue, 25 Dec 2018 19:23:50 PST (-0800), linux@roeck-us.net wrote:
> > On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
> >> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
> >> > On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
> >> > > I don't remember who suggested this, but I was talking to someone at
> >> > > Plumbers about all the horrible bugs we've had lurking around in our
> >> > > port despite it still getting to userspace and they suggested that I
> >> > > enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
> >> > > issues.
> >> > >
> >> > > This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
> >> > > still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
> >> > > paranoid, but I still don't trust our port enough to just pull the
> >> > > trigger on this without at least accumulating some "Tested-by"s on it.
> >> > >
> >> > > Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
> >> >
> >> > I can only give you a
> >> >
> >> > Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
> >> >
> >> > Not the new defconfig itself, but the new defconfig plus a variety of
> >> > selftest options. I don't know what exactly is failing, but here is
> >> > my list of enabled selftests on top of defconfig:
> >> >
> >> > CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
> >> > CONFIG_CRC32_SELFTEST=y
> >> > CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
> >> > CONFIG_DEBUG_NMI_SELFTEST=y
> >> > CONFIG_DEBUG_RODATA_TEST=y
> >> > CONFIG_DEBUG_TLBFLUSH=y
> >> > CONFIG_DMATEST=y
> >> > CONFIG_GLOB_SELFTEST=y
> >> > CONFIG_OF_UNITTEST=y
> >> > CONFIG_PCI_EPF_TEST=y
> >> > CONFIG_PCI_ENDPOINT_TEST=y
> >> > CONFIG_PROVE_LOCKING=y
> >> > CONFIG_PROVE_RCU=y
> >> > CONFIG_RCU_EQS_DEBUG=y
> >> > CONFIG_STATIC_KEYS_SELFTEST=y
> >> > CONFIG_STRING_SELFTEST=y
> >> > CONFIG_TEST_BITMAP=y
> >> > CONFIG_TEST_FIRMWARE=y
> >> > CONFIG_TEST_SORT=y
> >> > CONFIG_TEST_SYSCTL=y
> >> > CONFIG_TEST_UUID=y
> >> > CONFIG_USB_TEST=y
> >> > CONFIG_USB_EHSET_TEST_FIXTURE=y
> >> > CONFIG_USB_LINK_LAYER_TEST=y
> >> > CONFIG_WW_MUTEX_SELFTEST=y
> >> > CONFIG_TORTURE_TEST=y
> >> > CONFIG_LOCK_TORTURE_TEST=y
> >> > CONFIG_RCU_TORTURE_TEST=y
> >> > CONFIG_RBTREE_TEST=y
> >> > CONFIG_INTERVAL_TREE_TEST=y
> >> >
> >>
> >> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
> >> if CONFIG_PREEMPT=y.
> >>
> >
> > Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
> > also result in hangs, only a bit later. I have now disabled all three test
> > options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
> > reports in the future does _not_ mean that the problem has magically
> > disappeared. I just find it pointless to keep testing a known broken
> > configuration, even more so since doing so would hide other potential
> > problems.
>
> Thanks.  I agree it's pointless to test more, as there appear to be lots of
> bugs to fix already and this will just mask other bugs.
>

Last week, I encountered some locking issues in the kernel, so I tried
to test the
kernel with some relative selftests. Since I had already set CONFIG_PREEMPT=y,
I encountered the same results in RCU_TORTURE_TEST and
LOCK_TORTURE_TEST. I tried to debug it and found the hang was due to
the lack of _TIF_NEED_RESCHED check for kernel threads in entry.S. I will send a
patch to solve this problem and I hope you can give me some comments
if you find some
mistakes.

Vincent Chen

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2019-01-03  2:59       ` Vincent Chen
@ 2019-01-03  3:51         ` Guenter Roeck
  2019-01-03  5:21           ` Vincent Chen
  2019-01-08 19:24         ` Palmer Dabbelt
  1 sibling, 1 reply; 10+ messages in thread
From: Guenter Roeck @ 2019-01-03  3:51 UTC (permalink / raw)
  To: Vincent Chen, Palmer Dabbelt; +Cc: linux-riscv, aou

On 1/2/19 6:59 PM, Vincent Chen wrote:
> Palmer Dabbelt <palmer@sifive.com> 於 2018年12月27日 週四 上午1:19寫道:
>>
>> On Tue, 25 Dec 2018 19:23:50 PST (-0800), linux@roeck-us.net wrote:
>>> On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
>>>> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
>>>>> On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
>>>>>> I don't remember who suggested this, but I was talking to someone at
>>>>>> Plumbers about all the horrible bugs we've had lurking around in our
>>>>>> port despite it still getting to userspace and they suggested that I
>>>>>> enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
>>>>>> issues.
>>>>>>
>>>>>> This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
>>>>>> still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
>>>>>> paranoid, but I still don't trust our port enough to just pull the
>>>>>> trigger on this without at least accumulating some "Tested-by"s on it.
>>>>>>
>>>>>> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
>>>>>
>>>>> I can only give you a
>>>>>
>>>>> Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
>>>>>
>>>>> Not the new defconfig itself, but the new defconfig plus a variety of
>>>>> selftest options. I don't know what exactly is failing, but here is
>>>>> my list of enabled selftests on top of defconfig:
>>>>>
>>>>> CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
>>>>> CONFIG_CRC32_SELFTEST=y
>>>>> CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
>>>>> CONFIG_DEBUG_NMI_SELFTEST=y
>>>>> CONFIG_DEBUG_RODATA_TEST=y
>>>>> CONFIG_DEBUG_TLBFLUSH=y
>>>>> CONFIG_DMATEST=y
>>>>> CONFIG_GLOB_SELFTEST=y
>>>>> CONFIG_OF_UNITTEST=y
>>>>> CONFIG_PCI_EPF_TEST=y
>>>>> CONFIG_PCI_ENDPOINT_TEST=y
>>>>> CONFIG_PROVE_LOCKING=y
>>>>> CONFIG_PROVE_RCU=y
>>>>> CONFIG_RCU_EQS_DEBUG=y
>>>>> CONFIG_STATIC_KEYS_SELFTEST=y
>>>>> CONFIG_STRING_SELFTEST=y
>>>>> CONFIG_TEST_BITMAP=y
>>>>> CONFIG_TEST_FIRMWARE=y
>>>>> CONFIG_TEST_SORT=y
>>>>> CONFIG_TEST_SYSCTL=y
>>>>> CONFIG_TEST_UUID=y
>>>>> CONFIG_USB_TEST=y
>>>>> CONFIG_USB_EHSET_TEST_FIXTURE=y
>>>>> CONFIG_USB_LINK_LAYER_TEST=y
>>>>> CONFIG_WW_MUTEX_SELFTEST=y
>>>>> CONFIG_TORTURE_TEST=y
>>>>> CONFIG_LOCK_TORTURE_TEST=y
>>>>> CONFIG_RCU_TORTURE_TEST=y
>>>>> CONFIG_RBTREE_TEST=y
>>>>> CONFIG_INTERVAL_TREE_TEST=y
>>>>>
>>>>
>>>> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
>>>> if CONFIG_PREEMPT=y.
>>>>
>>>
>>> Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
>>> also result in hangs, only a bit later. I have now disabled all three test
>>> options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
>>> reports in the future does _not_ mean that the problem has magically
>>> disappeared. I just find it pointless to keep testing a known broken
>>> configuration, even more so since doing so would hide other potential
>>> problems.
>>
>> Thanks.  I agree it's pointless to test more, as there appear to be lots of
>> bugs to fix already and this will just mask other bugs.
>>
> 
> Last week, I encountered some locking issues in the kernel, so I tried
> to test the
> kernel with some relative selftests. Since I had already set CONFIG_PREEMPT=y,
> I encountered the same results in RCU_TORTURE_TEST and
> LOCK_TORTURE_TEST. I tried to debug it and found the hang was due to
> the lack of _TIF_NEED_RESCHED check for kernel threads in entry.S. I will send a
> patch to solve this problem and I hope you can give me some comments
> if you find some
> mistakes.
> 

I'll be happy to run a set of tests if you Cc: me on the patch.

Guenter

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2019-01-03  3:51         ` Guenter Roeck
@ 2019-01-03  5:21           ` Vincent Chen
  2019-01-03  5:29             ` Guenter Roeck
  0 siblings, 1 reply; 10+ messages in thread
From: Vincent Chen @ 2019-01-03  5:21 UTC (permalink / raw)
  To: Guenter Roeck; +Cc: linux-riscv, Palmer Dabbelt, aou

Guenter Roeck <linux@roeck-us.net> 於 2019年1月3日 週四 上午11:51寫道:
>
> On 1/2/19 6:59 PM, Vincent Chen wrote:
> > Palmer Dabbelt <palmer@sifive.com> 於 2018年12月27日 週四 上午1:19寫道:
> >>
> >> On Tue, 25 Dec 2018 19:23:50 PST (-0800), linux@roeck-us.net wrote:
> >>> On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
> >>>> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
> >>>>> On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
> >>>>>> I don't remember who suggested this, but I was talking to someone at
> >>>>>> Plumbers about all the horrible bugs we've had lurking around in our
> >>>>>> port despite it still getting to userspace and they suggested that I
> >>>>>> enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
> >>>>>> issues.
> >>>>>>
> >>>>>> This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
> >>>>>> still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
> >>>>>> paranoid, but I still don't trust our port enough to just pull the
> >>>>>> trigger on this without at least accumulating some "Tested-by"s on it.
> >>>>>>
> >>>>>> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
> >>>>>
> >>>>> I can only give you a
> >>>>>
> >>>>> Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
> >>>>>
> >>>>> Not the new defconfig itself, but the new defconfig plus a variety of
> >>>>> selftest options. I don't know what exactly is failing, but here is
> >>>>> my list of enabled selftests on top of defconfig:
> >>>>>
> >>>>> CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
> >>>>> CONFIG_CRC32_SELFTEST=y
> >>>>> CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
> >>>>> CONFIG_DEBUG_NMI_SELFTEST=y
> >>>>> CONFIG_DEBUG_RODATA_TEST=y
> >>>>> CONFIG_DEBUG_TLBFLUSH=y
> >>>>> CONFIG_DMATEST=y
> >>>>> CONFIG_GLOB_SELFTEST=y
> >>>>> CONFIG_OF_UNITTEST=y
> >>>>> CONFIG_PCI_EPF_TEST=y
> >>>>> CONFIG_PCI_ENDPOINT_TEST=y
> >>>>> CONFIG_PROVE_LOCKING=y
> >>>>> CONFIG_PROVE_RCU=y
> >>>>> CONFIG_RCU_EQS_DEBUG=y
> >>>>> CONFIG_STATIC_KEYS_SELFTEST=y
> >>>>> CONFIG_STRING_SELFTEST=y
> >>>>> CONFIG_TEST_BITMAP=y
> >>>>> CONFIG_TEST_FIRMWARE=y
> >>>>> CONFIG_TEST_SORT=y
> >>>>> CONFIG_TEST_SYSCTL=y
> >>>>> CONFIG_TEST_UUID=y
> >>>>> CONFIG_USB_TEST=y
> >>>>> CONFIG_USB_EHSET_TEST_FIXTURE=y
> >>>>> CONFIG_USB_LINK_LAYER_TEST=y
> >>>>> CONFIG_WW_MUTEX_SELFTEST=y
> >>>>> CONFIG_TORTURE_TEST=y
> >>>>> CONFIG_LOCK_TORTURE_TEST=y
> >>>>> CONFIG_RCU_TORTURE_TEST=y
> >>>>> CONFIG_RBTREE_TEST=y
> >>>>> CONFIG_INTERVAL_TREE_TEST=y
> >>>>>
> >>>>
> >>>> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
> >>>> if CONFIG_PREEMPT=y.
> >>>>
> >>>
> >>> Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
> >>> also result in hangs, only a bit later. I have now disabled all three test
> >>> options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
> >>> reports in the future does _not_ mean that the problem has magically
> >>> disappeared. I just find it pointless to keep testing a known broken
> >>> configuration, even more so since doing so would hide other potential
> >>> problems.
> >>
> >> Thanks.  I agree it's pointless to test more, as there appear to be lots of
> >> bugs to fix already and this will just mask other bugs.
> >>
> >
> > Last week, I encountered some locking issues in the kernel, so I tried
> > to test the
> > kernel with some relative selftests. Since I had already set CONFIG_PREEMPT=y,
> > I encountered the same results in RCU_TORTURE_TEST and
> > LOCK_TORTURE_TEST. I tried to debug it and found the hang was due to
> > the lack of _TIF_NEED_RESCHED check for kernel threads in entry.S. I will send a
> > patch to solve this problem and I hope you can give me some comments
> > if you find some
> > mistakes.
> >
>
> I'll be happy to run a set of tests if you Cc: me on the patch.
>
> Guenter

Sorry, I have sent this patch but I forget to add you to the Cc list.
I will send you this patch again and please help me to run a set of tests.
Thanks

Vincent Chen

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2019-01-03  5:21           ` Vincent Chen
@ 2019-01-03  5:29             ` Guenter Roeck
  0 siblings, 0 replies; 10+ messages in thread
From: Guenter Roeck @ 2019-01-03  5:29 UTC (permalink / raw)
  To: Vincent Chen; +Cc: linux-riscv, Palmer Dabbelt, aou

On 1/2/19 9:21 PM, Vincent Chen wrote:
> Guenter Roeck <linux@roeck-us.net> 於 2019年1月3日 週四 上午11:51寫道:
>>
>> On 1/2/19 6:59 PM, Vincent Chen wrote:
>>> Palmer Dabbelt <palmer@sifive.com> 於 2018年12月27日 週四 上午1:19寫道:
>>>>
>>>> On Tue, 25 Dec 2018 19:23:50 PST (-0800), linux@roeck-us.net wrote:
>>>>> On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
>>>>>> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
>>>>>>> On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
>>>>>>>> I don't remember who suggested this, but I was talking to someone at
>>>>>>>> Plumbers about all the horrible bugs we've had lurking around in our
>>>>>>>> port despite it still getting to userspace and they suggested that I
>>>>>>>> enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
>>>>>>>> issues.
>>>>>>>>
>>>>>>>> This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
>>>>>>>> still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
>>>>>>>> paranoid, but I still don't trust our port enough to just pull the
>>>>>>>> trigger on this without at least accumulating some "Tested-by"s on it.
>>>>>>>>
>>>>>>>> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
>>>>>>>
>>>>>>> I can only give you a
>>>>>>>
>>>>>>> Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
>>>>>>>
>>>>>>> Not the new defconfig itself, but the new defconfig plus a variety of
>>>>>>> selftest options. I don't know what exactly is failing, but here is
>>>>>>> my list of enabled selftests on top of defconfig:
>>>>>>>
>>>>>>> CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
>>>>>>> CONFIG_CRC32_SELFTEST=y
>>>>>>> CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
>>>>>>> CONFIG_DEBUG_NMI_SELFTEST=y
>>>>>>> CONFIG_DEBUG_RODATA_TEST=y
>>>>>>> CONFIG_DEBUG_TLBFLUSH=y
>>>>>>> CONFIG_DMATEST=y
>>>>>>> CONFIG_GLOB_SELFTEST=y
>>>>>>> CONFIG_OF_UNITTEST=y
>>>>>>> CONFIG_PCI_EPF_TEST=y
>>>>>>> CONFIG_PCI_ENDPOINT_TEST=y
>>>>>>> CONFIG_PROVE_LOCKING=y
>>>>>>> CONFIG_PROVE_RCU=y
>>>>>>> CONFIG_RCU_EQS_DEBUG=y
>>>>>>> CONFIG_STATIC_KEYS_SELFTEST=y
>>>>>>> CONFIG_STRING_SELFTEST=y
>>>>>>> CONFIG_TEST_BITMAP=y
>>>>>>> CONFIG_TEST_FIRMWARE=y
>>>>>>> CONFIG_TEST_SORT=y
>>>>>>> CONFIG_TEST_SYSCTL=y
>>>>>>> CONFIG_TEST_UUID=y
>>>>>>> CONFIG_USB_TEST=y
>>>>>>> CONFIG_USB_EHSET_TEST_FIXTURE=y
>>>>>>> CONFIG_USB_LINK_LAYER_TEST=y
>>>>>>> CONFIG_WW_MUTEX_SELFTEST=y
>>>>>>> CONFIG_TORTURE_TEST=y
>>>>>>> CONFIG_LOCK_TORTURE_TEST=y
>>>>>>> CONFIG_RCU_TORTURE_TEST=y
>>>>>>> CONFIG_RBTREE_TEST=y
>>>>>>> CONFIG_INTERVAL_TREE_TEST=y
>>>>>>>
>>>>>>
>>>>>> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
>>>>>> if CONFIG_PREEMPT=y.
>>>>>>
>>>>>
>>>>> Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
>>>>> also result in hangs, only a bit later. I have now disabled all three test
>>>>> options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
>>>>> reports in the future does _not_ mean that the problem has magically
>>>>> disappeared. I just find it pointless to keep testing a known broken
>>>>> configuration, even more so since doing so would hide other potential
>>>>> problems.
>>>>
>>>> Thanks.  I agree it's pointless to test more, as there appear to be lots of
>>>> bugs to fix already and this will just mask other bugs.
>>>>
>>>
>>> Last week, I encountered some locking issues in the kernel, so I tried
>>> to test the
>>> kernel with some relative selftests. Since I had already set CONFIG_PREEMPT=y,
>>> I encountered the same results in RCU_TORTURE_TEST and
>>> LOCK_TORTURE_TEST. I tried to debug it and found the hang was due to
>>> the lack of _TIF_NEED_RESCHED check for kernel threads in entry.S. I will send a
>>> patch to solve this problem and I hope you can give me some comments
>>> if you find some
>>> mistakes.
>>>
>>
>> I'll be happy to run a set of tests if you Cc: me on the patch.
>>
>> Guenter
> 
> Sorry, I have sent this patch but I forget to add you to the Cc list.
> I will send you this patch again and please help me to run a set of tests.

No need to resend; I picked it up from patchwork. Running a test now.

Guenter

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig
  2019-01-03  2:59       ` Vincent Chen
  2019-01-03  3:51         ` Guenter Roeck
@ 2019-01-08 19:24         ` Palmer Dabbelt
  1 sibling, 0 replies; 10+ messages in thread
From: Palmer Dabbelt @ 2019-01-08 19:24 UTC (permalink / raw)
  To: deanbo422; +Cc: linux-riscv, aou, linux

On Wed, 02 Jan 2019 18:59:11 PST (-0800), deanbo422@gmail.com wrote:
> Palmer Dabbelt <palmer@sifive.com> 於 2018年12月27日 週四 上午1:19寫道:
>>
>> On Tue, 25 Dec 2018 19:23:50 PST (-0800), linux@roeck-us.net wrote:
>> > On Wed, Dec 19, 2018 at 09:25:21PM -0800, Guenter Roeck wrote:
>> >> On Wed, Dec 19, 2018 at 05:45:11PM -0800, Guenter Roeck wrote:
>> >> > On Wed, Nov 21, 2018 at 10:58:05AM -0800, Palmer Dabbelt wrote:
>> >> > > I don't remember who suggested this, but I was talking to someone at
>> >> > > Plumbers about all the horrible bugs we've had lurking around in our
>> >> > > port despite it still getting to userspace and they suggested that I
>> >> > > enable CONFIG_PREEMPT in our defconfig as it'll help shake out more
>> >> > > issues.
>> >> > >
>> >> > > This patch enables CONFIG_PREEMPT in the single RISC-V defconfig.  It
>> >> > > still passes my tests (ie, booting Fedora on QEMU).  Maybe I'm too
>> >> > > paranoid, but I still don't trust our port enough to just pull the
>> >> > > trigger on this without at least accumulating some "Tested-by"s on it.
>> >> > >
>> >> > > Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
>> >> >
>> >> > I can only give you a
>> >> >
>> >> > Fails-miserably-for: Guenter Roeck <linux@roeck-us.net>
>> >> >
>> >> > Not the new defconfig itself, but the new defconfig plus a variety of
>> >> > selftest options. I don't know what exactly is failing, but here is
>> >> > my list of enabled selftests on top of defconfig:
>> >> >
>> >> > CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
>> >> > CONFIG_CRC32_SELFTEST=y
>> >> > CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
>> >> > CONFIG_DEBUG_NMI_SELFTEST=y
>> >> > CONFIG_DEBUG_RODATA_TEST=y
>> >> > CONFIG_DEBUG_TLBFLUSH=y
>> >> > CONFIG_DMATEST=y
>> >> > CONFIG_GLOB_SELFTEST=y
>> >> > CONFIG_OF_UNITTEST=y
>> >> > CONFIG_PCI_EPF_TEST=y
>> >> > CONFIG_PCI_ENDPOINT_TEST=y
>> >> > CONFIG_PROVE_LOCKING=y
>> >> > CONFIG_PROVE_RCU=y
>> >> > CONFIG_RCU_EQS_DEBUG=y
>> >> > CONFIG_STATIC_KEYS_SELFTEST=y
>> >> > CONFIG_STRING_SELFTEST=y
>> >> > CONFIG_TEST_BITMAP=y
>> >> > CONFIG_TEST_FIRMWARE=y
>> >> > CONFIG_TEST_SORT=y
>> >> > CONFIG_TEST_SYSCTL=y
>> >> > CONFIG_TEST_UUID=y
>> >> > CONFIG_USB_TEST=y
>> >> > CONFIG_USB_EHSET_TEST_FIXTURE=y
>> >> > CONFIG_USB_LINK_LAYER_TEST=y
>> >> > CONFIG_WW_MUTEX_SELFTEST=y
>> >> > CONFIG_TORTURE_TEST=y
>> >> > CONFIG_LOCK_TORTURE_TEST=y
>> >> > CONFIG_RCU_TORTURE_TEST=y
>> >> > CONFIG_RBTREE_TEST=y
>> >> > CONFIG_INTERVAL_TREE_TEST=y
>> >> >
>> >>
>> >> Update: defconfig+CONFIG_LOCK_TORTURE_TEST=y causes the hang
>> >> if CONFIG_PREEMPT=y.
>> >>
>> >
>> > Another update. CONFIG_RCU_TORTURE_TEST=y or CONFIG_WW_MUTEX_SELFTEST=y
>> > also result in hangs, only a bit later. I have now disabled all three test
>> > options in my riscv boot tests if CONFIG_PREEMPT=y. The lack of error
>> > reports in the future does _not_ mean that the problem has magically
>> > disappeared. I just find it pointless to keep testing a known broken
>> > configuration, even more so since doing so would hide other potential
>> > problems.
>>
>> Thanks.  I agree it's pointless to test more, as there appear to be lots of
>> bugs to fix already and this will just mask other bugs.
>>
>
> Last week, I encountered some locking issues in the kernel, so I tried
> to test the
> kernel with some relative selftests. Since I had already set CONFIG_PREEMPT=y,
> I encountered the same results in RCU_TORTURE_TEST and
> LOCK_TORTURE_TEST. I tried to debug it and found the hang was due to
> the lack of _TIF_NEED_RESCHED check for kernel threads in entry.S. I will send a
> patch to solve this problem and I hope you can give me some comments
> if you find some
> mistakes.

Thanks!

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-01-08 19:24 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-20  1:45 [PATCH] RISC-V: Add CONFIG_PREEMPT=y to defconfig Guenter Roeck
2018-12-20  5:25 ` Guenter Roeck
2018-12-26  3:23   ` Guenter Roeck
2018-12-26 17:19     ` Palmer Dabbelt
2019-01-03  2:59       ` Vincent Chen
2019-01-03  3:51         ` Guenter Roeck
2019-01-03  5:21           ` Vincent Chen
2019-01-03  5:29             ` Guenter Roeck
2019-01-08 19:24         ` Palmer Dabbelt
2018-12-20 21:33 ` Palmer Dabbelt

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).