# Cannot open root device... SCSI aber im Kernel

## JKRock

Hi,

 bin ein absoluter Neuling, deswegen nicht böse sein wenn ich vielleicht etwas unzureichend oder falsch beschreibe.

Habe die Installation nach dem Gentoo Buch ausgeführt, kann jedoch beim ersten Neustart nicht weiter als zur Fehlermeldung:

```
Cannot open root device "sda3"

Please append a correct [..]

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block (0,0)
```

Nun habe ich das Partitionsschema wie im Buch gewählt

Partition 1 : Boot

             2 : Swap

             3 : Extendet

             4 : Root

und sda statt hda wegen SCSI...

Der Kernel ist nicht generisch sondern gleich irgendwie selbst gemacht... alle Optionen die nur entfernd nach SCSI aussahen sind mit (*) markiert, damit direkt in den Kernel rein-gebaut.

Liegt das PRoblem jetzt also b eim Kernel oder bei Grub?

Im Buch heißt es Grub versteht nur die Terminologie hd0,0 hd1,0 etc., aber dann wird bei einer Zeile hda3 geschrieben. Warum?

Kann der Fehler auch in der Fstab (oder wie die heißt) liegen?

Wofür steht das VFS in der Fehlermeldung?

gruß Jerry the Rock

----------

## s.hase

Zeige mal Deine fstab und grub.conf.

edit: Wenn / wirklich auf sda4 ist solltest Du das auch in die grub.conf eintragen und nicht sda3.

----------

## misterjack

Sorry, Glaskugel in der Reinigung. Bitte Ausgabe von lspci und fdisk -l sowie deine Kernelconfig posten.

----------

## JKRock

Ausgabe lspci:

```
00:00.0 Host bridge: Intel Corporation 82X38 Express DRAM Controller (rev 01)

00:01.0 PCI bridge: Intel Corporation 82X38 Express Host-Primary PCI Express Bridge (rev 01)

00:06.0 PCI bridge: Intel Corporation 82X38 Express Host-Secondary PCI Express Bridge (rev 01)

00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02)

00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02)

00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 02)

00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02)

00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 02)

00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02)

00:1c.3 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 (rev 02)

00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 02)

00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02)

00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02)

00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02)

00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)

00:1f.0 ISA bridge: Intel Corporation 82801IR (ICH9R) LPC Interface Controller (rev 02)

00:1f.2 IDE interface: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 4 port SATA IDE Controller (rev 02)

00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)

00:1f.5 IDE interface: Intel Corporation 82801I (ICH9 Family) 2 port SATA IDE Controller (rev 02)

01:00.0 VGA compatible controller: nVidia Corporation G72 [GeForce 7300 LE] (rev a1)

04:00.0 SATA controller: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)

04:00.1 IDE interface: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)

05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)

06:06.0 FireWire (IEEE 1394): Texas Instruments TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link)
```

----------

## JKRock

Ausgabe fdisk  -l:

```
Disk /dev/sda: 250.0 GB, 250058268160 bytes

255 heads, 63 sectors/track, 30401 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x0004c748

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1           5       40131   83  Linux

/dev/sda2               6         130     1004062+  82  Linux swap / Solaris

/dev/sda3             131       10091    80011732+  83  Linux

/dev/sda4           10092       30401   163140075    5  Extended

/dev/sda5           10092       30401   163140043+  83  Linux

```

ah, ok.. ich sehe, dass das doch etwas anders war - werde jetzt sda5 in die grub.conf eintragen...

edit: ach nee, würde kein Sinn machen. Bei mir ist sda5 das home-Verzeichnis...

----------

## JKRock

Ausgabe grub.conf:

```

default 0

timeout 10

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.24-gentoo-r3

root(hd0,0)

kernel /boot/kernel-2.6.24-gentoo-r3 root=/dev/sda4 ro
```

Ausgabe/Auszug fstab:

```
/dev/sda1               /boot           ext2            noauto,noatime  0 2

/dev/sda3               /               ext3            noatime         0 1

/dev/sda5               /home           ext3            noatime         0 2

/dev/sda2               none            swap            sw              0 0

/dev/cdrom              /mnt/cdrom      audo            noauto,ro       0 0

#/dev/fd0               /mnt/floppy     auto            noauto          0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for

# POSIX shared memory (shm_open, shm_unlink).

# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will

#  use almost no memory if not populated with files)

shm                     /dev/shm        tmpfs           nodev,nosuid,noexec     0 0

```

----------

## firefly

wie denn nu was ist deine root-partition sda3 oder sda4 ?

in grub.conf schreibst du sda4 aber in der fstab sda3. Entscheide dich mal.

Und sda4 kann es nicht sein, da diese eine Erweiterte Partition ist.

----------

## bbgermany

Hi,

also nen SCSI Controller sehe ich nicht. Nur einen SATA JMicron und den Intel SATA Controller. Den Intel Controller solltest du via libata mit dem AHCI Treiber nutzen können. Für den JMicron sollte es einen Treiber im gleichen Submenü geben. SATA Disk Support sollte vielleicht noch eingeschaltet sein, aber nur SCSI Support reicht hier nicht!

MfG. Stefan

----------

## JKRock

 *misterjack wrote:*   

> Sorry, Glaskugel in der Reinigung. Bitte Ausgabe von lspci und fdisk -l sowie deine Kernelconfig posten.

 

lspci und fdisk -l Ausgaben habe ich ja nun gepostet - zu der Kernelconfig:

Meinst du damit die Textdatei 

```
/usr/src/linux/.config
```

 ?

Die habe ich mittels cp ins selbe Verzeichnis als myconfig erstellt und diese Datei beinhaltet 1128 Zeilen!

Welche davon sind relevant?

----------

## JKRock

 *firefly wrote:*   

> wie denn nu was ist deine root-partition sda3 oder sda4 ?
> 
> in grub.conf schreibst du sda4 aber in der fstab sda3. Entscheide dich mal.
> 
> Und sda4 kann es nicht sein, da diese eine Erweiterte Partition ist.

 

Sorry, das ist jetzt nur inkonsistent weil ich nach Fehlerfolgen ausprobiert habe,

 meine root-PArtition soll sein sda3 und auch als in fstab als auch grub.conf jeweils sda3 stand, kam die gleiche Fehlermeldung...

----------

## bbgermany

Hi,

make menuconfig und selber konfigurieren, ansonsten musst du dir eine Ramdisk erstellen, sonst werden deine SCSI Treiber nicht geladen und der Kernel Panic entsteht. Am besten die Treiber für die Plattencontroller fest in den Kernel integrieren.

MfG. Stefan

----------

## JKRock

 *bbgermany wrote:*   

> Hi,
> 
> also nen SCSI Controller sehe ich nicht. Nur einen SATA JMicron und den Intel SATA Controller. Den Intel Controller solltest du via libata mit dem AHCI Treiber nutzen können. Für den JMicron sollte es einen Treiber im gleichen Submenü geben. SATA Disk Support sollte vielleicht noch eingeschaltet sein, aber nur SCSI Support reicht hier nicht!
> 
> MfG. Stefan

 

Danke für die schnelle Hilfe, das könnte es wirklich sein, da ich genau an diesem Punkt am wenigsten verstehe...   :Laughing: 

Also du meinst indem Kernel-Menü (kA wie das heißt) das mittels make menuconfig aufploppt ist ein

AHCI Treiber von libata anwählbar? Ich werde das erst später ausprobieren können, muss jetzt schon leider los...

gruß JKRock

----------

## bbgermany

Diesmal hatte ich einen kleinen Tippfehler, es muss SCSI-Disksupport heißen nicht SATA-Disksupport  :Wink:  Zu finden im SCSI Submenü. Für libata gibt es auch ein Submenü

MfG. Stefan

----------

## balgo

Nimm doch mal meine Einstellungen, da ich ähnliche Hardware habe.

```

Device Drivers --->

< > ATA/ATAPI/MFM/RLL support

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers --->

       <*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support

       <*> Generic ATA support

       <*> JMicron PATA support

Device Drivers --->

SCSI device support  --->

       [*] legacy /proc/scsi/ support

       --- SCSI support type (disk, tape, CD-ROM)

       <*> SCSI disk support

       <*> SCSI CDROM support

```

----------

## JKRock

hiho,

 hatte jetzt längere Zeit nicht die Möglichkeit die Vorschläge in die Tat umzusetzen...

heute musste ich aber feststellen dass ich die besagten Treiber, seien es nun die von balgo vorgeschlagenen

```
Device Drivers --->

< > ATA/ATAPI/MFM/RLL support

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers --->

      [bug=] <*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support

       <*> Generic ATA support

       <*> JMicron PATA support[/bug]

Device Drivers --->

SCSI device support  --->

       [*] legacy /proc/scsi/ support

       --- SCSI support type (disk, tape, CD-ROM)

       <*> SCSI disk support

       <*> SCSI CDROM support 
```

oder die von bbgermany:

 *Quote:*   

> Den Intel Controller solltest du via libata mit dem AHCI Treiber nutzen können. Für den JMicron sollte es einen Treiber im gleichen Submenü geben

 

Wenn ich innerhalb von menuconfig

 Serial ATA (prod) and Parallel ATA (experimental) drivers mit * inkludiere bekomme ich nur generische Treiber zur Auswahl.

Wie komme ich also an die richtigen Treiber?

plz help  gruß JKRock

----------

## bbgermany

Hi,

mach das mal so:

```

Device Drivers  --->

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers  ---> 

```

Wenn deine Platte am ICH Controller angeschlossen ist, dann folgendes auswählen (nicht vergessen im BIOS AHCI Support aktivieren):

```

<*>   AHCI SATA support (NEW) 

```

Wenn deine Platte am JMicron Controller angeschlossen ist, dann folgendes auswählen:

```

<*>   JMicron PATA support (NEW)

```

Folgendes deaktivieren:

```

< > ATA/ATAPI/MFM/RLL support  --->

```

Dann sollte das auch mit /dev/sda3 im Bootloader gehen.

MfG. Stefan

----------

## JKRock

hi,

 sorry, aber ich komme damit nicht zu Potte   :Embarassed: 

@bbgermany: Ich finde nicht wirklich diese Optionen oder verstehe nicht die Struktur...

Nach deiner Beschreibung würde ich erwarten, dass man unter menuconfig folgende Optionen hat:

```

Device Drivers  --->

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->

 <*>   AHCI SATA support (NEW)

 <*>   JMicron PATA support (NEW)

< > ATA/ATAPI/MFM/RLL support  ---> 

```

Die Punkte "Serial ATA (prod) and Parallel ATA (experimental) drivers " und " ATA/ATAPI/MFM/RLL support "

sehe ich auch auf eine Ebene und habe dementsprechend schon ersteres ausgewählt und zweites abgewählt.

Doch  "AHCI SATA support (NEW)" und "JMicron PATA support (NEW)" fehlen ganz!

