tar backup restore

identify and mount directories/devices for backup sources and targets, i.e.
-- backup, which directory
-- backup, to which file, located where

tar - tape archiver
http://gnu.org/software/tar/manual

$ tar --help
$ man tar

some useful options
-c, --create
create a new archive

-t, --list
list the contents of an archive

-x, --extract, --get
extract files from an archive

-a, --auto-compress
use archive suffix to determine the compression program

-f, --file=ARCHIVE
use  archive file or device ARCHIVE

--numeric-owner
always use numbers for user/group names

--owner=NAME
Force NAME as owner for added files.

--one-file-system 
stay in local file system when creating archive

-p, --preserve-permissions, --same-permissions
extract information about file permissions (default for superuser)

--show-defaults
show tar defaults

-v, --verbose
verbosely list files processed

--xattrs
enable extended attributes support

backup
descend into directory, and tar current directory avoiding absolute pathname risks

$ cd {backup-directory}
$ sudo tar --one-file-system --numeric-owner --xattrs -cvapf /mnt/backup/{backup-filename}.tar.xz .

restore
descend into target directory, and untar

$ sudo tar --one-file-system --numeric-owner --xattrs -xvapf /mnt/backup/{backup-filename}.tar.xz

combine tar with netcat to backup/restore across the network. apparently, it is more efficient as the same system does not need to read & write at the same time.

gentoo kernel compile

I'm doing this so often that I need a ready reference. So here's a post :)

lspci: without it, my wireless card wasn't detected at boot.
$ emerge --search pciutils
# emerge --ask sys-apps/pciutils

$ lspci -knnv
$ lsmod

source
# emerge --ask sys-kernel/gentoo-sources

compression
There are many opinions about kernel compressions. My research led me to lzo. Is that the most efficient?
If you want to use lzo, you need to install lzop, or your kernel build will fail.
# emerge --ask app-arch/lzop

config
http://wiki.gentoo.org/wiki/Handbook:X86/Installation/Kernel#Activating_required_options
http://wiki.gentoo.org/wiki/Kernel/Gentoo_Kernel_Configuration_Guide

$ cd /usr/src/linux
$ cp -vi {backup}/config .config
$ make oldconfig
$ make nconfig

make
# make -j4 -s && make -j4 modules_install && make install

initramfs
http://wiki.gentoo.org/wiki/initramfs

gentoo wiki doesn't say how to.. just refers genkernel.
gentoo wiki also suggests not having an initramfs, but including everything in kernel, rather than as modules.

I am a fan of micro-kernels, rather than monolithic kernels. I prefer my kernel slim. Anything and everything, not required for initial boot or always in use, stays out of kernel.

I also use btrfs subvolumes, and LABELs in fstab.. not a standard kernel imho, and so I need initramfs.

# emerge --ask sys-kernel/genkernel
# genkernel --install --no-ramdisk-modules --disklabel initramfs

Firmware:

FIRMWARE_IN_KERNEL=n
The kernel source tree includes a number of firmware 'blobs' that are used by various drivers. The recommended way to use these is to run "make firmware_install", which, after converting ihex files to binary, copies all of the needed binary files in firmware/ to /lib/firmware/ on your system so that they can be loaded by userspace helpers on request.

$ emerge --search firmware
# emerge --ask sys-kernel/linux-firmware

ref: http://wiki.gentoo.org/wiki/kernel/upgrade

This sound device does not have any controls

I have no sound, on my recent gentoo install.

LXQT Mixer wouldn't open. I don't even get any error/warning messages. This is not good.

So I try alsamixer.

$ alsamixer
...
This sound device does not have any controls.

This is not good either, but a bit better than nothing. I have something to work with.

It seems I have a sound device, but alsa can not connect to any controls.

Let's check the kernel driver and modules.

$ lspci | grep -i audio
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
$ lspci -knnv -s 00:1b.0
00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 03)
        Subsystem: Toshiba America Info Systems 82801I (ICH9 Family) HD Audio Controller [1179:ff1e]
        Flags: bus master, fast devsel, latency 0, IRQ 22
        Memory at d6900000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: 
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

