[bug] mkinitrd on arch64

I´m using latest mkinitrd from arch32 current 1.01-24.
==> Starting build()...
patching file include/applets.h
patching file include/usage.h
patching file init/Config.in
patching file init/Makefile.in
patching file init/mkrootdev.c
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/mkdep /var/abs/local/mkinitrd/src/busybox-1.01/scripts/mkdep.c
gcc -I/var/abs/local/mkinitrd/src/busybox-1.01/include -I/var/abs/local/mkinitrd/src/busybox-1.01/include -I/var/abs/local/mkinitrd/src/busybox-1.01/libbb -Wall -Wstrict-prototypes -Wshadow -Os -fomit-frame-pointer -D_GNU_SOURCE -DNDEBUG -c -o /var/abs/local/mkinitrd/src/busybox-1.01/applets/applets.o /var/abs/local/mkinitrd/src/busybox-1.01/applets/applets.c
In Datei, eingefügt von /var/abs/local/mkinitrd/src/busybox-1.01/applets/applets.c:33:
/var/abs/local/mkinitrd/src/busybox-1.01/include/busybox.h:27:20: Fehler: config.h: Datei oder Verzeichnis nicht gefunden
make: *** [/var/abs/local/mkinitrd/src/busybox-1.01/applets/applets.o] Fehler 1
* Debugging Options
Build BusyBox with Debugging symbols (CONFIG_DEBUG) [N/y/?] n
install: Aufruf von stat für ,,busybox" nicht möglich: Datei oder Verzeichnis nicht gefunden
[andyrtr@workstation64 mkinitrd]$ ls -l /var/abs/local/mkinitrd/src/busybox-1.01/include/
insgesamt 176
-rw-r--r-- 1 andyrtr users 20359 2005-12-21 22:06 applets.h
-rw-r--r-- 1 andyrtr users 3329 2005-08-17 03:29 busybox.h
-rw-r--r-- 1 andyrtr users 6936 2005-12-21 22:06 config.h
-rw-r--r-- 1 andyrtr users 1617 2005-08-17 03:29 dump.h
-rw-r--r-- 1 andyrtr users 3964 2005-08-17 03:29 grp_.h
-rw-r--r-- 1 andyrtr users 1038 2005-08-17 03:29 inet_common.h
-rw-r--r-- 1 andyrtr users 17549 2005-08-17 03:29 libbb.h
-rw-r--r-- 1 andyrtr users 3577 2005-08-17 03:29 pwd_.h
-rw-r--r-- 1 andyrtr users 3242 2005-08-17 03:29 shadow_.h
-rw-r--r-- 1 andyrtr users 3620 2005-08-17 03:29 unarchive.h
-rw-r--r-- 1 andyrtr users 101069 2005-12-21 22:06 usage.h
So busybox won´t be created and not included into the package. I guess there´s something wrong with the include/config.h or include/busybox.h.  :?:

Got it
http://bugs.gentoo.org/show_bug.cgi?id=59280
change it this way:
# $Id: PKGBUILD,v 1.39 2005/12/18 18:59:57 judd Exp $
# Maintainer: Tobias Powalowski <[email protected]>
pkgname=mkinitrd
pkgver=1.01
pkgrel=24
pkgdesc="A tool to create the initrd image"
url="http://www.busybox.org/"
depends=('bash') 
backup=('etc/mkinitrd.conf')
source=(http://www.busybox.net/downloads/busybox-$pkgver.tar.bz2
        bb-mkrootdev.patch mkinitrd config mkinitrd.conf)
md5sums=('f250842dae2854a38470ed16a46bba66' '00e92e5dca9749b3a18b1c5af448eca7'
         '7efceea0df9daf097e202667e28f236f' '92465f79f20fd0bd9d503a921c605165'
         'ecf76ecf376d15090a2176f01ecd2f94')