Wenn ich die experimentellen SATA Treiber auswähle erhalte ich als Unterpunkt nur: "Generic platforn device PATA support"

Ich werde nachfolgend die Kernel-Fehlerausgaben während des Bootens zeigen.

gruß JKRock

----------

## JKRock

Für folgende Konfiguration:

```
Device Drivers  --->

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->

 <*>  Generic platforn device PATA support

< > ATA/ATAPI/MFM/RLL support  ---> 
```

Erhalte ich

```

sda 0:0:0:0 [sda] 16384 512-byte hardware sectors (8mb)

sda 0:0:0:0 [sda] Write Protect is off

sda 0:0:0:0 [sda] Write cache: enabled read cache: enabled, supports DPo and FOA

sda  :  unknown partition table

sda 0:0:0:0 [sda] Attached SCSI disk

sda 0:0:0:0 Attached scsi generic sg0 type 0

BIOS EDD facility v. 0.16 2004-Jun-25,   6 devices found

VFS : Cannot open root device "sda3" or unknown-block (8,3)

Please append a correct "root='" boot option; here are the avaible partitions_

0800 8192 sda driver: sd

```

----------

## firefly

 *JKRock wrote:*   

> 
> 
>  *Quote:*   
> 
> sda 0:0:0:0 [sda] 16384 512-byte hardware sectors (8mb)
> ...

 

da passt was mit deiner Partitionstabelle nicht, oder der support wurde im kernel vergessen einzubauen

----------

## JKRock

Wenn ich innerhalb meines BIOS  ( CMOS SETUP Utility von Award Software),

bei der Option SATA RAID/AHCI MODE auf [AHCI] stelle, erhalte ich folgendes:

```

sda  :  unknown partition table

sda 0:0:0:0 [sda] Attached SCSI disk

sda 0:0:0:0 Attached scsi generic sg0 type 0

BIOS EDD facility v. 0.16 2004-Jun-25,   6 devices found

[b]atkbd.c Spurious NAK on isa0060, serio0. Some program might be trying acces hardware directly.[/b]

[b]atkbd.c Spurious NAK on isa0060, serio0. Some program might be trying acces hardware directly.[/b]

VFS : Cannot open root device "sda3" or unknown-block (8,3)

Please append a correct "root='" boot option; here are the avaible partitions_

0800 8192 sda driver: sd 

```

----------

## JKRock

Wenn ich noch im BIOS bei

SATA Port0-3 Native Mode aktiviere, entgehe ich der Fehlermeldung:

atkbd.c Spurious NAK on isa0060, serio0. Some program might be trying acces hardware directly.

@firefly:  Wie und wo soll ich denn die Partitionstabelle noch mehr (besser) abchecken als mit 

fdisk ,  fstab, grub.conf ?

Und was für ein Support könnte denn dem Kernel fehlen?

----------

## JKRock

also sicherheitshalber nochmal die holy three:

fdisk:

```

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System

/dev/sda1   *           1           5       40131   83  Linux

/dev/sda2               6         130     1004062+  82  Linux Swap / Solaris

/dev/sda3             131       10091    80011732+  83  Linux

/dev/sda4           10092       30401   163140075    5  Erweiterte

/dev/sda5           10092       30401   163140043+  83  Linux

```

fstab:

```

/dev/sda1               /boot           ext2            noauto,noatime  0 2

/dev/sda3               /               ext3            noatime         0 1

/dev/sda5               /home           ext3            noatime         0 2

/dev/sda2               none            swap            sw              0 0

/dev/cdrom              /mnt/cdrom      audo            noauto,ro       0 0

#/dev/fd0               /mnt/floppy     auto            noauto          0 0

proc                    /proc           proc            defaults        0 0

[profile=]

```

grub.conf:

```

default 0

timeout 10

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.24-gentoo-r3

root(hd0,0)

kernel /boot/kernel-2.6.24-gentoo-r3 root=/dev/sda3 ro

```

gruß JKRock[/profile]

----------

## bbgermany

Hi,

hast du zufällig folgendes in deiner .config vergessen zu setzen?

```

CONFIG_HAS_IOMEM=y

CONFIG_BLOCK=y

```

MfG. Stefan

----------

## JKRock

hallo,

 ich konnte mein problem immer noch nicht lösen - ich versteh nicht was gentoo gegen mich hat   :Crying or Very sad: 

Ich habe mal nebenbei bei meinem Laptop versucht die ganze Geschichte mit einem generischen Kernel zu versuchen - Ergebnis: beim booten lande ich in einer "Minimal Bash-like" Grub Shell...   :Embarassed: 

 *bbgermany wrote:*   

> Hi,
> 
> hast du zufällig folgendes in deiner .config vergessen zu setzen?
> 
> ```
> ...

 

Diese Optionen sind auf jeden Fall bei der Laptop .config enthalten - anderes muss ich noch prüfen!

[Edit] Auch bei meinem Desktop-Rechner sind diese Optionen in der .config[/Edit]

Auf die Frage warum ich

```

Device Drivers  --->

<*> Serial ATA (prod) and Parallel ATA (experimental) drivers  --->

 <*>   AHCI SATA support (NEW)     <---- das hier !!!!!

 <*>   JMicron PATA support (NEW)  <---- und auch dass hier!!!

```

nicht zur Auswahl bekomme habe ich immer noch keine Antwort gefunden...   :Confused: 

Was ich bei anderen Kompilier-Tuts gelesen habe, gibt mir zu verstehen dass man dem Kernel Patches hinzufügen kann - Kann es sein dass ich welche brauche?

[Edit]Kann ich generell nachdem ich mit genkernel kkompiliert habe Optionen in der .config ändern und dann manuell kompilieren ?[/Edit]

gruß JKRock

----------

## bbgermany

Hast du vielleicht das hier vergessen:

```

General setup  --->

[*] Prompt for development and/or incomplete code/drivers

```

Ohne das, siehst du die Menüs überhaupt nicht.

MfG. Stefan

----------

## obrut<-

patches sind definitiv nicht erforderlich! die gesuchten treiber gehören standardmäßig zum kernel dazu.

hast du unter "bus options" "pci" ausgewählt?

noch was:

kompilier die unterstützung für ext2 und ext3 am besten fest in den kernel ein. das ist nämlich ein weiterer stolperstein, der manches system nicht booten lässt.

----------

## JKRock

 *bbgermany wrote:*   

> Hast du vielleicht das hier vergessen:
> 
> ```
> 
> General setup  --->
> ...

 

Tatsächlich habe ich diesen Menupunkt selectiert, aber mit diesem Hinweis hast du mich darauf gebracht nach ähnlichem zu suchen und siehe da, ich hatte ganze Zeit

```

Device Drivers --->

Generic Driver Options --->

       [*] Select only Drivers that don't need compile-time external firmware

 
```

selectiert!

Nach wegklicken dieses Punktes wurden mit einem Male eine ganze Menge Treiber sichtbar, darunter auch die von euch vorgeschlagenen. Werde jetzt testen ob es mit denen klappt!

[Edit]

Es klappt immer noch nicht - ein Trauerspiel   :Crying or Very sad: 

Habe auch überprüft ob ext2 und 3 reincompiliert sind; auch "bus options" "pci" ist eingestellt...

[/Edit]

gruß JKRockLast edited by JKRock on Mon May 19, 2008 9:45 am; edited 2 times in total

----------

## JKRock

Kann ich denn irgendwoher eine fertige .config holen, reinkopieren und per make compilieren -> könnte soetwas klappen?

Ich benutze ganze Zeit das stage archiv aus der 2007 Version - ist die 2008er ausgereifter? Könnte es mit der eher klappen?

Vielleicht könnt ihr mit meiner .config was anfangen?

Auszug aus meiner .config (nicht inkludierte treiber & co sind nicht aufgeführt):