$ lsmod | grep snd
snd_hda_codec_hdmi     32710  1
snd_hda_intel          15445  1
snd_hda_controller     15342  1 snd_hda_intel
snd_hda_codec          59032  3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_controller
snd_hda_core           16671  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_controller
snd_pcm                59428  4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_controller
snd_timer              14813  1 snd_pcm
snd                    38556  7 snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec,snd_hda_intel
soundcore                656  1 snd

This looks good. It seems like the drivers have been detected, and modules loaded correctly.

What about the sound codecs?

$ lsmod | grep codec
snd_hda_codec_hdmi     32710  1
snd_hda_codec          59032  3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_controller
snd_hda_core           16671  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_controller
snd_pcm                59428  4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_controller
snd                    38556  7 snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec,snd_hda_intel

It looks like the hda codecs have been loaded. But are they the right ones?

$ cat /proc/asound/card*/codec* | grep -i codec
Codec: Realtek ID 268
Codec: Motorola ID 3055

This sound card has two codes, as detected above. And they are..

Aha, we found the problem. Intel HDA Audio doesn't want Intel HDA Codecs. The required HDA Codecs are Realtek and Motorola.. hmm??

$ /sbin/modprobe -c | grep -i realtek
nothing!

$ /sbin/modprobe -c | grep -i motorola
nothing!

Hmm.. my kernel config may be suspect. We need to check.

$ cat /boot/config-`uname -r` | grep -i codec | grep -i realtek
# CONFIG_SND_HDA_CODEC_REALTEK is not set

The required RealTek codec is unset. It has not been compiled.

We need to select SND_HDA_CODEC_REALTEK, and rebuild kernel.

What about Motorola codec?

$ cat /boot/config-`uname -r` | grep -i codec | grep -i motorola
nothing!

The kernel doesn't even know about the Motorola codec. I guess, there is nothing much we can do here.

Let's hope the RealTek codec might be sufficient for now.. We may be able to ignore the Motorola codec.

Next, we reconfig & rebuild our gentoo kernel..
ref: Gentoo Kernel compile

$ cd /usr/src/linux
$ make nconfig

> Device Drivers > Sound card support > Advanced Linux Sound Architecture > HD-Audio > SND_HDA_CODEC_REALTEK

Rebuild and install the kernel, modules and/or initramfs.

ref: gentoo kernel compile

# make && make modules_install && make install
# genkernel --install --no-ramdisk-modules --disklabel initramfs

Verify the new kernel & initramfs are in /boot.

$ ls -lh /boot/
yes!

Depending on your bootloader, you may need to regenerate (grub2) or reinstall (lilo). Check, and reboot.

System boots up.. I login and check sound. Yes, it works!

Now we can enjoy that sweet sound :)

gentoo install x86 btrfs

this post is for my reference. you may use this as a quick guide. but please understand what i have done, and not blindly copy. you should definitely read the much more comprehensive gentoo install handbook.

x86 install handbook: wiki.gentoo.org/wiki/handbook:x86
alternative install: wiki.gentoo.org/wiki/installation_alternatives
download: distfiles.gentoo.org/releases/x86/autobuilds/current-install-x86-minimal
sysresccd: sysresccd.org

i'll quickly run through the various handbook sections, and how i adapted those.

install media

gentoo suggests install from bootcd, and also offers many alternatives. i'm most impressed by the wildly flexible options available, and documented!

i have a sysresccd usb bootable. so i skip the download/create bootcd.

sysresccd startx, networkmanager, midori.. open new tabs with this page and gentoo handbook. keep them handy during the installation.

partitions

i don't usually use swap. anything that is a memory hogger is either tolerated, or purged off asap. i'm always looking for smaller applications to replace whatever i currently use. any more features than i use is bloatware.

i used to have /tmp on a dedicated partition. now i just use tmpfs, or a raw file if need be.

i have a large btrfs data partition, and i wanted to add another subvolume for gentoo. but i had second thoughts, as this was to be my first time with gentoo, and i didn't want accidents with existing data.

i created another btrfs partition, with two subvolumes - @gentoo32 and @home. if this works and is stable, i can send these subvolumes to my main btrfs partition.

sysresccd has /mnt/gentoo. if not, we create that directory for our gentoo root.

# mkdir -p /mnt/gentoo/
# mount -L gentoo -o subvol=@gentoo32 /mnt/gentoo

gentoo stage3

