Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Apr 2012 16:30:59 +0200
From:      Alexander Leidinger <Alexander@Leidinger.net>
To:        Alexander Best <arundel@freebsd.org>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: [PATCH] pipe2 for Linuxulator
Message-ID:  <20120415163059.0000715d@unknown>
In-Reply-To: <20120415130306.GA95208@freebsd.org>
References:  <20120414155427.000056c1@unknown> <20120414203256.GB19712@freebsd.org> <20120414224746.000005fb@unknown> <20120415000246.0000736b@unknown> <20120415000216.GA53624@freebsd.org> <20120415101157.GA67049@freebsd.org> <20120415112308.GA77985@freebsd.org> <20120415134444.000005cc@unknown> <20120415115112.GA83717@freebsd.org> <20120415143441.00000948@unknown> <20120415130306.GA95208@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 15 Apr 2012 13:03:06 +0000 Alexander Best <arundel@freebsd.org>
wrote:

> On Sun Apr 15 12, Alexander Leidinger wrote:
> > On Sun, 15 Apr 2012 11:51:12 +0000 Alexander Best
> > <arundel@freebsd.org> wrote:
> > 
> > > ahh ok. i've managed to get some stats via stats_timing.d. this
> > > is a snapshot during which a newly loaded tab in chromium was
> > > unresponsive for about 5 seconds. without the linux flash plugin
> > > running i never experienced such lock ups.
> > > 
> > > i've attached the d-script stats.
> > 
> > What about the trace_futexes script and the two check_* scripts? The
> > stats show that there is a lot of work spend in the futexes.
> 
> i'm having problems with those scripts. they have a negative impact
> on the linux processes. when i have the player at www.mixcloud.com
> running and run those scripts the music stops and the flash graphics
> get all distorted. here's some output from the trace_futexes.d script:
> 
> otaku% sudo ./trace_futexes.d
> dtrace: 808 dynamic variable drops with non-empty dirty list
> dtrace: 833 failed speculations (available buffer(s) still busy)

You should increase the buffers in the scripts, they are overflowing.

[...]
> ERROR: missing_access_check in linuxulator32:futex:futex_atomic_op

This is missing code in the kernel... or a superfluous comment.

>               kernel`ia32_syscall+0x299
>               kernel`0xffffffff805b05e5
> 
>               dtrace: ERROR: open  failed: No such file or directory
> `0x287b6533
> Fatal error 'mutex is on list' at line 424 in
> file /usr/github-freebsd-head/lib/libthr/thread/thr_mutex.c (errno =
> 0)

No idea.

> this is from the check_error.d script:
> 
> otaku% sudo ./check_error.d
> ERROR: sleep_error in linuxulator32:futex:futex_sleep

Well... the sx_sleep returned with a non-null value. I assume this
means a timeout fired. No idea if it is good or bad.

>               kernel`ia32_syscall+0x299
>               kernel`0xffffffff805b05e5
> 
>               0x287b6278
>               0x2a12800029d5fa5c
> ERROR: sleep_error in linuxulator32:futex:futex_wait

As above.

>               kernel`ia32_syscall+0x299
>               kernel`0xffffffff805b05e5
> 
>               0x287b6278
>               0x2a12800029d5fa5c

> the  check_internal_locks.d scripts seems to work fine. i think we
> talked about the failed-speculation-warnings beforehand and that they
> aren't critical:

Yes and no... you do not have enough buffers to store all the info the
script want to store. As such it does not work as intended.


> Number of locks per type:
>   emul_shared_rlock                                                 3
>   emul_shared_wlock                                                37
>   emul_lock                                                        55
>   futex_mtx                                                     31179

Depending on how long you traced: that's a lot of futex operations.

Bye,
Alexander.

-- 
http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120415163059.0000715d>