```

#

# Automatically generated make config: don't edit

# Linux kernel version: 2.6.24-gentoo-r3

# Mon May 19 08:59:28 2008

#

CONFIG_64BIT=y

CONFIG_X86_64=y

CONFIG_X86=y

CONFIG_GENERIC_TIME=y

CONFIG_GENERIC_CMOS_UPDATE=y

CONFIG_CLOCKSOURCE_WATCHDOG=y

CONFIG_GENERIC_CLOCKEVENTS=y

CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y

CONFIG_LOCKDEP_SUPPORT=y

CONFIG_STACKTRACE_SUPPORT=y

CONFIG_SEMAPHORE_SLEEPERS=y

CONFIG_MMU=y

CONFIG_ZONE_DMA=y

CONFIG_GENERIC_ISA_DMA=y

CONFIG_GENERIC_IOMAP=y

CONFIG_GENERIC_BUG=y

CONFIG_GENERIC_HWEIGHT=y

CONFIG_ARCH_MAY_HAVE_PC_FDC=y

CONFIG_DMI=y

CONFIG_RWSEM_GENERIC_SPINLOCK=y

CONFIG_GENERIC_CALIBRATE_DELAY=y

CONFIG_GENERIC_TIME_VSYSCALL=y

CONFIG_ARCH_SUPPORTS_OPROFILE=y

CONFIG_ZONE_DMA32=y

CONFIG_ARCH_POPULATES_NODE_MAP=y

CONFIG_AUDIT_ARCH=y

CONFIG_GENERIC_HARDIRQS=y

CONFIG_GENERIC_IRQ_PROBE=y

CONFIG_GENERIC_PENDING_IRQ=y

CONFIG_X86_HT=y

CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#

# General setup

#

CONFIG_EXPERIMENTAL=y

CONFIG_LOCK_KERNEL=y

CONFIG_INIT_ENV_ARG_LIMIT=32

CONFIG_LOCALVERSION=""

CONFIG_LOCALVERSION_AUTO=y

CONFIG_SWAP=y

CONFIG_AUDIT=y

CONFIG_LOG_BUF_SHIFT=15

CONFIG_FAIR_GROUP_SCHED=y

CONFIG_FAIR_USER_SCHED=y

CONFIG_SYSFS_DEPRECATED=y

CONFIG_BLK_DEV_INITRD=y

CONFIG_INITRAMFS_SOURCE=""

CONFIG_CC_OPTIMIZE_FOR_SIZE=y

CONFIG_SYSCTL=y

CONFIG_EMBEDDED=y

CONFIG_SYSCTL_SYSCALL=y

CONFIG_KALLSYMS=y

CONFIG_HOTPLUG=y

CONFIG_PRINTK=y

CONFIG_BUG=y

CONFIG_ELF_CORE=y

CONFIG_BASE_FULL=y

CONFIG_FUTEX=y

CONFIG_ANON_INODES=y

CONFIG_EPOLL=y

CONFIG_SIGNALFD=y

CONFIG_EVENTFD=y

CONFIG_SHMEM=y

CONFIG_VM_EVENT_COUNTERS=y

CONFIG_SLUB_DEBUG=y

CONFIG_SLUB=y

CONFIG_SLABINFO=y

CONFIG_RT_MUTEXES=y

CONFIG_BASE_SMALL=0

CONFIG_MODULES=y

CONFIG_STOP_MACHINE=y

CONFIG_BLOCK=y

#

# IO Schedulers

#

CONFIG_IOSCHED_NOOP=y

CONFIG_IOSCHED_AS=y

CONFIG_IOSCHED_DEADLINE=y

CONFIG_IOSCHED_CFQ=y

CONFIG_DEFAULT_CFQ=y

CONFIG_DEFAULT_IOSCHED="cfq"

#

# Processor type and features

#

CONFIG_GENERIC_CLOCKEVENTS_BUILD=y

CONFIG_SMP=y

CONFIG_X86_PC=y

CONFIG_MCORE2=y

CONFIG_X86_L1_CACHE_BYTES=64

CONFIG_X86_INTERNODE_CACHE_BYTES=64

CONFIG_X86_CMPXCHG=y

CONFIG_X86_L1_CACHE_SHIFT=6

CONFIG_X86_GOOD_APIC=y

CONFIG_X86_INTEL_USERCOPY=y

CONFIG_X86_USE_PPRO_CHECKSUM=y

CONFIG_X86_TSC=y

CONFIG_X86_MINIMUM_CPU_FAMILY=64

CONFIG_HPET_TIMER=y

CONFIG_GART_IOMMU=y

CONFIG_SWIOTLB=y

CONFIG_NR_CPUS=8

CONFIG_SCHED_MC=y

CONFIG_PREEMPT_NONE=y

CONFIG_PREEMPT_BKL=y

CONFIG_X86_LOCAL_APIC=y

CONFIG_X86_IO_APIC=y

CONFIG_MICROCODE=y

CONFIG_MICROCODE_OLD_INTERFACE=y

CONFIG_X86_MSR=y

CONFIG_X86_CPUID=y

CONFIG_ARCH_FLATMEM_ENABLE=y

CONFIG_ARCH_SPARSEMEM_ENABLE=y

CONFIG_SELECT_MEMORY_MODEL=y

CONFIG_FLATMEM_MANUAL=y

CONFIG_FLATMEM=y

CONFIG_FLAT_NODE_MEM_MAP=y

CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y

CONFIG_SPLIT_PTLOCK_CPUS=4

CONFIG_RESOURCES_64BIT=y

CONFIG_ZONE_DMA_FLAG=1

CONFIG_BOUNCE=y

CONFIG_VIRT_TO_BUS=y

CONFIG_MTRR=y

CONFIG_SECCOMP=y

CONFIG_HZ_250=y

CONFIG_HZ=250

CONFIG_PHYSICAL_START=0x200000

CONFIG_PHYSICAL_ALIGN=0x200000

CONFIG_HOTPLUG_CPU=y

CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y

#

# Power management options

#

CONFIG_ARCH_HIBERNATION_HEADER=y

CONFIG_PM=y

CONFIG_PM_SLEEP_SMP=y

CONFIG_PM_SLEEP=y

CONFIG_SUSPEND_SMP_POSSIBLE=y

CONFIG_SUSPEND=y

CONFIG_HIBERNATION_SMP_POSSIBLE=y

CONFIG_HIBERNATION=y

CONFIG_PM_STD_PARTITION=""

CONFIG_ACPI=y

CONFIG_ACPI_SLEEP=y

CONFIG_ACPI_PROCFS_POWER=y

CONFIG_ACPI_SYSFS_POWER=y

CONFIG_ACPI_PROC_EVENT=y

CONFIG_ACPI_AC=y

CONFIG_ACPI_BATTERY=y

CONFIG_ACPI_BUTTON=y

CONFIG_ACPI_FAN=y

CONFIG_ACPI_PROCESSOR=y

CONFIG_ACPI_HOTPLUG_CPU=y

CONFIG_ACPI_THERMAL=y

CONFIG_ACPI_BLACKLIST_YEAR=0

CONFIG_ACPI_EC=y

CONFIG_ACPI_POWER=y

CONFIG_ACPI_SYSTEM=y

CONFIG_X86_PM_TIMER=y

CONFIG_ACPI_CONTAINER=y

#

# CPU Frequency scaling

#

CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y

CONFIG_CPU_FREQ_STAT=y

CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y

CONFIG_CPU_FREQ_GOV_PERFORMANCE=y

#

# CPUFreq processor drivers

#

CONFIG_X86_P4_CLOCKMOD=y

#

# shared options

#

CONFIG_X86_SPEEDSTEP_LIB=y

CONFIG_CPU_IDLE=y

CONFIG_CPU_IDLE_GOV_LADDER=y

#

# Bus options (PCI etc.)

#

CONFIG_PCI=y

CONFIG_PCI_DIRECT=y

CONFIG_PCI_MMCONFIG=y

CONFIG_PCI_DOMAINS=y

CONFIG_PCIEPORTBUS=y

CONFIG_HOTPLUG_PCI_PCIE=y

CONFIG_PCIEAER=y

CONFIG_ARCH_SUPPORTS_MSI=y

CONFIG_PCI_LEGACY=y

CONFIG_HT_IRQ=y

CONFIG_ISA_DMA_API=y

CONFIG_K8_NB=y

CONFIG_PCCARD=y

CONFIG_PCMCIA=y

CONFIG_PCMCIA_LOAD_CIS=y

CONFIG_PCMCIA_IOCTL=y

CONFIG_CARDBUS=y

#

# PC-card bridges

#

CONFIG_HOTPLUG_PCI=y

#

# Executable file formats / Emulations

#

CONFIG_BINFMT_ELF=y

#

# Networking

#

CONFIG_NET=y

#

# Networking options

#

#

# Network testing

#

CONFIG_IRDA=m

#

# IrDA protocols

#

#

# IrDA options

#

#

# Infrared-port device drivers

#

#

# SIR device drivers

#

#

# Dongle support

#

#

# Old SIR device drivers

#

#

# Old Serial dongle support

#

#

# FIR device drivers

#

CONFIG_BT=m

#

# Bluetooth device drivers

#

#

# Wireless

#

CONFIG_CFG80211=y

CONFIG_NL80211=y

CONFIG_WIRELESS_EXT=y

CONFIG_IEEE80211=y

CONFIG_IEEE80211_CRYPT_WEP=y

CONFIG_IEEE80211_CRYPT_CCMP=m

CONFIG_IEEE80211_CRYPT_TKIP=m

CONFIG_RFKILL=m

#

# Device Drivers

#

#

# Generic Driver Options

#

CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"

CONFIG_PREVENT_FIRMWARE_BUILD=y

CONFIG_FW_LOADER=y

CONFIG_CONNECTOR=y

CONFIG_PROC_EVENTS=y

CONFIG_MTD=m

#

# User Modules And Translation Layers

#

CONFIG_MTD_BLKDEVS=m

CONFIG_NFTL=m

CONFIG_SSFDC=m

#

# RAM/ROM/Flash chip drivers

#

CONFIG_MTD_MAP_BANK_WIDTH_1=y

CONFIG_MTD_MAP_BANK_WIDTH_2=y

CONFIG_MTD_MAP_BANK_WIDTH_4=y

CONFIG_MTD_CFI_I1=y

CONFIG_MTD_CFI_I2=y

CONFIG_MTD_RAM=m

#

# Mapping drivers for chip access

#

#

# Self-contained MTD device drivers

#

#

# Disk-On-Chip Device Drivers

#

#

# UBI - Unsorted block images

#

CONFIG_PARPORT=y

CONFIG_PNP=y

#

# Protocols

#

CONFIG_PNPACPI=y

CONFIG_BLK_DEV=y

CONFIG_BLK_DEV_RAM=y

CONFIG_BLK_DEV_RAM_COUNT=16

CONFIG_BLK_DEV_RAM_SIZE=4096

CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024

CONFIG_MISC_DEVICES=y

#

# SCSI device support

#

CONFIG_RAID_ATTRS=m

CONFIG_SCSI=y

CONFIG_SCSI_DMA=y

CONFIG_SCSI_TGT=y

CONFIG_SCSI_PROC_FS=y

#

# SCSI support type (disk, tape, CD-ROM)

#

CONFIG_BLK_DEV_SD=y

CONFIG_CHR_DEV_ST=y

CONFIG_CHR_DEV_OSST=y

CONFIG_BLK_DEV_SR=y

CONFIG_BLK_DEV_SR_VENDOR=y

CONFIG_CHR_DEV_SG=y

CONFIG_CHR_DEV_SCH=y

#

# Some SCSI devices (e.g. CD jukebox) support multiple LUNs

#

CONFIG_SCSI_MULTI_LUN=y

CONFIG_SCSI_CONSTANTS=y

CONFIG_SCSI_LOGGING=y

CONFIG_SCSI_SCAN_ASYNC=y

CONFIG_SCSI_WAIT_SCAN=m

#

# SCSI Transports

#

CONFIG_SCSI_SPI_ATTRS=y

CONFIG_SCSI_LOWLEVEL=y

CONFIG_SCSI_DEBUG=y

CONFIG_SCSI_LOWLEVEL_PCMCIA=y

CONFIG_ATA=y

CONFIG_ATA_ACPI=y

CONFIG_ATA_PIIX=y

CONFIG_ATA_GENERIC=y

CONFIG_PATA_JMICRON=y

CONFIG_PATA_PLATFORM=y

CONFIG_MD=y

#

# IEEE 1394 (FireWire) support

#

CONFIG_NETDEVICES=y

CONFIG_NETDEV_1000=y

CONFIG_NETDEV_10000=y

#

# Wireless LAN

#

CONFIG_ISDN=m

CONFIG_PHONE=m

#

# Input device support

#

CONFIG_INPUT=y

#

# Userland interfaces

#

CONFIG_INPUT_MOUSEDEV=y

CONFIG_INPUT_MOUSEDEV_PSAUX=y

CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024

CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768

CONFIG_INPUT_JOYDEV=m

CONFIG_INPUT_EVDEV=y

CONFIG_INPUT_EVBUG=y

#

# Input Device Drivers

#

CONFIG_INPUT_KEYBOARD=y

CONFIG_KEYBOARD_ATKBD=y

CONFIG_INPUT_MOUSE=y

CONFIG_MOUSE_PS2=y

CONFIG_MOUSE_PS2_ALPS=y

CONFIG_MOUSE_PS2_LOGIPS2PP=y

CONFIG_MOUSE_PS2_SYNAPTICS=y

CONFIG_MOUSE_PS2_LIFEBOOK=y

CONFIG_MOUSE_PS2_TRACKPOINT=y

#

# Hardware I/O ports

#

CONFIG_SERIO=y

CONFIG_SERIO_I8042=y

CONFIG_SERIO_SERPORT=y

CONFIG_SERIO_LIBPS2=y

#

# Character devices

#

CONFIG_VT=y

CONFIG_VT_CONSOLE=y

CONFIG_HW_CONSOLE=y

CONFIG_SERIAL_NONSTANDARD=y

#

# Serial drivers

#

CONFIG_FIX_EARLYCON_MEM=y

#

# Non-8250 serial port support

#

CONFIG_UNIX98_PTYS=y

CONFIG_LEGACY_PTYS=y

CONFIG_LEGACY_PTY_COUNT=256

CONFIG_HW_RANDOM=m

CONFIG_HW_RANDOM_INTEL=m

CONFIG_HW_RANDOM_AMD=m

#

# PCMCIA character devices

#

CONFIG_DEVPORT=y

#

# SPI support

#

CONFIG_POWER_SUPPLY=y

CONFIG_HWMON=y

#

# Sonics Silicon Backplane

#

CONFIG_SSB_POSSIBLE=y

#

# Multifunction device drivers

#

#

# Multimedia devices

#

CONFIG_DAB=y

#

# Graphics support

#

CONFIG_AGP=y

CONFIG_AGP_AMD64=y

CONFIG_DRM=y

CONFIG_VIDEO_OUTPUT_CONTROL=y

CONFIG_FB=y

CONFIG_FB_DEFERRED_IO=y

#

# Frame buffer hardware drivers

#

#

# Display device support

#

CONFIG_DISPLAY_SUPPORT=y

#

# Display hardware drivers

#

#

# Console display driver support

#

CONFIG_VGA_CONSOLE=y

CONFIG_DUMMY_CONSOLE=y

CONFIG_FRAMEBUFFER_CONSOLE=y

CONFIG_FONT_8x8=y

CONFIG_FONT_8x16=y

#

# Sound

#

CONFIG_SOUND=y

#

# Advanced Linux Sound Architecture

#

CONFIG_SND=y

CONFIG_SND_TIMER=y

CONFIG_SND_PCM=y

CONFIG_SND_RAWMIDI=y

CONFIG_SND_OSSEMUL=y

CONFIG_SND_PCM_OSS=y

CONFIG_SND_PCM_OSS_PLUGINS=y

CONFIG_SND_DYNAMIC_MINORS=y

CONFIG_SND_SUPPORT_OLD_API=y

CONFIG_SND_VERBOSE_PROCFS=y

#

# Generic devices

#

CONFIG_SND_MPU401_UART=y

CONFIG_SND_MTPAV=y

CONFIG_SND_MPU401=y

#

# PCI devices

#

#

# PCMCIA devices

#

#

# System on Chip audio support

#

CONFIG_SND_SOC=y

#

# SoC Audio support for SuperH

#

#

# Open Sound System

#

CONFIG_HID_SUPPORT=y

CONFIG_HID=y

CONFIG_USB_SUPPORT=y

CONFIG_USB_ARCH_HAS_HCD=y

CONFIG_USB_ARCH_HAS_OHCI=y

CONFIG_USB_ARCH_HAS_EHCI=y

#

# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'

#

#

# USB Gadget Support

#

CONFIG_USB_GADGET=y

CONFIG_USB_GADGET_DEBUG_FILES=y

CONFIG_USB_GADGET_SELECTED=y

CONFIG_USB_GADGET_M66592=y

CONFIG_USB_M66592=y

CONFIG_USB_GADGET_DUALSPEED=y

CONFIG_USB_FILE_STORAGE=m

CONFIG_USB_G_SERIAL=m

CONFIG_MMC=y

#

# MMC/SD Card Drivers

#

CONFIG_MMC_BLOCK=y

CONFIG_MMC_BLOCK_BOUNCE=y

#

# MMC/SD Host Controller Drivers

#

CONFIG_NEW_LEDS=y

#

# LED drivers

#

#

# LED Triggers

#

CONFIG_DMADEVICES=y

#

# DMA Devices

#

CONFIG_VIRTUALIZATION=y

#

# Userspace I/O

#

CONFIG_UIO=y

#

# Firmware Drivers

#

CONFIG_EDD=y

CONFIG_DMIID=y

#

# File systems

#

CONFIG_EXT2_FS=y

CONFIG_EXT2_FS_XATTR=y

CONFIG_EXT2_FS_POSIX_ACL=y

CONFIG_EXT2_FS_SECURITY=y

CONFIG_EXT2_FS_XIP=y

CONFIG_FS_XIP=y

CONFIG_EXT3_FS=y

CONFIG_EXT3_FS_XATTR=y

CONFIG_EXT3_FS_POSIX_ACL=y

CONFIG_EXT3_FS_SECURITY=y

CONFIG_JBD=y

CONFIG_FS_MBCACHE=y

CONFIG_REISERFS_FS=y

CONFIG_REISERFS_CHECK=y

CONFIG_REISERFS_PROC_INFO=y

CONFIG_REISERFS_FS_XATTR=y

CONFIG_REISERFS_FS_POSIX_ACL=y

CONFIG_REISERFS_FS_SECURITY=y

CONFIG_FS_POSIX_ACL=y

CONFIG_ROMFS_FS=y

CONFIG_INOTIFY=y

CONFIG_INOTIFY_USER=y

CONFIG_DNOTIFY=y

CONFIG_AUTOFS_FS=y

CONFIG_AUTOFS4_FS=y

CONFIG_FUSE_FS=y

#

# CD-ROM/DVD Filesystems

#

#

# DOS/FAT/NT Filesystems

#

#

# Pseudo filesystems

#

CONFIG_PROC_FS=y

CONFIG_PROC_SYSCTL=y

CONFIG_SYSFS=y

#

# Miscellaneous filesystems

#

CONFIG_NETWORK_FILESYSTEMS=y

#

# Partition Types

#

CONFIG_PARTITION_ADVANCED=y

CONFIG_MSDOS_PARTITION=y

CONFIG_LDM_PARTITION=y

CONFIG_LDM_DEBUG=y

CONFIG_NLS=y

CONFIG_NLS_DEFAULT="iso8859-1"

CONFIG_INSTRUMENTATION=y

#

# Kernel hacking

#

CONFIG_TRACE_IRQFLAGS_SUPPORT=y

CONFIG_ENABLE_WARN_DEPRECATED=y

CONFIG_ENABLE_MUST_CHECK=y

CONFIG_UNUSED_SYMBOLS=y

CONFIG_DEBUG_FS=y

CONFIG_DEBUG_KERNEL=y

CONFIG_DETECT_SOFTLOCKUP=y

CONFIG_SCHED_DEBUG=y

CONFIG_FORCED_INLINING=y

CONFIG_EARLY_PRINTK=y

#

# Security options

#

CONFIG_CRYPTO=y

CONFIG_CRYPTO_ALGAPI=y

CONFIG_CRYPTO_BLKCIPHER=y

CONFIG_CRYPTO_MANAGER=y

CONFIG_CRYPTO_ECB=y

CONFIG_CRYPTO_AES=m

CONFIG_CRYPTO_ARC4=y

CONFIG_CRYPTO_MICHAEL_MIC=m

CONFIG_CRYPTO_HW=y

#

# Library routines

#

CONFIG_BITREVERSE=y

CONFIG_CRC_CCITT=m

CONFIG_CRC32=y

CONFIG_PLIST=y

CONFIG_HAS_IOMEM=y

CONFIG_HAS_IOPORT=y

CONFIG_HAS_DMA=y

```