$ date

now we are ready for gentoo stage3, which we download from the above link, verify, and extract.
# sha512sum -c stage3-*.tar.bz2.DIGESTS
# tar --numeric-owner --xattrs -xvapf stage3-*.tar.bz2 -C /mnt/gentoo

filesystems

physical filesystems
# mount -L gentoo -o subvol=@home /mnt/gentoo/home

psuedo filesytems
# mount -o bind /proc /mnt/gentoo/proc
# mount --rbind /sys /mnt/gentoo/sys
# mount --make-rslave /mnt/gentoo/sys
# mount --rbind /dev /mnt/gentoo/dev
# mount --make-rslave /mnt/gentoo/dev

gentoo handbook says "--make-rslave operations are needed for systemd support later". if so, we probably don't need these.

on non-gentoo install media, check /dev/shm and /run/shm
$ ls -lhid /dev/shm /run/shm
$ mount | grep shm

links outside chroot become invalid. making /dev/shm/ a proper tmpfs mount can fix this.
# rm /dev/shm && mkdir /dev/shm
# mount -t tmpfs -o nosuid,nodev,noexec shm /dev/shm
# chmod 1777 /dev/shm
# mount --rbind /run/shm /mnt/gentoo/run/shm

# cp -L /etc/resolv.conf /mnt/gentoo/etc/

enter the chroot

# chroot /mnt/gentoo /bin/bash
# source /etc/profile
# export PS1="(chroot) $PS1"

i prefer busybox vi
# ln -s /bin/busybox /usr/local/bin/vi

portage
http://wiki.gentoo.org/wiki/Handbook:X86/Working/Portage

# mirrorselect -i -o >>/etc/portage/make.conf

# vi /etc/portage/make.conf
ref: make.conf.example / gentoo wiki

CFLAGS
CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="${CFLAGS}"

MAKEOPTS
MAKEOPTS="-j2"

install portage snapshot
# emerge-webrsync

/usr/portage is created on first run. ignore those errors.

sync is not necessary, as portage is not updated more than once a day.
# emerge --sync --quiet --verbose

--quiet is faster, and quieter ;)
--verbose tells you what is happening
in this case, use both together ;) as they mean different things in gentoo

always keep up with the news
$ man news.eselect
$ eselect news list
$ eselect news read [number]

profiles
# eselect profile list

Available profile symlink targets:
  [1]   default/linux/x86/13.0 *
  [2]   default/linux/x86/13.0/desktop
  [3]   default/linux/x86/13.0/desktop/gnome
  [4]   default/linux/x86/13.0/desktop/kde

do yourself a favour, and select [1] the default.

i thought i was smart, and chose [2] desktop, which changed subsequently on it's own, due to something i changed somewhere else. i ended up with quite a lot of bloatware, which in itself is not so much a problem, if i didn't have to wait around half the day for all that lot to be compiled all over again :/ and then i had another issue wondering how to get rid of all that extra bloat.

# eselect profile set 1

keep checking your profile occassionally!

USE
this is the bit which gave me the most headache.. even changing my profile without me knowing about it. choose wisely!

full description of available use flags
$ less /usr/portage/profiles/use.desc
http://gentoo.org/support/use-flags

currently active use flags are a combination of your profile and configured flags in make.conf

$ emerge --info | grep ^USE

$ grep USE /etc/portage/make.conf

keep it default or ignore, till you understand a bit more..
USE=""
USE="-debug -gnome -systemd "

once you understand it, ignore defaults and manage it specifically. but not yet!
USE="-* unicode"

systemd
http://wiki.gentoo.org/wiki/Gentoo_Without_systemd
"Masking udev will not result in a broken system; Portage is smart enough to automatically replace udev by sys-fs/eudev: the systemd-free fork of udev."

i don't want systemd. so i do both.

block:
vi /etc/portage/make.conf
USE="-systemd"

mask:
vi /etc/portage/package.mask/systemd
sys-apps/systemd
sys-fs/udev

timezone

$ ls /usr/share/zoneinfo
# echo "Europe/London" >/etc/timezone
# emerge --config sys-libs/timezone-data

i prefer
# ln -sf /usr/share/zoneinfo/Europe/London /etc/localtime

locales

vi /etc/locale.gen
en_GB.UTF-8 UTF-8

