public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Locking API testsuite problem - Microblaze
@ 2008-05-17  7:07 Michal Simek
  2008-05-17  7:30 ` Matthew Wilcox
  0 siblings, 1 reply; 3+ messages in thread
From: Michal Simek @ 2008-05-17  7:07 UTC (permalink / raw)
  To: Linux Kernel list, Arnd Bergmann, rth, linux-ia64, tony.luck

Hi Richard, Tony, Arnd and others,

I turn on API testsuite for Microblaze CPU for stable 2.6.24 and I got nice log
with some faults. The same problem I have on latest version.

I found the similar problem for alpha CPU and ia64 but I haven't found solving
these issues. Could you give me a hint how to solve this problem.

http://www.nabble.com/INFO-alpha-CPU:-Locking-API-testsuite:-Results-kernel-2.6.18.1-td7175205.html
http://www.gelato.unsw.edu.au/archives/linux-ia64/att-20867/boot.log__charset_utf-8

Full log is http://www.monstr.eu/wiki/doku.php?id=kernel:kernel:api
and .config is there too.

Thanks for help,
Michal Simek

------------------------
| Locking API testsuite:
----------------------------------------------------------------------------
                                 | spin |wlock |rlock |mutex | wsem | rsem |
  --------------------------------------------------------------------------
                     A-A deadlock:failed|failed|  ok  |failed|failed|failed|
                 A-B-B-A deadlock:failed|failed|  ok  |failed|failed|failed|
             A-B-B-C-C-A deadlock:failed|failed|  ok  |failed|failed|failed|
             A-B-C-A-B-C deadlock:failed|failed|  ok  |failed|failed|failed|
         A-B-B-C-C-D-D-A deadlock:failed|failed|  ok  |failed|failed|failed|
         A-B-C-D-B-D-D-A deadlock:failed|failed|  ok  |failed|failed|failed|
         A-B-C-D-B-C-D-A deadlock:failed|failed|  ok  |failed|failed|failed|
                    double unlock:  ok  |  ok  |failed|failed|failed|failed|
                  initialize held:failed|failed|failed|failed|failed|failed|
                 bad unlock order:  ok  |  ok  |  ok  |  ok  |  ok  |  ok  |
  --------------------------------------------------------------------------
              recursive read-lock:             |  ok  |             |failed|
           recursive read-lock #2:             |  ok  |             |failed|
            mixed read-write-lock:             |failed|             |failed|
            mixed write-read-lock:             |failed|             |failed|
  --------------------------------------------------------------------------
     hard-irqs-on + irq-safe-A/12:failed|failed|  ok  |
     soft-irqs-on + irq-safe-A/12:failed|failed|  ok  |
     hard-irqs-on + irq-safe-A/21:failed|failed|  ok  |
     soft-irqs-on + irq-safe-A/21:failed|failed|  ok  |
       sirq-safe-A => hirqs-on/12:failed|failed|  ok  |
       sirq-safe-A => hirqs-on/21:failed|failed|  ok  |
         hard-safe-A + irqs-on/12:failed|failed|  ok  |
         soft-safe-A + irqs-on/12:failed|failed|  ok  |
         hard-safe-A + irqs-on/21:failed|failed|  ok  |
         soft-safe-A + irqs-on/21:failed|failed|  ok  |
    hard-safe-A + unsafe-B #1/123:failed|failed|  ok  |
    soft-safe-A + unsafe-B #1/123:failed|failed|  ok  |
    hard-safe-A + unsafe-B #1/132:failed|failed|  ok  |
    soft-safe-A + unsafe-B #1/132:failed|failed|  ok  |
    hard-safe-A + unsafe-B #1/213:failed|failed|  ok  |
    soft-safe-A + unsafe-B #1/213:failed|failed|  ok  |
    hard-safe-A + unsafe-B #1/231:failed|failed|  ok  |
    soft-safe-A + unsafe-B #1/231:failed|failed|  ok  |
    hard-safe-A + unsafe-B #1/312:failed|failed|  ok  |
    soft-safe-A + unsafe-B #1/312:failed|failed|  ok  |
    hard-safe-A + unsafe-B #1/321:failed|failed|  ok  |
    soft-safe-A + unsafe-B #1/321:failed|failed|  ok  |
    hard-safe-A + unsafe-B #2/123:failed|failed|  ok  |
    soft-safe-A + unsafe-B #2/123:failed|failed|  ok  |
    hard-safe-A + unsafe-B #2/132:failed|failed|  ok  |
    soft-safe-A + unsafe-B #2/132:failed|failed|  ok  |
    hard-safe-A + unsafe-B #2/213:failed|failed|  ok  |
    soft-safe-A + unsafe-B #2/213:failed|failed|  ok  |
    hard-safe-A + unsafe-B #2/231:failed|failed|  ok  |
    soft-safe-A + unsafe-B #2/231:failed|failed|  ok  |
    hard-safe-A + unsafe-B #2/312:failed|failed|  ok  |
    soft-safe-A + unsafe-B #2/312:failed|failed|  ok  |
    hard-safe-A + unsafe-B #2/321:failed|failed|  ok  |
    soft-safe-A + unsafe-B #2/321:failed|failed|  ok  |
      hard-irq lock-inversion/123:failed|failed|  ok  |
      soft-irq lock-inversion/123:failed|failed|  ok  |
      hard-irq lock-inversion/132:failed|failed|  ok  |
      soft-irq lock-inversion/132:failed|failed|  ok  |
      hard-irq lock-inversion/213:failed|failed|  ok  |
      soft-irq lock-inversion/213:failed|failed|  ok  |
      hard-irq lock-inversion/231:failed|failed|  ok  |
      soft-irq lock-inversion/231:failed|failed|  ok  |
      hard-irq lock-inversion/312:failed|failed|  ok  |
      soft-irq lock-inversion/312:failed|failed|  ok  |
      hard-irq lock-inversion/321:failed|failed|  ok  |
      soft-irq lock-inversion/321:failed|failed|  ok  |
      hard-irq read-recursion/123:  ok  |
      soft-irq read-recursion/123:  ok  |
      hard-irq read-recursion/132:  ok  |
      soft-irq read-recursion/132:  ok  |
      hard-irq read-recursion/213:  ok  |
      soft-irq read-recursion/213:  ok  |
      hard-irq read-recursion/231:  ok  |
      soft-irq read-recursion/231:  ok  |
      hard-irq read-recursion/312:  ok  |
      soft-irq read-recursion/312:  ok  |
      hard-irq read-recursion/321:  ok  |
      soft-irq read-recursion/321:  ok  |
--------------------------------------------------------




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

* Re: Locking API testsuite problem - Microblaze
  2008-05-17  7:07 Locking API testsuite problem - Microblaze Michal Simek
@ 2008-05-17  7:30 ` Matthew Wilcox
  2008-05-17 19:23   ` Michal Simek
  0 siblings, 1 reply; 3+ messages in thread
From: Matthew Wilcox @ 2008-05-17  7:30 UTC (permalink / raw)
  To: Michal Simek; +Cc: Linux Kernel list, Arnd Bergmann, rth, linux-ia64, tony.luck

On Sat, May 17, 2008 at 09:07:36AM +0200, Michal Simek wrote:
> Hi Richard, Tony, Arnd and others,
> 
> I turn on API testsuite for Microblaze CPU for stable 2.6.24 and I got nice log
> with some faults. The same problem I have on latest version.
> 
> I found the similar problem for alpha CPU and ia64 but I haven't found solving
> these issues. Could you give me a hint how to solve this problem.

You missed the crucial line:

143 out of 218 testcases failed, as expected.

Some of these testcases are /expected/ to fail.  Succeeding would be an
bug.  There are no bugs here.

-- 
Intel are signing my paycheques ... these opinions are still mine
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours.  We can't possibly take such
a retrograde step."

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

* Re: Locking API testsuite problem - Microblaze
  2008-05-17  7:30 ` Matthew Wilcox