----------

## bbgermany

Hi,

wiedereinmal verstehe ich nicht, warum du:

```

CONFIG_ATA_PIIX=y 

```

setzt anstatt von:

```

CONFIG_SATA_AHCI

```

Dein Controller sollte AHCI fähig sein. Nur weil du einen Intel Chipsatzt hast, heist es noch lange nicht, dass man den "alten" PIIX Treiber nutzen muss.

MfG. Stefan

----------

## JKRock

 *bbgermany wrote:*   

> Hi,
> 
> wiedereinmal verstehe ich nicht, warum du:
> 
> ```
> ...

 

Sorry, das muss irgendwann wieder verloren gegangen sein... Nachdem ich das reinkompiliere (habe jetzt manuell die .config verändert..), komme ich nur etwas weiter... Die Anzahl der verfügbaren Partitionen scheint im Fehlerbericht größer:

```

VFS : Cannot open root device "sda3" or unknown-block (8,3)

Please append a correct "root='" boot option; here are the avaible partitions_ 

0800 8192 sda driver:sd

0b00 1048575 sr0 driver:sr

0810 244197527 sdb driver: sd

0811       40131      sdb1

0812    1004062    sdb2

0813  80011732    sdb3

0814                  1    sdb4

0815  163140043 sdb5

```

Ich weiss auch nicht so recht wie man diese "partitionstabelle" zu verstehen hat, bzw. kann es mir nur zusammenreimen (sdgb4 ist wahrscheinlich die erweiterte Partition...)

gruß JKRock

----------

## Finswimmer

Ändere mal in grub/lillo root auf sdb3 und nicht sda3. Anscheinend erkennt er die Festplatte jetzt als Slave am 1. Controller.

Dann *sollte* es gehen, sofern du auf sdb3 wirklich ein funktionierendes Root-System hast.

Tobi

----------

## bbgermany

 *Finswimmer wrote:*   

> Ändere mal in grub/lillo root auf sdb3 und nicht sda3. Anscheinend erkennt er die Festplatte jetzt als Slave am 1. Controller.
> 
> Dann *sollte* es gehen, sofern du auf sdb3 wirklich ein funktionierendes Root-System hast.
> 
> Tobi

 

Nicht zu vergessen, dass dann die fstab auch entsprechend anzupassen ist!

MfG. Stefan

----------

## JKRock

 *Finswimmer wrote:*   

> Ändere mal in grub/lillo root auf sdb3 und nicht sda3. Anscheinend erkennt er die Festplatte jetzt als Slave am 1. Controller.
> 
> Dann *sollte* es gehen, sofern du auf sdb3 wirklich ein funktionierendes Root-System hast.
> 
> Tobi

 

Das ganze bringt mich durcheinander... jetzt wo du es sagst scheint aus der Fehlermeldung während des bootens klar zu sein, das der Rechner seltsamerweise die Festplatte als sdb auflistet, obwohl überall angefangen beim partitionieren als sda angegeben... nun ja... aber heißt das dann, dass ich auch

```
 grub-install /dev/sdb
```

statt

```
 grub-install /dev/sda
```

ausführe (aus dem LiveCD-Modus, wo ich sda3 als gentoo gemountet habe und per chroot arbeite) ?

Und muss der Eintrag

```
root (hd0,0)
```

aus der grub.conf auch geändert werden?

gruß JKRock

----------

## JKRock

So habe nun die Sachen so verändert, wie ich es zuerst vermutet habe, d.h. bei /etc/fstab

alle Einträge der Art

```
/dev/sda3    /     ext3     noatime
```

geändert zu:

```
/dev/sdb3   /      ext3     noatime
```

Und in der grub.conf habe ich aus

```
root=/dev/sda3
```

```
root=/dev/sdb3
```

gemacht...

root(hd0,0) habe ich so gelassen!

auch habe ich grub nur mittels grub-install /dev/sda installiert...

Durch das Ganze kam ich weiter, nur bin ich noch nicht am Ziel...

Der Boot Prozess bleibt jetzt in dem Moment hängen, während folgende Ausgabe zu sehen ist:

```