you can have more than one locales. each on separate lines. ensure at least one is utf-8.

# locale-gen
# locale -a
# eselect locale list
# eselect locale set {number}

$ cat /etc/env.d/02locale

reload environment, after any changes
$ env-update && source /etc/profile

kernel

no kernel is installed by default. make and install your own kernel.
ref: gentoo kernel compile

fstab
# vi /etc/fstab

networking
we will use gentoo netifrc method

# emerge --search netifrc

identify network interface, and autostart after boot.
ip link
# ln -s /etc/init.d/net.{lo,eth0}
# rc-update add net.eth0 default

busybox/udhcpc will be used automatically.

# vi /etc/conf.d/hostname
hostname="{localhostname}"

# vi /etc/hosts
127.0.0.1 localhostname.local.domain.name localhost

root passwd
# passwd

init/boot conf
# vi /etc/rc.conf
# vi /etc/conf.d/keymaps

misc
# emerge --ask sys-fs/btrfs-progs
# rc-update add sshd default

bootloader
whew! final stage.. before you can reboot.. into your shiny new gentoo :)

lilo or syslinux or grub2.. ordered by bloatware factor exponentially!

lilo is the most efficient, but doesn't understand btrfs :(
# emerge --ask sys-boot/lilo
# vi /etc/lilo.conf
# /sbin/lilo

extlinux is my preferred choice, but doesn't understand btrfs subvolumes/compression :(
# emerge --ask sys-boot/syslinux
# mkdir /boot/extlinux
# extlinux --install /boot/extlinux
# ln -snf . /boot/boot

# cd /usr/share/syslinux
# cp menu.c32 memdisk libcom32.c32 libutil.c32 /boot/extlinux/
i prefer ln -s, as it keeps up with any system updates.
# ln-s /usr/share/syslinux/{menu.c32,memdisk,libcom32.c32,libutil.c32} /boot/extlinux/

# vi /boot/extlinux/extlinux.conf

note: extlinux expects /boot on the root subvolume.
# mount -o bind /@gentoo32/boot /boot

grub2 is the biggest & most complicated beast.. my last preference. if you ever need to troubleshoot, you'll cry.. :'(
# emerge --ask sys-boot/grub
# grub2-install /dev/{partition}
# grub2-mkconfig -o /boot/grub/grub.cfg

the end
you could just ctrl+alt+del. a stable system would sync to disk, umount all filesystems, before calling reboot.
or be safe..

exit chroot
# exit

unmount and reboot..
# cd
# umount -l /mnt/gentoo/dev{/shm,/pts,}
# umount /mnt/gentoo{/boot,/sys,/proc,}
# reboot


update: i successfully managed to prune this install path quite significantly. see my latest post: gentoo second install x86 btrfs debian

gentoo first attempt

i finally decided to jump in, and created another btrfs partition for gentoo with two subvolumes. with btrfs i don't have anything on the root subvolume.

i really didn't expect an install to drag on for so long. i don't like to give up part-way, unless i feel it is a lost investment. and i was losing it. i would have, but for some kindly folks on the gentoo forum. the gentoo forum is one of the most responsive and helpful forums i have been in.

i made some major mistakes.. some inadvertantly, and many due to my misunderstanding of gentoo portage. what made it exponentially troublesome was the long compile times to try and get back the system to what i thought would be the normal. what made it worth continuing was the folks on the gentoo forum, and the extremely detailed online documentation.

one thing which i find disturbing is the diskspace requirement mentioned in the docs, and the discrepancy i find in my own experience. some others on the forum seem to be using many times over what i have ended up using. not comforting..

the other thing was watching the screen flash past too quickly for me to read anything useful, and too long for me doing nothing but stare at it hoping it will finish in another moment.

i was determined not to give systemd/udev a leg in here, and was chuffed that i could block/mask them out. i had a working eudev.

but all good things come to an end too.. so at the end of a very long day and an almost sleepless night.. early morning found me holding a shiny new gentoo install with lqxt :)

i was chuffed that my first reboot was a success! there weren't any visible errors.

however all was not well in my gentoo land. i think i borked the kernel config, and lsmod lists only two modules. i couldn't bring up my wifi interface. but ethernet worked. i could go online. i had lxqt running with qupzilla :)

