LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Three MPlayer and Xine issues (https://www.linuxquestions.org/questions/slackware-14/three-mplayer-and-xine-issues-755419/)

w1k0 09-16-2009 07:34 PM

Now I run the machine with DRI enabled and I observe how frequently it'll hang up. Since I installed 6.12.4 version of ati driver my machine hung up once.

I don't want to downgrade the system so I have to learn to live with open source drivers. The current 6.12.4 version of ati driver is much better than 6.8.0 version provided with Slackware 12.1 -- my first Slackware with kernel 2.6.x. It was impossible to work with radeon driver and ATI Mobility Radeon X1300 in those times so I was forced to use fglrx driver. Now I can get rid of the proprietary ATI driver. The current generic ati driver isn't perfect but it's acceptable.

disturbed1 09-16-2009 07:58 PM

Quote:

Originally Posted by w1k0 (Post 3686131)
The current generic ati driver isn't perfect but it's acceptable.

This is a mixed blessing to me. At least progress has been made.

Be sure to follow the driver development. Their mailing list is active. If you don't want to subscribe with your email address, you can always use Gname.org and your news reader (Pan ;) ) by adding news.gmane.org to the servers list. http://gmane.org/faq.php

vinegaroon 09-16-2009 08:06 PM

For the aspect ratio have you tried something like:
mplayer -monitoraspect 16:9 video.avi

Also do you have libdvdcss installed? That could explain the DVD issues.

w1k0 09-16-2009 08:34 PM

Quote:

Originally Posted by disturbed1 (Post 3686153)
Be sure to follow the driver development.

I will. Thank you.

Quote:

Originally Posted by vinegaroon (Post 3686164)
For the aspect ratio have you tried something like:
mplayer -monitoraspect 16:9 video.avi

It gives the same results as without that option -- aspect ratio 4:3.

Quote:

Also do you have libdvdcss installed?
Of course.

w1k0 09-16-2009 08:40 PM

Quote:

Originally Posted by disturbed1 (Post 3686153)
This is a mixed blessing to me. At least progress has been made.

In comparison to the old 6.8.0 version driver it's a great progress. That old driver was useless with X1300 -- new radeon driver is usable. With Slackwares 12.1 and 12.2 I was forced to use fglrx driver. Now I can use radeon driver with acceptable results.

w1k0 10-05-2009 04:00 PM

I edited the message #12 according to the suggestions by BrZ. Now to compile xf86-video-ati driver you have to put in the desired directory xorg-server.

***

I tested new video driver once again.

As before I started Window Maker on two accounts. Both instances used a few dockable applications including wminfo. To perform the tests I started Midnight Commander in xterm window.

I did three attempts with each Mesa version. I counted the time from the moment when I pressed and kept Enter key after typing mc command to the moment when the machine hung up. The following results are the numbers of the seconds from pressing Enter to hang up the machine:

● xf86-video-ati 6.12.4, mesa 7.5 -- 15, 0, 34
● xf86-video-ati 6.12.4, mesa 7.5.2 -- 8, 41, 4

These results aren't such spectacular as presented in post #9. For some reason ATI driver 6.12.4 works now worse than before.

BrZ 10-05-2009 05:08 PM

Take it easy, you do not need to rebuild x, only the structure to compile any lib or driver. Even to compile some of them standalone. But only xf86-video-ati maybe not the solution for your libdri.so being taged as old...

Slackware 13 came with a good working set. My Xpress1100, and ati 9600, 8500 and 7500 had zero problems with mesa 7.5 and ati-6.12.2.

Try this combo: Mesa-7.5.1 (current) and ati-6.12.2 and don't mess with xorg-server, please.


I built mine fresh just to play with radeon now taht I'm free from fglrx =]

w1k0 10-05-2009 07:44 PM

I tried current mesa as you suggested:

● xf86-video-ati 6.12.2, mesa 7.5.1 -- 42, 5, 21
● xf86-video-ati 6.12.4, mesa 7.5.1 -- 13, 2, 21

Then I tried once again default Slackware versions of programs:

● xf86-video-ati 6.12.2, mesa 7.5 -- 3, 12, 10

The result for default program's version is significantly worse in my case. The results for mesa 7.5.1 (with different ati driver versions) and for ati driver 6.12.4 (with different mesa versions) are similar. Maybe I have to test each configuration not three but ten times...

forum1793 10-06-2009 08:31 PM

I don't know but it's possible you might have some luck with newer drm modules. The drm code has kernel modules like radeon.ko and drm.ko as well as the libdrm, which comes in the slackware package.

I build it all at once but your slackbuild script (or do it manually) will need to go into the linux-core subdirectory and make the drivers you want. This will include drm, radeon.

Below is the working portion of my build script. You will have to change it for your setup. In this I build for 64 bit and I don't tar the source. If you do the git clone method you will get a drm subdirectory but the prgnam is libdrm so manually change that after you git the code. Backup your radeon.ko and drm.ko for the /lib/...kernel you are using. I build drm, then mesa, then xfree...ati. If it is worse then replace the kernel modules from the backups you make and post at phoronix and devs might respond. Give feedback. Good luck.

Edit: You also might need symlink from /usr/X11R6/lib/xorg/modules/dri to /usr/lib/dri. I can't remember but I have something like this with the 64 bit (but then its .../lib64/...). This is for mesa drivers which should provide radeon_drv.so, and r300_drv.so for the X1300.

Code:

PRGNAM=libdrm
VERSION=${VERSION:-2.4.13}
ARCH=${ARCH:-x86_64}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT

#tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 #if using tarred src
#since not tarred, we will just copy our src directory

cd $TMP
rm -rf $PRGNAM
cp -r $CWD/$PRGNAM .
cd $TMP/$PRGNAM

chown -R root:root .
find . \
 \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
 -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
 -exec chmod 644 {} \;

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \

./autogen.sh \
  --prefix=/usr \
  --libdir=/usr/lib64

make
make install DESTDIR=$PKG

#now build radeon and drm.
TLIB=lib/modules/`uname -r`/kernel/drivers/gpu/drm
TLIB2=$TLIB/radeon
cd $TMP/$PRGNAM/li*core
make drm.o radeon.o
mkdir -p $PKG/$TLIB2
cp $TMP/$PRGNAM/li*core/drm.ko $PKG/$TLIB/drm.ko
cp $TMP/$PRGNAM/li*core/radeon.ko $PKG/$TLIB2/radeon.ko

# no current man files in the git
# No useful docs in the git

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz


w1k0 10-07-2009 03:37 PM

Thank you for your assistance, forum1793.

I tested the system with the newest drm, new mesa and the newest ati driver:

● drm 2.4.14, xf86-video-ati 6.12.4, mesa 7.5.2 -- 3, 5, 8

The results were worse than with default 2.6.29.6 kernel.

Finally I came back to default versions of all programs:

● xf86-video-ati 6.12.2, mesa 7.5 -- 14, 9, 1

These results seemed to be slightly better.

Unfortunately I couldn't try mesa 7.6 because of errors during the compilation.

forum1793 10-08-2009 10:33 PM

OK but in drm did you specifically go into linux-core and tell it to make drm.o and radeon.o?

That does not happen with the simple configure, make, make install. The .ko kernel modules it makes need to be put in your /lib/modules/<your kernel number>/kernel/drivers/char/drm area.

What errors are you getting in mesa? I had to disable and limit what was built or I got errors. Try adding the following to your script in the configure or autogen part:
Code:

--disable-gallium \
 --with-dri-drivers=swrast,radeon,r600

Although you will want to either delete r600 (which is for my hd3200 and many other newer boards) or replace it with that for your card. Maybe r300?

I'm not sure we need swrast either but I've had it in my script and never got around to checking.

w1k0 10-09-2009 08:48 AM

In my case compiled modules don't go to:

/lib/modules/<my kernel number>/kernel/drivers/char/drm

but to:

/lib/modules/<my kernel number>/kernel/drivers/gpu/drm/

Xorg.log.0 reports loading r300_dri.so module:

Code:

(II) AIGLX: enabled GLX_MESA_copy_sub_buffer
(II) AIGLX: enabled GLX_SGI_make_current_read
(II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
(II) AIGLX: enabled GLX_texture_from_pixmap with driver support
(II) AIGLX: Loaded and initialized /usr/lib/xorg/modules/dri/r300_dri.so

When I try to compile mesa 7.6 the compilation ends with these errors messages:

Code:

radeon_screen.c: In function 'radeonCreateScreen':
radeon_screen.c:1025: error: 'R600_SCRATCH_REG_OFFSET' undeclared (first use in this function)
radeon_screen.c:1025: error: (Each undeclared identifier is reported only once
radeon_screen.c:1025: error: for each function it appears in.)
gmake[5]: *** [radeon_screen.o] Error 1
gmake[5]: Leaving directory `/tmp/Mesa-7.6/src/mesa/drivers/dri/r200'
gmake[4]: *** [subdirs] Error 1
gmake[4]: Leaving directory `/tmp/Mesa-7.6/src/mesa/drivers/dri'
gmake[3]: *** [default] Error 1
gmake[3]: Leaving directory `/tmp/Mesa-7.6/src/mesa/drivers'
gmake[2]: *** [driver_subdirs] Error 2
gmake[2]: Leaving directory `/tmp/Mesa-7.6/src/mesa'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory `/tmp/Mesa-7.6/src'
make: *** [default] Error 1

I changed in mesa.SlackBuild that line:

Code:

  --with-dri-drivers="$DRI_DRIVERS" \
to these lines:

Code:

  --disable-gallium \
  --with-dri-drivers=swrast,radeon,r300 \

The result was exactly the same as before -- compilation ended with the same errors messages.

***

Quote:

Originally Posted by forum1793 (Post 3712971)
OK but in drm did you specifically go into linux-core and tell it to make drm.o and radeon.o?

That's right... This is my libdrm.SlackBuild:

Code:

PRGNAM=libdrm
VERSION=${VERSION:-2.4.14}
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT

cd $TMP
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
rm -rf $PRGNAM
# cp -r $CWD/$PRGNAM .
cd $TMP/$PRGNAM-$VERSION

chown -R root:root .
find . \
 \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
 -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
 -exec chmod 644 {} \;

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \

./autogen.sh \
  --prefix=/usr \
  --libdir=/usr/lib

make
make install DESTDIR=$PKG

TLIB=lib/modules/`uname -r`/kernel/drivers/gpu/drm
TLIB2=$TLIB/radeon
cd $TMP/$PRGNAM-$VERSION/li*core
make drm.o radeon.o
mkdir -p $PKG/$TLIB2
cp $TMP/$PRGNAM-$VERSION/li*core/drm.ko $PKG/$TLIB/drm.ko
cp $TMP/$PRGNAM-$VERSION/li*core/radeon.ko $PKG/$TLIB2/radeon.ko

mkdir -p $PKG/install
# cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz


w1k0 10-10-2009 11:45 AM

It seems I finally solved the problem of DRI and DRI2 causing random system hang ups. The solution is to use the newest GIT version of xf86-video-ati driver. I described it here.

I tried that driver with both current mesa 7.5.1 and default mesa 7.5 (build 2). I used the same method of forcing hang ups as described here and I wasn’t able to hang up the system mangling Midnight Commander for 300 seconds. So I assume the problem is solved.

In result I can load DRI* without causing random system hang ups.

w1k0 10-11-2009 09:26 AM

I found simpler method of avoid random system hang ups and I described it here. In short: it's enough to put Option "AccelMethod" "EXA" line into Section "Device" of xorg.conf. It works with default xf86-video-ati 6.12.2 build 2 driver.

agentdcooper 10-11-2009 04:18 PM

w1k0, dude u are an ANIMAL! I wish I had someone like you to troubleshoot intel video driver issues & slackware 13.0 :D


All times are GMT -5. The time now is 01:46 PM.