Gentoo Linux ...

Mounting proc at /proc ...   [ok]

Mounting sysfs at /sys ...   [ok]

Mounting dev for /udev ...   [oops]

wrong fs type, bad options, bad superblock on udev, missing codepage or other error ..

```

*Edit* Diese Fehlermeldung ist, wie ich jetzt sehe keine Seltenheit, trotzdem bin ich wieder etwas verblüfft,

ich habe mir nämlich extra ein gentoo handbuch gekauft, doch darin wird nichts von udev erwähnt...  :Evil or Very Mad: 

Habe nun gesucht was denn Fehlerquellen sein können und folgende gefunden:

unter (kA wie diese Punkte in der .config aussehen)

File systems -->

Pseudo filesystems -->

/proc filesystem support

Virtual memory file system support

und

(kA wie die .config Einträge im menuconfig dargestellt werden)

CONFIG_HOTPLUG

CONFIG_TMPFS (war bei mir nicht gesetzt)

CONFIG_UNIX (war auch nicht gesetzt)

CONFIG_BLK_DEV_INITRD (? mysteriös bzw weiss ich nicht ob das wirklich gebraucht wird...)

diese Punkte beachten und dann emerge udev und voilá: Probelm gelöst!

So, nächster Fehler  :Rolling Eyes:   :

```

warning: no inet socket avaible: No such file or directory

* network interface eth0 does not exist

*Please verify hardware or kernel module (driver) warning: ...

*Error: Cannot start netmon as net.eth0 could not start

```

Ich nehme an da fehlen weitere Network-Componenten um die Netzwerkkarte zu erkennen...

Bin für Vorschläge dankbar...

gruß JKRock

----------

## bbgermany

Treiber für die Netzwerkkarte vergessen?

BTW, meine Glaskugel, die mir sagt, welche Netzwerkkarte bei verbaut ist, ist in der Reinigung. Die war schon sehr milchig.

MfG. Stefan

----------

## Anarcho

 *bbgermany wrote:*   

> BTW, meine Glaskugel, die mir sagt, welche Netzwerkkarte bei verbaut ist, ist in der Reinigung. Die war schon sehr milchig. 

 

Also ich weiss ja nicht was du machst, aber meine Glaskugel hält recht lange ohne Reinigung:

 *JKRock wrote:*   

> Ausgabe lspci:
> 
> ```
> 05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
> ```
> ...

 

Der richtige Treiber hier sollte der RTL8169 sein.

----------

## JKRock

 *Anarcho wrote:*   

>  *bbgermany wrote:*   BTW, meine Glaskugel, die mir sagt, welche Netzwerkkarte bei verbaut ist, ist in der Reinigung. Die war schon sehr milchig.  
> 
> Also ich weiss ja nicht was du machst, aber meine Glaskugel hält recht lange ohne Reinigung:
> 
>  *JKRock wrote:*   Ausgabe lspci:
> ...

 

jupp, scheint zu stimmen, jetzt gibt er nur noch

```
* Error: cannot start netmount as net.eth0 could not start
```

 als Fehler aus. Da scheint also noch eine andere Netwerkkomponente zu fehlen...

Ein paar Fragen:

Gibt es irgendwo eine genaue Auflistung aller make menuconfig Optionen mit Erläuterung?

Gibt es irgendwo .config Empfehlungen zu bestimmten Hardwarezusammenstellungen?

*Edit* ok, es gibt hier einige configs: http://gentoo-wiki.com/Index:Hardware

Ich weiss ja selber, dass ich die Leute schon nerve, aber ich kenne mich mit den Kernelkonfigurationen nicht so aus (hab auch noch einen Fehler bzgl.  der CPU, nur ist der boot-"text" zu schnell als dass ich ihn lesen könnte...)

-> Kann ich die Boot-Debug-Ausgabe irgendwo als log sehen?

gruß JKRock

P.S. Schonmal großen Dank an alle, die mir bisher geholfen haben!!

----------

## michael_w

 *JKRock wrote:*   

> 
> 
> Gibt es irgendwo eine genaue Auflistung aller make menuconfig Optionen mit Erläuterung?

 

Einfach mal im speziellen configpunkt auf Hilfe(Help) drücken. 

 *Quote:*   

> 
> 
> Ich weiss ja selber, dass ich die Leute schon nerve, aber ich kenne mich mit den Kernelkonfigurationen nicht so aus (hab auch noch einen Fehler bzgl.  der CPU, nur ist der boot-"text" zu schnell als dass ich ihn lesen könnte...)
> 
> -> Kann ich die Boot-Debug-Ausgabe irgendwo als log sehen?

 

dmesg auf der konsole oder nach dem booten mit Shift+Bild-nach-oben durch den Text scrollen.

----------

## Anarcho

Hast du einen dhcp Client installiert? Im stage3 Archive ist nämlich keiner enthalten (warum auch immer?).

Z.b. emerge dhcpcd

----------

## bbgermany

 *Anarcho wrote:*   

> Also ich weiss ja nicht was du machst, aber meine Glaskugel hält recht lange ohne Reinigung:
> 
>  *JKRock wrote:*   Ausgabe lspci:
> 
> ```
> ...

 

Es ging die ganze Zeit um ein Bootproblem hinsichtlich der Platte. Da kann das schonmal passieren, dass man das dann einfach nicht mehr beachtet, was ganz am Anfang des Threads steht.

Nun aber zu der Karte, die wird mit großer Warscheinlichkeit Probleme verursachen. Viele haben die mit dem rtl8169 nicht zum laufen bekommen. Und mit dem r1000 von der Realtek-Webseite gibt es auch ab und zu Probleme. Siehe: https://forums.gentoo.org/viewtopic-t-688904.html

MfG. Stefan

EDIT: Vielleicht hilft das hier weiter, wenn es garnicht geht: http://de.gentoo-wiki.com/RTL8111(B)

----------

## JKRock

 *bbgermany wrote:*   

>  *Anarcho wrote:*   Also ich weiss ja nicht was du machst, aber meine Glaskugel hält recht lange ohne Reinigung:
> 
>  *JKRock wrote:*   Ausgabe lspci:
> 
> ```
> ...

 

Nun, mittlerweile ist das ein Sammelthread für meine Problemsammlung^^

 *bbgermany wrote:*   

> 
> 
> Nun aber zu der Karte, die wird mit großer Warscheinlichkeit Probleme verursachen. Viele haben die mit dem rtl8169 nicht zum laufen bekommen. Und mit dem r1000 von der Realtek-Webseite gibt es auch ab und zu Probleme. Siehe: https://forums.gentoo.org/viewtopic-t-688904.html
> 
> MfG. Stefan
> ...

 

Bei der ganzen Realtek Namensklatur blicke ich nicht ganz durch, aber http://de.gentoo-wiki.com/RTL8111%28B%29 und http://gentoo-wiki.com/HARDWARE_RTL8168 scheinen auf die gleiche Treiberseite zu verweisen, also werde ich es so als Modul versuchen.

Ich weiss auch garnicht ob die Problembeschreibung aus https://forums.gentoo.org/viewtopic-t-688904.html auch auf mich zutrifft,

da sind es ja zwei Netzwerkkarten die sporadisch geladen werden, soweit ich es verstanden habe...

Aber vielleicht hat auch Anarcho recht und ich muss einfach dhcpcd emergen, dann könnt ich mir die Treibergeschichte sparen...

gruß JKRock

----------

## Anarcho

@bbgermany: War ja nicht bös gemeint.

@JKRock: Das hängt alles davon ab welcher Fehler bei dir aufgetreten ist.

Gib uns mal eine aktuellen "dmesg" Ausgabe nach dem booten.

Und dann versuch dochmal folgendes und gib uns die Ausgabe:

/etc/init.d/net.eth0 restart

----------

## bbgermany

@Anarcho: von mir auch nicht. Ich habe mich vielleicht ein wenig, sagen wir, unpassend ausgedrückt...

@JKRock: ja, das könnte sein, dass dhcpcd fehlt. Jedoch könntest du auch bevor du das installierst auch eine feste IP Adresse einstellen.

MfG. Stefan

----------

## JKRock

Vor dem Netzwerkkartenproblem steht dass usb-Problem   :Rolling Eyes: 

Ich wollte die Ausgaben von dmesg und Co in eine textfile schreiben und auf usb packen (um so lange Ausgaben zu meiner LiveCD-Umgebung zu transportieren...)

Ich dachte um USB-Support zu haben dachte ich wäre es nur nötig

UDEV und dann ivman zu installieren

(per 

```
emerge -va ivman
```

 sollen ja die Abhängigkeiten HAL und D-BUS selbst gelöst sein)

Nun sehe ich aber nie irgendwo mein usb-stick

weder

```
ls -l /dev/disk/by-id/usb*
```

noch

```
cat /proc/partitions
```

Was mache ich falsch?

Noch seltsamerweise scheint der Befehl lspci nicht verfügbar zu sein - was muss ich dafür emergen?

(für lsusb scheinen es ja die usbutils zu sein, wie ich jetzt sehe)

gruß JKRock

----------

## Max Steel

 *JKRock wrote:*   

> Vor dem Netzwerkkartenproblem steht dass usb-Problem  
> 
> Ich wollte die Ausgaben von dmesg und Co in eine textfile schreiben und auf usb packen (um so lange Ausgaben zu meiner LiveCD-Umgebung zu transportieren...)

 

Das ist einfach:

~/bin/lspcietc.sh

```
#! /bin/sh

TXT="~/textfiles"

mkdir $TXT

dmesg > $TXT/dmesg.log

lspci > $TXT/lspci.log

lsusb > $TXT/lsusb.log
```

 :Laughing: 

Bitteschön, einfach per vim diese Datei mit dem Inhalt erstellen,

chmod 700 drüberlaufen lassen

und ausführen

Danach die LiveCD wieder reinschieben und LiveCD-Umgebung starten.

mounten der Partitionen (da du wahrscheinlich root bist die Partition worin /root/textfiles/* enthalten ist (normalerweise die ROOT-Partition).

 *Quote:*   

> Ich dachte um USB-Support zu haben dachte ich wäre es nur nötig
> 
> UDEV und dann ivman zu installieren
> 
> (per 
> ...

 

HAst du vll vergessen die Kerneltreiber für usb einzubauen?

make menuconfig:

```
-> Device Drivers

      -> USB support (USB_SUPPORT [=y])

            -> Host-side USB Port

            -> USB Device Filesystem

            -> OHCI

            -> UHCI (Falls du Intel oder VIA USB-Chip hast.)

            -> EHCI (falls du USB2.0 verwendest)

            -> USB Mass Storage 