but the toll of this looong time spellbound watching matrix flow through my screen has been a bit too much. i don't have enough energy left to celebrate my euphoria, or document my install notes. i have to leave gentoo land now for some zzz..

multiboot btrfs subvolumes

there's an idea knocking around in my head for a while. and i want to document it here, to flush it out later..

i usually multiboot, and have several systems on the same disk. my currently laptop has 12 partitions. each os is fully contained within a partition, including the bootloader on pbr. mbr is clean. partitions are efficient in one way, but scatter diskspace in another way.

half of these dozen partitions have btrfs. and i haven't had any trouble, apart from newer versions not being backward compatible. for eg, wheezy can not access the stretch btrfs, due to some new features. but bleeding-edge stretch, ubuntu, and arch can access all other btrfs partitions.

gentoo docs gave me this idea, but it was ubuntu which made it practical. the default ubuntu install created two subvolumes, one for root and another for home. whatif i create more subvolumes and install other os in each subvolume. would they coexist together on the same partition, albeit different subvolumes? and still keep them separate? i think so.

one major risk would be an install wanting to format the partition. that might wipe all subvolumes in that partition.

i could keep a separate btrfs partition for installing, and post-install copy to a relevant new subvolume in my main btrfs partition.

i would have to keep a separate btrfs partition for each os which doesn't have the bleeding-edge btrfs. all the ones on bleeding edge could be lumped in the same partition on different subvolumes.

i did a quick search to check whether someone else has tapped this/similar idea from the collective consciousness ;)
yes they have :) and i can learn from their experience

ref:

debian to gentoo

as debian builds more & more complexity/layers obscuring internals from users, i get more & more disillusioned by the current crop of debian decision-makers. jessie, the current debian stable seems no longer stable, with an unstable init at it's core.

