Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Sep 2014 20:16:50 -0400
From:      Henry Hu <henry.hu.sh@gmail.com>
To:        Vassilis Laganakos <vassilis@einval.com>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: net-im/skype-[devel] won't connect
Message-ID:  <CAEJt7hYZ2AxefmByGBuwGSJxVM=3a6B1FRzdPed%2BDK1pV48Tpg@mail.gmail.com>
In-Reply-To: <20140901235143.GA9721@halon.org.uk>
References:  <20140813153823.E448F601EF@smtp.hushmail.com> <CACdU%2Bf-CUE-J2avpGWfNuh9U6Z_=Pjobf4t54cUNWJr2FgAtHQ@mail.gmail.com> <20140813210922.GC11788@halon.org.uk> <2936347.WYbkSbjIbI@notebook.com> <20140818152759.GG9346@halon.org.uk> <CAEJt7haPuVi0=DLZVOgxPaRgomkbO0moM3F54QVH7JJ6uKKsGw@mail.gmail.com> <20140901235143.GA9721@halon.org.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Sep 1, 2014 at 7:51 PM, Vassilis Laganakos <vassilis@einval.com>
wrote:

> Hello Henry,
>
> On Mon, Sep 01, 2014 at 07:12:33PM -0400, Henry Hu wrote:
> > On Mon, Aug 18, 2014 at 11:27 AM, Vassilis Laganakos <
> vassilis@einval.com>
> > wrote:
> >
> > > Hi Artyom,
> > >
> > > On Mon, Aug 18, 2014 at 06:16:02PM +0300, Artyom Mirgorodskiy wrote:
> > > > So I try again to run pulse audio and got the following error in
> syslog:
> > > > linux: pid 95238 (pacat): syscall ppoll not implemented
> > > >
> > > > Anybody can help how to implement this syscall on linuxulator?
> > > >
> > > Didn't get the chance to update the thread on the work on this (albei=
t
> for
> > > -f20). I have an implementation for that syscall, as well for
> fstatfs64,
> > > and
> > > seems to be working. Just need to test it a bit more and I'll push it
> for
> > > formal review and more testing :)
> > >
> > > I did push the linux-f20-pulseaudio-libs and related packages in the
> git
> > > repo for the -f20 libs the weekend.
> > >
> >
> > Finally it works...
>
> Great stuff! :)
>
> > First, compile this to an .so and use LD_PRELOAD to load it:
> >
> > #include <string.h>
> > #include <pthread.h>
> > #include <stdlib.h>
> > #include <unistd.h>
> > #include <assert.h>
> >
> > typedef int pa_bool_t;
> >
> > typedef struct pa_mutex_t {
> >     pthread_mutex_t mutex;
> > } pa_mutex;
> >
> > char* pa_machine_id() {
> >     char buf[256];
> >     assert(gethostname(buf, sizeof(buf)) =3D=3D 0);
> >     return strdup(buf);
> > }
> >
> > pa_mutex* pa_mutex_new(pa_bool_t recursive, pa_bool_t inherit_priority)=
 {
> >     // we don't support inherit_priority for now
> >     pa_mutex *m;
> >     pthread_mutexattr_t attr;
> >
> >     assert(pthread_mutexattr_init(&attr) =3D=3D 0);
> >
> >     if (recursive)
> >         assert(pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE=
)
> =3D=3D 0);
> >
> >     m =3D malloc(sizeof(pa_mutex));
> >
> >     assert(pthread_mutex_init(&m->mutex, &attr) =3D=3D 0);
> >
> >     return m;
> > }
> >
> > This solves the connection problem with pulse audio, but you still can'=
t
> > make calls or send messages. You need the experimental epoll patch from
> > http://lev.vlakno.cz/~rdivacky/patches/linux_epoll.patch for the epoll
> > syscall.
>
> Sending messages works fine with the lemul branch (contains the epoll
> stuff,
> among others), using the -f20 ports. Are you using -f10?
>

I'm using -c6 from github.com/xmj/linux-ports.


> > You may also need to disable shared memory at the server side of
> > pulse audio by changing /usr/local/etc/pulse/daemon.conf.
> >
> I just had to disable that from the linux client side of pulse audio, in
> /compat/linux/etc/pulse/client.conf and didn't touch the server side. - I
> have it as a patch in the port:
> (
> https://github.com/vassilisl/freebsd-linux_base-f20/tree/master/audio/lin=
ux-f20-pulseaudio-libs
> )
>