```

 *Quote:*   

> Noch seltsamerweise scheint der Befehl lspci nicht verfügbar zu sein - was muss ich dafür emergen?
> 
> (für lsusb scheinen es ja die usbutils zu sein, wie ich jetzt sehe)

 

```
[I] sys-apps/pciutils

     Available versions:  2.2.10 ~3.0.0 {network-cron zlib}

     Installed versions:  2.2.10(16:30:34 06.04.2008)(zlib -network-cron)

     Homepage:            http://atrey.karlin.mff.cuni.cz/~mj/pciutils.html

     Description:         Various utilities dealing with the PCI bus
```

----------

## JKRock

 *Max Steel wrote:*   

>  *JKRock wrote:*   Vor dem Netzwerkkartenproblem steht dass usb-Problem  
> 
> Ich wollte die Ausgaben von dmesg und Co in eine textfile schreiben und auf usb packen (um so lange Ausgaben zu meiner LiveCD-Umgebung zu transportieren...) 
> 
> Das ist einfach:
> ...

 

ja, stimmt - darauf hätte ich selber kommen können   :Wink: 

Bin aber auch nicht so geübt in shellscripts - bei mir funkt dieses script nicht (ob ich ~/textfile in "" setze oder nicht...), es scheint die Berechtigung zu fehlen Verzeichnisse zu erstellen (auch wenn ich als root das script ausführe...)

habe dass dann erstmal händisch abgearbeitet

 *Max Steel wrote:*   

> 
> 
> HAst du vll vergessen die Kerneltreiber für usb einzubauen?
> 
> 

 

Ja, stimmt da hatten einige usb-kerneltreiber gefehlt.

Habe aber das Gefühl jetzt wird nur mein Kartenlesegerät (intern, aber wohl auch usb) anerkannt, nicht mein Stick.

Wenn ich eins der neu aufgetauchten Partitionen aus /proc/partitions mounte, sehe ich im jeweiligen Ordner nur UnterOrdner mit den Beschriftungen "001", "002", "003", ...  "devices"

Wie gewünscht ein paar logs:

lspci.log:

```

00:00.0 Host bridge: Intel Corporation DRAM Controller (rev 01)

00:01.0 PCI bridge: Intel Corporation Host-Primary PCI Express Bridge (rev 01)

00:06.0 PCI bridge: Intel Corporation Host-Secondary PCI Express Bridge (rev 01)

00:1a.0 USB Controller: Intel Corporation USB UHCI Controller #4 (rev 02)

00:1a.1 USB Controller: Intel Corporation USB UHCI Controller #5 (rev 02)

00:1a.2 USB Controller: Intel Corporation USB UHCI Controller #6 (rev 02)

00:1a.7 USB Controller: Intel Corporation USB2 EHCI Controller #2 (rev 02)

00:1b.0 Audio device: Intel Corporation HD Audio Controller (rev 02)

00:1c.0 PCI bridge: Intel Corporation PCI Express Port 1 (rev 02)

00:1c.3 PCI bridge: Intel Corporation PCI Express Port 4 (rev 02)

00:1c.5 PCI bridge: Intel Corporation PCI Express Port 6 (rev 02)

00:1d.0 USB Controller: Intel Corporation USB UHCI Controller #1 (rev 02)

00:1d.1 USB Controller: Intel Corporation USB UHCI Controller #2 (rev 02)

00:1d.2 USB Controller: Intel Corporation USB UHCI Controller #3 (rev 02)

00:1d.7 USB Controller: Intel Corporation USB2 EHCI Controller #1 (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)

00:1f.0 ISA bridge: Intel Corporation LPC Interface Controller (rev 02)

00:1f.2 SATA controller: Intel Corporation 6 port SATA AHCI Controller (rev 02)

00:1f.3 SMBus: Intel Corporation SMBus Controller (rev 02)

01:00.0 VGA compatible controller: nVidia Corporation G72 [GeForce 7300 LE] (rev a1)

04:00.0 SATA controller: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)

04:00.1 IDE interface: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)

05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet contr$

06:06.0 FireWire (IEEE 1394): Texas Instruments TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link)

```

lsusb.log:

```

Bus 006 Device 001: ID 0000:0000

Bus 005 Device 001: ID 0000:0000

Bus 004 Device 002: ID 0bda:0111 Realtek Semiconductor Corp.

Bus 004 Device 001: ID 0000:0000

Bus 003 Device 001: ID 0000:0000

Bus 003 Device 002: ID 090c:1000 Feiya Technology Corp. Memory Bar

Bus 001 Device 001: ID 0000:0000

Bus 002 Device 002: ID 062a:0000 Creative Labs

Bus 002 Device 001: ID 0000:0000

```

Auszug aus dmesg.log (ca. 500 zeilen die alle so aussehen...):

```

evbug.c: Event. Dev: isa0060/serio0/input0, Type: 1, Code: 32, Value: 1

evbug.c: Event. Dev: isa0060/serio0/input0, Type: 0, Code: 0, Value: 0

evbug.c: Event. Dev: isa0060/serio0/input0, Type: 4, Code: 4, Value: 32

evbug.c: Event. Dev: isa0060/serio0/input0, Type: 1, Code: 32, Value: 0

evbug.c: Event. Dev: isa0060/serio0/input0, Type: 0, Code: 0, Value: 0

```

gruß JKRock

----------

## Max Steel

JA gut, nein Berechtigung fehlt dir nicht, nur sollte das Filesystem rw sein.

Und natürlich, die Befehle kannst du auch einfach so wie sie da stehen in die Shell eingeben, natürlich sollteste dann $TXT durch das ersetzen was in der dazugehörenden Variable (TXT) steht.

Es würde reichen wenn du davor noch mount -n -o remount,rw / eingibst, damit es read-writeable wird.

Aber egal, du hast ja die Ausgaben.

Hmmm, steht noch irgendwas dazwischen?

vll mal in eine Datei schreiben, irgendwo ablegen wos nicht verlorengeht und dann in der LiveCD auf ein Hoster stellen.

ISA sind normalerweise die ganz langen schwarzen Busses, die gibt es quasi auf keinem halbwegs aktuellen Board mehr. Also kann man es beruhigt rauswerfen, auser man hat vll noch irgendwo ISA rumfahren.

Aber ich hab ehrlich gesagt keine Ahnung.

----------

## JKRock

 *Max Steel wrote:*   

> A gut, nein Berechtigung fehlt dir nicht, nur sollte das Filesystem rw sein.
> 
> Und natürlich, die Befehle kannst du auch einfach so wie sie da stehen in die Shell eingeben, natürlich sollteste dann $TXT durch das ersetzen was in der dazugehörenden Variable (TXT) steht.

 

naja, wie gesagt schon gemacht...

 *Max Steel wrote:*   

> 
> 
> Es würde reichen wenn du davor noch mount -n -o remount,rw / eingibst, damit es read-writeable wird.
> 
> 

 

aber warum kann ich denn manuell Ordner erstellen, nicht aber per script? 

 *Max Steel wrote:*   

> 
> 
> Hmmm, steht noch irgendwas dazwischen?
> 
> vll mal in eine Datei schreiben, irgendwo ablegen wos nicht verlorengeht und dann in der LiveCD auf ein Hoster stellen.
> ...

 

Obwohl die logs, mal abgesehen von dmesg vollständig waren..., hier alles gezippt: http://rapidshare.com/files/116652121/logFiles.zip.html

Hinzu gekommen ist eine konsolen ausgabe von make, ich wollte nach dem auch

 *Quote:*   

> /etc/init.d/net.eth0 restart

 

nichts gebracht hatte, die Realtek-NetzwerkkartenTreiber wie z.B. hier:

http://gentoo-wiki.com/HARDWARE_RTL816 beschrieben als Modul installieren

( vorher NetzwerkTreiber aus Kernel mittels 'make menuconfig' entfernt).

Doch schon das erste make clean modules scheitert.

 *Max Steel wrote:*   

> 
> 
> ISA sind normalerweise die ganz langen schwarzen Busses, die gibt es quasi auf keinem halbwegs aktuellen Board mehr. Also kann man es beruhigt rauswerfen, auser man hat vll noch irgendwo ISA rumfahren.
> 
> Aber ich hab ehrlich gesagt keine Ahnung.

 

kA wie du jetzt darauf kommst...   :Confused:    aber ich bin auch schon nicht mehr ganz wach   :Laughing: 

*Edit* ach so die dmesg-ausgabe!   :Idea:   also ist da wohl ein unnützer ISA-Treiber am Werk...

gruß JKRock

----------

## Anarcho

Welche Fehlermeldung liefert denn "/etc/init.d/net.eth0 restart" nun?

----------

## JKRock

Bin mal wieder am verzweifeln, soviel gemacht und nix klappt....

Also erstmal:

 *Quote:*   

> Welche Fehlermeldung liefert denn "/etc/init.d/net.eth0 restart" nun

 

Ohne irgendwelche Netzwerktreiber im Kernel (hatte ich entfernt, als ich RealtekTreiber von der Website installieren wollte...)

```

* Starting eth0

*  Bringing up eth0

*   dhcp

*    network interface eth0 does not exist

*    Please verify hardware or kernel module (driver)

```

...ist vielleicht so nicht sinnvoll, aber der Vollständigkeit halber für alle Anfänger wie mich   :Rolling Eyes: 

Und dann was wohl eigendlich gewünscht war - mit den RealtekTreibern im Kernel (die aus menuconfig auswählbar sind)

```

* Starting eth0

*  Bringing up eth0

*   dhcp

*    Running dhcp

Error, eth0: socket: Address family not supported by protocol

```

- Je öfter ich das sehe, desto mehr denke ich da fehlt irgendein Protokoll, müssen die Protokolle (TCP/IP, UDP) im Kernel aktiviert werden (und wenn ja, wo?) ?

*EDIT*: Habe jetzt unter Networking support folgendes noch aktiviert:

```

[*] Networking  support

--> Networking Options

[*]--> TCP/IP networking

 [*]--> IP: kernel level autoconfiguration

  [*]--> IP: DHCP support

  [*]--> IP: BOOTP support

```

...wobei letzten auf geratewohl...

Aber - hat nichts geholfen!   :Evil or Very Mad:    */EDIT*

* EDIT² *--> Wie kann ich denn erfahren, wie die Leute von z.b. SIDUX in ihrer LiveCD gelöst haben? Wenn ich z.b.

lsmod eingebe sehe ich auch das Modul r8169 - ist das nicht dasselbe, dass ich versucht habe zu installieren? * /EDIT² *

Zu den ISA-Fehlermeldungen in dmesg, siehe:

 *Quote:*   

> ISA sind normalerweise die ganz langen schwarzen Busses, die gibt es quasi auf keinem halbwegs aktuellen Board mehr. Also kann man es beruhigt rauswerfen, auser man hat vll noch irgendwo ISA rumfahren. 
> 
> Aber ich hab ehrlich gesagt keine Ahnung.

 

Habe jetzt irgendwelche ISA-Einstellungen mit 'make menuconfig' gesucht und nicht gefunden, bin dann aber

manuell in der .config fündig geworden. Folgende Einstellungen waren aktiviert:

```