build() {
  cd $startdir/src/busybox-$pkgver
  patch -Np1 -i ../bb-mkrootdev.patch || return 1
  cp ../config .config
  make -j1 OPTIMIZATION="${CFLAGS}"
  install -D -m 755 busybox $startdir/pkg/sbin/busybox
  install -D -m 755 $startdir/src/mkinitrd $startdir/pkg/sbin/mkinitrd
  install -D -m 644 $startdir/src/mkinitrd.conf $startdir/pkg/etc/mkinitrd.conf
  mkdir -p $startdir/pkg/initrd
SMP breaks the creating of the config.h and some other things. And without the OPTIMIZATION no flags are taken.
Now it looks good here. You should add it in the next release!
Going to improve the arch64 kernel package.
AndyRTR

Similar Messages

  • 4gb not showing up in Arch64

    Hi all.
    I finally installed Arch64 to take advantage of my 4gb of RAM and my Core 2 Duo. But I am having some problems. I don't think Arch sees all of it. It should not be a hardware problem because my BIOS correctly displays 4 gb. I left my 32-bit Arch on another partition and it actually sees more than Arch64.
    Here is my meminfo under Arch64
    $ cat /proc/meminfo
    MemTotal: 2996504 kB
    MemFree: 2856492 kB
    Buffers: 7852 kB
    Cached: 63932 kB
    SwapCached: 0 kB
    Active: 59900 kB
    Inactive: 51180 kB
    SwapTotal: 4249152 kB
    SwapFree: 4249152 kB
    Dirty: 220 kB
    Writeback: 0 kB
    AnonPages: 39476 kB
    Mapped: 19176 kB
    Slab: 11872 kB
    SReclaimable: 6888 kB
    SUnreclaim: 4984 kB
    PageTables: 2792 kB
    NFS_Unstable: 0 kB
    Bounce: 0 kB
    CommitLimit: 5747404 kB
    Committed_AS: 51408 kB
    VmallocTotal: 34359738367 kB
    VmallocUsed: 2260 kB
    VmallocChunk: 34359736099 kB
    And here is my meminfo under 32-bit arch
    $ cat /proc/meminfo
    MemTotal: 3115920 kB
    MemFree: 2951104 kB
    Buffers: 7640 kB
    Cached: 91980 kB
    SwapCached: 0 kB
    Active: 65716 kB
    Inactive: 71328 kB
    HighTotal: 2228032 kB
    HighFree: 2086300 kB
    LowTotal: 887888 kB
    LowFree: 864804 kB
    SwapTotal: 4249152 kB
    SwapFree: 4249152 kB
    Dirty: 228 kB
    Writeback: 0 kB
    AnonPages: 37276 kB
    Mapped: 22288 kB
    Slab: 8352 kB
    SReclaimable: 4420 kB
    SUnreclaim: 3932 kB
    PageTables: 988 kB
    NFS_Unstable: 0 kB
    Bounce: 0 kB
    CommitLimit: 5807112 kB
    Committed_AS: 88664 kB
    VmallocTotal: 116728 kB
    VmallocUsed: 45044 kB
    VmallocChunk: 66036 kB
    Just for kicks, I took out one stick and both Arch64 and 32-bit see the same 3 gb.
    Any ideas?

    Its an MSI P6N Platnium with an Nvidia 650i chipset.
    I looked through the dmesg and I found one line that seems to indicate the problem.
    WARNING: BIOS bug: CPU MTRRs don't cover all of memory, losing 1024MB of RAM.
    So I guess this means I have to update the BIOS, according to this thread.
    http://www.hardforum.com/showthread.php?t=1164174
    I have never had to update a BIOS before, but all the how-to's require either a floppy drive, or a Windows installation, of which I have neither.  I could install XP in a pinch and run the BIOS update utility but I really don't want to have to do that.

  • [svn] 3391: Fix fast-track bug SDK-17068.

    Revision: 3391
    Author: [email protected]
    Date: 2008-09-26 17:07:25 -0700 (Fri, 26 Sep 2008)
    Log Message:
    Fix fast-track bug SDK-17068. Make sure assignDisplayObjects() is called before calling validateProperties() on child graphics objects.
    Bugs: SDK-17068 - Cannot apply transform at runtime for Rect, BitmapGraphic, and Line
    QA: This should fix the graphics mustella failures
    Checkintests: pass
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-17068
    http://bugs.adobe.com/jira/browse/SDK-17068
    Modified Paths:
    flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/Group.as

    onearm wrote:
    Svn revision 442 doesn't compile on Arch64:
    [ 4%] [ 5%] Building CXX object src/CMakeFiles/guayadeque.dir/AlListBox.o
    Building CXX object src/CMakeFiles/guayadeque.dir/ArListBox.o
    In file included from /tmp/yaourt-tmp-gianluca/aur-guayadeque-svn/guayadeque-svn/src/guayadeque/Trunk/src/LastFMPanel.h:25,
    from /tmp/yaourt-tmp-gianluca/aur-guayadeque-svn/guayadeque-svn/src/guayadeque/Trunk/src/MainFrame.h:27,
    from /tmp/yaourt-tmp-gianluca/aur-guayadeque-svn/guayadeque-svn/src/guayadeque/Trunk/src/AlListBox.cpp:27:
    /tmp/yaourt-tmp-gianluca/aur-guayadeque-svn/guayadeque-svn/src/guayadeque/Trunk/src/PlayerPanel.h:25:28: error: AutoScrollText.h: No such file or directory
    [ 7%] Building CXX object src/CMakeFiles/guayadeque.dir/ArrayStringArray.o
    [ 8%] Building CXX object src/CMakeFiles/guayadeque.dir/AudioScrobble.o
    make[2]: *** [src/CMakeFiles/guayadeque.dir/AlListBox.o] Error 1
    make[2]: *** Waiting for unfinished jobs....
    make[1]: *** [src/CMakeFiles/guayadeque.dir/all] Error 2
    make: *** [all] Error 2
    Thanks for the bug report. It was a test i was doing but finally decided to not include it but left this line by error.
    It have been fixed in svn 443.
    Thanks again

  • Some bugs related to ktorrent (only happening in Archlinux)

    Hi everybody!
    I'm not quiet sure if this is the right section for this, but maybe somebody has some answers for me.
    I'm using ktorrent since a couple of days to replace Azureus. And I found out that ktorrent always freezes my system when storing my torrent files on an reiser4 partition. I talked about the with the devs of ktorrent and they tried it on some ubuntu system and it worked like a charm for them. However my system still freezes and no matter what I do I can't fix this. So I switched back to ext3 in order to use ktorrent. And with ext3 everything worked and the freezes are gone. But I found another annoying bug. When running beryl and starting ktorrent it'll start as an systray icon. So far so good, but as soon as I click on that systray icon the whole xserver crashes the same moment when I click the icon in order to restore the ktorrent window. So I asked the developers of ktorrent again and the told me again that it works on their system and there are no crashes of the xserver at all. I tried it with the current beryl version and also with the previous RC1 from AUR but both times my xserver crashed in the same way.
    So right now I don't know what to do to get rid of these problems. So maybe somebody can help...
    BTW, I'm running Arch64 if that matters.
    Thanks a lot!

    Well, I first wanted to know if there are others out there having the same problems before reporting to flyspray...
    Anyway, for the reiser4 issue I don't have any output to the console, because I wasn't able to switch to console. The System froze that fast, there wasn't even output on the console when I ran it on front.
    About the beryl problem: Where do I have to look for the output? Is it in the /var/log/Xorg.0.log file?
    Thanks!

  • [Arch64] coreutils-6.5-1 & 6.5-1.1 broke, wait

    I'm seeing alot of arch64 users reporting trouble with the coreutils 6.5-1 and 6.5-1.1 packages. Namely with the loss of 'su' in 6.5-1 and segmentation faults with 'ls' in 6.5-1.1
    DO NOT UPGRADE to these versions!
    See here for latest information on the 6.5-1.1 version and ls issues:
    http://bbs.archlinux.org/viewtopic.php?p=209774#209774
    Thanks.

    /bin/su is missing in arch64 pkg -1 but fixed in 1.1 version.
    ls got unexpected broken in 6.5 coreutils package for both archs. we will soon test a patch: http://lists.gnu.org/archive/html/bug-c … 00153.html
    changelog was short, maybe too short  :?

  • [SOLVED] Intel 5300 wifi on new Arch64 install

    I just bought a new Sager NP9262 laptop (but not really... it's huge, heavy, and sports a quad-core Q9650 processor), and put 64-bit Arch on it.  I've managed to get everything set up on it except for the wireless chip, an intel 4965.  I've downloaded the correct firmware (iwlwifi-4965-ucode) and the kernel module exists, but there seems to be a more basic problem.  hwdetect --show-net doesn't list the card at all, and lspci -k gives a rather unhelpful line saying
    Network controller: Intel Corporation Device 4235
    and lists no kernel modules which could work with the device.  Ideas?
    Last edited by tavianator (2008-09-06 18:22:37)

    EDIT:  now uses 2.6.27-rc6, which I haven't tested.  For something I'm sure works on my laptop, set '_rc' to '-rc5' and '_git' to '-git9', and uncomment the various commented-out lines dealing with -git patches.
    Okay.  First start with everything from /var/abs/core/kernel26 in a separate directory.  Then, replace PKGBUILD with this
    PKGBUILD:
    # $Id: PKGBUILD 10337 2008-08-26 21:10:56Z tpowa $
    # Maintainer: Tobias Powalowski <[email protected]>
    # Maintainer: Thomas Baechler <[email protected]>
    pkgname=kernel26
    _basekernel=2.6.26
    pkgver=2.6.27
    pkgrel=1
    _rc=-rc6
    _git=
    pkgdesc="The Linux Kernel and modules"
    arch=(i686 x86_64)
    license=('GPL2')
    groups=('base')
    url="http://www.kernel.org"
    backup=(etc/mkinitcpio.d/${pkgname}.preset)
    depends=('coreutils' 'module-init-tools' 'mkinitcpio>=0.5.18')
    # pwc, ieee80211 and hostap-driver26 modules are included in kernel26 now
    # nforce package support was abandoned by nvidia, kernel modules should cover everything now.
    # kernel24 support is dropped since glibc24
    replaces=('kernel24' 'kernel24-scsi' 'kernel26-scsi'
    'alsa-driver' 'ieee80211' 'hostap-driver26'
    'pwc' 'nforce' 'squashfs' 'unionfs' 'ivtv'
    'zd1211' 'kvm-modules' 'iwlwifi' 'rt2x00-cvs')
    install=kernel26.install
    source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_basekernel.tar.bz2
    http://kernel.org/pub/linux/kernel/v2.6/testing/patch-$pkgver$_rc.bz2
    # http://kernel.org/pub/linux/kernel/v2.6/snapshots/patch-$pkgver$_rc$_git.bz2
    # the main kernel config files
    config config.x86_64
    # standard config files for mkinitcpio ramdisk
    kernel26.preset)
    md5sums=('5169d01c405bc3f866c59338e217968c'
    'd3a173a00e15a6bf3c76068537a5c069'
    '4fd1071a8dc2ea993aed81d5920de18d'
    'd5ad1f296356d159a2616a49d98b3434'
    '25584700a0a679542929c4bed31433b6')
    build() {
    KARCH=x86
    cd $startdir/src/linux-$_basekernel
    # Add rc patches
    patch -Np1 -i $startdir/src/patch-${pkgver}${_rc} || return 1
    # patch -Np1 -i $startdir/src/patch-${pkgver}${_rc}${_git} || return 1
    if [ "$CARCH" = "x86_64" ]; then
    cat ../config.x86_64 >./.config
    else
    cat ../config >./.config
    fi
    # build the full kernel version to use in pathnames
    . ./.config
    ### next line is only needed for rc kernels
    #_kernver="2.6.25${CONFIG_LOCALVERSION}"
    _kernver="${pkgver}${_rc}${_git}${CONFIG_LOCALVERSION}"
    # load configuration
    yes "" | make config
    # build!
    # stop here
    # this is useful to configure the kernel
    #msg "Stopping build"
    #return 1
    make bzImage modules || return 1
    mkdir -p $startdir/pkg/{lib/modules,boot}
    make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
    cp System.map $startdir/pkg/boot/System.map26
    cp arch/$KARCH/boot/bzImage $startdir/pkg/boot/vmlinuz26
    install -D -m644 Makefile \
    $startdir/pkg/usr/src/linux-${_kernver}/Makefile
    install -D -m644 kernel/Makefile \
    $startdir/pkg/usr/src/linux-${_kernver}/kernel/Makefile
    install -D -m644 .config \
    $startdir/pkg/usr/src/linux-${_kernver}/.config
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/include
    for i in acpi asm-{generic,x86} config linux math-emu media net pcmcia scsi sound video; do
    cp -a include/$i $startdir/pkg/usr/src/linux-${_kernver}/include/
    done
    # copy files necessary for later builds, like nvidia and vmware
    cp Module.symvers $startdir/pkg/usr/src/linux-${_kernver}
    cp -a scripts $startdir/pkg/usr/src/linux-${_kernver}
    # fix permissions on scripts dir
    chmod og-w -R $startdir/pkg/usr/src/linux-${_kernver}/scripts
    #mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/.tmp_versions
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/arch/$KARCH/kernel
    cp arch/$KARCH/Makefile $startdir/pkg/usr/src/linux-${_kernver}/arch/$KARCH/
    if [ "$CARCH" = "i686" ]; then
    cp arch/$KARCH/Makefile_32.cpu $startdir/pkg/usr/src/linux-${_kernver}/arch/$KARCH/
    fi
    cp arch/$KARCH/kernel/asm-offsets.s $startdir/pkg/usr/src/linux-${_kernver}/arch/$KARCH/kernel/
    # add headers for lirc package
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/drivers/media/video
    cp drivers/media/video/*.h $startdir/pkg/usr/src/linux-${_kernver}/drivers/media/video/
    for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102 usbvideo zc0301; do
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/drivers/media/video/$i
    cp -a drivers/media/video/$i/*.h $startdir/pkg/usr/src/linux-${_kernver}/drivers/media/video/$i
    done
    # add dm headers
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/drivers/md
    cp drivers/md/*.h $startdir/pkg/usr/src/linux-${_kernver}/drivers/md
    # add inotify.h
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/include/linux
    cp include/linux/inotify.h $startdir/pkg/usr/src/linux-${_kernver}/include/linux/
    # add CLUSTERIP file for iptables
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/net/ipv4/netfilter/
    # add wireless headers
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/net/mac80211/
    cp net/mac80211/*.h $startdir/pkg/usr/src/linux-${_kernver}/net/mac80211/
    # add dvb headers for external modules
    # in reference to:
    # http://bugs.archlinux.org/task/9912
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core
    cp drivers/media/dvb/dvb-core/*.h $startdir/pkg/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/
    # add dvb headers for external modules
    # in reference to:
    # http://bugs.archlinux.org/task/11194
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/include/config/dvb/
    cp include/config/dvb/*.h $startdir/pkg/usr/src/linux-${_kernver}/include/config/dvb/
    # add xfs and shmem for aufs building
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/fs/xfs
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/mm
    cp fs/xfs/xfs_sb.h $startdir/pkg/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h
    # add vmlinux
    cp vmlinux $startdir/pkg/usr/src/linux-${_kernver}
    # copy in Kconfig files
    for i in `find . -name "Kconfig*"`; do
    mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/`echo $i | sed 's|/Kconfig.*||'`
    cp $i $startdir/pkg/usr/src/linux-${_kernver}/$i
    done
    cd $startdir/pkg/usr/src/linux-${_kernver}/include && ln -s asm-$KARCH asm
    chown -R root.root $startdir/pkg/usr/src/linux-${_kernver}
    find $startdir/pkg/usr/src/linux-${_kernver} -type d -exec chmod 755 {} \;
    cd $startdir/pkg/lib/modules/${_kernver} && \
    (rm -f source build; ln -sf ../../../usr/src/linux-${_kernver} build)
    # install fallback mkinitcpio.conf file and preset file for kernel
    install -m644 -D $startdir/src/${pkgname}.preset $startdir/pkg/etc/mkinitcpio.d/${pkgname}.preset || return 1
    # set correct depmod command for install
    sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" $startdir/kernel26.install
    echo -e "# DO NOT EDIT THIS FILE\nALL_kver='${_kernver}'" > ${startdir}/pkg/etc/mkinitcpio.d/${pkgname}.kver
    # remove unneeded architectures
    rm -rf $startdir/pkg/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
    Then, edit the pkgbuild, and uncomment lines 62 and 63, right below "stop here / this is useful to configure the kernel."  Run makepkg, which will extract the sources, patch them, and stop.  Run:
    $ cd src/linux-2.6.26
    $ make menuconfig
    Go to Device Drivers ---> Network Device Support ---> Wireless LAN, and scroll down to "Intel Wireless WiFi Next Gen AGN."  Press 'm' to include this feature as a module.  Enable any subfeatures you want, by pressing 'y,' but be sure to enable "Intel Wireless WiFi 5000AGN."  Also, enable "Enable full debugging output in iwlagn driver," which is above "Intel Wireless WiFi AGN."  Exit menuconfig.  Run
    $ cd ../..
    $ cp src/linux-2.6.26/.config config
    or on Arch64, run
    $ cd ../..
    $ cp src/linux-2.6.26/.config config.x86_64
    Comment out the lines you uncommented in the PKGBUILD, run
    $ makepkg -g >> PKGBUILD
    $ rm -rf src # otherwise, it tries to patch an already patched kernel
    and finally, makepkg!
    Also, install the firmware:
    PKGBUILD:
    # $Id: PKGBUILD 4447 2008-07-07 12:06:04Z thomas $
    # Maintainer: Thomas Baechler <[email protected]>
    pkgname=iwlwifi-5000-ucode
    pkgver=5.4.A.11
    pkgrel=1
    pkgdesc="Intel wireless firmware for IPW5000 (iwlwifi driver)"
    arch=(i686 x86_64)
    url="http://intellinuxwireless.org/?p=iwlwifi"
    license=('custom')
    depends=()
    source=(http://intellinuxwireless.org/iwlwifi/downloads/$pkgname-$pkgver.tar.gz)
    md5sums=('748860c5079dde1a1313e72511b9322a')
    build() {
    cd $startdir/src/$pkgname-$pkgver
    # Install firmware (ABI version 2, for future versions of iwl4965)
    install -D -m 644 iwlwifi-5000-1.ucode $startdir/pkg/lib/firmware/iwlwifi-5000-1.ucode || return 1
    # Install license
    install -D -m 644 LICENSE.iwlwifi-5000-ucode $startdir/pkg/usr/share/licenses/$pkgname/LICENSE || return 1
    Last edited by tavianator (2008-09-10 23:10:35)

  • Arch64 problems

    Don't really know where to report all this but all I've experienced since I've tried out the Arch64 version I've had problems and problems and problems.
    First installation my network wasn't detected, switched cables and tried everything with the hardware. Couldn't find the modules.
    Motherboard is M2N-E MCP55, nForce. Tried manually loading forcedeth and all other options I've read about by running between computers.
    Secondly, I reformated my harddrive again (I did a clean install the first time around) and this time everything worked fine until I installed X.org.
    I can't use either my keyboard or mouse when KDM start (I use to use GDM and Gnome before but figured I'd try out KDE again, so)
    Now I get errors about keyboard modules not found and mouse modules not found.
    Didn't have hotplugging, or any other auto-detection at first, but then I tried it and it still didn't work and the modules it's looking for simply ain't there.
    I've had the best experience with Arch i686 over any other Linux dist but with Arch64 - this is TOO MUCH!
    How can this be so random? I bet the next time I install it my gpu won't work as it would.
    So, if there's someone with any ideas or input abot these things related to 64 and how it sucks ass in comparison to the standard version, please, give me a reason to give it another go.
    I get the idea to do it yourself which is one of the best part of Arch, but to get bugs and loads of bugs and really no idea what is causing them (since Arch runs flawlessly and does on my server as well) reading long fixes in Links really isn't my cup of tea at 3am in the morning because it simply is alot of stuff that isn't "fixed", or whatever you call it.
    And, I installed from FTPs so everything is up to date.
    Any suggestions?
    X.0rg.log file says can't find mouse or driver kdb(which I haven't even selected)
    I just added "hal fam kdm" to the rc.conf daemon list so far.
    I installed
    pacman -Sy xorg (i selected everything in every group)
    pacman -Sy kde (i selected everything in every group)
    pacman -Sy kdebase kdebase-workspace
    pacman -Sy hal fam
    So, what I am I missing? I did the exact thing just with GDM and Gnome in i686 and it works. Why all these trouble for something like this?

    Try installing xf86-input-keyboard and xf86-input-mouse. I doubt this is an Arch64 problem. Sounds more like you forgot to install some packages. If that's the case, the i686 version isn't going to behave any differently.

  • [Arch64] port Problems & Solutions

    Errr like I split iso thread for post related to install, bugs etc...
    Go for it .... :?

    mplayer
    mplayer: error while loading shared libraries: libdv.so.4: cannot open shared object file: No such file or directory
    After update wondering if its anything to do with botched nvidia install
    /sbin/ldconfig: File /usr/lib/libGL.so.1 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libnvidia-cfg.so.1 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libXvMCNVIDIA.so.1.0.8178 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libGL.so.1.2 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libnvidia-tls.so.1 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libXvMCNVIDIA_dynamic.so.1 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libnvidia-cfg.so is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libnvidia-tls.so.1.0.8178 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libGL.so.1.0.8178 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libnvidia-cfg.so.1.0.8178 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libGL.so is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libGLcore.so.1 is empty, not checked.
    /sbin/ldconfig: File /usr/lib/libGLcore.so.1.0.8178 is empty, not checked.
    [root@Arch64 mrgreen]#
    Dude this stuff is freakin' me out lol
    Anyway Firefox & Thunderbird are starting now which I guess is a good thing ..

  • 4G ram could not boot arch64

    My laptop has a T4400 CPU and arch64,when it had 2.5G ram,worked fine.
    when I add RAM to 4G ,my laptop always restart when booting.
    then,I found that if I turn off acpi on grub.cfg,it could boot.
    I can't find any error on log.
    I tried to install 64bit opensuse 11.4,it  has the same problem.
    and I also installed 32bit arch,it can boot up normally.
    Is that my laptop problem? or I should rebuild the kernel and change some config.
    maybe a bios bug??
    I could not use any hotkey on my keyboard,such as turn off the webcam.That would restart the laptop.
    Last edited by xtud (2011-07-22 14:58:41)

    I found something new.
    "acpi=off" can boot up but "acpi=ht"
    it's said that "Try booting with "acpi=ht": This disables all of ACPI except just enough to enable Hyper Threading. If acpi=off works and acpi=ht fails, then the issue is in the ACPI table parsing code itself, or perhaps the SMP code."
    Read more: http://www.brighthub.com/computing/linu … z1SpyBjydN
    Last edited by xtud (2011-07-22 12:40:01)

  • Index with "or" clause (BUG still exists?)

    The change log for 2.3.10 mentions "Fixed a bug that caused incorrect query plans to be generated for predicates that used the "or" operator in conjunction with indexes [#15328]."
    But looks like the Bug still exists.
    I am listing the steps to-repro. Let me know if i have missed something (or if the bug needs to be fixed)
    DATA
    dbxml> openContainer test.dbxml
    dbxml> getDocuments
    2 documents found
    dbxml> print
    <node><value>a</value></node>
    <node><value>b</value></node>
    INDEX (just one string equality index on node "value")
    dbxml> listIndexes
    Index: unique-node-metadata-equality-string for node {http://www.sleepycat.com/2002/dbxml}:name
    Index: node-element-equality-string for node {}:value
    2 indexes found.
    QUERY
    setVerbose 2 2
    preload test.dbxml
    query 'let $temp := fn:compare("test", "test") = 0
    let $results := for $i in collection("test.dbxml")
    where ($temp or $i/node[value = ("a")])
    return $i
    return <out>{$temp}{$results}</out>'
    When $temp is true i expected the result set to contain both the records, but that was not the case with the index. It works well when there is no index!
    Result WITH INDEX
    dbxml> print
    <out>true<node><value>a</value></node></out>
    Result WITHOUT INDEX
    dbxml> print
    <out>true<node><value>a</value></node><node><value>b</value></node></out>

    Hi Vijay,
    This is a completely different bug, relating to predicate expressions that do not examine nodes. Please try the following patch, to see if it fixes this bug for you:
    --- dbxml-2.3.10-original/dbxml/src/dbxml/optimizer/QueryPlanGenerator.cpp     2007-04-18 10:05:24.000000000 +0100
    +++ dbxml-2.3.10/dbxml/src/dbxml/optimizer/QueryPlanGenerator.cpp     2007-08-08 11:32:10.000000000 +0100
    @@ -1566,11 +1572,12 @@
         else if(name == Or::name) {
              UnionQP *unionOp = new (&memMgr_) UnionQP(&memMgr_);
    +          result.operation = unionOp;
              for(VectorOfASTNodes::iterator i = args.begin(); i != args.end(); ++i) {
                   PathResult ret = generate(*i, ids);
                   unionOp->addArg(ret.operation);
    +               if(ret.operation == 0) result.operation = 0;
    -          result.operation = unionOp;
         // These operators use the presence of the node arguments, not their valueJohn

  • Bug report follow-up

    is there a way to follow-up on a bug report that i submitted?  i have the bug number, but would like to see if the report was understood, filled out properly and determine the status of the bug report.
    thanks,
    doug

    They comment on bugs if actions were taken. Otherwise - don't expect any feedback.

  • Solaris8 and 9 (possibly 7) /dev/poll driver bug report.

    Hello,
    I'd like to report a bug in the solaris 8 and 9 /dev/poll driver (poll(7d)).
    As i do not have a support account with sun or anything like that, there
    seems to be no other way to do that here (which is of course a very sad
    thing).
    Bug details:
    The /dev/poll device provides an ioctl-request (DP_ISPOLLED) for checking
    if a particular filedescriptor is currently in the set of monitored
    filedescriptors for that particular /dev/poll fd set (open /dev/poll fd).
    A quote from the documentation of the poll(7d) manual page taken from
    Solaris9:
    "DP_ISPOLLED ioctl allows you to query if a file descriptor is already in
    the monitored set represented by fd. The fd field of the pollfd structure
    indicates the file descriptor of interest. The DP_ISPOLLED ioctl returns 1
    if the file descriptor is in the set. The events field contains the
    currently polled events. The revents field contains 0. The ioctl returns 0
    if the file descriptor is not in the set. The pollfd structure pointed by
    pfd is not modified. The ioctl returns a -1 if the call fails."
    It says that when you query for an filedescriptor which is currently being
    monitored in the set, that it would return 1, and change the events field of
    the pollfd structure to the events it's currently monitoring that fd for.
    The revents field would be set to zero.
    However the only thing which actually happens here, is that FD_ISPOLLED
    returns 1 when the fd is in the set and 0 if not. When the fd is in the
    set, when FD_ISPOLLED returns 1, the events field remains unmodified, but
    the revents field gets changed.
    A small sample code to illustrate:
    #include <stdio.h>
    #include <unistd.h>
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    #include <sys/devpoll.h>
    main() {
    struct pollfd a;
    int dp_fd = open("/dev/poll", O_WRONLY);
    a.fd = 0; /* stdin */
    a.events = POLLIN; /* we monitor for readability, POLLIN=1 */
    a.revents = 0;
    write(dp_fd, &a, sizeof(a));
    a.fd = 0;
    a.events = 34; /* filled in with bogus number to show malfunctioning */
    a.revents = 0;
    printf("DP_ISPOLLED returns: %d\n", ioctl(dp_fd, DP_ISPOLLED, &a));
    printf("a.fd=%d, a.events=%hd, a.revents=%hd\n", a.fd, a.events,
    a.revents);
    According to the documentation of /dev/poll and namely DP_ISPOLLED this
    program is supposed to print the following:
    DP_ISPOLLED returns: 1
    a.fd=0, a.events=1, a.revents=0
    However it prints the following:
    DP_ISPOLLED returns: 1
    a.fd=0, a.events=34, a.revents=1
    You can take any number instead of '34' and it will simply remain untouched
    after the DP_ISPOLLED ioctl-request.
    I hope it's clear now that the solaris8 and solaris9 (and probably solaris7
    with /dev/poll patch too) DP_ISPOLLED implementation is broken.
    This bug is also easily illustrated by looking at the solaris8 kernel sourcecode:
    <snippet osnet_volume/usr/src/uts/common/io/devpoll.c:dpioctl()>
    case DP_ISPOLLED:
    pollfd_t pollfd;
    polldat_t *pdp;
    if (pollfd.fd < 0) {
    mutex_exit(&pcp->pc_lock);
    break;
    pdp = pcache_lookup_fd(pcp, pollfd.fd);
    if ((pdp != NULL) && (pdp->pd_fd == pollfd.fd) &&
    (pdp->pd_fp != NULL)) {
    pollfd.revents = pdp->pd_events;
    if (copyout(&pollfd, (caddr_t)arg,
    sizeof(pollfd_t))) {
    mutex_exit(&pcp->pc_lock);
    DP_REFRELE(dpep);
    return (set_errno(EFAULT));
    *rvalp = 1;
    </snippet>
    its' clearly visible that the code writes the current monitored events to
    the revents field:
    'pollfd.revents = pdp->pd_events;'
    and that it doesnt set revents to zero.
    It's funny to see that this has been like this since Solaris8 (possibly 7). That means nobody ever used DP_ISPOLLED that way or people were simply to lazy to file a bug report.
    Another funny thing related to this. is that Hewlett-Packard did seem to know about this. Since HP-UX11i version 1.6 they also support /dev/poll. From their manual page i ll quote some sentences from their WARNING session:
    "The ioctl(DP_ISPOLLED) system call also returns its result in the revents member of the pollfd structure, in order to be compatible with the implementation of the /dev/poll driver by some other vendors."
    Hopefully this will get fixed.
    I also like to reexpress my very negative feelings towards the fact that you're not able to file bug reports when you do not have a support contract. Ridiculous.
    Thanks,
    bighawk

    Have I mentioned how much i love my playbook now Great job on os 2.0

  • [bdb bug]repeatly open and close db may cause memory leak

    my test code is very simple :
    char *filename = "xxx.db";
    char *dbname = "xxx";
    for( ; ;)
    DB *dbp;
    DB_TXN *txnp;
    db_create(&dbp,dbenvp, 0);
    dbenvp->txn_begin(dbenvp, NULL, &txnp, 0);
    ret = dbp->open(dbp, txnp, filename, dbname, DB_BTREE, DB_CREATE, 0);
    if(ret != 0)
    printf("failed to open db:%s\n",db_strerror(ret));
    return 0;
    txnp->commit(txnp, 0);
    dbp->close(dbp, DB_NOSYNC);
    I try to run my test program for a long time opening and closing db repeatly, then use the PS command and find the RSS is increasing slowly:
    ps -va
    PID TTY STAT TIME MAJFL TRS DRS RSS %MEM COMMAND
    1986 pts/0 S 0:00 466 588 4999 980 0.3 -bash
    2615 pts/0 R 0:01 588 2 5141 2500 0.9 ./test
    after a few minutes:
    ps -va
    PID TTY STAT TIME MAJFL TRS DRS RSS %MEM COMMAND
    1986 pts/0 S 0:00 473 588 4999 976 0.3 -bash
    2615 pts/0 R 30:02 689 2 156561 117892 46.2 ./test
    I had read bdb's source code before, so i tried to debug it for about a week and found something like a bug:
    If open a db with both filename and dbname, bdb will open a db handle for master db and a db handle for subdb,
    both of the two handle will get an fileid by a internal api called __dbreg_get_id, however, just the subdb's id will be
    return to bdb's log region by calling __dbreg_pop_id. It leads to a id leak if I tried to open and close the db
    repeatly, as a result, __dbreg_add_dbentry will call realloc repeatly to enlarge the dbentry area, this seens to be
    the reason for RSS increasing.
    Is it not a BUG?
    sorry for my pool english :)
    Edited by: user9222236 on 2010-2-25 下午10:38

    I have tested my program using Oracle Berkeley DB release 4.8.26 and 4.7.25 in redhat 9.0 (Kernel 2.4.20-8smp on an i686) and AIX Version 5.
    The problem is easy to be reproduced by calling the open method of db handle with both filename and dbname being specified and calling the close method.
    My program is very simple:
    #include <stdlib.h>
    #include <stdio.h>
    #include <sys/time.h>
    #include "db.h"
    int main(int argc, char * argv[])
    int ret, count;
    DB_ENV *dbenvp;
    char * filename = "test.dbf";
    char * dbname = "test";
    db_env_create(&dbenvp, 0);
    dbenvp->open(dbenvp, "/home/bdb/code/test/env",DB_CREATE|DB_INIT_LOCK|DB_INIT_LOG|DB_INIT_TXN|DB_INIT_MPOOL, 0);
    for(count = 0 ; count < 10000000 ; count++)
    DB *dbp;
    DB_TXN *txnp;
    db_create(&dbp,dbenvp, 0);
    dbenvp->txn_begin(dbenvp, NULL, &txnp, 0);
    ret = dbp->open(dbp, txnp, filename, dbname, DB_BTREE, DB_CREATE, 0);
    if(ret != 0)
    printf("failed to open db:%s\n",db_strerror(ret));
    return 0;
    txnp->commit(txnp, 0);
    dbp->close(dbp, DB_NOSYNC);
    dbenvp->close(dbenvp, 0);
    return 0;
    DB_CONFIG is like below:
    set_cachesize 0 20000 0
    set_flags db_auto_commit
    set_flags db_txn_nosync
    set_flags db_log_inmemory
    set_lk_detect db_lock_minlocks
    Edited by: user9222236 on 2010-2-28 下午5:42
    Edited by: user9222236 on 2010-2-28 下午5:45

  • How can I install fglrx driver on Arch64

    Hello!
    I have installed Arch64 but I've got a bit problem now. Fglrx drivers isn't going to work with my graphic card - Shapphire Radeon HD3650 (on Arch32 it worked). My xorg.conf file
    # File generated by xorgconfig.
    # Copyright 2004 The X.Org Foundation
    # Permission is hereby granted, free of charge, to any person obtaining a
    # copy of this software and associated documentation files (the "Software"),
    # to deal in the Software without restriction, including without limitation
    # the rights to use, copy, modify, merge, publish, distribute, sublicense,
    # and/or sell copies of the Software, and to permit persons to whom the
    # Software is furnished to do so, subject to the following conditions:
    # The above copyright notice and this permission notice shall be included in
    # all copies or substantial portions of the Software.
    # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
    # The X.Org Foundation BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
    # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
    # OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
    # SOFTWARE.
    # Except as contained in this notice, the name of The X.Org Foundation shall
    # not be used in advertising or otherwise to promote the sale, use or other
    # dealings in this Software without prior written authorization from
    # The X.Org Foundation.
    # Refer to the xorg.conf(5) man page for details about the format of
    # this file.
    # Module section -- this section is used to specify
    # which dynamically loadable modules to load.
    # Files section. This allows default font and rgb paths to be set
    # Server flags section.
    # Input devices
    # Core keyboard's InputDevice section
    # Core Pointer's InputDevice section
    # Other input device sections
    # this is optional and is required only if you
    # are using extended input devices. This is for example only. Refer
    # to the xorg.conf man page for a description of the options.
    # Section "InputDevice"
    # Identifier "Mouse2"
    # Driver "mouse"
    # Option "Protocol" "MouseMan"
    # Option "Device" "/dev/mouse2"
    # EndSection
    # Section "InputDevice"
    # Identifier "spaceball"
    # Driver "magellan"
    # Option "Device" "/dev/cua0"
    # EndSection
    # Section "InputDevice"
    # Identifier "spaceball2"
    # Driver "spaceorb"
    # Option "Device" "/dev/cua0"
    # EndSection
    # Section "InputDevice"
    # Identifier "touchscreen0"
    # Driver "microtouch"
    # Option "Device" "/dev/ttyS0"
    # Option "MinX" "1412"
    # Option "MaxX" "15184"
    # Option "MinY" "15372"
    # Option "MaxY" "1230"
    # Option "ScreenNumber" "0"
    # Option "ReportingMode" "Scaled"
    # Option "ButtonNumber" "1"
    # Option "SendCoreEvents"
    # EndSection
    # Section "InputDevice"
    # Identifier "touchscreen1"
    # Driver "elo2300"
    # Option "Device" "/dev/ttyS0"
    # Option "MinX" "231"
    # Option "MaxX" "3868"
    # Option "MinY" "3858"
    # Option "MaxY" "272"
    # Option "ScreenNumber" "0"
    # Option "ReportingMode" "Scaled"
    # Option "ButtonThreshold" "17"
    # Option "ButtonNumber" "1"
    # Option "SendCoreEvents"
    # EndSection
    # Monitor section
    # Any number of monitor sections may be present
    # Graphics device section
    # Any number of graphics device sections may be present
    # Standard VGA Device:
    # Device configured by xorgconfig:
    # Screen sections
    # Any number of screen sections may be present. Each describes
    # the configuration of a single screen. A single specific screen section
    # may be specified from the X server command line with the "-screen"
    # option.
    # ServerLayout sections.
    # Any number of ServerLayout sections may be present. Each describes
    # the way multiple screens are organised. A specific ServerLayout
    # section may be specified from the X server command line with the
    # "-layout" option. In the absence of this, the first section is used.
    # When now ServerLayout section is present, the first Screen section
    # is used alone.
    Section "ServerLayout"
    # The Identifier line must be present
    # Each Screen line specifies a Screen section name, and optionally
    # the relative position of other screens. The four names after
    # primary screen name are the screens to the top, bottom, left and right
    # of the primary screen. In this example, screen 2 is located to the
    # right of screen 1.
    # Each InputDevice line specifies an InputDevice section name and
    # optionally some options to specify the way the device is to be
    # used. Those options include "CorePointer", "CoreKeyboard" and
    # "SendCoreEvents".
    Identifier "Simple Layout"
    Screen 0 "aticonfig-Screen[0]" 0 0
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
    EndSection
    Section "Files"
    # The location of the RGB database. Note, this is the name of the
    # file minus the extension (like ".txt" or ".db"). There is normally
    # no need to change the default.
    # RgbPath "/usr/share/X11/rgb"
    # Multiple FontPath entries are allowed (which are concatenated together),
    # as well as specifying multiple comma-separated entries in one FontPath
    # command (or a combination of both methods)
    # FontPath "/usr/lib/X11/fonts/local/"
    # FontPath "/usr/lib/X11/fonts/misc/"
    # FontPath "/usr/lib/X11/fonts/75dpi/:unscaled"
    # FontPath "/usr/lib/X11/fonts/100dpi/:unscaled"
    # FontPath "/usr/lib/X11/fonts/Speedo/"
    # FontPath "/usr/lib/X11/fonts/Type1/"
    # FontPath "/usr/lib/X11/fonts/TrueType/"
    # FontPath "/usr/lib/X11/fonts/freefont/"
    # FontPath "/usr/lib/X11/fonts/75dpi/"
    # FontPath "/usr/lib/X11/fonts/100dpi/"
    # The module search path. The default path is shown here.
    # ModulePath "/usr/lib/modules"
    FontPath "/usr/share/fonts/misc"
    FontPath "/usr/share/fonts/100dpi:unscaled"
    FontPath "/usr/share/fonts/75dpi:unscaled"
    FontPath "/usr/share/fonts/TTF"
    FontPath "/usr/share/fonts/Type1"
    EndSection
    Section "Module"
    # This loads the DBE extension module.
    # This loads the miscellaneous extensions module, and disables
    # initialisation of the XFree86-DGA extension within that module.
    # This loads the font modules
    # Load "type1"
    # This loads the GLX module
    Load "dbe" # Double buffer extension
    SubSection "extmod"
    Option "omit xfree86-dga" # don't initialise the DGA extension
    EndSubSection
    Load "freetype"
    # Load "xtt"
    Load "glx"
    # This loads the DRI module
    Load "dri"
    EndSection
    Section "InputDevice"
    # Option "Xleds" "1 2 3"
    # Option "LeftAlt" "Meta"
    # Option "RightAlt" "ModeShift"
    # To customise the XKB settings to suit your keyboard, modify the
    # lines below (which are the defaults). For example, for a non-U.S.
    # keyboard, you will probably want to use:
    # Option "XkbModel" "pc105"
    # If you have a US Microsoft Natural keyboard, you can use:
    # Option "XkbModel" "microsoft"
    # Then to change the language, change the Layout setting.
    # For example, a german layout can be obtained with:
    # Option "XkbLayout" "de"
    # or:
    # Option "XkbLayout" "de"
    # Option "XkbVariant" "nodeadkeys"
    # If you'd like to switch the positions of your capslock and
    # control keys, use:
    # Option "XkbOptions" "ctrl:swapcaps"
    # These are the default XKB settings for Xorg
    # Option "XkbRules" "xorg"
    # Option "XkbModel" "pc105"
    # Option "XkbLayout" "us"
    # Option "XkbVariant" ""
    # Option "XkbOptions" ""
    # Option "XkbDisable"
    Identifier "Keyboard1"
    Driver "kbd"
    Option "AutoRepeat" "500 30"
    # Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
    Option "XkbRules" "xorg"
    Option "XkbModel" "pc105"
    Option "XkbLayout" "pl"
    EndSection
    Section "InputDevice"
    # Identifier and driver
    # Option "Resolution" "256"
    # Baudrate and SampleRate are only for some Logitech mice. In
    # almost every case these lines should be omitted.
    # Option "BaudRate" "9600"
    # Option "SampleRate" "150"
    # Mouse wheel mapping. Default is to map vertical wheel to buttons 4 & 5,
    # horizontal wheel to buttons 6 & 7. Change if your mouse has more than
    # 3 buttons and you need to map the wheel to different button ids to avoid
    # conflicts.
    # Emulate3Timeout is the timeout in milliseconds (default is 50ms)
    # Option "Emulate3Buttons"
    # Option "Emulate3Timeout" "50"
    # ChordMiddle is an option for some 3-button Logitech mice
    # Option "ChordMiddle"
    Identifier "Mouse1"
    Driver "mouse"
    Option "Protocol" "IMPS/2" # IntelliMouse PS/2
    Option "Device" "/dev/input/mice"
    # Mouse-speed setting for PS/2 mouse.
    Option "ZAxisMapping" "4 5 6 7"
    # Emulate3Buttons is an option for 2-button mice
    EndSection
    Section "Monitor"
    Identifier "aticonfig-Monitor[0]"
    Option "VendorName" "ATI Proprietary Driver"
    Option "ModelName" "Generic Autodetecting Monitor"
    Option "DPMS" "true"
    EndSection
    Section "Device"
    Identifier "aticonfig-Device[0]"
    Driver "fglrx"
    EndSection
    Section "Screen"
    Identifier "aticonfig-Screen[0]"
    Device "aticonfig-Device[0]"
    Monitor "aticonfig-Monitor[0]"
    DefaultDepth 24
    SubSection "Display"
    Viewport 0 0
    Depth 24
    EndSubSection
    EndSection
    Section "DRI"
    Mode 0666
    EndSection
    Also when I use vesa drivers it work OK, but when I use fglrx logs are clean but I can see only black screen, sometimes with mouse cursor which isn't going to move - It is on the center of screen.
    (I apologize to my English. I hope you will understand me )

    You can try to put the following line in the 'Device' Section
    Option "ShadowFB"
    and create a the following somewhere in the file
    Section "ServerFlags"
    Option "AIGLX" "no"
    EndSection

  • Multiple return values (Bug-ID 4222792)

    I had exactly the same request for the same 3 reasons: strong type safety and code correctness verification at compile-time, code readability and ease of mantenance, performance.
    Here is what Sun replied to me:
    Autoboxing and varargs are provided as part of
    JSRs 14 and 201
    http://jcp.org/en/jsr/detail?id=14
    http://jcp.org/en/jsr/detail?id=201
    See also:
    http://forum.java.sun.com/forum.jsp?forum=316
    http://developer.java.sun.com/developer/earlyAccess/adding_generics/index.html
    Multiple return values is covered by Bug-ID 4222792
    Typically this is done by returning an array.
    http://developer.java.sun.com/developer/bugParade/bugs/4222792.html
    That's exactly the problem: we dynamically create instances of array objects that would better fit well within the operand stack without stressing the garbage collector with temporary Array object instances (and with their backing store: 2 separate allocations that need to be recycled when it is clearly a pollution that the operand stack would clean up more efficiently)
    If you would like to engage in a discussion with the Java Language developers, the Generics forum would be a better place:
    http://forum.java.sun.com/forum.jsp?forum=316
    I know that (my report was already refering to the JSR for language extension) Generics is not what I was refering to (even if a generic could handle multiple return values, it would still be an allocated Object
    instance to pack them, i.e. just less convenient than using a static class for type safety.
    The most common case of multiple return values involve values that have known static datatypes and that should be checked with strong typesafety.
    The simple case that involves returning two ints then will require at least two object instances and will not solve the garbage collection overhead.
    Using a array of variable objects is exactly similar, except that it requires two instances for the components and one instance for the generic array container. Using extra method parameters with Integer, Byte, ... boxing objects is more efficient, but for now the only practical solution (which causes the least pollution in the VM allocator and garbage collector) is to use a custom class to store the return values in a single instance.
    This is not natural, and needlessly complexifies many interfaces.
    So to avoid this pollution, some solutions are used such as packing two ints into a long and returning a long, depacking the long after return (not quite clean but still much faster at run-time for methods that need to be used with high frequencies within the application. In some case, the only way to cut down the overhead is to inline methods within the caller code, and this does not help code maintenance by splitting the implementation into small methods (something that C++ can do very easily, both because it supports native types parameters by reference, and because it also supports inline methods).
    Finally, suppose we don't want to use tricky code, difficult to maintain, then we'll have to use boxing Object types to allow passing arguments by reference. Shamely boxed native types cannot be allocated on the operand stack as local variables, so we need to instanciate these local variables before call, and we loose the capacity to track the cases where these local variables are not really initialized by an effective call to the method that will assign them. This does not help debugging, and is against the concept of a strongly typed language like Java should be:
    Java makes lots of efforts to track uninitialized variables, but has no way to determine if an already instanciated Object instance refered in a local variable has effectively received an effective assignment because only the instanciation is kept. A typical code will then need to be written like this:
    Integer a = null;
    Integer b = null;
    if (some condition) {
    //call.method(a, b, 0, 1, "dummy input arg");
    // the method is supposed to have assigned a value to a and b,
    // but can't if a and b have not been instanciated, so we perform:
    call.method(a = new Integer(), b = new Integer(), 0, 1, "dummy input
    arg");
    // we must suppose that the method has modified (not initialized!)
    the value
    // of a and b instances.
    now.use(a.value(), b.value())
    // are we sure here that a and b have received a value????
    // the code may be detected at run-time (a null exception)
    // or completely undetected (the method() above was called but it
    // forgot to assign a value to its referenced objects a and b, in which
    // case we are calling in fact: now.use(0, 0); with the default values
    // or a and b, assigned when they were instanciated)
    Very tricky... Hard to debug. It would be much simpler if we just used:
    int a;
    int b;
    if (some condition) {
    (a, b) = call.method(0, 1, "dummy input arg");
    now.use(a, b);
    The compiler would immediately detect the case where a and b are in fact not always initialized (possible use bere initialization), and the first invoked call.method() would not have to check if its arguments are not null, it would not compile if it forgets to return two values in some code path...
    There's no need to provide extra boxing objects in the source as well as at run-time, and there's no stress added to the VM allocator or garbage collector simply because return values are only allocated on the perand stack by the caller, directly instanciated within the callee which MUST (checked at compile-time) create such instances by using the return statement to instanciate them, and the caller now just needs to use directly the variables which were referenced before call (here a and b). Clean and mean. And it allows strong typechecking as well (so this is a real help for programmers.
    Note that the signature of the method() above is:
    class call {
    (int, int) method(int, int, String) { ... }
    id est:
    class "call", member name "method", member type "(IILjava.lang.string;)II"
    This last signature means that the method can only be called by returning the value into a pair of variables of type int, or using the return value as a pair of actual arguments for another method call such as:
    call.method(call.method("dummy input arg"), "other dummy input arg")
    This is strongly typed and convenient to write and debug and very efficient at run-time...

    Can anyone give me some real-world examples where
    multiple return values aren't better captured in a
    class that logically groups those values? I can of
    course give hundreds of examples for why it's better
    to capture method arguments as multiple values instead
    of as one "logical object", but whenever I've hankered
    for multiple return values, I end up rethinking my
    strategy and rewriting my code to be better Object
    Oriented.I'd personally say you're usually right. There's almost always a O-O way of avoiding the situation.
    Sometimes though, you really do just want to return "two ints" from a function. There's no logical object you can think of to put them in. So you end up polluting the namespace:
    public class MyUsefulClass {
    public TwoInts calculateSomething(int a, int b, int c) {
    public static class TwoInts {
        //now, do I use two public int fields here, making it
        //in essence a struct?
       //or do I make my two ints private & final, which
       //requires a constructor & two getters?
      //and while I'm at it, is it worth implementing
      //equals(), how about hashCode()? clone()?
      //readResolve() ?
    }The answer to most of the questions for something as simple as "TwoInts" is usually "no: its not worth implementing those methods", but I still have to think about them.
    More to the point, the TwoInts class looks so ugly polluting the top level namespace like that, MyUsefulClass.TwoInts is public, that I don't think I've ever actually created that class. I always find some way to avoid it, even if the workaround is just as ugly.
    For myself, I'd like to see some simple pass-by-value "Tuple" type. My fear is it'd be abused as a way for lazy programmers to avoid creating objects when they should have a logical type for readability & maintainability.
    Anyone who has maintained code where someone has passed in all their arguments as (mutable!) Maps, Collections and/or Arrays and "returned" values by mutating those structures knows what a nightmare it can be. Which I suppose is an argument that cuts both ways: on the one hand you can say: "why add Tuples which would be another easy thing to abuse", on the other: "why not add Tuples, given Arrays and the Collections framework already allow bad programmers to produce unmainable mush. One more feature isn't going to make a difference either way".
    Ho hum.

Maybe you are looking for