I did this because if I don't disable it, in my small test program it fails
to record and says "Received SHM frame on a socket where SHM is disabled".


>
> > Then it works. Sound input / sound output / webcam all ok.
> >
> Excellent!
>
> > The main problems:
> > 1. pa_machine_id returns dbus' machine id, where on freebsd it should
> > return the machine's name.
> If you enter the machine's name in /compat/linux/etc/mahine-id (IIRC), th=
at
> works around that problem as well - but it is a hack :)
>

I don't know which is more hackish, but I'll try that also.

>
> > 2. priority inherited mutexes are not supported by the linux emulation
> > layer yet
> > 3. epoll is not implemented
> >
> 3 is present in lemul, and 2 are being added as well.
>

Great work! It's good to know that they are being implemented.


> >
> > >
> > > Cheers,
> > > Vassilis
> > >
> > > > On Wednesday 13 August 2014 22:09:22 Vassilis Laganakos wrote:
> > > > > Hi,
> > > > >
> > > > > On Wed, Aug 13, 2014 at 10:47:25AM -0500, Scot Hetzel wrote:
> > > > > > On Wed, Aug 13, 2014 at 10:38 AM, Kenta S. <kentas@hush.com>
> wrote:
> > > > > > > Hello. This afternoon when I try to sign onto Skype, I get:
> > > > > > >
> > > > > > > "Periodic UIC Update Failed"
> > > > > > >
> > > > > > > I haven't updated ports recently. Does anyone have an idea?
> > > > > > > I heard Skype was closing down old versions.
> > > > > > >
> > > > > >
> > > > > > I had received the following e-mail from Skype a few days ago:
> > > > > >
> > > > > > On Fri, Aug 8, 2014 at 7:53 PM, Skype <noreply3@emails.skype.co=
m
> >
> > > wrote:
> > > > > > >
> > > > > > > Your Skype for Linux version is being retired.
> > > > > > > Update today. =C2=BB
> > > > > > > Can't see this email properly? Forgotten your password?
> > > > > > > Your Skype for Linux version is being retired. Update today.
> > > > > > > Dear swhetzel,
> > > > > > >
> > > > > > > We are now retiring older versions of Skype and it appears
> that at
> > > some
> > > > > > > point you signed into Skype with one of these. To continue
> signing
> > > into
> > > > > > > Skype on Linux you'll need to download the latest version. Th=
e
> new
> > > > > > > version comes with improved performance, the latest features
> and
> > > > > > > security updates, so you'll get the best possible Skype
> experience.
> > > > > > >
> > > > > > > If you're on the latest version of Skype, the above will not
> apply.
> > > > > > >
> > > > > > > Update now at http://www.skype.com/download.
> > > > > >
> > > > > > Someone will need to update the Skype port to the latest Linux
> > > version
> > > > > > and see if it works on our current version of Linux emulation.
> > > > > >
> > > > >
> > > > > I've read in various places (and tested myself with a couple of
> > > version on
> > > > > Linux) that any version before skype 4.3.0.37 will not connect.
> > > > >
> > > > > The skype port at:
> > > https://github.com/vassilisl/freebsd-ports/tree/master/net-im/skype4
> > > > > will connect (if you use the f20 ports
> > > https://github.com/vassilisl/freebsd-linux_base-f20 ;) )
> > > > > but it doesn't have sound working. Both xmj and I are working on
> > > getting
> > > > > that version of Skype on c6 and f20 linux emulation bases
> > > respectivelly,
> > > > > which basically means get it to talk to pulseaudio.
> > > > >
> > > > > If anyone has experience with that, please shout! :)
> > > > >
> > > > > Regards,
> > > > > Vassilis
> > > > >
> > > > >
> > > > >
> > > > --
> > > > Artyom Mirgorodskiy
> > >
> >
> >
> >
> > --
> > Cheers,
> > Henry
>
> Cheers,
> Vassilis
>



--=20
Cheers,
Henry



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAEJt7hYZ2AxefmByGBuwGSJxVM=3a6B1FRzdPed%2BDK1pV48Tpg>