CONFIG_GENERIC_ISA_DMA

CONFIG_ISA_DMA_API

```

Doch auch ein auskommentieren hat nichts gebracht - dmesg liefert immer noch die gleichen Fehlermeldungen...   :Shocked: 

Habe dann in Bezug zum Versuch die Realtektreiber als Modul zu installieren, bemerkt dass die Unterstützung für Module im Kernel bei mir ausgeschaltet war, aber auch ein aktivieren inklusive autoload und unload Optionen hat nichts gebracht... - müssen vielleicht noch mehrere Punkte davon aktiviert sein?

Oder kann es sein das make irgendwie nicht vollständig ist und man da was nachladen muss?

+ Hab erst jetzt folgende Fehlermeldung zur Kenntnis genommen:

"Failed to set the clock You will need to set the clock yourself"

Außerdem kann ich immer noch nicht mein USB-STick finden...

Fehler, Fehler ohne Ende  :Sad: Last edited by JKRock on Thu May 22, 2008 9:18 am; edited 1 time in total

----------

## bbgermany

Hi,

dein Netzwerkproblem könnte nun vielleicht gelöst werden  :Smile: 

Ich hab da ne schöne Webseite hinsichtlich dem r8168 Problem gefunden. Vielleicht hilft dir das weiter, da ich mit dem Patch das Modul übersetzen konnte:

Der Fix: http://www.jamesonwilliams.com/hardy-r8168.html

```

diff -c ./r8168.h ../../r8168-8.005.00.new/src/r8168.h

*** ./r8168.h   2008-01-09 05:27:22.000000000 -0800

--- ../../r8168-8.005.00.new/src/r8168.h   2008-04-14 15:20:55.000000000 -0700

***************

*** 942,947 ****

--- 942,948 ----

     void __iomem *mmio_addr;   /* memory map physical address */

     struct pci_dev *pci_dev;   /* Index of PCI device */

     struct net_device *dev;

+    struct napi_struct napi; 

     struct net_device_stats stats;   /* statistics of net device */

     spinlock_t lock;      /* spin lock flag */

     spinlock_t phy_lock;      /* spin lock flag for GPHY */

diff -c ./r8168_n.c ../../r8168-8.005.00.new/src/r8168_n.c

*** ./r8168_n.c   2008-01-09 05:28:01.000000000 -0800

--- ../../r8168-8.005.00.new/src/r8168_n.c   2008-04-14 15:30:02.000000000 -0700

***************

*** 168,174 ****

  static void rtl8168_set_rx_mode(struct net_device *dev);

  static void rtl8168_tx_timeout(struct net_device *dev);

  static struct net_device_stats *rtl8168_get_stats(struct net_device *dev);

! static int rtl8168_rx_interrupt(struct net_device *, struct rtl8168_private *, void __iomem *);

  static int rtl8168_change_mtu(struct net_device *dev, int new_mtu);

  static void rtl8168_down(struct net_device *dev);

  

--- 168,174 ----

  static void rtl8168_set_rx_mode(struct net_device *dev);

  static void rtl8168_tx_timeout(struct net_device *dev);

  static struct net_device_stats *rtl8168_get_stats(struct net_device *dev);

! static int rtl8168_rx_interrupt(struct net_device *, struct rtl8168_private *, void __iomem *, u32 budget);

  static int rtl8168_change_mtu(struct net_device *dev, int new_mtu);

  static void rtl8168_down(struct net_device *dev);

  

***************

*** 184,190 ****

  

  

  #ifdef CONFIG_R8168_NAPI

! static int rtl8168_poll(struct net_device *dev, int *budget);

  #endif

  

  static u16 rtl8168_intr_mask =

--- 184,190 ----

  

  

  #ifdef CONFIG_R8168_NAPI

! static int rtl8168_poll(struct napi_struct *napi, int budget);

  #endif

  

  static u16 rtl8168_intr_mask =

***************

*** 2266,2273 ****

  #endif //LINUX_VERSION_CODE > KERNEL_VERSION(2,6,0)

        goto err_out;

     }

! 

!    SET_MODULE_OWNER(dev);

     SET_NETDEV_DEV(dev, &pdev->dev);

     tp = netdev_priv(dev);

     tp->dev = dev;

--- 2266,2274 ----

  #endif //LINUX_VERSION_CODE > KERNEL_VERSION(2,6,0)

        goto err_out;

     }

! #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)) && defined(SET_MODULE_OWNER)

!    SET_MODULE_OWNER(dev); 

! #endif

     SET_NETDEV_DEV(dev, &pdev->dev);

     tp = netdev_priv(dev);

     tp->dev = dev;

***************

*** 2567,2574 ****

     dev->do_ioctl = rtl8168_do_ioctl;

  

  #ifdef CONFIG_R8168_NAPI

!    dev->poll = rtl8168_poll;

!    dev->weight = R8168_NAPI_WEIGHT;

  #endif

  

  #ifdef CONFIG_R8168_VLAN

--- 2568,2576 ----

     dev->do_ioctl = rtl8168_do_ioctl;

  

  #ifdef CONFIG_R8168_NAPI

! /*   dev->poll = rtl8168_poll; */

! /*   dev->weight = R8168_NAPI_WEIGHT; */

!    netif_napi_add(dev, &tp->napi, rtl8168_poll, R8168_NAPI_WEIGHT);

  #endif

  

  #ifdef CONFIG_R8168_VLAN

***************

*** 2699,2704 ****

--- 2701,2708 ----

     INIT_DELAYED_WORK(&tp->task, NULL);

  #endif

  

+    napi_enable(&tp->napi);

+ 

     rtl8168_hw_start(dev);

  

     if (tp->esd_flag == 0) {

***************

*** 3073,3081 ****

        goto out;

  

  #ifdef   NAPI

!    netif_poll_enable(dev);

  #endif 

! 

     rtl8168_hw_start(dev);

  

  out:

--- 3077,3085 ----

        goto out;

  

  #ifdef   NAPI

! /*   netif_poll_enable(dev);*/

  #endif 

!    napi_enable(&tp->napi);

     rtl8168_hw_start(dev);

  

  out:

***************

*** 3328,3341 ****

  

     /* Wait for any pending NAPI task to complete */

  #ifdef NAPI

!    netif_poll_disable(dev);

  #endif 

! 

     rtl8168_irq_mask_and_ack(ioaddr);

  

  #ifdef   NAPI

!    netif_poll_enable(dev);

  #endif 

  }

  

  #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)

--- 3332,3346 ----

  

     /* Wait for any pending NAPI task to complete */

  #ifdef NAPI

! /*   netif_poll_disable(dev);*/

  #endif 

!    napi_disable(&tp->napi);

     rtl8168_irq_mask_and_ack(ioaddr);

  

  #ifdef   NAPI

! /*   netif_poll_enable(dev);*/

  #endif 

+    napi_enable(&tp->napi);

  }

  

  #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)

***************

*** 3391,3397 ****

  

     rtl8168_wait_for_quiescence(dev);

  