@ 2008-05-17 19:23   ` Michal Simek
  0 siblings, 0 replies; 3+ messages in thread
From: Michal Simek @ 2008-05-17 19:23 UTC (permalink / raw)
  To: Matthew Wilcox
  Cc: Linux Kernel list, Arnd Bergmann, rth, linux-ia64, tony.luck

Hi Matthew,

> On Sat, May 17, 2008 at 09:07:36AM +0200, Michal Simek wrote:
>> Hi Richard, Tony, Arnd and others,
>>
>> I turn on API testsuite for Microblaze CPU for stable 2.6.24 and I got nice log
>> with some faults. The same problem I have on latest version.
>>
>> I found the similar problem for alpha CPU and ia64 but I haven't found solving
>> these issues. Could you give me a hint how to solve this problem.
> 
> You missed the crucial line:

oou.

> 143 out of 218 testcases failed, as expected.
> 
> Some of these testcases are /expected/ to fail.  Succeeding would be an
> bug.  There are no bugs here.

Thanks for your help. Are these tescases architecture dependent? Because I saw
some logs from other arch and they have everything OK.

Does it mean that everything what I supported works well?

I look to source code and I found these two lines.

DO_TESTCASE_6("double unlock", double_unlock);
DO_TESTCASE_6("initialize held", init_held);

and macro

#define DO_TESTCASE_6(desc, name)                               \
         print_testname(desc);                                   \
         dotest(name##_spin, FAILURE, LOCKTYPE_SPIN);            \
         dotest(name##_wlock, FAILURE, LOCKTYPE_RWLOCK);         \
         dotest(name##_rlock, FAILURE, LOCKTYPE_RWLOCK);         \
         dotest(name##_mutex, FAILURE, LOCKTYPE_MUTEX);          \
         dotest(name##_wsem, FAILURE, LOCKTYPE_RWSEM);           \
         dotest(name##_rsem, FAILURE, LOCKTYPE_RWSEM);           \
         printk("\n");

My results
                             | spin |wlock |rlock |mutex | wsem | rsem |
                double unlock:  ok  |  ok  |failed|failed|failed|failed|
              initialize held:failed|failed|failed|failed|failed|failed|

Is this result OK? Because macro say that expected value is failed.

Regards,
Michal


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

end of thread, other threads:[~2008-05-17 19:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-17  7:07 Locking API testsuite problem - Microblaze Michal Simek
2008-05-17  7:30 ` Matthew Wilcox
2008-05-17 19:23   ` Michal Simek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox