Bug#415148: nautilus-open-terminal used on removable media causes unmount problems
Package: nautilus-open-terminal Version: 0.7-1 When nautilus-open-terminal is used on a mounted data CD disk, it causes nautilus to keep /media/cdrom0 open, preventing the disk from being ejected. To duplicate the problem: 1) Insert a data CD into the computer's drive. A disk icon appears on the desktop. Open a terminal window and run the following command: % lsof | grep cdrom lsof: WARNING: can't stat() ext3 file system /dev/.static/dev Output information may be incomplete. No processes have /media/cdrom0 open. Good. 2) Double-click on the disk icon to open the cdrom in a nautilus window. Again, in the terminal window: % lsof | grep cdrom lsof: WARNING: can't stat() ext3 file system /dev/.static/dev Output information may be incomplete. 3) Right-click on the nautilus window and select Open In Terminal Now, in the first terminal window, run the lsof command again: % lsof | grep cdrom lsof: WARNING: can't stat() ext3 file system /dev/.static/dev Output information may be incomplete. nautilus 22734peek cwd DIR 22,0 2048 1792 /media/cdrom0 zsh 23161peek cwd DIR 22,0 2048 1792 /media/cdrom0 4) Exit the /media/cdrom0 terminal window. Aha! Bug sighted!: % lsof | grep cdrom lsof: WARNING: can't stat() ext3 file system /dev/.static/dev Output information may be incomplete. nautilus 22734peek cwd DIR 22,0 2048 1792 /media/cdrom0 Once the /media/cdrom0 terminal window closes, shouldn't nautilus close /media/cdrom0 as well? 5) Close the /media/cdrom0 nautilus window: Bug persists!: % lsof | grep cdrom lsof: WARNING: can't stat() ext3 file system /dev/.static/dev Output information may be incomplete. nautilus 22734peek cwd DIR 22,0 2048 1792 /media/cdrom0 And if all else fails, shouldn't nautilus close /media/cdrom0 once the nautilus window displaying cdrom0 closes? The only way to eject the CD now is to kill nautilus -- forcing the user to lose all other nautilus windows that might also be open. Thanks for all the hard work you guys have put into Debian. We rely on and appreciate what you do. Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#408303: Wishlist for hw-detect
Package: hw-detect, disk-detect, ethdetect Version: 1.46 Wishlist: It would be nice if disk-detect and ethdetect would, in expert mode, prompt the user for a list of modules to attempt to load, and allow the user to un/select modules by hand (or via preseed). (This would, at least, allow me to work around other known bugs such as bug #388501.) Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#388501: Installation Report
On Wednesday 20 September 2006 21:18, Michael S. Peek wrote: Comments/Problems: Installation works fine, but unable to mount the root filesystem on reboot. Checking /proc/cmdline shows root=/dev/sda1 ro, which is correct, but no /dev/sda1 exists (/dev/sda exists though). This may be due to a mismatch between the kernel version used by the installer (2.6.17) and the one installed for the new system (2.6.16). Please use the rescue mode of the installer to upgrade the kernel to 2.6.17 and see if that solves your problem. Cheers, FJP Aha! I figured it out! --I don't know how to fix it, but I figured it out. The hardware: - SuperMicro X6DHE-XG2 (Intel E7520 chipset, ICHR5 SATA controller) - w/ 3ware 9550sx card installed I neglected to mention the 3ware card because I didn't think that it had a bearing on anything, but it turns out that it does. When the installer discovers the hardware for drives, it discovers them in this order: 1) Motherboard (ata_piix) -- sda 2) 3ware (3w_9xxx) [array #1] -- sdb 3) 3ware (3w_9xxx) [array #2] -- sdc During installation I partition and install to sda. (sdb+sdc have no partitioning information and no filesystem.) The kernel is installed with root=/dev/sda1 as part of the command line to the kernel, as it should according to the list above. Then, after the base installation finishes and I reboot, the hardware is discovered in a different order: 1) 3w_9xxx [#1] -- sda 2) 3w_9xxx [#2] -- sdb 3) ata_piix -- sdc The kernel is looking for root to be on /dev/sda1, but since the drivers are loaded in a different order, root is actually on /dev/sdc. In order to fix, I must edit the kernel command line listed in /boot/grub/menu.lst and change root=/dev/sda1 to root=/dev/sdc1 before reinstalling the 3ware card. Did I do something wrong during the installation? Is there a better way to do this? Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#388501: Installation Report
Package: installation-reports Boot method: CD Image version: http://cdimage.debian.org/cdimage/daily-builds/daily/arch-latest/i386/iso-cd/debian-testing-i386-businesscard.iso Downloaded on 9/20/06 Date: Wed, 20 Sep 2006 14:25:27 -0400 Machine: Custom machine w/ SuperMicro X6DHE-XG2 (Intel E7520 chipset, ICHR5 SATA controller) Processor: Xeon 2.8GHz 800 FSB (1 CPU) Memory: 1GB Partitions: The number of cylinders for this disk is set to 38913. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): p Disk /dev/sda: 320.0 GB, 320072933376 bytes 255 heads, 63 sectors/track, 38913 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 38535 309532356 83 Linux /dev/sda2 38536 38913 30362855 Extended /dev/sda5 38536 38913 3036253+ 82 Linux swap / Solaris Output of lspci and lspci -n: Base System Installation Checklist: [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it Initial boot worked:[O] Configure network HW: [O] Config network: [O] Detect CD: [O] Load installer modules: [O] Detect hard drives: [O] Partition hard drives: [O] Create file systems:[O] Mount partitions: [O] Install base system:[O] Install boot loader:[O] Reboot: [E] Comments/Problems: Installation works fine, but unable to mount the root filesystem on reboot. Checking /proc/cmdline shows root=/dev/sda1 ro, which is correct, but no /dev/sda1 exists (/dev/sda exists though). I'm not savvy enough to know what to do next. I suspect that a required module is not being installed correctly into the initrd image...? The last visible kernel messages are: Begin: Mounting root file system... ... Begin: Running /scripts/local-top ... ide0: I/O resource 0x1F0-0x1F7 not free. ide0: ports already in use, skipping probe ide1: I/O resource 0x170-0x177 not free. ide1: ports already in use, skipping probe Done. Begin: Waiting for root filesystem... ... Done. Check root= bootarg cat /proc/cmdline or missing modules, devices: cat /proc/modules ls /dev ALERT! /dev/sda1 does not exist. Dropping to a shell! Attached is the syslog file from installation, if that helps. syslog.bz2 Description: application/bzip
Bug#356251: Preseeded automatic installation fails to install a kernel
Package: installation-reports Boot method: CD (using 2.6 kernel) Image version: debian-testing-i386-businesscard.iso Downloaded from: http://cdimage.debian.org/cdimage/daily-builds/daily/arch-latest/i386/iso-cd/ Date: Wed, 08 Mar 2006 13:08:34 -0500 Machine: Dell Precision 470n Processor: Intel(R) Xeon(TM) CPU 2.80GHz Memory: 1035096 kB Partitions: Disk /dev/sda: 160.0 GB, 1600 bytes 255 heads, 63 sectors/track, 19452 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1486339062016 83 Linux /dev/sda24864 19452 117186142+ 5 Extended /dev/sda54864 19122 114535386 83 Linux /dev/sda6 19123 19452 2650693+ 82 Linux swap / Solaris Output of lspci and lspci -n: $ lspci :00:00.0 Host bridge: Intel Corp. Workstation Memory Controller Hub (rev 09) :00:00.1 ff00: Intel Corp. Memory Controller Hub Error Reporting Register (rev 09) :00:02.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port A0 (rev 09) :00:03.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port A1 (rev 09) :00:04.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port B0 (rev 09) :00:1d.0 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #1 (rev 02) :00:1d.1 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #2 (rev 02) :00:1d.2 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02) :00:1d.3 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #4 (rev 02) :00:1d.7 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02) :00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev c2) :00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02) :00:1f.1 IDE interface: Intel Corp. 82801EB/ER (ICH5/ICH5R) Ultra ATA 100 Storage Controller (rev 02) :00:1f.2 IDE interface: Intel Corp. 82801EB (ICH5) Serial ATA 150 Storage Controller (rev 02) :00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02) :00:1f.5 Multimedia audio controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (rev 02) :01:00.0 PCI bridge: Intel Corp. PCI Bridge Hub A :01:00.2 PCI bridge: Intel Corp. PCI Bridge Hub B :03:0e.0 Ethernet controller: Intel Corp. 82545GM Gigabit Ethernet Controller (rev 04) :05:00.0 VGA compatible controller: nVidia Corporation: Unknown device 00fd (rev a2) $ lspci -n :00:00.0 0600: 8086:359e (rev 09) :00:00.1 ff00: 8086:3591 (rev 09) :00:02.0 0604: 8086:3595 (rev 09) :00:03.0 0604: 8086:3596 (rev 09) :00:04.0 0604: 8086:3597 (rev 09) :00:1d.0 0c03: 8086:24d2 (rev 02) :00:1d.1 0c03: 8086:24d4 (rev 02) :00:1d.2 0c03: 8086:24d7 (rev 02) :00:1d.3 0c03: 8086:24de (rev 02) :00:1d.7 0c03: 8086:24dd (rev 02) :00:1e.0 0604: 8086:244e (rev c2) :00:1f.0 0601: 8086:24d0 (rev 02) :00:1f.1 0101: 8086:24db (rev 02) :00:1f.2 0101: 8086:24d1 (rev 02) :00:1f.3 0c05: 8086:24d3 (rev 02) :00:1f.5 0401: 8086:24d5 (rev 02) :01:00.0 0604: 8086:0329 :01:00.2 0604: 8086:032a :03:0e.0 0200: 8086:1026 (rev 04) :05:00.0 0300: 10de:00fd (rev a2) Base System Installation Checklist: [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it Initial boot worked:[O] Configure network HW: [O] Config network: [O] Detect CD: [O] Load installer modules: [O] Detect hard drives: [O] Partition hard drives: [O] Create file systems:[O] Mount partitions: [O] Install base system:[E] Install boot loader:[ ] Reboot: [ ] Comments/Problems: Preseeded automatic installation fails to install a kernel. A small, relevent excerpt of my preseed values: d-i debconf/prioritystring critical d-i debian-installer/kernel/image string kernel-image-2.6-686 During base system installation the installer fails with a 'no initrd generator' error. The same installation, using the same preseed information except with debconf/priority set to medium, results in a successful installation. Clueless user ponderings: After manual installation succeeded and the target rebooted, I checked for a /var/log/debian-installer/debconf-seed file, thinking that perhaps there is an additional preseed value that the etch version of the installer needs to specify an initrd generator, but there was no such file present on the system. Maybe there is another way to attain preseed values after a manual installation and I just don't what it is. Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#356251: Preseeded automatic installation fails to install a kernel
Frans Pop wrote: On Friday 10 March 2006 17:27, Michael S. Peek wrote: Comments/Problems: Preseeded automatic installation fails to install a kernel. OK. So this is with the new installer. Let's close your previous report. So now, please provide the information I asked for: the relevant section of the /var/log/syslog file (of if you like, the full file, gzipped). I found the problem... base-installer log from failed installation: Mar 10 13:43:54 base-installer: info: kernel kernel-image-netbootable not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-2-k7-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-2-k7 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-2-686-smp usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-2-686 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-2-386 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-11-em64t-p4-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-11-em64t-p4 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-11-amd64-k8-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-11-amd64-k8 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6.8-11-amd64-generic not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-k7-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-k7 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-em64t-p4-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-em64t-p4 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-amd64-k8-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-amd64-k8 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-amd64-generic not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-686-smp usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-686 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.6-386 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-speakup not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-k7-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-k7 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-k6 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-686-smp usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-686 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-586tsc usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4.27-2-386 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-k7-smp not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-k7 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-k6 not usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-686-smp usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-686 usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-586tsc usable on 686 Mar 10 13:43:54 base-installer: info: kernel kernel-image-2.4-386 usable on 686 Mar 10 13:43:54 base-installer: info: Found kernels 'kernel-image-2.6.8-2-686-smp,kernel-image-2.6.8-2-686,kernel-image-2.6.8-2-386,kernel-image-2.6-686-smp,kernel-image-2.6-686,kernel-image-2.6-386,kernel-image-2.4.27-2-686-smp,kernel-image-2.4.27-2-686,kernel-image-2.4.27-2-586tsc,kernel-image-2.4.27-2-386,kernel-image-2.4-686-smp,kernel-image-2.4-686,kernel-image-2.4-586tsc,kernel-image-2.4-386' Mar 10 13:43:54 base-installer: info: arch_kernel candidates: linux-image-2.6-686 linux-image-2.6-486 linux-image-2.6-386 Mar 10 13:43:54 base-installer: info: arch_kernel: linux-image-2.6-686 (absent) Mar 10 13:43:54 base-installer: info: arch_kernel: linux-image-2.6-486 (absent) Mar 10 13:43:54 base-installer: info: arch_kernel: linux-image-2.6-386 (absent) Mar 10 13:43:54 base-installer: info: Using kernel 'kernel-image-2.6.8-2-686-smp' Mar 10 13:43:54 base-installer: info: Setting do_initrd='yes'. Mar 10 13:43:54 base-installer: info: Setting link_in_boot='no'. Mar 10 13:43:54 base-installer: info: Possible initramfs generator(s): 'initramfs-tools yaird' Mar 10 13:43:54 base-installer: info: Available initramfs generator(s): '' Mar 10 13:43:54 base-installer: error: exiting on error base-installer/initramfs/no-generator base-installer output from successful installation: Mar 10 13:23:56 base-installer: info: Running /usr/lib
Bug#355940: Preseeded automatic installation fails to install a kernel
Package: installation-reports Boot method: CD (using 2.6 kernel and /install/2.6/initrd.gz ramdisk image) Image version: debian-testing-i386-businesscard.iso Downloaded from: http://cdimage.debian.org/cdimage/daily-builds/etch_d-i/beta1/i386/iso -cd/ Download date: Wed, 08 Mar 2006 13:08:34 -0500 Date: Wed, 08 Mar 2006 13:08:34 -0500 Machine: Dell Precision 470n Processor: Intel(R) Xeon(TM) CPU 2.80GHz Memory: 1035096 kB Partitions: Disk /dev/sda: 160.0 GB, 1600 bytes 255 heads, 63 sectors/track, 19452 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1486339062016 83 Linux /dev/sda24864 19452 117186142+ 5 Extended /dev/sda54864 19122 114535386 83 Linux /dev/sda6 19123 19452 2650693+ 82 Linux swap / Solaris Output of lspci and lspci -n: $ lspci :00:00.0 Host bridge: Intel Corp. Workstation Memory Controller Hub (rev 09) :00:00.1 ff00: Intel Corp. Memory Controller Hub Error Reporting Register (rev 09) :00:02.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port A0 (rev 09) :00:03.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port A1 (rev 09) :00:04.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port B0 (rev 09) :00:1d.0 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #1 (rev 02) :00:1d.1 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #2 (rev 02) :00:1d.2 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02) :00:1d.3 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #4 (rev 02) :00:1d.7 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02) :00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev c2) :00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02) :00:1f.1 IDE interface: Intel Corp. 82801EB/ER (ICH5/ICH5R) Ultra ATA 100 Storage Controller (rev 02) :00:1f.2 IDE interface: Intel Corp. 82801EB (ICH5) Serial ATA 150 Storage Controller (rev 02) :00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02) :00:1f.5 Multimedia audio controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (rev 02) :01:00.0 PCI bridge: Intel Corp. PCI Bridge Hub A :01:00.2 PCI bridge: Intel Corp. PCI Bridge Hub B :03:0e.0 Ethernet controller: Intel Corp. 82545GM Gigabit Ethernet Controller (rev 04) :05:00.0 VGA compatible controller: nVidia Corporation: Unknown device 00fd (rev a2) $ lspci -n :00:00.0 0600: 8086:359e (rev 09) :00:00.1 ff00: 8086:3591 (rev 09) :00:02.0 0604: 8086:3595 (rev 09) :00:03.0 0604: 8086:3596 (rev 09) :00:04.0 0604: 8086:3597 (rev 09) :00:1d.0 0c03: 8086:24d2 (rev 02) :00:1d.1 0c03: 8086:24d4 (rev 02) :00:1d.2 0c03: 8086:24d7 (rev 02) :00:1d.3 0c03: 8086:24de (rev 02) :00:1d.7 0c03: 8086:24dd (rev 02) :00:1e.0 0604: 8086:244e (rev c2) :00:1f.0 0601: 8086:24d0 (rev 02) :00:1f.1 0101: 8086:24db (rev 02) :00:1f.2 0101: 8086:24d1 (rev 02) :00:1f.3 0c05: 8086:24d3 (rev 02) :00:1f.5 0401: 8086:24d5 (rev 02) :01:00.0 0604: 8086:0329 :01:00.2 0604: 8086:032a :03:0e.0 0200: 8086:1026 (rev 04) :05:00.0 0300: 10de:00fd (rev a2) Base System Installation Checklist: [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it Initial boot worked:[O] Configure network HW: [O] Config network: [O] Detect CD: [O] Load installer modules: [O] Detect hard drives: [O] Partition hard drives: [O] Create file systems:[O] Mount partitions: [O] Install base system:[O] Install boot loader:[O] Reboot: [E] Comments/Problems: Preseeded automatic installation (where debconf/priority is preseeded to critical) fails to install a kernel. After installation completes and the prompt to remove the disk for reboot appears, ls /target/boot shows only a grub/ directory -- no initrd.img-* or vmlinuz-* files are present, and the file /target/boot/grub/menu.lst is void of menu entries (no title, root, kernel, or initrd lines). Performing the same preseed install with the same preseed values except debconf/priority set to medium results in the installer specifically asking for a kernel and the chosen kernel being installed. A reboot then works as expected. Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#342709: portmap: Portmap dies w/ SIGPIPE during heavy I/O
Problem is fixed with the attached patch. diff -r -u --new-file old/portmap-5/Makefile new/portmap-5/Makefile --- old/portmap-5/Makefile 2005-12-09 11:49:57.0 -0500 +++ new/portmap-5/Makefile 2005-12-13 10:32:43.0 -0500 @@ -74,6 +74,11 @@ # ZOMBIES = -DIGNORE_SIGCHLD # AIX 4.x, HP-UX 9.x +# Under heavy I/O, sometimes portmap dies w/ SIGPIPE. Enable next macro to +# fix. +# +BROKEN_PIPE = -DIGNORE_SIGPIPE + # Uncomment the following macro if your system does not have u_long. # # ULONG=-Du_long=unsigned long @@ -120,8 +125,8 @@ SHELL = /bin/sh COPT = $(CONST) $(HOSTS_ACCESS) $(CHECK_PORT) \ - $(SYS) -DFACILITY=$(FACILITY) $(ULONG) $(ZOMBIES) $(SA_LEN) \ - $(LOOPBACK) $(SETPGRP) + $(SYS) -DFACILITY=$(FACILITY) $(ULONG) $(ZOMBIES) $(BROKEN_PIPE) \ + $(SA_LEN) $(LOOPBACK) $(SETPGRP) CFLAGS = -Wall $(COPT) -O2 $(NSARCHS) OBJECTS= portmap.o pmap_check.o from_local.o $(AUX) diff -r -u --new-file old/portmap-5/portmap.c new/portmap-5/portmap.c --- old/portmap-5/portmap.c 2005-12-09 11:49:57.0 -0500 +++ new/portmap-5/portmap.c 2005-12-13 10:32:43.0 -0500 @@ -312,6 +312,11 @@ #else (void)signal(SIGCHLD, reap); #endif +#ifdef IGNORE_SIGPIPE /* Michael Peek [EMAIL PROTECTED] */ + (void)signal(SIGPIPE, SIG_IGN); +#else + (void)signal(SIGPIPE, reap); +#endif svc_run(); syslog(LOG_ERR, run_svc returned unexpectedly); abort(); 0.044061 accept(4, {sa_family=AF_INET, sin_port=htons(57806), sin_addr=inet_addr(127.0.0.1)}, [16]) = 6 0.042895 poll([{fd=5, events=POLLIN, revents=POLLIN}], 1, 35000) = 1 0.040004 read(5, \x80\x00\x00\x28\x6c\x53\x9c\x38\x00\x00\x00\x00\x00\x00..., 400) = 44 0.000104 write(5, \x00\x00\x01\x8c\x6c\x53\x9c\x38\x00\x00\x00\x01\x00\x00..., 400) = 400 0.73 write(5, \x80\x00\x00\x70\x00\x00\x00\x11\x00\x00\x03\x8d\x00\x00..., 116) = -1 EPIPE (Broken pipe) 0.50 --- SIGPIPE (Broken pipe) @ 0 (0) --- 0.61 close(5) = 0
Bug#342709: portmap: Portmap dies w/ SIGPIPE during heavy I/O
Package: portmap Version: 5-9 Severity: important I have a heterogeneous network of Un*x boxes, of which several are identical Debian boxes, networked together using NIS (the server is a Solaris-8 box if that matters) and mounting/exporting NFS via automount. During heavy I/O, portmap dies, leaving no error messages in the log file. This takes NFS down with it, cauing a loss of availability to the other machines in the network. By heavy I/O, I mean the following: I can consistently kill portmap in a matter of hours by running enough (six seems to do it) cp commands of large (800+MB) files in infinite loops, while having other machines mount and unmount directories served by this machine via NFS (which causes calls to portmap). I need not copy the files over NFS -- merely copying them from one directory to another on the internal hard drive is sufficient. Specifically, on the local machine, the machine on which I intend to kill portmap, I open up six xterms, and in each type the following: while true; do cp some huge file somewhere else ; done Where both source and destination are on the local drive. Once the local host becomes good ans sluggish, I ssh into several remote machines and run the following: while true; do umount some NFS dir ; mount some NFS dir ; done I don't know if all of that is actually *necessary* to reproduce the problem, but it seems to work consistently. If I leave the machine be, portmap seems to run forever. If I'm not doing heavy I/O, but merely having other hosts mount/unmount NFS (causing calls to portmap), portmap runs forever. It only seems to die *during* a call to portmap *while* the machine is doing I/O. (It may only take 30 minutes, or it may take several hours, but during each of my tests, I can begin testing when I leave work and have portmap broken by morning.) Running strace, I was able to find that portmap dies of a SIGPIPE while writing to the network connection. (Snippets of strace output included below.) I've performed these tests several (about 10) times and the output is the same. An example snippet from strace: -- 9553 15:17:58.333626 accept(4, {sa_family=AF_INET, sin_port=htons(46428), sin_addr=inet_addr(127.0.0.1)}, [16]) = 5 9553 15:17:58.360418 poll([{fd=3, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}, {fd=4, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND, revents=POLLIN|POLLRDNORM}, {fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND, revents=POLLIN|POLLRDNORM}, {fd=-1}, {fd=-1}, {fd=-1}, {fd=-1}, {fd=-1}], 8, -1) = 2 9553 15:17:58.367775 accept(4, {sa_family=AF_INET, sin_port=htons(46429), sin_addr=inet_addr(127.0.0.1)}, [16]) = 6 9553 15:17:58.367911 poll([{fd=5, events=POLLIN, revents=POLLIN}], 1, 35000) = 1 9553 15:17:58.367974 read(5, \x80\x00\x00\x28\x7b\x9c\xf4\xf8\x00\x00\x00\x00\x00\x00..., 400) = 44 9553 15:17:58.369828 write(5, \x00\x00\x01\x8c\x7b\x9c\xf4\xf8\x00\x00\x00\x01\x00\x00..., 400) = 400 9553 15:17:58.375245 write(5, \x80\x00\x00\x20\x00\x00\x00\x11\x00\x00\x03\xd2\x00\x00..., 36) = -1 EPIPE (Broken pipe) 9553 15:17:58.377843 --- SIGPIPE (Broken pipe) @ 0 (0) --- -- Another example snippet from strace: -- 17358 06:27:52.325025 accept(4, {sa_family=AF_INET, sin_port=htons(36450), sin_addr=inet_addr(127.0.0.1)}, [16]) = 6 17358 06:27:52.325109 poll([{fd=5, events=POLLIN, revents=POLLIN}], 1, 35000) = 1 17358 06:27:52.325148 read(5, \x80\x00\x00\x28\x77\xf5\xf2\x75\x00\x00\x00\x00\x00\x00..., 400) = 44 17358 06:27:52.325211 write(5, \x00\x00\x01\x8c\x77\xf5\xf2\x75\x00\x00\x00\x01\x00\x00..., 400) = 400 17358 06:27:52.325299 write(5, \x80\x00\x00\x20\x00\x00\x00\x11\x00\x00\x02\x7d\x00\x00..., 36) = 36 17358 06:27:52.325431 poll([{fd=3, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND, revents=POLLIN|POLLRDNORM}, {fd=4, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND, revents=POLLIN|POLLRDNORM}, {fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND, revents=POLLIN|POLLRDNORM}, {fd=6, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND, revents=POLLIN|POLLRDNORM}, {fd=-1}, {fd=-1}, {fd=-1}, {fd=-1}, {fd=-1}], 9, -1) = 4 17358 06:27:52.325500 recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(56537), sin_addr=inet_addr(www.xxx.yyy.zzz)}, msg_iov(1)=[{\x43\x96\x90\x0b\x00\x00\x00\x00\x00\x00\x00\x02\x00\x01..., 8800}], msg_controllen=24, {cmsg_len=24, cmsg_level=SOL_IP, cmsg_type=, ...}, msg_flags=0}, 0) = 56 17358 06:27:52.325590 getpid() = 17358 17358 06:27:52.325629 open(/etc/hosts.allow, O_RDONLY) = 7 17358 06:27:52.325675 fstat64(7, {st_mode=S_IFREG|0644, st_size=20926, ...}) = 0 17358 06:27:52.325733 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4016b000 17358 06:27:52.325772 read(7,
Bug#301434: Script hooks in main-menu
My point isn't that we could add more udebs to d-i to provide these kinds of hooks, it's that the udebs themselves are hooks, and customised udebs to do exactly what you want when you want can be easily created. So why not just start making the udebs yourself? I've got some deadlines to meet first, but if no one else beats me to it before then, I will. :) Michael Peek Michael Peek - [EMAIL PROTECTED] __ My computer NEVER cras$*(Fjn1 NO CARRIER __ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#301427: Script hooks in main-menu
Package: installation Severity: wishlist It would be nice to be able to run pre- and post- scripts between menu items. That way I could supply custom scripts to do things like: - After the ethernet drivers are loaded, but before netcfg is run, execute a script that could look through the hardware addresses found and configure debconf netcfg settings appropriately. - After disk drivers are loaded, but before partman is run, execute a script that would dynamically create a partman-auto/expert_recipe based on the number and sizes of disks found (or based on the contents of /etc/hostname, for that mater). (Things like this might require ifconfig, sed, and awk? I don't know if the compilation of busybox currently used has support for sed and awk, but it would be nice if all the basic unix scripting tools were available: sed, awk, grep, head, tail, cut, tr, expr, etc... as well as some basic networking tools like ping. If the size of the ramdisk is an issue, then perhaps multiple ramdisks could be supplied. For each ramdisk currently on the CD, a second, larger, script-happy version could be supplied just for goobers like me who want to automate everything. ...This should probably be a separate wish.) Two possible preseed methods come to mind: 1) Create something like preseed/intermediate_command to go along with early_command and late_command, except this command is run between menu items. The name of the last menu item processed and the next menu item to be processed could be passed to the command as environment variables, that way user-supplied scripts could know when to do what. With a pair of shell case statements the user could perform whatever tweaks are necessary between each step. That way, if I had a couple of scripts to configure the networking (say, /auto-netconfig-script) and partitioning (say, /auto-partition-script) as described above, I could generate a third script: #!/bin/sh # # File: /intermediate-script # # # Assuming what's about to be run next by main-menu is stored in # the environment variable PRE_MENU_ITEM. # case ${PRE_MENU_ITEM} in netcfg) /auto-netconfig-script ;; partman-auto) /auto-partition-script ;; esac And I could specify it to debconf as: d-i preseed/intermediate_command string /intermediate-script 2) Create something like preseed/[pre|post]-menu-item_command that would specify exactly when to run what command. That way, if I had a couple of scripts to configure the networking and partitioning as described above, I could specify them thusly: d-i preseed/pre-netcfg_command string /auto-netconfig-script d-i preseed/pre-partman-auto_command string /auto-partition-script Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#301426: Multiple disks in partman
Package: installation Severity: wishlist It would be nice to modify partman to be able to handle multiple disks. One possible method that (I think) would be backward-compatible with the current debconf preseed scheme would be to extend some of the definitions in partman-auto-recipe.txt thusly: As it reads now: recipe::=header_partitions Could become: recipe::=header_disks disks::=disk|disk_disks disk::=partitions|device_partitions It would allow the following: d-i partman-auto/disk string /dev/hda d-i partman-auto/expert_recipe string \ root-swap :: \ 500 1 10 ext3 \ $primary{ } $bootable{ } \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext3 } mountpoint{ / } \ . \ 64 512 300% linux-swap \ method{ swap } format{ } \ . To be extended into multiple-disk recipes like this: d-i partman-auto/expert_recipe string \ root-swap :: \ /dev/hda \ 500 1 10 ext3 \ $primary{ } $bootable{ } \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext3 } mountpoint{ / } \ . \ 64 512 300% linux-swap \ method{ swap } format{ } \ . \ /dev/hdb \ 500 1 10 ext3 \ $primary{ } $bootable{ } \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext3 } mountpoint{ /home } \ . \ Without breaking support for the former entry. Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#301434: Script hooks in main-menu
Package: debian-installer Severity: wishlist It would be nice to be able to run pre- and post- scripts between menu items. That way I could supply custom scripts to do things like: - - After the ethernet drivers are loaded, but before netcfg is run, execute a script that could look through the hardware addresses found and configure debconf netcfg settings appropriately. - - After disk drivers are loaded, but before partman is run, execute a script that would dynamically create a partman-auto/expert_recipe based on the number and sizes of disks found (or based on the contents of /etc/hostname, for that mater). (Things like this might require ifconfig, sed, and awk? I don't know if the compilation of busybox currently used has support for sed and awk, but it would be nice if all the basic unix scripting tools were available: sed, awk, grep, head, tail, cut, tr, expr, etc... as well as some basic networking tools like ping. If the size of the ramdisk is an issue, then perhaps multiple ramdisks could be supplied. For each ramdisk currently on the CD, a second, larger, script-happy version could be supplied just for goobers like me who want to automate everything. ...This should probably be a separate wish.) Two possible preseed methods come to mind: 1) Create something like preseed/intermediate_command to go along with early_command and late_command, except this command is run between menu items. The name of the last menu item processed and the next menu item to be processed could be passed to the command as environment variables, that way user-supplied scripts could know when to do what. With a pair of shell case statements the user could perform whatever tweaks are necessary between each step. That way, if I had a couple of scripts to configure the networking (say, /auto-netconfig-script) and partitioning (say, /auto-partition-script) as described above, I could generate a third script: #!/bin/sh # # File: /intermediate-script # # # Assuming what's about to be run next by main-menu is stored in # the environment variable PRE_MENU_ITEM. # case ${PRE_MENU_ITEM} in netcfg) /auto-netconfig-script ;; partman-auto) /auto-partition-script ;; esac And I could specify it to debconf as: d-i preseed/intermediate_command string /intermediate-script 2) Create something like preseed/[pre|post]-menu-item_command that would specify exactly when to run what command. That way, if I had a couple of scripts to configure the networking and partitioning as described above, I could specify them thusly: d-i preseed/pre-netcfg_command string /auto-netconfig-script d-i preseed/pre-partman-auto_command string /auto-partition-script Michael Peek -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]