!    rtl8168_rx_interrupt(dev, tp, tp->mmio_addr);

     rtl8168_tx_clear(tp);

  

     if (tp->dirty_rx == tp->cur_rx) {

--- 3396,3402 ----

  

     rtl8168_wait_for_quiescence(dev);

  

!    rtl8168_rx_interrupt(dev, tp, tp->mmio_addr, ~(u32)0);

     rtl8168_tx_clear(tp);

  

     if (tp->dirty_rx == tp->cur_rx) {

***************

*** 3776,3782 ****

  static int

  rtl8168_rx_interrupt(struct net_device *dev, 

             struct rtl8168_private *tp,

!            void __iomem *ioaddr)

  {

     unsigned int cur_rx, rx_left;

     unsigned int delta, count = 0;

--- 3781,3788 ----

  static int

  rtl8168_rx_interrupt(struct net_device *dev, 

             struct rtl8168_private *tp,

!            void __iomem *ioaddr,

!          u32 budget)

  {

     unsigned int cur_rx, rx_left;

     unsigned int delta, count = 0;

***************

*** 3787,3793 ****

  

     cur_rx = tp->cur_rx;

     rx_left = NUM_RX_DESC + tp->dirty_rx - cur_rx;

!    rx_left = rtl8168_rx_quota(rx_left, (u32) dev->quota);

  

     if ((tp->RxDescArray == NULL) || (tp->Rx_skbuff == NULL)) {

        goto rx_out;

--- 3793,3799 ----

  

     cur_rx = tp->cur_rx;

     rx_left = NUM_RX_DESC + tp->dirty_rx - cur_rx;

!    rx_left = rtl8168_rx_quota(rx_left, budget);

  

     if ((tp->RxDescArray == NULL) || (tp->Rx_skbuff == NULL)) {

        goto rx_out;

***************

*** 3983,3990 ****

        RTL_W16(IntrMask, rtl8168_intr_mask & ~rtl8168_napi_event);

        tp->intr_mask = ~rtl8168_napi_event;

  

!       if (likely(netif_rx_schedule_prep(dev)))

           __netif_rx_schedule(dev);

        else if (netif_msg_intr(tp)) {

           printk(KERN_INFO "%s: interrupt %04x taken in poll\n",

                  dev->name, status);   

--- 3989,3999 ----

        RTL_W16(IntrMask, rtl8168_intr_mask & ~rtl8168_napi_event);

        tp->intr_mask = ~rtl8168_napi_event;

  

! /*      if (likely(netif_rx_schedule_prep(dev)))

           __netif_rx_schedule(dev);

+ */

+       if (likely(netif_rx_schedule_prep(dev, &tp->napi)))

+          __netif_rx_schedule(dev, &tp->napi);

        else if (netif_msg_intr(tp)) {

           printk(KERN_INFO "%s: interrupt %04x taken in poll\n",

                  dev->name, status);   

***************

*** 3993,3999 ****

  #else

        /* Rx interrupt */

        if (status & (RxOK | RxDescUnavail | RxFIFOOver)) {

!          rtl8168_rx_interrupt(dev, tp, ioaddr);

        }

        /* Tx interrupt */

        if (status & (TxOK | TxErr))

--- 4002,4008 ----

  #else

        /* Rx interrupt */

        if (status & (RxOK | RxDescUnavail | RxFIFOOver)) {

!          rtl8168_rx_interrupt(dev, tp, ioaddr, ~(u32)0);

        }

        /* Tx interrupt */

        if (status & (TxOK | TxErr))

***************

*** 4029,4049 ****

  

  #ifdef CONFIG_R8168_NAPI

  static int 

! rtl8168_poll(struct net_device *dev, 

!         int *budget)

  {

!    unsigned int work_done, work_to_do = min(*budget, dev->quota);

     struct rtl8168_private *tp = netdev_priv(dev);

     void __iomem *ioaddr = tp->mmio_addr;

  

!    work_done = rtl8168_rx_interrupt(dev, tp, ioaddr);

     rtl8168_tx_interrupt(dev, tp, ioaddr);

  

!    *budget -= work_done;

     dev->quota -= work_done;

  

!    if (work_done < work_to_do) {

!       netif_rx_complete(dev);

        tp->intr_mask = rtl8168_intr_mask;

        /*

         * 20040426: the barrier is not strictly required but the

--- 4038,4063 ----

  

  #ifdef CONFIG_R8168_NAPI

  static int 

! rtl8168_poll(struct napi_struct *napi, 

!         int budget)

  {

! /*   unsigned int work_done, work_to_do = min(*budget, dev->quota);

     struct rtl8168_private *tp = netdev_priv(dev);

+ */

+    struct rtl8168_private *tp = container_of(napi, struct rtl8168_private, napi);

+    struct net_device *dev = tp->dev;

     void __iomem *ioaddr = tp->mmio_addr;

+    int work_done;

  

!    work_done = rtl8168_rx_interrupt(dev, tp, ioaddr, (u32) budget);

     rtl8168_tx_interrupt(dev, tp, ioaddr);

  

! /*   *budget -= work_done;

     dev->quota -= work_done;

+ */

  

!    if (work_done < budget) {

!       netif_rx_complete(dev, napi);

        tp->intr_mask = rtl8168_intr_mask;

        /*

         * 20040426: the barrier is not strictly required but the

***************

*** 4055,4061 ****

        RTL_W16(IntrMask, rtl8168_intr_mask);

     }

  

!    return (work_done >= work_to_do);

  }

  #endif

  

--- 4069,4075 ----

        RTL_W16(IntrMask, rtl8168_intr_mask);

     }

  

!    return work_done;

  }

  #endif

  

***************

*** 4083,4090 ****

  

     if (!poll_locked) {

  #ifdef   NAPI

!       netif_poll_disable(dev);

  #endif

        poll_locked++;

     }

  

--- 4097,4105 ----

  

     if (!poll_locked) {

  #ifdef   NAPI

! /*      netif_poll_disable(dev);*/

  #endif

+       napi_disable(&tp->napi);

        poll_locked++;

     }

  

***************

*** 4123,4129 ****

     free_irq(dev->irq, dev);

  

  #ifdef   NAPI

!    netif_poll_enable(dev);

  #endif 

  

     pci_free_consistent(pdev, R8168_RX_RING_BYTES, tp->RxDescArray,

--- 4138,4144 ----

     free_irq(dev->irq, dev);

  

  #ifdef   NAPI

! /*   netif_poll_enable(dev);*/

  #endif 

  

     pci_free_consistent(pdev, R8168_RX_RING_BYTES, tp->RxDescArray,

```

Damit lies sich der Code auf meinem Kernel (2.6.24-hardened-r1) übersetzen.

MfG. Stefan

----------

## JKRock

@bbgermany: Danke für die schnelle Hilfe, sieht aber erstmal recht kompliziert aus...

                            Vielleicht ist der Fehler aber simpler als man denkt, auf der Seite lese ich u.a.

 *Quote:*   

> # Compile the code. This may fail if you don’t have kernel headers and other standard features of a build environment.

 

Was sind denn die standard features einer build environment - gcc?

Wo find ich die Kernel headers? Und wie kann ich überprüfen ob die vollständig sind?

gruß JKRock

----------

## Anarcho

 *JKRock wrote:*   

> @bbgermany: Danke für die schnelle Hilfe, sieht aber erstmal recht kompliziert aus...
> 
>                             Vielleicht ist der Fehler aber simpler als man denkt, auf der Seite lese ich u.a.
> 
>  *Quote:*   # Compile the code. This may fail if you don’t have kernel headers and other standard features of a build environment. 
> ...

 

Ist bei Gentoo alles dabei. Diese Anmerkungen gelten nur für Bin-Distributionen.

----------

## Anarcho

OK, für das Problem mit dem unsupported Protocol:

Du solltest folgende Optionen im Kernel an haben:

```
Networking->

   Networking Options->

      <*> Packet Socket

      <*> Unix domain sockets
```

Das würde ich vor dem patchen einmal testen.

----------

## JKRock

 *bbgermany wrote:*   

> Hi,
> 
> dein Netzwerkproblem könnte nun vielleicht gelöst werden 
> 
> Ich hab da ne schöne Webseite hinsichtlich dem r8168 Problem gefunden. Vielleicht hilft dir das weiter, da ich mit dem Patch das Modul übersetzen konnte:
> ...

 

ok, Anarcho hat jetzt gesagt, dass das build-environment vollständig ist, d.h. ich möchte es dann auch mit diesem patch versuchen...

Nur wie hast du ihn angewendet? Das Skript, das auf der verlinkten Seite zu sehen ist holt ja unter anderem per wget die treiber (obwohl die schon mit im Verzeichnis sind) und ich bin mir nicht sicher was noch alles im skript passiert.

Hast du also wirklich das skript ausgeführt, oder nur den patch?

Im Skript taucht die Zeile:

```
patch < ../../r8168-8.005.00.hardy.diff.txt
```

 auf

heißt dass hier wird dieser ubuntu-patch auf den gentoo-kernel ausgeführt? ((warum zweimal nach oben?))

Und dann soll also "make clean modules" durchlaufen?

----------

## bbgermany

Der Patch-Befehl fixt nur das Treiberpaket für die Netzwerkkarte. Am besten du führst genau das hier aus:

```

wget ftp://210.51.181.211/cn/nic/r8168-8.006.00.tar.bz2

tar xjf r8168-8.006.00.tar.bz2

cd ./r8168-8.006.00/src

wget -O ../../r8168-8.005.00.hardy.diff.txt http://ubuntuforums.org/attachment.php?attachmentid=66030&d=1208224861

patch < ../../r8168-8.005.00.hardy.diff.txt

```

Danach weiter wie in der Installationsanleitung im Gentoo-Wiki.

MfG. Stefan

EDIT: Die Compilerwarnung kannst du dann auch noch mit diesem Patch entfernen  :Wink: 

```

--- r8168_n.c       2008-05-22 12:41:17.000000000 +0200

+++ r8168_n.c   2008-05-22 12:40:23.000000000 +0200

@@ -180,7 +180,7 @@

 static void rtl8168_nic_reset(struct net_device *dev);

 static void rtl8168_phy_power_up (struct net_device *dev);

-static void rtl8168_phy_power_down (struct net_device *dev);

+// static void rtl8168_phy_power_down (struct net_device *dev);

 #ifdef CONFIG_R8168_NAPI

@@ -2261,7 +2261,7 @@

        spin_unlock_irqrestore(&tp->phy_lock, flags);

 }

-static void

+/*  static void

 rtl8168_phy_power_down (struct net_device *dev)

 {

        struct rtl8168_private *tp = netdev_priv(dev);

@@ -2273,7 +2273,7 @@

        mdio_write(ioaddr, 0x0E, 0x0200);

        mdio_write(ioaddr, MII_BMCR, mdio_read(ioaddr, MII_BMCR) | BMCR_PDOWN);

        spin_unlock_irqrestore(&tp->phy_lock, flags);

-}

+} */

 static int __devinit

 rtl8168_init_board(struct pci_dev *pdev,

```

----------

## JKRock

...wie gesagt, v erstehe nicht warum ich treiber und patch nochmal per wget holen muss, wo doch beides schon im package des skriptes zu finden ist...

nun gut, hab dass jetzt trotzdem in der LiveCD-Umgebung gemacht, weil ich nur dort Inet habe und es scheint so als ob r8168.h und r8168_n.c gepacht worden sind - werde jetzt die Treiber in meine gentoo-Umgebung rüberschieben und dann bei http://gentoo-wiki.com/HARDWARE_RTL8168 Installing The Driver weitermachen - sofern niemand schreit...

----------

## JKRock

Also hab das jetzt ausprobiert wie gesagt, und bei

```
make clean modules
```

 scheint es wirklich zu klappen:

make clean modules.log:

```

make -C src/ clean

make[1]: Entering directory `/patchedNetwork/r8168-8.006.00/src'

rm -rf *.o *.ko *~ core* .dep* .*.d .*.cmd *.mod.c *.a *.s .*.flags .tmp_versions Module.symvers Modules.symv$

make[1]: Leaving directory `/patchedNetwork/r8168-8.006.00/src'

make -C src/ modules

make[1]: Entering directory `/patchedNetwork/r8168-8.006.00/src'

make -C /lib/modules/2.6.24-gentoo-r3/build SUBDIRS=/patchedNetwork/r8168-8.006.00/src modules

make[2]: Entering directory `/usr/src/linux-2.6.24-gentoo-r3'

  CC [M]  /patchedNetwork/r8168-8.006.00/src/r8168_n.o

/patchedNetwork/r8168-8.006.00/src/r8168_n.c:2266: warning: 'rtl8168_phy_power_down' defined but not used

  LD [M]  /patchedNetwork/r8168-8.006.00/src/r8168.o

  Building modules, stage 2.

  MODPOST 1 modules

  CC      /patchedNetwork/r8168-8.006.00/src/r8168.mod.o

  LD [M]  /patchedNetwork/r8168-8.006.00/src/r8168.ko

make[2]: Leaving directory `/usr/src/linux-2.6.24-gentoo-r3'

strip --strip-debug r8168.ko

make[1]: Leaving directory `/patchedNetwork/r8168-8.006.00/src'

```

Nur hackt es jetzt bei

```
make install
```

:

```

make -C src/ install

make[1]: Entering directory `/patchedNetwork/r8168-8.006.00/src'

install -m 744 -c r8168.ko /lib/modules/2.6.24-gentoo-r3/kernel/drivers/net/

install: target `/lib/modules/2.6.24-gentoo-r3/kernel/drivers/net/' is not a directory: No such file or direc$

make[1]: *** [install] Error 1

make[1]: Leaving directory `/patchedNetwork/r8168-8.006.00/src'

make: *** [install] Error 2

```

wat nu?

*EDIT*also 

```
/lib/modules/2.6.24-gentoo-r3/kernel/drivers/net/
```

 finde ich wirklich nicht, wann und wie wird denn "net" erstellt?

----------

## JKRock

 *Anarcho wrote:*   

> OK, für das Problem mit dem unsupported Protocol:
> 
> Du solltest folgende Optionen im Kernel an haben:
> 
> ```
> ...

 

Ich fass es nicht! - Packet Socket - das hab ich in doppelter Hinsicht übersehen, hier als Post und bei menuconfig nur als Überschrift war genommen...

 :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy:   yipiiie Netzwerkkarte funktioniert damit!!!!!!!!!!!!!!!!!!!!   :Smile:   :Very Happy:   :Smile:   :Very Happy: 

DANKE DANKE!!!

*edit* bleiben nur die anderen kleinen Problemchen, außerdem möchte ich noch ein desktop system z.B. gnome aufsetzen - dazu brauche ich doch X Server, oder so?

----------