wheezy is/was the last stable version gone oldstable now. oldstable is expected to be even more stable than stable. but recent updates have littered wheezy with systemd and ubuntu code including upstart. even oldstable has had more than a few days downtime recently, due to buggy updates. sad for debian :(

i used to like arch. but i'm very much not into bleeding edge! hence wheezy :)

i think i'll keep my debian locked on oldstable now.

my wheezy setup is very bare. most debian components have been ripped out, and replaced with busybox or bsd alternatives which are much leaner, cleaner & simply more efficient. going forward:
syslinux
btrfs
runit (like in void)
busybox (like in alpine)
jwm

my search for debian alternatives continues.. many iterations of back & forth.. and now looking towards gentoo. i guess i'm on a quest towards leaner cleaner systems.. further embracing unix philosophy.

gentoo

i'm awed at how flexible & open gentoo wants to be! and very inspired by the gentoo philosophy & social contract.

gentoo install handbook: http://wiki.gentoo.org/wiki/handbook:x86
read all of it. skim through what you don't understand, but don't skip any parts.
now read again the bits you find interesting.
finally read all of the installation section. if you didn't understand any part, re-read it or research elsewhere till all makes sense.
if not, gentoo is not for you!

http://distfiles.gentoo.org/releases/x86/autobuilds/current-install-x86-minimal/
download two files: install-x86-minimal-{date}.iso stage3-i686-{date}.tar.bz2

gentoo suggests install from bootcd. but many alternative install methods are also offered. i'm most impressed by the wildly flexible options available, and documented! seems like they care, and i feel like i want to put my lot behind them..

bios acpi dsdt

bios: basic input/output system
acpi: advanced configuration power interface
dsdt: differentiated system description table
wheezy32: debian wheezy 32bit
arch32: arch 32bit

toshiba bios seem to be one of the most notorious and worst broken. do not choose toshiba for anything but windows, and even with that be careful. dodgy bios implementations are like broken foundations to build your home, if you want to live there yourself!

identify

so how do you identify, if your bios is broken/buggy? check kernel logs:
$ dmesg -l err
toshiba_acpi: Error reading LCD brightness
indicates direction of problems. this error points towards a buggy implementation of acpi by toshiba.

$ dmesg | grep DSDT
ACPI: DSDT 0x00000000B7CEF000 095BA (v01 TOSINV TOSINV00 00000001 MSFT 01000013)
TOSHIBA Satellite detected - force copy of DSDT to local memory
ACPI: Forced DSDT copy: length 0x095BA copied locally, original unmapped
ACPI: EC: Look up EC in DSDT
indicates that bios data is (used as original, forced) not overidden.
msft indicates that toshiba bios is specific to microsoft, particular to a windows version.
poor strategy, unless they were paid-off by microsoft.

confirm

how do you confirm whether bios provided data is usable? decompile & recompile.
a successful recompile, no errors/warnings indicates a good bios! and this has nothing to do with any operating system.

we need iasl, for this purpose.

$ apt-cache show iasl
Description: Intel ASL compiler/decompiler
 iASL compiles ASL (ACPI Source Language) into AML (ACPI Machine
 Language). This AML is suitable for inclusion as a DSDT in system
 firmware. It also can disassemble AML, for debugging purposes.
Homepage: http://acpica.org
# apt-get install iasl
$ iasl -h

$ cd /tmp
$ sudo cat /sys/firmware/acpi/tables/DSDT >dsdt.dat
$ iasl -d dsdt.dat
$ iasl -tc dsdt.dsl
the first command reads the dsdt data. do it as root.
the second command decompiles this .dat into .dsl
the third command attempts to compile, thereby generating the errors/warnings we are looking for.

i see this on wheezy32
$ iasl -tc dsdt.dsl
Intel ACPI Component Architecture
ASL Optimizing Compiler version 20100528 [Jul  2 2010]
Copyright (c) 2000 - 2010 Intel Corporation
Supports ACPI Specification Revision 4.0a

dsdt.dsl  3401:                     0x00000000,         // Length
Error    4122 -                              ^ Invalid combination of Length and Min/Max fixed flags

dsdt.dsl  3408:                     0x00000000,         // Length
Error    4122 -                              ^ Invalid combination of Length and Min/Max fixed flags

dsdt.dsl  7148:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7165:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7214:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7231:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7275:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7489:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7506:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7523:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7540:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  7557:                         Name (_PLD, Buffer (0x10)
Error    4080 -          Invalid object type for reserved name ^  (found BUFFER, requires Package)

dsdt.dsl  8873:                     Method (_GTM, 0, NotSerialized)
Warning  1088 -                                ^ Not all control paths return a value (_GTM)

dsdt.dsl  8873:                     Method (_GTM, 0, NotSerialized)
Warning  1081 -                                ^ Reserved method must return a value (Buffer required for _GTM)

dsdt.dsl  9033:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9033:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl  9101:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9101:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl  9174:                     Method (_GTM, 0, NotSerialized)
Warning  1088 -                                ^ Not all control paths return a value (_GTM)

dsdt.dsl  9174:                     Method (_GTM, 0, NotSerialized)
Warning  1081 -                                ^ Reserved method must return a value (Buffer required for _GTM)

dsdt.dsl  9334:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9334:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl  9402:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9402:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl  9507:                     Method (_GTM, 0, NotSerialized)
Warning  1088 -                                ^ Not all control paths return a value (_GTM)

dsdt.dsl  9507:                     Method (_GTM, 0, NotSerialized)
Warning  1081 -                                ^ Reserved method must return a value (Buffer required for _GTM)

dsdt.dsl  9667:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9667:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl  9735:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9735:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl  9808:                     Method (_GTM, 0, NotSerialized)
Warning  1088 -                                ^ Not all control paths return a value (_GTM)

dsdt.dsl  9808:                     Method (_GTM, 0, NotSerialized)
Warning  1081 -                                ^ Reserved method must return a value (Buffer required for _GTM)

dsdt.dsl  9968:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl  9968:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

dsdt.dsl 10036:                         Method (_GTF, 0, NotSerialized)
Warning  1088 -                                    ^ Not all control paths return a value (_GTF)

dsdt.dsl 10036:                         Method (_GTF, 0, NotSerialized)
Warning  1081 -                                    ^ Reserved method must return a value (Buffer required for _GTF)

ASL Input:  dsdt.dsl - 10111 lines, 370896 bytes, 4450 keywords
Compilation complete. 12 Errors, 24 Warnings, 0 Remarks, 37 Optimizations

12 errors, 24 warnings, i.e. not good!
i get the same results on arch32 too.. so don't go blaming wheezy32!

most popular posts