* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled [not found] ` <20040903123139.565c806b@mango.fruits.de> @ 2004-09-03 10:32 ` Ingo Molnar 2004-09-03 11:59 ` Florian Schmidt 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-03 10:32 UTC (permalink / raw) To: Florian Schmidt; +Cc: linux-kernel, rlrevell, felipe_alfaro * Florian Schmidt <mista.tapas@gmx.net> wrote: > > best would be to enable the NMI watchdog (nmi_watchdog=1 (or 2) boot > > option) - check that it's working via the attached lockupcli.c > > userspace code (run it as root). To have an NMI watchdog you need > > APIC/IOAPIC support in the .config. > > Hmm, my local APIC kinda sux and i had all kinds of trouble using it > [ERR count went up, stuff didn't work; XT-PIC always worked very well > here]. So i'm kinda reluctant to compile with APIC. I suppose i can > compile with it but turn it off via boot option? Or does the watchdog > need a APIC that actually does stuff? in theory you should be able to boot with just the local APIC enabled and "nmi_watchdog=2" and get a working NMI watchdog. You'll still have the normal PIC IRQ handling. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 10:32 ` lockup with voluntary preempt R0 and VP, KP, etc, disabled Ingo Molnar @ 2004-09-03 11:59 ` Florian Schmidt 2004-09-03 11:55 ` Ingo Molnar 2004-09-03 12:04 ` Florian Schmidt 0 siblings, 2 replies; 224+ messages in thread From: Florian Schmidt @ 2004-09-03 11:59 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, rlrevell, felipe_alfaro On Fri, 3 Sep 2004 12:32:44 +0200 Ingo Molnar <mingo@elte.hu> wrote: > > * Florian Schmidt <mista.tapas@gmx.net> wrote: > > > > best would be to enable the NMI watchdog (nmi_watchdog=1 (or 2) > > > boot option) - check that it's working via the attached > > > lockupcli.c userspace code (run it as root). To have an NMI > > > watchdog you need APIC/IOAPIC support in the .config. > > > > Hmm, my local APIC kinda sux and i had all kinds of trouble using it > > [ERR count went up, stuff didn't work; XT-PIC always worked very > > well here]. So i'm kinda reluctant to compile with APIC. I suppose i > > can compile with it but turn it off via boot option? Or does the > > watchdog need a APIC that actually does stuff? > > in theory you should be able to boot with just the local APIC enabled > and "nmi_watchdog=2" and get a working NMI watchdog. You'll still have > the normal PIC IRQ handling. > > Ingo > ok, here you go [mental note to myself: get a second computer or a digital camera :), maybe my ZX81 will do]. This is what is saw on my console [sometimes i got lazy in between, i hope not at the wrong spots]: [<c0105e29>] do_signal+0x79/0x110 [<c01162a0>] default_wake_function+0x0/0x20 c012fgd7 do_futex+0x47/0xa0 c012fb20 sys_futex c0103f07 do_notify c01060e6 work_notifysig Code: 96 54 01 00 00 8e e0 8e e8 85 d2 74 11 c7 86 54 01 00 00 00 00 00 00 89 d0 e8 bb e4 ff 8b 9e 5c 01 00 00 85 db 74 09 8b 45 0c <8b> 40 20 48 78 08 8b 5d f8 8b 75 fc c9 c3 c7 86 56 01 00 00 00 <6> note: scsynth exited with preempt count 1 Unable to handle kernel NULL pointer dereference at virtual adress 00000020 printing eip: c0117ff2 *pde = 00000000 Oops = 0000[#21] PREEMPT Modules linked in: [you wanna know em?] CPU: 0 EIP: 0060:[<c0117ff2>] Not tainted VLI EFLAGS: 00010282 (2.6.9-rc1-VP-R0) EIP is at mm_release+0x42/0xb0 That's all except for the modules list.. ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 11:59 ` Florian Schmidt @ 2004-09-03 11:55 ` Ingo Molnar 2004-09-03 13:01 ` Florian Schmidt 2004-09-03 12:04 ` Florian Schmidt 1 sibling, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-03 11:55 UTC (permalink / raw) To: Florian Schmidt; +Cc: linux-kernel, rlrevell, felipe_alfaro [-- Attachment #1: Type: text/plain, Size: 703 bytes --] * Florian Schmidt <mista.tapas@gmx.net> wrote: > [<c0105e29>] do_signal+0x79/0x110 > [<c01162a0>] default_wake_function+0x0/0x20 > c012fgd7 do_futex+0x47/0xa0 > c012fb20 sys_futex > c0103f07 do_notify > c01060e6 work_notifysig > > Code: 96 54 01 00 00 8e e0 8e e8 85 d2 74 11 c7 86 54 01 00 00 00 00 00 > 00 89 d0 e8 bb e4 ff 8b 9e 5c 01 00 00 85 db 74 09 8b 45 0c <8b> 40 20 > 48 78 08 8b 5d f8 8b 75 fc c9 c3 c7 86 56 01 00 00 00 > <6> note: scsynth exited with preempt count 1 it seems the first crash scrolled off and we dont really know what happened ... Could you apply the attached patch - it will shut the console off and freeze the box after printing the first oops. Ingo [-- Attachment #2: print-single-oops.patch --] [-- Type: text/plain, Size: 268 bytes --] --- linux/arch/i386/kernel/traps.c.orig +++ linux/arch/i386/kernel/traps.c @@ -256,6 +256,9 @@ void show_registers(struct pt_regs *regs } } printk("\n"); + console_silent(); + for (;;) + local_irq_disable(); } static void handle_BUG(struct pt_regs *regs) ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 11:55 ` Ingo Molnar @ 2004-09-03 13:01 ` Florian Schmidt 0 siblings, 0 replies; 224+ messages in thread From: Florian Schmidt @ 2004-09-03 13:01 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, rlrevell, felipe_alfaro On Fri, 3 Sep 2004 13:55:05 +0200 Ingo Molnar <mingo@elte.hu> wrote: > > * Florian Schmidt <mista.tapas@gmx.net> wrote: > > > [<c0105e29>] do_signal+0x79/0x110 > > [<c01162a0>] default_wake_function+0x0/0x20 > > c012fgd7 do_futex+0x47/0xa0 > > c012fb20 sys_futex > > c0103f07 do_notify > > c01060e6 work_notifysig > > > > Code: 96 54 01 00 00 8e e0 8e e8 85 d2 74 11 c7 86 54 01 00 00 00 00 > > 00 00 89 d0 e8 bb e4 ff 8b 9e 5c 01 00 00 85 db 74 09 8b 45 0c <8b> > > 40 20 48 78 08 8b 5d f8 8b 75 fc c9 c3 c7 86 56 01 00 00 00 > > <6> note: scsynth exited with preempt count 1 > > it seems the first crash scrolled off and we dont really know what > happened ... Could you apply the attached patch - it will shut the > console off and freeze the box after printing the first oops. Ok, i booted with a bigger vga console. btw: it seems with APIC and nmi_watchdog, i actually need to quit my scsynth app to trigger the bug. so maybe this is a different one than the one i saw befure _during_ scsynth running [and jackd of course]. Since this is lots of text i have again become lazy. It would be much better if someone could reproduce this behaviour on a machine with serial console. Or a digital camera would work, too, to make a screenshot of the Ooops. Anyways: the screen was divided by a -----cut here: --- line. Above which i saw this trace: Badness in __put_task_struct at kernel/fork.c:89 __put_task_struct schedule do_syslog sub_preempt_couint dnotify_parent autoreceive_wake_function kmsg_read autoreceive_wake_funtion kmsg_read vfs_read sys_read syscall_call -----cut here:---- then this: Kernel Bug sat kernel/exit.c838 invalid operand 0000[#1] PREEMPT CPU:0 EIP: 0060:[<c011cb34>] not tainted VLI eax: 0 ebx: 0 ecx: ef6d11b0 edx: 0 esi: 0 edi: e558f2f0 ebp: e55e3ea8 esp: e55e3e8c ds:007b es:007b ss:0068 process scsynth (pid 2624), threadinfo=e55e2000 tak=e55f2f0 Stack [skipped] Trace: do_group_exit get_singal_to_deliver do_signal default_wake_function do_futex sys_futex do_notify_resume work_notify_sig[nal??] Hope i have got some useful info this time around. It seems there was another bug which scrolled off the screen. I used the patched kernel though.. [i'm pretty sure at least].. flo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 11:59 ` Florian Schmidt 2004-09-03 11:55 ` Ingo Molnar @ 2004-09-03 12:04 ` Florian Schmidt 2004-09-03 12:08 ` Florian Schmidt 1 sibling, 1 reply; 224+ messages in thread From: Florian Schmidt @ 2004-09-03 12:04 UTC (permalink / raw) To: Florian Schmidt; +Cc: Ingo Molnar, linux-kernel, rlrevell, felipe_alfaro On Fri, 3 Sep 2004 13:59:19 +0200 Florian Schmidt <mista.tapas@gmx.net> wrote: > ok, here you go [mental note to myself: get a second computer or a > digital camera :), maybe my ZX81 will do]. This is what is saw on my > console [sometimes i got lazy in between, i hope not at the wrong > spots]: > > [<c0105e29>] do_signal+0x79/0x110 > [<c01162a0>] default_wake_function+0x0/0x20 > c012fgd7 do_futex+0x47/0xa0 > c012fb20 sys_futex > c0103f07 do_notify > c01060e6 work_notifysig > Code: 96 54 01 00 00 8e e0 8e e8 85 d2 74 11 c7 86 54 01 00 00 00 00 > 00 00 89 d0 e8 bb e4 ff 8b 9e 5c 01 00 00 85 db 74 09 8b 45 0c <8b> 40 > 20 48 78 08 8b 5d f8 8b 75 fc c9 c3 c7 86 56 01 00 00 00 > <6> note: scsynth exited with preempt count 1 > Unable to handle kernel NULL pointer dereference at virtual adress > 00000020 printing eip: > c0117ff2 > *pde = 00000000 > Oops = 0000[#21] > PREEMPT > Modules linked in: [you wanna know em?] > CPU: 0 > EIP: 0060:[<c0117ff2>] Not tainted VLI > EFLAGS: 00010282 (2.6.9-rc1-VP-R0) > EIP is at mm_release+0x42/0xb0 > > That's all except for the modules list.. and for completeness sake here's my kernel .config: # # Automatically generated make config: don't edit # Linux kernel version: 2.6.9-rc1-VP-R0 # Fri Sep 3 12:57:30 2004 # CONFIG_X86=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_GENERIC_ISA_DMA=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN_ON_SMP=y # # General setup # CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_POSIX_MQUEUE=y CONFIG_BSD_PROCESS_ACCT=y # CONFIG_BSD_PROCESS_ACCT_V3 is not set CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_LOG_BUF_SHIFT=14 # CONFIG_HOTPLUG is not set CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_PREEMPT_TIMING=y CONFIG_LATENCY_TRACE=y CONFIG_MCOUNT=y CONFIG_IOSCHED_NOOP=y CONFIG_IOSCHED_AS=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_CFQ=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set # # Loadable module support # CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_MODULE_FORCE_UNLOAD is not set CONFIG_OBSOLETE_MODPARM=y CONFIG_MODVERSIONS=y CONFIG_KMOD=y # # Processor type and features # CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUMM is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set CONFIG_MK7=y # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_INTEL_USERCOPY=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_X86_USE_3DNOW=y CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y # CONFIG_SMP is not set CONFIG_PREEMPT=y CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREEMPT_SOFTIRQS=y CONFIG_PREEMPT_HARDIRQS=y CONFIG_X86_UP_APIC=y # CONFIG_X86_UP_IOAPIC is not set CONFIG_X86_LOCAL_APIC=y CONFIG_X86_TSC=y # CONFIG_X86_MCE is not set # CONFIG_TOSHIBA is not set # CONFIG_I8K is not set # CONFIG_MICROCODE is not set # CONFIG_X86_MSR is not set # CONFIG_X86_CPUID is not set # # Firmware Drivers # # CONFIG_EDD is not set CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y CONFIG_HAVE_DEC_LOCK=y # # Power management options (ACPI, APM) # CONFIG_PM=y # CONFIG_SOFTWARE_SUSPEND is not set # CONFIG_PM_DISK is not set # # ACPI (Advanced Configuration and Power Interface) Support # # CONFIG_ACPI is not set # # APM (Advanced Power Management) BIOS Support # CONFIG_APM=y # CONFIG_APM_IGNORE_USER_SUSPEND is not set # CONFIG_APM_DO_ENABLE is not set # CONFIG_APM_CPU_IDLE is not set # CONFIG_APM_DISPLAY_BLANK is not set # CONFIG_APM_RTC_IS_GMT is not set # CONFIG_APM_ALLOW_INTS is not set CONFIG_APM_REAL_MODE_POWER_OFF=y # # CPU Frequency scaling # # CONFIG_CPU_FREQ is not set # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GOMMCONFIG is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y # CONFIG_PCI_LEGACY_PROC is not set CONFIG_PCI_NAMES=y # CONFIG_ISA is not set # CONFIG_MCA is not set # CONFIG_SCx200 is not set # # Executable file formats # CONFIG_BINFMT_ELF=y CONFIG_BINFMT_AOUT=y CONFIG_BINFMT_MISC=y # # Device Drivers # # # Generic Driver Options # CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_DEBUG_DRIVER is not set # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # # CONFIG_PARPORT is not set # # Plug and Play support # # # Block devices # CONFIG_BLK_DEV_FD=m # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_CRYPTOLOOP=m CONFIG_BLK_DEV_NBD=m # CONFIG_BLK_DEV_SX8 is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y # CONFIG_LBD is not set # # ATA/ATAPI/MFM/RLL support # CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=y # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set CONFIG_BLK_DEV_IDESCSI=m # CONFIG_IDE_TASK_IOCTL is not set # CONFIG_IDE_TASKFILE_IO is not set # # IDE chipset support/bugfixes # CONFIG_IDE_GENERIC=y # CONFIG_BLK_DEV_CMD640 is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y # CONFIG_BLK_DEV_OFFBOARD is not set CONFIG_BLK_DEV_GENERIC=y # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_RZ1000 is not set CONFIG_BLK_DEV_IDEDMA_PCI=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set CONFIG_BLK_DEV_ADMA=y # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set # CONFIG_BLK_DEV_AMD74XX is not set # CONFIG_BLK_DEV_ATIIXP is not set # CONFIG_BLK_DEV_CMD64X is not set # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_CS5530 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set # CONFIG_BLK_DEV_PIIX is not set # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set CONFIG_BLK_DEV_SIS5513=y # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set # CONFIG_BLK_DEV_VIA82CXXX is not set # CONFIG_IDE_ARM is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_IVB is not set CONFIG_IDEDMA_AUTO=y # CONFIG_BLK_DEV_HD is not set # # SCSI device support # CONFIG_SCSI=m CONFIG_SCSI_PROC_FS=y # # SCSI support type (disk, tape, CD-ROM) # CONFIG_BLK_DEV_SD=m # CONFIG_CHR_DEV_ST is not set # CONFIG_CHR_DEV_OSST is not set CONFIG_BLK_DEV_SR=m # CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=m # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # # CONFIG_SCSI_MULTI_LUN is not set CONFIG_SCSI_CONSTANTS=y # CONFIG_SCSI_LOGGING is not set # # SCSI Transport Attributes # # CONFIG_SCSI_SPI_ATTRS is not set # CONFIG_SCSI_FC_ATTRS is not set # # SCSI low-level drivers # # CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_AACRAID is not set CONFIG_SCSI_AIC7XXX=m CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 CONFIG_AIC7XXX_RESET_DELAY_MS=15000 # CONFIG_AIC7XXX_BUILD_FIRMWARE is not set # CONFIG_AIC7XXX_DEBUG_ENABLE is not set CONFIG_AIC7XXX_DEBUG_MASK=0 # CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_MEGARAID is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=m # CONFIG_SCSI_QLA21XX is not set # CONFIG_SCSI_QLA22XX is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6322 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_DEBUG is not set # # Multi-device support (RAID and LVM) # # CONFIG_MD is not set # # Fusion MPT device support # # CONFIG_FUSION is not set # # IEEE 1394 (FireWire) support # # CONFIG_IEEE1394 is not set # # I2O device support # # CONFIG_I2O is not set # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set CONFIG_NETLINK_DEV=y CONFIG_UNIX=y # CONFIG_NET_KEY is not set CONFIG_INET=y CONFIG_IP_MULTICAST=y CONFIG_IP_ADVANCED_ROUTER=y # CONFIG_IP_MULTIPLE_TABLES is not set # CONFIG_IP_ROUTE_MULTIPATH is not set # CONFIG_IP_ROUTE_TOS is not set # CONFIG_IP_ROUTE_VERBOSE is not set # CONFIG_IP_PNP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_IP_MROUTE is not set # CONFIG_ARPD is not set # CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # # IP: Virtual Server Configuration # # CONFIG_IP_VS is not set # CONFIG_IPV6 is not set CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set # # IP: Netfilter Configuration # CONFIG_IP_NF_CONNTRACK=m # CONFIG_IP_NF_FTP is not set # CONFIG_IP_NF_IRC is not set # CONFIG_IP_NF_TFTP is not set # CONFIG_IP_NF_AMANDA is not set # CONFIG_IP_NF_QUEUE is not set CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_LIMIT=m CONFIG_IP_NF_MATCH_IPRANGE=m CONFIG_IP_NF_MATCH_MAC=m CONFIG_IP_NF_MATCH_PKTTYPE=m CONFIG_IP_NF_MATCH_MARK=m CONFIG_IP_NF_MATCH_MULTIPORT=m CONFIG_IP_NF_MATCH_TOS=m CONFIG_IP_NF_MATCH_RECENT=m CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_DSCP=m CONFIG_IP_NF_MATCH_AH_ESP=m CONFIG_IP_NF_MATCH_LENGTH=m CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_MATCH_TCPMSS=m CONFIG_IP_NF_MATCH_HELPER=m CONFIG_IP_NF_MATCH_STATE=m CONFIG_IP_NF_MATCH_CONNTRACK=m CONFIG_IP_NF_MATCH_OWNER=m CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_NAT=m CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_REDIRECT=m CONFIG_IP_NF_TARGET_NETMAP=m CONFIG_IP_NF_TARGET_SAME=m # CONFIG_IP_NF_NAT_LOCAL is not set # CONFIG_IP_NF_NAT_SNMP_BASIC is not set CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_TOS=m CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_DSCP=m CONFIG_IP_NF_TARGET_MARK=m CONFIG_IP_NF_TARGET_CLASSIFY=m CONFIG_IP_NF_TARGET_LOG=m CONFIG_IP_NF_TARGET_ULOG=m CONFIG_IP_NF_TARGET_TCPMSS=m CONFIG_IP_NF_ARPTABLES=m CONFIG_IP_NF_ARPFILTER=m CONFIG_IP_NF_ARP_MANGLE=m # CONFIG_IP_NF_COMPAT_IPCHAINS is not set # CONFIG_IP_NF_COMPAT_IPFWADM is not set # CONFIG_IP_NF_RAW is not set CONFIG_IP_NF_MATCH_ADDRTYPE=m CONFIG_IP_NF_MATCH_REALM=m # CONFIG_IP_NF_CT_ACCT is not set # CONFIG_IP_NF_MATCH_SCTP is not set # CONFIG_IP_NF_CT_PROTO_SCTP is not set # # SCTP Configuration (EXPERIMENTAL) # # CONFIG_IP_SCTP is not set # CONFIG_ATM is not set # CONFIG_BRIDGE is not set # CONFIG_VLAN_8021Q is not set # CONFIG_DECNET is not set # CONFIG_LLC2 is not set # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # CONFIG_NET_SCHED=y CONFIG_NET_SCH_CLK_JIFFIES=y # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set # CONFIG_NET_SCH_CLK_CPU is not set CONFIG_NET_SCH_CBQ=m CONFIG_NET_SCH_HTB=m # CONFIG_NET_SCH_HFSC is not set CONFIG_NET_SCH_PRIO=m CONFIG_NET_SCH_RED=m CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m # CONFIG_NET_SCH_NETEM is not set CONFIG_NET_SCH_INGRESS=m CONFIG_NET_QOS=y CONFIG_NET_ESTIMATOR=y CONFIG_NET_CLS=y CONFIG_NET_CLS_TCINDEX=m CONFIG_NET_CLS_ROUTE4=m CONFIG_NET_CLS_ROUTE=y CONFIG_NET_CLS_FW=m CONFIG_NET_CLS_U32=m # CONFIG_CLS_U32_PERF is not set # CONFIG_NET_CLS_IND is not set CONFIG_NET_CLS_RSVP=m CONFIG_NET_CLS_RSVP6=m # CONFIG_NET_CLS_ACT is not set CONFIG_NET_CLS_POLICE=y # # Network testing # # CONFIG_NET_PKTGEN is not set # CONFIG_NETPOLL is not set # CONFIG_NET_POLL_CONTROLLER is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set CONFIG_NETDEVICES=y CONFIG_DUMMY=m # CONFIG_BONDING is not set # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # CONFIG_ETHERTAP is not set # # ARCnet devices # # CONFIG_ARCNET is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y CONFIG_MII=m # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_HP100 is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_DGRS is not set # CONFIG_EEPRO100 is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set # CONFIG_8139CP is not set # CONFIG_8139TOO is not set CONFIG_SIS900=m # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_TLAN is not set # CONFIG_VIA_RHINE is not set # CONFIG_VIA_VELOCITY is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set # CONFIG_E1000 is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_SK98LIN is not set # CONFIG_TIGON3 is not set # # Ethernet (10000 Mbit) # # CONFIG_IXGB is not set # CONFIG_S2IO is not set # # Token Ring devices # # CONFIG_TR is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Wan interfaces # # CONFIG_WAN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set CONFIG_PPP=m CONFIG_PPP_MULTILINK=y CONFIG_PPP_FILTER=y CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOMP=m CONFIG_PPPOE=m # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set # CONFIG_NETCONSOLE is not set # # ISDN subsystem # # CONFIG_ISDN is not set # # Telephony Support # # CONFIG_PHONE is not set # # 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_TSDEV is not set # CONFIG_INPUT_EVDEV is not set # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # CONFIG_GAMEPORT=m CONFIG_SOUND_GAMEPORT=m # CONFIG_GAMEPORT_NS558 is not set # CONFIG_GAMEPORT_L4 is not set # CONFIG_GAMEPORT_EMU10K1 is not set # CONFIG_GAMEPORT_VORTEX is not set # CONFIG_GAMEPORT_FM801 is not set # CONFIG_GAMEPORT_CS461x is not set CONFIG_SERIO=y CONFIG_SERIO_I8042=y # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_CT82C710 is not set CONFIG_SERIO_PCIPS2=m # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=y # CONFIG_MOUSE_SERIAL is not set # CONFIG_MOUSE_VSXXXAA is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_MISC=y CONFIG_INPUT_PCSPKR=y # CONFIG_INPUT_UINPUT is not set # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y # CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers # CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_CONSOLE is not set CONFIG_SERIAL_8250_NR_UARTS=4 # CONFIG_SERIAL_8250_EXTENDED is not set # # Non-8250 serial port support # CONFIG_SERIAL_CORE=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 # CONFIG_QIC02_TAPE is not set # # IPMI # # CONFIG_IPMI_HANDLER is not set # # Watchdog Cards # # CONFIG_WATCHDOG is not set # CONFIG_HW_RANDOM is not set CONFIG_NVRAM=y CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set CONFIG_AGP=m # CONFIG_AGP_ALI is not set # CONFIG_AGP_ATI is not set # CONFIG_AGP_AMD is not set # CONFIG_AGP_AMD64 is not set # CONFIG_AGP_INTEL is not set # CONFIG_AGP_INTEL_MCH is not set # CONFIG_AGP_NVIDIA is not set CONFIG_AGP_SIS=m # CONFIG_AGP_SWORKS is not set # CONFIG_AGP_VIA is not set # CONFIG_AGP_EFFICEON is not set # CONFIG_DRM is not set # CONFIG_MWAVE is not set # CONFIG_RAW_DRIVER is not set CONFIG_HANGCHECK_TIMER=m # # I2C support # CONFIG_I2C=m CONFIG_I2C_CHARDEV=m # # I2C Algorithms # CONFIG_I2C_ALGOBIT=m CONFIG_I2C_ALGOPCF=m # CONFIG_I2C_ALGOPCA is not set # # I2C Hardware Bus support # CONFIG_I2C_ALI1535=m CONFIG_I2C_ALI1563=m CONFIG_I2C_ALI15X3=m CONFIG_I2C_AMD756=m CONFIG_I2C_AMD8111=m CONFIG_I2C_I801=m CONFIG_I2C_I810=m CONFIG_I2C_ISA=m CONFIG_I2C_NFORCE2=m CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PIIX4=m CONFIG_I2C_PROSAVAGE=m CONFIG_I2C_SAVAGE4=m CONFIG_SCx200_ACB=m CONFIG_I2C_SIS5595=m CONFIG_I2C_SIS630=m CONFIG_I2C_SIS96X=m CONFIG_I2C_VIA=m CONFIG_I2C_VIAPRO=m CONFIG_I2C_VOODOO3=m # CONFIG_I2C_PCA_ISA is not set # # Hardware Sensors Chip support # CONFIG_I2C_SENSOR=m CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_ADM1025=m CONFIG_SENSORS_ADM1031=m CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_FSCHER=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_LM75=m CONFIG_SENSORS_LM77=m CONFIG_SENSORS_LM78=m CONFIG_SENSORS_LM80=m CONFIG_SENSORS_LM83=m CONFIG_SENSORS_LM85=m CONFIG_SENSORS_LM90=m CONFIG_SENSORS_MAX1619=m # CONFIG_SENSORS_SMSC47M1 is not set CONFIG_SENSORS_VIA686A=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83627HF=m # # Other I2C Chip support # CONFIG_SENSORS_EEPROM=m CONFIG_SENSORS_PCF8574=m CONFIG_SENSORS_PCF8591=m CONFIG_SENSORS_RTC8564=m # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_CHIP is not set # # Dallas's 1-wire bus # # CONFIG_W1 is not set # # Misc devices # # CONFIG_IBM_ASM is not set # # Multimedia devices # # CONFIG_VIDEO_DEV is not set # # Digital Video Broadcasting Devices # # CONFIG_DVB is not set # # Graphics support # # CONFIG_FB is not set CONFIG_VIDEO_SELECT=y # # Console display driver support # CONFIG_VGA_CONSOLE=y CONFIG_DUMMY_CONSOLE=y # # Sound # CONFIG_SOUND=m # # Advanced Linux Sound Architecture # # CONFIG_SND is not set # # Open Sound System # # CONFIG_SOUND_PRIME is not set # # USB support # # CONFIG_USB is not set # # USB Gadget Support # # CONFIG_USB_GADGET is not set # # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y # CONFIG_EXT2_FS_POSIX_ACL is not set # CONFIG_EXT2_FS_SECURITY is not set CONFIG_EXT3_FS=y CONFIG_EXT3_FS_XATTR=y # CONFIG_EXT3_FS_POSIX_ACL is not set # CONFIG_EXT3_FS_SECURITY is not set CONFIG_JBD=y # CONFIG_JBD_DEBUG is not set CONFIG_FS_MBCACHE=y # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set # CONFIG_XFS_FS is not set # CONFIG_MINIX_FS is not set CONFIG_ROMFS_FS=y # CONFIG_QUOTA is not set # CONFIG_AUTOFS_FS is not set CONFIG_AUTOFS4_FS=y # # CD-ROM/DVD Filesystems # CONFIG_ISO9660_FS=y CONFIG_JOLIET=y CONFIG_ZISOFS=y CONFIG_ZISOFS_FS=y CONFIG_UDF_FS=y CONFIG_UDF_NLS=y # # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=y CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" CONFIG_NTFS_FS=m # CONFIG_NTFS_DEBUG is not set # CONFIG_NTFS_RW is not set # # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_SYSFS=y # CONFIG_DEVFS_FS is not set CONFIG_DEVPTS_FS_XATTR=y # CONFIG_DEVPTS_FS_SECURITY is not set CONFIG_TMPFS=y # CONFIG_HUGETLBFS is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y # # Miscellaneous filesystems # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_HFSPLUS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set CONFIG_CRAMFS=m # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # # Network File Systems # # CONFIG_NFS_FS is not set # CONFIG_NFSD is not set # CONFIG_EXPORTFS is not set # CONFIG_SMB_FS is not set # CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set CONFIG_AFS_FS=m CONFIG_RXRPC=m # # Partition Types # # CONFIG_PARTITION_ADVANCED is not set CONFIG_MSDOS_PARTITION=y # # Native Language Support # CONFIG_NLS=y CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set CONFIG_NLS_CODEPAGE_850=y # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_860 is not set # CONFIG_NLS_CODEPAGE_861 is not set # CONFIG_NLS_CODEPAGE_862 is not set # CONFIG_NLS_CODEPAGE_863 is not set # CONFIG_NLS_CODEPAGE_864 is not set # CONFIG_NLS_CODEPAGE_865 is not set # CONFIG_NLS_CODEPAGE_866 is not set # CONFIG_NLS_CODEPAGE_869 is not set # CONFIG_NLS_CODEPAGE_936 is not set # CONFIG_NLS_CODEPAGE_950 is not set # CONFIG_NLS_CODEPAGE_932 is not set # CONFIG_NLS_CODEPAGE_949 is not set # CONFIG_NLS_CODEPAGE_874 is not set # CONFIG_NLS_ISO8859_8 is not set CONFIG_NLS_CODEPAGE_1250=y # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_5 is not set # CONFIG_NLS_ISO8859_6 is not set # CONFIG_NLS_ISO8859_7 is not set # CONFIG_NLS_ISO8859_9 is not set # CONFIG_NLS_ISO8859_13 is not set # CONFIG_NLS_ISO8859_14 is not set CONFIG_NLS_ISO8859_15=y # CONFIG_NLS_KOI8_R is not set # CONFIG_NLS_KOI8_U is not set # CONFIG_NLS_UTF8 is not set # # Profiling support # # CONFIG_PROFILING is not set # # Kernel hacking # CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_SPINLOCK_SLEEP is not set # CONFIG_DEBUG_INFO is not set CONFIG_EARLY_PRINTK=y # CONFIG_DEBUG_STACKOVERFLOW is not set # CONFIG_DEBUG_STACK_USAGE is not set # CONFIG_DEBUG_PAGEALLOC is not set # CONFIG_4KSTACKS is not set # CONFIG_SCHEDSTATS is not set CONFIG_X86_FIND_SMP_CONFIG=y CONFIG_X86_MPPARSE=y # # Security options # CONFIG_SECURITY=y # CONFIG_SECURITY_NETWORK is not set CONFIG_SECURITY_CAPABILITIES=m # CONFIG_SECURITY_SELINUX is not set # # Cryptographic options # CONFIG_CRYPTO=y # CONFIG_CRYPTO_HMAC is not set # CONFIG_CRYPTO_NULL is not set # CONFIG_CRYPTO_MD4 is not set # CONFIG_CRYPTO_MD5 is not set # CONFIG_CRYPTO_SHA1 is not set # CONFIG_CRYPTO_SHA256 is not set # CONFIG_CRYPTO_SHA512 is not set # CONFIG_CRYPTO_WHIRLPOOL is not set # CONFIG_CRYPTO_DES is not set # CONFIG_CRYPTO_BLOWFISH is not set # CONFIG_CRYPTO_TWOFISH is not set # CONFIG_CRYPTO_SERPENT is not set # CONFIG_CRYPTO_AES_586 is not set # CONFIG_CRYPTO_CAST5 is not set # CONFIG_CRYPTO_CAST6 is not set # CONFIG_CRYPTO_TEA is not set # CONFIG_CRYPTO_ARC4 is not set # CONFIG_CRYPTO_KHAZAD is not set # CONFIG_CRYPTO_DEFLATE is not set # CONFIG_CRYPTO_MICHAEL_MIC is not set # CONFIG_CRYPTO_CRC32C is not set # CONFIG_CRYPTO_TEST is not set # # Library routines # CONFIG_CRC_CCITT=m CONFIG_CRC32=m CONFIG_LIBCRC32C=m CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=m CONFIG_X86_BIOS_REBOOT=y CONFIG_PC=y ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 12:04 ` Florian Schmidt @ 2004-09-03 12:08 ` Florian Schmidt 2004-09-03 18:28 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Florian Schmidt @ 2004-09-03 12:08 UTC (permalink / raw) To: Florian Schmidt; +Cc: Ingo Molnar, linux-kernel, rlrevell, felipe_alfaro On Fri, 3 Sep 2004 14:04:25 +0200 Florian Schmidt <mista.tapas@gmx.net> wrote: > > and for completeness sake here's my kernel .config: > [snip] btw: how can i set a different kernel "name" so the modules get their own subdir in /lib/? flo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 12:08 ` Florian Schmidt @ 2004-09-03 18:28 ` Lee Revell 2004-09-03 18:54 ` Florian Schmidt 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-03 18:28 UTC (permalink / raw) To: Florian Schmidt; +Cc: Ingo Molnar, linux-kernel, felipe_alfaro On Fri, 2004-09-03 at 08:08, Florian Schmidt wrote: > On Fri, 3 Sep 2004 14:04:25 +0200 > Florian Schmidt <mista.tapas@gmx.net> wrote: > > > > > and for completeness sake here's my kernel .config: > > > [snip] > > btw: how can i set a different kernel "name" so the modules get their > own subdir in /lib/? > Change EXTRAVERSION in the top level kernel Makefile. The newer VP patches do this for you. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 18:28 ` Lee Revell @ 2004-09-03 18:54 ` Florian Schmidt 2004-09-03 18:52 ` Lee Revell 2004-09-03 19:06 ` K.R. Foley 0 siblings, 2 replies; 224+ messages in thread From: Florian Schmidt @ 2004-09-03 18:54 UTC (permalink / raw) To: Lee Revell; +Cc: Ingo Molnar, linux-kernel, felipe_alfaro On Fri, 03 Sep 2004 14:28:26 -0400 Lee Revell <rlrevell@joe-job.com> wrote: > Change EXTRAVERSION in the top level kernel Makefile. The newer VP > patches do this for you. Ok, though my incentive was to have different versions of the same VP patched kernel [different config stuff though] ready w/o rebuilding in between. Thanks for the tip :) flo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 18:54 ` Florian Schmidt @ 2004-09-03 18:52 ` Lee Revell 2004-09-03 19:06 ` K.R. Foley 1 sibling, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-03 18:52 UTC (permalink / raw) To: Florian Schmidt; +Cc: Ingo Molnar, linux-kernel, felipe_alfaro On Fri, 2004-09-03 at 14:54, Florian Schmidt wrote: > On Fri, 03 Sep 2004 14:28:26 -0400 > Lee Revell <rlrevell@joe-job.com> wrote: > > > Change EXTRAVERSION in the top level kernel Makefile. The newer VP > > patches do this for you. > > Ok, though my incentive was to have different versions of the same VP > patched kernel [different config stuff though] ready w/o rebuilding in > between. > > Thanks for the tip :) > You can put whatever you want in there, just append to the existing EXTRAVERSION. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled 2004-09-03 18:54 ` Florian Schmidt 2004-09-03 18:52 ` Lee Revell @ 2004-09-03 19:06 ` K.R. Foley 1 sibling, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-03 19:06 UTC (permalink / raw) To: Florian Schmidt; +Cc: Lee Revell, Ingo Molnar, linux-kernel, felipe_alfaro Florian Schmidt wrote: > On Fri, 03 Sep 2004 14:28:26 -0400 > Lee Revell <rlrevell@joe-job.com> wrote: > > >>Change EXTRAVERSION in the top level kernel Makefile. The newer VP >>patches do this for you. > > > Ok, though my incentive was to have different versions of the same VP > patched kernel [different config stuff though] ready w/o rebuilding in > between. > > Thanks for the tip :) > > flo I believe if you just change the EXTRAVERSION in an already built tree, you can then just do "make modules_install" to install them into a different directory. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 [not found] <20040903120957.00665413@mango.fruits.de> [not found] ` <20040903100946.GA22819@elte.hu> @ 2004-09-04 19:51 ` Ingo Molnar 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar 2004-09-05 14:49 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Florian Schmidt 1 sibling, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-04 19:51 UTC (permalink / raw) To: Florian Schmidt, K.R. Foley; +Cc: linux-kernel, rlrevell, felipe_alfaro ok, found and fixed the bug reported by K.R. Foley, and found the bug reported by Florian Schmidt as well. the first bug was caused by an unrobustness in cond_resched(). The bug happens when a task that is in do_exit() happens to be preempted via cond_resched() - the TASK_ZOMBIE/TASK_DEAD task state is overwritten with TASK_RUNNING and then the task crashes in the 'final' schedule. To fix this i've changed cond_resched() to be much closer in behavior to preempt_schedule() - this makes sense anyway. Florian's bug triggers if softirq_preemption is disabled: if a softirq still gets delayed to softirqd (this can happen even in the stock kernel, under certain circumstances) then it would be executed without disabling direct softirq execution. While this is safe and intended to make softirqd preemptable when softirq_preemption==1, it's unsafe and an illegal preemption when there are indirect softirqs around. The fix is to properly disable softirqs in this branch too. i've uploaded -R4 which fixes these two bugs: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk4-R4 other changes in -R4: - add the RX-break-up to e100.c which was promised in -R0 - patch was missing by mistake. - small tweaks to the latency_trace header Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-04 19:51 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Ingo Molnar @ 2004-09-05 14:02 ` Ingo Molnar 2004-09-05 16:07 ` Matt Heler ` (3 more replies) 2004-09-05 14:49 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Florian Schmidt 1 sibling, 4 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-05 14:02 UTC (permalink / raw) To: Florian Schmidt, K.R. Foley; +Cc: linux-kernel, rlrevell, felipe_alfaro i've released -R5: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R5 2.6.9-rc1-bk12 patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 Changes in -R5: - merge to 2.6.9-rc1-bk12 - fixed an in_atomic() bug in the SMP && !PREEMPT kernel Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar @ 2004-09-05 16:07 ` Matt Heler 2004-09-05 18:16 ` Lee Revell ` (2 subsequent siblings) 3 siblings, 0 replies; 224+ messages in thread From: Matt Heler @ 2004-09-05 16:07 UTC (permalink / raw) To: Ingo Molnar Cc: Florian Schmidt, K.R. Foley, linux-kernel, rlrevell, felipe_alfaro Ingo, Any chance you will start syncing your patches up with the -mm tree ? Or is it just -bk for the time being ? Matt H. On Sunday 05 September 2004 7:02 am, Ingo Molnar wrote: > i've released -R5: > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12 >-R5 > > 2.6.9-rc1-bk12 patching order is: > > http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 > + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 > + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 > > Changes in -R5: > > - merge to 2.6.9-rc1-bk12 > > - fixed an in_atomic() bug in the SMP && !PREEMPT kernel > > Ingo > - > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar 2004-09-05 16:07 ` Matt Heler @ 2004-09-05 18:16 ` Lee Revell 2004-09-05 19:12 ` Ingo Molnar 2004-09-06 11:06 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Ingo Molnar 2004-09-07 22:55 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Lee Revell 3 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-05 18:16 UTC (permalink / raw) To: Ingo Molnar; +Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Sun, 2004-09-05 at 10:02, Ingo Molnar wrote: > i've released -R5: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R5 > > 2.6.9-rc1-bk12 patching order is: > > http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 > + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 > + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 > Ok, first new one in a while. This was with -R0, but I haven't seen anyone else report it. Let me know if you need the complete trace. preemption latency trace v1.0.2 ------------------------------- latency: 511 us, entries: 951 (951) ----------------- | task: dbench/4810, uid:1000 nice:0 policy:0 rt_prio:0 ----------------- => started at: kill_pg_info+0x10/0x50 => ended at: kill_pg_info+0x2e/0x50 =======> 00000001 0.000ms (+0.000ms): kill_pg_info (sys_kill) 00000001 0.000ms (+0.000ms): __kill_pg_info (kill_pg_info) 00000001 0.000ms (+0.000ms): find_pid (__kill_pg_info) 00000001 0.001ms (+0.000ms): group_send_sig_info (__kill_pg_info) 00000001 0.001ms (+0.000ms): check_kill_permission (group_send_sig_info) 00000001 0.002ms (+0.000ms): dummy_task_kill (check_kill_permission) 00000002 0.002ms (+0.000ms): __group_send_sig_info (group_send_sig_info) 00000002 0.003ms (+0.000ms): handle_stop_signal (__group_send_sig_info) 00000002 0.003ms (+0.000ms): rm_from_queue (handle_stop_signal) 00000002 0.004ms (+0.000ms): rm_from_queue (handle_stop_signal) 00000002 0.004ms (+0.000ms): wake_up_state (handle_stop_signal) 00000002 0.005ms (+0.000ms): try_to_wake_up (wake_up_state) 00000002 0.005ms (+0.000ms): task_rq_lock (try_to_wake_up) 00000002 0.006ms (+0.000ms): next_thread (handle_stop_signal) 00000002 0.006ms (+0.000ms): sig_ignored (__group_send_sig_info) 00000002 0.007ms (+0.000ms): send_signal (__group_send_sig_info) 00000002 0.008ms (+0.000ms): kmem_cache_alloc (send_signal) 00000002 0.009ms (+0.001ms): memcpy (send_signal) [...] 00000002 0.496ms (+0.000ms): kmem_cache_alloc (send_signal) 00000002 0.497ms (+0.000ms): memcpy (send_signal) 00000002 0.498ms (+0.000ms): __group_complete_signal (__group_send_sig_info) 00000002 0.498ms (+0.000ms): task_curr (__group_complete_signal) 00000001 0.498ms (+0.000ms): preempt_schedule (group_send_sig_info) 00000001 0.499ms (+0.000ms): group_send_sig_info (__kill_pg_info) 00000001 0.499ms (+0.000ms): check_kill_permission (group_send_sig_info) 00000001 0.499ms (+0.000ms): dummy_task_kill (check_kill_permission) 00000002 0.500ms (+0.000ms): __group_send_sig_info (group_send_sig_info) 00000002 0.500ms (+0.000ms): handle_stop_signal (__group_send_sig_info) 00000002 0.501ms (+0.000ms): rm_from_queue (handle_stop_signal) 00000002 0.501ms (+0.000ms): rm_from_queue (handle_stop_signal) 00000002 0.502ms (+0.000ms): wake_up_state (handle_stop_signal) 00000002 0.502ms (+0.000ms): try_to_wake_up (wake_up_state) 00000002 0.503ms (+0.000ms): task_rq_lock (try_to_wake_up) 00000003 0.503ms (+0.000ms): activate_task (try_to_wake_up) 00000003 0.503ms (+0.000ms): sched_clock (activate_task) 00000003 0.504ms (+0.000ms): recalc_task_prio (activate_task) 00000003 0.505ms (+0.000ms): effective_prio (recalc_task_prio) 00000003 0.505ms (+0.000ms): enqueue_task (activate_task) 00000002 0.505ms (+0.000ms): preempt_schedule (try_to_wake_up) 00000002 0.506ms (+0.000ms): next_thread (handle_stop_signal) 00000002 0.506ms (+0.000ms): sig_ignored (__group_send_sig_info) 00000002 0.507ms (+0.000ms): send_signal (__group_send_sig_info) 00000002 0.507ms (+0.000ms): kmem_cache_alloc (send_signal) 00000002 0.508ms (+0.000ms): cache_alloc_refill (kmem_cache_alloc) 00000002 0.509ms (+0.001ms): preempt_schedule (cache_alloc_refill) 00000002 0.510ms (+0.000ms): memcpy (send_signal) 00000002 0.510ms (+0.000ms): __group_complete_signal (__group_send_sig_info) 00000002 0.511ms (+0.000ms): task_curr (__group_complete_signal) 00000001 0.511ms (+0.000ms): preempt_schedule (group_send_sig_info) 00000001 0.512ms (+0.001ms): sub_preempt_count (kill_pg_info) 00000001 0.513ms (+0.000ms): update_max_trace (check_preempt_timing) 00000001 0.513ms (+0.000ms): _mmx_memcpy (update_max_trace) 00000001 0.514ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-05 18:16 ` Lee Revell @ 2004-09-05 19:12 ` Ingo Molnar 2004-09-05 21:03 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-05 19:12 UTC (permalink / raw) To: Lee Revell; +Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Lee Revell <rlrevell@joe-job.com> wrote: > Ok, first new one in a while. This was with -R0, but I haven't seen > anyone else report it. Let me know if you need the complete trace. > > preemption latency trace v1.0.2 > ------------------------------- > latency: 511 us, entries: 951 (951) > ----------------- > | task: dbench/4810, uid:1000 nice:0 policy:0 rt_prio:0 > ----------------- > => started at: kill_pg_info+0x10/0x50 > => ended at: kill_pg_info+0x2e/0x50 > =======> > 00000001 0.000ms (+0.000ms): kill_pg_info (sys_kill) > 00000001 0.000ms (+0.000ms): __kill_pg_info (kill_pg_info) > 00000001 0.000ms (+0.000ms): find_pid (__kill_pg_info) this is quite hard to fix - lots of processes were SIGKILL-ed (or SIGTERM-ed) and the signal semantics require us to deliver signals atomically. The only fix would be to turn the signal locks into semaphores but that's quite hard. (it's also a bit problematic for interrupt-delivered signals.) Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-05 19:12 ` Ingo Molnar @ 2004-09-05 21:03 ` Lee Revell 2004-09-06 6:30 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-05 21:03 UTC (permalink / raw) To: Ingo Molnar; +Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Sun, 2004-09-05 at 15:12, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > Ok, first new one in a while. This was with -R0, but I haven't seen > > anyone else report it. Let me know if you need the complete trace. > > > > preemption latency trace v1.0.2 > > ------------------------------- > > latency: 511 us, entries: 951 (951) > > ----------------- > > | task: dbench/4810, uid:1000 nice:0 policy:0 rt_prio:0 > > ----------------- > > => started at: kill_pg_info+0x10/0x50 > > => ended at: kill_pg_info+0x2e/0x50 > > =======> > > 00000001 0.000ms (+0.000ms): kill_pg_info (sys_kill) > > 00000001 0.000ms (+0.000ms): __kill_pg_info (kill_pg_info) > > 00000001 0.000ms (+0.000ms): find_pid (__kill_pg_info) > > this is quite hard to fix - lots of processes were SIGKILL-ed (or > SIGTERM-ed) and the signal semantics require us to deliver signals > atomically. The only fix would be to turn the signal locks into > semaphores but that's quite hard. (it's also a bit problematic for > interrupt-delivered signals.) > > Ingo > Here is a histogram I generated using realfeel2. This should provide better data than my jackd histograms because the latter are dependent on the ALSA driver, jackd's design, etc. I had to modify the amlat utilities to use usecs instead of msecs, this is a very good sign. ;-) http://krustophenia.net/testresults.php?dataset=2.6.9-rc1-R0#/var/www/2.6.9-rc1-R0/foo.hist I find the two smaller spikes to either side of the central spike really odd. These showed up in my jackd tests too, I had attributed them to some measurement artifact, but they seem real. Maybe a rounding bug, or some kind of weird cache effect? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-05 21:03 ` Lee Revell @ 2004-09-06 6:30 ` Ingo Molnar 2004-09-06 7:44 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-06 6:30 UTC (permalink / raw) To: Lee Revell; +Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Lee Revell <rlrevell@joe-job.com> wrote: > http://krustophenia.net/testresults.php?dataset=2.6.9-rc1-R0#/var/www/2.6.9-rc1-R0/foo.hist > > I find the two smaller spikes to either side of the central spike > really odd. These showed up in my jackd tests too, I had attributed > them to some measurement artifact, but they seem real. Maybe a > rounding bug, or some kind of weird cache effect? interesting - the histograms are pretty symmetric around the center. E.g. the exponential foo.hist2 diagram is way too symmetric around 50 usecs! What precisely is being measured? Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-06 6:30 ` Ingo Molnar @ 2004-09-06 7:44 ` Lee Revell 2004-09-07 3:17 ` K.R. Foley 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-06 7:44 UTC (permalink / raw) To: Ingo Molnar; +Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Mon, 2004-09-06 at 02:30, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > http://krustophenia.net/testresults.php?dataset=2.6.9-rc1-R0#/var/www/2.6.9-rc1-R0/foo.hist > > > > I find the two smaller spikes to either side of the central spike > > really odd. These showed up in my jackd tests too, I had attributed > > them to some measurement artifact, but they seem real. Maybe a > > rounding bug, or some kind of weird cache effect? > > interesting - the histograms are pretty symmetric around the center. > E.g. the exponential foo.hist2 diagram is way too symmetric around 50 > usecs! What precisely is being measured? > Here's the program. It does mlockall(), acquires realtime scheduling, then sets up a 2048 Hz stream of interupts from the RTC and measures the delay. It's quite possible there's a bug, the amlat program did not seem to work, something must have changed with the RTC from 2.4 to 2.6. /* * This was originally written by Mark Hahn. Obtained from * http://brain.mcmaster.ca/~hahn/realfeel.c */ #include <linux/rtc.h> #include <sys/ioctl.h> #include <fcntl.h> #include <unistd.h> #include <errno.h> #include <math.h> #include <stdlib.h> #include <stdio.h> #include <sys/time.h> #include <sys/mman.h> #include <sched.h> #include <sys/signal.h> #include <string.h> #define _GNU_SOURCE #include <getopt.h> /* global vars */ int stopit; /* set to stop measuring */ #define SAMPLES 10000 int histogram[SAMPLES]; /* Milliseconds */ #define PAGE_SIZE 4096UL /* virtual memory page size */ #define OSCR_HZ 3686400 /* frequency of clock ticks */ #define OSCR 0x90000010 /* physical address of OSCR register */ unsigned long *oscr; /* ptr to OSCR */ void setup_clock (void) { int fd; void *map_base; off_t target; off_t page; #ifndef ARCHARM return; #endif fd = open ("/dev/mem", O_RDWR | O_SYNC); if (-1 == fd) { perror ("open of /dev/mem failed\n"); exit (1); } /* Map one page */ target = OSCR; page = target & ~(PAGE_SIZE - 1); map_base = mmap (0, PAGE_SIZE, PROT_READ, MAP_SHARED, fd, page); if (MAP_FAILED == map_base) { perror ("mmap failed"); (void) close (fd); exit (2); } oscr = map_base + (target - page); /* This does not end the mmap, * the mmap will go away when the process dies */ close (fd); } double second() { struct timeval tv; gettimeofday(&tv,0); return tv.tv_sec + 1e-6 * tv.tv_usec; } typedef unsigned long long u64; u64 rdtsc() { u64 tsc; #ifdef ARCHARM tsc = *oscr; #else __asm__ __volatile__("rdtsc" : "=A" (tsc)); #endif return tsc; } void selectsleep(unsigned us) { struct timeval tv; tv.tv_sec = 0; tv.tv_usec = us; select(0,0,0,0,&tv); } double secondsPerTick, ticksPerSecond; void calibrate() { double sumx = 0; double sumy = 0; double sumxx = 0; double sumxy = 0; double slope; // least squares linear regression of ticks onto real time // as returned by gettimeofday. const unsigned n = 30; unsigned i; for (i=0; i<n; i++) { double breal,real,ticks; u64 bticks; breal = second(); bticks = rdtsc(); selectsleep((unsigned)(10000 + drand48() * 200000)); ticks = rdtsc() - bticks; real = second() - breal; sumx += real; sumxx += real * real; sumxy += real * ticks; sumy += ticks; } slope = ((sumxy - (sumx*sumy) / n) / (sumxx - (sumx*sumx) / n)); ticksPerSecond = slope; secondsPerTick = 1.0 / slope; printf("%3.3f MHz\n",ticksPerSecond*1e-6); } void fatal(char *msg) { perror(msg); exit(1); } int set_realtime_priority(void) { struct sched_param schp; /* * set the process to realtime privs */ memset(&schp, 0, sizeof(schp)); schp.sched_priority = sched_get_priority_max(SCHED_FIFO); if (sched_setscheduler(0, SCHED_FIFO, &schp) != 0) { perror("sched_setscheduler"); exit(1); } return 0; } void hist(char *file) { int i; FILE *f; f = fopen(file, "w"); if (f == 0) { fprintf(stderr, "realfeel: can't open `%s':%s\n", file, strerror(errno)); exit(1); } for (i = 0; i < SAMPLES; i++) { if (histogram[i]) { fprintf(f, "%d.%d %d\n", i / 10, i % 10, histogram[i]); } } fclose(f); exit(0); } void signalled(int sig) { stopit = 1; } static void usage(void) { fprintf(stderr, "Usage: realfeel [--samples n] [--hertz n] filename.hist\n"); exit(1); } uint bounded=0; uint ncycles=0; uint current=0; int hz = 2048; char *parse_options(int argc, char **argv) { int c, option_index; static struct option long_options[] = { {"samples", required_argument, 0, 0}, {"hertz", required_argument, 0, 0}, {0, 0, 0, 0}, }; while ((c = getopt_long (argc, argv, "b:", long_options, &option_index)) != -1) { switch (option_index) { default: case -1: fprintf (stderr, "Bad option (%s)\n", optarg); usage(); exit (1); break; case 0: bounded = 1; ncycles = atoi(optarg); break; case 1: hz = atoi(optarg); if (hz > 2048) { fprintf(stderr, "max allowable interrupt frequency is 2048 Hz\n"); hz = 2048; } else if (hz <= 0) { fprintf(stderr, "zero or negative frequency doesn't make sense!\n"); hz = 1; } } } if (argv[optind] == NULL) { fprintf(stderr, "histogram file name required\n"); usage(); exit (2); } return argv[optind]; } #define msec(f) (1e3 * (f)) #define usec(f) (1e6 * (f)) int main(int argc, char *argv[]) { int fd; double ideal; u64 last; double max_delay = 0; char *histfile = parse_options(argc, argv); if (mlockall(MCL_CURRENT|MCL_FUTURE) != 0) { perror("mlockall"); exit(1); } setup_clock (); set_realtime_priority(); calibrate(); printf("secondsPerTick=%f\n", secondsPerTick); printf("ticksPerSecond=%f\n", ticksPerSecond); fd = open("/dev/rtc",O_RDONLY); if (fd == -1) fatal("failed to open /dev/rtc"); ideal = 1.0 / hz; if (ioctl(fd, RTC_IRQP_SET, hz) == -1) fatal("ioctl(RTC_IRQP_SET) failed"); printf("Interrupt frequency: %d Hz\n",hz); if (bounded) { printf("running for %d samples\n", ncycles); } /* Enable periodic interrupts */ if (ioctl(fd, RTC_PIE_ON, 0) == -1) fatal("ioctl(RTC_PIE_ON) failed"); signal(SIGINT, signalled); last = rdtsc(); while (!stopit) { u64 now; double delay; int data; int ms; if (read(fd, &data, sizeof(data)) == -1) fatal("blocking read failed"); now = rdtsc(); delay = secondsPerTick * (now - last); if (delay > max_delay) { max_delay = delay; // printf("%.3f msec\n", -(1e3 * (ideal - delay))); } ms = (-(ideal - delay) + 1.0/20000.0) * 10000000; if (ms < 0) ms = 0; /* hmmm */ if (ms >= SAMPLES) ms = SAMPLES; histogram[ms]++; if (bounded) { if (++current >= ncycles) { printf ("finished collecting %d samples\n", ncycles); printf ("maximum cycle time: %.3fms\n", -msec(ideal - max_delay)); break; } if ((current % 10000) == 0) { printf("%d cycles (max cycle time so far: %.3fus)\n", current, -(usec(ideal - max_delay))); } } last = now; } if (ioctl(fd, RTC_PIE_OFF, 0) == -1) fatal("ioctl(RTC_PIE_OFF) failed"); hist(histfile); return 0; } > Ingo > ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-06 7:44 ` Lee Revell @ 2004-09-07 3:17 ` K.R. Foley 0 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-07 3:17 UTC (permalink / raw) To: Lee Revell; +Cc: Ingo Molnar, Florian Schmidt, linux-kernel, felipe_alfaro Lee Revell wrote: > On Mon, 2004-09-06 at 02:30, Ingo Molnar wrote: > >>* Lee Revell <rlrevell@joe-job.com> wrote: >> >> >>>http://krustophenia.net/testresults.php?dataset=2.6.9-rc1-R0#/var/www/2.6.9-rc1-R0/foo.hist >>> >>>I find the two smaller spikes to either side of the central spike >>>really odd. These showed up in my jackd tests too, I had attributed >>>them to some measurement artifact, but they seem real. Maybe a >>>rounding bug, or some kind of weird cache effect? >> >>interesting - the histograms are pretty symmetric around the center. >>E.g. the exponential foo.hist2 diagram is way too symmetric around 50 >>usecs! What precisely is being measured? >> > > > Here's the program. It does mlockall(), acquires realtime scheduling, > then sets up a 2048 Hz stream of interupts from the RTC and measures the > delay. It's quite possible there's a bug, the amlat program did not > seem to work, something must have changed with the RTC from 2.4 to 2.6. > Actually the amlat program works fine for applying real-time scheduling pressure. I believe it just doesn't do any real latency measuring without the hooks provided by Andrew's rtc-debug patch. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar 2004-09-05 16:07 ` Matt Heler 2004-09-05 18:16 ` Lee Revell @ 2004-09-06 11:06 ` Ingo Molnar 2004-09-06 11:48 ` Rafael J. Wysocki 2004-09-08 6:56 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Lee Revell 2004-09-07 22:55 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Lee Revell 3 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-06 11:06 UTC (permalink / raw) To: linux-kernel Cc: rlrevell, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson i've released the -R6 patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R6 Changes in -R6: - fixed a CONFIG_SMP + CONFIG_PREEMPT bug that had the potential to cause spinlock related lockups. (UP kernels are unaffected.) This bug got introduced in -R5. 2.6.9-rc1-bk12 patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-06 11:06 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Ingo Molnar @ 2004-09-06 11:48 ` Rafael J. Wysocki 2004-09-06 12:25 ` Alexander Nyberg 2004-09-08 6:56 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Lee Revell 1 sibling, 1 reply; 224+ messages in thread From: Rafael J. Wysocki @ 2004-09-06 11:48 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Andi Kleen [-- Attachment #1: Type: text/plain, Size: 2402 bytes --] On Monday 06 of September 2004 13:06, Ingo Molnar wrote: > > i've released the -R6 patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R6 > > Changes in -R6: > > - fixed a CONFIG_SMP + CONFIG_PREEMPT bug that had the potential to > cause spinlock related lockups. (UP kernels are unaffected.) This bug > got introduced in -R5. > > 2.6.9-rc1-bk12 patching order is: > > http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 > + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 > + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 I did as instructed, but it didn't compile (on a UP x86-64 system). I got this: CC arch/x86_64/kernel/irq.o arch/x86_64/kernel/irq.c: In function `request_irq': arch/x86_64/kernel/irq.c:498: warning: implicit declaration of function `setup_irq' CC arch/x86_64/kernel/ptrace.o CC arch/x86_64/kernel/i8259.o arch/x86_64/kernel/i8259.c: In function `init_IRQ': arch/x86_64/kernel/i8259.c:570: warning: implicit declaration of function `setup_irq' CC arch/x86_64/kernel/ioport.o CC arch/x86_64/kernel/ldt.o CC arch/x86_64/kernel/setup.o CC arch/x86_64/kernel/time.o arch/x86_64/kernel/time.c: In function `time_init': arch/x86_64/kernel/time.c:820: warning: implicit declaration of function `setup_irq' CC arch/x86_64/kernel/sys_x86_64.o [- snip -] C kernel/hardirq.o kernel/hardirq.c: In function `recalculate_desc_flags': kernel/hardirq.c:314: error: `SA_NODELAY' undeclared (first use in this function) kernel/hardirq.c:314: error: (Each undeclared identifier is reported only once kernel/hardirq.c:314: error: for each function it appears in.) kernel/hardirq.c: In function `generic_setup_irq': kernel/hardirq.c:344: error: `SA_NODELAY' undeclared (first use in this function) kernel/hardirq.c: In function `threaded_read_proc': kernel/hardirq.c:659: error: `SA_NODELAY' undeclared (first use in this function) kernel/hardirq.c: In function `threaded_write_proc': kernel/hardirq.c:677: error: `SA_NODELAY' undeclared (first use in this function) make[1]: *** [kernel/hardirq.o] Error 1 make: *** [kernel] Error 2 The .config is attached. Regards, RJW -- For a successful technology, reality must take precedence over public relations, for nature cannot be fooled. -- Richard P. Feynman [-- Attachment #2: config --] [-- Type: text/plain, Size: 39371 bytes --] # # Automatically generated make config: don't edit # Linux kernel version: 2.6.9-rc1-bk12-VP-R6 # Mon Sep 6 13:39:33 2004 # CONFIG_X86_64=y CONFIG_64BIT=y CONFIG_X86=y CONFIG_MMU=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_X86_CMPXCHG=y CONFIG_EARLY_PRINTK=y CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y CONFIG_GENERIC_ISA_DMA=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN_ON_SMP=y # # General setup # CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_POSIX_MQUEUE=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_BSD_PROCESS_ACCT_V3=y CONFIG_SYSCTL=y CONFIG_AUDIT=y CONFIG_AUDITSYSCALL=y CONFIG_LOG_BUF_SHIFT=18 CONFIG_HOTPLUG=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_FUTEX=y CONFIG_EPOLL=y # CONFIG_PREEMPT_TIMING is not set CONFIG_IOSCHED_NOOP=y CONFIG_IOSCHED_AS=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_CFQ=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SHMEM=y # CONFIG_TINY_SHMEM is not set # # Loadable module support # CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_OBSOLETE_MODPARM=y CONFIG_MODVERSIONS=y CONFIG_KMOD=y # # Processor type and features # CONFIG_MK8=y # CONFIG_MPSC is not set # CONFIG_GENERIC_CPU is not set CONFIG_X86_L1_CACHE_BYTES=64 CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_X86_TSC=y CONFIG_X86_GOOD_APIC=y CONFIG_MICROCODE=m CONFIG_X86_MSR=m CONFIG_X86_CPUID=m CONFIG_X86_IO_APIC=y CONFIG_X86_LOCAL_APIC=y CONFIG_MTRR=y # CONFIG_SMP is not set CONFIG_PREEMPT=y CONFIG_GART_IOMMU=y CONFIG_SWIOTLB=y CONFIG_X86_MCE=y # # Power management options # CONFIG_PM=y CONFIG_SOFTWARE_SUSPEND=y # # ACPI (Advanced Configuration and Power Interface) Support # CONFIG_ACPI=y CONFIG_ACPI_BOOT=y CONFIG_ACPI_INTERPRETER=y CONFIG_ACPI_SLEEP=y CONFIG_ACPI_SLEEP_PROC_FS=y CONFIG_ACPI_AC=y CONFIG_ACPI_BATTERY=y CONFIG_ACPI_BUTTON=y CONFIG_ACPI_FAN=y CONFIG_ACPI_PROCESSOR=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_ASUS=y # CONFIG_ACPI_TOSHIBA is not set CONFIG_ACPI_DEBUG=y CONFIG_ACPI_BUS=y CONFIG_ACPI_EC=y CONFIG_ACPI_POWER=y CONFIG_ACPI_PCI=y CONFIG_ACPI_SYSTEM=y # # CPU Frequency scaling # CONFIG_CPU_FREQ=y # CONFIG_CPU_FREQ_PROC_INTF is not set CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y # CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set CONFIG_CPU_FREQ_GOV_PERFORMANCE=y CONFIG_CPU_FREQ_GOV_POWERSAVE=y CONFIG_CPU_FREQ_GOV_USERSPACE=y # CONFIG_CPU_FREQ_GOV_ONDEMAND is not set # CONFIG_CPU_FREQ_24_API is not set CONFIG_CPU_FREQ_TABLE=m # # CPUFreq processor drivers # CONFIG_X86_POWERNOW_K8=m CONFIG_X86_POWERNOW_K8_ACPI=y # CONFIG_X86_SPEEDSTEP_CENTRINO is not set # CONFIG_X86_ACPI_CPUFREQ is not set # # Bus options (PCI etc.) # CONFIG_PCI=y CONFIG_PCI_DIRECT=y CONFIG_PCI_MMCONFIG=y # CONFIG_UNORDERED_IO is not set # CONFIG_PCI_MSI is not set CONFIG_PCI_LEGACY_PROC=y CONFIG_PCI_NAMES=y # # PCMCIA/CardBus support # CONFIG_PCMCIA=m # CONFIG_PCMCIA_DEBUG is not set CONFIG_YENTA=m CONFIG_CARDBUS=y CONFIG_PD6729=m CONFIG_I82092=m CONFIG_TCIC=m # # PCI Hotplug Support # CONFIG_HOTPLUG_PCI=m CONFIG_HOTPLUG_PCI_FAKE=m CONFIG_HOTPLUG_PCI_ACPI=m # CONFIG_HOTPLUG_PCI_ACPI_IBM is not set CONFIG_HOTPLUG_PCI_CPCI=y CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m # CONFIG_HOTPLUG_PCI_PCIE is not set CONFIG_HOTPLUG_PCI_SHPC=m # CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE is not set # # Executable file formats / Emulations # CONFIG_BINFMT_ELF=y CONFIG_BINFMT_MISC=m CONFIG_IA32_EMULATION=y CONFIG_IA32_AOUT=y CONFIG_COMPAT=y CONFIG_SYSVIPC_COMPAT=y CONFIG_UID16=y # # Device Drivers # # # Generic Driver Options # CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_FW_LOADER=m # CONFIG_DEBUG_DRIVER is not set # # Memory Technology Devices (MTD) # CONFIG_MTD=m # CONFIG_MTD_DEBUG is not set CONFIG_MTD_PARTITIONS=y CONFIG_MTD_CONCAT=m CONFIG_MTD_REDBOOT_PARTS=m # CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set # CONFIG_MTD_REDBOOT_PARTS_READONLY is not set CONFIG_MTD_CMDLINE_PARTS=y # # User Modules And Translation Layers # CONFIG_MTD_CHAR=m CONFIG_MTD_BLOCK=m CONFIG_MTD_BLOCK_RO=m CONFIG_FTL=m CONFIG_NFTL=m CONFIG_NFTL_RW=y CONFIG_INFTL=m # # RAM/ROM/Flash chip drivers # CONFIG_MTD_CFI=m CONFIG_MTD_JEDECPROBE=m CONFIG_MTD_GEN_PROBE=m CONFIG_MTD_CFI_ADV_OPTIONS=y CONFIG_MTD_CFI_NOSWAP=y # CONFIG_MTD_CFI_BE_BYTE_SWAP is not set # CONFIG_MTD_CFI_LE_BYTE_SWAP is not set # CONFIG_MTD_CFI_GEOMETRY is not set CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set CONFIG_MTD_CFI_I1=y CONFIG_MTD_CFI_I2=y # CONFIG_MTD_CFI_I4 is not set # CONFIG_MTD_CFI_I8 is not set CONFIG_MTD_CFI_INTELEXT=m CONFIG_MTD_CFI_AMDSTD=m CONFIG_MTD_CFI_AMDSTD_RETRY=0 CONFIG_MTD_CFI_STAA=m CONFIG_MTD_CFI_UTIL=m # CONFIG_MTD_RAM is not set # CONFIG_MTD_ROM is not set CONFIG_MTD_ABSENT=m # # Mapping drivers for chip access # CONFIG_MTD_COMPLEX_MAPPINGS=y CONFIG_MTD_PHYSMAP=m CONFIG_MTD_PHYSMAP_START=0x8000000 CONFIG_MTD_PHYSMAP_LEN=0x4000000 CONFIG_MTD_PHYSMAP_BANKWIDTH=2 # CONFIG_MTD_PNC2000 is not set CONFIG_MTD_SC520CDP=m # CONFIG_MTD_NETSC520 is not set # CONFIG_MTD_SBC_GXX is not set # CONFIG_MTD_ELAN_104NC is not set CONFIG_MTD_SCx200_DOCFLASH=m CONFIG_MTD_AMD76XROM=m # CONFIG_MTD_ICHXROM is not set CONFIG_MTD_SCB2_FLASH=m # CONFIG_MTD_NETtel is not set # CONFIG_MTD_DILNETPC is not set CONFIG_MTD_L440GX=m CONFIG_MTD_PCI=m # # Self-contained MTD device drivers # CONFIG_MTD_PMC551=m CONFIG_MTD_PMC551_BUGFIX=y # CONFIG_MTD_PMC551_DEBUG is not set CONFIG_MTD_SLRAM=m # CONFIG_MTD_PHRAM is not set CONFIG_MTD_MTDRAM=m CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTDRAM_ERASE_SIZE=128 CONFIG_MTD_BLKMTD=m # # Disk-On-Chip Device Drivers # CONFIG_MTD_DOC2000=m CONFIG_MTD_DOC2001=m CONFIG_MTD_DOC2001PLUS=m CONFIG_MTD_DOCPROBE=m CONFIG_MTD_DOCECC=m CONFIG_MTD_DOCPROBE_ADVANCED=y CONFIG_MTD_DOCPROBE_ADDRESS=0x0000 CONFIG_MTD_DOCPROBE_HIGH=y CONFIG_MTD_DOCPROBE_55AA=y # # NAND Flash Device Drivers # CONFIG_MTD_NAND=m CONFIG_MTD_NAND_VERIFY_WRITE=y CONFIG_MTD_NAND_IDS=m CONFIG_MTD_NAND_DISKONCHIP=m CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED=y CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0 CONFIG_MTD_NAND_DISKONCHIP_PROBE_HIGH=y CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE=y # # Parallel port support # CONFIG_PARPORT=m CONFIG_PARPORT_PC=m CONFIG_PARPORT_PC_CML1=m CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_PC_FIFO=y CONFIG_PARPORT_PC_SUPERIO=y CONFIG_PARPORT_PC_PCMCIA=m CONFIG_PARPORT_OTHER=y CONFIG_PARPORT_1284=y # # Plug and Play support # # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_CRYPTOLOOP=m # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_SX8 is not set # CONFIG_BLK_DEV_UB is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=128000 CONFIG_BLK_DEV_INITRD=y CONFIG_LBD=y # # ATA/ATAPI/MFM/RLL support # CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECS=m CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDETAPE=m CONFIG_BLK_DEV_IDEFLOPPY=m CONFIG_BLK_DEV_IDESCSI=m # CONFIG_IDE_TASK_IOCTL is not set # CONFIG_IDE_TASKFILE_IO is not set # # IDE chipset support/bugfixes # CONFIG_IDE_GENERIC=y # CONFIG_BLK_DEV_CMD640 is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y CONFIG_BLK_DEV_OFFBOARD=y CONFIG_BLK_DEV_GENERIC=y # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_RZ1000 is not set CONFIG_BLK_DEV_IDEDMA_PCI=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set CONFIG_BLK_DEV_ADMA=y # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set CONFIG_BLK_DEV_AMD74XX=y # CONFIG_BLK_DEV_ATIIXP is not set # CONFIG_BLK_DEV_CMD64X is not set # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_CS5530 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set # CONFIG_BLK_DEV_PIIX is not set # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set # CONFIG_BLK_DEV_SIS5513 is not set # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set # CONFIG_BLK_DEV_VIA82CXXX is not set # CONFIG_IDE_ARM is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_IVB is not set CONFIG_IDEDMA_AUTO=y # CONFIG_BLK_DEV_HD is not set # # SCSI device support # CONFIG_SCSI=m CONFIG_SCSI_PROC_FS=y # # SCSI support type (disk, tape, CD-ROM) # CONFIG_BLK_DEV_SD=m CONFIG_CHR_DEV_ST=m CONFIG_CHR_DEV_OSST=m CONFIG_BLK_DEV_SR=m # CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=m # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # CONFIG_SCSI_MULTI_LUN=y CONFIG_SCSI_CONSTANTS=y CONFIG_SCSI_LOGGING=y # # SCSI Transport Attributes # CONFIG_SCSI_SPI_ATTRS=m CONFIG_SCSI_FC_ATTRS=m # # SCSI low-level drivers # # CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_AACRAID is not set # CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_PPA is not set # CONFIG_SCSI_IMM is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=m # CONFIG_SCSI_QLA21XX is not set # CONFIG_SCSI_QLA22XX is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6322 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set CONFIG_SCSI_DEBUG=m # # PCMCIA SCSI adapter support # CONFIG_PCMCIA_FDOMAIN=m CONFIG_PCMCIA_QLOGIC=m CONFIG_PCMCIA_SYM53C500=m # # Multi-device support (RAID and LVM) # CONFIG_MD=y # CONFIG_BLK_DEV_MD is not set CONFIG_BLK_DEV_DM=m CONFIG_DM_CRYPT=m CONFIG_DM_SNAPSHOT=m CONFIG_DM_MIRROR=m CONFIG_DM_ZERO=m # # Fusion MPT device support # # CONFIG_FUSION is not set # # IEEE 1394 (FireWire) support # CONFIG_IEEE1394=m # # Subsystem Options # # CONFIG_IEEE1394_VERBOSEDEBUG is not set CONFIG_IEEE1394_OUI_DB=y CONFIG_IEEE1394_EXTRA_CONFIG_ROMS=y CONFIG_IEEE1394_CONFIG_ROM_IP1394=y # # Device Drivers # CONFIG_IEEE1394_PCILYNX=m CONFIG_IEEE1394_OHCI1394=m # # Protocol Drivers # CONFIG_IEEE1394_VIDEO1394=m CONFIG_IEEE1394_SBP2=m CONFIG_IEEE1394_SBP2_PHYS_DMA=y CONFIG_IEEE1394_ETH1394=m CONFIG_IEEE1394_DV1394=m CONFIG_IEEE1394_RAWIO=m CONFIG_IEEE1394_CMP=m CONFIG_IEEE1394_AMDTP=m # # I2O device support # # CONFIG_I2O is not set # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=m CONFIG_PACKET_MMAP=y CONFIG_NETLINK_DEV=m CONFIG_UNIX=y CONFIG_NET_KEY=m CONFIG_INET=y CONFIG_IP_MULTICAST=y CONFIG_IP_ADVANCED_ROUTER=y CONFIG_IP_MULTIPLE_TABLES=y CONFIG_IP_ROUTE_FWMARK=y CONFIG_IP_ROUTE_MULTIPATH=y CONFIG_IP_ROUTE_TOS=y CONFIG_IP_ROUTE_VERBOSE=y CONFIG_IP_PNP=y CONFIG_IP_PNP_DHCP=y CONFIG_IP_PNP_BOOTP=y CONFIG_IP_PNP_RARP=y CONFIG_NET_IPIP=m CONFIG_NET_IPGRE=m CONFIG_NET_IPGRE_BROADCAST=y CONFIG_IP_MROUTE=y CONFIG_IP_PIMSM_V1=y CONFIG_IP_PIMSM_V2=y # CONFIG_ARPD is not set CONFIG_SYN_COOKIES=y CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m CONFIG_INET_TUNNEL=m # # IP: Virtual Server Configuration # CONFIG_IP_VS=m # CONFIG_IP_VS_DEBUG is not set CONFIG_IP_VS_TAB_BITS=12 # # IPVS transport protocol load balancing support # CONFIG_IP_VS_PROTO_TCP=y CONFIG_IP_VS_PROTO_UDP=y CONFIG_IP_VS_PROTO_ESP=y CONFIG_IP_VS_PROTO_AH=y # # IPVS scheduler # CONFIG_IP_VS_RR=m CONFIG_IP_VS_WRR=m CONFIG_IP_VS_LC=m CONFIG_IP_VS_WLC=m CONFIG_IP_VS_LBLC=m CONFIG_IP_VS_LBLCR=m CONFIG_IP_VS_DH=m CONFIG_IP_VS_SH=m CONFIG_IP_VS_SED=m CONFIG_IP_VS_NQ=m # # IPVS application helper # CONFIG_IP_VS_FTP=m CONFIG_IPV6=m CONFIG_IPV6_PRIVACY=y CONFIG_INET6_AH=m CONFIG_INET6_ESP=m CONFIG_INET6_IPCOMP=m CONFIG_INET6_TUNNEL=m CONFIG_IPV6_TUNNEL=m CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set CONFIG_BRIDGE_NETFILTER=y # # IP: Netfilter Configuration # CONFIG_IP_NF_CONNTRACK=m # CONFIG_IP_NF_CT_ACCT is not set # CONFIG_IP_NF_CT_PROTO_SCTP is not set CONFIG_IP_NF_FTP=m CONFIG_IP_NF_IRC=m CONFIG_IP_NF_TFTP=m CONFIG_IP_NF_AMANDA=m CONFIG_IP_NF_QUEUE=m CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_LIMIT=m CONFIG_IP_NF_MATCH_IPRANGE=m CONFIG_IP_NF_MATCH_MAC=m CONFIG_IP_NF_MATCH_PKTTYPE=m CONFIG_IP_NF_MATCH_MARK=m CONFIG_IP_NF_MATCH_MULTIPORT=m CONFIG_IP_NF_MATCH_TOS=m CONFIG_IP_NF_MATCH_RECENT=m CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_DSCP=m CONFIG_IP_NF_MATCH_AH_ESP=m CONFIG_IP_NF_MATCH_LENGTH=m CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_MATCH_TCPMSS=m CONFIG_IP_NF_MATCH_HELPER=m CONFIG_IP_NF_MATCH_STATE=m CONFIG_IP_NF_MATCH_CONNTRACK=m CONFIG_IP_NF_MATCH_OWNER=m CONFIG_IP_NF_MATCH_PHYSDEV=m # CONFIG_IP_NF_MATCH_ADDRTYPE is not set # CONFIG_IP_NF_MATCH_REALM is not set # CONFIG_IP_NF_MATCH_SCTP is not set CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_LOG=m CONFIG_IP_NF_TARGET_ULOG=m CONFIG_IP_NF_TARGET_TCPMSS=m CONFIG_IP_NF_NAT=m CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_REDIRECT=m CONFIG_IP_NF_TARGET_NETMAP=m CONFIG_IP_NF_TARGET_SAME=m # CONFIG_IP_NF_NAT_LOCAL is not set CONFIG_IP_NF_NAT_SNMP_BASIC=m CONFIG_IP_NF_NAT_IRC=m CONFIG_IP_NF_NAT_FTP=m CONFIG_IP_NF_NAT_TFTP=m CONFIG_IP_NF_NAT_AMANDA=m CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_TOS=m CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_DSCP=m CONFIG_IP_NF_TARGET_MARK=m CONFIG_IP_NF_TARGET_CLASSIFY=m # CONFIG_IP_NF_RAW is not set CONFIG_IP_NF_ARPTABLES=m CONFIG_IP_NF_ARPFILTER=m CONFIG_IP_NF_ARP_MANGLE=m CONFIG_IP_NF_COMPAT_IPCHAINS=m CONFIG_IP_NF_COMPAT_IPFWADM=m # # IPv6: Netfilter Configuration # CONFIG_IP6_NF_QUEUE=m CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_LIMIT=m CONFIG_IP6_NF_MATCH_MAC=m CONFIG_IP6_NF_MATCH_RT=m CONFIG_IP6_NF_MATCH_OPTS=m CONFIG_IP6_NF_MATCH_FRAG=m CONFIG_IP6_NF_MATCH_HL=m CONFIG_IP6_NF_MATCH_MULTIPORT=m CONFIG_IP6_NF_MATCH_OWNER=m CONFIG_IP6_NF_MATCH_MARK=m CONFIG_IP6_NF_MATCH_IPV6HEADER=m CONFIG_IP6_NF_MATCH_AHESP=m CONFIG_IP6_NF_MATCH_LENGTH=m CONFIG_IP6_NF_MATCH_EUI64=m CONFIG_IP6_NF_FILTER=m CONFIG_IP6_NF_TARGET_LOG=m CONFIG_IP6_NF_MANGLE=m CONFIG_IP6_NF_TARGET_MARK=m # CONFIG_IP6_NF_RAW is not set # # DECnet: Netfilter Configuration # # CONFIG_DECNET_NF_GRABULATOR is not set # # Bridge: Netfilter Configuration # CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m CONFIG_BRIDGE_EBT_T_NAT=m CONFIG_BRIDGE_EBT_802_3=m CONFIG_BRIDGE_EBT_AMONG=m CONFIG_BRIDGE_EBT_ARP=m CONFIG_BRIDGE_EBT_IP=m CONFIG_BRIDGE_EBT_LIMIT=m CONFIG_BRIDGE_EBT_MARK=m CONFIG_BRIDGE_EBT_PKTTYPE=m CONFIG_BRIDGE_EBT_STP=m CONFIG_BRIDGE_EBT_VLAN=m CONFIG_BRIDGE_EBT_ARPREPLY=m CONFIG_BRIDGE_EBT_DNAT=m CONFIG_BRIDGE_EBT_MARK_T=m CONFIG_BRIDGE_EBT_REDIRECT=m CONFIG_BRIDGE_EBT_SNAT=m CONFIG_BRIDGE_EBT_LOG=m CONFIG_XFRM=y CONFIG_XFRM_USER=m # # SCTP Configuration (EXPERIMENTAL) # CONFIG_IP_SCTP=m # CONFIG_SCTP_DBG_MSG is not set # CONFIG_SCTP_DBG_OBJCNT is not set # CONFIG_SCTP_HMAC_NONE is not set # CONFIG_SCTP_HMAC_SHA1 is not set CONFIG_SCTP_HMAC_MD5=y # CONFIG_ATM is not set CONFIG_BRIDGE=m CONFIG_VLAN_8021Q=m CONFIG_DECNET=m CONFIG_DECNET_SIOCGIFCONF=y # CONFIG_DECNET_ROUTER is not set CONFIG_LLC=m CONFIG_LLC2=m CONFIG_IPX=m CONFIG_IPX_INTERN=y CONFIG_ATALK=m CONFIG_DEV_APPLETALK=y CONFIG_IPDDP=m CONFIG_IPDDP_ENCAP=y CONFIG_IPDDP_DECAP=y CONFIG_X25=m CONFIG_LAPB=m # CONFIG_NET_DIVERT is not set CONFIG_ECONET=m # CONFIG_ECONET_AUNUDP is not set # CONFIG_ECONET_NATIVE is not set CONFIG_WAN_ROUTER=m # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # CONFIG_NET_SCHED=y CONFIG_NET_SCH_CLK_JIFFIES=y # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set # CONFIG_NET_SCH_CLK_CPU is not set CONFIG_NET_SCH_CBQ=m CONFIG_NET_SCH_HTB=m CONFIG_NET_SCH_HFSC=m CONFIG_NET_SCH_PRIO=m CONFIG_NET_SCH_RED=m CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m # CONFIG_NET_SCH_NETEM is not set CONFIG_NET_SCH_INGRESS=m CONFIG_NET_QOS=y CONFIG_NET_ESTIMATOR=y CONFIG_NET_CLS=y CONFIG_NET_CLS_TCINDEX=m CONFIG_NET_CLS_ROUTE4=m CONFIG_NET_CLS_ROUTE=y CONFIG_NET_CLS_FW=m CONFIG_NET_CLS_U32=m # CONFIG_CLS_U32_PERF is not set # CONFIG_NET_CLS_IND is not set CONFIG_NET_CLS_RSVP=m CONFIG_NET_CLS_RSVP6=m # CONFIG_NET_CLS_ACT is not set CONFIG_NET_CLS_POLICE=y # # Network testing # CONFIG_NET_PKTGEN=m CONFIG_NETPOLL=y CONFIG_NETPOLL_RX=y CONFIG_NETPOLL_TRAP=y CONFIG_NET_POLL_CONTROLLER=y # CONFIG_HAMRADIO is not set CONFIG_IRDA=m # # IrDA protocols # CONFIG_IRLAN=m CONFIG_IRNET=m CONFIG_IRCOMM=m CONFIG_IRDA_ULTRA=y # # IrDA options # CONFIG_IRDA_CACHE_LAST_LSAP=y CONFIG_IRDA_FAST_RR=y CONFIG_IRDA_DEBUG=y # # Infrared-port device drivers # # # SIR device drivers # CONFIG_IRTTY_SIR=m # # Dongle support # CONFIG_DONGLE=y CONFIG_ESI_DONGLE=m CONFIG_ACTISYS_DONGLE=m CONFIG_TEKRAM_DONGLE=m CONFIG_LITELINK_DONGLE=m CONFIG_MA600_DONGLE=m CONFIG_GIRBIL_DONGLE=m CONFIG_MCP2120_DONGLE=m CONFIG_OLD_BELKIN_DONGLE=m CONFIG_ACT200L_DONGLE=m # # Old SIR device drivers # # CONFIG_IRPORT_SIR is not set # # Old Serial dongle support # # # FIR device drivers # CONFIG_USB_IRDA=m CONFIG_SIGMATEL_FIR=m CONFIG_VLSI_FIR=m CONFIG_BT=m CONFIG_BT_L2CAP=m CONFIG_BT_SCO=m CONFIG_BT_RFCOMM=m CONFIG_BT_RFCOMM_TTY=y CONFIG_BT_BNEP=m CONFIG_BT_BNEP_MC_FILTER=y CONFIG_BT_BNEP_PROTO_FILTER=y CONFIG_BT_HIDP=m # # Bluetooth device drivers # CONFIG_BT_HCIUSB=m CONFIG_BT_HCIUSB_SCO=y CONFIG_BT_HCIUART=m CONFIG_BT_HCIUART_H4=y CONFIG_BT_HCIUART_BCSP=y CONFIG_BT_HCIUART_BCSP_TXCRC=y CONFIG_BT_HCIBCM203X=m CONFIG_BT_HCIBFUSB=m CONFIG_BT_HCIDTL1=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBLUECARD=m CONFIG_BT_HCIBTUART=m CONFIG_BT_HCIVHCI=m CONFIG_NETDEVICES=y CONFIG_DUMMY=m CONFIG_BONDING=m CONFIG_EQUALIZER=m CONFIG_TUN=m CONFIG_ETHERTAP=m # # ARCnet devices # # CONFIG_ARCNET is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y CONFIG_MII=m # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_HP100 is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_DGRS is not set # CONFIG_EEPRO100 is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set # CONFIG_8139CP is not set # CONFIG_8139TOO is not set # CONFIG_SIS900 is not set # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_VIA_RHINE is not set # CONFIG_VIA_VELOCITY is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set # CONFIG_E1000 is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set CONFIG_SK98LIN=m # CONFIG_TIGON3 is not set # # Ethernet (10000 Mbit) # # CONFIG_IXGB is not set # CONFIG_S2IO is not set # # Token Ring devices # # CONFIG_TR is not set # # Wireless LAN (non-hamradio) # CONFIG_NET_RADIO=y # # Obsolete Wireless cards support (pre-802.11) # CONFIG_STRIP=m CONFIG_PCMCIA_WAVELAN=m CONFIG_PCMCIA_NETWAVE=m # # Wireless 802.11 Frequency Hopping cards support # CONFIG_PCMCIA_RAYCS=m # # Wireless 802.11b ISA/PCI cards support # CONFIG_HERMES=m CONFIG_PLX_HERMES=m CONFIG_TMD_HERMES=m CONFIG_PCI_HERMES=m CONFIG_ATMEL=m CONFIG_PCI_ATMEL=m # # Wireless 802.11b Pcmcia/Cardbus cards support # CONFIG_PCMCIA_HERMES=m CONFIG_AIRO_CS=m CONFIG_PCMCIA_ATMEL=m CONFIG_PCMCIA_WL3501=m # # Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support # CONFIG_PRISM54=m CONFIG_NET_WIRELESS=y # # PCMCIA network device support # CONFIG_NET_PCMCIA=y CONFIG_PCMCIA_3C589=m CONFIG_PCMCIA_3C574=m CONFIG_PCMCIA_FMVJ18X=m CONFIG_PCMCIA_PCNET=m CONFIG_PCMCIA_NMCLAN=m CONFIG_PCMCIA_SMC91C92=m CONFIG_PCMCIA_XIRC2PS=m CONFIG_PCMCIA_AXNET=m # # Wan interfaces # # CONFIG_WAN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set # CONFIG_PLIP is not set CONFIG_PPP=m CONFIG_PPP_MULTILINK=y CONFIG_PPP_FILTER=y CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOMP=m CONFIG_PPPOE=m CONFIG_SLIP=m CONFIG_SLIP_COMPRESSED=y CONFIG_SLIP_SMART=y CONFIG_SLIP_MODE_SLIP6=y # CONFIG_NET_FC is not set CONFIG_SHAPER=m CONFIG_NETCONSOLE=m # # ISDN subsystem # # CONFIG_ISDN is not set # # Telephony Support # # CONFIG_PHONE is not set # # 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_TSDEV=m CONFIG_INPUT_TSDEV_SCREEN_X=240 CONFIG_INPUT_TSDEV_SCREEN_Y=320 CONFIG_INPUT_EVDEV=m # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # CONFIG_GAMEPORT=m CONFIG_SOUND_GAMEPORT=m CONFIG_GAMEPORT_NS558=m CONFIG_GAMEPORT_L4=m CONFIG_GAMEPORT_EMU10K1=m CONFIG_GAMEPORT_VORTEX=m CONFIG_GAMEPORT_FM801=m CONFIG_GAMEPORT_CS461x=m CONFIG_SERIO=y CONFIG_SERIO_I8042=y CONFIG_SERIO_SERPORT=m CONFIG_SERIO_CT82C710=m CONFIG_SERIO_PARKBD=m CONFIG_SERIO_PCIPS2=m # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y CONFIG_KEYBOARD_SUNKBD=m # CONFIG_KEYBOARD_LKKBD is not set CONFIG_KEYBOARD_XTKBD=m CONFIG_KEYBOARD_NEWTON=m CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=y CONFIG_MOUSE_SERIAL=m # CONFIG_MOUSE_VSXXXAA is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_MISC=y CONFIG_INPUT_PCSPKR=m CONFIG_INPUT_UINPUT=m # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y CONFIG_SERIAL_NONSTANDARD=y # CONFIG_COMPUTONE is not set # CONFIG_ROCKETPORT is not set # CONFIG_CYCLADES is not set # CONFIG_DIGIEPCA is not set # CONFIG_DIGI is not set # CONFIG_MOXA_INTELLIO is not set # CONFIG_MOXA_SMARTIO is not set # CONFIG_ISI is not set # CONFIG_SYNCLINK is not set # CONFIG_SYNCLINKMP is not set CONFIG_N_HDLC=m # CONFIG_RISCOM8 is not set # CONFIG_SPECIALIX is not set # CONFIG_SX is not set # CONFIG_RIO is not set # CONFIG_STALDRV is not set # # Serial drivers # CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_CS=m CONFIG_SERIAL_8250_ACPI=y CONFIG_SERIAL_8250_NR_UARTS=4 CONFIG_SERIAL_8250_EXTENDED=y # CONFIG_SERIAL_8250_MANY_PORTS is not set CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_8250_DETECT_IRQ is not set # CONFIG_SERIAL_8250_MULTIPORT is not set # CONFIG_SERIAL_8250_RSA is not set # # Non-8250 serial port support # CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 CONFIG_PRINTER=m # CONFIG_LP_CONSOLE is not set CONFIG_PPDEV=m CONFIG_TIPAR=m # # IPMI # CONFIG_IPMI_HANDLER=m CONFIG_IPMI_PANIC_EVENT=y CONFIG_IPMI_PANIC_STRING=y CONFIG_IPMI_DEVICE_INTERFACE=m CONFIG_IPMI_SI=m CONFIG_IPMI_WATCHDOG=m # CONFIG_IPMI_POWEROFF is not set # # Watchdog Cards # # CONFIG_WATCHDOG is not set CONFIG_HW_RANDOM=m CONFIG_NVRAM=m CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set CONFIG_AGP=y CONFIG_AGP_AMD64=y # CONFIG_AGP_INTEL_MCH is not set # CONFIG_DRM is not set # # PCMCIA character devices # CONFIG_SYNCLINK_CS=m # CONFIG_MWAVE is not set CONFIG_RAW_DRIVER=m CONFIG_HPET=y # CONFIG_HPET_RTC_IRQ is not set CONFIG_HPET_MMAP=y CONFIG_MAX_RAW_DEVS=4096 CONFIG_HANGCHECK_TIMER=m # # I2C support # CONFIG_I2C=m CONFIG_I2C_CHARDEV=m # # I2C Algorithms # CONFIG_I2C_ALGOBIT=m CONFIG_I2C_ALGOPCF=m # CONFIG_I2C_ALGOPCA is not set # # I2C Hardware Bus support # CONFIG_I2C_ALI1535=m # CONFIG_I2C_ALI1563 is not set CONFIG_I2C_ALI15X3=m CONFIG_I2C_AMD756=m CONFIG_I2C_AMD8111=m CONFIG_I2C_I801=m CONFIG_I2C_I810=m CONFIG_I2C_ISA=m CONFIG_I2C_NFORCE2=m CONFIG_I2C_PARPORT=m CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PROSAVAGE=m CONFIG_I2C_SAVAGE4=m CONFIG_SCx200_ACB=m CONFIG_I2C_SIS5595=m CONFIG_I2C_SIS630=m CONFIG_I2C_SIS96X=m CONFIG_I2C_VIA=m CONFIG_I2C_VIAPRO=m CONFIG_I2C_VOODOO3=m # CONFIG_I2C_PCA_ISA is not set # # Hardware Sensors Chip support # CONFIG_I2C_SENSOR=m CONFIG_SENSORS_ADM1021=m # CONFIG_SENSORS_ADM1025 is not set # CONFIG_SENSORS_ADM1031 is not set CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_FSCHER=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_LM75=m # CONFIG_SENSORS_LM77 is not set CONFIG_SENSORS_LM78=m CONFIG_SENSORS_LM80=m CONFIG_SENSORS_LM83=m CONFIG_SENSORS_LM85=m CONFIG_SENSORS_LM90=m # CONFIG_SENSORS_MAX1619 is not set # CONFIG_SENSORS_SMSC47M1 is not set CONFIG_SENSORS_VIA686A=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83627HF=m # # Other I2C Chip support # CONFIG_SENSORS_EEPROM=m # CONFIG_SENSORS_PCF8574 is not set # CONFIG_SENSORS_PCF8591 is not set # CONFIG_SENSORS_RTC8564 is not set CONFIG_I2C_DEBUG_CORE=y CONFIG_I2C_DEBUG_ALGO=y CONFIG_I2C_DEBUG_BUS=y CONFIG_I2C_DEBUG_CHIP=y # # Dallas's 1-wire bus # # CONFIG_W1 is not set # # Misc devices # # CONFIG_IBM_ASM is not set # # Multimedia devices # CONFIG_VIDEO_DEV=m # # Video For Linux # # # Video Adapters # CONFIG_VIDEO_BT848=m CONFIG_VIDEO_BWQCAM=m CONFIG_VIDEO_CQCAM=m CONFIG_VIDEO_W9966=m CONFIG_VIDEO_CPIA=m CONFIG_VIDEO_CPIA_PP=m CONFIG_VIDEO_CPIA_USB=m CONFIG_VIDEO_SAA5246A=m CONFIG_VIDEO_SAA5249=m CONFIG_TUNER_3036=m CONFIG_VIDEO_STRADIS=m # CONFIG_VIDEO_ZORAN is not set # CONFIG_VIDEO_SAA7134 is not set CONFIG_VIDEO_MXB=m CONFIG_VIDEO_DPC=m CONFIG_VIDEO_HEXIUM_ORION=m CONFIG_VIDEO_HEXIUM_GEMINI=m CONFIG_VIDEO_CX88=m # CONFIG_VIDEO_OVCAMCHIP is not set # # Radio Adapters # CONFIG_RADIO_GEMTEK_PCI=m CONFIG_RADIO_MAXIRADIO=m CONFIG_RADIO_MAESTRO=m # # Digital Video Broadcasting Devices # CONFIG_DVB=y CONFIG_DVB_CORE=m # # Supported Frontend Modules # CONFIG_DVB_TWINHAN_DST=m CONFIG_DVB_STV0299=m CONFIG_DVB_SP887X=m CONFIG_DVB_SP887X_FIRMWARE_FILE="/etc/dvb/sc_main.mc" CONFIG_DVB_ALPS_TDLB7=m CONFIG_DVB_ALPS_TDMB7=m CONFIG_DVB_ATMEL_AT76C651=m CONFIG_DVB_CX24110=m CONFIG_DVB_GRUNDIG_29504_491=m CONFIG_DVB_GRUNDIG_29504_401=m CONFIG_DVB_MT312=m CONFIG_DVB_VES1820=m CONFIG_DVB_VES1X93=m CONFIG_DVB_TDA1004X=m CONFIG_DVB_TDA1004X_FIRMWARE_FILE="/usr/lib/hotplug/firmware/tda1004x.bin" CONFIG_DVB_NXT6000=m # # Supported SAA7146 based PCI Adapters # CONFIG_DVB_AV7110=m # CONFIG_DVB_AV7110_OSD is not set CONFIG_DVB_BUDGET=m CONFIG_DVB_BUDGET_CI=m CONFIG_DVB_BUDGET_AV=m CONFIG_DVB_BUDGET_PATCH=m # # Supported USB Adapters # CONFIG_DVB_TTUSB_BUDGET=m CONFIG_DVB_TTUSB_DEC=m # # Supported FlexCopII (B2C2) Adapters # CONFIG_DVB_B2C2_SKYSTAR=m # # Supported BT878 Adapters # CONFIG_DVB_BT8XX=m CONFIG_VIDEO_SAA7146=m CONFIG_VIDEO_SAA7146_VV=m CONFIG_VIDEO_VIDEOBUF=m CONFIG_VIDEO_TUNER=m CONFIG_VIDEO_BUF=m CONFIG_VIDEO_BTCX=m CONFIG_VIDEO_IR=m # # Graphics support # CONFIG_FB=y CONFIG_FB_MODE_HELPERS=y # CONFIG_FB_CIRRUS is not set # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set # CONFIG_FB_ASILIANT is not set # CONFIG_FB_IMSTT is not set # CONFIG_FB_VGA16 is not set CONFIG_FB_VESA=y CONFIG_VIDEO_SELECT=y # CONFIG_FB_HGA is not set # CONFIG_FB_RIVA is not set # CONFIG_FB_MATROX is not set # CONFIG_FB_RADEON_OLD is not set # CONFIG_FB_RADEON is not set # CONFIG_FB_ATY128 is not set # CONFIG_FB_ATY is not set # CONFIG_FB_SIS is not set # CONFIG_FB_NEOMAGIC is not set # CONFIG_FB_KYRO is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_TRIDENT is not set CONFIG_FB_VIRTUAL=m # # Console display driver support # CONFIG_VGA_CONSOLE=y CONFIG_DUMMY_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y # CONFIG_FONT_6x11 is not set # CONFIG_FONT_PEARL_8x8 is not set # CONFIG_FONT_ACORN_8x8 is not set # CONFIG_FONT_MINI_4x6 is not set # CONFIG_FONT_SUN8x16 is not set # CONFIG_FONT_SUN12x22 is not set # # Logo configuration # CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_VGA16 is not set CONFIG_LOGO_LINUX_CLUT224=y # # Sound # CONFIG_SOUND=m # # Advanced Linux Sound Architecture # CONFIG_SND=m CONFIG_SND_TIMER=m CONFIG_SND_PCM=m CONFIG_SND_HWDEP=m CONFIG_SND_RAWMIDI=m CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQ_DUMMY=m CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=m CONFIG_SND_PCM_OSS=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_BIT32_EMUL=m CONFIG_SND_RTCTIMER=m CONFIG_SND_VERBOSE_PRINTK=y CONFIG_SND_DEBUG=y CONFIG_SND_DEBUG_MEMORY=y CONFIG_SND_DEBUG_DETECT=y # # Generic devices # CONFIG_SND_MPU401_UART=m CONFIG_SND_DUMMY=m CONFIG_SND_VIRMIDI=m CONFIG_SND_MTPAV=m CONFIG_SND_SERIAL_U16550=m CONFIG_SND_MPU401=m # # PCI devices # CONFIG_SND_AC97_CODEC=m # CONFIG_SND_ALI5451 is not set # CONFIG_SND_ATIIXP is not set # CONFIG_SND_ATIIXP_MODEM is not set # CONFIG_SND_AU8810 is not set # CONFIG_SND_AU8820 is not set # CONFIG_SND_AU8830 is not set # CONFIG_SND_AZT3328 is not set # CONFIG_SND_BT87X is not set # CONFIG_SND_CS46XX is not set # CONFIG_SND_CS4281 is not set # CONFIG_SND_EMU10K1 is not set # CONFIG_SND_KORG1212 is not set # CONFIG_SND_MIXART is not set # CONFIG_SND_NM256 is not set # CONFIG_SND_RME32 is not set # CONFIG_SND_RME96 is not set # CONFIG_SND_RME9652 is not set # CONFIG_SND_HDSP is not set # CONFIG_SND_TRIDENT is not set # CONFIG_SND_YMFPCI is not set # CONFIG_SND_ALS4000 is not set # CONFIG_SND_CMIPCI is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set # CONFIG_SND_ES1938 is not set # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set # CONFIG_SND_FM801 is not set # CONFIG_SND_ICE1712 is not set # CONFIG_SND_ICE1724 is not set CONFIG_SND_INTEL8X0=m CONFIG_SND_INTEL8X0M=m # CONFIG_SND_SONICVIBES is not set # CONFIG_SND_VIA82XX is not set # CONFIG_SND_VX222 is not set # # ALSA USB devices # CONFIG_SND_USB_AUDIO=m # CONFIG_SND_USB_USX2Y is not set # # PCMCIA devices # # # Open Sound System # # CONFIG_SOUND_PRIME is not set # # USB support # CONFIG_USB=m # CONFIG_USB_DEBUG is not set # # Miscellaneous USB options # CONFIG_USB_DEVICEFS=y CONFIG_USB_BANDWIDTH=y CONFIG_USB_DYNAMIC_MINORS=y # CONFIG_USB_SUSPEND is not set # CONFIG_USB_OTG is not set # # USB Host Controller Drivers # CONFIG_USB_EHCI_HCD=m CONFIG_USB_EHCI_SPLIT_ISO=y # CONFIG_USB_EHCI_ROOT_HUB_TT is not set CONFIG_USB_OHCI_HCD=m CONFIG_USB_UHCI_HCD=m # # USB Device Class drivers # CONFIG_USB_AUDIO=m # # USB Bluetooth TTY can only be used with disabled Bluetooth subsystem # CONFIG_USB_MIDI=m CONFIG_USB_ACM=m CONFIG_USB_PRINTER=m CONFIG_USB_STORAGE=m # CONFIG_USB_STORAGE_DEBUG is not set CONFIG_USB_STORAGE_RW_DETECT=y CONFIG_USB_STORAGE_DATAFAB=y CONFIG_USB_STORAGE_FREECOM=y CONFIG_USB_STORAGE_ISD200=y CONFIG_USB_STORAGE_DPCM=y CONFIG_USB_STORAGE_HP8200e=y CONFIG_USB_STORAGE_SDDR09=y CONFIG_USB_STORAGE_SDDR55=y CONFIG_USB_STORAGE_JUMPSHOT=y # # USB Human Interface Devices (HID) # CONFIG_USB_HID=m CONFIG_USB_HIDINPUT=y CONFIG_HID_FF=y CONFIG_HID_PID=y CONFIG_LOGITECH_FF=y CONFIG_THRUSTMASTER_FF=y CONFIG_USB_HIDDEV=y # # USB HID Boot Protocol drivers # # CONFIG_USB_KBD is not set # CONFIG_USB_MOUSE is not set CONFIG_USB_AIPTEK=m CONFIG_USB_WACOM=m CONFIG_USB_KBTAB=m CONFIG_USB_POWERMATE=m CONFIG_USB_MTOUCH=m # CONFIG_USB_EGALAX is not set CONFIG_USB_XPAD=m CONFIG_USB_ATI_REMOTE=m # # USB Imaging devices # CONFIG_USB_MDC800=m CONFIG_USB_MICROTEK=m CONFIG_USB_HPUSBSCSI=m # # USB Multimedia devices # CONFIG_USB_DABUSB=m CONFIG_USB_VICAM=m CONFIG_USB_DSBR=m CONFIG_USB_IBMCAM=m CONFIG_USB_KONICAWC=m CONFIG_USB_OV511=m CONFIG_USB_SE401=m CONFIG_USB_SN9C102=m CONFIG_USB_STV680=m # # USB Network adaptors # CONFIG_USB_CATC=m CONFIG_USB_KAWETH=m CONFIG_USB_PEGASUS=m CONFIG_USB_RTL8150=m CONFIG_USB_USBNET=m # # USB Host-to-Host Cables # CONFIG_USB_ALI_M5632=y CONFIG_USB_AN2720=y CONFIG_USB_BELKIN=y CONFIG_USB_GENESYS=y CONFIG_USB_NET1080=y CONFIG_USB_PL2301=y # # Intelligent USB Devices/Gadgets # CONFIG_USB_ARMLINUX=y CONFIG_USB_EPSON2888=y CONFIG_USB_ZAURUS=y CONFIG_USB_CDCETHER=y # # USB Network Adapters # CONFIG_USB_AX8817X=y # # USB port drivers # CONFIG_USB_USS720=m # # USB Serial Converter support # CONFIG_USB_SERIAL=m CONFIG_USB_SERIAL_GENERIC=y CONFIG_USB_SERIAL_BELKIN=m # CONFIG_USB_SERIAL_WHITEHEAT is not set CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m CONFIG_USB_SERIAL_VISOR=m CONFIG_USB_SERIAL_IPAQ=m CONFIG_USB_SERIAL_IR=m CONFIG_USB_SERIAL_EDGEPORT=m CONFIG_USB_SERIAL_EDGEPORT_TI=m CONFIG_USB_SERIAL_KEYSPAN_PDA=m CONFIG_USB_SERIAL_KEYSPAN=m CONFIG_USB_SERIAL_KEYSPAN_MPR=y CONFIG_USB_SERIAL_KEYSPAN_USA28=y CONFIG_USB_SERIAL_KEYSPAN_USA28X=y CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y CONFIG_USB_SERIAL_KEYSPAN_USA19=y CONFIG_USB_SERIAL_KEYSPAN_USA18X=y CONFIG_USB_SERIAL_KEYSPAN_USA19W=y CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y CONFIG_USB_SERIAL_KEYSPAN_USA49W=y CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y CONFIG_USB_SERIAL_KLSI=m CONFIG_USB_SERIAL_KOBIL_SCT=m CONFIG_USB_SERIAL_MCT_U232=m CONFIG_USB_SERIAL_PL2303=m CONFIG_USB_SERIAL_SAFE=m CONFIG_USB_SERIAL_SAFE_PADDED=y CONFIG_USB_SERIAL_CYBERJACK=m CONFIG_USB_SERIAL_XIRCOM=m CONFIG_USB_SERIAL_OMNINET=m CONFIG_USB_EZUSB=y # # USB Miscellaneous drivers # CONFIG_USB_EMI62=m CONFIG_USB_EMI26=m CONFIG_USB_TIGL=m CONFIG_USB_AUERSWALD=m CONFIG_USB_RIO500=m CONFIG_USB_LEGOTOWER=m CONFIG_USB_LCD=m CONFIG_USB_LED=m # CONFIG_USB_CYTHERM is not set # CONFIG_USB_PHIDGETSERVO is not set # CONFIG_USB_TEST is not set # # USB Gadget Support # # CONFIG_USB_GADGET is not set # # Firmware Drivers # # CONFIG_EDD is not set # # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y CONFIG_EXT2_FS_POSIX_ACL=y CONFIG_EXT2_FS_SECURITY=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_JBD_DEBUG=y CONFIG_FS_MBCACHE=y CONFIG_REISERFS_FS=y # CONFIG_REISERFS_CHECK is not set CONFIG_REISERFS_PROC_INFO=y CONFIG_REISERFS_FS_XATTR=y CONFIG_REISERFS_FS_POSIX_ACL=y CONFIG_REISERFS_FS_SECURITY=y # CONFIG_JFS_FS is not set CONFIG_FS_POSIX_ACL=y # CONFIG_XFS_FS is not set # CONFIG_MINIX_FS is not set # CONFIG_ROMFS_FS is not set CONFIG_QUOTA=y CONFIG_QFMT_V1=m CONFIG_QFMT_V2=m CONFIG_QUOTACTL=y CONFIG_AUTOFS_FS=m CONFIG_AUTOFS4_FS=m # # CD-ROM/DVD Filesystems # CONFIG_ISO9660_FS=m CONFIG_JOLIET=y CONFIG_ZISOFS=y CONFIG_ZISOFS_FS=m CONFIG_UDF_FS=m CONFIG_UDF_NLS=y # # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=m CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" CONFIG_NTFS_FS=m CONFIG_NTFS_DEBUG=y CONFIG_NTFS_RW=y # # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_SYSFS=y # CONFIG_DEVFS_FS is not set CONFIG_DEVPTS_FS_XATTR=y CONFIG_DEVPTS_FS_SECURITY=y CONFIG_TMPFS=y CONFIG_HUGETLBFS=y CONFIG_HUGETLB_PAGE=y CONFIG_RAMFS=y # # Miscellaneous filesystems # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_HFSPLUS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set # CONFIG_JFFS_FS is not set # CONFIG_JFFS2_FS is not set # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # # Network File Systems # CONFIG_NFS_FS=m CONFIG_NFS_V3=y CONFIG_NFS_V4=y # CONFIG_NFS_DIRECTIO is not set CONFIG_NFSD=m CONFIG_NFSD_V3=y CONFIG_NFSD_V4=y CONFIG_NFSD_TCP=y CONFIG_LOCKD=m CONFIG_LOCKD_V4=y CONFIG_EXPORTFS=m CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_RPCSEC_GSS_KRB5=m # CONFIG_RPCSEC_GSS_SPKM3 is not set CONFIG_SMB_FS=m CONFIG_SMB_NLS_DEFAULT=y CONFIG_SMB_NLS_REMOTE="cp852" CONFIG_CIFS=m CONFIG_CIFS_STATS=y CONFIG_CIFS_XATTR=y CONFIG_CIFS_POSIX=y CONFIG_NCP_FS=m CONFIG_NCPFS_PACKET_SIGNING=y CONFIG_NCPFS_IOCTL_LOCKING=y CONFIG_NCPFS_STRONG=y CONFIG_NCPFS_NFS_NS=y CONFIG_NCPFS_OS2_NS=y CONFIG_NCPFS_SMALLDOS=y CONFIG_NCPFS_NLS=y CONFIG_NCPFS_EXTRAS=y # CONFIG_CODA_FS is not set # CONFIG_AFS_FS is not set # # Partition Types # # CONFIG_PARTITION_ADVANCED is not set CONFIG_MSDOS_PARTITION=y # # Native Language Support # CONFIG_NLS=y CONFIG_NLS_DEFAULT="iso8859-2" CONFIG_NLS_CODEPAGE_437=m CONFIG_NLS_CODEPAGE_737=m CONFIG_NLS_CODEPAGE_775=m CONFIG_NLS_CODEPAGE_850=m CONFIG_NLS_CODEPAGE_852=m CONFIG_NLS_CODEPAGE_855=m CONFIG_NLS_CODEPAGE_857=m CONFIG_NLS_CODEPAGE_860=m CONFIG_NLS_CODEPAGE_861=m CONFIG_NLS_CODEPAGE_862=m CONFIG_NLS_CODEPAGE_863=m CONFIG_NLS_CODEPAGE_864=m CONFIG_NLS_CODEPAGE_865=m CONFIG_NLS_CODEPAGE_866=m CONFIG_NLS_CODEPAGE_869=m CONFIG_NLS_CODEPAGE_936=m CONFIG_NLS_CODEPAGE_950=m CONFIG_NLS_CODEPAGE_932=m CONFIG_NLS_CODEPAGE_949=m CONFIG_NLS_CODEPAGE_874=m CONFIG_NLS_ISO8859_8=m CONFIG_NLS_CODEPAGE_1250=m CONFIG_NLS_CODEPAGE_1251=m # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_2=m CONFIG_NLS_ISO8859_3=m CONFIG_NLS_ISO8859_4=m CONFIG_NLS_ISO8859_5=m CONFIG_NLS_ISO8859_6=m CONFIG_NLS_ISO8859_7=m CONFIG_NLS_ISO8859_9=m CONFIG_NLS_ISO8859_13=m CONFIG_NLS_ISO8859_14=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m CONFIG_NLS_UTF8=m # # Profiling support # CONFIG_PROFILING=y CONFIG_OPROFILE=m # # Kernel hacking # CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SLAB is not set CONFIG_DEBUG_SPINLOCK=y # CONFIG_DEBUG_SPINLOCK_SLEEP is not set # CONFIG_DEBUG_INFO is not set # CONFIG_FRAME_POINTER is not set # CONFIG_CHECKING is not set # CONFIG_INIT_DEBUG is not set CONFIG_SCHEDSTATS=y # CONFIG_IOMMU_DEBUG is not set # # Security options # CONFIG_SECURITY=y CONFIG_SECURITY_NETWORK=y CONFIG_SECURITY_CAPABILITIES=y CONFIG_SECURITY_ROOTPLUG=m CONFIG_SECURITY_SELINUX=y CONFIG_SECURITY_SELINUX_BOOTPARAM=y CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1 CONFIG_SECURITY_SELINUX_DISABLE=y CONFIG_SECURITY_SELINUX_DEVELOP=y CONFIG_SECURITY_SELINUX_MLS=y # # Cryptographic options # CONFIG_CRYPTO=y CONFIG_CRYPTO_HMAC=y CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_MD4=m CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_SHA1=m CONFIG_CRYPTO_SHA256=m CONFIG_CRYPTO_SHA512=m # CONFIG_CRYPTO_WHIRLPOOL is not set CONFIG_CRYPTO_DES=y CONFIG_CRYPTO_BLOWFISH=m CONFIG_CRYPTO_TWOFISH=m CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_AES=m CONFIG_CRYPTO_CAST5=m CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_ARC4=m CONFIG_CRYPTO_KHAZAD=m CONFIG_CRYPTO_DEFLATE=m CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_TEST=m # # Library routines # CONFIG_CRC_CCITT=m CONFIG_CRC32=y CONFIG_LIBCRC32C=m CONFIG_ZLIB_INFLATE=m CONFIG_ZLIB_DEFLATE=m ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-06 11:48 ` Rafael J. Wysocki @ 2004-09-06 12:25 ` Alexander Nyberg 2004-09-06 12:29 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Alexander Nyberg @ 2004-09-06 12:25 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: Ingo Molnar, linux-kernel, Andi Kleen On Mon, 2004-09-06 at 13:48, Rafael J. Wysocki wrote: > On Monday 06 of September 2004 13:06, Ingo Molnar wrote: > > > > i've released the -R6 patch: > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R6 > > > > Changes in -R6: > > > > - fixed a CONFIG_SMP + CONFIG_PREEMPT bug that had the potential to > > cause spinlock related lockups. (UP kernels are unaffected.) This bug > > got introduced in -R5. > > > > 2.6.9-rc1-bk12 patching order is: > > > > http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 > > + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 > > + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 > > I did as instructed, but it didn't compile (on a UP x86-64 system). I got > this: > > CC arch/x86_64/kernel/irq.o > arch/x86_64/kernel/irq.c: In function `request_irq': > arch/x86_64/kernel/irq.c:498: warning: implicit declaration of function > `setup_irq' > CC arch/x86_64/kernel/ptrace.o > CC arch/x86_64/kernel/i8259.o > arch/x86_64/kernel/i8259.c: In function `init_IRQ': > arch/x86_64/kernel/i8259.c:570: warning: implicit declaration of function > `setup_irq' > CC arch/x86_64/kernel/ioport.o > CC arch/x86_64/kernel/ldt.o > CC arch/x86_64/kernel/setup.o > CC arch/x86_64/kernel/time.o > arch/x86_64/kernel/time.c: In function `time_init': > arch/x86_64/kernel/time.c:820: warning: implicit declaration of function > `setup_irq' > CC arch/x86_64/kernel/sys_x86_64.o > [- snip -] > C kernel/hardirq.o > kernel/hardirq.c: In function `recalculate_desc_flags': > kernel/hardirq.c:314: error: `SA_NODELAY' undeclared (first use in this > function) > kernel/hardirq.c:314: error: (Each undeclared identifier is reported only once > kernel/hardirq.c:314: error: for each function it appears in.) > kernel/hardirq.c: In function `generic_setup_irq': > kernel/hardirq.c:344: error: `SA_NODELAY' undeclared (first use in this > function) > kernel/hardirq.c: In function `threaded_read_proc': > kernel/hardirq.c:659: error: `SA_NODELAY' undeclared (first use in this > function) > kernel/hardirq.c: In function `threaded_write_proc': > kernel/hardirq.c:677: error: `SA_NODELAY' undeclared (first use in this > function) > make[1]: *** [kernel/hardirq.o] Error 1 > make: *** [kernel] Error 2 > It doesn't look like it is fully ported to x86_64 systems yet, these compile errors are easy to move away but the functionality doesn't seem to be there. Probably why Ingo hasn't added the PREEMPT_VOLUNTARY to the x86_64 Kconfig even though I saw a few bits of x86_64 code in the patch. Or am I missing something? ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-06 12:25 ` Alexander Nyberg @ 2004-09-06 12:29 ` Ingo Molnar 2004-09-07 9:26 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R7 Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-06 12:29 UTC (permalink / raw) To: Alexander Nyberg; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen * Alexander Nyberg <alexn@dsv.su.se> wrote: > It doesn't look like it is fully ported to x86_64 systems yet, these > compile errors are easy to move away but the functionality doesn't > seem to be there. Probably why Ingo hasn't added the PREEMPT_VOLUNTARY > to the x86_64 Kconfig even though I saw a few bits of x86_64 code in > the patch. yeah, it probably doesnt compile on anything other than x86 right now. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk12-R7 2004-09-06 12:29 ` Ingo Molnar @ 2004-09-07 9:26 ` Ingo Molnar 2004-09-07 11:57 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-07 9:26 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: linux-kernel, Andi Kleen, Alexander Nyberg i've ported the VP patch to x64. I havent boot-tested it, but it compiles cleanly and it might even boot: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R7 Caveats: normal kernel with PREEMPT, PREEMPT_VOLUNTARY, PREEMPT_SOFTIRQS and PREEMPT_HARDIRQS disabled should work just fine. A kernel with PREEMPT=y and PREEMPT_VOLUNTARY=y ought to work too - with a smaller probability though. PREEMPT_SOFTIRQS=y should be the next step - this one might work too. (PREEMPT_HARDIRQS=y doesnt do anything on x64 yet, because i havent changed the irq code. I'd like to keep non-x86 changes small, unless a developer picks it up - like it happened for the ppc and ppc64 port of the VP patch.) PREEMPT_TIMING=y might work too if the previous ones worked. The most problematic one is probably LATENCY_TRACE=y - i've added the proper mcount assembly code but mostly blindly. It does compile. so please try this kernel on real hw and try to figure out step by step at which stage in the following order of parameters it breaks: PREEMPT=y PREEMPT_VOLUNTARY=y PREEMPT_SOFTIRQS=y PREEMPT_TIMING=y LATENCY_TRACE=y (when enabling a new option in this sequence keep all the previous options enabled.) Worst-case it already breaks with all these options disabled - in this case please double-check whether vanilla -bk12 x64 boots fine with the same .config. Best-case it works fine with all options enabled - quite unlikely. If it breaks it will break early and hard during bootup, so data is probably not at risk - but be careful nevertheless. to get a 2.6.9-rc1-bk12 kernel the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 2004-09-07 9:26 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R7 Ingo Molnar @ 2004-09-07 11:57 ` Ingo Molnar 2004-09-07 14:50 ` Alexander Nyberg ` (2 more replies) 0 siblings, 3 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-07 11:57 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: linux-kernel, Andi Kleen, Alexander Nyberg test-booted the x64 kernel and found a number of bugs in the x64 port of the VP patch. I've uploaded -R8 that fixes them: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R8 NOTE: i tested a (non-modular) 64-bit bzImage on a 32-bit OS (FC2) but havent booted it on a 64-bit userland yet. But i'd expect 64-bit userspace to work just fine too. to get a 2.6.9-rc1-bk12 kernel the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 2004-09-07 11:57 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 Ingo Molnar @ 2004-09-07 14:50 ` Alexander Nyberg 2004-09-07 15:04 ` Ingo Molnar 2004-09-07 19:56 ` Rafael J. Wysocki 2004-09-07 22:59 ` Lee Revell 2 siblings, 1 reply; 224+ messages in thread From: Alexander Nyberg @ 2004-09-07 14:50 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen On Tue, 2004-09-07 at 13:57, Ingo Molnar wrote: > test-booted the x64 kernel and found a number of bugs in the x64 port of > the VP patch. I've uploaded -R8 that fixes them: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R8 > > NOTE: i tested a (non-modular) 64-bit bzImage on a 32-bit OS (FC2) but > havent booted it on a 64-bit userland yet. But i'd expect 64-bit > userspace to work just fine too. Looks fine over here on 2-CPU, debian 64-bit user-space with both preempt & voluntary preempt turned on. Init seems to explode (gets killed over and over, not sure how this happens) on CONFIG_LATENCY_TRACE, I'll take a look at that later today unless you have any offender you're aware of. ===== linux-2.5/arch/x86_64/kernel/x8664_ksyms.c 1.34 vs edited ===== --- 1.34/arch/x86_64/kernel/x8664_ksyms.c 2004-08-24 11:08:31 +02:00 +++ edited/linux-2.5/arch/x86_64/kernel/x8664_ksyms.c 2004-09-07 16:31:46 +02:00 @@ -221,3 +221,7 @@ #endif EXPORT_SYMBOL(cpu_khz); + +#ifdef CONFIG_LATENCY_TRACE +EXPORT_SYMBOL(mcount); +#endif ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 2004-09-07 14:50 ` Alexander Nyberg @ 2004-09-07 15:04 ` Ingo Molnar 2004-09-07 15:29 ` Alexander Nyberg 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-07 15:04 UTC (permalink / raw) To: Alexander Nyberg; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen * Alexander Nyberg <alexn@dsv.su.se> wrote: > Looks fine over here on 2-CPU, debian 64-bit user-space with both > preempt & voluntary preempt turned on. Init seems to explode (gets > killed over and over, not sure how this happens) on > CONFIG_LATENCY_TRACE, I'll take a look at that later today unless you > have any offender you're aware of. > +#ifdef CONFIG_LATENCY_TRACE > +EXPORT_SYMBOL(mcount); > +#endif thanks, i've added this to latency.c. You can find my current snapshot at: http://redhat.com/~mingo/private/voluntary-preempt-2.6.9-rc1-bk12-R9-A6 there are alot of changes - perhaps one of them fixes your LATENCY_TRACE problem - but the likelyhood is low, for me LATENCY_TRACE worked fine on amd64 even with -R8. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 2004-09-07 15:04 ` Ingo Molnar @ 2004-09-07 15:29 ` Alexander Nyberg 0 siblings, 0 replies; 224+ messages in thread From: Alexander Nyberg @ 2004-09-07 15:29 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen > > Looks fine over here on 2-CPU, debian 64-bit user-space with both > > preempt & voluntary preempt turned on. Init seems to explode (gets > > killed over and over, not sure how this happens) on > > CONFIG_LATENCY_TRACE, I'll take a look at that later today unless you > > have any offender you're aware of. > > > +#ifdef CONFIG_LATENCY_TRACE > > +EXPORT_SYMBOL(mcount); > > +#endif > > thanks, i've added this to latency.c. You can find my current snapshot > at: > > http://redhat.com/~mingo/private/voluntary-preempt-2.6.9-rc1-bk12-R9-A6 > > there are alot of changes - perhaps one of them fixes your LATENCY_TRACE > problem - but the likelyhood is low, for me LATENCY_TRACE worked fine on > amd64 even with -R8. I didn't even get to see any text before it rebooted, hmm? I'll take a look with -R8 later as for LATENCY_TRACE, do you know what could have caused this sudden reboot? ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 2004-09-07 11:57 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 Ingo Molnar 2004-09-07 14:50 ` Alexander Nyberg @ 2004-09-07 19:56 ` Rafael J. Wysocki 2004-09-07 22:59 ` Lee Revell 2 siblings, 0 replies; 224+ messages in thread From: Rafael J. Wysocki @ 2004-09-07 19:56 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Andi Kleen, Alexander Nyberg [-- Attachment #1: Type: text/plain, Size: 1081 bytes --] On Tuesday 07 of September 2004 13:57, Ingo Molnar wrote: > > test-booted the x64 kernel and found a number of bugs in the x64 port of > the VP patch. I've uploaded -R8 that fixes them: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R8 > > NOTE: i tested a (non-modular) 64-bit bzImage on a 32-bit OS (FC2) but > havent booted it on a 64-bit userland yet. But i'd expect 64-bit > userspace to work just fine too. Heh, works for me like charm! Thank you very much, Ingo, for the excellent job! It has hanged once (the first time I tried to boot it), while starting either postfix or cron (AFAIR), but I haven't been able to get any trace and I can't reproduce this. I'm using the serial console just in case right now. I'll give it a run in production tomorrow. I'm attaching the output of dmesg in case you want to know what the system is. Greets, RJW -- - Would you tell me, please, which way I ought to go from here? - That depends a good deal on where you want to get to. -- Lewis Carroll "Alice's Adventures in Wonderland" [-- Attachment #2: dmesg.out --] [-- Type: text/plain, Size: 16996 bytes --] Bootdata ok (command line is root=/dev/hdc6 vga=792 resume=/dev/hdc3 console=ttyS0,57600) Linux version 2.6.9-rc1-bk12-VP-R8 (rafael@albercik) (gcc version 3.3.3 (SuSE Linux)) #3 Tue Sep 7 15:51:51 CEST 2004 BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 000000001ff40000 (usable) BIOS-e820: 000000001ff40000 - 000000001ff50000 (ACPI data) BIOS-e820: 000000001ff50000 - 0000000020000000 (ACPI NVS) BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved) BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) No mptable found. On node 0 totalpages: 130880 DMA zone: 4096 pages, LIFO batch:1 Normal zone: 126784 pages, LIFO batch:16 HighMem zone: 0 pages, LIFO batch:1 PCI bridge 00:0a from 10de found. Setting "noapic". Overwrite with "apic" ACPI: RSDP (v000 ACPIAM ) @ 0x00000000000f76e0 ACPI: RSDT (v001 A M I OEMRSDT 0x04000413 MSFT 0x00000097) @ 0x000000001ff40000 ACPI: FADT (v001 A M I OEMFACP 0x04000413 MSFT 0x00000097) @ 0x000000001ff40200 ACPI: OEMB (v001 A M I OEMBIOS 0x04000413 MSFT 0x00000097) @ 0x000000001ff50040 >>> ERROR: Invalid checksum ACPI: DSDT (v001 L5DK8 L5DK8013 0x00000013 INTL 0x02002026) @ 0x0000000000000000 Intel MultiProcessor Specification v1.1 Virtual Wire compatibility mode. OEM ID: ASUSTeK <6>Product ID: L5D <6>APIC at: 0xFEE00000 Processor #0 15:4 APIC version 16 I/O APIC #1 Version 17 at 0xFEC00000. Processors: 1 Checking aperture... CPU 0: aperture @ e8000000 size 128 MB Built 1 zonelists Kernel command line: root=/dev/hdc6 vga=792 resume=/dev/hdc3 console=ttyS0,57600 Initializing CPU#0 PID hash table entries: 2048 (order: 11, 65536 bytes) time.c: Using 1.193182 MHz PIT timer. time.c: Detected 1795.407 MHz processor. Console: colour dummy device 80x25 Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes) Inode-cache hash table entries: 65536 (order: 7, 524288 bytes) Memory: 509360k/523520k available (2847k kernel code, 13676k reserved, 1147k data, 172k init) Calibrating delay loop... 3555.32 BogoMIPS (lpj=1777664) Security Scaffold v1.0.0 initialized SELinux: Initializing. SELinux: Starting in permissive mode There is already a security framework initialized, register_security failed. selinux_register_security: Registering secondary module capability Capability LSM initialized as secondary Mount-cache hash table entries: 256 (order: 0, 4096 bytes) CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) CPU: AMD Athlon(tm) 64 Processor 3000+ stepping 0a tbxface-0117 [02] acpi_load_tables : ACPI Tables successfully acquired Parsing all Control Methods:........................................................................................................................................................................................................................................................................................................................................ Table [DSDT](id F004) - 1106 Objects with 63 Devices 328 Methods 32 Regions ACPI Namespace successfully loaded at root ffffffff80547740 ACPI: IRQ9 SCI: Edge set to Level Trigger. evxfevnt-0093 [03] acpi_enable : Transition to ACPI mode successful Using local APIC NMI watchdog using perfctr0 Using local APIC timer interrupts. Detected 12.468 MHz APIC timer. requesting new irq thread for IRQ0... requesting new irq thread for IRQ2... NET: Registered protocol family 16 PCI: Using configuration type 1 mtrr: v2.0 (20020519) ACPI: Subsystem revision 20040715 evgpeblk-0980 [07] ev_create_gpe_block : GPE 00 to 1F [_GPE] 4 regs at 0000000000004020 on int 0x9 evgpeblk-0989 [07] ev_create_gpe_block : Found 6 Wake, Enabled 0 Runtime GPEs in this block evgpeblk-0980 [07] ev_create_gpe_block : GPE 20 to 5F [_GPE] 8 regs at 00000000000044A0 on int 0x9 evgpeblk-0989 [07] ev_create_gpe_block : Found 0 Wake, Enabled 4 Runtime GPEs in this block Completing Region/Field/Buffer/Package initialization:............................................................................................................................... Initialized 31/32 Regions 26/26 Fields 43/43 Buffers 27/27 Packages (1115 nodes) Executing all Device _STA and_INI methods:................................................................... 67 Devices found containing: 67 _STA, 5 _INI methods ACPI: Interpreter enabled ACPI: Using PIC for interrupt routing ACPI: PCI Root Bridge [PCI0] (00:00) PCI: Probing PCI hardware (bus 00) ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] ACPI: Embedded Controller [EC0] (gpe 37) ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P1._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P2._PRT] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 7 9 10 *11 12 14 15) ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 7 9 10 *11 12 14 15) ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 7 9 10 11 12 14 15) ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 7 9 10 *11 12 14 15) ACPI: PCI Interrupt Link [LUS0] (IRQs 3 4 5 7 9 10 *11 12 14 15) ACPI: PCI Interrupt Link [LUS1] (IRQs 3 4 *5 7 9 10 11 12 14 15) ACPI: PCI Interrupt Link [LUS2] (IRQs 3 4 5 7 9 *10 11 12 14 15) ACPI: PCI Interrupt Link [LKLN] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LAUI] (IRQs 3 4 *5 7 9 10 11 12 14 15) ACPI: PCI Interrupt Link [LKMO] (IRQs 3 4 5 7 9 *10 11 12 14 15) ACPI: PCI Interrupt Link [LKSM] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LTID] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LATA] (IRQs 3 4 6 7 10 11 12 *14 15) ACPI: Power Resource [GFAN] (off) PCI: Using ACPI for IRQ routing ACPI: PCI Interrupt Link [LKSM] enabled at IRQ 11 ACPI: PCI interrupt 0000:00:01.1[A] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI Interrupt Link [LUS0] enabled at IRQ 11 ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI Interrupt Link [LUS1] enabled at IRQ 5 ACPI: PCI interrupt 0000:00:02.1[B] -> GSI 5 (level, low) -> IRQ 5 ACPI: PCI Interrupt Link [LUS2] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:02.2[C] -> GSI 10 (level, low) -> IRQ 10 ACPI: PCI Interrupt Link [LAUI] enabled at IRQ 5 ACPI: PCI interrupt 0000:00:06.0[A] -> GSI 5 (level, low) -> IRQ 5 ACPI: PCI Interrupt Link [LKMO] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:06.1[B] -> GSI 10 (level, low) -> IRQ 10 ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 11 ACPI: PCI interrupt 0000:02:00.0[A] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 9 ACPI: PCI interrupt 0000:02:01.0[A] -> GSI 9 (level, low) -> IRQ 9 ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 11 ACPI: PCI interrupt 0000:02:01.1[B] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI interrupt 0000:02:01.2[C] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 5 ACPI: PCI interrupt 0000:02:01.3[D] -> GSI 5 (level, low) -> IRQ 5 ACPI: PCI interrupt 0000:02:01.4[D] -> GSI 5 (level, low) -> IRQ 5 ACPI: PCI interrupt 0000:02:02.0[A] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 11 ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 11 (level, low) -> IRQ 11 agpgart: Detected AGP bridge 0 agpgart: Setting up Nforce3 AGP. agpgart: Maximum main memory to use for agp memory: 439M agpgart: AGP aperture is 128M @ 0xe8000000 PCI-DMA: Disabling IOMMU. vesafb: framebuffer at 0xd0000000, mapped to 0xffffff0000100000, size 6144k vesafb: mode is 1024x768x32, linelength=4096, pages=1 vesafb: scrolling: redraw vesafb: Truecolor: size=8:8:8:8, shift=24:16:8:0 fb0: VESA VGA frame buffer device IA32 emulation $Id: sys_ia32.c,v 1.32 2002/03/24 13:02:28 ak Exp $ audit: initializing netlink socket (disabled) audit(1094586031.893:0): initialized Total HugeTLB memory allocated, 0 VFS: Disk quotas dquot_6.5.1 Dquot-cache hash table entries: 512 (order 0, 4096 bytes) SELinux: Registering netfilter hooks Initializing Cryptographic API Console: switching to colour frame buffer device 128x48 Real Time Clock Driver v1.12 Linux agpgart interface v0.100 (c) Dave Jones Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing enabled ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A ACPI: PCI interrupt 0000:00:06.1[B] -> GSI 10 (level, low) -> IRQ 10 RAMDISK driver initialized: 16 RAM disks of 128000K size 1024 blocksize loop: loaded (max 8 devices) Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx NFORCE3-150: IDE controller at PCI slot 0000:00:08.0 NFORCE3-150: chipset revision 165 NFORCE3-150: not 100% native mode: will probe irqs later NFORCE3-150: BIOS didn't set cable bits correctly. Enabling workaround. NFORCE3-150: 0000:00:08.0 (rev a5) UDMA133 controller ide0: BM-DMA at 0xffa0-0xffa7, BIOS settings: hda:pio, hdb:DMA ide1: BM-DMA at 0xffa8-0xffaf, BIOS settings: hdc:DMA, hdd:pio Probing IDE interface ide0... hdb: TOSHIBA DVD-ROM SD-R2512, ATAPI CD/DVD-ROM drive Using anticipatory io scheduler ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Probing IDE interface ide1... hdc: IC25N060ATMR04-0, ATA DISK drive ide1 at 0x170-0x177,0x376 on irq 15 Probing IDE interface ide2... ide2: Wait for ready failed before probe ! Probing IDE interface ide3... ide3: Wait for ready failed before probe ! Probing IDE interface ide4... ide4: Wait for ready failed before probe ! Probing IDE interface ide5... ide5: Wait for ready failed before probe ! hdc: max request size: 1024KiB hdc: 117210240 sectors (60011 MB) w/7884KiB Cache, CHS=16383/255/63, UDMA(100) hdc: cache flushes supported hdc: hdc1 hdc2 hdc3 hdc4 < hdc5 hdc6 hdc7 hdc8 hdc9 hdc10 > hdb: ATAPI 24X DVD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33) Uniform CD-ROM driver Revision: 3.20 mice: PS/2 mouse device common for all mice i8042.c: Detected active multiplexing controller, rev 1.1. serio: i8042 AUX0 port at 0x60,0x64 irq 12 serio: i8042 AUX1 port at 0x60,0x64 irq 12 serio: i8042 AUX2 port at 0x60,0x64 irq 12 serio: i8042 AUX3 port at 0x60,0x64 irq 12 Synaptics Touchpad, model: 1 Firmware: 5.9 180 degree mounted touchpad Sensor: 18 new absolute packet format Touchpad has extended capability bits -> four buttons -> palm detection input: SynPS/2 Synaptics TouchPad on isa0060/serio4 serio: i8042 KBD port at 0x60,0x64 irq 1 input: AT Translated Set 2 keyboard on isa0060/serio0 NET: Registered protocol family 2 IP: routing cache hash table of 512 buckets, 28Kbytes TCP: Hash tables configured (established 32768 bind 4681) NET: Registered protocol family 1 Resume Machine: resuming from /dev/hdc3 Resuming from device unknown-block(22,3) Resume Machine: This is normal swap space ACPI: (supports S0 S1 S3 S4 S5) ACPI wakeup devices: MDM P0P1 LAN0 LAN1 USB0 USB1 USB2 SLPB EXT3-fs: mounted filesystem with ordered data mode. VFS: Mounted root (ext3 filesystem) readonly. Freeing unused kernel memory: 172k freed kjournald starting. Commit interval 5 seconds Adding 1534196k swap on /dev/hdc3. Priority:42 extents:1 EXT3 FS on hdc6, internal journal device-mapper: 4.1.0-ioctl (2003-12-10) initialised: dm@uk.sistina.com kjournald starting. Commit interval 5 seconds EXT3 FS on hdc5, internal journal EXT3-fs: mounted filesystem with ordered data mode. ReiserFS: hdc9: found reiserfs format "3.6" with standard journal ReiserFS: hdc9: using ordered data mode ReiserFS: hdc9: journal params: device hdc9, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30 ReiserFS: hdc9: checking transaction log (hdc9) ReiserFS: hdc9: Using r5 hash to sort names ReiserFS: hdc10: found reiserfs format "3.6" with standard journal ReiserFS: hdc10: using ordered data mode ReiserFS: hdc10: journal params: device hdc10, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30 ReiserFS: hdc10: checking transaction log (hdc10) ReiserFS: hdc10: Using r5 hash to sort names kjournald starting. Commit interval 5 seconds EXT3 FS on hdc8, internal journal EXT3-fs: mounted filesystem with ordered data mode. kjournald starting. Commit interval 5 seconds EXT3 FS on hdc7, internal journal EXT3-fs: mounted filesystem with ordered data mode. ACPI: PCI interrupt 0000:02:00.0[A] -> GSI 11 (level, low) -> IRQ 11 ACPI: PCI interrupt 0000:02:00.0[A] -> GSI 11 (level, low) -> IRQ 11 eth0: Yukon Gigabit Ethernet 10/100/1000Base-T Adapter PrefPort:A RlmtMode:Check Link State usbcore: registered new driver usbfs usbcore: registered new driver hub NET: Registered protocol family 17 eth0: network connection up using port A speed: 100 autonegotiation: yes duplex mode: full flowctrl: symmetric irq moderation: disabled scatter-gather: enabled ohci_hcd: 2004 Feb 02 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 11 (level, low) -> IRQ 11 ohci_hcd 0000:00:02.0: nVidia Corporation nForce3 USB 1.1 PCI: Setting latency timer of device 0000:00:02.0 to 64 ohci_hcd 0000:00:02.0: irq 11, pci mem ffffff00000c2000 ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1 hub 1-0:1.0: USB hub found hub 1-0:1.0: 3 ports detected ACPI: PCI interrupt 0000:00:02.1[B] -> GSI 5 (level, low) -> IRQ 5 ohci_hcd 0000:00:02.1: nVidia Corporation nForce3 USB 1.1 (#2) PCI: Setting latency timer of device 0000:00:02.1 to 64 ohci_hcd 0000:00:02.1: irq 5, pci mem ffffff00000d4000 ohci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 2 hub 2-0:1.0: USB hub found hub 2-0:1.0: 3 ports detected ACPI: PCI interrupt 0000:00:02.2[C] -> GSI 10 (level, low) -> IRQ 10 ehci_hcd 0000:00:02.2: nVidia Corporation nForce3 USB 2.0 PCI: Setting latency timer of device 0000:00:02.2 to 64 ehci_hcd 0000:00:02.2: irq 10, pci mem ffffff00000c4c00 ehci_hcd 0000:00:02.2: new USB bus registered, assigned bus number 3 PCI: cache line size of 64 is not supported by device 0000:00:02.2 ehci_hcd 0000:00:02.2: USB 2.0 enabled, EHCI 1.00, driver 2004-May-10 hub 3-0:1.0: USB hub found hub 3-0:1.0: 6 ports detected Linux Kernel Card Services options: [pci] [cardbus] [pm] ACPI: PCI interrupt 0000:02:01.0[A] -> GSI 9 (level, low) -> IRQ 9 Yenta: CardBus bridge found at 0000:02:01.0 [1043:1854] spurious 8259A interrupt: IRQ7. Yenta: ISA IRQ mask 0x0008, PCI irq 9 Socket status: 30000006 ACPI: PCI interrupt 0000:02:01.1[B] -> GSI 11 (level, low) -> IRQ 11 Yenta: CardBus bridge found at 0000:02:01.1 [1043:1854] usb 1-2: new low speed USB device using address 2 Yenta: ISA IRQ mask 0x0008, PCI irq 11 Socket status: 30000006 ieee1394: Initialized config rom entry `ip1394' ohci1394: $Rev: 1223 $ Ben Collins <bcollins@debian.org> ACPI: PCI interrupt 0000:02:01.2[C] -> GSI 11 (level, low) -> IRQ 11 ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[11] MMIO=[feafd000-feafd7ff] Max Packet=[2048] ieee1394: Host added: ID:BUS[0-00:1023] GUID[00e018000319b175] ACPI: PCI interrupt 0000:00:06.0[A] -> GSI 5 (level, low) -> IRQ 5 PCI: Setting latency timer of device 0000:00:06.0 to 64 ACPI: AC Adapter [AC0] (on-line) NET: Registered protocol family 10 Disabled Privacy Extensions on device ffffffff804a4420(lo) IPv6 over IPv4 tunneling driver Disabled Privacy Extensions on device 000001001bf9f800(sit0) ACPI: Battery Slot [BAT0] (battery present) ACPI: Power Button (FF) [PWRF] ACPI: Sleep Button (CM) [SLPB] ACPI: Lid Switch [LID] ACPI: Fan [FN00] (off) intel8x0_measure_ac97_clock: measured 49491 usecs intel8x0: clocking to 48000 ALSA sound/pci/intel8x0.c:2844: joystick(s) found acpi_processor-2264 [121] acpi_processor_get_inf: Invalid PBLK length [0] ACPI: Processor [CPU1] (supports C1) ACPI: Thermal Zone [THRM] (53 C) powernow-k8: Found 1 AMD Athlon 64 / Opteron processors (version 1.00.09b) powernow-k8: 0 : fid 0xa (1800 MHz), vid 0x2 (1500 mV) powernow-k8: 1 : fid 0x8 (1600 MHz), vid 0x6 (1400 mV) powernow-k8: 2 : fid 0x0 (800 MHz), vid 0x12 (1100 mV) powernow-k8: cpu_init done, current fid 0xa, vid 0x2 usbcore: registered new driver hiddev input: USB HID v1.10 Mouse [Logitech Optical USB Mouse] on usb-0000:00:02.0-2 usbcore: registered new driver usbhid drivers/usb/input/hid-core.c: v2.0:USB HID core driver eth0: no IPv6 routers present Non-volatile memory driver v1.2 SCSI subsystem initialized st: Version 20040403, fixed bufsize 32768, s/g segs 256 parport0: PC-style at 0x378 [PCSPP,TRISTATE] lp0: using parport0 (polling). drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic usbcore: registered new driver usbserial_generic usbcore: registered new driver usbserial drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0 mtrr: 0xd0000000,0x4000000 overlaps existing 0xd0000000,0x400000 ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 2004-09-07 11:57 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 Ingo Molnar 2004-09-07 14:50 ` Alexander Nyberg 2004-09-07 19:56 ` Rafael J. Wysocki @ 2004-09-07 22:59 ` Lee Revell 2004-09-08 8:20 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-07 22:59 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen, Alexander Nyberg On Tue, 2004-09-07 at 07:57, Ingo Molnar wrote: > test-booted the x64 kernel and found a number of bugs in the x64 port of > the VP patch. I've uploaded -R8 that fixes them: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R8 > Does not work on 32 bit x86: CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1 kernel/built-in.o(.init.text+0xcbf): In function `interruptible_sleep_on': kernel/sched.c:1563: undefined reference to `init_irq_proc' make: *** [.tmp_vmlinux1] Error 1 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 2004-09-07 22:59 ` Lee Revell @ 2004-09-08 8:20 ` Ingo Molnar 2004-09-08 9:46 ` Rafael J. Wysocki 2004-09-08 22:37 ` Lee Revell 0 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-08 8:20 UTC (permalink / raw) To: Lee Revell; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen, Alexander Nyberg * Lee Revell <rlrevell@joe-job.com> wrote: > Does not work on 32 bit x86: > > CHK include/linux/compile.h > UPD include/linux/compile.h > CC init/version.o > LD init/built-in.o > LD .tmp_vmlinux1 > kernel/built-in.o(.init.text+0xcbf): In function `interruptible_sleep_on': > kernel/sched.c:1563: undefined reference to `init_irq_proc' > make: *** [.tmp_vmlinux1] Error 1 does -R9 work for you: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R9 to get a 2.6.9-rc1-bk12 kernel the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 2004-09-08 8:20 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 Ingo Molnar @ 2004-09-08 9:46 ` Rafael J. Wysocki 2004-09-08 9:56 ` Ingo Molnar 2004-09-08 22:37 ` Lee Revell 1 sibling, 1 reply; 224+ messages in thread From: Rafael J. Wysocki @ 2004-09-08 9:46 UTC (permalink / raw) To: Ingo Molnar; +Cc: Lee Revell, linux-kernel, Andi Kleen, Alexander Nyberg On Wednesday 08 of September 2004 10:20, Ingo Molnar wrote: > > * Lee Revell <rlrevell@joe-job.com> wrote: > > > Does not work on 32 bit x86: > > > > CHK include/linux/compile.h > > UPD include/linux/compile.h > > CC init/version.o > > LD init/built-in.o > > LD .tmp_vmlinux1 > > kernel/built-in.o(.init.text+0xcbf): In function `interruptible_sleep_on': > > kernel/sched.c:1563: undefined reference to `init_irq_proc' > > make: *** [.tmp_vmlinux1] Error 1 > > does -R9 work for you: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R9 Er, it doesn't work for me: HOSTCC scripts/genksyms/parse.o HOSTLD scripts/genksyms/genksyms CC scripts/mod/empty.o /bin/sh: line 1: x86_64-unknown-linux-gcc: command not found make[2]: *** [scripts/mod/empty.o] Error 127 make[1]: *** [scripts/mod] Error 2 make: *** [scripts] Error 2 Greets, RJW -- - Would you tell me, please, which way I ought to go from here? - That depends a good deal on where you want to get to. -- Lewis Carroll "Alice's Adventures in Wonderland" ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 2004-09-08 9:46 ` Rafael J. Wysocki @ 2004-09-08 9:56 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-08 9:56 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: Lee Revell, linux-kernel, Andi Kleen, Alexander Nyberg * Rafael J. Wysocki <rjw@sisk.pl> wrote: > Er, it doesn't work for me: > > HOSTCC scripts/genksyms/parse.o > HOSTLD scripts/genksyms/genksyms > CC scripts/mod/empty.o > /bin/sh: line 1: x86_64-unknown-linux-gcc: command not found > make[2]: *** [scripts/mod/empty.o] Error 127 > make[1]: *** [scripts/mod] Error 2 > make: *** [scripts] Error 2 please re-download -R9, it had my crosscompiler flags included by accident. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 2004-09-08 8:20 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 Ingo Molnar 2004-09-08 9:46 ` Rafael J. Wysocki @ 2004-09-08 22:37 ` Lee Revell 2004-09-09 6:17 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-08 22:37 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen, Alexander Nyberg On Wed, 2004-09-08 at 04:20, Ingo Molnar wrote: > does -R9 work for you: > No, same error: LD init/built-in.o LD .tmp_vmlinux1 kernel/built-in.o(.init.text+0xcbf): In function `interruptible_sleep_on': kernel/sched.c:1563: undefined reference to `init_irq_proc' make: *** [.tmp_vmlinux1] Error 1 Here is the change that is responsible. R6 compiles: rlrevell@mindpipe:~/kernel-source/linux-2.6.9-rc1-bk12-R8$ grep init_irq_proc ../voluntary-preempt-2.6.9-rc1-bk12-R6 -void init_irq_proc (void) -void init_irq_proc (void) -void init_irq_proc (void) +void init_irq_proc (void) R8 and later do not: rlrevell@mindpipe:~/kernel-source/linux-2.6.9-rc1-bk12-R8$ grep init_irq_proc ../voluntary-preempt-2.6.9-rc1-bk12-R9 -void init_irq_proc (void) -void init_irq_proc (void) -void init_irq_proc (void) +extern void generic_init_irq_proc(void); +static inline void init_irq_proc(void) + generic_init_irq_proc(); +void generic_init_irq_proc(void) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 2004-09-08 22:37 ` Lee Revell @ 2004-09-09 6:17 ` Ingo Molnar 2004-09-09 19:30 ` Lee Revell 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar 0 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-09 6:17 UTC (permalink / raw) To: Lee Revell; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen, Alexander Nyberg * Lee Revell <rlrevell@joe-job.com> wrote: > LD .tmp_vmlinux1 > kernel/built-in.o(.init.text+0xcbf): In function `interruptible_sleep_on': > kernel/sched.c:1563: undefined reference to `init_irq_proc' > make: *** [.tmp_vmlinux1] Error 1 could you try -S0: does -R9 work for you: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-S0 [ to get a 2.6.9-rc1-bk12 kernel the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc1.bz2 + http://redhat.com/~mingo/voluntary-preempt/patch-2.6.9-rc1-bk12.bz2 ] Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 2004-09-09 6:17 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 Ingo Molnar @ 2004-09-09 19:30 ` Lee Revell 2004-09-09 20:23 ` Lee Revell 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-09 19:30 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen, Alexander Nyberg On Thu, 2004-09-09 at 02:17, Ingo Molnar wrote: > could you try -S0: Nope, different error: CC arch/i386/kernel/irq.o arch/i386/kernel/irq.c: In function `do_IRQ': arch/i386/kernel/irq.c:273: warning: implicit declaration of function `redirect_hardirq' arch/i386/kernel/irq.c:349: error: `noirqdebug' undeclared (first use in this function) arch/i386/kernel/irq.c:349: error: (Each undeclared identifier is reported only once arch/i386/kernel/irq.c:349: error: for each function it appears in.) arch/i386/kernel/irq.c:350: warning: implicit declaration of function `note_interrupt' make[1]: *** [arch/i386/kernel/irq.o] Error 1 make: *** [arch/i386/kernel] Error 2 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 2004-09-09 19:30 ` Lee Revell @ 2004-09-09 20:23 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-09 20:23 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rafael J. Wysocki, linux-kernel, Andi Kleen, Alexander Nyberg On Thu, 2004-09-09 at 15:30, Lee Revell wrote: > On Thu, 2004-09-09 at 02:17, Ingo Molnar wrote: > > could you try -S0: > > Nope, different error: > > CC arch/i386/kernel/irq.o > arch/i386/kernel/irq.c: In function `do_IRQ': > arch/i386/kernel/irq.c:273: warning: implicit declaration of function `redirect_hardirq' > arch/i386/kernel/irq.c:349: error: `noirqdebug' undeclared (first use in this function) > arch/i386/kernel/irq.c:349: error: (Each undeclared identifier is reported only once > arch/i386/kernel/irq.c:349: error: for each function it appears in.) > arch/i386/kernel/irq.c:350: warning: implicit declaration of function `note_interrupt' > make[1]: *** [arch/i386/kernel/irq.o] Error 1 > make: *** [arch/i386/kernel] Error 2 > OK, this was user error on my part. R7 introduced the CONFIG_GENERIC_HARDIRQS config item, and I had neglected to run make oldconfig. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-09 6:17 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 Ingo Molnar 2004-09-09 19:30 ` Lee Revell @ 2004-09-19 12:26 ` Ingo Molnar 2004-09-19 17:05 ` Felipe Alfaro Solana ` (4 more replies) 1 sibling, 5 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-19 12:26 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, Mark_H_Johnson i've released the -S1 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 NOTE: this patch is against Andrew's -mm tree and the VP patchset will stay based on -mm until the merging process has been finished. to get a 2.6.9-rc2-mm1-VP-S1 kernel, the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/2.6.9-rc2-mm1.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 Changes relative to -S0: - lots of merging. A good chunk of the VP patch latency breakers and support patches are in -mm already. - integrated my 'preemptible big kernel lock' patch into VP. This makes all BKL code preemptible while keeping correctness. A new debugging infrastructure has been added to catch code that might use the BKL in an unsafe way. If the debugging check triggers it will print messages like: using smp_processor_id() in preemptible code: bash/1020 please report such messages and backtraces to me. Most of the messages i've fixed so far were false positives, but one bug has been caught already via this. Also, this BKL patch allowed the removal of two questionable latency breakers: the tty.c and the DRM BKL relaxation hack. - fixed an SMP hardirq redirection bug - IRQ threads could be bound to multiple CPUs resulting in potentially illegal preemption of hardirq contexts. - temporarily dropped the ppc/ppc64 GENERIC_HARDIRQS changes, they broke and i cannot test them. Reports, comments welcome, Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar @ 2004-09-19 17:05 ` Felipe Alfaro Solana 2004-09-20 17:14 ` K.R. Foley ` (3 subsequent siblings) 4 siblings, 0 replies; 224+ messages in thread From: Felipe Alfaro Solana @ 2004-09-19 17:05 UTC (permalink / raw) To: Ingo Molnar; +Cc: Lee Revell, linux-kernel, Mark_H_Johnson On Sep 19, 2004, at 14:26, Ingo Molnar wrote: > > i've released the -S1 VP patch: ... > Reports, comments welcome, I've been running 2.6.9-rc2-mm1-VP-S1 for some time now and it seems to be performing well. ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar 2004-09-19 17:05 ` Felipe Alfaro Solana @ 2004-09-20 17:14 ` K.R. Foley 2004-09-20 19:48 ` Ingo Molnar 2004-09-20 19:47 ` Magnus Määttä ` (2 subsequent siblings) 4 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-20 17:14 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S1 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 > > NOTE: this patch is against Andrew's -mm tree and the VP patchset will > stay based on -mm until the merging process has been finished. > > to get a 2.6.9-rc2-mm1-VP-S1 kernel, the patching order is: > > http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 > + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 > + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/2.6.9-rc2-mm1.bz2 > + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 > > Changes relative to -S0: > > - lots of merging. A good chunk of the VP patch latency breakers and > support patches are in -mm already. > > - integrated my 'preemptible big kernel lock' patch into VP. This makes > all BKL code preemptible while keeping correctness. A new debugging > infrastructure has been added to catch code that might use the BKL > in an unsafe way. If the debugging check triggers it will print > messages like: > > using smp_processor_id() in preemptible code: bash/1020 > > please report such messages and backtraces to me. Most of the messages > i've fixed so far were false positives, but one bug has been caught > already via this. > > Also, this BKL patch allowed the removal of two questionable > latency breakers: the tty.c and the DRM BKL relaxation hack. > > - fixed an SMP hardirq redirection bug - IRQ threads could be bound to > multiple CPUs resulting in potentially illegal preemption of hardirq > contexts. > > - temporarily dropped the ppc/ppc64 GENERIC_HARDIRQS changes, they broke > and i cannot test them. > > Reports, comments welcome, > > Ingo > - Is anyone else having trouble getting this to build on x86 smp? I am getting undefined references to smp_processor_id within most, if not all, modules. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-20 17:14 ` K.R. Foley @ 2004-09-20 19:48 ` Ingo Molnar 2004-09-21 2:25 ` K.R. Foley 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-20 19:48 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson * K.R. Foley <kr@cybsft.com> wrote: > Is anyone else having trouble getting this to build on x86 smp? I am > getting undefined references to smp_processor_id within most, if not > all, modules. add EXPORT_SYMBOL(smp_processor_id) to the end of sched.c. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-20 19:48 ` Ingo Molnar @ 2004-09-21 2:25 ` K.R. Foley 0 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-21 2:25 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > * K.R. Foley <kr@cybsft.com> wrote: > > >>Is anyone else having trouble getting this to build on x86 smp? I am >>getting undefined references to smp_processor_id within most, if not >>all, modules. > > > add EXPORT_SYMBOL(smp_processor_id) to the end of sched.c. > > Ingo > Thanks. That did the trick along with the afs patch Andrew posted. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar 2004-09-19 17:05 ` Felipe Alfaro Solana 2004-09-20 17:14 ` K.R. Foley @ 2004-09-20 19:47 ` Magnus Määttä 2004-09-21 2:07 ` BKL backtraces - was: " K.R. Foley 2004-09-21 18:24 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 K.R. Foley 4 siblings, 0 replies; 224+ messages in thread From: Magnus Määttä @ 2004-09-20 19:47 UTC (permalink / raw) To: linux-kernel; +Cc: Ingo Molnar, Lee Revell, Mark_H_Johnson Hello Ingo, On Sunday 19 September 2004 14.26, Ingo Molnar wrote: > i've released the -S1 VP patch: > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1- >S1 > > NOTE: this patch is against Andrew's -mm tree and the VP patchset will > stay based on -mm until the merging process has been finished. > I got this trace on my laptop (first time I'm testing VP): preemption latency trace v1.0.7 on 2.6.9-rc2-mm1-VP-S1 ------------------------------------------------------- latency: 1658 us, entries: 150 (150) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: powersaved/3542, uid:0 nice:10 policy:0 rt_prio:0 ----------------- => started at: acpi_ec_write+0x62/0x1c9 => ended at: acpi_ec_write+0x19a/0x1c9 =======> 00000001 0.000ms (+0.000ms): acpi_ec_write (acpi_ec_space_handler) 00000001 0.000ms (+0.000ms): acpi_hw_low_level_write (acpi_ec_write) 00000001 0.000ms (+0.001ms): acpi_os_write_port (acpi_hw_low_level_write) 00000001 0.001ms (+0.000ms): acpi_ec_wait (acpi_ec_write) 00000001 0.002ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 0.002ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) 00000001 0.003ms (+0.000ms): __const_udelay (acpi_ec_wait) 00000001 0.004ms (+0.000ms): __delay (acpi_ec_wait) 00000001 0.004ms (+0.099ms): delay_pmtmr (__delay) 00000001 0.103ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 0.103ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) ... 00000001 1.320ms (+0.000ms): __const_udelay (acpi_ec_wait) 00000001 1.320ms (+0.000ms): __delay (acpi_ec_wait) 00000001 1.321ms (+0.099ms): delay_pmtmr (__delay) 00000001 1.420ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 1.420ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) 00000001 1.422ms (+0.000ms): acpi_hw_low_level_write (acpi_ec_write) 00000001 1.422ms (+0.001ms): acpi_os_write_port (acpi_hw_low_level_write) 00000001 1.423ms (+0.000ms): acpi_ec_wait (acpi_ec_write) 00000001 1.423ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 1.424ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) 00000001 1.425ms (+0.000ms): __const_udelay (acpi_ec_wait) 00000001 1.425ms (+0.000ms): __delay (acpi_ec_wait) 00000001 1.425ms (+0.099ms): delay_pmtmr (__delay) 00000001 1.525ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 1.525ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) 00000001 1.526ms (+0.000ms): acpi_hw_low_level_write (acpi_ec_write) 00000001 1.527ms (+0.001ms): acpi_os_write_port (acpi_hw_low_level_write) 00000001 1.528ms (+0.000ms): acpi_ec_wait (acpi_ec_write) 00000001 1.528ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 1.529ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) 00000001 1.530ms (+0.000ms): __const_udelay (acpi_ec_wait) 00000001 1.530ms (+0.000ms): __delay (acpi_ec_wait) 00000001 1.530ms (+0.099ms): delay_pmtmr (__delay) 00000001 1.630ms (+0.000ms): acpi_hw_low_level_read (acpi_ec_wait) 00000001 1.630ms (+0.001ms): acpi_os_read_port (acpi_hw_low_level_read) 00000001 1.632ms (+0.000ms): smp_apic_timer_interrupt (acpi_ec_write) 00010001 1.632ms (+0.000ms): profile_tick (smp_apic_timer_interrupt) 00010001 1.632ms (+0.000ms): profile_hook (profile_tick) 00010002 1.632ms (+0.000ms): notifier_call_chain (profile_hook) 00010001 1.633ms (+0.001ms): profile_hit (smp_apic_timer_interrupt) 00010001 1.634ms (+0.000ms): do_IRQ (acpi_ec_write) 00010001 1.634ms (+0.000ms): do_IRQ (<00000000>) 00010002 1.635ms (+0.002ms): mask_and_ack_8259A (do_IRQ) 00010002 1.637ms (+0.000ms): redirect_hardirq (do_IRQ) 00010001 1.638ms (+0.000ms): handle_IRQ_event (do_IRQ) 00010001 1.638ms (+0.000ms): timer_interrupt (handle_IRQ_event) 00010002 1.638ms (+0.002ms): mark_offset_pmtmr (timer_interrupt) 00010002 1.641ms (+0.000ms): do_timer (timer_interrupt) 00010002 1.641ms (+0.000ms): update_process_times (do_timer) 00010002 1.641ms (+0.000ms): update_one_process (update_process_times) 00010002 1.642ms (+0.000ms): run_local_timers (update_process_times) 00010002 1.642ms (+0.000ms): raise_softirq (update_process_times) 00010002 1.642ms (+0.000ms): scheduler_tick (update_process_times) 00010002 1.643ms (+0.000ms): task_timeslice (scheduler_tick) 00010002 1.643ms (+0.000ms): update_wall_time (do_timer) 00010002 1.643ms (+0.000ms): update_wall_time_one_tick (update_wall_time) 00010002 1.644ms (+0.000ms): note_interrupt (do_IRQ) 00010002 1.644ms (+0.000ms): end_8259A_irq (do_IRQ) 00010002 1.644ms (+0.001ms): enable_8259A_irq (do_IRQ) 00000002 1.645ms (+0.000ms): do_softirq (do_IRQ) 00000002 1.646ms (+0.000ms): __do_softirq (do_softirq) 00000002 1.646ms (+0.000ms): wake_up_process (do_softirq) 00000002 1.646ms (+0.000ms): try_to_wake_up (wake_up_process) 00000002 1.646ms (+0.000ms): task_rq_lock (try_to_wake_up) 00000003 1.647ms (+0.000ms): activate_task (try_to_wake_up) 00000003 1.647ms (+0.000ms): sched_clock (activate_task) 00000003 1.647ms (+0.000ms): task_priority (activate_task) 00000003 1.648ms (+0.000ms): task_sleep_avg (task_priority) 00000003 1.648ms (+0.000ms): enqueue_task (activate_task) 00000002 1.648ms (+0.001ms): preempt_schedule (try_to_wake_up) 00010001 1.650ms (+0.000ms): do_IRQ (acpi_ec_write) 00010001 1.650ms (+0.000ms): do_IRQ (<00000009>) 00010002 1.650ms (+0.003ms): mask_and_ack_8259A (do_IRQ) 00010002 1.654ms (+0.000ms): preempt_schedule (do_IRQ) 00010002 1.654ms (+0.000ms): redirect_hardirq (do_IRQ) 00010002 1.654ms (+0.000ms): wake_up_process (redirect_hardirq) 00010002 1.654ms (+0.000ms): try_to_wake_up (wake_up_process) 00010002 1.655ms (+0.000ms): task_rq_lock (try_to_wake_up) 00010003 1.655ms (+0.000ms): activate_task (try_to_wake_up) 00010003 1.655ms (+0.000ms): sched_clock (activate_task) 00010003 1.655ms (+0.000ms): task_priority (activate_task) 00010003 1.656ms (+0.000ms): task_sleep_avg (task_priority) 00010003 1.656ms (+0.000ms): enqueue_task (activate_task) 00010002 1.656ms (+0.000ms): preempt_schedule (try_to_wake_up) 00010001 1.657ms (+0.000ms): preempt_schedule (do_IRQ) 00000002 1.657ms (+0.000ms): do_softirq (do_IRQ) 00000002 1.657ms (+0.000ms): __do_softirq (do_softirq) 00000001 1.658ms (+0.000ms): sub_preempt_count (acpi_ec_write) 00000001 1.658ms (+0.000ms): update_max_trace (check_preempt_timing) I don't know if anything can be done about it, but I get lots of them. The computer is a Intel P-M 1.5GHz with 512MB RAM. /Magnus Määttä ^ permalink raw reply [flat|nested] 224+ messages in thread
* BKL backtraces - was: Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar ` (2 preceding siblings ...) 2004-09-20 19:47 ` Magnus Määttä @ 2004-09-21 2:07 ` K.R. Foley 2004-09-21 7:18 ` Ingo Molnar 2004-09-21 18:24 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 K.R. Foley 4 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-21 2:07 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S1 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 > All of these were generated while booting: Sep 20 19:45:10 porky kernel: using smp_processor_id() in preemptible code: modprobe/1019 Sep 20 19:45:10 porky kernel: [<c011c58e>] smp_processor_id+0x8e/0xa0 Sep 20 19:45:10 porky kernel: [<c013ace6>] module_unload_init+0x46/0x70 Sep 20 19:45:10 porky kernel: [<c013ce58>] load_module+0x598/0xb10 Sep 20 19:45:10 porky kernel: [<c013d438>] sys_init_module+0x68/0x280 Sep 20 19:45:10 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 The above one of course repeats on each module load. Sep 20 19:45:10 porky kernel: using smp_processor_id() in preemptible code: X/1017 Sep 20 19:45:10 porky kernel: [<c011c58e>] smp_processor_id+0x8e/0xa0 Sep 20 19:45:10 porky kernel: [<c01d6c15>] add_timer_randomness+0x125/0x150 Sep 20 19:45:10 porky kernel: [<c01d6c9e>] add_mouse_randomness+0x1e/0x30 Sep 20 19:45:10 porky kernel: [<c022b835>] input_event+0x55/0x3f0 Sep 20 19:45:10 porky kernel: [<c01151e8>] mcount+0x14/0x18 Sep 20 19:45:10 porky kernel: [<c01e559e>] kbd_rate+0x5e/0xc0 Sep 20 19:45:10 porky kernel: [<c01e2196>] vt_ioctl+0xe06/0x1ad0 Sep 20 19:45:10 porky kernel: [<c014fdcf>] pte_alloc_map+0x9f/0xd0 Sep 20 19:45:10 porky kernel: [<c015214b>] handle_mm_fault+0x17b/0x1a0 Sep 20 19:45:10 porky kernel: [<c0119440>] do_page_fault+0x1e0/0x621 Sep 20 19:45:10 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 20 19:45:10 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 20 19:45:10 porky kernel: [<c0138512>] check_preempt_timing+0x192/0x200 Sep 20 19:45:10 porky kernel: [<c0175034>] sys_ioctl+0xe4/0x240 Sep 20 19:45:10 porky kernel: [<c01dbd1e>] tty_ioctl+0xe/0x4d0 Sep 20 19:45:10 porky kernel: [<c01151e8>] mcount+0x14/0x18 Sep 20 19:45:10 porky kernel: [<c01e1390>] vt_ioctl+0x0/0x1ad0 Sep 20 19:45:10 porky kernel: [<c01dc08b>] tty_ioctl+0x37b/0x4d0 Sep 20 19:45:10 porky kernel: [<c0175034>] sys_ioctl+0xe4/0x240 Sep 20 19:45:10 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 The X one above repeats once also. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: BKL backtraces - was: Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-21 2:07 ` BKL backtraces - was: " K.R. Foley @ 2004-09-21 7:18 ` Ingo Molnar 2004-09-21 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-21 7:18 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson [-- Attachment #1: Type: text/plain, Size: 1569 bytes --] * K.R. Foley <kr@cybsft.com> wrote: > All of these were generated while booting: > > Sep 20 19:45:10 porky kernel: using smp_processor_id() in preemptible > code: modprobe/1019 > Sep 20 19:45:10 porky kernel: [<c011c58e>] smp_processor_id+0x8e/0xa0 > Sep 20 19:45:10 porky kernel: [<c013ace6>] module_unload_init+0x46/0x70 > Sep 20 19:45:10 porky kernel: [<c013ce58>] load_module+0x598/0xb10 > Sep 20 19:45:10 porky kernel: [<c013d438>] sys_init_module+0x68/0x280 > Sep 20 19:45:10 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 > > The above one of course repeats on each module load. ok, this is a harmless false positive - the attached patch fixes it. > Sep 20 19:45:10 porky kernel: using smp_processor_id() in preemptible > code: X/1017 > Sep 20 19:45:10 porky kernel: [<c011c58e>] smp_processor_id+0x8e/0xa0 > Sep 20 19:45:10 porky kernel: [<c01d6c15>] add_timer_randomness+0x125/0x150 > Sep 20 19:45:10 porky kernel: [<c01d6c9e>] add_mouse_randomness+0x1e/0x30 > Sep 20 19:45:10 porky kernel: [<c022b835>] input_event+0x55/0x3f0 > Sep 20 19:45:10 porky kernel: [<c01e1390>] vt_ioctl+0x0/0x1ad0 > Sep 20 19:45:10 porky kernel: [<c01dc08b>] tty_ioctl+0x37b/0x4d0 > Sep 20 19:45:10 porky kernel: [<c0175034>] sys_ioctl+0xe4/0x240 > Sep 20 19:45:10 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 > > The X one above repeats once also. aha! This is a real one, fixed by the second patch. This piece of code relied on add_timer_randomness() always being called with preemption disabled. these fixes will show up in -S2. Ingo [-- Attachment #2: 1 --] [-- Type: text/plain, Size: 441 bytes --] --- linux/kernel/module.c.orig +++ linux/kernel/module.c @@ -394,7 +394,7 @@ static void module_unload_init(struct mo for (i = 0; i < NR_CPUS; i++) local_set(&mod->ref[i].count, 0); /* Hold reference count during initialization. */ - local_set(&mod->ref[smp_processor_id()].count, 1); + local_set(&mod->ref[_smp_processor_id()].count, 1); /* Backwards compatibility macros put refcount during init. */ mod->waiter = current; } [-- Attachment #3: 2 --] [-- Type: text/plain, Size: 698 bytes --] --- linux/drivers/char/random.c.orig +++ linux/drivers/char/random.c @@ -807,10 +807,11 @@ static void add_timer_randomness(struct long delta, delta2, delta3; int entropy = 0; + preempt_disable(); /* if over the trickle threshold, use only 1 in 4096 samples */ if ( random_state->entropy_count > trickle_thresh && (__get_cpu_var(trickle_count)++ & 0xfff)) - return; + goto out; /* * Use get_cycles() if implemented, otherwise fall back to @@ -861,6 +862,8 @@ static void add_timer_randomness(struct entropy = int_ln_12bits(delta); } batch_entropy_store(num, time, entropy); +out: + preempt_enable(); } void add_keyboard_randomness(unsigned char scancode) ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 2004-09-21 7:18 ` Ingo Molnar @ 2004-09-21 7:44 ` Ingo Molnar 2004-09-21 18:51 ` K.R. Foley ` (2 more replies) 0 siblings, 3 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-21 7:44 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson i've released the -S2 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S2 Changes since -S1: - added the swapspace-layout patch to fix the get_swap_page() latencies. (sw-suspend wont compile but everything else should work fine.) - fixed the random.c BKL non-preemptability assumption - export smp_processor_id() to fix modules - module init smp_processor_id()-debug false positive fix To get a 2.6.9-rc2-mm1-VP-S2 kernel, the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/2.6.9-rc2-mm1.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 2004-09-21 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo Molnar @ 2004-09-21 18:51 ` K.R. Foley 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar 2004-09-22 17:30 ` Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 K.R. Foley 2 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-21 18:51 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S2 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S2 > Another smp_processor_id in modprobe. Now I see these for every modprobe. Is this a different global lock? Sep 21 13:27:53 porky kernel: using smp_processor_id() in preemptible code: modprobe/1737 Sep 21 13:27:53 porky kernel: [<c011c58e>] smp_processor_id+0x8e/0xa0 Sep 21 13:27:53 porky kernel: [<c01401e5>] __stop_machine_run+0xb5/0xc0 Sep 21 13:27:53 porky kernel: [<c013de30>] __try_stop_module+0x0/0x46 Sep 21 13:27:53 porky kernel: [<c01151e8>] mcount+0x14/0x18 Sep 21 13:27:53 porky kernel: [<c0140214>] stop_machine_run+0x24/0x3d Sep 21 13:27:53 porky kernel: [<c013de30>] __try_stop_module+0x0/0x46 Sep 21 13:27:53 porky kernel: [<c013b019>] try_stop_module+0x39/0x40 Sep 21 13:27:53 porky kernel: [<c013de30>] __try_stop_module+0x0/0x46 Sep 21 13:27:53 porky kernel: [<c013b1e0>] sys_delete_module+0x110/0x180 Sep 21 13:27:53 porky kernel: [<c0154c09>] sys_munmap+0x59/0x80 Sep 21 13:27:53 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-21 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo Molnar 2004-09-21 18:51 ` K.R. Foley @ 2004-09-22 10:33 ` Ingo Molnar 2004-09-22 15:07 ` K.R. Foley ` (4 more replies) 2004-09-22 17:30 ` Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 K.R. Foley 2 siblings, 5 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-22 10:33 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson i've released the -S3 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 most importantly, -S3 fixes the SMP+PREEMPT bug reported by K.R. Foley. It was a bug in BKL-preemption: forced preemption still caused automatic dropping of the BKS - this is bad and broke fs/locks.c. (The race could occur on UP+PREEMPT too but it has never been reproduced there.) other changes since -S2: - introduced a CONFIG_PREEMPT_BKL - just in case there are other problems. This can be used to turn BKL preemption on/off. Can be useful for performance tests as well. - fixed a couple of more smp_processor_id() false positives. - cleaned up hardirq.c some more To get a 2.6.9-rc2-mm1-VP-S3 kernel, the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/2.6.9-rc2-mm1.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar @ 2004-09-22 15:07 ` K.R. Foley 2004-09-22 17:16 ` Lee Revell 2004-09-22 17:09 ` K.R. Foley ` (3 subsequent siblings) 4 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-22 15:07 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 > In order to get this to build I had to add #include <asm/delay.h> to linux/kernel/time.c kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 15:07 ` K.R. Foley @ 2004-09-22 17:16 ` Lee Revell 2004-09-22 17:40 ` K.R. Foley 2004-09-22 19:45 ` Ingo Molnar 0 siblings, 2 replies; 224+ messages in thread From: Lee Revell @ 2004-09-22 17:16 UTC (permalink / raw) To: K.R. Foley; +Cc: Ingo Molnar, linux-kernel, Mark_H_Johnson On Wed, 2004-09-22 at 11:07, K.R. Foley wrote: > Ingo Molnar wrote: > > i've released the -S3 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 > > > > In order to get this to build I had to add > > #include <asm/delay.h> > > to linux/kernel/time.c > Builds fine for me, this must specific to your config, or Ingo fixed the patch. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 17:16 ` Lee Revell @ 2004-09-22 17:40 ` K.R. Foley 2004-09-22 19:45 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-22 17:40 UTC (permalink / raw) To: Lee Revell; +Cc: Ingo Molnar, linux-kernel, Mark_H_Johnson Lee Revell wrote: > On Wed, 2004-09-22 at 11:07, K.R. Foley wrote: > >>Ingo Molnar wrote: >> >>>i've released the -S3 VP patch: >>> >>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 >>> >> >>In order to get this to build I had to add >> >>#include <asm/delay.h> >> >>to linux/kernel/time.c >> > > > Builds fine for me, this must specific to your config, or Ingo fixed the > patch. > > Lee > > Hmm. That seems odd. By the way, should I have included linux/delay.h, which includes asm/delay.h instead of including it directly? kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 17:16 ` Lee Revell 2004-09-22 17:40 ` K.R. Foley @ 2004-09-22 19:45 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-22 19:45 UTC (permalink / raw) To: Lee Revell; +Cc: K.R. Foley, linux-kernel, Mark_H_Johnson * Lee Revell <rlrevell@joe-job.com> wrote: > On Wed, 2004-09-22 at 11:07, K.R. Foley wrote: > > Ingo Molnar wrote: > > > i've released the -S3 VP patch: > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 > > > > > > > In order to get this to build I had to add > > > > #include <asm/delay.h> > > > > to linux/kernel/time.c > > > > Builds fine for me, this must specific to your config, or Ingo fixed > the patch. yeah, this was reported very early so i just fixed up the patch. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar 2004-09-22 15:07 ` K.R. Foley @ 2004-09-22 17:09 ` K.R. Foley 2004-09-22 19:08 ` Lee Revell ` (2 subsequent siblings) 4 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-22 17:09 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 > OK. Bad things seem to happen with this patch. Each time I booted it (twice) several telnet connections get dropped before I get a prompt (this is without any load on the system). The system SEEMED a bit less responsive. I can't be sure about that because I booted it remotely. After starting stress-kernel and logging out, I couldn't get back into the system remotely. Telnet and ssh both would just hang indefinitely. The console was still useable I think (according to my wife being my remote hands and eyes.) I saw no indications in the log of any unhappiness or any indications of why connections were dropping and hanging. Also the highest latency reported was 252 usec. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar 2004-09-22 15:07 ` K.R. Foley 2004-09-22 17:09 ` K.R. Foley @ 2004-09-22 19:08 ` Lee Revell 2004-09-23 1:13 ` Lee Revell 2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar 4 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-22 19:08 UTC (permalink / raw) To: Ingo Molnar; +Cc: K.R. Foley, linux-kernel, Mark_H_Johnson On Wed, 2004-09-22 at 06:33, Ingo Molnar wrote: > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 The rt_garbage_collect latency is back: preemption latency trace v1.0.7 on 2.6.9-rc2-mm1-VP-S3 ------------------------------------------------------- latency: 2040 us, entries: 2321 (2321) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: ksoftirqd/0/2, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: netif_receive_skb+0x6a/0x1d0 => ended at: netif_receive_skb+0x125/0x1d0 =======> 00000001 0.000ms (+0.001ms): netif_receive_skb (process_backlog) 00000001 0.001ms (+0.000ms): packet_rcv_spkt (netif_receive_skb) 00000001 0.002ms (+0.000ms): skb_clone (packet_rcv_spkt) 00000001 0.002ms (+0.001ms): kmem_cache_alloc (skb_clone) 00000001 0.004ms (+0.001ms): memcpy (skb_clone) 00000001 0.006ms (+0.001ms): strlcpy (packet_rcv_spkt) 00000002 0.007ms (+0.003ms): sk_run_filter (packet_rcv_spkt) 00000001 0.011ms (+0.000ms): __kfree_skb (packet_rcv_spkt) 00000001 0.012ms (+0.000ms): kfree_skbmem (__kfree_skb) 00000001 0.012ms (+0.000ms): skb_release_data (kfree_skbmem) 00000001 0.012ms (+0.000ms): kmem_cache_free (kfree_skbmem) 00000001 0.013ms (+0.001ms): ip_rcv (netif_receive_skb) 00000001 0.015ms (+0.000ms): ip_route_input (ip_rcv) 00000001 0.015ms (+0.003ms): rt_hash_code (ip_route_input) 00000001 0.019ms (+0.001ms): ip_route_input_slow (ip_rcv) 00000001 0.021ms (+0.001ms): rt_hash_code (ip_route_input_slow) 00000001 0.022ms (+0.002ms): fn_hash_lookup (ip_route_input_slow) 00000002 0.024ms (+0.002ms): fib_semantic_match (fn_hash_lookup) 00000001 0.027ms (+0.000ms): fib_validate_source (ip_route_input_slow) 00000001 0.028ms (+0.001ms): fn_hash_lookup (fib_validate_source) 00000001 0.029ms (+0.001ms): fn_hash_lookup (fib_validate_source) 00000002 0.031ms (+0.001ms): fib_semantic_match (fn_hash_lookup) 00000001 0.032ms (+0.000ms): __fib_res_prefsrc (fib_validate_source) 00000001 0.033ms (+0.002ms): inet_select_addr (__fib_res_prefsrc) 00000001 0.035ms (+0.000ms): dst_alloc (ip_route_input_slow) 00000001 0.036ms (+0.002ms): rt_garbage_collect (dst_alloc) 00000102 0.039ms (+0.001ms): rt_may_expire (rt_garbage_collect) 00000101 0.040ms (+0.000ms): local_bh_enable (rt_garbage_collect) 00000102 0.041ms (+0.001ms): rt_may_expire (rt_garbage_collect) 00000101 0.042ms (+0.000ms): local_bh_enable (rt_garbage_collect) 00000102 0.043ms (+0.000ms): rt_may_expire (rt_garbage_collect) 00000101 0.044ms (+0.000ms): local_bh_enable (rt_garbage_collect) 00000102 0.045ms (+0.001ms): rt_may_expire (rt_garbage_collect) 00000102 0.046ms (+0.001ms): rt_may_expire (rt_garbage_collect) 00000101 0.047ms (+0.000ms): local_bh_enable (rt_garbage_collect) 00000102 0.048ms (+0.001ms): rt_may_expire (rt_garbage_collect) [these 2 repeat hundreds of times] 00000101 1.875ms (+0.000ms): local_bh_enable (rt_garbage_collect) 00000102 1.876ms (+0.000ms): rt_may_expire (rt_garbage_collect) 00000102 1.877ms (+0.000ms): rt_may_expire (rt_garbage_collect) 00000101 1.877ms (+0.000ms): local_bh_enable (rt_garbage_collect) 00000102 1.878ms (+0.000ms): rt_may_expire (rt_garbage_collect) 00000102 1.879ms (+0.000ms): rt_may_expire (rt_garbage_collect) 00000101 1.880ms (+0.001ms): local_bh_enable (rt_garbage_collect) 00000001 1.881ms (+0.001ms): kmem_cache_alloc (dst_alloc) 00000001 1.882ms (+0.003ms): cache_alloc_refill (kmem_cache_alloc) [some other stuff] Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar ` (2 preceding siblings ...) 2004-09-22 19:08 ` Lee Revell @ 2004-09-23 1:13 ` Lee Revell 2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar 4 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-23 1:13 UTC (permalink / raw) To: Ingo Molnar; +Cc: K.R. Foley, linux-kernel, Mark_H_Johnson On Wed, 2004-09-22 at 06:33, Ingo Molnar wrote: > i've released the -S3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S3 > Ingo, it looks like there are still a few hardware configurations on which the VP patches just don't work: http://eca.cx/lad/2004/09/0221.html This user definitely knows what they are doing. IIRC the problems were introduced with -O5, which involved big SMP changes so this really looks like a bug. Any ideas? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar ` (3 preceding siblings ...) 2004-09-23 1:13 ` Lee Revell @ 2004-09-23 12:28 ` Ingo Molnar 2004-09-23 12:57 ` Norberto Bensa ` (2 more replies) 4 siblings, 3 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 12:28 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, Mark_H_Johnson, K.R. Foley, Rui Nuno Capela i've released the -S4 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm2-S4 -S4 fixes a softirq latency processing bug introduced in -S3. The symptoms of this bug can be erratic mouse/keyboard behavior, higher networking latencies, and similar things. (If CONFIG_PREEMPT is disabled then another effect of this bug can lead to crashes.) -S4 is also a merge to 2.6.9-rc2-mm2. To get a 2.6.9-rc2-mm2-VP-S4 kernel, the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm2/2.6.9-rc2-mm2.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm2-S4 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar @ 2004-09-23 12:57 ` Norberto Bensa 2004-09-23 13:01 ` Ingo Molnar 2004-09-23 13:35 ` Rui Nuno Capela 2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: Norberto Bensa @ 2004-09-23 12:57 UTC (permalink / raw) To: linux-kernel; +Cc: Ingo Molnar Hello, Ingo Molnar wrote: > i've released the -S4 VP patch: > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm2- >S4 CC arch/i386/kernel/irq.o arch/i386/kernel/irq.c: In function `do_IRQ': arch/i386/kernel/irq.c:287: warning: implicit declaration of function `redirect_hardirq' arch/i386/kernel/irq.c:344: error: `noirqdebug' undeclared (first use in this function) arch/i386/kernel/irq.c:344: error: (Each undeclared identifier is reported only once arch/i386/kernel/irq.c:344: error: for each function it appears in.) arch/i386/kernel/irq.c:345: warning: implicit declaration of function `note_interrupt' make[1]: *** [arch/i386/kernel/irq.o] Error 1 make: *** [arch/i386/kernel] Error 2 Regards, Norberto ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 12:57 ` Norberto Bensa @ 2004-09-23 13:01 ` Ingo Molnar 2004-09-23 13:07 ` Ingo Molnar 2004-09-23 13:09 ` Ingo Molnar 0 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 13:01 UTC (permalink / raw) To: Norberto Bensa; +Cc: linux-kernel * Norberto Bensa <norberto+linux-kernel@bensa.ath.cx> wrote: > Hello, > > Ingo Molnar wrote: > > i've released the -S4 VP patch: > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm2- > >S4 > > CC arch/i386/kernel/irq.o > arch/i386/kernel/irq.c: In function `do_IRQ': > arch/i386/kernel/irq.c:287: warning: implicit declaration of function > `redirect_hardirq' > arch/i386/kernel/irq.c:344: error: `noirqdebug' undeclared (first use in this did you do a 'make oldconfig'? Make sure there's CONFIG_GENERIC_HARDIRQ=y in your .config. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 13:01 ` Ingo Molnar @ 2004-09-23 13:07 ` Ingo Molnar 2004-09-23 13:09 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 13:07 UTC (permalink / raw) To: Norberto Bensa; +Cc: linux-kernel oops - Kconfig chunks are missing. fixing. Ingo * Ingo Molnar <mingo@elte.hu> wrote: > > * Norberto Bensa <norberto+linux-kernel@bensa.ath.cx> wrote: > > > Hello, > > > > Ingo Molnar wrote: > > > i've released the -S4 VP patch: > > > > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm2- > > >S4 > > > > CC arch/i386/kernel/irq.o > > arch/i386/kernel/irq.c: In function `do_IRQ': > > arch/i386/kernel/irq.c:287: warning: implicit declaration of function > > `redirect_hardirq' > > arch/i386/kernel/irq.c:344: error: `noirqdebug' undeclared (first use in this > > > did you do a 'make oldconfig'? Make sure there's > CONFIG_GENERIC_HARDIRQ=y in your .config. > > Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 13:01 ` Ingo Molnar 2004-09-23 13:07 ` Ingo Molnar @ 2004-09-23 13:09 ` Ingo Molnar 2004-09-23 16:46 ` Norberto Bensa 1 sibling, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 13:09 UTC (permalink / raw) To: Norberto Bensa; +Cc: linux-kernel i've uploaded the correct patch - please download -S4 again. Ingo * Ingo Molnar <mingo@elte.hu> wrote: > > * Norberto Bensa <norberto+linux-kernel@bensa.ath.cx> wrote: > > > Hello, > > > > Ingo Molnar wrote: > > > i've released the -S4 VP patch: > > > > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm2- > > >S4 > > > > CC arch/i386/kernel/irq.o > > arch/i386/kernel/irq.c: In function `do_IRQ': > > arch/i386/kernel/irq.c:287: warning: implicit declaration of function > > `redirect_hardirq' > > arch/i386/kernel/irq.c:344: error: `noirqdebug' undeclared (first use in this > > > did you do a 'make oldconfig'? Make sure there's > CONFIG_GENERIC_HARDIRQ=y in your .config. > > Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 13:09 ` Ingo Molnar @ 2004-09-23 16:46 ` Norberto Bensa 2004-09-23 17:13 ` Norberto Bensa 0 siblings, 1 reply; 224+ messages in thread From: Norberto Bensa @ 2004-09-23 16:46 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel [-- Attachment #1: Type: text/plain, Size: 324 bytes --] Hello, Ingo Molnar wrote: > i've uploaded the correct patch - please download -S4 again. > Is it me or does this patch broke quiet command-line parameter? Kernel command line: quiet vga=0x030c Yet this kernel is very verbose :( .config attached. BTW, I think you got your Subject: wrong ;) Best regards, Norberto [-- Attachment #2: .config --] [-- Type: text/plain, Size: 29640 bytes --] # # Automatically generated make config: don't edit # Linux kernel version: 2.6.9-rc2-mm2-VP-S4 # Thu Sep 23 13:13:06 2004 # CONFIG_X86=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_IOMAP=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN_ON_SMP=y # # General setup # CONFIG_LOCALVERSION="" CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_POSIX_MQUEUE=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_BSD_PROCESS_ACCT_V3=y CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_LOG_BUF_SHIFT=14 CONFIG_HOTPLUG=y CONFIG_KOBJECT_UEVENT=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_EMBEDDED=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_EXTRA_PASS=y CONFIG_FUTEX=y CONFIG_EPOLL=y # CONFIG_PREEMPT_TIMING is not set # CONFIG_IOSCHED_NOOP is not set # CONFIG_IOSCHED_AS is not set # CONFIG_IOSCHED_DEADLINE is not set CONFIG_IOSCHED_CFQ=y CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SHMEM=y # CONFIG_TINY_SHMEM is not set # # Loadable module support # CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y CONFIG_OBSOLETE_MODPARM=y CONFIG_MODVERSIONS=y CONFIG_KMOD=y # # Processor type and features # CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set CONFIG_MPENTIUMIII=y # CONFIG_MPENTIUMM is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set # CONFIG_MK7 is not set # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_L1_CACHE_SHIFT=5 CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_INTEL_USERCOPY=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y # CONFIG_SMP is not set CONFIG_PREEMPT=y CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREEMPT_SOFTIRQS=y CONFIG_PREEMPT_HARDIRQS=y CONFIG_PREEMPT_BKL=y CONFIG_X86_UP_APIC=y CONFIG_X86_UP_IOAPIC=y CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_TSC=y CONFIG_X86_MCE=y # CONFIG_X86_MCE_NONFATAL is not set # CONFIG_X86_MCE_P4THERMAL is not set # CONFIG_TOSHIBA is not set # CONFIG_I8K is not set # CONFIG_MICROCODE is not set # CONFIG_X86_MSR is not set # CONFIG_X86_CPUID is not set # # Firmware Drivers # # CONFIG_EDD is not set CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y # CONFIG_EFI is not set CONFIG_HAVE_DEC_LOCK=y # CONFIG_REGPARM is not set # # Performance-monitoring counters support # # CONFIG_PERFCTR is not set CONFIG_KEXEC=y # CONFIG_CRASH_DUMP is not set # # Power management options (ACPI, APM) # CONFIG_PM=y # CONFIG_PM_DEBUG is not set # CONFIG_SOFTWARE_SUSPEND is not set # # ACPI (Advanced Configuration and Power Interface) Support # CONFIG_ACPI=y CONFIG_ACPI_BOOT=y CONFIG_ACPI_INTERPRETER=y # CONFIG_ACPI_SLEEP is not set # CONFIG_ACPI_AC is not set # CONFIG_ACPI_BATTERY is not set # CONFIG_ACPI_BUTTON is not set # CONFIG_ACPI_FAN is not set # CONFIG_ACPI_PROCESSOR is not set # CONFIG_ACPI_ASUS is not set # CONFIG_ACPI_THINKPAD is not set # CONFIG_ACPI_TOSHIBA is not set CONFIG_ACPI_BLACKLIST_YEAR=0 # CONFIG_ACPI_DEBUG is not set CONFIG_ACPI_BUS=y CONFIG_ACPI_EC=y CONFIG_ACPI_POWER=y CONFIG_ACPI_PCI=y CONFIG_ACPI_SYSTEM=y # CONFIG_X86_PM_TIMER is not set # # APM (Advanced Power Management) BIOS Support # # CONFIG_APM is not set # # CPU Frequency scaling # # CONFIG_CPU_FREQ is not set # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GOMMCONFIG is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y CONFIG_PCI_MMCONFIG=y CONFIG_PCI_MSI=y CONFIG_PCI_LEGACY_PROC=y # CONFIG_PCI_NAMES is not set CONFIG_ISA=y # CONFIG_EISA is not set # CONFIG_MCA is not set # CONFIG_SCx200 is not set # # PCMCIA/CardBus support # # CONFIG_PCMCIA is not set CONFIG_PCMCIA_PROBE=y # # PCI Hotplug Support # CONFIG_HOTPLUG_PCI=y # CONFIG_HOTPLUG_PCI_FAKE is not set # CONFIG_HOTPLUG_PCI_COMPAQ is not set # CONFIG_HOTPLUG_PCI_IBM is not set # CONFIG_HOTPLUG_PCI_ACPI is not set # CONFIG_HOTPLUG_PCI_CPCI is not set # CONFIG_HOTPLUG_PCI_PCIE is not set # CONFIG_HOTPLUG_PCI_SHPC is not set # # Executable file formats # CONFIG_BINFMT_ELF=y # CONFIG_BINFMT_AOUT is not set # CONFIG_BINFMT_MISC is not set # # Device Drivers # # # Generic Driver Options # CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y CONFIG_FW_LOADER=y # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # # CONFIG_PARPORT is not set # # Plug and Play support # CONFIG_PNP=y # CONFIG_PNP_DEBUG is not set # # Protocols # CONFIG_ISAPNP=y CONFIG_PNPBIOS=y CONFIG_PNPBIOS_PROC_FS=y # # Block devices # CONFIG_BLK_DEV_FD=y # CONFIG_BLK_DEV_XD is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_CRYPTOLOOP=y # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_SX8 is not set # CONFIG_BLK_DEV_UB is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=2048 CONFIG_BLK_DEV_INITRD=y # CONFIG_LBD is not set CONFIG_CDROM_PKTCDVD=y CONFIG_CDROM_PKTCDVD_BUFFERS=8 # CONFIG_CDROM_PKTCDVD_WCACHE is not set # # ATA/ATAPI/MFM/RLL support # CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=y # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set CONFIG_BLK_DEV_IDESCSI=y # CONFIG_IDE_TASK_IOCTL is not set CONFIG_IDE_TASKFILE_IO=y # # IDE chipset support/bugfixes # # CONFIG_IDE_GENERIC is not set # CONFIG_BLK_DEV_CMD640 is not set # CONFIG_BLK_DEV_IDEPNP is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y # CONFIG_BLK_DEV_OFFBOARD is not set # CONFIG_BLK_DEV_GENERIC is not set # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_RZ1000 is not set CONFIG_BLK_DEV_IDEDMA_PCI=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set # CONFIG_BLK_DEV_AMD74XX is not set # CONFIG_BLK_DEV_ATIIXP is not set # CONFIG_BLK_DEV_CMD64X is not set # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_CS5530 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set # CONFIG_BLK_DEV_PIIX is not set # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set # CONFIG_BLK_DEV_SIS5513 is not set # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set CONFIG_BLK_DEV_VIA82CXXX=y # CONFIG_IDE_ARM is not set # CONFIG_IDE_CHIPSETS is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_IVB is not set CONFIG_IDEDMA_AUTO=y # CONFIG_BLK_DEV_HD is not set # # SCSI device support # CONFIG_SCSI=y CONFIG_SCSI_PROC_FS=y # # SCSI support type (disk, tape, CD-ROM) # # CONFIG_BLK_DEV_SD is not set # CONFIG_CHR_DEV_ST is not set # CONFIG_CHR_DEV_OSST is not set CONFIG_BLK_DEV_SR=y CONFIG_BLK_DEV_SR_VENDOR=y CONFIG_CHR_DEV_SG=y # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # # CONFIG_SCSI_MULTI_LUN is not set # CONFIG_SCSI_CONSTANTS is not set # CONFIG_SCSI_LOGGING is not set # # SCSI Transport Attributes # # CONFIG_SCSI_SPI_ATTRS is not set # CONFIG_SCSI_FC_ATTRS is not set # # SCSI low-level drivers # # CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_7000FASST is not set # CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_AHA152X is not set # CONFIG_SCSI_AHA1542 is not set # CONFIG_SCSI_AACRAID is not set # CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DTC3280 is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_GENERIC_NCR5380 is not set # CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_NCR53C406A is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PSI240I is not set # CONFIG_SCSI_QLOGIC_FAS is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=y # CONFIG_SCSI_QLA21XX is not set # CONFIG_SCSI_QLA22XX is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6322 is not set # CONFIG_SCSI_SYM53C416 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_T128 is not set # CONFIG_SCSI_U14_34F is not set # CONFIG_SCSI_ULTRASTOR is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_DEBUG is not set # # Old CD-ROM drivers (not SCSI, not IDE) # # CONFIG_CD_NO_IDESCSI is not set # # Multi-device support (RAID and LVM) # CONFIG_MD=y CONFIG_BLK_DEV_MD=y # CONFIG_MD_LINEAR is not set CONFIG_MD_RAID0=y # CONFIG_MD_RAID1 is not set # CONFIG_MD_RAID10 is not set # CONFIG_MD_RAID5 is not set # CONFIG_MD_RAID6 is not set CONFIG_MD_MULTIPATH=y CONFIG_BLK_DEV_DM=y CONFIG_DM_CRYPT=y CONFIG_DM_SNAPSHOT=y CONFIG_DM_MIRROR=y CONFIG_DM_ZERO=y # # Fusion MPT device support # # CONFIG_FUSION is not set # # IEEE 1394 (FireWire) support # # CONFIG_IEEE1394 is not set # # I2O device support # # CONFIG_I2O is not set # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=m CONFIG_PACKET_MMAP=y # CONFIG_NETLINK_DEV is not set CONFIG_UNIX=m # CONFIG_NET_KEY is not set CONFIG_INET=y # CONFIG_IP_MULTICAST is not set # CONFIG_IP_ADVANCED_ROUTER is not set # CONFIG_IP_PNP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_ARPD is not set # CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # CONFIG_IPV6 is not set # CONFIG_NETFILTER is not set # # SCTP Configuration (EXPERIMENTAL) # # CONFIG_IP_SCTP is not set # CONFIG_ATM is not set # CONFIG_BRIDGE is not set # CONFIG_VLAN_8021Q is not set # CONFIG_DECNET is not set # CONFIG_LLC2 is not set # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # # CONFIG_NET_SCHED is not set # CONFIG_NET_CLS_ROUTE is not set # # Network testing # # CONFIG_NET_PKTGEN is not set # CONFIG_KGDBOE is not set # CONFIG_NETPOLL is not set # CONFIG_NETPOLL_RX is not set # CONFIG_NETPOLL_TRAP is not set # CONFIG_NET_POLL_CONTROLLER is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set CONFIG_NETDEVICES=y # CONFIG_DUMMY is not set # CONFIG_BONDING is not set # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # CONFIG_NET_SB1000 is not set # # ARCnet devices # # CONFIG_ARCNET is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y CONFIG_MII=m # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # CONFIG_LANCE is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_RACAL is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_AT1700 is not set # CONFIG_DEPCA is not set # CONFIG_HP100 is not set # CONFIG_NET_ISA is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_AC3200 is not set # CONFIG_APRICOT is not set # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_CS89x0 is not set # CONFIG_DGRS is not set # CONFIG_EEPRO100 is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set # CONFIG_8139CP is not set CONFIG_8139TOO=m CONFIG_8139TOO_PIO=y # CONFIG_8139TOO_TUNE_TWISTER is not set # CONFIG_8139TOO_8129 is not set # CONFIG_8139_OLD_RX_RESET is not set # CONFIG_SIS900 is not set # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_TLAN is not set # CONFIG_VIA_RHINE is not set # CONFIG_NET_POCKET is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set # CONFIG_E1000 is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_SK98LIN is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_TIGON3 is not set # # Ethernet (10000 Mbit) # # CONFIG_IXGB is not set # CONFIG_S2IO is not set # # Token Ring devices # # CONFIG_TR is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Wan interfaces # # CONFIG_WAN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set # CONFIG_PPP is not set # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set # CONFIG_NETCONSOLE is not set # # ISDN subsystem # # CONFIG_ISDN is not set # # Telephony Support # # CONFIG_PHONE is not set # # Input device support # CONFIG_INPUT=y # # Userland interfaces # CONFIG_INPUT_MOUSEDEV=y CONFIG_INPUT_MOUSEDEV_PSAUX=y CONFIG_INPUT_MOUSEDEV_SCREEN_X=2048 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=2048 # CONFIG_INPUT_JOYDEV is not set # CONFIG_INPUT_TSDEV is not set # CONFIG_INPUT_EVDEV is not set # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # # CONFIG_GAMEPORT is not set CONFIG_SOUND_GAMEPORT=y CONFIG_SERIO=y CONFIG_SERIO_I8042=y # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_CT82C710 is not set # CONFIG_SERIO_PCIPS2 is not set CONFIG_SERIO_RAW=y # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set # CONFIG_INPUT_MOUSE is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set # CONFIG_INPUT_MISC is not set # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y # CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers # # CONFIG_SERIAL_8250 is not set # # Non-8250 serial port support # CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set # # IPMI # # CONFIG_IPMI_HANDLER is not set # # Watchdog Cards # # CONFIG_WATCHDOG is not set # CONFIG_HW_RANDOM is not set CONFIG_NVRAM=y CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set CONFIG_AGP=y # CONFIG_AGP_ALI is not set # CONFIG_AGP_ATI is not set # CONFIG_AGP_AMD is not set # CONFIG_AGP_AMD64 is not set # CONFIG_AGP_INTEL is not set # CONFIG_AGP_INTEL_MCH is not set # CONFIG_AGP_NVIDIA is not set # CONFIG_AGP_SIS is not set # CONFIG_AGP_SWORKS is not set CONFIG_AGP_VIA=y # CONFIG_AGP_EFFICEON is not set # CONFIG_DRM is not set # CONFIG_MWAVE is not set # CONFIG_RAW_DRIVER is not set CONFIG_HPET=y # CONFIG_HPET_RTC_IRQ is not set CONFIG_HPET_MMAP=y # CONFIG_HANGCHECK_TIMER is not set # # I2C support # CONFIG_I2C=y CONFIG_I2C_CHARDEV=y # # I2C Algorithms # # CONFIG_I2C_ALGOBIT is not set # CONFIG_I2C_ALGOPCF is not set # CONFIG_I2C_ALGOPCA is not set # # I2C Hardware Bus support # # CONFIG_I2C_ALI1535 is not set # CONFIG_I2C_ALI1563 is not set # CONFIG_I2C_ALI15X3 is not set # CONFIG_I2C_AMD756 is not set # CONFIG_I2C_AMD8111 is not set # CONFIG_I2C_ELEKTOR is not set # CONFIG_I2C_I801 is not set # CONFIG_I2C_I810 is not set CONFIG_I2C_ISA=m # CONFIG_I2C_NFORCE2 is not set # CONFIG_I2C_PARPORT_LIGHT is not set # CONFIG_I2C_PIIX4 is not set # CONFIG_I2C_PROSAVAGE is not set # CONFIG_I2C_SAVAGE4 is not set # CONFIG_SCx200_ACB is not set # CONFIG_I2C_SIS5595 is not set # CONFIG_I2C_SIS630 is not set # CONFIG_I2C_SIS96X is not set # CONFIG_I2C_VIA is not set CONFIG_I2C_VIAPRO=m # CONFIG_I2C_VOODOO3 is not set # CONFIG_I2C_PCA_ISA is not set # # Hardware Sensors Chip support # CONFIG_I2C_SENSOR=m # CONFIG_SENSORS_ADM1021 is not set # CONFIG_SENSORS_ADM1025 is not set # CONFIG_SENSORS_ADM1031 is not set # CONFIG_SENSORS_ASB100 is not set # CONFIG_SENSORS_DS1621 is not set # CONFIG_SENSORS_FSCHER is not set # CONFIG_SENSORS_GL518SM is not set # CONFIG_SENSORS_IT87 is not set # CONFIG_SENSORS_LM75 is not set # CONFIG_SENSORS_LM77 is not set # CONFIG_SENSORS_LM78 is not set # CONFIG_SENSORS_LM80 is not set # CONFIG_SENSORS_LM83 is not set # CONFIG_SENSORS_LM85 is not set # CONFIG_SENSORS_LM90 is not set # CONFIG_SENSORS_MAX1619 is not set # CONFIG_SENSORS_SMSC47M1 is not set CONFIG_SENSORS_VIA686A=m # CONFIG_SENSORS_W83781D is not set # CONFIG_SENSORS_W83L785TS is not set # CONFIG_SENSORS_W83627HF is not set # # Other I2C Chip support # # CONFIG_SENSORS_EEPROM is not set # CONFIG_SENSORS_PCF8574 is not set # CONFIG_SENSORS_PCF8591 is not set # CONFIG_SENSORS_RTC8564 is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_CHIP is not set # # Dallas's 1-wire bus # # CONFIG_W1 is not set # # Misc devices # # CONFIG_IBM_ASM is not set # # Multimedia devices # CONFIG_VIDEO_DEV=y # # Video For Linux # # # Video Adapters # # CONFIG_VIDEO_BT848 is not set # CONFIG_VIDEO_PMS is not set # CONFIG_VIDEO_CPIA is not set # CONFIG_VIDEO_SAA5246A is not set # CONFIG_VIDEO_SAA5249 is not set # CONFIG_TUNER_3036 is not set # CONFIG_VIDEO_STRADIS is not set # CONFIG_VIDEO_SAA7134 is not set # CONFIG_VIDEO_MXB is not set # CONFIG_VIDEO_DPC is not set # CONFIG_VIDEO_HEXIUM_ORION is not set # CONFIG_VIDEO_HEXIUM_GEMINI is not set # CONFIG_VIDEO_OVCAMCHIP is not set # # Radio Adapters # # CONFIG_RADIO_CADET is not set # CONFIG_RADIO_RTRACK is not set # CONFIG_RADIO_RTRACK2 is not set # CONFIG_RADIO_AZTECH is not set # CONFIG_RADIO_GEMTEK is not set # CONFIG_RADIO_GEMTEK_PCI is not set # CONFIG_RADIO_MAXIRADIO is not set # CONFIG_RADIO_MAESTRO is not set # CONFIG_RADIO_SF16FMI is not set # CONFIG_RADIO_SF16FMR2 is not set # CONFIG_RADIO_TERRATEC is not set # CONFIG_RADIO_TRUST is not set # CONFIG_RADIO_TYPHOON is not set # CONFIG_RADIO_ZOLTRIX is not set # # Digital Video Broadcasting Devices # # CONFIG_DVB is not set # # Graphics support # # CONFIG_FB is not set CONFIG_VIDEO_SELECT=y # # Console display driver support # CONFIG_VGA_CONSOLE=y # CONFIG_MDA_CONSOLE is not set CONFIG_DUMMY_CONSOLE=y # # Sound # CONFIG_SOUND=y # # Advanced Linux Sound Architecture # CONFIG_SND=y CONFIG_SND_TIMER=y CONFIG_SND_PCM=y CONFIG_SND_HWDEP=y CONFIG_SND_RAWMIDI=y CONFIG_SND_SEQUENCER=y # CONFIG_SND_SEQ_DUMMY is not set CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=y CONFIG_SND_PCM_OSS=y CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_RTCTIMER=y # CONFIG_SND_VERBOSE_PRINTK is not set # CONFIG_SND_DEBUG is not set # # Generic devices # # CONFIG_SND_DUMMY is not set # CONFIG_SND_VIRMIDI is not set # CONFIG_SND_MTPAV is not set # CONFIG_SND_SERIAL_U16550 is not set # CONFIG_SND_MPU401 is not set # # ISA devices # # CONFIG_SND_AD1816A is not set # CONFIG_SND_AD1848 is not set # CONFIG_SND_CS4231 is not set # CONFIG_SND_CS4232 is not set # CONFIG_SND_CS4236 is not set # CONFIG_SND_ES968 is not set # CONFIG_SND_ES1688 is not set # CONFIG_SND_ES18XX is not set # CONFIG_SND_GUSCLASSIC is not set # CONFIG_SND_GUSEXTREME is not set # CONFIG_SND_GUSMAX is not set # CONFIG_SND_INTERWAVE is not set # CONFIG_SND_INTERWAVE_STB is not set # CONFIG_SND_OPTI92X_AD1848 is not set # CONFIG_SND_OPTI92X_CS4231 is not set # CONFIG_SND_OPTI93X is not set # CONFIG_SND_SB8 is not set # CONFIG_SND_SB16 is not set # CONFIG_SND_SBAWE is not set # CONFIG_SND_WAVEFRONT is not set # CONFIG_SND_ALS100 is not set # CONFIG_SND_AZT2320 is not set # CONFIG_SND_CMI8330 is not set # CONFIG_SND_DT019X is not set # CONFIG_SND_OPL3SA2 is not set # CONFIG_SND_SGALAXY is not set # CONFIG_SND_SSCAPE is not set # # PCI devices # CONFIG_SND_AC97_CODEC=y # CONFIG_SND_ALI5451 is not set # CONFIG_SND_ATIIXP is not set # CONFIG_SND_ATIIXP_MODEM is not set # CONFIG_SND_AU8810 is not set # CONFIG_SND_AU8820 is not set # CONFIG_SND_AU8830 is not set # CONFIG_SND_AZT3328 is not set # CONFIG_SND_BT87X is not set # CONFIG_SND_CS46XX is not set # CONFIG_SND_CS4281 is not set CONFIG_SND_EMU10K1=y # CONFIG_SND_KORG1212 is not set # CONFIG_SND_MIXART is not set # CONFIG_SND_NM256 is not set # CONFIG_SND_RME32 is not set # CONFIG_SND_RME96 is not set # CONFIG_SND_RME9652 is not set # CONFIG_SND_HDSP is not set # CONFIG_SND_TRIDENT is not set # CONFIG_SND_YMFPCI is not set # CONFIG_SND_ALS4000 is not set # CONFIG_SND_CMIPCI is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set # CONFIG_SND_ES1938 is not set # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set # CONFIG_SND_FM801 is not set # CONFIG_SND_ICE1712 is not set # CONFIG_SND_ICE1724 is not set # CONFIG_SND_INTEL8X0 is not set # CONFIG_SND_INTEL8X0M is not set # CONFIG_SND_SONICVIBES is not set # CONFIG_SND_VIA82XX is not set # CONFIG_SND_VX222 is not set # # ALSA USB devices # # CONFIG_SND_USB_AUDIO is not set # CONFIG_SND_USB_USX2Y is not set # # Open Sound System # # CONFIG_SOUND_PRIME is not set # # USB support # CONFIG_USB=y # CONFIG_USB_DEBUG is not set # # Miscellaneous USB options # CONFIG_USB_DEVICEFS=y # CONFIG_USB_BANDWIDTH is not set # CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_SUSPEND is not set # CONFIG_USB_OTG is not set # # USB Host Controller Drivers # CONFIG_USB_EHCI_HCD=y # CONFIG_USB_EHCI_SPLIT_ISO is not set # CONFIG_USB_EHCI_ROOT_HUB_TT is not set # CONFIG_USB_OHCI_HCD is not set CONFIG_USB_UHCI_HCD=y # # USB Device Class drivers # # CONFIG_USB_AUDIO is not set # CONFIG_USB_BLUETOOTH_TTY is not set # CONFIG_USB_MIDI is not set # CONFIG_USB_ACM is not set # CONFIG_USB_PRINTER is not set # CONFIG_USB_STORAGE is not set # # USB Human Interface Devices (HID) # CONFIG_USB_HID=y CONFIG_USB_HIDINPUT=y # CONFIG_HID_FF is not set CONFIG_USB_HIDDEV=y # CONFIG_USB_AIPTEK is not set # CONFIG_USB_WACOM is not set # CONFIG_USB_KBTAB is not set # CONFIG_USB_POWERMATE is not set # CONFIG_USB_MTOUCH is not set # CONFIG_USB_EGALAX is not set # CONFIG_USB_XPAD is not set # CONFIG_USB_ATI_REMOTE is not set # # USB Imaging devices # # CONFIG_USB_MDC800 is not set # CONFIG_USB_MICROTEK is not set # CONFIG_USB_HPUSBSCSI is not set # # USB Multimedia devices # # CONFIG_USB_DABUSB is not set # CONFIG_USB_VICAM is not set # CONFIG_USB_DSBR is not set # CONFIG_USB_IBMCAM is not set # CONFIG_USB_KONICAWC is not set # CONFIG_USB_OV511 is not set # CONFIG_USB_SE401 is not set # CONFIG_USB_SN9C102 is not set # CONFIG_USB_STV680 is not set # # USB Network adaptors # # CONFIG_USB_CATC is not set # CONFIG_USB_KAWETH is not set # CONFIG_USB_PEGASUS is not set # CONFIG_USB_RTL8150 is not set # CONFIG_USB_USBNET is not set # # USB port drivers # # # USB Serial Converter support # # CONFIG_USB_SERIAL is not set # # USB Miscellaneous drivers # # CONFIG_USB_EMI62 is not set # CONFIG_USB_EMI26 is not set # CONFIG_USB_TIGL is not set # CONFIG_USB_AUERSWALD is not set # CONFIG_USB_RIO500 is not set # CONFIG_USB_LEGOTOWER is not set # CONFIG_USB_LCD is not set # CONFIG_USB_LED is not set # CONFIG_USB_CYTHERM is not set # CONFIG_USB_PHIDGETSERVO is not set # CONFIG_USB_TEST is not set # # USB Gadget Support # # CONFIG_USB_GADGET is not set # # File systems # # CONFIG_EXT2_FS is not set # CONFIG_EXT3_FS is not set # CONFIG_JBD is not set CONFIG_REISERFS_FS=y # CONFIG_REISERFS_CHECK is not set # CONFIG_REISERFS_PROC_INFO is not set CONFIG_REISERFS_FS_XATTR=y CONFIG_REISERFS_FS_POSIX_ACL=y CONFIG_REISERFS_FS_SECURITY=y # CONFIG_JFS_FS is not set CONFIG_FS_POSIX_ACL=y CONFIG_XFS_FS=m # CONFIG_XFS_RT is not set CONFIG_XFS_QUOTA=y CONFIG_XFS_SECURITY=y CONFIG_XFS_POSIX_ACL=y CONFIG_MINIX_FS=m # CONFIG_ROMFS_FS is not set CONFIG_QUOTA=y # CONFIG_QFMT_V1 is not set CONFIG_QFMT_V2=y CONFIG_QUOTACTL=y # CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS4_FS is not set # # Caches # # CONFIG_CACHEFS is not set # # CD-ROM/DVD Filesystems # CONFIG_ISO9660_FS=m CONFIG_JOLIET=y CONFIG_ZISOFS=y CONFIG_ZISOFS_FS=m CONFIG_UDF_FS=m CONFIG_UDF_NLS=y # # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=m CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_CODEPAGE=850 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-15" # CONFIG_NTFS_FS is not set # # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_SYSFS=y # CONFIG_DEVFS_FS is not set CONFIG_DEVPTS_FS_XATTR=y CONFIG_DEVPTS_FS_SECURITY=y CONFIG_TMPFS=y CONFIG_HUGETLBFS=y CONFIG_HUGETLB_PAGE=y CONFIG_RAMFS=y # # Miscellaneous filesystems # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_HFSPLUS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # # Network File Systems # CONFIG_NFS_FS=m CONFIG_NFS_V3=y # CONFIG_NFS_V4 is not set CONFIG_NFS_DIRECTIO=y # CONFIG_NFSD is not set CONFIG_LOCKD=m CONFIG_LOCKD_V4=y # CONFIG_EXPORTFS is not set CONFIG_SUNRPC=m CONFIG_SUNRPC_GSS=m CONFIG_RPCSEC_GSS_KRB5=m CONFIG_RPCSEC_GSS_SPKM3=m # CONFIG_SMB_FS is not set # CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set # CONFIG_AFS_FS is not set # # Partition Types # CONFIG_PARTITION_ADVANCED=y # CONFIG_ACORN_PARTITION is not set # CONFIG_OSF_PARTITION is not set # CONFIG_AMIGA_PARTITION is not set # CONFIG_ATARI_PARTITION is not set # CONFIG_MAC_PARTITION is not set CONFIG_MSDOS_PARTITION=y # CONFIG_BSD_DISKLABEL is not set # CONFIG_MINIX_SUBPARTITION is not set # CONFIG_SOLARIS_X86_PARTITION is not set # CONFIG_UNIXWARE_DISKLABEL is not set # CONFIG_LDM_PARTITION is not set # CONFIG_SGI_PARTITION is not set # CONFIG_ULTRIX_PARTITION is not set # CONFIG_SUN_PARTITION is not set # CONFIG_EFI_PARTITION is not set # # Native Language Support # CONFIG_NLS=m CONFIG_NLS_DEFAULT="utf8" # CONFIG_NLS_CODEPAGE_437 is not set # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set # CONFIG_NLS_CODEPAGE_850 is not set # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_860 is not set # CONFIG_NLS_CODEPAGE_861 is not set # CONFIG_NLS_CODEPAGE_862 is not set # CONFIG_NLS_CODEPAGE_863 is not set # CONFIG_NLS_CODEPAGE_864 is not set # CONFIG_NLS_CODEPAGE_865 is not set # CONFIG_NLS_CODEPAGE_866 is not set # CONFIG_NLS_CODEPAGE_869 is not set # CONFIG_NLS_CODEPAGE_936 is not set # CONFIG_NLS_CODEPAGE_950 is not set # CONFIG_NLS_CODEPAGE_932 is not set # CONFIG_NLS_CODEPAGE_949 is not set # CONFIG_NLS_CODEPAGE_874 is not set # CONFIG_NLS_ISO8859_8 is not set # CONFIG_NLS_CODEPAGE_1250 is not set # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_ASCII is not set # CONFIG_NLS_ISO8859_1 is not set # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_5 is not set # CONFIG_NLS_ISO8859_6 is not set # CONFIG_NLS_ISO8859_7 is not set # CONFIG_NLS_ISO8859_9 is not set # CONFIG_NLS_ISO8859_13 is not set # CONFIG_NLS_ISO8859_14 is not set # CONFIG_NLS_ISO8859_15 is not set # CONFIG_NLS_KOI8_R is not set # CONFIG_NLS_KOI8_U is not set CONFIG_NLS_UTF8=m # # Profiling support # # CONFIG_PROFILING is not set # # Kernel hacking # # CONFIG_DEBUG_KERNEL is not set # CONFIG_FRAME_POINTER is not set # CONFIG_EARLY_PRINTK is not set CONFIG_4KSTACKS=y CONFIG_X86_FIND_SMP_CONFIG=y CONFIG_X86_MPPARSE=y # # Security options # # CONFIG_KEYS is not set CONFIG_SECURITY=y # CONFIG_SECURITY_NETWORK is not set CONFIG_SECURITY_CAPABILITIES=y # CONFIG_SECURITY_ROOTPLUG is not set # CONFIG_SECURITY_SELINUX is not set # # Cryptographic options # CONFIG_CRYPTO=y CONFIG_CRYPTO_HMAC=y CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_MD4=m CONFIG_CRYPTO_MD5=m CONFIG_CRYPTO_SHA1=m CONFIG_CRYPTO_SHA256=m CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_WHIRLPOOL=m CONFIG_CRYPTO_DES=m CONFIG_CRYPTO_BLOWFISH=m CONFIG_CRYPTO_TWOFISH=m CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_AES_586=m CONFIG_CRYPTO_CAST5=m CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_ARC4=m CONFIG_CRYPTO_KHAZAD=m CONFIG_CRYPTO_DEFLATE=m CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_TEST=m # # Library routines # CONFIG_CRC_CCITT=m CONFIG_CRC32=m CONFIG_LIBCRC32C=m CONFIG_ZLIB_INFLATE=m CONFIG_ZLIB_DEFLATE=m CONFIG_GENERIC_HARDIRQS=y CONFIG_X86_BIOS_REBOOT=y ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 16:46 ` Norberto Bensa @ 2004-09-23 17:13 ` Norberto Bensa 2004-09-23 18:20 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Norberto Bensa @ 2004-09-23 17:13 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel Hello, Norberto Bensa wrote: > Is it me or does this patch broke quiet command-line parameter? Ingo, is this on purpose: --- linux/kernel/printk.c.orig +++ linux/kernel/printk.c @@ -401,7 +401,7 @@ static void __call_console_drivers(unsig static void _call_console_drivers(unsigned long start, unsigned long end, int msg_log_level) { - if (msg_log_level < console_loglevel && + if (/*msg_log_level < console_loglevel && */ console_drivers && start != end) { if ((start & LOG_BUF_MASK) > (end & LOG_BUF_MASK)) { /* wrapped write */ If so, why is it needed? Thanks, Norberto ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 17:13 ` Norberto Bensa @ 2004-09-23 18:20 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 18:20 UTC (permalink / raw) To: Norberto Bensa; +Cc: linux-kernel * Norberto Bensa <norberto+linux-kernel@bensa.ath.cx> wrote: > Ingo, is this on purpose: > > --- linux/kernel/printk.c.orig > +++ linux/kernel/printk.c > @@ -401,7 +401,7 @@ static void __call_console_drivers(unsig > static void _call_console_drivers(unsigned long start, > unsigned long end, int msg_log_level) > { > - if (msg_log_level < console_loglevel && > + if (/*msg_log_level < console_loglevel && */ > console_drivers && start != end) { not intended, debugging leftover, you can remove it. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar 2004-09-23 12:57 ` Norberto Bensa @ 2004-09-23 13:35 ` Rui Nuno Capela 2004-09-23 13:40 ` Ingo Molnar 2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-23 13:35 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, mark_h_johnson, K.R. Foley Ingo Molnar wrote: > > i've released the -S4 VP patch: > Just tried to configure for 2.6.9-rc2-mm2-VP-S4 on my laptop. Strange enough I don't get the PREEMPT_VOLUNTARY, PREEMPT_SOFTIRQS and PREEMPT_HARDIRQS symbols available for Kconfig. Not surprisingly, make stops on these messages: [...] CC arch/i386/kernel/irq.o arch/i386/kernel/irq.c: In function `do_IRQ': arch/i386/kernel/irq.c:287: warning: implicit declaration of function `redirect_hardirq' arch/i386/kernel/irq.c:363: error: `noirqdebug' undeclared (first use in this function) arch/i386/kernel/irq.c:363: error: (Each undeclared identifier is reported only once arch/i386/kernel/irq.c:363: error: for each function it appears in.) arch/i386/kernel/irq.c:364: warning: implicit declaration of function `note_interrupt' make[1]: *** [arch/i386/kernel/irq.o] Error 1 make: *** [arch/i386/kernel] Error 2 Bye now. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 13:35 ` Rui Nuno Capela @ 2004-09-23 13:40 ` Ingo Molnar 2004-09-23 16:23 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 13:40 UTC (permalink / raw) To: Rui Nuno Capela; +Cc: linux-kernel, Lee Revell, mark_h_johnson, K.R. Foley * Rui Nuno Capela <rncbc@rncbc.org> wrote: > Ingo Molnar wrote: > > > > i've released the -S4 VP patch: > > > > Just tried to configure for 2.6.9-rc2-mm2-VP-S4 on my laptop. Strange > enough I don't get the PREEMPT_VOLUNTARY, PREEMPT_SOFTIRQS and > PREEMPT_HARDIRQS symbols available for Kconfig. > > Not surprisingly, make stops on these messages: > > [...] > CC arch/i386/kernel/irq.o > arch/i386/kernel/irq.c: In function `do_IRQ': yeah, please re-download the -S4 patch, i fixed this meanwhile. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 13:40 ` Ingo Molnar @ 2004-09-23 16:23 ` Rui Nuno Capela 2004-09-23 18:07 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-23 16:23 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, mark_h_johnson, K.R. Foley Ingo Molnar wrote: > > yeah, please re-download the -S4 patch, i fixed this meanwhile. > Yes, now it builds fine on my laptop. However, after a couple of reboots, there appears to be some verbose messages regarding PCI something, but the my main complaint is the USB subsystem which is failing miserably now. I guess these are the relevant log messages excerpt: [...] Mounted devfs on /dev Freeing unused kernel memory: 160k freed IRQ#8 thread started up. usbcore: registered new driver usbfs usbcore: registered new driver hub ohci_hcd: 2004 Feb 02 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) ACPI: PCI Interrupt Link [LNK8] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 10 (level, low) -> IRQ 10 ohci_hcd 0000:00:02.0: OHCI Host Controller requesting new irq thread for IRQ10... ohci_hcd 0000:00:02.0: irq 10, pci mem 0xd4000000 ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1 ohci_hcd 0000:00:02.0: init err (00002edf 0000) ohci_hcd 0000:00:02.0: can't start ohci_hcd 0000:00:02.0: init error -75 ohci_hcd 0000:00:02.0: remove, state 0 ohci_hcd 0000:00:02.0: USB bus 1 deregistered ohci_hcd: probe of 0000:00:02.0 failed with error -75 ACPI: PCI Interrupt Link [LNK4] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:0f.0[A] -> GSI 10 (level, low) -> IRQ 10 ohci_hcd 0000:00:0f.0: OHCI Host Controller ohci_hcd 0000:00:0f.0: irq 10, pci mem 0xd4009000 ohci_hcd 0000:00:0f.0: new USB bus registered, assigned bus number 1 ohci_hcd 0000:00:0f.0: init err (00002edf 0000) ohci_hcd 0000:00:0f.0: can't start ohci_hcd 0000:00:0f.0: init error -75 ohci_hcd 0000:00:0f.0: remove, state 0 ohci_hcd 0000:00:0f.0: USB bus 1 deregistered ohci_hcd: probe of 0000:00:0f.0 failed with error -75 [...] Probably this isn't strictly related to VP, but surely it was introduced by mm1 and mm2. Can't tell for sure. And please don't count as hardware failure as it suffices to go back to 2.6.9-rc1 to get USB back to normal ;) Any thoughts? -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 2004-09-23 16:23 ` Rui Nuno Capela @ 2004-09-23 18:07 ` Rui Nuno Capela 2004-09-24 12:43 ` OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-23 18:07 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, mark_h_johnson, K.R. Foley Rui Nuno Capela (meself:) wrote: > > Yes, now it builds fine on my laptop. > > However, after a couple of reboots, there appears to be some verbose > messages regarding PCI something, but the my main complaint is the USB > subsystem which is failing miserably now. > > I guess these are the relevant log messages excerpt: > > [...] > Mounted devfs on /dev > Freeing unused kernel memory: 160k freed > IRQ#8 thread started up. > usbcore: registered new driver usbfs > usbcore: registered new driver hub > ohci_hcd: 2004 Feb 02 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) > ACPI: PCI Interrupt Link [LNK8] enabled at IRQ 10 > ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 10 (level, low) -> IRQ 10 > ohci_hcd 0000:00:02.0: OHCI Host Controller > requesting new irq thread for IRQ10... > ohci_hcd 0000:00:02.0: irq 10, pci mem 0xd4000000 > ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1 > ohci_hcd 0000:00:02.0: init err (00002edf 0000) > ohci_hcd 0000:00:02.0: can't start > ohci_hcd 0000:00:02.0: init error -75 > ohci_hcd 0000:00:02.0: remove, state 0 > ohci_hcd 0000:00:02.0: USB bus 1 deregistered > ohci_hcd: probe of 0000:00:02.0 failed with error -75 > ACPI: PCI Interrupt Link [LNK4] enabled at IRQ 10 > ACPI: PCI interrupt 0000:00:0f.0[A] -> GSI 10 (level, low) -> IRQ 10 > ohci_hcd 0000:00:0f.0: OHCI Host Controller > ohci_hcd 0000:00:0f.0: irq 10, pci mem 0xd4009000 > ohci_hcd 0000:00:0f.0: new USB bus registered, assigned bus number 1 > ohci_hcd 0000:00:0f.0: init err (00002edf 0000) > ohci_hcd 0000:00:0f.0: can't start > ohci_hcd 0000:00:0f.0: init error -75 > ohci_hcd 0000:00:0f.0: remove, state 0 > ohci_hcd 0000:00:0f.0: USB bus 1 deregistered > ohci_hcd: probe of 0000:00:0f.0 failed with error -75 > [...] > > Probably this isn't strictly related to VP, but surely it was introduced > by mm1 and mm2. Can't tell for sure. And please don't count as hardware > failure as it suffices to go back to 2.6.9-rc1 to get USB back to normal > ;) > > Any thoughts? This isn't related to VP at all. Sorry for the bandwidth waste. Just noticed a post from Andre Eisenbach [1] a few moments ago, with the this subject: "USB (OHCI) not working without pci=routeirq", and it's exactly what is going on wrong here. [1] http://lkml.org/lkml/2004/9/23/163 Thanks anyhow. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-23 18:07 ` Rui Nuno Capela @ 2004-09-24 12:43 ` Rui Nuno Capela 2004-09-24 12:55 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-24 12:43 UTC (permalink / raw) To: linux-kernel Cc: David Brownell, Karsten Wiese, Bjorn Helgaas, David Brownell, Roman Weissgaerber, linux-usb-devel, Ingo Molnar, K.R. Foley [-- Attachment #1: Type: text/plain, Size: 10306 bytes --] Hi, My laptop is a Compaq Presario 2516EA, loaded with Mandrake 10.0 Official, which has been working fine until 2.6.9-rc2. Incidentally with -mm1 and -mm2 the USB subsystem start failing miserably, due to errors while (re)starting the ohci_hcd stuff. By lurking on some recent threads on lkml, and following some other suggestions about this very problem, I've tried every combination on the boot prompt: pci=routeirq, acpi=off, softirq-preempt=0, harirq-preempt=0. This laptop also has the USB legacy BIOS mode switch. Tried that too. All combinations resulted in the same failure, without exception. Here comes the relevant dmesg lines, regarding the ohci_hcd failure (note: USB verbose debug messages are turned on): [...] usbcore: registered new driver usbfs usbcore: registered new driver hub ohci_hcd: 2004 Feb 02 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) ohci_hcd: block sizes: ed 64 td 64 ACPI: PCI Interrupt Link [LNK8] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 10 (level, low) -> IRQ 10 ohci_hcd 0000:00:02.0: OHCI Host Controller ohci_hcd 0000:00:02.0: USB HC TakeOver from BIOS/SMM requesting new irq thread for IRQ10... ohci_hcd 0000:00:02.0: irq 10, pci mem 0xd4000000 ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1 ohci_hcd 0000:00:02.0: resetting from state 'reset', control = 0x0 ohci_hcd 0000:00:02.0: init err (00002edf 0000) ohci_hcd 0000:00:02.0: can't start ohci_hcd 0000:00:02.0: stop reset controller (state 0x00) ohci_hcd 0000:00:02.0: OHCI controller state ohci_hcd 0000:00:02.0: OHCI 1.0, with legacy support registers ohci_hcd 0000:00:02.0: control 0x0c0 HCFS=suspend CBSR=0 ohci_hcd 0000:00:02.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:02.0: intrstatus 0x00000000 ohci_hcd 0000:00:02.0: intrenable 0x00000000 ohci_hcd 0000:00:02.0: hcca frame #0000 ohci_hcd 0000:00:02.0: roothub.a 03000003 POTPGT=3 NDP=3 ohci_hcd 0000:00:02.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:02.0: roothub.status 00000000 ohci_hcd 0000:00:02.0: roothub.portstatus [0] 0x00000000 ohci_hcd 0000:00:02.0: roothub.portstatus [1] 0x00000000 ohci_hcd 0000:00:02.0: roothub.portstatus [2] 0x00000000 ohci_hcd 0000:00:02.0: init error -75 ohci_hcd 0000:00:02.0: remove, state 0 ohci_hcd 0000:00:02.0: roothub graceful disconnect usb_disconnect nodev ohci_hcd 0000:00:02.0: stop reset controller (state 0x00) ohci_hcd 0000:00:02.0: OHCI controller state ohci_hcd 0000:00:02.0: OHCI 1.0, with legacy support registers ohci_hcd 0000:00:02.0: control 0x000 HCFS=reset CBSR=0 ohci_hcd 0000:00:02.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:02.0: intrstatus 0x00000000 ohci_hcd 0000:00:02.0: intrenable 0x00000000 ohci_hcd 0000:00:02.0: roothub.a 03000003 POTPGT=3 NDP=3 ohci_hcd 0000:00:02.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:02.0: roothub.status 00000000 ohci_hcd 0000:00:02.0: roothub.portstatus [0] 0x00000000 ohci_hcd 0000:00:02.0: roothub.portstatus [1] 0x00000000 ohci_hcd 0000:00:02.0: roothub.portstatus [2] 0x00000000 ohci_hcd 0000:00:02.0: USB bus 1 deregistered ohci_hcd: probe of 0000:00:02.0 failed with error -75 ACPI: PCI Interrupt Link [LNK4] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:0f.0[A] -> GSI 10 (level, low) -> IRQ 10 ohci_hcd 0000:00:0f.0: OHCI Host Controller ohci_hcd 0000:00:0f.0: USB HC TakeOver from BIOS/SMM ohci_hcd 0000:00:0f.0: irq 10, pci mem 0xd4009000 ohci_hcd 0000:00:0f.0: new USB bus registered, assigned bus number 1 ohci_hcd 0000:00:0f.0: resetting from state 'reset', control = 0x0 ohci_hcd 0000:00:0f.0: init err (00002edf 0000) ohci_hcd 0000:00:0f.0: can't start ohci_hcd 0000:00:0f.0: stop reset controller (state 0x00) ohci_hcd 0000:00:0f.0: OHCI controller state ohci_hcd 0000:00:0f.0: OHCI 1.0, with legacy support registers ohci_hcd 0000:00:0f.0: control 0x0c0 HCFS=suspend CBSR=0 ohci_hcd 0000:00:0f.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:0f.0: intrstatus 0x00000000 ohci_hcd 0000:00:0f.0: intrenable 0x00000000 ohci_hcd 0000:00:0f.0: hcca frame #0000 ohci_hcd 0000:00:0f.0: roothub.a 03000003 POTPGT=3 NDP=3 ohci_hcd 0000:00:0f.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:0f.0: roothub.status 00000000 ohci_hcd 0000:00:0f.0: roothub.portstatus [0] 0x00000000 ohci_hcd 0000:00:0f.0: roothub.portstatus [1] 0x00000000 ohci_hcd 0000:00:0f.0: roothub.portstatus [2] 0x00000000 ohci_hcd 0000:00:0f.0: init error -75 ohci_hcd 0000:00:0f.0: remove, state 0 ohci_hcd 0000:00:0f.0: roothub graceful disconnect usb_disconnect nodev ohci_hcd 0000:00:0f.0: stop reset controller (state 0x00) ohci_hcd 0000:00:0f.0: OHCI controller state ohci_hcd 0000:00:0f.0: OHCI 1.0, with legacy support registers ohci_hcd 0000:00:0f.0: control 0x000 HCFS=reset CBSR=0 ohci_hcd 0000:00:0f.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:0f.0: intrstatus 0x00000000 ohci_hcd 0000:00:0f.0: intrenable 0x00000000 ohci_hcd 0000:00:0f.0: roothub.a 03000003 POTPGT=3 NDP=3 ohci_hcd 0000:00:0f.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:0f.0: roothub.status 00000000 ohci_hcd 0000:00:0f.0: roothub.portstatus [0] 0x00000000 ohci_hcd 0000:00:0f.0: roothub.portstatus [1] 0x00000000 ohci_hcd 0000:00:0f.0: roothub.portstatus [2] 0x00000000 ohci_hcd 0000:00:0f.0: USB bus 1 deregistered ohci_hcd: probe of 0000:00:0f.0 failed with error -75 [...] Then, in a silent suggestion from David Brownell, I hacked ohci_hcd.c, forcing the OHCI_QUIRK_INITRESET flag behaviour, build a new kernel and modules and voila', all USB is back to functionality. Here goes the complete dmesg output after the new kernel boot, where everything seems to work as it should (note: I'm using Ingo Molnar's voluntary-preempt-2.6.9-rc2-mm3-S6 patch): [...] usbcore: registered new driver usbfs usbcore: registered new driver hub ohci_hcd: 2004 Feb 02 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) ohci_hcd: block sizes: ed 64 td 64 ACPI: PCI Interrupt Link [LNK8] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:02.0[A] -> GSI 10 (level, low) -> IRQ 10 ohci_hcd 0000:00:02.0: OHCI Host Controller ohci_hcd 0000:00:02.0: USB HC TakeOver from BIOS/SMM requesting new irq thread for IRQ10... ohci_hcd 0000:00:02.0: irq 10, pci mem 0xd4000000 ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 1 ohci_hcd 0000:00:02.0: resetting from state 'reset', control = 0x0 ohci_hcd 0000:00:02.0: OHCI_QUIRK_INITRESET forced! ohci_hcd 0000:00:02.0: OHCI controller state ohci_hcd 0000:00:02.0: OHCI 1.0, with legacy support registers ohci_hcd 0000:00:02.0: control 0x083 HCFS=operational CBSR=3 ohci_hcd 0000:00:02.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:02.0: intrstatus 0x00000004 SF ohci_hcd 0000:00:02.0: intrenable 0x8000000a MIE RD WDH ohci_hcd 0000:00:02.0: hcca frame #0007 ohci_hcd 0000:00:02.0: roothub.a 03000203 POTPGT=3 NPS NDP=3 ohci_hcd 0000:00:02.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:02.0: roothub.status 00008000 DRWE ohci_hcd 0000:00:02.0: roothub.portstatus [0] 0x00000100 PPS ohci_hcd 0000:00:02.0: roothub.portstatus [1] 0x00000100 PPS ohci_hcd 0000:00:02.0: roothub.portstatus [2] 0x00000100 PPS usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb1: default language 0x0409 usb usb1: Product: OHCI Host Controller usb usb1: Manufacturer: Linux 2.6.9-rc2-mm3-S6.1 ohci_hcd usb usb1: SerialNumber: 0000:00:02.0 usb usb1: hotplug usb usb1: adding 1-0:1.0 (config #1, interface 0) usb 1-0:1.0: hotplug hub 1-0:1.0: usb_probe_interface hub 1-0:1.0: usb_probe_interface - got id hub 1-0:1.0: USB hub found hub 1-0:1.0: 3 ports detected hub 1-0:1.0: standalone hub hub 1-0:1.0: no power switching (usb 1.0) hub 1-0:1.0: global over-current protection hub 1-0:1.0: power on to power good time: 6ms hub 1-0:1.0: local power source is good hub 1-0:1.0: no over-current condition exists ohci_hcd 0000:00:02.0: created debug files ACPI: PCI Interrupt Link [LNK4] enabled at IRQ 10 ACPI: PCI interrupt 0000:00:0f.0[A] -> GSI 10 (level, low) -> IRQ 10 ohci_hcd 0000:00:0f.0: OHCI Host Controller ohci_hcd 0000:00:0f.0: USB HC TakeOver from BIOS/SMM ohci_hcd 0000:00:0f.0: irq 10, pci mem 0xd4009000 ohci_hcd 0000:00:0f.0: new USB bus registered, assigned bus number 2 ohci_hcd 0000:00:0f.0: resetting from state 'reset', control = 0x0 ohci_hcd 0000:00:02.0: suspend root hub ohci_hcd 0000:00:0f.0: OHCI_QUIRK_INITRESET forced! ohci_hcd 0000:00:0f.0: OHCI controller state ohci_hcd 0000:00:0f.0: OHCI 1.0, with legacy support registers ohci_hcd 0000:00:0f.0: control 0x083 HCFS=operational CBSR=3 ohci_hcd 0000:00:0f.0: cmdstatus 0x00000 SOC=0 ohci_hcd 0000:00:0f.0: intrstatus 0x00000004 SF ohci_hcd 0000:00:0f.0: intrenable 0x8000000a MIE RD WDH ohci_hcd 0000:00:0f.0: hcca frame #0007 ohci_hcd 0000:00:0f.0: roothub.a 03000203 POTPGT=3 NPS NDP=3 ohci_hcd 0000:00:0f.0: roothub.b 00000000 PPCM=0000 DR=0000 ohci_hcd 0000:00:0f.0: roothub.status 00008000 DRWE ohci_hcd 0000:00:0f.0: roothub.portstatus [0] 0x00000100 PPS ohci_hcd 0000:00:0f.0: roothub.portstatus [1] 0x00000100 PPS ohci_hcd 0000:00:0f.0: roothub.portstatus [2] 0x00000100 PPS usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb2: default language 0x0409 usb usb2: Product: OHCI Host Controller usb usb2: Manufacturer: Linux 2.6.9-rc2-mm3-S6.1 ohci_hcd usb usb2: SerialNumber: 0000:00:0f.0 usb usb2: hotplug usb usb2: adding 2-0:1.0 (config #1, interface 0) usb 2-0:1.0: hotplug hub 2-0:1.0: usb_probe_interface hub 2-0:1.0: usb_probe_interface - got id hub 2-0:1.0: USB hub found hub 2-0:1.0: 3 ports detected hub 2-0:1.0: standalone hub hub 2-0:1.0: no power switching (usb 1.0) hub 2-0:1.0: global over-current protection hub 2-0:1.0: power on to power good time: 6ms hub 2-0:1.0: local power source is good hub 2-0:1.0: no over-current condition exists ohci_hcd 0000:00:0f.0: created debug files ohci_hcd 0000:00:0f.0: suspend root hub [...] OK. And yes, I know this is a very dirty hack (see attached patch), that most probably only serves for me and this specific hardware configuration. I didn't found any other way to set this ohci->flag |= OHCI_QUIRK_INITRESET; other than forcing it being hardcoded. Sorry. So I'll ask if this flag may be set as an ohci_hcd module parameter or else? Please forgive my lack of knowledge in this matter. Probably is just lazziness :) Cheers and thanks anyway. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org [-- Attachment #2: ohci_hcd-quirk-initreset-force.patch --] [-- Type: text/plain, Size: 784 bytes --] diff -duPNr linux.0/drivers/usb/host/ohci-hcd.c linux.1/drivers/usb/host/ohci-hcd.c --- linux.0/drivers/usb/host/ohci-hcd.c 2004-09-24 11:07:00.982690336 +0100 +++ linux.1/drivers/usb/host/ohci-hcd.c 2004-09-24 11:19:06.232435616 +0100 @@ -564,11 +564,12 @@ * (SiS, OPTi ...), so reset again instead. SiS doesn't need * this if we write fmInterval after we're OPERATIONAL. */ - if (ohci->flags & OHCI_QUIRK_INITRESET) { + ohci_dbg(ohci, "OHCI_QUIRK_INITRESET forced!\n"); +/* if (ohci->flags & OHCI_QUIRK_INITRESET) { */ writel (ohci->hc_control, &ohci->regs->control); // flush those writes (void) ohci_readl (&ohci->regs->control); - } +/* } */ writel (ohci->fminterval, &ohci->regs->fminterval); /* Tell the controller where the control and bulk lists are ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-24 12:43 ` OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) Rui Nuno Capela @ 2004-09-24 12:55 ` Ingo Molnar 2004-09-24 14:00 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-24 12:55 UTC (permalink / raw) To: Rui Nuno Capela Cc: linux-kernel, David Brownell, Karsten Wiese, Bjorn Helgaas, David Brownell, Roman Weissgaerber, linux-usb-devel, K.R. Foley * Rui Nuno Capela <rncbc@rncbc.org> wrote: > Then, in a silent suggestion from David Brownell, I hacked ohci_hcd.c, > forcing the OHCI_QUIRK_INITRESET flag behaviour, build a new kernel and > modules and voila', all USB is back to functionality. > diff -duPNr linux.0/drivers/usb/host/ohci-hcd.c linux.1/drivers/usb/host/ohci-hcd.c > --- linux.0/drivers/usb/host/ohci-hcd.c 2004-09-24 11:07:00.982690336 +0100 > +++ linux.1/drivers/usb/host/ohci-hcd.c 2004-09-24 11:19:06.232435616 +0100 > @@ -564,11 +564,12 @@ > * (SiS, OPTi ...), so reset again instead. SiS doesn't need > * this if we write fmInterval after we're OPERATIONAL. > */ > - if (ohci->flags & OHCI_QUIRK_INITRESET) { > + ohci_dbg(ohci, "OHCI_QUIRK_INITRESET forced!\n"); > +/* if (ohci->flags & OHCI_QUIRK_INITRESET) { */ > writel (ohci->hc_control, &ohci->regs->control); > // flush those writes > (void) ohci_readl (&ohci->regs->control); > - } > +/* } */ > writel (ohci->fminterval, &ohci->regs->fminterval); it would be cleaner to make this dependent on your chipset/vendor-id - look how OHCI_QUIRK_INITRESET gets activated for e.g. SiS (PCI_VENDOR_ID_SI) and OPTi (PCI_VENDOR_ID_OPTI). What is your box's pdev->vendor and pdev->device? (lspci -v) (If it's indeed a quirk that is needed, not some other fix.) Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-24 12:55 ` Ingo Molnar @ 2004-09-24 14:00 ` Rui Nuno Capela 2004-09-24 16:16 ` Bjorn Helgaas 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-24 14:00 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, David Brownell, Karsten Wiese, Bjorn Helgaas, David Brownell, Roman Weissgaerber, linux-usb-devel, K.R. Foley [-- Attachment #1: Type: text/plain, Size: 1256 bytes --] Ingo Molnar wrote: > > * Rui Nuno Capela wrote: > >> Then, in a silent suggestion from David Brownell, I hacked ohci_hcd.c, >> forcing the OHCI_QUIRK_INITRESET flag behaviour, build a new kernel and >> modules and voila', all USB is back to functionality. > > > it would be cleaner to make this dependent on your chipset/vendor-id - > look how OHCI_QUIRK_INITRESET gets activated for e.g. SiS > (PCI_VENDOR_ID_SI) and OPTi (PCI_VENDOR_ID_OPTI). What is your box's > pdev->vendor and pdev->device? (lspci -v) (If it's indeed a quirk that > is needed, not some other fix.) > Here it is: (lspci -n) 00:02.0 Class 0c03: 10b9:5237 (rev 03) (lspci -v) 00:02.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03) (prog-if 10 [OHCI]) Subsystem: Hewlett-Packard Company: Unknown device 0850 Flags: bus master, medium devsel, latency 64, IRQ 10 Memory at d4000000 (32-bit, non-prefetchable) [size=4K] Capabilities: [60] Power Management version 2 So I made it strictly specific to this hardware vendor PCI_VENDOR_ID_AL (0x10b9) and device PCI_DEVICE_ID_AL_M5237 (0x5237). The attached patch applies now to ohci_pci.c and it just works for me (tm:) Thanks for the suggestion Ingo. I feel better now. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org [-- Attachment #2: ohci_pci-ali-m5237-quirk-initreset.patch --] [-- Type: text/plain, Size: 603 bytes --] diff -duPNr linux.1/drivers/usb/host/ohci-pci.c linux.2/drivers/usb/host/ohci-pci.c --- linux.1/drivers/usb/host/ohci-pci.c 2004-09-24 14:15:37.146541120 +0100 +++ linux.2/drivers/usb/host/ohci-pci.c 2004-09-24 14:26:20.147790072 +0100 @@ -95,6 +95,13 @@ ohci_info(ohci, "SiS init quirk\n"); } + /* ALI M5237 also acts wierd during init */ + else if (pdev->vendor == PCI_VENDOR_ID_AL + && pdev->device == PCI_DEVICE_ID_AL_M5237) { + ohci->flags = OHCI_QUIRK_INITRESET; + ohci_info (ohci, "ALI M5237 init quirk\n"); + } + } /* NOTE: there may have already been a first reset, to ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-24 14:00 ` Rui Nuno Capela @ 2004-09-24 16:16 ` Bjorn Helgaas 2004-09-25 23:37 ` David Brownell 0 siblings, 1 reply; 224+ messages in thread From: Bjorn Helgaas @ 2004-09-24 16:16 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, linux-kernel, David Brownell, Karsten Wiese, David Brownell, Roman Weissgaerber, linux-usb-devel, K.R. Foley [-- Attachment #1: Type: text/plain, Size: 848 bytes --] My box has: 0000:00:0f.2 USB Controller: ServerWorks OSB4/CSB5 OHCI USB Controller (rev 05) (prog-if 10 [OHCI]) Subsystem: ServerWorks OSB4/CSB5 OHCI USB Controller Flags: bus master, medium devsel, latency 64, IRQ 10 Memory at f5e70000 (32-bit, non-prefetchable) 0000:00:0f.2 Class 0c03: 1166:0220 (rev 05) The attached patch (which applies on top of Rui's patch for ALI M5237) fixes the problem for my DL360. Here's the relevant output: ohci_hcd 0000:00:0f.2: ServerWorks OSB4/CSB5 OHCI USB Controller ohci_hcd 0000:00:0f.2: irq 10, pci mem 0xf5e70000 ohci_hcd 0000:00:0f.2: new USB bus registered, assigned bus number 1 ohci_hcd 0000:00:0f.2: Serverworks OSB4/CSB5 init quirk hub 1-0:1.0: USB hub found hub 1-0:1.0: 4 ports detected USB Universal Host Controller Interface driver v2.2 Thanks for chasing this down! [-- Attachment #2: ohci_pci-serverworks-quirk-initreset.patch --] [-- Type: text/x-diff, Size: 690 bytes --] diff -u -ur 2.6.9-rc2-mm2-orig/drivers/usb/host/ohci-pci.c 2.6.9-rc2-mm2/drivers/usb/host/ohci-pci.c --- 2.6.9-rc2-mm2-orig/drivers/usb/host/ohci-pci.c 2004-09-24 09:52:43.000000000 -0600 +++ 2.6.9-rc2-mm2/drivers/usb/host/ohci-pci.c 2004-09-24 09:50:44.000000000 -0600 @@ -102,6 +102,13 @@ ohci_info (ohci, "ALI M5237 init quirk\n"); } + /* Serverworks OSB4/CSB5 also acts wierd during init */ + else if (pdev->vendor == PCI_VENDOR_ID_SERVERWORKS + && pdev->device == PCI_DEVICE_ID_SERVERWORKS_OSB4USB) { + ohci->flags = OHCI_QUIRK_INITRESET; + ohci_info (ohci, "Serverworks OSB4/CSB5 init quirk\n"); + } + } /* NOTE: there may have already been a first reset, to ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-24 16:16 ` Bjorn Helgaas @ 2004-09-25 23:37 ` David Brownell 2004-09-26 13:09 ` Rui Nuno Capela 2004-09-27 15:11 ` Bjorn Helgaas 0 siblings, 2 replies; 224+ messages in thread From: David Brownell @ 2004-09-25 23:37 UTC (permalink / raw) To: Rui Nuno Capela, Bjorn Helgaas Cc: Ingo Molnar, linux-kernel, Karsten Wiese, Roman Weissgaerber, linux-usb-devel, K.R. Foley [-- Attachment #1: Type: text/plain, Size: 348 bytes --] On Friday 24 September 2004 9:16 am, Bjorn Helgaas wrote: > > The attached patch (which applies on top of Rui's patch for > ALI M5237) fixes the problem for my DL360. Hmm, I'd rather avoid needing a quirk table ... especially when I've always suspected this is some subtle bug in the way Linux initializes! Does this patch behave too? - Dave [-- Attachment #2: Diff --] [-- Type: text/x-diff, Size: 2173 bytes --] Cope differently with hardware that doesn't act like we expect: kick in the "initreset" quirk automatically, so we won't need to maintain a quirk table. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> --- 1.82/drivers/usb/host/ohci-hcd.c Mon Sep 20 10:31:27 2004 +++ edited/drivers/usb/host/ohci-hcd.c Sat Sep 25 15:53:19 2004 @@ -545,6 +545,7 @@ /* 2msec timelimit here means no irqs/preempt */ spin_lock_irq (&ohci->lock); +retry: /* HC Reset requires max 10 us delay */ writel (OHCI_HCR, &ohci->regs->cmdstatus); temp = 30; /* ... allow extra time */ @@ -563,6 +564,8 @@ * ... but some hardware won't init fmInterval "by the book" * (SiS, OPTi ...), so reset again instead. SiS doesn't need * this if we write fmInterval after we're OPERATIONAL. + * Unclear about ALi, ServerWorks, and others ... this could + * easily be a longstanding bug in chip init on Linux. */ if (ohci->flags & OHCI_QUIRK_INITRESET) { writel (ohci->hc_control, &ohci->regs->control); @@ -586,6 +589,11 @@ */ if ((ohci_readl (&ohci->regs->fminterval) & 0x3fff0000) == 0 || !ohci_readl (&ohci->regs->periodicstart)) { + if (!(ohci->flags & OHCI_QUIRK_INITRESET)) { + ohci->flags |= OHCI_QUIRK_INITRESET; + ohci_dbg (ohci, "enabling initreset quirk\n"); + goto retry; + } spin_unlock_irq (&ohci->lock); ohci_err (ohci, "init err (%08x %04x)\n", ohci_readl (&ohci->regs->fminterval), --- 1.38/drivers/usb/host/ohci-pci.c Fri Sep 10 17:57:52 2004 +++ edited/drivers/usb/host/ohci-pci.c Sat Sep 25 15:51:41 2004 @@ -69,8 +69,6 @@ && pdev->device == 0xc861) { ohci_info (ohci, "WARNING: OPTi workarounds unavailable\n"); - /* OPTi sometimes acts wierd during init */ - ohci->flags = OHCI_QUIRK_INITRESET; } /* Check for NSC87560. We have to look at the bridge (fn1) to @@ -88,13 +86,6 @@ ohci_info (ohci, "Using NSC SuperIO setup\n"); } } - - /* SiS sometimes acts wierd during init */ - else if (pdev->vendor == PCI_VENDOR_ID_SI) { - ohci->flags = OHCI_QUIRK_INITRESET; - ohci_info(ohci, "SiS init quirk\n"); - } - } /* NOTE: there may have already been a first reset, to ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-25 23:37 ` David Brownell @ 2004-09-26 13:09 ` Rui Nuno Capela 2004-09-27 15:11 ` Bjorn Helgaas 1 sibling, 0 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-26 13:09 UTC (permalink / raw) To: David Brownell Cc: Bjorn Helgaas, Ingo Molnar, linux-kernel, Karsten Wiese, Roman Weissgaerber, linux-usb-devel, K.R. Foley David Brownell wrote: > Bjorn Helgaas wrote: >> >> The attached patch (which applies on top of Rui's patch for >> ALI M5237) fixes the problem for my DL360. > > Hmm, I'd rather avoid needing a quirk table ... especially > when I've always suspected this is some subtle bug in the > way Linux initializes! Does this patch behave too? > The patch works on my ALI M5237, having ohci_hcd (re)starting properly. No need for my previous specific patch. Thanks. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) 2004-09-25 23:37 ` David Brownell 2004-09-26 13:09 ` Rui Nuno Capela @ 2004-09-27 15:11 ` Bjorn Helgaas 1 sibling, 0 replies; 224+ messages in thread From: Bjorn Helgaas @ 2004-09-27 15:11 UTC (permalink / raw) To: David Brownell Cc: Rui Nuno Capela, Ingo Molnar, linux-kernel, Karsten Wiese, Roman Weissgaerber, linux-usb-devel, K.R. Foley On Saturday 25 September 2004 5:37 pm, David Brownell wrote: > On Friday 24 September 2004 9:16 am, Bjorn Helgaas wrote: > > > > The attached patch (which applies on top of Rui's patch for > > ALI M5237) fixes the problem for my DL360. > > Hmm, I'd rather avoid needing a quirk table ... especially > when I've always suspected this is some subtle bug in the > way Linux initializes! Does this patch behave too? Yes, your patch seems to work on my DL360 (ServerWorks OSB4/CSB5 OHCI) as well. ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar 2004-09-23 12:57 ` Norberto Bensa 2004-09-23 13:35 ` Rui Nuno Capela @ 2004-09-23 21:12 ` Ingo Molnar 2004-09-24 0:32 ` Rui Nuno Capela ` (2 more replies) 2 siblings, 3 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-23 21:12 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, Mark_H_Johnson, K.R. Foley, Rui Nuno Capela i've released the -S5 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm3-S5 this iteration fixes the jackd lockup reported by Rui Nuno Capela. since Andrew has not released -mm3 yet i've uploaded his latest intermediate tree plus two additional fixes that will likely show up in the real -mm3, and unrolled some of the more experimental scheduler stuff. The patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://redhat.com/~mingo/voluntary-preempt/2.6.9-rc2-pre-mm3-mingo.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar @ 2004-09-24 0:32 ` Rui Nuno Capela 2004-09-24 2:22 ` K.R. Foley 2004-09-24 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S6 Ingo Molnar 2 siblings, 0 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-24 0:32 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, mark_h_johnson, K.R. Foley [-- Attachment #1: Type: text/plain, Size: 818 bytes --] Dear Sir Molnar, > > i've released the -S5 VP patch: > This is going GREAT! While I'm still writing this very lines (via some webmail client on konqui), my dreaded P4/HT box is pumping hard along jackd -R -p 128 -n2, for more than one hour now, with two qsynth/fluidsynth instances up, ardour continuous 8-track in loop-streaming playback nonstop, and also some more juk and artsd (kde 3.3 here) all trashing my-full-head-of-sound in my phones. No xrun, NO lockup, NO nothing. And still counting... I even have CONFIG_SCHED_SMT set, as you can check by attached config file. Amazing, to say the least, if you remember my latest complaints ;) Ingo, you're a champ! Gotta go to sleep now, it was worth the effort staying awake this late... tomorrow is a nother day :) -- rncbc aka Rui Nuno Capela rncbc@rncbc.org [-- Attachment #2: config-2.6.9-rc2-mm3-S5.0smp.gz --] [-- Type: application/x-gzip, Size: 7807 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar 2004-09-24 0:32 ` Rui Nuno Capela @ 2004-09-24 2:22 ` K.R. Foley 2004-09-24 3:30 ` K.R. Foley 2004-09-24 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S6 Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-24 2:22 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson, Rui Nuno Capela Ingo Molnar wrote: > i've released the -S5 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm3-S5 This one seems to bring back some issues with the network interface. The only noticeable symptom is dropping ~30 percent of new telnet connections under heavy load. When not loaded it still drops ~5 percent. I had no dropped connections with S4 even when loaded. This just happens to be one of things that I have been testing manually since I noticed some problems with previous patches. Currently using an SMC card with a DEC 21140 chip and the tulip driver on my SMP system. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-24 2:22 ` K.R. Foley @ 2004-09-24 3:30 ` K.R. Foley 2004-09-24 7:40 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-24 3:30 UTC (permalink / raw) To: K.R. Foley Cc: Ingo Molnar, linux-kernel, Lee Revell, Mark_H_Johnson, Rui Nuno Capela K.R. Foley wrote: > Ingo Molnar wrote: > >> i've released the -S5 VP patch: >> >> >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm3-S5 >> > > > This one seems to bring back some issues with the network interface. The > only noticeable symptom is dropping ~30 percent of new telnet > connections under heavy load. When not loaded it still drops ~5 percent. > I had no dropped connections with S4 even when loaded. This just happens > to be one of things that I have been testing manually since I noticed > some problems with previous patches. > > Currently using an SMC card with a DEC 21140 chip and the tulip driver > on my SMP system. > > kr The following, on top of Ingo's patch above, fixes the problem with dropping new connections and doesn't have any adverse affects that I've seen: --- linux-2.6.9-rc2-pre-mm3/net/ipv4/tcp_output.c.orig 2004-09-23 22:16:42.249435870 -0500 +++ linux-2.6.9-rc2-pre-mm3/net/ipv4/tcp_output.c 2004-09-23 22:12:03.911811945 -0500 @@ -699,11 +699,6 @@ tcp_minshall_update(tp, mss_now, skb); sent_pkts = 1; - /* - * Break out early - we'll continue later: - */ - if (softirq_need_resched()) - break; } if (sent_pkts) { ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-24 3:30 ` K.R. Foley @ 2004-09-24 7:40 ` Ingo Molnar 2004-09-24 11:05 ` K.R. Foley 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-24 7:40 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson, Rui Nuno Capela * K.R. Foley <kr@cybsft.com> wrote: > The following, on top of Ingo's patch above, fixes the problem with > dropping new connections and doesn't have any adverse affects that > I've seen: > > --- linux-2.6.9-rc2-pre-mm3/net/ipv4/tcp_output.c.orig 2004-09-23 > 22:16:42.249435870 -0500 > +++ linux-2.6.9-rc2-pre-mm3/net/ipv4/tcp_output.c 2004-09-23 > 22:12:03.911811945 -0500 > @@ -699,11 +699,6 @@ > > tcp_minshall_update(tp, mss_now, skb); > sent_pkts = 1; > - /* > - * Break out early - we'll continue later: > - */ > - if (softirq_need_resched()) > - break; hm, ok, i'll revert this in my tree. I suspect we'll see some latencies resurfacing under high network load again, but correctness goes first obviously. If then we'll have to find some other method to break that critical path. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-24 7:40 ` Ingo Molnar @ 2004-09-24 11:05 ` K.R. Foley 2004-09-24 11:45 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-24 11:05 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson, Rui Nuno Capela Ingo Molnar wrote: > * K.R. Foley <kr@cybsft.com> wrote: > > >>The following, on top of Ingo's patch above, fixes the problem with >>dropping new connections and doesn't have any adverse affects that >>I've seen: >> >>--- linux-2.6.9-rc2-pre-mm3/net/ipv4/tcp_output.c.orig 2004-09-23 >>22:16:42.249435870 -0500 >>+++ linux-2.6.9-rc2-pre-mm3/net/ipv4/tcp_output.c 2004-09-23 >>22:12:03.911811945 -0500 >>@@ -699,11 +699,6 @@ >> >> tcp_minshall_update(tp, mss_now, skb); >> sent_pkts = 1; >>- /* >>- * Break out early - we'll continue later: >>- */ >>- if (softirq_need_resched()) >>- break; > > > hm, ok, i'll revert this in my tree. I suspect we'll see some latencies > resurfacing under high network load again, but correctness goes first > obviously. If then we'll have to find some other method to break that > critical path. > > Ingo > Ingo, Maybe this wasn't the right way to fix the problem? I just looked at the S4 patch and it had the same change in it, but did not exhibit the same problem. Not knowing exactly what I was looking for, I just started looking for obvious changes that might affect dropping tcp connections and this one seemed reasonable. I made the change and the problem went away. Maybe this needs looking at a little closer. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 2004-09-24 11:05 ` K.R. Foley @ 2004-09-24 11:45 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-24 11:45 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson, Rui Nuno Capela * K.R. Foley <kr@cybsft.com> wrote: > Maybe this wasn't the right way to fix the problem? I just looked at > the S4 patch and it had the same change in it, but did not exhibit the > same problem. Not knowing exactly what I was looking for, I just > started looking for obvious changes that might affect dropping tcp > connections and this one seemed reasonable. I made the change and the > problem went away. Maybe this needs looking at a little closer. S4 had other problems with softirq processing so i'd not be surprised if that magically fixed the problem introduced by this change. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm3-S6 2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar 2004-09-24 0:32 ` Rui Nuno Capela 2004-09-24 2:22 ` K.R. Foley @ 2004-09-24 7:44 ` Ingo Molnar 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-24 7:44 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, Mark_H_Johnson, K.R. Foley, Rui Nuno Capela i've released the -S6 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm3-S6 this iteration fixes the 'dropped tcp connections' problem reported and fixed by K.R. Foley. The patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://redhat.com/~mingo/voluntary-preempt/2.6.9-rc2-pre-mm3-mingo.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm3-S6 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-24 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S6 Ingo Molnar @ 2004-09-28 0:05 ` Ingo Molnar 2004-09-28 20:17 ` Rui Nuno Capela ` (6 more replies) 0 siblings, 7 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-28 0:05 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, K.R. Foley, Rui Nuno Capela i've released the -S7 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 this iteration is mainly a merge to -mm4. (-mm4 includes PREEMPT_BKL so the -VP patch got smaller again - at least until -mm carries it.) The patch undoes some more experimental scheduler patches that -mm includes. The patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc2.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm4/2.6.9-rc2-mm4.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar @ 2004-09-28 20:17 ` Rui Nuno Capela 2004-09-28 21:03 ` Rui Nuno Capela 2004-09-29 17:43 ` Lee Revell ` (5 subsequent siblings) 6 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-28 20:17 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, K.R. Foley Ingo Molnar wrote: > > i've released the -S7 VP patch: > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > Works here on SMP/SMT (P4/HT). However I have a probable off-topic complaint about the -mm4 (both vanilla and VP): My Wacom Graphire USB mouse wheel stopped to work properly, at least on X. Trying to scroll with the mouse wheel just causes flicker and the view stucks in the same position. Again this was surely introduced on -mm4. Bye now. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 20:17 ` Rui Nuno Capela @ 2004-09-28 21:03 ` Rui Nuno Capela 2004-09-28 21:46 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-28 21:03 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, K.R. Foley > > My Wacom Graphire USB mouse wheel stopped to work properly, at least on > X. Trying to scroll with the mouse wheel just causes flicker and the > view stucks in the same position. > > Again this was surely introduced on -mm4. > Apparently this was solved by applying the specific kernel stuff from linuxwacom-0.6.4 (http://linuxwacom.sourceforge.net). The curious thing is that the tablet is working flawlessly on 2.6.9-rc2 kernels since before -mm4 (either vanilla or VP). Just to clear things out, for now. Sorry for garbage :) -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 21:03 ` Rui Nuno Capela @ 2004-09-28 21:46 ` Rui Nuno Capela 2004-09-28 22:01 ` Matt Heler 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-28 21:46 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, K.R. Foley This is another quirk on -mm4 I have found: I have a couple of outsider modules, both related to webcams, that fail on modprobe wrt same missing kernel symbol: w9968cf: Unknown symbol remap_page_range spca50x: Unknown symbol remap_page_range CU -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 21:46 ` Rui Nuno Capela @ 2004-09-28 22:01 ` Matt Heler 0 siblings, 0 replies; 224+ messages in thread From: Matt Heler @ 2004-09-28 22:01 UTC (permalink / raw) To: Rui Nuno Capela; +Cc: Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley This is due in part b/c of the patches andrew merged that changed remap_page_range to remap_pfn_range. On Tuesday 28 September 2004 2:46 pm, Rui Nuno Capela wrote: > This is another quirk on -mm4 I have found: I have a couple of outsider > modules, both related to webcams, that fail on modprobe wrt same missing > kernel symbol: > > w9968cf: Unknown symbol remap_page_range > spca50x: Unknown symbol remap_page_range > > CU ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar 2004-09-28 20:17 ` Rui Nuno Capela @ 2004-09-29 17:43 ` Lee Revell 2004-09-29 18:40 ` Lee Revell ` (4 subsequent siblings) 6 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-29 17:43 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, rl On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > i've released the -S7 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > I think I might be seeing the mysterious network problems that K. R. Foley reported. The symptoms are that Evolution often fails to download mail with various errors like "Interrupted system call", "Connection reset by peer". I can't rule out a bug in Evolution, but this did not seem to happen with 2.6.8.1. These problems could also be related to the changes to the via-rhine driver. ISTR that when the VP patches were based on 2.6.8.1, I applied the patches from -mm4 affecting via-rhine, and that was when the problem was introduced. I will try backing these out and see if the problem goes away. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar 2004-09-28 20:17 ` Rui Nuno Capela 2004-09-29 17:43 ` Lee Revell @ 2004-09-29 18:40 ` Lee Revell 2004-09-29 20:30 ` Ingo Molnar 2004-10-02 3:02 ` Lee Revell ` (3 subsequent siblings) 6 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-29 18:40 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > i've released the -S7 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 Disabling latency tracing does not seem to work. To demonstrate: echo 0 > /proc/sys/kernel/preempt_max_latency echo 0 > /proc/sys/kernel/trace_enabled modprobe foo-module (will reliably cause a ~3-600 usec latency in resolve_symbol) check /proc/latency_trace, or dmesg, it will be the modprobe latency. cat /proc/sys/kernel/trace_enabled, it is still 0 This definitely worked at one point. Not sure when it broke. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-29 18:40 ` Lee Revell @ 2004-09-29 20:30 ` Ingo Molnar 2004-09-29 20:34 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-29 20:30 UTC (permalink / raw) To: Lee Revell; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela * Lee Revell <rlrevell@joe-job.com> wrote: > On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > > i've released the -S7 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > > Disabling latency tracing does not seem to work. To demonstrate: > > echo 0 > /proc/sys/kernel/preempt_max_latency > echo 0 > /proc/sys/kernel/trace_enabled > modprobe foo-module (will reliably cause a ~3-600 usec latency in resolve_symbol) > check /proc/latency_trace, or dmesg, it will be the modprobe latency. > cat /proc/sys/kernel/trace_enabled, it is still 0 > > This definitely worked at one point. Not sure when it broke. is it the full modprobe latency trace, or just the header? Putting zero into trace_enabled wont disable the critical-section-timing code - it only disables the function tracer. Since /proc/latency_trace takes the header portion from the latency-timing code that might change. To disable both do something like: echo 100000000 > /proc/sys/kernel/preempt_max_latency echo 0 > /proc/sys/kernel/trace_enabled Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-29 20:30 ` Ingo Molnar @ 2004-09-29 20:34 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-29 20:34 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Wed, 2004-09-29 at 16:30, Ingo Molnar wrote: > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > > > > Disabling latency tracing does not seem to work. To demonstrate: > is it the full modprobe latency trace, or just the header? Putting zero > into trace_enabled wont disable the critical-section-timing code - it > only disables the function tracer. Since /proc/latency_trace takes the > header portion from the latency-timing code that might change. To > disable both do something like: > > echo 100000000 > /proc/sys/kernel/preempt_max_latency > echo 0 > /proc/sys/kernel/trace_enabled OK, thanks for clarifying. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar ` (2 preceding siblings ...) 2004-09-29 18:40 ` Lee Revell @ 2004-10-02 3:02 ` Lee Revell 2004-10-02 9:50 ` Ingo Molnar 2004-10-03 2:01 ` Lee Revell ` (2 subsequent siblings) 6 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-02 3:02 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > i've released the -S7 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > OK, I have been busy with other things, so haven't been able to test as much. There might be a few regressions with S7. Here is a trace from the ext3 journaling code that I never saw before. It starts with some printks from the rtc_interrupt, due to having the rtc-debug patch installed, but these accout for less than 100 usecs of the ~600 usec latency. http://krustophenia.net/testresults.php?dataset=2.6.9-rc2-mm4-S7 This part repeats many times: 00000001 0.127ms (+0.000ms): journal_refile_buffer (journal_commit_transaction) 00000003 0.127ms (+0.000ms): __journal_refile_buffer (journal_refile_buffer) 00000003 0.128ms (+0.000ms): __journal_unfile_buffer (journal_refile_buffer) 00000002 0.128ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000002 0.128ms (+0.000ms): journal_remove_journal_head (journal_refile_buffer) 00000003 0.129ms (+0.000ms): __journal_remove_journal_head (journal_remove_journal_head) 00000003 0.129ms (+0.000ms): __brelse (__journal_remove_journal_head) 00000003 0.130ms (+0.000ms): journal_free_journal_head (journal_remove_journal_head) 00000003 0.130ms (+0.000ms): kmem_cache_free (journal_free_journal_head) 00000002 0.130ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000001 0.131ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000001 0.131ms (+0.000ms): __brelse (journal_commit_transaction) 00000002 0.132ms (+0.000ms): kfree (journal_commit_transaction) 00000001 0.132ms (+0.000ms): preempt_schedule (journal_commit_transaction) 00000001 0.133ms (+0.000ms): journal_refile_buffer (journal_commit_transaction) 00000003 0.133ms (+0.000ms): __journal_refile_buffer (journal_refile_buffer) 00000003 0.133ms (+0.000ms): __journal_unfile_buffer (journal_refile_buffer) 00000002 0.134ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000002 0.134ms (+0.000ms): journal_remove_journal_head (journal_refile_buffer) 00000003 0.135ms (+0.000ms): __journal_remove_journal_head (journal_remove_journal_head) 00000003 0.135ms (+0.000ms): __brelse (__journal_remove_journal_head) 00000003 0.135ms (+0.000ms): journal_free_journal_head (journal_remove_journal_head) 00000003 0.136ms (+0.000ms): kmem_cache_free (journal_free_journal_head) 00000002 0.136ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000001 0.136ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000001 0.137ms (+0.000ms): __brelse (journal_commit_transaction) 00000002 0.137ms (+0.000ms): kfree (journal_commit_transaction) 00000001 0.138ms (+0.000ms): preempt_schedule (journal_commit_transaction) 00000001 0.138ms (+0.000ms): journal_refile_buffer (journal_commit_transaction) 00000003 0.139ms (+0.000ms): __journal_refile_buffer (journal_refile_buffer) 00000003 0.139ms (+0.000ms): __journal_unfile_buffer (journal_refile_buffer) 00000002 0.140ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000002 0.140ms (+0.000ms): journal_remove_journal_head (journal_refile_buffer) 00000003 0.141ms (+0.000ms): __journal_remove_journal_head (journal_remove_journal_head) 00000003 0.141ms (+0.000ms): __brelse (__journal_remove_journal_head) 00000003 0.141ms (+0.000ms): journal_free_journal_head (journal_remove_journal_head) 00000003 0.142ms (+0.000ms): kmem_cache_free (journal_free_journal_head) 00000002 0.142ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000001 0.142ms (+0.000ms): preempt_schedule (journal_refile_buffer) 00000001 0.143ms (+0.001ms): __brelse (journal_commit_transaction) 00000002 0.144ms (+0.000ms): kfree (journal_commit_transaction) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-02 3:02 ` Lee Revell @ 2004-10-02 9:50 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-02 9:50 UTC (permalink / raw) To: Lee Revell; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela * Lee Revell <rlrevell@joe-job.com> wrote: > OK, I have been busy with other things, so haven't been able to test > as much. There might be a few regressions with S7. Here is a trace > from the ext3 journaling code that I never saw before. It starts with > some printks from the rtc_interrupt, due to having the rtc-debug patch > installed, but these accout for less than 100 usecs of the ~600 usec > latency. > > http://krustophenia.net/testresults.php?dataset=2.6.9-rc2-mm4-S7 > > This part repeats many times: > > 00000001 0.127ms (+0.000ms): journal_refile_buffer (journal_commit_transaction) ok, will take another look at this one, it seems we dont break out of the loop early enough. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar ` (3 preceding siblings ...) 2004-10-02 3:02 ` Lee Revell @ 2004-10-03 2:01 ` Lee Revell 2004-10-03 2:14 ` Lee Revell 2004-10-03 20:08 ` Ingo Molnar 2004-10-03 6:37 ` Lee Revell 2004-10-03 21:09 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S8 Ingo Molnar 6 siblings, 2 replies; 224+ messages in thread From: Lee Revell @ 2004-10-03 2:01 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Joel White On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > i've released the -S7 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > I believe we have found a bug. A user reported massive xruns with S7, they turned out to be printk() overhead from tons of "using smp_processor_id() in preemptible code" errors. The trace below repeats over and over. Looks like raid0 is the problem. using smp_processor_id() in preemptible code: kjournald/685 [<c011892a>] smp_processor_id+0x8a/0xa0 [<c0273f67>] raid0_make_request+0x37/0x240 [<c02e1bde>] cond_resched+0xe/0x80 [<c0111608>] mcount+0x14/0x18 [<c020f4a7>] generic_make_request+0x117/0x1a0 [<c01621e6>] submit_bh+0xe6/0x150 [<c020f544>] submit_bio+0x14/0x120 [<c0111608>] mcount+0x14/0x18 [<c020f5a2>] submit_bio+0x72/0x120 [<c0133050>] autoremove_wake_function+0x0/0x60 [<c0111608>] mcount+0x14/0x18 [<c0162a6a>] bio_alloc+0xea/0x1d0 [<c01621e6>] submit_bh+0xe6/0x150 [<c01b022b>] journal_commit_transaction+0x102b/0x1680 [<c02e27b3>] _spin_unlock+0x13/0x40 [<c0136914>] _metered_spin_unlock+0x14/0xa0 [<c0117c51>] find_busiest_group+0xf1/0x310 [<c01de306>] find_next_bit+0x16/0xa0 [<c011815e>] load_balance_newidle+0x8e/0xc0 [<c01178ee>] move_tasks+0xe/0x280 [<c02e27b3>] _spin_unlock+0x13/0x40 [<c0136914>] _metered_spin_unlock+0x14/0xa0 [<c0135059>] sub_preempt_count+0x69/0x80 [<c0135059>] sub_preempt_count+0x69/0x80 [<c01263bf>] del_timer_sync+0xaf/0x160 [<c01de306>] find_next_bit+0x16/0xa0 [<c0111608>] mcount+0x14/0x18 [<c01de306>] find_next_bit+0x16/0xa0 [<c01263bf>] del_timer_sync+0xaf/0x160 [<c0111608>] mcount+0x14/0x18 [<c02e27bf>] _spin_unlock+0x1f/0x40 [<c01b31f3>] kjournald+0xf3/0x270 [<c0133050>] autoremove_wake_function+0x0/0x60 [<c02e2b20>] _spin_unlock_irq+0x20/0x40 [<c0133050>] autoremove_wake_function+0x0/0x60 [<c0117223>] schedule_tail+0x23/0x70 [<c01b30d0>] commit_timeout+0x0/0x20 [<c01b3100>] kjournald+0x0/0x270 [<c0102779>] kernel_thread_helper+0x5/0xc printk: 4203 messages suppressed. using smp_processor_id() in preemptible code: kjournald/685 [<c011892a>] smp_processor_id+0x8a/0xa0 [<c0273f67>] raid0_make_request+0x37/0x240 etc. I have the .config if you need more info. All PREEMPT_ options are enabled. Joel, you reported the same xruns with SCSI and IDE. Are you running raid0 in both cases? Also what is your hardware configuration? Is this regular SMP, or HT? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 2:01 ` Lee Revell @ 2004-10-03 2:14 ` Lee Revell 2004-10-03 2:19 ` Lee Revell 2004-10-03 20:08 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-03 2:14 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Joel White On Sat, 2004-10-02 at 22:01, Lee Revell wrote: > On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > > i've released the -S7 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > > > > I believe we have found a bug. A user reported massive xruns with S7, > they turned out to be printk() overhead from tons of "using > smp_processor_id() in preemptible code" errors. The trace below repeats > over and over. Looks like raid0 is the problem. The exact configuration is 4 SCSI drives in a raid 0, and a single IDE drive. The raid0 code apparently is not preempt safe. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 2:14 ` Lee Revell @ 2004-10-03 2:19 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-03 2:19 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Joel White On Sat, 2004-10-02 at 22:14, Lee Revell wrote: > On Sat, 2004-10-02 at 22:01, Lee Revell wrote: > > On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > > > i've released the -S7 VP patch: > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > > > > > > > I believe we have found a bug. A user reported massive xruns with S7, > > they turned out to be printk() overhead from tons of "using > > smp_processor_id() in preemptible code" errors. The trace below repeats > > over and over. Looks like raid0 is the problem. > > The exact configuration is 4 SCSI drives in a raid 0, and a single IDE > drive. The raid0 code apparently is not preempt safe. s/preempt safe/preempt+SMP safe/. System is a dual PIII-600. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 2:01 ` Lee Revell 2004-10-03 2:14 ` Lee Revell @ 2004-10-03 20:08 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-03 20:08 UTC (permalink / raw) To: Lee Revell; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Joel White * Lee Revell <rlrevell@joe-job.com> wrote: > I believe we have found a bug. A user reported massive xruns with S7, > they turned out to be printk() overhead from tons of "using > smp_processor_id() in preemptible code" errors. The trace below > repeats over and over. Looks like raid0 is the problem. the patch below should fix this issue - it's in rc3-mm1 already. Ingo * Reuben Farrelly <reuben-lkml@reub.net> wrote: > Since upgrading from -mm3 to -mm4, I'm now getting messages like this > logged every second or so: > > Sep 27 18:28:06 tornado kernel: using smp_processor_id() in preemptible code: swapper/1 > Sep 27 18:28:06 tornado kernel: [<c0104dce>] dump_stack+0x17/0x19 > Sep 27 18:28:06 tornado kernel: [<c0117fc6>] smp_processor_id+0x80/0x86 > Sep 27 18:28:06 tornado kernel: [<c0282bf3>] make_request+0x174/0x2e7 > Sep 27 18:28:06 tornado kernel: [<c02073dd>] generic_make_request+0xda/0x190 this is the remove-bkl patch's debugging feature showing that there's more preempt-unsafe disk statistics code in the RAID code. i've attached a patch that introduces preempt and non-preempt versions of the statistics code and updates the block code to use the appropriate ones - does this fix all the smp_processor_id() warnings you get? Ingo --- linux/drivers/block/ll_rw_blk.c.orig +++ linux/drivers/block/ll_rw_blk.c @@ -2099,13 +2099,13 @@ void drive_stat_acct(struct request *rq, return; if (rw == READ) { - disk_stat_add(rq->rq_disk, read_sectors, nr_sectors); + __disk_stat_add(rq->rq_disk, read_sectors, nr_sectors); if (!new_io) - disk_stat_inc(rq->rq_disk, read_merges); + __disk_stat_inc(rq->rq_disk, read_merges); } else if (rw == WRITE) { - disk_stat_add(rq->rq_disk, write_sectors, nr_sectors); + __disk_stat_add(rq->rq_disk, write_sectors, nr_sectors); if (!new_io) - disk_stat_inc(rq->rq_disk, write_merges); + __disk_stat_inc(rq->rq_disk, write_merges); } if (new_io) { disk_round_stats(rq->rq_disk); @@ -2151,12 +2151,12 @@ void disk_round_stats(struct gendisk *di { unsigned long now = jiffies; - disk_stat_add(disk, time_in_queue, + __disk_stat_add(disk, time_in_queue, disk->in_flight * (now - disk->stamp)); disk->stamp = now; if (disk->in_flight) - disk_stat_add(disk, io_ticks, (now - disk->stamp_idle)); + __disk_stat_add(disk, io_ticks, (now - disk->stamp_idle)); disk->stamp_idle = now; } @@ -2957,12 +2957,12 @@ void end_that_request_last(struct reques unsigned long duration = jiffies - req->start_time; switch (rq_data_dir(req)) { case WRITE: - disk_stat_inc(disk, writes); - disk_stat_add(disk, write_ticks, duration); + __disk_stat_inc(disk, writes); + __disk_stat_add(disk, write_ticks, duration); break; case READ: - disk_stat_inc(disk, reads); - disk_stat_add(disk, read_ticks, duration); + __disk_stat_inc(disk, reads); + __disk_stat_add(disk, read_ticks, duration); break; } disk_round_stats(disk); --- linux/include/linux/genhd.h.orig +++ linux/include/linux/genhd.h @@ -112,13 +112,14 @@ struct gendisk { /* * Macros to operate on percpu disk statistics: - * Since writes to disk_stats are serialised through the queue_lock, - * smp_processor_id() should be enough to get to the per_cpu versions - * of statistics counters + * + * The __ variants should only be called in critical sections. The full + * variants disable/enable preemption. */ #ifdef CONFIG_SMP -#define disk_stat_add(gendiskp, field, addnd) \ +#define __disk_stat_add(gendiskp, field, addnd) \ (per_cpu_ptr(gendiskp->dkstats, smp_processor_id())->field += addnd) + #define disk_stat_read(gendiskp, field) \ ({ \ typeof(gendiskp->dkstats->field) res = 0; \ @@ -142,7 +143,8 @@ static inline void disk_stat_set_all(str } #else -#define disk_stat_add(gendiskp, field, addnd) (gendiskp->dkstats.field += addnd) +#define __disk_stat_add(gendiskp, field, addnd) \ + (gendiskp->dkstats.field += addnd) #define disk_stat_read(gendiskp, field) (gendiskp->dkstats.field) static inline void disk_stat_set_all(struct gendisk *gendiskp, int value) { @@ -150,8 +152,21 @@ static inline void disk_stat_set_all(str } #endif -#define disk_stat_inc(gendiskp, field) disk_stat_add(gendiskp, field, 1) +#define disk_stat_add(gendiskp, field, addnd) \ + do { \ + preempt_disable(); \ + __disk_stat_add(gendiskp, field, addnd); \ + preempt_enable(); \ + } while (0) + +#define __disk_stat_dec(gendiskp, field) __disk_stat_add(gendiskp, field, -1) #define disk_stat_dec(gendiskp, field) disk_stat_add(gendiskp, field, -1) + +#define __disk_stat_inc(gendiskp, field) __disk_stat_add(gendiskp, field, 1) +#define disk_stat_inc(gendiskp, field) disk_stat_add(gendiskp, field, 1) + +#define __disk_stat_sub(gendiskp, field, subnd) \ + __disk_stat_add(gendiskp, field, -subnd) #define disk_stat_sub(gendiskp, field, subnd) \ disk_stat_add(gendiskp, field, -subnd) ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar ` (4 preceding siblings ...) 2004-10-03 2:01 ` Lee Revell @ 2004-10-03 6:37 ` Lee Revell 2004-10-03 6:50 ` Lee Revell 2004-10-03 20:05 ` Ingo Molnar 2004-10-03 21:09 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S8 Ingo Molnar 6 siblings, 2 replies; 224+ messages in thread From: Lee Revell @ 2004-10-03 6:37 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > i've released the -S7 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > This one was caused by amlat: preemption latency trace v1.0.7 on 2.6.9-rc2-mm4-VP-S7 ------------------------------------------------------- latency: 264 us, entries: 5 (5) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: amlat/3921, uid:1000 nice:0 policy:1 rt_prio:99 ----------------- => started at: rtc_open+0x12/0x270 => ended at: rtc_open+0x13f/0x270 =======> 00000001 0.000ms (+0.264ms): rtc_open (misc_open) 00000001 0.264ms (+0.000ms): sub_preempt_count (rtc_open) 00000001 0.265ms (+0.000ms): update_max_trace (check_preempt_timing) 00000001 0.265ms (+0.000ms): _mmx_memcpy (update_max_trace) 00000001 0.265ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 6:37 ` Lee Revell @ 2004-10-03 6:50 ` Lee Revell 2004-10-03 7:06 ` Lee Revell 2004-10-03 20:05 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-03 6:50 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Sun, 2004-10-03 at 02:37, Lee Revell wrote: > On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > > i've released the -S7 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > > > > This one was caused by amlat: And here's another produced by "lsof /foo": preemption latency trace v1.0.7 on 2.6.9-rc2-mm4-VP-S7 ------------------------------------------------------- latency: 399 us, entries: 608 (608) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: lsof/4347, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: unix_seq_start+0x10/0x50 => ended at: rtc_interrupt+0x294/0x450 =======> 00000001 0.000ms (+0.000ms): unix_seq_start (seq_read) 00000001 0.000ms (+0.039ms): unix_seq_idx (unix_seq_start) 00000001 0.040ms (+0.000ms): unix_seq_show (seq_read) 00000002 0.040ms (+0.001ms): sock_i_ino (unix_seq_show) 00000002 0.041ms (+0.000ms): seq_printf (unix_seq_show) 00000002 0.042ms (+0.002ms): vsnprintf (seq_printf) 00000002 0.045ms (+0.003ms): number (vsnprintf) 00000002 0.048ms (+0.000ms): skip_atoi (vsnprintf) 00000002 0.049ms (+0.001ms): number (vsnprintf) 00000002 0.050ms (+0.000ms): skip_atoi (vsnprintf) 00000002 0.051ms (+0.000ms): number (vsnprintf) 00000002 0.052ms (+0.000ms): skip_atoi (vsnprintf) 00000002 0.052ms (+0.000ms): number (vsnprintf) 00000002 0.053ms (+0.000ms): skip_atoi (vsnprintf) 00000002 0.053ms (+0.000ms): number (vsnprintf) 00000002 0.054ms (+0.000ms): skip_atoi (vsnprintf) 00000002 0.055ms (+0.000ms): number (vsnprintf) 00000002 0.056ms (+0.000ms): skip_atoi (vsnprintf) 00000002 0.056ms (+0.001ms): number (vsnprintf) 00000002 0.058ms (+0.000ms): seq_putc (unix_seq_show) 00000002 0.059ms (+0.000ms): seq_putc (unix_seq_show) 00000002 0.059ms (+0.000ms): seq_putc (unix_seq_show) 00000002 0.059ms (+0.000ms): seq_putc (unix_seq_show) 00000002 0.060ms (+0.000ms): seq_putc (unix_seq_show) 00000002 0.060ms (+0.000ms): seq_putc (unix_seq_show) ... Full trace: http://krustophenia.net/testresults.php?dataset=2.6.9-rc2-mm4-S7#/var/www/2.6.9-rc2-mm4-S7/lsof-latency-trace.txt Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 6:50 ` Lee Revell @ 2004-10-03 7:06 ` Lee Revell 2004-10-03 19:57 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-03 7:06 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Sun, 2004-10-03 at 02:50, Lee Revell wrote: > On Sun, 2004-10-03 at 02:37, Lee Revell wrote: > > On Mon, 2004-09-27 at 20:05, Ingo Molnar wrote: > > > i've released the -S7 VP patch: > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm4-S7 > > > > > > > This one was caused by amlat: > > And here's another produced by "lsof /foo": > Finally, there's this one which makes no sense to me: preemption latency trace v1.0.7 on 2.6.9-rc2-mm4-VP-S7 ------------------------------------------------------- latency: 507 us, entries: 45 (45) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: events/0/3, uid:0 nice:-10 policy:0 rt_prio:0 ----------------- => started at: kernel_fpu_begin+0x15/0x70 => ended at: _mmx_memcpy+0x13a/0x180 =======> 00000001 0.000ms (+0.002ms): kernel_fpu_begin (_mmx_memcpy) 00010001 0.002ms (+0.000ms): do_IRQ (_mmx_memcpy) 00010001 0.002ms (+0.000ms): do_IRQ (<00000000>) [ timer interrupt stuff ] 00010001 0.024ms (+0.000ms): preempt_schedule (do_IRQ) 00000002 0.025ms (+0.000ms): do_softirq (do_IRQ) 00000002 0.025ms (+0.000ms): __do_softirq (do_softirq) 00000002 0.025ms (+0.000ms): wake_up_process (do_softirq) 00000002 0.026ms (+0.000ms): try_to_wake_up (wake_up_process) 00000002 0.026ms (+0.000ms): task_rq_lock (try_to_wake_up) 00000003 0.026ms (+0.000ms): activate_task (try_to_wake_up) 00000003 0.027ms (+0.000ms): sched_clock (activate_task) 00000003 0.027ms (+0.000ms): recalc_task_prio (activate_task) 00000003 0.028ms (+0.000ms): effective_prio (recalc_task_prio) 00000003 0.028ms (+0.000ms): enqueue_task (activate_task) 00000002 0.028ms (+0.478ms): preempt_schedule (try_to_wake_up) 00000001 0.507ms (+0.000ms): sub_preempt_count (_mmx_memcpy) 00000001 0.508ms (+0.000ms): update_max_trace (check_preempt_timing) 00000001 0.508ms (+0.000ms): _mmx_memcpy (update_max_trace) 00000001 0.508ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) 478 usecs in try_to_wake_up? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 7:06 ` Lee Revell @ 2004-10-03 19:57 ` Ingo Molnar 2004-10-04 0:53 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-03 19:57 UTC (permalink / raw) To: Lee Revell; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela * Lee Revell <rlrevell@joe-job.com> wrote: > Finally, there's this one which makes no sense to me: > > preemption latency trace v1.0.7 on 2.6.9-rc2-mm4-VP-S7 > ------------------------------------------------------- > latency: 507 us, entries: 45 (45) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] > ----------------- > | task: events/0/3, uid:0 nice:-10 policy:0 rt_prio:0 > ----------------- > => started at: kernel_fpu_begin+0x15/0x70 > => ended at: _mmx_memcpy+0x13a/0x180 > =======> > 00000001 0.000ms (+0.002ms): kernel_fpu_begin (_mmx_memcpy) > 00010001 0.002ms (+0.000ms): do_IRQ (_mmx_memcpy) > 00000002 0.028ms (+0.478ms): preempt_schedule (try_to_wake_up) > 00000001 0.507ms (+0.000ms): sub_preempt_count (_mmx_memcpy) > 478 usecs in try_to_wake_up? no, 478 usecs in _mmx_memcpy - the timer interrupt interrupted that function and we returned to it after the timer irq. We only know that the latency happens between try_to_wake_up()'s preempt_schedule() and _mmax_memcpy. Latency tracing does not capture function exits (would be too costly) so effects of two functions can add up. The try_to_wake_up() was simply the last function _entry_ that happened in the timer irq, that's why it got 'credited' for the latency. do you still have the stacktrace too that went to the syslog? What codepath called _mmx_memcpy()? Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 19:57 ` Ingo Molnar @ 2004-10-04 0:53 ` Lee Revell 2004-10-04 10:17 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-04 0:53 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Sun, 2004-10-03 at 15:57, Ingo Molnar wrote: > do you still have the stacktrace too that went to the syslog? What > codepath called _mmx_memcpy()? > Here is an almost identical one (it's even exactly 507 usecs!). This and the one I sent previously were apparently caused by switching from X to a text console and back. Sep 2 16:13:49 krustophenia kernel: (events/0/3): new 507 us maximum-latency critical section. Sep 2 16:13:49 krustophenia kernel: => started at: <kernel_fpu_begin+0x15/0x70> Sep 2 16:13:49 krustophenia kernel: => ended at: <_mmx_memcpy+0x13a/0x180> Sep 2 16:13:49 krustophenia kernel: [check_preempt_timing+259/464] check_preempt_timing+0x103/0x1d0 Sep 2 16:13:49 krustophenia kernel: [_mmx_memcpy+314/384] _mmx_memcpy+0x13a/0x180 Sep 2 16:13:49 krustophenia kernel: [sub_preempt_count+70/96] sub_preempt_count+0x46/0x60 Sep 2 16:13:49 krustophenia kernel: [sub_preempt_count+70/96] sub_preempt_count+0x46/0x60 Sep 2 16:13:49 krustophenia kernel: [_mmx_memcpy+314/384] _mmx_memcpy+0x13a/0x180 Sep 2 16:13:49 krustophenia kernel: [vgacon_save_screen+120/128] vgacon_save_screen+0x78/0x80 Sep 2 16:13:49 krustophenia kernel: [redraw_screen+411/560] redraw_screen+0x19b/0x230 Sep 2 16:13:49 krustophenia kernel: [complete_change_console+44/224] complete_change_console+0x2c/0xe0 Sep 2 16:13:49 krustophenia kernel: [console_callback+258/272] console_callback+0x102/0x110 Sep 2 16:13:49 krustophenia kernel: [worker_thread+422/624] worker_thread+0x1a6/0x270 Sep 2 16:13:49 krustophenia kernel: [console_callback+0/272] console_callback+0x0/0x110 Sep 2 16:13:49 krustophenia kernel: [default_wake_function+0/32] default_wake_function+0x0/0x20 Sep 2 16:13:49 krustophenia kernel: [schedule+718/1360] schedule+0x2ce/0x550 Sep 2 16:13:49 krustophenia kernel: [default_wake_function+0/32] default_wake_function+0x0/0x20 Sep 2 16:13:49 krustophenia kernel: [schedule+718/1360] schedule+0x2ce/0x550 Sep 2 16:13:49 krustophenia kernel: [kthread+180/192] kthread+0xb4/0xc0 Sep 2 16:13:49 krustophenia kernel: [worker_thread+0/624] worker_thread+0x0/0x270 Sep 2 16:13:49 krustophenia kernel: [kthread+0/192] kthread+0x0/0xc0 Sep 2 16:13:49 krustophenia kernel: [kernel_thread_helper+5/16] kernel_thread_helper+0x5/0x10 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-04 0:53 ` Lee Revell @ 2004-10-04 10:17 ` Ingo Molnar 2004-10-04 17:20 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-04 10:17 UTC (permalink / raw) To: Lee Revell; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela * Lee Revell <rlrevell@joe-job.com> wrote: > Here is an almost identical one (it's even exactly 507 usecs!). This > and the one I sent previously were apparently caused by switching from > X to a text console and back. ah, it's the VGA console: > Sep 2 16:13:49 krustophenia kernel: [_mmx_memcpy+314/384] _mmx_memcpy+0x13a/0x180 > Sep 2 16:13:49 krustophenia kernel: [vgacon_save_screen+120/128] vgacon_save_screen+0x78/0x80 > Sep 2 16:13:49 krustophenia kernel: [redraw_screen+411/560] redraw_screen+0x19b/0x230 now i'm wondering why that's running with preemption disabled - i thought we fixed that. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-04 10:17 ` Ingo Molnar @ 2004-10-04 17:20 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-04 17:20 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela On Mon, 2004-10-04 at 06:17, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > Here is an almost identical one (it's even exactly 507 usecs!). This > > and the one I sent previously were apparently caused by switching from > > X to a text console and back. > > ah, it's the VGA console: > > > Sep 2 16:13:49 krustophenia kernel: [_mmx_memcpy+314/384] _mmx_memcpy+0x13a/0x180 > > Sep 2 16:13:49 krustophenia kernel: [vgacon_save_screen+120/128] vgacon_save_screen+0x78/0x80 > > Sep 2 16:13:49 krustophenia kernel: [redraw_screen+411/560] redraw_screen+0x19b/0x230 > > now i'm wondering why that's running with preemption disabled - i > thought we fixed that. > Same here. But, here's the actual trace from S7 (that one was Q something). It is indeed the VGA console. Oct 3 02:58:08 krustophenia kernel: (events/0/3): new 507 us maximum-latency critical section. Oct 3 02:58:08 krustophenia kernel: => started at: <kernel_fpu_begin+0x15/0x70> Oct 3 02:58:08 krustophenia kernel: => ended at: <_mmx_memcpy+0x13a/0x180> Oct 3 02:58:08 krustophenia kernel: [check_preempt_timing+330/480] check_preempt_timing+0x14a/0x1e0 Oct 3 02:58:08 krustophenia kernel: [common_interrupt+24/32] common_interrupt+0x18/0x20 Oct 3 02:58:08 krustophenia kernel: [sub_preempt_count+74/112] sub_preempt_count+0x4a/0x70 Oct 3 02:58:08 krustophenia kernel: [_mmx_memcpy+314/384] _mmx_memcpy+0x13a/0x180 Oct 3 02:58:08 krustophenia kernel: [_mmx_memcpy+314/384] _mmx_memcpy+0x13a/0x180 Oct 3 02:58:08 krustophenia kernel: [vgacon_save_screen+120/128] vgacon_save_screen+0x78/0x80 Oct 3 02:58:08 krustophenia kernel: [redraw_screen+411/560] redraw_screen+0x19b/0x230 Oct 3 02:58:08 krustophenia kernel: [complete_change_console+44/224] complete_change_console+0x2c/0xe0 Oct 3 02:58:08 krustophenia kernel: [console_callback+258/272] console_callback+0x102/0x110 Oct 3 02:58:08 krustophenia kernel: [worker_thread+559/1088] worker_thread+0x22f/0x440 Oct 3 02:58:08 krustophenia kernel: [console_callback+0/272] console_callback+0x0/0x110 Oct 3 02:58:08 krustophenia kernel: [default_wake_function+0/32] default_wake_function+0x0/0x20 Oct 3 02:58:08 krustophenia kernel: [schedule+829/1712] schedule+0x33d/0x6b0 Oct 3 02:58:08 krustophenia kernel: [default_wake_function+0/32] default_wake_function+0x0/0x20 Oct 3 02:58:08 krustophenia kernel: [mcount+20/24] mcount+0x14/0x18 Oct 3 02:58:08 krustophenia kernel: [kthread+180/192] kthread+0xb4/0xc0 Oct 3 02:58:08 krustophenia kernel: [worker_thread+0/1088] worker_thread+0x0/0x440 Oct 3 02:58:08 krustophenia kernel: [kthread+0/192] kthread+0x0/0xc0 Oct 3 02:58:08 krustophenia kernel: [kernel_thread_helper+5/16] kernel_thread_helper+0x5/0x10 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 2004-10-03 6:37 ` Lee Revell 2004-10-03 6:50 ` Lee Revell @ 2004-10-03 20:05 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-03 20:05 UTC (permalink / raw) To: Lee Revell; +Cc: linux-kernel, K.R. Foley, Rui Nuno Capela * Lee Revell <rlrevell@joe-job.com> wrote: > This one was caused by amlat: > > preemption latency trace v1.0.7 on 2.6.9-rc2-mm4-VP-S7 > ------------------------------------------------------- > latency: 264 us, entries: 5 (5) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] > ----------------- > | task: amlat/3921, uid:1000 nice:0 policy:1 rt_prio:99 > ----------------- > => started at: rtc_open+0x12/0x270 > => ended at: rtc_open+0x13f/0x270 > =======> > 00000001 0.000ms (+0.264ms): rtc_open (misc_open) > 00000001 0.264ms (+0.000ms): sub_preempt_count (rtc_open) > 00000001 0.265ms (+0.000ms): update_max_trace (check_preempt_timing) > 00000001 0.265ms (+0.000ms): _mmx_memcpy (update_max_trace) > 00000001 0.265ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) weird, there's nothing in that function that should cause _any_ delay. Is this drivers/char/rtc.c's rtc_open()? Also, how reproducible is this delay? Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc3-mm1-S8 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar ` (5 preceding siblings ...) 2004-10-03 6:37 ` Lee Revell @ 2004-10-03 21:09 ` Ingo Molnar 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar 6 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-03 21:09 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, K.R. Foley, Rui Nuno Capela i've released the -S8 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm1-S8 this iteration is mainly a merge to -rc3-mm1. The -rc3-mm1 tree now includes the generic-irq-subsystem patch which is a prerequisite of the threaded-irqs feature in the -VP patch. As a result of this the -VP patch got significantly smaller, down from 224K to 89K. also part of the patch are further refinements of the preempt-bkl feature and a couple of bugfixes, reported for the -mm tree but not included in -rc3-mm1 yet. (All of these were sent to Andrew too so they should show up in -mm2.) to build an -S8 tree from scratch the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc3.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc3/2.6.9-rc3-mm1/2.6.9-rc3-mm1.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm1-S8 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-03 21:09 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S8 Ingo Molnar @ 2004-10-04 21:53 ` Ingo Molnar 2004-10-05 0:31 ` Lee Revell ` (5 more replies) 0 siblings, 6 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-04 21:53 UTC (permalink / raw) To: linux-kernel Cc: Lee Revell, K.R. Foley, Rui Nuno Capela, thewade, Florian Schmidt i've released the -S9 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 Changes since -S8: - merge to -mm2. mm2 includes another latency breaker: Hugh Dickins' vmtruncate rework that should fix the bash-shared-mapping latency. - fix the x64 compilation bug reported by thewade - fix the menuconfig duplicate entry bug noticed by Florian Schmidt - (fix two preempt bugs in -mm2 - will be in -mm3) to build an -S9 tree from scratch the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc3.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc3/2.6.9-rc3-mm2/2.6.9-rc3-mm2.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar @ 2004-10-05 0:31 ` Lee Revell 2004-10-05 0:56 ` Florian Schmidt 2004-10-05 0:38 ` Andrew Rodland ` (4 subsequent siblings) 5 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-05 0:31 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, thewade, Florian Schmidt On Mon, 2004-10-04 at 17:53, Ingo Molnar wrote: > i've released the -S9 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 > Does not compile: rlrevell@mindpipe:~/kernel-source/linux-2.6.8$ make CHK include/linux/version.h make[1]: `arch/i386/kernel/asm-offsets.s' is up to date. CHK include/linux/compile.h GEN_INITRAMFS_LIST usr/initramfs_list Using shipped usr/initramfs_list CC arch/i386/kernel/irq.o arch/i386/kernel/irq.c:205: error: redefinition of 'is_irq_stack_ptr' include/asm/hardirq.h:25: error: previous definition of 'is_irq_stack_ptr' was here arch/i386/kernel/irq.c: In function `is_irq_stack_ptr': arch/i386/kernel/irq.c:209: error: `hardirq_stack' undeclared (first use in this function) arch/i386/kernel/irq.c:209: error: (Each undeclared identifier is reported only once arch/i386/kernel/irq.c:209: error: for each function it appears in.) arch/i386/kernel/irq.c:212: error: `softirq_stack' undeclared (first use in this function) make[1]: *** [arch/i386/kernel/irq.o] Error 1 make: *** [arch/i386/kernel] Error 2 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 0:31 ` Lee Revell @ 2004-10-05 0:56 ` Florian Schmidt 2004-10-05 0:45 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Florian Schmidt @ 2004-10-05 0:56 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, thewade On Mon, 04 Oct 2004 20:31:58 -0400 Lee Revell <rlrevell@joe-job.com> wrote: > On Mon, 2004-10-04 at 17:53, Ingo Molnar wrote: > > i've released the -S9 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 > > > > Does not compile: The definition of hardirq_stack seem to depend on the 4k stacks option. with this enables it builds past irq.c. flo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 0:56 ` Florian Schmidt @ 2004-10-05 0:45 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-05 0:45 UTC (permalink / raw) To: Florian Schmidt Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, thewade On Mon, 2004-10-04 at 20:56, Florian Schmidt wrote: > On Mon, 04 Oct 2004 20:31:58 -0400 > Lee Revell <rlrevell@joe-job.com> wrote: > > > On Mon, 2004-10-04 at 17:53, Ingo Molnar wrote: > > > i've released the -S9 VP patch: > > > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 > > > > > > > Does not compile: > > The definition of hardirq_stack seem to depend on the 4k stacks option. > with this enables it builds past irq.c. Ah, OK. I should have this enabled anyway, I think I disabled it way back at Ingo's recommendation when were trying to get useful traces out of ALSA's xrun debugging feature. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar 2004-10-05 0:31 ` Lee Revell @ 2004-10-05 0:38 ` Andrew Rodland 2004-10-05 1:19 ` Rui Nuno Capela ` (3 subsequent siblings) 5 siblings, 0 replies; 224+ messages in thread From: Andrew Rodland @ 2004-10-05 0:38 UTC (permalink / raw) To: linux-kernel Ingo Molnar wrote: > > i've released the -S9 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 The swapspace layout part of this is incompatible with swsusp, causing a compile error and I don't understand the changes well enough to fix it. Could you please provide a fix or at least provide a note, so that people like me who depend on it know not use this patch? Cheers hobbs ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar 2004-10-05 0:31 ` Lee Revell 2004-10-05 0:38 ` Andrew Rodland @ 2004-10-05 1:19 ` Rui Nuno Capela 2004-10-05 5:32 ` Peter Williams 2004-10-05 6:38 ` Ingo Molnar 2004-10-05 1:42 ` Florian Schmidt ` (2 subsequent siblings) 5 siblings, 2 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-05 1:19 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, thewade, Florian Schmidt Ingo wrote: > > i've released the -S9 VP patch: > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 > Me again, we bad humor :( My SMP/HT box is (again) terribly in that uglyness of being quite unfriendly to -mm1, -mm2, and indirectly to -S8 and -S9 labeled kernels. It works quite well with vanilla 2.6.9-rc3, though. But very, very bad with those -mm1 or -mm2 patches. To get it straight, almost all the time it hangs, randomly, but not as completely as to a dramatic cold-reboot. It stalls on the the most administrative tasks. Name one, and it stalls! I can hardly feel lucky if it sometimes reaches the login prompt, while boot/initing. I know you remember this story. Yeah. This seems quite similar to some of earlier problems, but (un/fortunately) it doesn't seem related to VP at all. Just having -mm1 or -mm2 is enough to make this machine go astray. However, as usual, this seems to be ix86 SMP/HT specific. On my laptop, I get to run full 2.6.9-rc3-mm2-S9 UP very happily. Sorry if I can't get any real or useful debug data for now. The bad behavior I'm referring to, is terribly non-deterministic, so I couldn't get a pattern yet. I just wanted to let you know ;) Sorry for the bandwidth waste, Cheers, -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 1:19 ` Rui Nuno Capela @ 2004-10-05 5:32 ` Peter Williams 2004-10-05 6:38 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: Peter Williams @ 2004-10-05 5:32 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley, thewade, Florian Schmidt [-- Attachment #1: Type: text/plain, Size: 1794 bytes --] Rui Nuno Capela wrote: > Ingo wrote: > >>i've released the -S9 VP patch: >>http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 >> > > > Me again, we bad humor :( > > My SMP/HT box is (again) terribly in that uglyness of being quite > unfriendly to -mm1, -mm2, and indirectly to -S8 and -S9 labeled kernels. > > It works quite well with vanilla 2.6.9-rc3, though. > > But very, very bad with those -mm1 or -mm2 patches. To get it straight, > almost all the time it hangs, randomly, but not as completely as to a > dramatic cold-reboot. It stalls on the the most administrative tasks. Name > one, and it stalls! I can hardly feel lucky if it sometimes reaches the > login prompt, while boot/initing. > > I know you remember this story. Yeah. This seems quite similar to some of > earlier problems, but (un/fortunately) it doesn't seem related to VP at > all. Just having -mm1 or -mm2 is enough to make this machine go astray. > > However, as usual, this seems to be ix86 SMP/HT specific. On my laptop, I > get to run full 2.6.9-rc3-mm2-S9 UP very happily. > > Sorry if I can't get any real or useful debug data for now. The bad > behavior I'm referring to, is terribly non-deterministic, so I couldn't > get a pattern yet. > > I just wanted to let you know ;) This may be my fault. I made changes in the SMH code as part of the ZAPHOD patch but was unable to test them on a hyperthreaded machine due to a lack thereof (I have one on order). I've attached a patch that reverts the changes that I made. Can you give them a try please and let me know if they fix your problem? Thanks Peter -- Peter Williams pwil3058@bigpond.net.au "Learning, n. The kind of ignorance distinguishing the studious." -- Ambrose Bierce [-- Attachment #2: smh.patch --] [-- Type: text/x-patch, Size: 1187 bytes --] --- linux-2.6.9-rc3-mm2/kernel/sched.c 2004-10-05 15:17:09.157119322 +1000 +++ linux-2.6.9-rc3-mm2-mod/kernel/sched.c 2004-10-05 15:27:05.355561830 +1000 @@ -3240,18 +3240,21 @@ need_resched: put_task_in_sinbin(prev); cpu = smp_processor_id(); - if (unlikely(needs_idle_balance(rq))) { + if (unlikely(!rq->nr_running)) { go_idle: idle_balance(cpu, rq); - /* This code should get optimised away when CONFIG_SCHED_SMT - * is not defined - */ - if (dependent_idle(rq)) + if (!rq->nr_running) { + next = rq->idle; wake_sleeping_dependent(cpu, rq); + /* + * wake_sleeping_dependent() might have released + * the runqueue, so break out if we got new + * tasks meanwhile: + */ + if (!rq->nr_running) + goto switch_tasks; + } } else { - /* This code should all get optimised away when CONFIG_SCHED_SMT - * is not defined - */ if (dependent_sleeper(cpu, rq)) { schedstat_inc(rq, sched_goidle); next = rq->idle; @@ -3262,7 +3265,7 @@ go_idle: * lock, hence go into the idle loop if the rq went * empty meanwhile: */ - if (unlikely(recheck_needs_idle_balance(rq))) + if (unlikely(!rq->nr_running)) goto go_idle; } ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 1:19 ` Rui Nuno Capela 2004-10-05 5:32 ` Peter Williams @ 2004-10-05 6:38 ` Ingo Molnar 1 sibling, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 6:38 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley, thewade, Florian Schmidt On Tue, 5 Oct 2004, Rui Nuno Capela wrote: > Ingo wrote: > > > > i've released the -S9 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 > > > > Me again, we bad humor :( > > My SMP/HT box is (again) terribly in that uglyness of being quite > unfriendly to -mm1, -mm2, and indirectly to -S8 and -S9 labeled kernels. could you apply this patch first: http://redhat.com/~mingo/voluntary-preempt/zaphod-undo-2.6.9-rc3-mm2-A0 to get back to the original scheduler. Can you still see problems with this one applied? If yes then please try to debug it a bit more. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar ` (2 preceding siblings ...) 2004-10-05 1:19 ` Rui Nuno Capela @ 2004-10-05 1:42 ` Florian Schmidt 2004-10-05 2:05 ` Florian Schmidt 2004-10-05 3:09 ` Andrew Rodland 2004-10-05 7:02 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 Ingo Molnar 2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar 5 siblings, 2 replies; 224+ messages in thread From: Florian Schmidt @ 2004-10-05 1:42 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Rui Nuno Capela, thewade On Mon, 4 Oct 2004 23:53:15 +0200 Ingo Molnar <mingo@elte.hu> wrote: > > i've released the -S9 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 > Something is fishy for me from S8 on. I justbooted into S9 and i see many many xruns under load in jackd [as i saw in S8]. Since all my ll settings are enabled as usual, something else must be wrong. I find the following very interesting: mango:~# ps aux|grep IRQ root 12 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 8] root 14 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 12] root 15 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 14] root 16 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 15] root 17 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 1] root 314 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 10] root 7983 0.6 0.0 0 0 ? S< 03:26 0:03 [IRQ 5] root 14617 0.0 0.0 1576 464 pts/2 R+ 03:35 0:00 grep IRQ mango:~# chrt -p 7938 sched_getscheduler: No such process failed to get pid 7938's policy For other irq threads i get normal values [SCHED_OTHER]. Here's the usual tweakables. I find it interesting that the preempt timing stuff is seemingly non working, either [see bottom]. Will boot into S8 to see if i see similar things: ----------- ----------- Linux mango.fruits.de 2.6.9-rc3-mm2-VP-S9LT #1 Tue Oct 5 03:07:49 CEST 2004 i686 GNU/Linux----------- /proc/interrupts: CPU0 0: 1233290 XT-PIC timer 0/33290 1: 4810 XT-PIC i8042 0/4810 2: 0 XT-PIC cascade 0/0 5: 863776 XT-PIC CS46XX 0/63776 8: 4 XT-PIC rtc 0/4 10: 1008 XT-PIC eth0 0/1008 12: 34888 XT-PIC i8042 0/34888 14: 927 XT-PIC ide0 0/927 15: 33585 XT-PIC ide1 0/33585 NMI: 0 ERR: 0 ----------- /proc/irq/1/i8042/threaded:1 /proc/irq/10/eth0/threaded:1 /proc/irq/12/i8042/threaded:1 /proc/irq/14/ide0/threaded:1 /proc/irq/15/ide1/threaded:1 /proc/irq/5/CS46XX/threaded:0 /proc/irq/8/rtc/threaded:0 ----------- /sys/block/hda/queue/max_sectors_kb:16 /sys/block/hdc/queue/max_sectors_kb:16 /sys/block/hdd/queue/max_sectors_kb:16 ----------- voluntary_preemption 1 kernel_preemption 1 softirq redirect 1 hardirq redirect 1 ----------- preempt_thresh 0 ----------- preempt_max_thresh 0 ----------- trace enabled 0 ----------- I also see some of these "Wait for ready failed before probe !" [in dmesg] which have popped up somewhere along the line when VP was based on mm [definetly in S8 and S9, dunno about earlier for sure]: [snip] Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller at PCI slot 0000:00:02.5 SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SIS5513: SiS735 ATA 100 (2nd gen) controller ide0: BM-DMA at 0xff00-0xff07, BIOS settings: hda:DMA, hdb:DMA ide1: BM-DMA at 0xff08-0xff0f, BIOS settings: hdc:DMA, hdd:DMA Probing IDE interface ide0... hda: IC35L060AVER07-0, ATA DISK drive requesting new irq thread for IRQ14... elevator: using anticipatory as default io scheduler ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Probing IDE interface ide1... hdc: ST340823A, ATA DISK drive hdd: TDK CDRW121032, ATAPI CD/DVD-ROM drive requesting new irq thread for IRQ15... ide1 at 0x170-0x177,0x376 on irq 15 Probing IDE interface ide2... ide2: Wait for ready failed before probe ! Probing IDE interface ide3... ide3: Wait for ready failed before probe ! Probing IDE interface ide4... ide4: Wait for ready failed before probe ! Probing IDE interface ide5... ide5: Wait for ready failed before probe ! hda: max request size: 128KiB IRQ#14 thread started up. hda: 120103200 sectors (61492 MB) w/1916KiB Cache, CHS=65535/16/63, UDMA(100) hda: cache flushes not supported hda: hda1 hda2 hda3 hdc: max request size: 128KiB IRQ#15 thread started up. hdc: Host Protected Area detected. current capacity is 78165360 sectors (40020 MB) native capacity is 78165361 sectors (40020 MB) hdc: Host Protected Area disabled. hdc: 78165361 sectors (40020 MB) w/1024KiB Cache, CHS=65535/16/63, UDMA(33) hdc: cache flushes not supported hdc: hdc1 hdc2 hdd: ATAPI 32X CD-ROM CD-R/RW drive, 2048kB Cache, DMA Uniform CD-ROM driver Revision: 3.20 [snip] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 1:42 ` Florian Schmidt @ 2004-10-05 2:05 ` Florian Schmidt 2004-10-05 3:09 ` Andrew Rodland 1 sibling, 0 replies; 224+ messages in thread From: Florian Schmidt @ 2004-10-05 2:05 UTC (permalink / raw) To: Florian Schmidt Cc: Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley, Rui Nuno Capela, thewade On Tue, 5 Oct 2004 03:42:23 +0200 Florian Schmidt <mista.tapas@gmx.net> wrote: > I find the following very interesting: > > mango:~# ps aux|grep IRQ > root 12 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 8] > root 14 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 12] > root 15 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 14] > root 16 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 15] > root 17 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 1] > root 314 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 10] > root 7983 0.6 0.0 0 0 ? S< 03:26 0:03 [IRQ 5] > root 14617 0.0 0.0 1576 464 pts/2 R+ 03:35 0:00 grep IRQ > mango:~# chrt -p 7938 > sched_getscheduler: No such process > failed to get pid 7938's policy > > For other irq threads i get normal values [SCHED_OTHER]. Hmm, this seemed to have been caused by a small program for changing the IRQ priorities in the PIC as found here and loading the CS46XX module [irq 5] at a later time: http://roht.informatik.uni-halle.de/~ladischc/pic_priorities.html But i'm not sure. I will do some more experimenting. The xrun and preempt timing issues still remain. Here's the S9 .config: # # Automatically generated make config: don't edit # Linux kernel version: 2.6.9-rc3-mm2-VP-S9 # Tue Oct 5 03:23:14 2004 # CONFIG_X86=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_IOMAP=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN_ON_SMP=y # # General setup # CONFIG_LOCALVERSION="LT" CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_POSIX_MQUEUE=y CONFIG_BSD_PROCESS_ACCT=y # CONFIG_BSD_PROCESS_ACCT_V3 is not set CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_LOG_BUF_SHIFT=14 # CONFIG_HOTPLUG is not set CONFIG_KOBJECT_UEVENT=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_PREEMPT_TIMING=y CONFIG_LATENCY_TRACE=y CONFIG_MCOUNT=y CONFIG_IOSCHED_NOOP=y CONFIG_IOSCHED_AS=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_CFQ=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SHMEM=y # CONFIG_TINY_SHMEM is not set # # Loadable module support # CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_MODULE_FORCE_UNLOAD is not set CONFIG_OBSOLETE_MODPARM=y CONFIG_MODVERSIONS=y CONFIG_KMOD=y # # Processor type and features # CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUMM is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set CONFIG_MK7=y # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_INTEL_USERCOPY=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_X86_USE_3DNOW=y CONFIG_HPET_TIMER=y CONFIG_HPET_EMULATE_RTC=y # CONFIG_SMP is not set CONFIG_PREEMPT=y CONFIG_PREEMPT_BKL=y CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREEMPT_SOFTIRQS=y CONFIG_PREEMPT_HARDIRQS=y # CONFIG_X86_UP_APIC is not set CONFIG_X86_TSC=y # CONFIG_X86_MCE is not set # CONFIG_TOSHIBA is not set # CONFIG_I8K is not set # CONFIG_MICROCODE is not set # CONFIG_X86_MSR is not set # CONFIG_X86_CPUID is not set # # Firmware Drivers # # CONFIG_EDD is not set CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y CONFIG_HAVE_DEC_LOCK=y # # Performance-monitoring counters support # # CONFIG_PERFCTR is not set # CONFIG_KEXEC is not set # # Power management options (ACPI, APM) # CONFIG_PM=y # CONFIG_PM_DEBUG is not set # CONFIG_SOFTWARE_SUSPEND is not set # # ACPI (Advanced Configuration and Power Interface) Support # # CONFIG_ACPI is not set CONFIG_ACPI_BLACKLIST_YEAR=0 # # APM (Advanced Power Management) BIOS Support # CONFIG_APM=y # CONFIG_APM_IGNORE_USER_SUSPEND is not set # CONFIG_APM_DO_ENABLE is not set # CONFIG_APM_CPU_IDLE is not set # CONFIG_APM_DISPLAY_BLANK is not set # CONFIG_APM_RTC_IS_GMT is not set # CONFIG_APM_ALLOW_INTS is not set CONFIG_APM_REAL_MODE_POWER_OFF=y # # CPU Frequency scaling # # CONFIG_CPU_FREQ is not set # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GOMMCONFIG is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y # CONFIG_PCI_LEGACY_PROC is not set CONFIG_PCI_NAMES=y # CONFIG_ISA is not set # CONFIG_MCA is not set # CONFIG_SCx200 is not set # # Executable file formats # CONFIG_BINFMT_ELF=y CONFIG_BINFMT_AOUT=y CONFIG_BINFMT_MISC=y # # Device Drivers # # # Generic Driver Options # CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_DEBUG_DRIVER is not set # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # # CONFIG_PARPORT is not set # # Plug and Play support # # # Block devices # CONFIG_BLK_DEV_FD=m # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_CRYPTOLOOP=m CONFIG_BLK_DEV_NBD=m # CONFIG_BLK_DEV_SX8 is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" # CONFIG_LBD is not set # CONFIG_CDROM_PKTCDVD is not set # # ATA/ATAPI/MFM/RLL support # CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=y # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set CONFIG_BLK_DEV_IDESCSI=m # CONFIG_IDE_TASK_IOCTL is not set # # IDE chipset support/bugfixes # CONFIG_IDE_GENERIC=y # CONFIG_BLK_DEV_CMD640 is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y # CONFIG_BLK_DEV_OFFBOARD is not set CONFIG_BLK_DEV_GENERIC=y # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_RZ1000 is not set CONFIG_BLK_DEV_IDEDMA_PCI=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set # CONFIG_BLK_DEV_AMD74XX is not set # CONFIG_BLK_DEV_ATIIXP is not set # CONFIG_BLK_DEV_CMD64X is not set # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_CS5530 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set # CONFIG_BLK_DEV_PIIX is not set # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set CONFIG_BLK_DEV_SIS5513=y # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set # CONFIG_BLK_DEV_VIA82CXXX is not set # CONFIG_IDE_ARM is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_IVB is not set CONFIG_IDEDMA_AUTO=y # CONFIG_BLK_DEV_HD is not set # # SCSI device support # CONFIG_SCSI=m CONFIG_SCSI_PROC_FS=y # # SCSI support type (disk, tape, CD-ROM) # CONFIG_BLK_DEV_SD=m # CONFIG_CHR_DEV_ST is not set # CONFIG_CHR_DEV_OSST is not set CONFIG_BLK_DEV_SR=m # CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=m # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # # CONFIG_SCSI_MULTI_LUN is not set CONFIG_SCSI_CONSTANTS=y # CONFIG_SCSI_LOGGING is not set # # SCSI Transport Attributes # # CONFIG_SCSI_SPI_ATTRS is not set # CONFIG_SCSI_FC_ATTRS is not set # # SCSI low-level drivers # # CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_AACRAID is not set CONFIG_SCSI_AIC7XXX=m CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 CONFIG_AIC7XXX_RESET_DELAY_MS=15000 # CONFIG_AIC7XXX_DEBUG_ENABLE is not set CONFIG_AIC7XXX_DEBUG_MASK=0 # CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=m # CONFIG_SCSI_QLA21XX is not set # CONFIG_SCSI_QLA22XX is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6322 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_DEBUG is not set # # Multi-device support (RAID and LVM) # # CONFIG_MD is not set # # Fusion MPT device support # # CONFIG_FUSION is not set # # IEEE 1394 (FireWire) support # # CONFIG_IEEE1394 is not set # # I2O device support # # CONFIG_I2O is not set # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set CONFIG_NETLINK_DEV=y CONFIG_UNIX=y # CONFIG_NET_KEY is not set CONFIG_INET=y CONFIG_IP_MULTICAST=y CONFIG_IP_ADVANCED_ROUTER=y # CONFIG_IP_MULTIPLE_TABLES is not set # CONFIG_IP_ROUTE_MULTIPATH is not set # CONFIG_IP_ROUTE_VERBOSE is not set # CONFIG_IP_PNP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_IP_MROUTE is not set # CONFIG_ARPD is not set # CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # # IP: Virtual Server Configuration # # CONFIG_IP_VS is not set # CONFIG_IPV6 is not set CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set # # IP: Netfilter Configuration # CONFIG_IP_NF_CONNTRACK=m # CONFIG_IP_NF_CT_ACCT is not set # CONFIG_IP_NF_CT_PROTO_SCTP is not set # CONFIG_IP_NF_FTP is not set # CONFIG_IP_NF_IRC is not set # CONFIG_IP_NF_TFTP is not set # CONFIG_IP_NF_AMANDA is not set # CONFIG_IP_NF_QUEUE is not set CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_LIMIT=m CONFIG_IP_NF_MATCH_IPRANGE=m CONFIG_IP_NF_MATCH_MAC=m CONFIG_IP_NF_MATCH_PKTTYPE=m CONFIG_IP_NF_MATCH_MARK=m CONFIG_IP_NF_MATCH_MULTIPORT=m CONFIG_IP_NF_MATCH_TOS=m CONFIG_IP_NF_MATCH_RECENT=m CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_DSCP=m CONFIG_IP_NF_MATCH_AH_ESP=m CONFIG_IP_NF_MATCH_LENGTH=m CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_MATCH_TCPMSS=m CONFIG_IP_NF_MATCH_HELPER=m CONFIG_IP_NF_MATCH_STATE=m CONFIG_IP_NF_MATCH_CONNTRACK=m CONFIG_IP_NF_MATCH_OWNER=m CONFIG_IP_NF_MATCH_ADDRTYPE=m CONFIG_IP_NF_MATCH_REALM=m # CONFIG_IP_NF_MATCH_SCTP is not set # CONFIG_IP_NF_MATCH_COMMENT is not set CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_LOG=m CONFIG_IP_NF_TARGET_ULOG=m CONFIG_IP_NF_TARGET_TCPMSS=m CONFIG_IP_NF_NAT=m CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_REDIRECT=m CONFIG_IP_NF_TARGET_NETMAP=m CONFIG_IP_NF_TARGET_SAME=m # CONFIG_IP_NF_NAT_LOCAL is not set # CONFIG_IP_NF_NAT_SNMP_BASIC is not set CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_TOS=m CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_DSCP=m CONFIG_IP_NF_TARGET_MARK=m CONFIG_IP_NF_TARGET_CLASSIFY=m # CONFIG_IP_NF_RAW is not set CONFIG_IP_NF_ARPTABLES=m CONFIG_IP_NF_ARPFILTER=m CONFIG_IP_NF_ARP_MANGLE=m # CONFIG_IP_NF_COMPAT_IPCHAINS is not set # CONFIG_IP_NF_COMPAT_IPFWADM is not set # # SCTP Configuration (EXPERIMENTAL) # # CONFIG_IP_SCTP is not set # CONFIG_ATM is not set # CONFIG_BRIDGE is not set # CONFIG_VLAN_8021Q is not set # CONFIG_DECNET is not set # CONFIG_LLC2 is not set # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # CONFIG_NET_SCHED=y CONFIG_NET_SCH_CLK_JIFFIES=y # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set # CONFIG_NET_SCH_CLK_CPU is not set CONFIG_NET_SCH_CBQ=m CONFIG_NET_SCH_HTB=m # CONFIG_NET_SCH_HFSC is not set CONFIG_NET_SCH_PRIO=m CONFIG_NET_SCH_RED=m CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m # CONFIG_NET_SCH_NETEM is not set CONFIG_NET_SCH_INGRESS=m CONFIG_NET_QOS=y CONFIG_NET_ESTIMATOR=y CONFIG_NET_CLS=y CONFIG_NET_CLS_TCINDEX=m CONFIG_NET_CLS_ROUTE4=m CONFIG_NET_CLS_ROUTE=y CONFIG_NET_CLS_FW=m CONFIG_NET_CLS_U32=m # CONFIG_CLS_U32_PERF is not set # CONFIG_NET_CLS_IND is not set CONFIG_NET_CLS_RSVP=m CONFIG_NET_CLS_RSVP6=m # CONFIG_NET_CLS_ACT is not set CONFIG_NET_CLS_POLICE=y # # Network testing # # CONFIG_NET_PKTGEN is not set # CONFIG_KGDBOE is not set # CONFIG_NETPOLL is not set # CONFIG_NETPOLL_RX is not set # CONFIG_NETPOLL_TRAP is not set # CONFIG_NET_POLL_CONTROLLER is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set CONFIG_NETDEVICES=y CONFIG_DUMMY=m # CONFIG_BONDING is not set # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # CONFIG_ETHERTAP is not set # # ARCnet devices # # CONFIG_ARCNET is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y CONFIG_MII=m # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_HP100 is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_DGRS is not set # CONFIG_EEPRO100 is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set # CONFIG_8139CP is not set # CONFIG_8139TOO is not set CONFIG_SIS900=m # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_TLAN is not set # CONFIG_VIA_RHINE is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set # CONFIG_E1000 is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_SK98LIN is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_TIGON3 is not set # # Ethernet (10000 Mbit) # # CONFIG_IXGB is not set # CONFIG_S2IO is not set # # Token Ring devices # # CONFIG_TR is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Wan interfaces # # CONFIG_WAN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set CONFIG_PPP=m CONFIG_PPP_MULTILINK=y CONFIG_PPP_FILTER=y CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOMP=m CONFIG_PPPOE=m # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set # CONFIG_NETCONSOLE is not set # # ISDN subsystem # # CONFIG_ISDN is not set # # Telephony Support # # CONFIG_PHONE is not set # # 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_TSDEV is not set # CONFIG_INPUT_EVDEV is not set # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # CONFIG_GAMEPORT=m CONFIG_SOUND_GAMEPORT=m # CONFIG_GAMEPORT_NS558 is not set # CONFIG_GAMEPORT_L4 is not set # CONFIG_GAMEPORT_EMU10K1 is not set # CONFIG_GAMEPORT_VORTEX is not set # CONFIG_GAMEPORT_FM801 is not set # CONFIG_GAMEPORT_CS461x is not set CONFIG_SERIO=y CONFIG_SERIO_I8042=y # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_CT82C710 is not set CONFIG_SERIO_PCIPS2=m CONFIG_SERIO_LIBPS2=y # CONFIG_SERIO_RAW is not set # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=y # CONFIG_MOUSE_SERIAL is not set # CONFIG_MOUSE_VSXXXAA is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_MISC=y CONFIG_INPUT_PCSPKR=y # CONFIG_INPUT_UINPUT is not set # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y # CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers # CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_CONSOLE is not set CONFIG_SERIAL_8250_NR_UARTS=4 # CONFIG_SERIAL_8250_EXTENDED is not set # # Non-8250 serial port support # CONFIG_SERIAL_CORE=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 # # IPMI # # CONFIG_IPMI_HANDLER is not set # # Watchdog Cards # # CONFIG_WATCHDOG is not set # CONFIG_HW_RANDOM is not set CONFIG_NVRAM=y CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set CONFIG_AGP=m # CONFIG_AGP_ALI is not set # CONFIG_AGP_ATI is not set # CONFIG_AGP_AMD is not set # CONFIG_AGP_AMD64 is not set # CONFIG_AGP_INTEL is not set # CONFIG_AGP_INTEL_MCH is not set # CONFIG_AGP_NVIDIA is not set CONFIG_AGP_SIS=m # CONFIG_AGP_SWORKS is not set # CONFIG_AGP_VIA is not set # CONFIG_AGP_EFFICEON is not set # CONFIG_DRM is not set # CONFIG_MWAVE is not set # CONFIG_RAW_DRIVER is not set CONFIG_HANGCHECK_TIMER=m # # I2C support # CONFIG_I2C=m CONFIG_I2C_CHARDEV=m # # I2C Algorithms # CONFIG_I2C_ALGOBIT=m CONFIG_I2C_ALGOPCF=m # CONFIG_I2C_ALGOPCA is not set # # I2C Hardware Bus support # CONFIG_I2C_ALI1535=m CONFIG_I2C_ALI1563=m CONFIG_I2C_ALI15X3=m CONFIG_I2C_AMD756=m CONFIG_I2C_AMD8111=m CONFIG_I2C_I801=m CONFIG_I2C_I810=m CONFIG_I2C_ISA=m CONFIG_I2C_NFORCE2=m CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PIIX4=m CONFIG_I2C_PROSAVAGE=m CONFIG_I2C_SAVAGE4=m CONFIG_SCx200_ACB=m CONFIG_I2C_SIS5595=m CONFIG_I2C_SIS630=m CONFIG_I2C_SIS96X=m # CONFIG_I2C_STUB is not set CONFIG_I2C_VIA=m CONFIG_I2C_VIAPRO=m CONFIG_I2C_VOODOO3=m # CONFIG_I2C_PCA_ISA is not set # # Hardware Sensors Chip support # CONFIG_I2C_SENSOR=m CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_ADM1025=m CONFIG_SENSORS_ADM1031=m CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_FSCHER=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_LM75=m CONFIG_SENSORS_LM77=m CONFIG_SENSORS_LM78=m CONFIG_SENSORS_LM80=m CONFIG_SENSORS_LM83=m CONFIG_SENSORS_LM85=m CONFIG_SENSORS_LM90=m CONFIG_SENSORS_MAX1619=m # CONFIG_SENSORS_SMSC47M1 is not set CONFIG_SENSORS_VIA686A=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83627HF=m # # Other I2C Chip support # CONFIG_SENSORS_EEPROM=m CONFIG_SENSORS_PCF8574=m CONFIG_SENSORS_PCF8591=m CONFIG_SENSORS_RTC8564=m # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_CHIP is not set # # Dallas's 1-wire bus # # CONFIG_W1 is not set # # Misc devices # # CONFIG_IBM_ASM is not set # # Multimedia devices # # CONFIG_VIDEO_DEV is not set # # Digital Video Broadcasting Devices # # CONFIG_DVB is not set # # Graphics support # # CONFIG_FB is not set CONFIG_VIDEO_SELECT=y # # Console display driver support # CONFIG_VGA_CONSOLE=y CONFIG_DUMMY_CONSOLE=y # # Sound # CONFIG_SOUND=m # # Advanced Linux Sound Architecture # CONFIG_SND=m CONFIG_SND_TIMER=m CONFIG_SND_PCM=m CONFIG_SND_RAWMIDI=m CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQ_DUMMY=m CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=m CONFIG_SND_PCM_OSS=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_RTCTIMER=m # CONFIG_SND_VERBOSE_PRINTK is not set CONFIG_SND_DEBUG=y # CONFIG_SND_DEBUG_MEMORY is not set # CONFIG_SND_DEBUG_DETECT is not set # # Generic devices # # CONFIG_SND_DUMMY is not set # CONFIG_SND_VIRMIDI is not set # CONFIG_SND_MTPAV is not set # CONFIG_SND_SERIAL_U16550 is not set # CONFIG_SND_MPU401 is not set # # PCI devices # CONFIG_SND_AC97_CODEC=m # CONFIG_SND_ALI5451 is not set # CONFIG_SND_ATIIXP is not set # CONFIG_SND_ATIIXP_MODEM is not set # CONFIG_SND_AU8810 is not set # CONFIG_SND_AU8820 is not set # CONFIG_SND_AU8830 is not set # CONFIG_SND_AZT3328 is not set # CONFIG_SND_BT87X is not set CONFIG_SND_CS46XX=m CONFIG_SND_CS46XX_NEW_DSP=y # CONFIG_SND_CS4281 is not set # CONFIG_SND_EMU10K1 is not set # CONFIG_SND_KORG1212 is not set # CONFIG_SND_MIXART is not set # CONFIG_SND_NM256 is not set # CONFIG_SND_RME32 is not set # CONFIG_SND_RME96 is not set # CONFIG_SND_RME9652 is not set # CONFIG_SND_HDSP is not set # CONFIG_SND_TRIDENT is not set # CONFIG_SND_YMFPCI is not set # CONFIG_SND_ALS4000 is not set # CONFIG_SND_CMIPCI is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set # CONFIG_SND_ES1938 is not set # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set # CONFIG_SND_FM801 is not set # CONFIG_SND_ICE1712 is not set # CONFIG_SND_ICE1724 is not set # CONFIG_SND_INTEL8X0 is not set # CONFIG_SND_INTEL8X0M is not set # CONFIG_SND_SONICVIBES is not set # CONFIG_SND_VIA82XX is not set # CONFIG_SND_VX222 is not set # # Open Sound System # # CONFIG_SOUND_PRIME is not set # # USB support # # CONFIG_USB is not set # # USB Gadget Support # # CONFIG_USB_GADGET is not set # # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y # CONFIG_EXT2_FS_POSIX_ACL is not set # CONFIG_EXT2_FS_SECURITY is not set CONFIG_EXT3_FS=y CONFIG_EXT3_FS_XATTR=y # CONFIG_EXT3_FS_POSIX_ACL is not set # CONFIG_EXT3_FS_SECURITY is not set CONFIG_JBD=y # CONFIG_JBD_DEBUG is not set CONFIG_FS_MBCACHE=y # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set # CONFIG_XFS_FS is not set # CONFIG_MINIX_FS is not set CONFIG_ROMFS_FS=y # CONFIG_QUOTA is not set # CONFIG_AUTOFS_FS is not set CONFIG_AUTOFS4_FS=y # # Caches # # CONFIG_CACHEFS is not set # # CD-ROM/DVD Filesystems # CONFIG_ISO9660_FS=y CONFIG_JOLIET=y CONFIG_ZISOFS=y CONFIG_ZISOFS_FS=y CONFIG_UDF_FS=y CONFIG_UDF_NLS=y # # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=y CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" CONFIG_NTFS_FS=m # CONFIG_NTFS_DEBUG is not set # CONFIG_NTFS_RW is not set # # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_SYSFS=y # CONFIG_DEVFS_FS is not set CONFIG_DEVPTS_FS_XATTR=y # CONFIG_DEVPTS_FS_SECURITY is not set CONFIG_TMPFS=y # CONFIG_TMPFS_XATTR is not set # CONFIG_HUGETLBFS is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y # # Miscellaneous filesystems # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_HFSPLUS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set CONFIG_CRAMFS=m # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # # Network File Systems # # CONFIG_NFS_FS is not set # CONFIG_NFSD is not set # CONFIG_EXPORTFS is not set # CONFIG_SMB_FS is not set # CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set CONFIG_AFS_FS=m CONFIG_RXRPC=m # # Partition Types # # CONFIG_PARTITION_ADVANCED is not set CONFIG_MSDOS_PARTITION=y # # Native Language Support # CONFIG_NLS=y CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set CONFIG_NLS_CODEPAGE_850=y # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_860 is not set # CONFIG_NLS_CODEPAGE_861 is not set # CONFIG_NLS_CODEPAGE_862 is not set # CONFIG_NLS_CODEPAGE_863 is not set # CONFIG_NLS_CODEPAGE_864 is not set # CONFIG_NLS_CODEPAGE_865 is not set # CONFIG_NLS_CODEPAGE_866 is not set # CONFIG_NLS_CODEPAGE_869 is not set # CONFIG_NLS_CODEPAGE_936 is not set # CONFIG_NLS_CODEPAGE_950 is not set # CONFIG_NLS_CODEPAGE_932 is not set # CONFIG_NLS_CODEPAGE_949 is not set # CONFIG_NLS_CODEPAGE_874 is not set # CONFIG_NLS_ISO8859_8 is not set CONFIG_NLS_CODEPAGE_1250=y # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_5 is not set # CONFIG_NLS_ISO8859_6 is not set # CONFIG_NLS_ISO8859_7 is not set # CONFIG_NLS_ISO8859_9 is not set # CONFIG_NLS_ISO8859_13 is not set # CONFIG_NLS_ISO8859_14 is not set CONFIG_NLS_ISO8859_15=y # CONFIG_NLS_KOI8_R is not set # CONFIG_NLS_KOI8_U is not set # CONFIG_NLS_UTF8 is not set # # Profiling support # # CONFIG_PROFILING is not set # # Kernel hacking # CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_SPINLOCK_SLEEP is not set # CONFIG_DEBUG_SMP_PROCESSOR_ID is not set # CONFIG_DEBUG_INFO is not set CONFIG_EARLY_PRINTK=y # CONFIG_DEBUG_STACKOVERFLOW is not set # CONFIG_KPROBES is not set # CONFIG_DEBUG_STACK_USAGE is not set # CONFIG_DEBUG_PAGEALLOC is not set CONFIG_4KSTACKS=y # CONFIG_SCHEDSTATS is not set # CONFIG_KGDB is not set # # Security options # # CONFIG_KEYS is not set CONFIG_SECURITY=y # CONFIG_SECURITY_NETWORK is not set CONFIG_SECURITY_CAPABILITIES=m # CONFIG_SECURITY_SECLVL is not set # CONFIG_SECURITY_SELINUX is not set # # Cryptographic options # CONFIG_CRYPTO=y # CONFIG_CRYPTO_HMAC is not set # CONFIG_CRYPTO_NULL is not set # CONFIG_CRYPTO_MD4 is not set # CONFIG_CRYPTO_MD5 is not set # CONFIG_CRYPTO_SHA1 is not set # CONFIG_CRYPTO_SHA256 is not set # CONFIG_CRYPTO_SHA512 is not set # CONFIG_CRYPTO_WP512 is not set # CONFIG_CRYPTO_DES is not set # CONFIG_CRYPTO_BLOWFISH is not set # CONFIG_CRYPTO_TWOFISH is not set # CONFIG_CRYPTO_SERPENT is not set # CONFIG_CRYPTO_AES_586 is not set # CONFIG_CRYPTO_CAST5 is not set # CONFIG_CRYPTO_CAST6 is not set # CONFIG_CRYPTO_TEA is not set # CONFIG_CRYPTO_ARC4 is not set # CONFIG_CRYPTO_KHAZAD is not set # CONFIG_CRYPTO_DEFLATE is not set # CONFIG_CRYPTO_MICHAEL_MIC is not set # CONFIG_CRYPTO_CRC32C is not set # CONFIG_CRYPTO_TEST is not set # # Library routines # CONFIG_CRC_CCITT=m CONFIG_CRC32=m CONFIG_LIBCRC32C=m CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=m CONFIG_GENERIC_HARDIRQS=y CONFIG_X86_BIOS_REBOOT=y CONFIG_PC=y ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 1:42 ` Florian Schmidt 2004-10-05 2:05 ` Florian Schmidt @ 2004-10-05 3:09 ` Andrew Rodland 2004-10-05 10:24 ` Florian Schmidt 1 sibling, 1 reply; 224+ messages in thread From: Andrew Rodland @ 2004-10-05 3:09 UTC (permalink / raw) To: linux-kernel Florian Schmidt wrote: > On Mon, 4 Oct 2004 23:53:15 +0200 > Ingo Molnar <mingo@elte.hu> wrote: > >> >> i've released the -S9 VP patch: >> >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-S9 >> > > Something is fishy for me from S8 on. I justbooted into S9 and i see > many many xruns under load in jackd [as i saw in S8]. Since all my ll > settings are enabled as usual, something else must be wrong. > > I find the following very interesting: > > mango:~# ps aux|grep IRQ > root 12 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 8] > root 14 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 12] > root 15 0.0 0.0 0 0 ? S< 04:28 0:00 [IRQ 14] > root 16 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 15] > root 17 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 1] > root 314 0.0 0.0 0 0 ? S< 03:17 0:00 [IRQ 10] > root 7983 0.6 0.0 0 0 ? S< 03:26 0:03 [IRQ 5] > root 14617 0.0 0.0 1576 464 pts/2 R+ 03:35 0:00 grep IRQ > mango:~# chrt -p 7938 > sched_getscheduler: No such process > failed to get pid 7938's policy > > For other irq threads i get normal values [SCHED_OTHER]. > Looks like a case of minor dyslexia to me. 7983 != 7938 :) --hobbs ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 2004-10-05 3:09 ` Andrew Rodland @ 2004-10-05 10:24 ` Florian Schmidt 0 siblings, 0 replies; 224+ messages in thread From: Florian Schmidt @ 2004-10-05 10:24 UTC (permalink / raw) To: Andrew Rodland; +Cc: linux-kernel On Mon, 04 Oct 2004 23:09:29 -0400 Andrew Rodland <arodland@entermail.net> wrote: > Looks like a case of minor dyslexia to me. 7983 != 7938 :) Hah, right you are.. I shouldn't do this stuff at 3 in the morning. I rechecked like 20 times, just to type it in wrongly every time, lol. flo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar ` (3 preceding siblings ...) 2004-10-05 1:42 ` Florian Schmidt @ 2004-10-05 7:02 ` Ingo Molnar 2004-10-05 11:11 ` Rui Nuno Capela 2004-10-05 11:12 ` Florian Schmidt 2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar 5 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 7:02 UTC (permalink / raw) To: linux-kernel Cc: mingo, Lee Revell, K.R. Foley, Rui Nuno Capela, Florian Schmidt i've released the -T0 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T0 Changes since -T0: - fix preempt-timing facility (reported by Florian Schmidt) - fix !4K stack compilation breakage (reported by Lee Revell) - revert experimental scheduler stuff from -mm. (Rui, does this fix your problems?) note that sw-suspend and x64+LATENCY_TRACE is still broken. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 7:02 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 Ingo Molnar @ 2004-10-05 11:11 ` Rui Nuno Capela 2004-10-05 11:17 ` Ingo Molnar 2004-10-05 11:12 ` Florian Schmidt 1 sibling, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-05 11:11 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Peter Williams, Lee Revell, K.R. Foley, thewade, Florian Schmidt [-- Attachment #1: Type: text/plain, Size: 1162 bytes --] Ingo Molnar wrote: > > i've released the -T0 VP patch: > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T0 > > Changes since -T0: > > - fix preempt-timing facility (reported by Florian Schmidt) > > - fix !4K stack compilation breakage (reported by Lee Revell) > > - revert experimental scheduler stuff from -mm. (Rui, does this fix > your problems?) > Unfortunately it doesn't seem to. Attached you may find some info I could dump out, as a snapshot of what I'm seeing on my fresh 2.6.9-rc3-mm2-T0.0smp kernel. Things to note: - vp_info: the general state of VP tunnables. - dmesg: some badness occurrences, worth to look and fix. - config: the kernel .config file. - top-100: top output, showing that ksoftirqd/1 is consuming 99.9% of one, but only one, of the virtual CPUs, permanentely. The overall system behavior is hardly better than what I've complained before: if I can get to X, the mouse(s) don't work (either USB or PS/2); calling /sbin/modprobe is asking for trouble; most of the times, it stalls while boot-initing. Can't hardly make anything with it :( Sorry. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org [-- Attachment #2: dump-2.6.9-rc3-mm2-T0.0smp.tar.gz --] [-- Type: application/x-tgz, Size: 16666 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 11:11 ` Rui Nuno Capela @ 2004-10-05 11:17 ` Ingo Molnar 2004-10-05 12:07 ` Hugh Dickins 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 11:17 UTC (permalink / raw) To: Rui Nuno Capela; +Cc: linux-kernel On Tue, 5 Oct 2004, Rui Nuno Capela wrote: > Unfortunately it doesn't seem to. Attached you may find some info I > could dump out, as a snapshot of what I'm seeing on my fresh > 2.6.9-rc3-mm2-T0.0smp kernel. thanks. Do your problems go away if you turn off the SMT scheduler, or if you disable SMP altogether on your P4-HT box? > - top-100: top output, showing that ksoftirqd/1 is consuming 99.9% of one, > but only one, of the virtual CPUs, permanentely. i think this is the clearest indication that there's something is fundamentally wrong - ksoftirqd must never use that much CPU time on an idle system. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 11:17 ` Ingo Molnar @ 2004-10-05 12:07 ` Hugh Dickins 0 siblings, 0 replies; 224+ messages in thread From: Hugh Dickins @ 2004-10-05 12:07 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rui Nuno Capela, linux-kernel On Tue, 5 Oct 2004, Ingo Molnar wrote: > On Tue, 5 Oct 2004, Rui Nuno Capela wrote: > > i think this is the clearest indication that there's something is > fundamentally wrong - ksoftirqd must never use that much CPU time on an > idle system. Please, would you try this patch below that I posted yesterday? At the time I thought the trylock was hardly used so not urgent. I've just now discovered that the standard SMP PREEMPT read_lock - as in do_wait's read_lock(&tasklist_lock) for example - uses it via one of those dreaded expansions that grep misses: if (likely(_raw_##op##_trylock(lock))) I've been suffering the occasional leftover zombie from multiple kernel builds precisely since the preempt-smp.patch went in; been hunting it unsuccessfully in spare moments, yesterday noticed that bug, today realize it's probably what I've been hunting - I'm about to start my own tests again, can't be sure until tomorrow. Hugh The i386 and x86_64 _raw_read_trylocks in preempt-smp.patch are too successful: atomic_read() returns a signed integer. Signed-off-by: Hugh Dickins <hugh@veritas.com> --- 2.6.9-rc3-mm2/include/asm-i386/spinlock.h 2004-10-04 12:00:14.000000000 +0100 +++ linux/include/asm-i386/spinlock.h 2004-10-04 18:50:32.752864600 +0100 @@ -235,7 +235,7 @@ static inline int _raw_read_trylock(rwlo { atomic_t *count = (atomic_t *)lock; atomic_dec(count); - if (atomic_read(count) < RW_LOCK_BIAS) + if (atomic_read(count) >= 0) return 1; atomic_inc(count); return 0; --- 2.6.9-rc3-mm2/include/asm-x86_64/spinlock.h 2004-10-04 12:00:15.000000000 +0100 +++ linux/include/asm-x86_64/spinlock.h 2004-10-04 18:50:32.752864600 +0100 @@ -236,7 +236,7 @@ static inline int _raw_read_trylock(rwlo { atomic_t *count = (atomic_t *)lock; atomic_dec(count); - if (atomic_read(count) < RW_LOCK_BIAS) + if (atomic_read(count) >= 0) return 1; atomic_inc(count); return 0; ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 7:02 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 Ingo Molnar 2004-10-05 11:11 ` Rui Nuno Capela @ 2004-10-05 11:12 ` Florian Schmidt 2004-10-05 11:03 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Florian Schmidt @ 2004-10-05 11:12 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, mingo, Lee Revell, K.R. Foley, Rui Nuno Capela On Tue, 5 Oct 2004 03:02:05 -0400 (EDT) Ingo Molnar <mingo@redhat.com> wrote: > i've released the -T0 VP patch: > - fix !4K stack compilation breakage (reported by Lee Revell) I still need to enable 4k stacks to get it to build [see error below w/o 4k stacks]. But xrun hell is no more [as opposed to S8 and S9]. jackd seems to run fine again. I suspect the reverted scheduler changes to have fixed this [uneducated guess], since in S8 and S9 the system behaved all different [sloppy X when compiling stuff. jackd producing xruns although everything is setup for ll ok]. flo CC arch/i386/kernel/irq.o arch/i386/kernel/irq.c:205: error: redefinition of `is_irq_stack_ptr' include/asm/hardirq.h:25: error: `is_irq_stack_ptr' previously defined here arch/i386/kernel/irq.c: In function `is_irq_stack_ptr': arch/i386/kernel/irq.c:209: error: `hardirq_stack' undeclared (first use in this function) arch/i386/kernel/irq.c:209: error: (Each undeclared identifier is reported only once arch/i386/kernel/irq.c:209: error: for each function it appears in.) arch/i386/kernel/irq.c:212: error: `softirq_stack' undeclared (first use in this function) make[1]: *** [arch/i386/kernel/irq.o] Error 1 make: *** [arch/i386/kernel] Error 2 ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 11:12 ` Florian Schmidt @ 2004-10-05 11:03 ` Ingo Molnar 2004-10-05 11:14 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 11:03 UTC (permalink / raw) To: Florian Schmidt Cc: Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley, Rui Nuno Capela * Florian Schmidt <mista.tapas@gmx.net> wrote: > On Tue, 5 Oct 2004 03:02:05 -0400 (EDT) > Ingo Molnar <mingo@redhat.com> wrote: > > > i've released the -T0 VP patch: > > > - fix !4K stack compilation breakage (reported by Lee Revell) > > I still need to enable 4k stacks to get it to build [see error below w/o 4k > stacks]. doh - chunk went MIA. Updated the patch, please re-download -T0. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 11:03 ` Ingo Molnar @ 2004-10-05 11:14 ` Rui Nuno Capela 2004-10-05 11:16 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-05 11:14 UTC (permalink / raw) To: Ingo Molnar Cc: Florian Schmidt, Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley Ingo Molnar wrote: > > doh - chunk went MIA. Updated the patch, please re-download -T0. > Oops. Does it affect me? I've already test-ran T0 and sent away my early results. Guess it was too quick. Do I have to start all over? -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 2004-10-05 11:14 ` Rui Nuno Capela @ 2004-10-05 11:16 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 11:16 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, Florian Schmidt, linux-kernel, Lee Revell, K.R. Foley On Tue, 5 Oct 2004, Rui Nuno Capela wrote: > Ingo Molnar wrote: > > > > doh - chunk went MIA. Updated the patch, please re-download -T0. > > > > Oops. Does it affect me? no, it doesnt affect you - the bug only causes build breakage, not runtime breakage. > I've already test-ran T0 and sent away my early results. Guess it was > too quick. Do I have to start all over? [...] no. I'll reply to your other mail soon. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar ` (4 preceding siblings ...) 2004-10-05 7:02 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 Ingo Molnar @ 2004-10-05 13:47 ` Ingo Molnar 2004-10-05 16:37 ` Rui Nuno Capela ` (2 more replies) 5 siblings, 3 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 13:47 UTC (permalink / raw) To: linux-kernel; +Cc: Lee Revell, K.R. Foley, Rui Nuno Capela, Florian Schmidt i've released the -T1 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T1 Changes since -T0: - added the read-lock fix from Hugh that affects SMP systems. This could fix Rui's problem - i've checked -T1 on a P4/HT box and saw no problems, BYMMV. - compilation fixes (for those who downloaded T0 early) - small tracer improvement to build a -T1 tree from scratch the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc3.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc3/2.6.9-rc3-mm2/2.6.9-rc3-mm2.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar @ 2004-10-05 16:37 ` Rui Nuno Capela 2004-10-05 18:42 ` Ingo Molnar 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar 2004-10-08 11:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 William Lee Irwin III 2 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-05 16:37 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt [-- Attachment #1: Type: text/plain, Size: 745 bytes --] Ingo Molnar wrote: > > i've released the -T1 VP patch: > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T1 > > Changes since -T0: > > - added the read-lock fix from Hugh that affects SMP systems. This > could fix Rui's problem - i've checked -T1 on a P4/HT box and saw > no problems, BYMMV. > No go here. My milleage certainly varies :) Still the same ugliness here with T1. As before, there goes some info attached, which I could collect while barely up and running. I don't wanna be a PITA, but changes are hardly noticed since T0. Next I'll try building with CONFIG_SCHED_SMT off, and later with CONFIG_SMP off too, to just try to make some point here. CU -- rncbc aka Rui Nuno Capela rncbc@rncbc.org [-- Attachment #2: dump-2.6.9-rc3-mm2-T1.0smp.tar.gz --] [-- Type: application/x-tgz, Size: 16691 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 16:37 ` Rui Nuno Capela @ 2004-10-05 18:42 ` Ingo Molnar 2004-10-05 19:38 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 18:42 UTC (permalink / raw) To: Rui Nuno Capela; +Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt * Rui Nuno Capela <rncbc@rncbc.org> wrote: > Still the same ugliness here with T1. As before, there goes some info > attached, which I could collect while barely up and running. the dmesg info shows you had a crash early on, in khubd: Badness in remove_proc_entry at fs/proc/generic.c:688 [<c018c8e8>] remove_proc_entry+0x152/0x15a [<f8b8e116>] uhci_hcd_init+0x116/0x133 [uhci_hcd] [<c0135f0e>] sys_init_module+0x1df/0x2da [<c01044ed>] sysenter_past_esp+0x52/0x71 usb 3-1: new low speed USB device using address 2 Unable to handle kernel paging request at virtual address a49c0e0c i believe this is a crash present in -mm too. In theory such a crash could mess up the kernel so best would be if you could try a kernel with USB disabled? Hopefully none of your critical devices is on USB ... Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 18:42 ` Ingo Molnar @ 2004-10-05 19:38 ` Rui Nuno Capela 2004-10-05 19:44 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-05 19:38 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt Ingo Molnar wrote: > > * Rui Nuno Capela wrote: > >> Still the same ugliness here with T1. As before, there goes some info >> attached, which I could collect while barely up and running. > > the dmesg info shows you had a crash early on, in khubd: > > Badness in remove_proc_entry at fs/proc/generic.c:688 > [<c018c8e8>] remove_proc_entry+0x152/0x15a > [<f8b8e116>] uhci_hcd_init+0x116/0x133 [uhci_hcd] > [<c0135f0e>] sys_init_module+0x1df/0x2da > [<c01044ed>] sysenter_past_esp+0x52/0x71 > usb 3-1: new low speed USB device using address 2 > Unable to handle kernel paging request at virtual address a49c0e0c > > i believe this is a crash present in -mm too. In theory such a crash > could mess up the kernel so best would be if you could try a kernel with > USB disabled? Hopefully none of your critical devices is on USB ... > Yeah, I've found it the hard way :) One of my trials discovered just that, by booting without any USB devices plugged in. It booted apparently fine. Then, exacltly when I plug in my USB mouse (Wacom Graphire2 tablet), I immediately get the following kernel oops (on dmesg): IRQ#23 thread started up. IRQ#19 thread started up. usb 2-1: new low speed USB device using address 2 Unable to handle kernel paging request at virtual address aaf7ee8f printing eip: c014284b *pde = 00000000 Oops: 0000 [#1] PREEMPT SMP Modules linked in: mga ohci1394 ieee1394 ehci_hcd uhci_hcd intel_mch_agp agpgart snd_usb_usx2y snd_usb_lib snd_rawmidi snd_seq_device snd_hwdep snd_intel8x0 snd_ac97_codec snd_pcm snd_timer snd soundcore snd_page_alloc evdev sk98lin realtime commoncap w83781d i2c_sensor i2c_isa i2c_i801 i2c_core wacom usbcore subfs dm_mod CPU: 1 EIP: 0060:[<c014284b>] Not tainted VLI EFLAGS: 00010093 (2.6.9-rc3-mm2-T1.0smp) EIP is at check_poison_obj+0x98/0x1d0 eax: 0000006b ebx: f6e8a780 ecx: f6d254b8 edx: ffffffa5 esi: 00000000 edi: aaf7ee8f ebp: f74d3d10 esp: f74d3ce8 ds: 007b es: 007b ss: 0068 preempt: 00000002 Process khubd (pid: 1306, threadinfo=f74d3000 task=f7df2a40) Stack: f6e8a780 f74d3cfc c0130ce3 0000002b c0144658 00000000 0000002c f6e8a780 aaf7ee8b f6e8a780 f74d3d34 c01442f5 f6e8a780 aaf7ee8b f6d254b8 f6d254b8 f6e8a780 00000046 00000020 f74d3d58 c0144658 f6e8a780 00000020 aaf7ee8b Call Trace: [<c0130ce3>] __mcount+0x1d/0x1f [<c0144658>] kmem_cache_alloc+0x6b/0xa5 [<c01442f5>] cache_alloc_debugcheck_after+0x129/0x162 [<c0144658>] kmem_cache_alloc+0x6b/0xa5 [<f8c35ff9>] uhci_alloc_urb_priv+0x26/0x81 [uhci_hcd] [<f8c35ff9>] uhci_alloc_urb_priv+0x26/0x81 [uhci_hcd] [<f8c36fbb>] uhci_urb_enqueue+0x5d/0x2bc [uhci_hcd] [<c0110350>] mcount+0x14/0x18 [<f8b424f4>] hcd_submit_urb+0x127/0x194 [usbcore] [<f8b42e38>] usb_submit_urb+0x1e2/0x244 [usbcore] [<f8b430c7>] usb_start_wait_urb+0xe/0xe2 [usbcore] [<f8b4310c>] usb_start_wait_urb+0x53/0xe2 [usbcore] [<c0130ce3>] __mcount+0x1d/0x1f [<c01ea660>] kref_init+0x8/0x13 [<f8b42ba8>] usb_init_urb+0x27/0x3c [usbcore] [<c0110350>] mcount+0x14/0x18 [<f8b42bef>] usb_alloc_urb+0x32/0x52 [usbcore] [<f8b43215>] usb_internal_control_msg+0x7a/0x83 [usbcore] [<f8b432aa>] usb_control_msg+0x8c/0xa0 [usbcore] [<f8b3fe23>] hub_set_address+0x6d/0x90 [usbcore] [<f8b3fff7>] hub_port_init+0x1b1/0x39a [usbcore] [<f8b404d9>] hub_port_connect_change+0xfe/0x43a [usbcore] [<f8b409d3>] hub_events+0x1be/0x395 [usbcore] [<f8b40be1>] hub_thread+0x37/0x109 [usbcore] [<c0130845>] autoremove_wake_function+0x0/0x50 [<c0104416>] ret_from_fork+0x6/0x14 [<c0130845>] autoremove_wake_function+0x0/0x50 [<f8b40baa>] hub_thread+0x0/0x109 [usbcore] [<c0102601>] kernel_thread_helper+0x5/0xb Code: 89 44 24 08 e8 09 fe ff ff 83 45 ec 01 83 7d ec 05 7f 5b 83 c6 01 3b 75 f0 7d 53 3b 75 e4 b8 6b 00 00 00 ba a5 ff ff ff 0f 44 c2 <38> 04 3e 2e 74 e2 8b 45 ec 85 c0 75 a0 8b 55 f0 89 7c 24 04 c7 <6>note: khubd[1306] exited with preempt_count 1 Guess what? It's right after this crash that ksoftirqd/1 pulls up to 99.99%CPU#1 and stays still on that figure, forever. Of course, as Ingo noted, this was happening behind the scenes every time I was boot/initing. OTOH, I've tested T1 with CONFIG_SCHED_SMT and/or CONFIG_SMP not set, and got similar crashes too. So this seems to be some nasty bug introduced by -mm{1,2}, not by VP on SMP/SMT. Yes, I do have some critical USB devices around here. One is that wacom tablet (mouse) and the other is a tascam us-224 audio/midi control surface that a love very much :) Don't know if this makes me feeling better, doh. Cheers. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 19:38 ` Rui Nuno Capela @ 2004-10-05 19:44 ` Ingo Molnar 2004-10-05 20:01 ` Rui Nuno Capela 2004-10-06 0:12 ` Lee Revell 0 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-05 19:44 UTC (permalink / raw) To: Rui Nuno Capela; +Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt * Rui Nuno Capela <rncbc@rncbc.org> wrote: > OTOH, I've tested T1 with CONFIG_SCHED_SMT and/or CONFIG_SMP not set, > and got similar crashes too. So this seems to be some nasty bug > introduced by -mm{1,2}, not by VP on SMP/SMT. > > Yes, I do have some critical USB devices around here. One is that > wacom tablet (mouse) and the other is a tascam us-224 audio/midi > control surface that a love very much :) > > Don't know if this makes me feeling better, doh. i believe Andrew said that these USB problems should be fixed in the next -mm iteration. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 19:44 ` Ingo Molnar @ 2004-10-05 20:01 ` Rui Nuno Capela 2004-10-06 0:12 ` Lee Revell 1 sibling, 0 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-05 20:01 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt Ingo Molnar wrote: > > * Rui Nuno Capela wrote: > >> OTOH, I've tested T1 with CONFIG_SCHED_SMT and/or CONFIG_SMP not set, >> and got similar crashes too. So this seems to be some nasty bug >> introduced by -mm{1,2}, not by VP on SMP/SMT. >> >> Yes, I do have some critical USB devices around here. One is that >> wacom tablet (mouse) and the other is a tascam us-224 audio/midi >> control surface that a love very much :) >> >> Don't know if this makes me feeling better, doh. > > i believe Andrew said that these USB problems should be fixed in the > next -mm iteration. > Oh yes, I really do hope so :) Meanwhile, I'm stuck with 2.6.9-rc2-mm4-S7 (SMP), but happy. Strange thing is, that on my laptop, 2.6.9-rc3-mm2-S9 (UP) is doing just fine. Guess that ohci_hcd now makes the difference here, against the former which makes uhci_hcd bad behaved atm. Thanks Ingo. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 19:44 ` Ingo Molnar 2004-10-05 20:01 ` Rui Nuno Capela @ 2004-10-06 0:12 ` Lee Revell 2004-10-06 7:51 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-06 0:12 UTC (permalink / raw) To: Ingo Molnar; +Cc: Rui Nuno Capela, linux-kernel, K.R. Foley, Florian Schmidt On Tue, 2004-10-05 at 15:44, Ingo Molnar wrote: > * Rui Nuno Capela <rncbc@rncbc.org> wrote: > > > OTOH, I've tested T1 with CONFIG_SCHED_SMT and/or CONFIG_SMP not set, > > and got similar crashes too. So this seems to be some nasty bug > > introduced by -mm{1,2}, not by VP on SMP/SMT. > > > > Yes, I do have some critical USB devices around here. One is that > > wacom tablet (mouse) and the other is a tascam us-224 audio/midi > > control surface that a love very much :) > > > > Don't know if this makes me feeling better, doh. > > i believe Andrew said that these USB problems should be fixed in the > next -mm iteration. > FWIW, this one does not work for me either, I get a USB-related Oops on boot. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-06 0:12 ` Lee Revell @ 2004-10-06 7:51 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-06 7:51 UTC (permalink / raw) To: Lee Revell; +Cc: Rui Nuno Capela, linux-kernel, K.R. Foley, Florian Schmidt * Lee Revell <rlrevell@joe-job.com> wrote: > > i believe Andrew said that these USB problems should be fixed in the > > next -mm iteration. > > > > FWIW, this one does not work for me either, I get a USB-related Oops > on boot. by next -mm iteration i meant -rc3-mm3, which is not released yet. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar 2004-10-05 16:37 ` Rui Nuno Capela @ 2004-10-07 10:52 ` Ingo Molnar [not found] ` <20041007134116.3e53b239.h.mth@web.de> ` (11 more replies) 2004-10-08 11:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 William Lee Irwin III 2 siblings, 12 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-07 10:52 UTC (permalink / raw) To: linux-kernel Cc: Lee Revell, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano i've released the -T3 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 Changes since -T1 (-T2 was not announced): - rebased to -rc3-mm3. This should fix the build problems and further shrinks the -VP patch. Also, people who had USB problems please re-test -T3 as -mm3 is supposed to have much of those problems fixed. Also, the dvb-bt8xx.c build problem should be fixed in -mm3 too, plus a number of smp_processor_id() warnings were debugged and fixed as well. - fixed SWSUSPEND compilation. Could someone who uses swsuspend check whether sw-suspension works fine? - improved CONFIG_DEBUG_PREEMPT - this could help debug any potentially remaining unbalanced preemption counts that were reported. (but the fixes in -mm3 could fix them as well.) to build a -T3 tree from scratch the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc3.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc3/2.6.9-rc3-mm3/2.6.9-rc3-mm3.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
[parent not found: <20041007134116.3e53b239.h.mth@web.de>]
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 [not found] ` <20041007134116.3e53b239.h.mth@web.de> @ 2004-10-07 11:44 ` Ingo Molnar 2004-10-07 12:08 ` Hanno Meyer-Thurow 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-07 11:44 UTC (permalink / raw) To: Hanno Meyer-Thurow; +Cc: linux-kernel * Hanno Meyer-Thurow <h.mth@web.de> wrote: > > i've released the -T3 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > > i get this on compile: > > init/built-in.o(.text+0x18b): In function `rest_init': > : undefined reference to `sub_preempt_count' ok, this happens if PREEMPT_TIMING is not enabled. I've re-uploaded the new -T3 patch, please re-download it. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 11:44 ` Ingo Molnar @ 2004-10-07 12:08 ` Hanno Meyer-Thurow 0 siblings, 0 replies; 224+ messages in thread From: Hanno Meyer-Thurow @ 2004-10-07 12:08 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel On Thu, 7 Oct 2004 13:44:34 +0200 Ingo Molnar <mingo@elte.hu> wrote: > ok, this happens if PREEMPT_TIMING is not enabled. I've re-uploaded the > new -T3 patch, please re-download it. > > Ingo great! it works, thanks :) ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar [not found] ` <20041007134116.3e53b239.h.mth@web.de> @ 2004-10-07 12:16 ` Rui Nuno Capela 2004-10-07 13:53 ` Rui Nuno Capela ` (9 subsequent siblings) 11 siblings, 0 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-07 12:16 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano Hi Ingo, > > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > Didn't try this yet on my desktop (where those USB troubles roared), but on my laptop there's already a showstopper with while trying to start beloved jackd -R: --- Unable to handle kernel paging request at virtual address 00010024 printing eip: c011995f *pde = 00000000 Oops: 0002 [#1] PREEMPT Modules linked in: realtime commoncap snd_seq_oss snd_seq_midi_event snd_seq snd_pcm_oss snd_mixer_oss snd_usb_usx2y snd_usb_lib snd_rawmidi snd_seq_device snd_hwdep snd_ali5451 snd_ac97_codec snd_pcm snd_timer snd_page_alloc snd soundcore prism2_cs p80211 ds yenta_socket pcmcia_core natsemi crc32 ohci1394 ieee1394 loop subfs evdev ohci_hcd usbcore thermal processor fan button battery ac CPU: 0 EIP: 0060:[<c011995f>] Not tainted VLI EFLAGS: 00010086 (2.6.9-rc3-mm3-T3.0) EIP is at profile_hit+0x2f/0x33 eax: 00010024 ebx: de1f8510 ecx: 00000000 edx: 00000000 esi: 00000001 edi: ffffffea ebp: db32ef88 esp: db32ef88 ds: 007b es: 007b ss: 0068 preempt: 00000003 Process jackd (pid: 6519, threadinfo=db32e000 task=dec4fa00) Stack: db32efbc c0115431 00000002 c0104231 00000004 c0398460 c0102d2f 007d0f00 00000046 0000001e 00001979 b75a1bb0 b7fa5a4c db32e000 c0104231 00001979 00000001 b75a1dac b75a1bb0 b7fa5a4c bfffb9b8 0000009c 0000007b 0000007b Call Trace: [<c0115431>] setscheduler+0xc4/0x254 [<c0104231>] sysenter_past_esp+0x52/0x71 [<c0102d2f>] sys_clone+0x40/0x42 [<c0104231>] sysenter_past_esp+0x52/0x71 Code: b8 60 ff ff 8b 0d ec 16 3a c0 8b 15 e8 16 3a c0 8b 45 0c 83 ea 01 2d 28 02 10 c0 d3 e8 39 c2 0f 46 c2 8b 15 e4 16 3a c0 8d 04 82 <ff> 00 5d c3 55 89 e5 e8 85 60 ff ff b8 da ff ff ff 5d c3 55 89 <6>note: jackd[6519] exited with preempt_count 2 Debug: sleeping function called from invalid context jackd(6519) at kernel/fork.c:421 in_atomic():1, irqs_disabled():0 [<c0116385>] __might_sleep+0xb5/0xc5 [<c011921c>] vprintk+0x135/0x182 [<c0116927>] mm_release+0x72/0xcf [<c01190e5>] printk+0x1d/0x1f [<c011b3a6>] do_exit+0x85/0x506 [<c0112f0e>] do_page_fault+0x0/0x67e [<c0105539>] do_divide_error+0x0/0x13a [<c0112f0e>] do_page_fault+0x0/0x67e [<c01190e5>] printk+0x1d/0x1f [<c01133a7>] do_page_fault+0x499/0x67e [<c01c54dd>] __copy_from_user_ll+0x11/0x76 [<c012efbc>] check_preempt_timing+0x18f/0x1fb [<c012f1ce>] sub_preempt_count+0x5c/0x8b [<c0117869>] copy_process+0x610/0xcfe [<c010eca6>] sched_clock+0x14/0x8d [<c012f1ce>] sub_preempt_count+0x5c/0x8b [<c01146c3>] wake_up_new_task+0x142/0x190 [<c012efbc>] check_preempt_timing+0x18f/0x1fb [<c012f1ce>] sub_preempt_count+0x5c/0x8b [<c01146c3>] wake_up_new_task+0x142/0x190 [<c0117869>] copy_process+0x610/0xcfe [<c0117869>] copy_process+0x610/0xcfe [<c01146c3>] wake_up_new_task+0x142/0x190 [<c01146c3>] wake_up_new_task+0x142/0x190 [<c0112f0e>] do_page_fault+0x0/0x67e [<c0104c8d>] error_code+0x2d/0x38 [<c011995f>] profile_hit+0x2f/0x33 [<c0115431>] setscheduler+0xc4/0x254 [<c0104231>] sysenter_past_esp+0x52/0x71 [<c0102d2f>] sys_clone+0x40/0x42 [<c0104231>] sysenter_past_esp+0x52/0x71 scheduling while atomic: jackd/0x04000002/6519 [<c02d21cc>] schedule+0x554/0x5f5 [<c02d27f4>] cond_resched+0x5f/0x7f [<c011692c>] mm_release+0x77/0xcf [<c01190e5>] printk+0x1d/0x1f [<c011b3a6>] do_exit+0x85/0x506 [<c0112f0e>] do_page_fault+0x0/0x67e [<c0105539>] do_divide_error+0x0/0x13a [<c0112f0e>] do_page_fault+0x0/0x67e [<c01190e5>] printk+0x1d/0x1f [<c01133a7>] do_page_fault+0x499/0x67e [<c01c54dd>] __copy_from_user_ll+0x11/0x76 [<c012efbc>] check_preempt_timing+0x18f/0x1fb [<c012f1ce>] sub_preempt_count+0x5c/0x8b [<c0117869>] copy_process+0x610/0xcfe [<c010eca6>] sched_clock+0x14/0x8d [<c012f1ce>] sub_preempt_count+0x5c/0x8b [<c01146c3>] wake_up_new_task+0x142/0x190 [<c012efbc>] check_preempt_timing+0x18f/0x1fb [<c012f1ce>] sub_preempt_count+0x5c/0x8b [<c01146c3>] wake_up_new_task+0x142/0x190 [<c0117869>] copy_process+0x610/0xcfe [<c0117869>] copy_process+0x610/0xcfe [<c01146c3>] wake_up_new_task+0x142/0x190 [<c01146c3>] wake_up_new_task+0x142/0x190 [<c0112f0e>] do_page_fault+0x0/0x67e [<c0104c8d>] error_code+0x2d/0x38 [<c011995f>] profile_hit+0x2f/0x33 [<c0115431>] setscheduler+0xc4/0x254 [<c0104231>] sysenter_past_esp+0x52/0x71 [<c0102d2f>] sys_clone+0x40/0x42 [<c0104231>] sysenter_past_esp+0x52/0x71 --- This jackd crash seems to show up due to CONFIG_DEBUG_PREEMPT being set on, but not sure yet. CU -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar [not found] ` <20041007134116.3e53b239.h.mth@web.de> 2004-10-07 12:16 ` Rui Nuno Capela @ 2004-10-07 13:53 ` Rui Nuno Capela 2004-10-07 14:13 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-07 23:26 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Rui Nuno Capela 2004-10-07 17:55 ` K.R. Foley ` (8 subsequent siblings) 11 siblings, 2 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-07 13:53 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano > > please re-download it, this is another bug i've fixed in the re-uploaded > version. Does the new patch work? > OK. Now it works fine. Thanks Ingo. Maybe I'm just a plain idiot, but wouldn't it be welcome to add another dot number or whatever to the VP filename label? IMHO that should clear things of what actual patch release are we really applying. The crash with jackd wasn't the only one, some other sound apps also failed with similar kernel oopses dumps. And, just out of curiosity, I've also tested "vanilla" 2.6.9-rc3-mm3 and it looks like suffering from the same illness. So this has to be yet another "feature" of the -mm line ;) I'm glad this time VP came to the rescue :) Take care. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 13:53 ` Rui Nuno Capela @ 2004-10-07 14:13 ` Con Kolivas 2004-10-07 23:26 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Rui Nuno Capela 1 sibling, 0 replies; 224+ messages in thread From: Con Kolivas @ 2004-10-07 14:13 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano Rui Nuno Capela writes: >> >> please re-download it, this is another bug i've fixed in the re-uploaded >> version. Does the new patch work? >> > > OK. Now it works fine. Thanks Ingo. > > Maybe I'm just a plain idiot, but wouldn't it be welcome to add another > dot number or whatever to the VP filename label? IMHO that should clear > things of what actual patch release are we really applying. > > The crash with jackd wasn't the only one, some other sound apps also failed > with similar kernel oopses dumps. > > And, just out of curiosity, I've also tested "vanilla" 2.6.9-rc3-mm3 and > it looks like suffering from the same illness. So this has to be yet > another "feature" of the -mm line ;) Known issue; Follow this advice: http://marc.theaimsgroup.com/?l=linux-kernel&m=109714329614794&w=2 Con ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 13:53 ` Rui Nuno Capela 2004-10-07 14:13 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas @ 2004-10-07 23:26 ` Rui Nuno Capela 2004-10-08 5:36 ` Lee Revell 1 sibling, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-07 23:26 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano Ingo Molnar wrote: > >> >> i've released the -T3 VP patch: >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >> > OK. Just to let you know, both of my personal machines are now running on bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) - my laptop, Mandrake 10.1c: P4@2.5GHz UP - my desktop, SUSE 9.1 Pro: P4@2.8GHz HT/SMP USB is fine and so is jackd, only to mention my recently known annoyances. Even my Wacom Graphire USB is working without anything else but the kernel supplied stuff. Most of the previous kernel installs I had to pullover from linuxwacom.sf.net the mousedev, evdev and wacom modules, just to get this tablet working straight on X, but now it seems pretty native :) Good times are we living, eh? Take care. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 23:26 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Rui Nuno Capela @ 2004-10-08 5:36 ` Lee Revell 2004-10-08 6:49 ` Con Kolivas 2004-10-08 7:06 ` Ingo Molnar 0 siblings, 2 replies; 224+ messages in thread From: Lee Revell @ 2004-10-08 5:36 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano On Thu, 2004-10-07 at 19:26, Rui Nuno Capela wrote: > Ingo Molnar wrote: > > > >> > >> i've released the -T3 VP patch: > >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > >> > > > > OK. Just to let you know, both of my personal machines are now running on > bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) This actually feels a _lot_ snappier than mm2, which seemed prone to weird stalls. I don't have any numbers to back this up yet. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 5:36 ` Lee Revell @ 2004-10-08 6:49 ` Con Kolivas 2004-10-08 18:05 ` Lee Revell 2004-10-08 7:06 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Con Kolivas @ 2004-10-08 6:49 UTC (permalink / raw) To: Lee Revell Cc: Rui Nuno Capela, Ingo Molnar, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano Lee Revell wrote: > On Thu, 2004-10-07 at 19:26, Rui Nuno Capela wrote: > >>Ingo Molnar wrote: >> >>>>i've released the -T3 VP patch: >>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >>>> >>> >>OK. Just to let you know, both of my personal machines are now running on >>bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) > > > This actually feels a _lot_ snappier than mm2, which seemed prone to > weird stalls. I don't have any numbers to back this up yet. mm2 had a completely different cpu scheduler so no meaningful comparison can be made. Try comparing to mm3 vanilla. Cheers, Con ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 6:49 ` Con Kolivas @ 2004-10-08 18:05 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-08 18:05 UTC (permalink / raw) To: Con Kolivas Cc: Rui Nuno Capela, Ingo Molnar, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano On Fri, 2004-10-08 at 02:49, Con Kolivas wrote: > Lee Revell wrote: > > On Thu, 2004-10-07 at 19:26, Rui Nuno Capela wrote: > > > >>Ingo Molnar wrote: > >> > >>>>i've released the -T3 VP patch: > >>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > >>>> > >>> > >>OK. Just to let you know, both of my personal machines are now running on > >>bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) > > > > > > This actually feels a _lot_ snappier than mm2, which seemed prone to > > weird stalls. I don't have any numbers to back this up yet. > > mm2 had a completely different cpu scheduler so no meaningful comparison > can be made. Try comparing to mm3 vanilla. Well, I figured the change from -mm2 to -mm3 was responsible, as I have never seen the VP patches make a perceptible difference in system response time. The VP effect only becomes apparent when you do something that really needs millisecond or sub-ms latency. I guess a bug in the VP patch could cause performance regressions though. However no one reported sluggishness with mm2+S7, but it's apparent when you try mm3+T3 that it feels a lot more responsive. Anyway I was just wondering if there was an obvious change that would cause this. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 5:36 ` Lee Revell 2004-10-08 6:49 ` Con Kolivas @ 2004-10-08 7:06 ` Ingo Molnar 2004-10-08 7:36 ` Peter Williams 1 sibling, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-08 7:06 UTC (permalink / raw) To: Lee Revell Cc: Rui Nuno Capela, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano * Lee Revell <rlrevell@joe-job.com> wrote: > On Thu, 2004-10-07 at 19:26, Rui Nuno Capela wrote: > > Ingo Molnar wrote: > > > > > >> > > >> i've released the -T3 VP patch: > > >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > > >> > > > > > > > OK. Just to let you know, both of my personal machines are now running on > > bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) > > This actually feels a _lot_ snappier than mm2, which seemed prone to > weird stalls. I don't have any numbers to back this up yet. yeah, -mm is back to the development branch of the stock scheduler. (i.e. the scheduler changes destined for 2.6.10.) Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 7:06 ` Ingo Molnar @ 2004-10-08 7:36 ` Peter Williams 2004-10-08 17:27 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Peter Williams @ 2004-10-08 7:36 UTC (permalink / raw) To: Ingo Molnar Cc: Lee Revell, Rui Nuno Capela, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > >>On Thu, 2004-10-07 at 19:26, Rui Nuno Capela wrote: >> >>>Ingo Molnar wrote: >>> >>>>>i've released the -T3 VP patch: >>>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >>>>> >>>> >>>OK. Just to let you know, both of my personal machines are now running on >>>bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) >> >>This actually feels a _lot_ snappier than mm2, which seemed prone to >>weird stalls. I don't have any numbers to back this up yet. > > > yeah, -mm is back to the development branch of the stock scheduler. > (i.e. the scheduler changes destined for 2.6.10.) It's also got a fix for the cache hot timing bug which was causing havoc with the load balancer. Peter -- Peter Williams pwil3058@bigpond.net.au "Learning, n. The kind of ignorance distinguishing the studious." -- Ambrose Bierce ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 7:36 ` Peter Williams @ 2004-10-08 17:27 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-08 17:27 UTC (permalink / raw) To: Peter Williams Cc: Ingo Molnar, Rui Nuno Capela, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano On Fri, 2004-10-08 at 03:36, Peter Williams wrote: > Ingo Molnar wrote: > > * Lee Revell <rlrevell@joe-job.com> wrote: > > > > > >>On Thu, 2004-10-07 at 19:26, Rui Nuno Capela wrote: > >> > >>>Ingo Molnar wrote: > >>> > >>>>>i've released the -T3 VP patch: > >>>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > >>>>> > >>>> > >>>OK. Just to let you know, both of my personal machines are now running on > >>>bleeding-edge 2.6.9-rc3-mm3-T3, and very happily may I assure :) > >> > >>This actually feels a _lot_ snappier than mm2, which seemed prone to > >>weird stalls. I don't have any numbers to back this up yet. > > > > > > yeah, -mm is back to the development branch of the stock scheduler. > > (i.e. the scheduler changes destined for 2.6.10.) > > It's also got a fix for the cache hot timing bug which was causing havoc > with the load balancer. Wouldn't this only be an issue on SMP? I am on a UP system. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (2 preceding siblings ...) 2004-10-07 13:53 ` Rui Nuno Capela @ 2004-10-07 17:55 ` K.R. Foley 2004-10-07 20:29 ` K.R. Foley 2004-10-08 21:14 ` Lee Revell ` (7 subsequent siblings) 11 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-10-07 17:55 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > For me, this one wants to panic on boot when trying to find the root filesystem. Acts like either the aic7xxx module is missing (which I don't think is the case) or hosed, or it's having trouble with the label for the root partition (Fedora system). Will investigate further when I get home tonight, unless something jumps out at anyone. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 17:55 ` K.R. Foley @ 2004-10-07 20:29 ` K.R. Foley 2004-10-07 21:55 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-10-07 20:29 UTC (permalink / raw) To: K.R. Foley Cc: Ingo Molnar, linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano K.R. Foley wrote: > Ingo Molnar wrote: > >> i've released the -T3 VP patch: >> >> >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >> >> > > For me, this one wants to panic on boot when trying to find the root > filesystem. Acts like either the aic7xxx module is missing (which I > don't think is the case) or hosed, or it's having trouble with the label > for the root partition (Fedora system). Will investigate further when I > get home tonight, unless something jumps out at anyone. > > kr For clarification: This appears to be a problem in 2.6.9-rc3-mm3 also. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 20:29 ` K.R. Foley @ 2004-10-07 21:55 ` Ingo Molnar 2004-10-08 1:41 ` K.R. Foley 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-07 21:55 UTC (permalink / raw) To: K.R. Foley Cc: linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano * K.R. Foley <kr@cybsft.com> wrote: > >For me, this one wants to panic on boot when trying to find the root > >filesystem. Acts like either the aic7xxx module is missing (which I > >don't think is the case) or hosed, or it's having trouble with the label > >for the root partition (Fedora system). Will investigate further when I > >get home tonight, unless something jumps out at anyone. > > > >kr > > For clarification: This appears to be a problem in 2.6.9-rc3-mm3 also. try root=/dev/sda3 (or whereever your root fs is) instead of root=LABEL=/, in /etc/grub.conf. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 21:55 ` Ingo Molnar @ 2004-10-08 1:41 ` K.R. Foley 2004-10-08 7:02 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-10-08 1:41 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano Ingo Molnar wrote: > * K.R. Foley <kr@cybsft.com> wrote: > > >>>For me, this one wants to panic on boot when trying to find the root >>>filesystem. Acts like either the aic7xxx module is missing (which I >>>don't think is the case) or hosed, or it's having trouble with the label >>>for the root partition (Fedora system). Will investigate further when I >>>get home tonight, unless something jumps out at anyone. >>> >>>kr >> >>For clarification: This appears to be a problem in 2.6.9-rc3-mm3 also. > > > try root=/dev/sda3 (or whereever your root fs is) instead of > root=LABEL=/, in /etc/grub.conf. > > Ingo > Thanks. Tried that just to be sure. However, I don't seem to be the only one having this problem with aic7xxx. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 1:41 ` K.R. Foley @ 2004-10-08 7:02 ` Ingo Molnar 2004-10-08 14:03 ` K.R. Foley 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-08 7:02 UTC (permalink / raw) To: K.R. Foley Cc: linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano * K.R. Foley <kr@cybsft.com> wrote: > Ingo Molnar wrote: > >* K.R. Foley <kr@cybsft.com> wrote: > > > > > >>>For me, this one wants to panic on boot when trying to find the root > >>>filesystem. Acts like either the aic7xxx module is missing (which I > >>>don't think is the case) or hosed, or it's having trouble with the label > >>>for the root partition (Fedora system). Will investigate further when I > >>>get home tonight, unless something jumps out at anyone. > >>> > >>>kr > >> > >>For clarification: This appears to be a problem in 2.6.9-rc3-mm3 also. > > > > > >try root=/dev/sda3 (or whereever your root fs is) instead of > >root=LABEL=/, in /etc/grub.conf. > > > > Ingo > > > > Thanks. Tried that just to be sure. However, I don't seem to be the > only one having this problem with aic7xxx. could you send me the following info: - full log of a failed boot - full log of a successful boot - the output of 'mount' Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 7:02 ` Ingo Molnar @ 2004-10-08 14:03 ` K.R. Foley 2004-10-08 14:28 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-10-08 14:03 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano [-- Attachment #1: Type: text/plain, Size: 2152 bytes --] Ingo Molnar wrote: > * K.R. Foley <kr@cybsft.com> wrote: > > >>Ingo Molnar wrote: >> >>>* K.R. Foley <kr@cybsft.com> wrote: >>> >>> >>> >>>>>For me, this one wants to panic on boot when trying to find the root >>>>>filesystem. Acts like either the aic7xxx module is missing (which I >>>>>don't think is the case) or hosed, or it's having trouble with the label >>>>>for the root partition (Fedora system). Will investigate further when I >>>>>get home tonight, unless something jumps out at anyone. >>>>> >>>>>kr >>>> >>>>For clarification: This appears to be a problem in 2.6.9-rc3-mm3 also. >>> >>> >>>try root=/dev/sda3 (or whereever your root fs is) instead of >>>root=LABEL=/, in /etc/grub.conf. >>> >>> Ingo >>> >> >>Thanks. Tried that just to be sure. However, I don't seem to be the >>only one having this problem with aic7xxx. > > Ingo, First let me say that, in case you haven't been following the other thread about this "2.6.9-rc3-mm3 fails to detect aic7xxx", I resolved this by backing out the bk-scsi.patch and bk-scsi-target.patch. Without those everything works fine. > could you send me the following info: > > - full log of a failed boot I would like to be able to be able to send you this, but it doesn't get to the point of logging. It dies trying to find the / device. On the screen it displays the parameters for the chosen option in grub.conf, says its uncompressing, then displays the Nash version info, then displays a panic message about not finding the root device. Something on the order of: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) Do you think that I would actually get to see more info out of this if I connect a serial console? > - full log of a successful boot Attached. > - the output of 'mount' [root@porky root]# mount /dev/sda2 on / type ext3 (rw) none on /proc type proc (rw) none on /sys type sysfs (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) /dev/sda1 on /boot type ext3 (rw) /dev/sdb1 on /proj1 type ext3 (rw) none on /dev/shm type tmpfs (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) > > Ingo > thanks, kr [-- Attachment #2: bootlog.ok --] [-- Type: text/plain, Size: 23743 bytes --] Oct 8 06:48:42 porky syslogd 1.4.1: restart. Oct 8 06:48:42 porky syslog: syslogd startup succeeded Oct 8 06:48:42 porky syslog: klogd startup succeeded Oct 8 06:48:42 porky kernel: klogd 1.4.1, log source = /proc/kmsg started. Oct 8 06:48:42 porky kernel: Linux version 2.6.9-rc3-mm3-VP-T3 (kr@porky.cybersoft.int) (gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)) #8 SMP Thu Oct 7 23:07:40 CDT 2004 Oct 8 06:48:42 porky kernel: BIOS-provided physical RAM map: Oct 8 06:48:42 porky kernel: BIOS-e820: 0000000000000000 - 00000000000a0000 (usable) Oct 8 06:48:42 porky kernel: BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved) Oct 8 06:48:42 porky kernel: BIOS-e820: 0000000000100000 - 000000001ff9e000 (usable) Oct 8 06:48:42 porky kernel: BIOS-e820: 000000001ff9e000 - 0000000020000000 (reserved) Oct 8 06:48:42 porky kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) Oct 8 06:48:42 porky kernel: BIOS-e820: 00000000fee00000 - 00000000fee10000 (reserved) Oct 8 06:48:42 porky kernel: BIOS-e820: 00000000ffb00000 - 0000000100000000 (reserved) Oct 8 06:48:42 porky kernel: 0MB HIGHMEM available. Oct 8 06:48:42 porky kernel: 511MB LOWMEM available. Oct 8 06:48:42 porky kernel: found SMP MP-table at 000fe710 Oct 8 06:48:42 porky kernel: DMI 2.3 present. Oct 8 06:48:42 porky irqbalance: irqbalance startup succeeded Oct 8 06:48:42 porky kernel: ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) Oct 8 06:48:42 porky kernel: Processor #0 6:8 APIC version 17 Oct 8 06:48:42 porky kernel: ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled) Oct 8 06:48:42 porky kernel: Processor #1 6:8 APIC version 17 Oct 8 06:48:42 porky kernel: ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) Oct 8 06:48:42 porky kernel: ACPI: LAPIC_NMI (acpi_id[0x02] high edge lint[0x1]) Oct 8 06:48:42 porky kernel: Using ACPI for processor (LAPIC) configuration information Oct 8 06:48:42 porky kernel: Intel MultiProcessor Specification v1.4 Oct 8 06:48:42 porky kernel: Virtual Wire compatibility mode. Oct 8 06:48:42 porky kernel: OEM ID: DELL Product ID: WS 620 APIC at: 0xFEE00000 Oct 8 06:48:42 porky kernel: I/O APIC #2 Version 32 at 0xFEC00000. Oct 8 06:48:42 porky kernel: Enabling APIC mode: Flat. Using 1 I/O APICs Oct 8 06:48:42 porky kernel: Processors: 2 Oct 8 06:48:42 porky portmap: portmap startup succeeded Oct 8 06:48:42 porky kernel: Built 1 zonelists Oct 8 06:48:42 porky kernel: Initializing CPU#0 Oct 8 06:48:43 porky kernel: Kernel command line: ro root=LABEL=/ rhgb quiet noapic Oct 8 06:48:43 porky kernel: (swapper/0): new 196391 us maximum-latency critical section. Oct 8 06:48:43 porky kernel: => started at: <start_kernel+0x48/0x1e0> Oct 8 06:48:43 porky kernel: => ended at: <cond_resched+0x25/0x80> Oct 8 06:48:43 porky kernel: [<c0137a38>] touch_preempt_timing+0x48/0x50 Oct 8 06:48:43 porky kernel: [<c0137952>] check_preempt_timing+0x162/0x200 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky kernel: [<c0137a38>] touch_preempt_timing+0x48/0x50 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky rpc.statd[2435]: Version 1.0.6 Starting Oct 8 06:48:43 porky kernel: [<c0138e58>] register_cpu_notifier+0x18/0x60 Oct 8 06:48:43 porky kernel: [<c0133688>] rcu_cpu_notify+0x38/0x40 Oct 8 06:48:43 porky kernel: [<c0381d0d>] rcu_init+0x6d/0x80 Oct 8 06:48:43 porky kernel: [<c037097c>] start_kernel+0xbc/0x1e0 Oct 8 06:48:43 porky nfslock: rpc.statd startup succeeded Oct 8 06:48:43 porky kernel: [<c0370440>] unknown_bootoption+0x0/0x190 Oct 8 06:48:43 porky kernel: PID hash table entries: 2048 (order: 11, 32768 bytes) Oct 8 06:48:43 porky kernel: (swapper/0): new 205265 us maximum-latency critical section. Oct 8 06:48:43 porky kernel: => started at: <cond_resched+0x25/0x80> Oct 8 06:48:43 porky kernel: => ended at: <cond_resched+0x25/0x80> Oct 8 06:48:43 porky kernel: [<c0137a38>] touch_preempt_timing+0x48/0x50 Oct 8 06:48:43 porky kernel: [<c0137952>] check_preempt_timing+0x162/0x200 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky kernel: [<c0137a38>] touch_preempt_timing+0x48/0x50 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky kernel: [<c0138e58>] register_cpu_notifier+0x18/0x60 Oct 8 06:48:43 porky kernel: [<c012b21b>] timer_cpu_notify+0x2b/0x30 Oct 8 06:48:43 porky kernel: [<c03819d5>] init_timers+0x35/0x60 Oct 8 06:48:43 porky kernel: [<c037098b>] start_kernel+0xcb/0x1e0 Oct 8 06:48:43 porky kernel: [<c0370440>] unknown_bootoption+0x0/0x190 Oct 8 06:48:43 porky kernel: Detected 931.130 MHz processor. Oct 8 06:48:43 porky kernel: Using tsc for high-res timesource Oct 8 06:48:43 porky kernel: (swapper/0): new 502992 us maximum-latency critical section. Oct 8 06:48:43 porky kernel: => started at: <cond_resched+0x25/0x80> Oct 8 06:48:43 porky kernel: => ended at: <cond_resched+0x25/0x80> Oct 8 06:48:43 porky kernel: [<c0137a38>] touch_preempt_timing+0x48/0x50 Oct 8 06:48:43 porky kernel: [<c0137952>] check_preempt_timing+0x162/0x200 Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:43 porky kernel: [<c0137a38>] touch_preempt_timing+0x48/0x50 Oct 8 06:48:43 porky rpcidmapd: rpc.idmapd startup succeeded Oct 8 06:48:43 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:44 porky kernel: [<c02b67b5>] cond_resched+0x25/0x80 Oct 8 06:48:44 porky kernel: [<c01212fb>] acquire_console_sem+0x2b/0x60 Oct 8 06:48:44 porky kernel: [<c038a4e3>] con_init+0x13/0x2b0 Oct 8 06:48:44 porky kernel: [<c0114df0>] mcount+0x14/0x18 Oct 8 06:48:44 porky kernel: [<c0389a12>] console_init+0x42/0x50 Oct 8 06:48:44 porky kernel: [<c037099a>] start_kernel+0xda/0x1e0 Oct 8 06:48:44 porky kernel: [<c0370440>] unknown_bootoption+0x0/0x190 Oct 8 06:48:44 porky kernel: Console: colour VGA+ 80x25 Oct 8 06:48:44 porky random: Initializing random number generator: succeeded Oct 8 06:48:44 porky kernel: Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) Oct 8 06:48:44 porky kernel: Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) Oct 8 06:48:44 porky kernel: Memory: 513384k/523896k available (1762k kernel code, 9892k reserved, 725k data, 284k init, 0k highmem) Oct 8 06:48:44 porky kernel: Checking if this processor honours the WP bit even in supervisor mode... Ok. Oct 8 06:48:44 porky kernel: Security Scaffold v1.0.0 initialized Oct 8 06:48:44 porky kernel: Capability LSM initialized Oct 8 06:48:44 porky kernel: Mount-cache hash table entries: 512 (order: 0, 4096 bytes) Oct 8 06:48:44 porky rc: Starting pcmcia: succeeded Oct 8 06:48:44 porky kernel: CPU: L1 I cache: 16K, L1 D cache: 16K Oct 8 06:48:44 porky kernel: CPU: L2 cache: 256K Oct 8 06:48:44 porky kernel: Intel machine check architecture supported. Oct 8 06:48:44 porky kernel: Intel machine check reporting enabled on CPU#0. Oct 8 06:48:44 porky kernel: Enabling fast FPU save and restore... done. Oct 8 06:48:44 porky kernel: Enabling unmasked SIMD FPU exception support... done. Oct 8 06:48:44 porky kernel: Checking 'hlt' instruction... OK. Oct 8 06:48:44 porky kernel: CPU0: Intel Pentium III (Coppermine) stepping 06 Oct 8 06:48:44 porky kernel: per-CPU timeslice cutoff: 731.28 usecs. Oct 8 06:48:39 porky sysctl: kernel.sysrq = 0 Oct 8 06:48:44 porky kernel: task migration cache decay timeout: 1 msecs. Oct 8 06:48:39 porky sysctl: kernel.core_uses_pid = 1 Oct 8 06:48:44 porky kernel: Booting processor 1/1 eip 2000 Oct 8 06:48:39 porky network: Setting network parameters: succeeded Oct 8 06:48:44 porky kernel: Initializing CPU#1 Oct 8 06:48:39 porky network: Bringing up loopback interface: succeeded Oct 8 06:48:44 porky netfs: Mounting other filesystems: succeeded Oct 8 06:48:44 porky kernel: CPU: L1 I cache: 16K, L1 D cache: 16K Oct 8 06:48:44 porky kernel: CPU: L2 cache: 256K Oct 8 06:48:44 porky kernel: Intel machine check architecture supported. Oct 8 06:48:44 porky kernel: Intel machine check reporting enabled on CPU#1. Oct 8 06:48:44 porky kernel: CPU1: Intel Pentium III (Coppermine) stepping 06 Oct 8 06:48:44 porky kernel: Total of 2 processors activated (3682.30 BogoMIPS). Oct 8 06:48:44 porky kernel: checking TSC synchronization across 2 CPUs: passed. Oct 8 06:48:44 porky kernel: ksoftirqd started up. Oct 8 06:48:44 porky kernel: Brought up 2 CPUs Oct 8 06:48:44 porky kernel: ksoftirqd started up. Oct 8 06:48:44 porky kernel: checking if image is initramfs...it isn't (no cpio magic); looks like an initrd Oct 8 06:48:44 porky kernel: Freeing initrd memory: 355k freed Oct 8 06:48:44 porky kernel: NET: Registered protocol family 16 Oct 8 06:48:44 porky autofs: automount startup succeeded Oct 8 06:48:44 porky kernel: PCI: PCI BIOS revision 2.10 entry at 0xfc03e, last bus=4 Oct 8 06:48:44 porky kernel: PCI: Using configuration type 1 Oct 8 06:48:44 porky kernel: mtrr: v2.0 (20020519) Oct 8 06:48:44 porky kernel: Linux Plug and Play Support v0.97 (c) Adam Belay Oct 8 06:48:44 porky kernel: PCI: Probing PCI hardware Oct 8 06:48:44 porky kernel: PCI: Probing PCI hardware (bus 00) Oct 8 06:48:44 porky kernel: PCI: Transparent bridge - 0000:00:1e.0 Oct 8 06:48:44 porky kernel: PCI: Using IRQ router PIIX/ICH [8086/2410] at 0000:00:1f.0 Oct 8 06:48:45 porky smartd[2575]: smartd version 5.21 Copyright (C) 2002-3 Bruce Allen Oct 8 06:48:45 porky kernel: PCI: Failed to allocate mem resource #0:1000@0 for 0000:03:00.0 Oct 8 06:48:45 porky smartd[2575]: Home page is http://smartmontools.sourceforge.net/ Oct 8 06:48:45 porky kernel: apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16ac) Oct 8 06:48:45 porky smartd[2575]: Opened configuration file /etc/smartd.conf Oct 8 06:48:45 porky kernel: apm: disabled - APM is not SMP safe. Oct 8 06:48:45 porky smartd[2575]: Configuration file /etc/smartd.conf parsed. Oct 8 06:48:45 porky kernel: Starting balanced_irq Oct 8 06:48:45 porky smartd[2575]: Device: /dev/hda, opened Oct 8 06:48:45 porky kernel: VFS: Disk quotas dquot_6.5.1 Oct 8 06:48:45 porky smartd[2575]: Device: /dev/hda, unable to read Device Identity Structure Oct 8 06:48:45 porky kernel: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) Oct 8 06:48:45 porky smartd[2575]: Unable to register ATA device /dev/hda at line 30 of file /etc/smartd.conf Oct 8 06:48:45 porky kernel: Initializing Cryptographic API Oct 8 06:48:45 porky smartd[2575]: Unable to register device /dev/hda (no Directive -d removable). Exiting. Oct 8 06:48:45 porky kernel: vesafb: probe of vesafb0 failed with error -6 Oct 8 06:48:45 porky kernel: isapnp: Scanning for PnP cards... Oct 8 06:48:45 porky smartd: smartd startup failed Oct 8 06:48:45 porky kernel: isapnp: No Plug & Play device found Oct 8 06:48:45 porky kernel: requesting new irq thread for IRQ8... Oct 8 06:48:45 porky kernel: Real Time Clock Driver v1.12 Oct 8 06:48:45 porky kernel: requesting new irq thread for IRQ12... Oct 8 06:48:45 porky kernel: serio: i8042 AUX port at 0x60,0x64 irq 12 Oct 8 06:48:45 porky kernel: serio: i8042 KBD port at 0x60,0x64 irq 1 Oct 8 06:48:45 porky kernel: io scheduler noop registered Oct 8 06:48:45 porky kernel: io scheduler anticipatory registered Oct 8 06:48:45 porky kernel: io scheduler deadline registered Oct 8 06:48:45 porky kernel: io scheduler cfq registered Oct 8 06:48:45 porky kernel: RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize Oct 8 06:48:45 porky kernel: Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 Oct 8 06:48:45 porky kernel: ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Oct 8 06:48:45 porky kernel: ICH: IDE controller at PCI slot 0000:00:1f.1 Oct 8 06:48:45 porky kernel: ICH: chipset revision 2 Oct 8 06:48:45 porky kernel: ICH: not 100%% native mode: will probe irqs later Oct 8 06:48:45 porky kernel: ide0: BM-DMA at 0xffa0-0xffa7, BIOS settings: hda:DMA, hdb:pio Oct 8 06:48:45 porky kernel: ide1: BM-DMA at 0xffa8-0xffaf, BIOS settings: hdc:DMA, hdd:pio Oct 8 06:48:45 porky kernel: hda: SAMSUNG CD-R/RW SW-248F, ATAPI CD/DVD-ROM drive Oct 8 06:48:45 porky kernel: requesting new irq thread for IRQ14... Oct 8 06:48:45 porky kernel: elevator: using anticipatory as default io scheduler Oct 8 06:48:45 porky kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Oct 8 06:48:45 porky kernel: hdc: Lite-On LTN483S 48x Max, ATAPI CD/DVD-ROM drive Oct 8 06:48:45 porky kernel: requesting new irq thread for IRQ15... Oct 8 06:48:45 porky kernel: ide1 at 0x170-0x177,0x376 on irq 15 Oct 8 06:48:46 porky kernel: mice: PS/2 mouse device common for all mice Oct 8 06:48:46 porky kernel: IRQ#12 thread started up. Oct 8 06:48:46 porky kernel: requesting new irq thread for IRQ1... Oct 8 06:48:46 porky kernel: IRQ#1 thread started up. Oct 8 06:48:46 porky kernel: input: AT Translated Set 2 keyboard on isa0060/serio0 Oct 8 06:48:46 porky kernel: input: ImPS/2 Generic Wheel Mouse on isa0060/serio1 Oct 8 06:48:46 porky kernel: md: md driver 0.90.0 MAX_MD_DEVS=256, MD_SB_DISKS=27 Oct 8 06:48:46 porky kernel: NET: Registered protocol family 2 Oct 8 06:48:46 porky kernel: IP: routing cache hash table of 2048 buckets, 32Kbytes Oct 8 06:48:46 porky kernel: TCP: Hash tables configured (established 16384 bind 21845) Oct 8 06:48:46 porky kernel: NET: Registered protocol family 1 Oct 8 06:48:46 porky kernel: NET: Registered protocol family 17 Oct 8 06:48:46 porky kernel: NET: Registered protocol family 8 Oct 8 06:48:46 porky kernel: NET: Registered protocol family 20 Oct 8 06:48:46 porky kernel: md: Autodetecting RAID arrays. Oct 8 06:48:46 porky kernel: md: autorun ... Oct 8 06:48:46 porky rc: Starting hpoj: succeeded Oct 8 06:48:46 porky kernel: md: ... autorun DONE. Oct 8 06:48:46 porky kernel: RAMDISK: Compressed image found at block 0 Oct 8 06:48:46 porky kernel: VFS: Mounted root (ext2 filesystem). Oct 8 06:48:46 porky kernel: SCSI subsystem initialized Oct 8 06:48:46 porky kernel: PCI: Found IRQ 10 for device 0000:04:05.0 Oct 8 06:48:46 porky kernel: PCI: Sharing IRQ 10 with 0000:00:1f.3 Oct 8 06:48:47 porky kernel: requesting new irq thread for IRQ10... Oct 8 06:48:47 porky kernel: PCI: Found IRQ 5 for device 0000:04:05.1 Oct 8 06:48:47 porky kernel: PCI: Sharing IRQ 5 with 0000:04:0a.0 Oct 8 06:48:47 porky kernel: requesting new irq thread for IRQ5... Oct 8 06:48:47 porky kernel: scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36 Oct 8 06:48:47 porky kernel: <Adaptec aic7899 Ultra160 SCSI adapter> Oct 8 06:48:47 porky kernel: aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs Oct 8 06:48:47 porky kernel: Oct 8 06:48:47 porky kernel: IRQ#10 thread started up. Oct 8 06:48:47 porky kernel: (scsi0:A:0): 160.000MB/s transfers (80.000MHz DT, offset 127, 16bit) Oct 8 06:48:47 porky kernel: Vendor: QUANTUM Model: ATLAS10K2-TY092L Rev: DA40 Oct 8 06:48:47 porky kernel: Type: Direct-Access ANSI SCSI revision: 03 Oct 8 06:48:48 porky kernel: scsi0:A:0:0: Tagged Queuing enabled. Depth 32 Oct 8 06:48:48 porky kernel: SCSI device sda: 17783239 512-byte hdwr sectors (9105 MB) Oct 8 06:48:48 porky kernel: SCSI device sda: drive cache: write back Oct 8 06:48:48 porky kernel: sda: sda1 sda2 sda3 Oct 8 06:48:48 porky kernel: Attached scsi disk sda at scsi0, channel 0, id 0, lun 0 Oct 8 06:48:48 porky kernel: scsi1 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36 Oct 8 06:48:48 porky kernel: <Adaptec aic7899 Ultra160 SCSI adapter> Oct 8 06:48:48 porky kernel: aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs Oct 8 06:48:48 porky kernel: Oct 8 06:48:48 porky kernel: IRQ#5 thread started up. Oct 8 06:48:48 porky kernel: (scsi1:A:0): 20.000MB/s transfers (20.000MHz, offset 15) Oct 8 06:48:48 porky kernel: Vendor: SEAGATE Model: SX118273LC Rev: 6679 Oct 8 06:48:48 porky kernel: Type: Direct-Access ANSI SCSI revision: 02 Oct 8 06:48:48 porky kernel: scsi1:A:0:0: Tagged Queuing enabled. Depth 32 Oct 8 06:48:48 porky kernel: SCSI device sdb: 35566480 512-byte hdwr sectors (18210 MB) Oct 8 06:48:48 porky kernel: SCSI device sdb: drive cache: write through Oct 8 06:48:48 porky kernel: sdb: sdb1 Oct 8 06:48:48 porky kernel: Attached scsi disk sdb at scsi1, channel 0, id 0, lun 0 Oct 8 06:48:48 porky kernel: EXT3-fs: mounted filesystem with ordered data mode. Oct 8 06:48:48 porky kernel: kjournald starting. Commit interval 5 seconds Oct 8 06:48:48 porky kernel: Freeing unused kernel memory: 284k freed Oct 8 06:48:48 porky kernel: NET: Registered protocol family 10 Oct 8 06:48:48 porky kernel: IPv6 over IPv4 tunneling driver Oct 8 06:48:48 porky kernel: IRQ#8 thread started up. Oct 8 06:48:48 porky kernel: usbcore: registered new driver usbfs Oct 8 06:48:48 porky kernel: usbcore: registered new driver hub Oct 8 06:48:48 porky kernel: USB Universal Host Controller Interface driver v2.2 Oct 8 06:48:48 porky kernel: PCI: Found IRQ 11 for device 0000:00:1f.2 Oct 8 06:48:48 porky kernel: uhci_hcd 0000:00:1f.2: Intel Corp. 82801AA USB Oct 8 06:48:48 porky kernel: requesting new irq thread for IRQ11... Oct 8 06:48:48 porky kernel: uhci_hcd 0000:00:1f.2: irq 11, io base 0xff80 Oct 8 06:48:48 porky kernel: uhci_hcd 0000:00:1f.2: new USB bus registered, assigned bus number 1 Oct 8 06:48:48 porky kernel: hub 1-0:1.0: USB hub found Oct 8 06:48:48 porky kernel: hub 1-0:1.0: 2 ports detected Oct 8 06:48:48 porky kernel: EXT3 FS on sda2, internal journal Oct 8 06:48:48 porky kernel: device-mapper: 4.1.0-ioctl (2003-12-10) initialised: dm@uk.sistina.com Oct 8 06:48:48 porky kernel: Adding 1044216k swap on /dev/sda3. Priority:-1 extents:1 Oct 8 06:48:48 porky kernel: program scsi_unique_id is using a deprecated SCSI ioctl, please convert it to SG_IO Oct 8 06:48:49 porky last message repeated 11 times Oct 8 06:48:49 porky kernel: kjournald starting. Commit interval 5 seconds Oct 8 06:48:49 porky kernel: EXT3 FS on sda1, internal journal Oct 8 06:48:49 porky kernel: EXT3-fs: mounted filesystem with ordered data mode. Oct 8 06:48:49 porky kernel: kjournald starting. Commit interval 5 seconds Oct 8 06:48:49 porky kernel: EXT3 FS on sdb1, internal journal Oct 8 06:48:49 porky kernel: EXT3-fs: mounted filesystem with ordered data mode. Oct 8 06:48:49 porky kernel: IA-32 Microcode Update Driver: v1.14 <tigran@veritas.com> Oct 8 06:48:49 porky kernel: microcode: CPU0 already at revision 0x2 (current=0x2) Oct 8 06:48:49 porky kernel: microcode: CPU1 already at revision 0x2 (current=0x2) Oct 8 06:48:49 porky kernel: microcode: No suitable data for CPU0 Oct 8 06:48:49 porky kernel: microcode: No suitable data for CPU1 Oct 8 06:48:49 porky kernel: parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE,EPP] Oct 8 06:48:49 porky kernel: parport0: irq 7 detected Oct 8 06:48:49 porky kernel: Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0 Oct 8 06:48:49 porky kernel: Attached scsi generic sg1 at scsi1, channel 0, id 0, lun 0, type 0 Oct 8 06:48:49 porky kernel: inserting floppy driver for 2.6.9-rc3-mm3-VP-T3 Oct 8 06:48:49 porky kernel: Floppy drive(s): fd0 is 1.44M Oct 8 06:48:49 porky kernel: requesting new irq thread for IRQ6... Oct 8 06:48:49 porky kernel: IRQ#6 thread started up. Oct 8 06:48:49 porky kernel: FDC 0 is a National Semiconductor PC87306 Oct 8 06:48:49 porky kernel: Linux Tulip driver version 1.1.13 (May 11, 2002) Oct 8 06:48:49 porky kernel: PCI: Found IRQ 5 for device 0000:04:0a.0 Oct 8 06:48:49 porky kernel: PCI: Sharing IRQ 5 with 0000:04:05.1 Oct 8 06:48:49 porky kernel: tulip0: EEPROM default media type Autosense. Oct 8 06:48:49 porky kernel: tulip0: Index #0 - Media MII (#11) described by a 21140 MII PHY (1) block. Oct 8 06:48:49 porky kernel: tulip0: MII transceiver #3 config 3100 status 7809 advertising 01e1. Oct 8 06:48:49 porky kernel: eth0: Digital DS21140 Tulip rev 32 at 0xe480, 00:00:C0:7F:A0:E9, IRQ 5. Oct 8 06:48:49 porky kernel: tulip 0000:04:0a.0: Device was removed without properly calling pci_disable_device(). This may need fixing. Oct 8 06:48:49 porky kernel: IRQ#14 thread started up. Oct 8 06:48:49 porky kernel: hda: ATAPI 48X CD-ROM CD-R/RW drive, 8192kB Cache, UDMA(33) Oct 8 06:48:49 porky kernel: Uniform CD-ROM driver Revision: 3.20 Oct 8 06:48:49 porky kernel: IRQ#15 thread started up. Oct 8 06:48:49 porky kernel: hdc: ATAPI 48X CD-ROM drive, 120kB Cache, UDMA(33) Oct 8 06:48:49 porky kernel: ip_tables: (C) 2000-2002 Netfilter core team Oct 8 06:48:49 porky kernel: Linux Tulip driver version 1.1.13 (May 11, 2002) Oct 8 06:48:49 porky kernel: PCI: Found IRQ 5 for device 0000:04:0a.0 Oct 8 06:48:49 porky kernel: PCI: Sharing IRQ 5 with 0000:04:05.1 Oct 8 06:48:49 porky kernel: tulip0: EEPROM default media type Autosense. Oct 8 06:48:49 porky kernel: tulip0: Index #0 - Media MII (#11) described by a 21140 MII PHY (1) block. Oct 8 06:48:49 porky kernel: tulip0: MII transceiver #3 config 3100 status 7809 advertising 01e1. Oct 8 06:48:49 porky kernel: eth0: Digital DS21140 Tulip rev 32 at 0xe480, 00:00:C0:7F:A0:E9, IRQ 5. Oct 8 06:48:49 porky kernel: ip_tables: (C) 2000-2002 Netfilter core team Oct 8 06:48:49 porky kernel: eth0: Setting full-duplex based on MII#3 link partner capability of 05e1. Oct 8 06:48:49 porky kernel: parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE,EPP] Oct 8 06:48:49 porky kernel: parport0: irq 7 detected Oct 8 06:48:49 porky kernel: lp0: using parport0 (polling). Oct 8 06:48:50 porky cups: cupsd startup succeeded Oct 8 06:48:50 porky sshd: succeeded Oct 8 06:48:50 porky xinetd: xinetd startup succeeded Oct 8 06:48:50 porky ntpdate[2906]: step time server 192.168.36.1 offset -0.498488 sec Oct 8 06:48:50 porky ntpd: succeeded Oct 8 06:48:50 porky ntpd[2910]: ntpd 4.2.0@1.1161-r Thu Mar 11 11:46:39 EST 2004 (1) Oct 8 06:48:50 porky ntpd: ntpd startup succeeded Oct 8 06:48:50 porky ntpd[2910]: precision = 1.000 usec Oct 8 06:48:50 porky ntpd[2910]: kernel time sync status 0040 Oct 8 06:48:50 porky ntpd[2910]: frequency initialized 16.655 PPM from /var/lib/ntp/drift Oct 8 06:48:50 porky ntpd[2910]: configure: keyword "authenticate" unknown, line ignored Oct 8 06:48:50 porky vsftpd: vsftpd vsftpd succeeded Oct 8 06:48:50 porky sendmail: sendmail startup succeeded Oct 8 06:48:50 porky sendmail: sm-client startup succeeded Oct 8 06:48:50 porky gpm[2959]: *** info [startup.c(95)]: Oct 8 06:48:50 porky gpm[2959]: Started gpm successfully. Entered daemon mode. Oct 8 06:48:50 porky xinetd[2896]: xinetd Version 2.3.13 started with libwrap loadavg options compiled in. Oct 8 06:48:50 porky xinetd[2896]: Started working: 2 available services Oct 8 06:48:51 porky gpm[2959]: *** info [mice.c(1766)]: Oct 8 06:48:51 porky gpm[2959]: imps2: Auto-detected intellimouse PS/2 Oct 8 06:48:51 porky gpm: gpm startup succeeded Oct 8 06:48:51 porky crond: crond startup succeeded Oct 8 06:48:51 porky xfs: xfs startup succeeded Oct 8 06:48:52 porky anacron: anacron startup succeeded Oct 8 06:48:52 porky atd: atd startup succeeded Oct 8 06:48:52 porky readahead: Starting background readahead: Oct 8 06:48:52 porky rc: Starting readahead: succeeded Oct 8 06:48:53 porky messagebus: messagebus startup succeeded Oct 8 06:48:53 porky mdmonitor: mdadm succeeded Oct 8 06:48:53 porky mdmpd: mdmpd succeeded ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-08 14:03 ` K.R. Foley @ 2004-10-08 14:28 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-08 14:28 UTC (permalink / raw) To: K.R. Foley Cc: linux-kernel, Lee Revell, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano * K.R. Foley <kr@cybsft.com> wrote: > First let me say that, in case you haven't been following the other > thread about this "2.6.9-rc3-mm3 fails to detect aic7xxx", I resolved > this by backing out the bk-scsi.patch and bk-scsi-target.patch. > Without those everything works fine. > >could you send me the following info: > > > > - full log of a failed boot > > I would like to be able to be able to send you this, but it doesn't > get to the point of logging. [...] meanwhile i could reproduce an aic79xx detection problem on a testsystem, so no need to send the log. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (3 preceding siblings ...) 2004-10-07 17:55 ` K.R. Foley @ 2004-10-08 21:14 ` Lee Revell 2004-10-08 23:11 ` Lee Revell ` (6 subsequent siblings) 11 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-08 21:14 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano, Andrew Morton On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > [adding Andrew Morton to the cc: list as these issues are increasingly relevant to -mm and not VP specific] I am seeing the same prune_icache latency that Mark reported. I have never seen this one at all before T3. This one seem very frequent, enough so to overtake the netif_skb single-packet processing latency that seems to be our lower bound. preemption latency trace v1.0.7 on 2.6.9-rc3-mm3-VP-T3 ------------------------------------------------------- latency: 242 us, entries: 178 (178) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: kswapd0/54, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: prune_icache+0x52/0x460 => ended at: prune_icache+0x162/0x460 =======> 00000001 0.000ms (+0.001ms): prune_icache (shrink_icache_memory) 00000001 0.001ms (+0.002ms): inode_has_buffers (prune_icache) 00000001 0.004ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.005ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.007ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.008ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.010ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.011ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.012ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.014ms (+0.001ms): inode_has_buffers (prune_icache) 00000001 0.015ms (+0.001ms): inode_has_buffers (prune_icache) [more of same interrupted by the timer a few times] Workload is just a kernel compile and an RT task (jackd). Interestingly, kswapd seems to have triggered the above, but I should not be hitting swap! I have swappiness set to 0, and here is what vmstat showed: procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 1 0 4 30608 54476 221680 0 0 9 12 310 600 36 8 56 0 1 0 4 41424 54476 221796 0 0 0 0 1109 2577 88 12 0 0 1 0 4 41168 54484 221808 0 0 24 0 1005 2158 83 17 0 0 1 0 4 34704 54496 221808 0 0 0 192 1015 2063 92 8 0 0 1 0 4 32208 54496 221808 0 0 0 0 1003 2045 96 4 0 0 1 0 4 30928 54496 221808 0 0 0 0 1004 2090 98 2 0 0 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (4 preceding siblings ...) 2004-10-08 21:14 ` Lee Revell @ 2004-10-08 23:11 ` Lee Revell 2004-10-09 4:16 ` Lee Revell ` (5 subsequent siblings) 11 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-08 23:11 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > Also, I am still seeing some long latencies in the ext3 journaling code: preemption latency trace v1.0.7 on 2.6.9-rc3-mm3-VP-T3 ------------------------------------------------------- latency: 607 us, entries: 1087 (1087) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: kjournald/687, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: journal_commit_transaction+0x75/0x2830 => ended at: __journal_clean_checkpoint_list+0xb2/0xf0 =======> 00000001 0.000ms (+0.003ms): journal_commit_transaction (kjournald) Here is the loop: 00000002 0.003ms (+0.001ms): kfree (journal_commit_transaction) 00000001 0.004ms (+0.001ms): journal_refile_buffer (journal_commit_transaction) 00000003 0.006ms (+0.000ms): __journal_refile_buffer (journal_refile_buffer) 00000003 0.006ms (+0.001ms): __journal_unfile_buffer (journal_refile_buffer) 00000002 0.008ms (+0.000ms): journal_remove_journal_head (journal_refile_buffer) 00000003 0.008ms (+0.000ms): __journal_remove_journal_head (journal_remove_journal_head) 00000003 0.009ms (+0.000ms): __brelse (__journal_remove_journal_head) 00000003 0.010ms (+0.000ms): journal_free_journal_head (journal_remove_journal_head) 00000003 0.010ms (+0.001ms): kmem_cache_free (journal_free_journal_head) 00000001 0.011ms (+0.000ms): __brelse (journal_commit_transaction) [end loop] 00000002 0.012ms (+0.000ms): kfree (journal_commit_transaction) 00000001 0.013ms (+0.000ms): journal_refile_buffer (journal_commit_transaction) I think I already reported this one with S7. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (5 preceding siblings ...) 2004-10-08 23:11 ` Lee Revell @ 2004-10-09 4:16 ` Lee Revell 2004-10-09 4:57 ` Lee Revell ` (4 subsequent siblings) 11 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-09 4:16 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > Wow, this is a really bad one - 5576 usecs in shmem_truncate! I think this was triggered by Mozilla deleting a large video file from /tmp which is a tmpfs mount. (mozilla-bin/16141): new 5576 us maximum-latency critical section. => started at: <shmem_truncate+0x67/0x630> => ended at: <shmem_truncate+0x3bc/0x630> [<c013d96a>] check_preempt_timing+0x14a/0x1e0 [<c013d2f5>] __mcount+0x15/0x20 [<c02dd08a>] preempt_schedule+0xa/0x70 [<c013dbba>] sub_preempt_count+0x5a/0x90 [<c016b39c>] shmem_truncate+0x3bc/0x630 [<c016b39c>] shmem_truncate+0x3bc/0x630 [<c016b964>] shmem_delete_inode+0x134/0x340 [<c016b830>] shmem_delete_inode+0x0/0x340 [<c01991ee>] generic_delete_inode+0xde/0x300 [<c0189615>] sys_unlink+0xf5/0x150 [<c0106b47>] syscall_call+0x7/0xb Full trace: http://krustophenia.net/testresults.php?dataset=2.6.9-rc3-mm3-VP-T3#/var/www/2.6.9-rc3-mm3-VP-T3/shmem-truncate-latency-trace.txt Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (6 preceding siblings ...) 2004-10-09 4:16 ` Lee Revell @ 2004-10-09 4:57 ` Lee Revell 2004-10-09 5:09 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-09 18:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Florian Schmidt ` (3 subsequent siblings) 11 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-09 4:57 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > With VP and PREEMPT in general, does the scheduler always run the highest priority process, or do we only preempt if a SCHED_FIFO process is runnable? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 4:57 ` Lee Revell @ 2004-10-09 5:09 ` Con Kolivas 2004-10-09 5:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Con Kolivas @ 2004-10-09 5:09 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano Lee Revell writes: > On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: >> i've released the -T3 VP patch: >> >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >> > > With VP and PREEMPT in general, does the scheduler always run the > highest priority process, or do we only preempt if a SCHED_FIFO process > is runnable? Always the highest priority runnable. Cheers, Con ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 5:09 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas @ 2004-10-09 5:21 ` Lee Revell 2004-10-09 5:23 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas ` (2 more replies) 0 siblings, 3 replies; 224+ messages in thread From: Lee Revell @ 2004-10-09 5:21 UTC (permalink / raw) To: Con Kolivas Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Sat, 2004-10-09 at 01:09, Con Kolivas wrote: > Lee Revell writes: > > > On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > >> i've released the -T3 VP patch: > >> > >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > >> > > > > With VP and PREEMPT in general, does the scheduler always run the > > highest priority process, or do we only preempt if a SCHED_FIFO process > > is runnable? > > Always the highest priority runnable. > Hmm, interesting. Would there be any advantage to a mode where only SCHED_FIFO tasks can preempt? This seems like a much lighter way to solve the realtime problem. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 5:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell @ 2004-10-09 5:23 ` Con Kolivas 2004-10-09 5:31 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-09 10:46 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar 2004-10-09 13:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 K.R. Foley 2 siblings, 1 reply; 224+ messages in thread From: Con Kolivas @ 2004-10-09 5:23 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano [-- Attachment #1: Type: text/plain, Size: 916 bytes --] Lee Revell wrote: > On Sat, 2004-10-09 at 01:09, Con Kolivas wrote: > >>Lee Revell writes: >> >> >>>On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: >>> >>>>i've released the -T3 VP patch: >>>> >>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >>>> >>> >>>With VP and PREEMPT in general, does the scheduler always run the >>>highest priority process, or do we only preempt if a SCHED_FIFO process >>>is runnable? >> >>Always the highest priority runnable. >> > > > Hmm, interesting. Would there be any advantage to a mode where only > SCHED_FIFO tasks can preempt? This seems like a much lighter way to > solve the realtime problem. No, the linux scheduler has always been preemptible. PREEMPT and VP just allows it to preempt kernel code paths as well. It could be modified to do such a thing but apart from real time applications it would perform very badly overall. Con [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 256 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 5:23 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas @ 2004-10-09 5:31 ` Lee Revell 2004-10-09 5:34 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-09 5:31 UTC (permalink / raw) To: Con Kolivas Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Sat, 2004-10-09 at 01:23, Con Kolivas wrote: > Lee Revell wrote: > > On Sat, 2004-10-09 at 01:09, Con Kolivas wrote: > > > >>Lee Revell writes: > >> > >> > >>>On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > >>> > >>>>i've released the -T3 VP patch: > >>>> > >>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > >>>> > >>> > >>>With VP and PREEMPT in general, does the scheduler always run the > >>>highest priority process, or do we only preempt if a SCHED_FIFO process > >>>is runnable? > >> > >>Always the highest priority runnable. > >> > > > > > > Hmm, interesting. Would there be any advantage to a mode where only > > SCHED_FIFO tasks can preempt? This seems like a much lighter way to > > solve the realtime problem. > > No, the linux scheduler has always been preemptible. PREEMPT and VP just > allows it to preempt kernel code paths as well. It could be modified to > do such a thing but apart from real time applications it would perform > very badly overall. I am talking about a mode where we only allow a SCHED_FIFO process to preempt a kernel code path. In every other case it works like !PREEMPT. This is apparently how kernel preemption worked on SVR4. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 5:31 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell @ 2004-10-09 5:34 ` Con Kolivas 2004-10-09 5:50 ` Preemption model (was Re: voluntary-preempt-2.6.9-rc3-mm3-T3) Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Con Kolivas @ 2004-10-09 5:34 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano [-- Attachment #1: Type: text/plain, Size: 1480 bytes --] Lee Revell wrote: > On Sat, 2004-10-09 at 01:23, Con Kolivas wrote: > >>Lee Revell wrote: >> >>>On Sat, 2004-10-09 at 01:09, Con Kolivas wrote: >>> >>> >>>>Lee Revell writes: >>>> >>>> >>>> >>>>>On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: >>>>> >>>>> >>>>>>i've released the -T3 VP patch: >>>>>> >>>>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >>>>>> >>>>> >>>>>With VP and PREEMPT in general, does the scheduler always run the >>>>>highest priority process, or do we only preempt if a SCHED_FIFO process >>>>>is runnable? >>>> >>>>Always the highest priority runnable. >>>> >>> >>> >>>Hmm, interesting. Would there be any advantage to a mode where only >>>SCHED_FIFO tasks can preempt? This seems like a much lighter way to >>>solve the realtime problem. >> >>No, the linux scheduler has always been preemptible. PREEMPT and VP just >>allows it to preempt kernel code paths as well. It could be modified to >>do such a thing but apart from real time applications it would perform >>very badly overall. > > > I am talking about a mode where we only allow a SCHED_FIFO process to > preempt a kernel code path. In every other case it works like !PREEMPT. > > This is apparently how kernel preemption worked on SVR4. Yes it could. If you ask nicely, Ingo might even throw in yet another config option in the kernel. It gets messy if multiple people start hacking on the same thing when it's under heavy development. Cheers, Con [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 256 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Preemption model (was Re: voluntary-preempt-2.6.9-rc3-mm3-T3) 2004-10-09 5:34 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas @ 2004-10-09 5:50 ` Lee Revell 2004-10-09 5:53 ` Con Kolivas 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-09 5:50 UTC (permalink / raw) To: Con Kolivas Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Sat, 2004-10-09 at 01:34, Con Kolivas wrote: > Lee Revell wrote: > >>>>>With VP and PREEMPT in general, does the scheduler always run the > >>>>>highest priority process, or do we only preempt if a SCHED_FIFO process > >>>>>is runnable? > >>>> > >>>>Always the highest priority runnable. > >>>> > >>> > >>> > >>>Hmm, interesting. Would there be any advantage to a mode where only > >>>SCHED_FIFO tasks can preempt? This seems like a much lighter way to > >>>solve the realtime problem. > >> > >>No, the linux scheduler has always been preemptible. PREEMPT and VP just > >>allows it to preempt kernel code paths as well. It could be modified to > >>do such a thing but apart from real time applications it would perform > >>very badly overall. > > > > > > I am talking about a mode where we only allow a SCHED_FIFO process to > > preempt a kernel code path. In every other case it works like !PREEMPT. > > > > This is apparently how kernel preemption worked on SVR4. > > Yes it could. If you ask nicely, Ingo might even throw in yet another > config option in the kernel. It gets messy if multiple people start > hacking on the same thing when it's under heavy development. Oh, I was not going to post a patch, I don't know the code nearly well enough at this point :-). But it looks pretty straightforward. This also addresses what I think was Linus' main objection to PREEMPT, which IIRC was (paraphrasing) that maybe if the scheduler had been smarter we would not be having to preempt all the time. This argument is perfectly valid except for a SCHED_FIFO task which by definition will always know better than the scheduler does when it needs to run. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: Preemption model (was Re: voluntary-preempt-2.6.9-rc3-mm3-T3) 2004-10-09 5:50 ` Preemption model (was Re: voluntary-preempt-2.6.9-rc3-mm3-T3) Lee Revell @ 2004-10-09 5:53 ` Con Kolivas 0 siblings, 0 replies; 224+ messages in thread From: Con Kolivas @ 2004-10-09 5:53 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano [-- Attachment #1: Type: text/plain, Size: 1395 bytes --] Lee Revell wrote: > On Sat, 2004-10-09 at 01:34, Con Kolivas wrote: > >>Lee Revell wrote: >> >>>>>>>With VP and PREEMPT in general, does the scheduler always run the >>>>>>>highest priority process, or do we only preempt if a SCHED_FIFO process >>>>>>>is runnable? >>>>>> >>>>>>Always the highest priority runnable. >>>>>> >>>>> >>>>> >>>>>Hmm, interesting. Would there be any advantage to a mode where only >>>>>SCHED_FIFO tasks can preempt? This seems like a much lighter way to >>>>>solve the realtime problem. >>>> >>>>No, the linux scheduler has always been preemptible. PREEMPT and VP just >>>>allows it to preempt kernel code paths as well. It could be modified to >>>>do such a thing but apart from real time applications it would perform >>>>very badly overall. >>> >>> >>>I am talking about a mode where we only allow a SCHED_FIFO process to >>>preempt a kernel code path. In every other case it works like !PREEMPT. >>> >>>This is apparently how kernel preemption worked on SVR4. >> >>Yes it could. If you ask nicely, Ingo might even throw in yet another >>config option in the kernel. It gets messy if multiple people start >>hacking on the same thing when it's under heavy development. > > > Oh, I was not going to post a patch, I don't know the code nearly well > enough at this point :-). But it looks pretty straightforward. I was talking about me ;-) Cheers, Con [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 256 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 5:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-09 5:23 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas @ 2004-10-09 10:46 ` Ingo Molnar 2004-10-09 13:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 K.R. Foley 2 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-09 10:46 UTC (permalink / raw) To: Lee Revell Cc: Con Kolivas, linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano * Lee Revell <rlrevell@joe-job.com> wrote: > > > With VP and PREEMPT in general, does the scheduler always run the > > > highest priority process, or do we only preempt if a SCHED_FIFO process > > > is runnable? > > > > Always the highest priority runnable. > > > > Hmm, interesting. Would there be any advantage to a mode where only > SCHED_FIFO tasks can preempt? This seems like a much lighter way to > solve the realtime problem. it could be done, but i dont think we should do it. It makes RT scheduling much more of a special-case. Right now RT scheduling is 99% like normal scheduling - with the difference that RT priorities are "higher" than the normal priorities and that each RT priority level is "exclusive": the scheduler will let such tasks run until they want, without applying fairness policies. by making RT tasks more of a special case we'd destabilize the whole thing: there would be kernel preemptability bugs that only RT tasks would hit - resulting in a steady deterioration of PREEMPT support in the kernel. (the ratio of RT tasks is perhaps 0.1% of all use, or less.) So applying _any_ RT-only technique besides the bare minimum is asking for trouble in the long run. furthermore, we had hard-to-trigger SMP bugs that the PREEMPT kernel triggered much faster - resulting in an indirect stabilization of our SMP code. If nothing else then this alone makes PREEMPT very useful. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-09 5:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-09 5:23 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-09 10:46 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar @ 2004-10-09 13:21 ` K.R. Foley 2 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-10-09 13:21 UTC (permalink / raw) To: Lee Revell Cc: Con Kolivas, Ingo Molnar, linux-kernel, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano Lee Revell wrote: > On Sat, 2004-10-09 at 01:09, Con Kolivas wrote: > >>Lee Revell writes: >> >> >>>On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: >>> >>>>i've released the -T3 VP patch: >>>> >>>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 >>>> >>> >>>With VP and PREEMPT in general, does the scheduler always run the >>>highest priority process, or do we only preempt if a SCHED_FIFO process >>>is runnable? >> >>Always the highest priority runnable. >> > > > Hmm, interesting. Would there be any advantage to a mode where only > SCHED_FIFO tasks can preempt? This seems like a much lighter way to > solve the realtime problem. > > Lee > > IMHO I don't think this gains us anything and I think that it would be a big step backward for desktop performance (any processes not scheduled RT). Not only that but I think you still have to have all of the overhead of the scheduler and the preemption points if you are going to service the RT threads. Otherwise, how do you schedule RT processes that are waiting for some I/O (that is ready) and another non-RT process is going through a code path in the kernel. The RT process now has a much worse latency. There very well may be ways to accomplish this effectively that I just don't understand. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (7 preceding siblings ...) 2004-10-09 4:57 ` Lee Revell @ 2004-10-09 18:16 ` Florian Schmidt 2004-10-11 14:29 ` [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Ingo Molnar ` (2 subsequent siblings) 11 siblings, 0 replies; 224+ messages in thread From: Florian Schmidt @ 2004-10-09 18:16 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Rui Nuno Capela, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Thu, 7 Oct 2004 12:52:30 +0200 Ingo Molnar <mingo@elte.hu> wrote: > > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 Hi, i just wanted to report that audio usage has been become quite a bit worse when compared to T1. I get more xruns (40 to 80 per night as opposed to 5 to 10 on T1), RT apps like ardour seem to be much more unstable with T3 than T1 (ardour gets kicked off the jack graph regularly at 64 frames on T3 which doesn't happen with T1). This goes together with a general increase of > 200us non preempt. crit. sect. which were very seldom in T1 (at loeast for the work i do) but appear rather regularly in T3. Flo P.S.: Are there tools available which can check the "correctness" of the interplay of nptl libc and kernel wrt to threading? Especially when it comes to wakeup order of blocking threads in different scheduler classes and with different priorities. ^ permalink raw reply [flat|nested] 224+ messages in thread
* [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (8 preceding siblings ...) 2004-10-09 18:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Florian Schmidt @ 2004-10-11 14:29 ` Ingo Molnar 2004-10-11 17:48 ` Florian Schmidt 2004-10-11 21:22 ` Rui Nuno Capela 2004-10-12 4:30 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-13 16:48 ` Lee Revell 11 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-10-11 14:29 UTC (permalink / raw) To: linux-kernel Cc: Lee Revell, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano, Daniel Walker, Andrew Morton i've released the -T4 VP patch: http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc4-mm1-T4 the big change in this release is the addition of PREEMPT_REALTIME, which is a new implementation of a fully preemptible kernel model: - spinlocks and rwlocks use semaphores and are preemptible by default - the _irq variants of these locks do not disable interrupts but rely on IRQ threading to exclude against interrupt contexts. note that this implementation is different from other kernel-preemption patches, in a number of key areas. Initially i looked at merging the MontaVista patchset from two days ago but decided to implement a new one from scratch to cure a number of conceptual problems: - this patch auto-detects the 'type' of the lock at compilation time. All fully-preemptible kernel patches i've seen so far suffer from one nasty problem: they are very large because they redefine _all_ the spinlock APIs to provide separation between 'mutex based' and 'original' spinlocks. E.g. check out the sheer size of the MontaVista patchset: Linux-2.6.9-rc3-RT_spinlock1.patch and Linux-2.6.9-rc3-RT_spinlock2.patch are 84K and 92K and they convert ~30 core spinlocks to new APIs. OTOH this patch converts _90_ spinlocks in roughly half the patchsize, which makes a large difference in maintainability. How it works: this implementation uses a gcc feature to detect the type of the spinlock compile-time and to switch to the mutex or raw_spinlock API accordingly. Only one, very isolated change has to be done to switch a generic spinlock to a spin-only lock: spinlock_t is changed to raw_spinlock_t and the initializer is fixed up. All the other code remains untouched - and this even if a single C module contains both mutex-based and spinlock-based API calls. This approach is quite close to a simple object-oriented lock type - but written in C and compatible with the existing spinlock APIs. - i used the native Linux semaphores/rwsems to implement spinlock/rwlock preemption. E.g. the MontaVista patches use separate synchronization objects (kmutex/pmutex) to implement this. I believe using native semaphores is the better approach architecturally because this means that we have to add priority inheritance handling only once and to the native Linux semaphores. This has the additional benefit of fixing all mutex-using kernel code's priority inheritance problems. (which kmutex/pmutex does not solve.) OTOH the MontaVista patches naturally have the advantage of having a working priority-inheritance mechanism in the pmutex code, right now. (I did a brief attempt to plug the pmutex code into this patch but it didnt look good of a match - but others might want to try to integrate it nevertheless.) also, another bad property of the kmutex/pmutex code is that it uses assembly which makes it quite hard to port to non-x86 architectures. OTOH, the native Linux semaphores and rwsems work on every architecture. - the patch converts rwlocks too, while e.g. the MontaVista patchset still keeps rwlocks as spinlocks. It is important to convert rwlocks to rw-semaphores, most notably this allow the conversion of the tasklist and signal spinlocks. - finally, i went for correctness primarily, not latencies. I checked out the MontaVista patches and they categorize roughly 30 spinlocks as the ones that are necessary to be 'raw'. Unfortunately this is inadequate, my patch excludes 90 such locks and it's still probably not a 100% correct conversion. The core kernel needs changes in the locking infrastructure to get rid of most of the these 90 non-mutex locks. it is highly recommended to enable DEBUG_PREEMPT when enabling PREEMPT_REALTIME. It will warn about all the places that are unsafe. The patch is x86-only for the time being, but the changes necessary for other architectures should be relatively low. NOTE: CONFIG_PREEMPT_REALTIME is default-off and i'd only suggest to enable it on non-critical systems. It is the first iteration of this feature and it will sure have rough edges. Not for the faint hearted! NOTE2: some of the lock-break functionality offered by the -VP patchset is disabled if PREEMPT_REALTIME is enabled - this is temporary. This will likely result in an increase of the maximum measured latencies. NOTE3: since so many spinlocks are still non-mutex, even average latencies will be well above what we could achieve - but i wanted to reach a known-correct codebase first. For example, most of the networking spinlocks had to be made non-mutex because of networking's use of RCU locking primitives and per-CPU data structures. The same is true for the VFS - many of its locks are non-mutex still due to RCU. Once this infrastructure work is done the size of the patch will decrease significantly. to build a -T4 tree from scratch the patching order is: http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc4.bz2 + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc4/2.6.9-rc4-mm1/2.6.9-rc4-mm1.bz2 + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc4-mm1-T4 Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 2004-10-11 14:29 ` [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Ingo Molnar @ 2004-10-11 17:48 ` Florian Schmidt 2004-10-11 21:22 ` Rui Nuno Capela 1 sibling, 0 replies; 224+ messages in thread From: Florian Schmidt @ 2004-10-11 17:48 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Rui Nuno Capela, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano, Daniel Walker, Andrew Morton On Mon, 11 Oct 2004 16:29:53 +0200 Ingo Molnar <mingo@elte.hu> wrote: > > i've released the -T4 VP patch: Hi, doesn't build here: CHK include/linux/version.h HOSTCC scripts/basic/fixdep HOSTCC scripts/basic/split-include HOSTCC scripts/basic/docproc HOSTCC scripts/genksyms/genksyms.o HOSTCC scripts/genksyms/lex.o HOSTCC scripts/genksyms/parse.o HOSTLD scripts/genksyms/genksyms CC scripts/mod/empty.o HOSTCC scripts/mod/mk_elfconfig MKELF scripts/mod/elfconfig.h HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/modpost.o HOSTCC scripts/mod/sumversion.o HOSTLD scripts/mod/modpost HOSTCC scripts/kallsyms HOSTCC scripts/conmakehash HOSTCC scripts/bin2c CC arch/i386/kernel/asm-offsets.s In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:419: error: parse error before '*' token include/linux/spinlock.h:419: warning: function declaration isn't a prototype include/linux/spinlock.h:420: error: parse error before '*' token include/linux/spinlock.h:420: warning: function declaration isn't a prototype include/linux/spinlock.h:421: error: parse error before '*' token include/linux/spinlock.h:421: warning: function declaration isn't a prototype include/linux/spinlock.h:422: error: parse error before '*' token include/linux/spinlock.h:422: warning: function declaration isn't a prototype include/linux/spinlock.h:423: error: parse error before '*' token include/linux/spinlock.h:423: warning: function declaration isn't a prototype include/linux/spinlock.h:424: error: parse error before '*' token include/linux/spinlock.h:424: warning: function declaration isn't a prototype include/linux/spinlock.h:425: error: parse error before '*' token include/linux/spinlock.h:425: warning: function declaration isn't a prototype include/linux/spinlock.h:426: error: parse error before '*' token include/linux/spinlock.h:426: warning: function declaration isn't a prototype include/linux/spinlock.h:427: error: parse error before '*' token include/linux/spinlock.h:427: warning: function declaration isn't a prototype include/linux/spinlock.h:428: error: parse error before '*' token include/linux/spinlock.h:428: warning: function declaration isn't a prototype include/linux/spinlock.h:429: error: parse error before '*' token include/linux/spinlock.h:429: warning: function declaration isn't a prototype include/linux/spinlock.h:430: error: parse error before '*' token include/linux/spinlock.h:430: warning: function declaration isn't a prototype include/linux/spinlock.h:431: error: parse error before '*' token include/linux/spinlock.h:431: warning: function declaration isn't a prototype include/linux/spinlock.h:467: error: parse error before '*' token include/linux/spinlock.h:467: warning: function declaration isn't a prototype include/linux/spinlock.h:468: error: parse error before '*' token include/linux/spinlock.h:468: warning: function declaration isn't a prototype include/linux/spinlock.h:469: error: parse error before '*' token include/linux/spinlock.h:469: warning: function declaration isn't a prototype include/linux/spinlock.h:470: error: parse error before '*' token include/linux/spinlock.h:470: warning: function declaration isn't a prototype include/linux/spinlock.h:471: error: parse error before '*' token include/linux/spinlock.h:471: warning: function declaration isn't a prototype include/linux/spinlock.h:472: error: parse error before '*' token include/linux/spinlock.h:472: warning: function declaration isn't a prototype include/linux/spinlock.h:473: error: parse error before '*' token include/linux/spinlock.h:473: warning: function declaration isn't a prototype include/linux/spinlock.h:474: error: parse error before '*' token include/linux/spinlock.h:474: warning: function declaration isn't a prototype include/linux/spinlock.h:475: error: parse error before '*' token include/linux/spinlock.h:475: warning: function declaration isn't a prototype include/linux/spinlock.h:476: error: parse error before '*' token include/linux/spinlock.h:476: warning: function declaration isn't a prototype include/linux/spinlock.h:477: error: parse error before '*' token include/linux/spinlock.h:477: warning: function declaration isn't a prototype include/linux/spinlock.h:478: error: parse error before '*' token include/linux/spinlock.h:478: warning: function declaration isn't a prototype include/linux/spinlock.h:479: error: parse error before '*' token include/linux/spinlock.h:479: warning: function declaration isn't a prototype include/linux/spinlock.h:480: error: parse error before '*' token include/linux/spinlock.h:480: warning: function declaration isn't a prototype include/linux/spinlock.h:481: error: parse error before '*' token include/linux/spinlock.h:481: warning: function declaration isn't a prototype include/linux/spinlock.h:482: error: parse error before '*' token include/linux/spinlock.h:482: warning: function declaration isn't a prototype include/linux/spinlock.h:483: error: parse error before '*' token include/linux/spinlock.h:483: warning: function declaration isn't a prototype include/linux/spinlock.h:484: error: parse error before '*' token include/linux/spinlock.h:484: warning: function declaration isn't a prototype include/linux/spinlock.h:485: error: parse error before '*' token include/linux/spinlock.h:485: warning: function declaration isn't a prototype include/linux/spinlock.h:486: error: parse error before '*' token include/linux/spinlock.h:486: warning: function declaration isn't a prototype In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:543:1: warning: "spin_lock_init" redefined include/linux/spinlock.h:208:1: warning: this is the location of the previous definition include/linux/spinlock.h:548:1: warning: "rwlock_init" redefined include/linux/spinlock.h:226:1: warning: this is the location of the previous definition include/linux/spinlock.h:553:1: warning: "spin_is_locked" redefined include/linux/spinlock.h:210:1: warning: this is the location of the previous definition include/linux/spinlock.h:563:1: warning: "spin_unlock_wait" redefined include/linux/spinlock.h:212:1: warning: this is the location of the previous definition In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:669: error: parse error before "raw_spinlock_t" include/linux/spinlock.h:669: warning: function declaration isn't a prototype In file included from include/linux/time.h:7, from include/linux/timex.h:58, from include/linux/sched.h:11, from arch/i386/kernel/asm-offsets.c:7: include/linux/seqlock.h:35: error: parse error before "raw_spinlock_t" include/linux/seqlock.h:35: warning: no semicolon at end of struct or union include/linux/seqlock.h:36: warning: type defaults to `int' in declaration of `seqlock_t' include/linux/seqlock.h:36: warning: data definition has no type or storage class include/linux/seqlock.h:50: error: parse error before '*' token include/linux/seqlock.h:51: warning: function declaration isn't a prototype include/linux/seqlock.h: In function `write_seqlock': include/linux/seqlock.h:52: error: `sl' undeclared (first use in this function) include/linux/seqlock.h:52: error: (Each undeclared identifier is reported only once include/linux/seqlock.h:52: error: for each function it appears in.) include/linux/seqlock.h:52: error: parse error before "raw_spinlock_t" include/linux/seqlock.h:52: error: `raw_spinlock_t' undeclared (first use in this function) include/linux/seqlock.h:52: error: parse error before ')' token include/linux/seqlock.h: At top level: include/linux/seqlock.h:52: error: parse error before "while" include/linux/seqlock.h:57: error: parse error before '*' token include/linux/seqlock.h:58: warning: function declaration isn't a prototype include/linux/seqlock.h: In function `write_sequnlock': include/linux/seqlock.h:60: error: `sl' undeclared (first use in this function) include/linux/seqlock.h:61: error: parse error before "raw_spinlock_t" include/linux/seqlock.h: At top level: include/linux/seqlock.h:61: error: parse error before "while" include/linux/seqlock.h:64: error: parse error before '*' token include/linux/seqlock.h:65: warning: function declaration isn't a prototype include/linux/seqlock.h: In function `write_tryseqlock': include/linux/seqlock.h:66: error: `sl' undeclared (first use in this function) include/linux/seqlock.h:66: error: parse error before "raw_spinlock_t" include/linux/seqlock.h:66: warning: unused variable `__ret' include/linux/seqlock.h:66: error: parse error before "while" include/linux/seqlock.h:66: error: `raw_spinlock_t' undeclared (first use in this function) include/linux/seqlock.h:66: error: parse error before ')' token include/linux/seqlock.h:66: warning: left-hand operand of comma expression has no effect include/linux/seqlock.h:66: warning: unused variable `ret' include/linux/seqlock.h:66: warning: no return statement in function returning non-void include/linux/seqlock.h: At top level: include/linux/seqlock.h:66: error: parse error before ')' token include/linux/seqlock.h:66: warning: type defaults to `int' in declaration of `__ret' include/linux/seqlock.h:66: warning: data definition has no type or storage class include/linux/seqlock.h:66: error: parse error before '}' token include/linux/seqlock.h:76: warning: type defaults to `int' in declaration of `seqlock_t' include/linux/seqlock.h:76: error: parse error before '*' token include/linux/seqlock.h:77: warning: function declaration isn't a prototype include/linux/seqlock.h: In function `read_seqbegin': include/linux/seqlock.h:78: error: `sl' undeclared (first use in this function) include/linux/seqlock.h: At top level: include/linux/seqlock.h:91: warning: type defaults to `int' in declaration of `seqlock_t' include/linux/seqlock.h:91: error: parse error before '*' token include/linux/seqlock.h:92: warning: function declaration isn't a prototype include/linux/seqlock.h: In function `read_seqretry': include/linux/seqlock.h:94: error: `iv' undeclared (first use in this function) include/linux/seqlock.h:94: error: `sl' undeclared (first use in this function) In file included from include/linux/timex.h:58, from include/linux/sched.h:11, from arch/i386/kernel/asm-offsets.c:7: include/linux/time.h: At top level: include/linux/time.h:83: error: parse error before "xtime_lock" include/linux/time.h:83: warning: type defaults to `int' in declaration of `xtime_lock' include/linux/time.h:83: warning: data definition has no type or storage class In file included from include/asm/semaphore.h:41, from include/linux/sched.h:19, from arch/i386/kernel/asm-offsets.c:7: include/linux/wait.h:82: error: parse error before '*' token include/linux/wait.h:83: warning: function declaration isn't a prototype include/linux/wait.h: In function `init_waitqueue_head': include/linux/wait.h:84: error: `q' undeclared (first use in this function) include/linux/wait.h:84: error: `RAW_SPIN_LOCK_UNLOCKED' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:103: error: parse error before '*' token include/linux/wait.h:104: warning: function declaration isn't a prototype include/linux/wait.h: In function `waitqueue_active': include/linux/wait.h:105: error: `q' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:117: error: parse error before '*' token include/linux/wait.h:117: warning: function declaration isn't a prototype include/linux/wait.h:118: error: parse error before '*' token include/linux/wait.h:118: warning: function declaration isn't a prototype include/linux/wait.h:119: error: parse error before '*' token include/linux/wait.h:119: warning: function declaration isn't a prototype include/linux/wait.h:121: error: parse error before '*' token include/linux/wait.h:122: warning: function declaration isn't a prototype include/linux/wait.h: In function `__add_wait_queue': include/linux/wait.h:123: error: `new' undeclared (first use in this function) include/linux/wait.h:123: error: `head' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:129: error: parse error before '*' token include/linux/wait.h:131: warning: function declaration isn't a prototype include/linux/wait.h: In function `__add_wait_queue_tail': include/linux/wait.h:132: error: `new' undeclared (first use in this function) include/linux/wait.h:132: error: `head' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:135: error: parse error before '*' token include/linux/wait.h:137: warning: function declaration isn't a prototype include/linux/wait.h: In function `__remove_wait_queue': include/linux/wait.h:138: error: `old' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:141: error: parse error before '*' token include/linux/wait.h:141: warning: function declaration isn't a prototype include/linux/wait.h:142: error: parse error before '*' token include/linux/wait.h:142: warning: function declaration isn't a prototype include/linux/wait.h:143: error: parse error before '*' token include/linux/wait.h:143: warning: function declaration isn't a prototype include/linux/wait.h:144: error: parse error before '*' token include/linux/wait.h:144: warning: function declaration isn't a prototype include/linux/wait.h:145: error: parse error before '*' token include/linux/wait.h:145: error: `__wait_on_bit' declared as function returning a function include/linux/wait.h:145: warning: function declaration isn't a prototype include/linux/wait.h:145: error: parse error before "unsigned" include/linux/wait.h:146: error: parse error before '*' token include/linux/wait.h:146: error: `__wait_on_bit_lock' declared as function returning a function include/linux/wait.h:146: warning: function declaration isn't a prototype include/linux/wait.h:146: error: parse error before "unsigned" include/linux/wait.h:150: error: parse error before '*' token include/linux/wait.h:150: warning: type defaults to `int' in declaration of `bit_waitqueue' include/linux/wait.h:150: warning: data definition has no type or storage class include/linux/wait.h:288: error: parse error before '*' token include/linux/wait.h:290: warning: function declaration isn't a prototype include/linux/wait.h: In function `add_wait_queue_exclusive_locked': include/linux/wait.h:291: error: `wait' undeclared (first use in this function) include/linux/wait.h:292: error: `q' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:298: error: parse error before '*' token include/linux/wait.h:300: warning: function declaration isn't a prototype include/linux/wait.h: In function `remove_wait_queue_locked': include/linux/wait.h:301: error: `q' undeclared (first use in this function) include/linux/wait.h:301: error: `wait' undeclared (first use in this function) include/linux/wait.h: At top level: include/linux/wait.h:309: error: parse error before '*' token include/linux/wait.h:309: warning: function declaration isn't a prototype include/linux/wait.h:310: error: parse error before '*' token include/linux/wait.h:310: warning: function declaration isn't a prototype include/linux/wait.h:312: error: parse error before '*' token include/linux/wait.h:312: warning: function declaration isn't a prototype include/linux/wait.h:313: error: parse error before '*' token include/linux/wait.h:313: warning: function declaration isn't a prototype include/linux/wait.h:319: error: parse error before '*' token include/linux/wait.h:319: warning: function declaration isn't a prototype include/linux/wait.h:321: error: parse error before '*' token include/linux/wait.h:321: warning: function declaration isn't a prototype include/linux/wait.h:323: error: parse error before '*' token include/linux/wait.h:323: warning: function declaration isn't a prototype In file included from include/asm/rwsem.h:42, from include/linux/rwsem.h:27, from include/asm/semaphore.h:42, from include/linux/sched.h:19, from arch/i386/kernel/asm-offsets.c:7: include/asm/spinlock.h:26: error: `raw_spinlock_t' used prior to declaration In file included from include/asm/rwsem.h:42, from include/linux/rwsem.h:27, from include/asm/semaphore.h:42, from include/linux/sched.h:19, from arch/i386/kernel/asm-offsets.c:7: include/asm/spinlock.h:80:1: warning: "SPIN_LOCK_UNLOCKED" redefined In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:199:1: warning: this is the location of the previous definition include/asm/spinlock.h:86: error: conflicting types for `spinlock_t' include/linux/spinlock.h:198: error: previous declaration of `spinlock_t' In file included from include/asm/rwsem.h:42, from include/linux/rwsem.h:27, from include/asm/semaphore.h:42, from include/linux/sched.h:19, from arch/i386/kernel/asm-offsets.c:7: include/asm/spinlock.h:93:1: warning: "RW_LOCK_UNLOCKED" redefined In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:220:1: warning: this is the location of the previous definition include/asm/spinlock.h:99: error: conflicting types for `rwlock_t' include/linux/spinlock.h:219: error: previous declaration of `rwlock_t' include/asm/spinlock.h:165: error: parse error before "do" include/asm/spinlock.h:197: error: parse error before "void" include/asm/spinlock.h:207: error: parse error before "do" include/asm/spinlock.h:259: error: parse error before "do" include/asm/spinlock.h:267: error: parse error before "do" In file included from include/asm/rwsem.h:42, from include/linux/rwsem.h:27, from include/asm/semaphore.h:42, from include/linux/sched.h:19, from arch/i386/kernel/asm-offsets.c:7: include/asm/spinlock.h:275:1: warning: "_raw_read_unlock" redefined In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:228:1: warning: this is the location of the previous definition In file included from include/asm/rwsem.h:42, from include/linux/rwsem.h:27, from include/asm/semaphore.h:42, from include/linux/sched.h:19, from arch/i386/kernel/asm-offsets.c:7: include/asm/spinlock.h:276:1: warning: "_raw_write_unlock" redefined In file included from include/linux/capability.h:45, from include/linux/sched.h:7, from arch/i386/kernel/asm-offsets.c:7: include/linux/spinlock.h:230:1: warning: this is the location of the previous definition include/asm/spinlock.h:278: error: parse error before '{' token include/asm/spinlock.h:281: warning: type defaults to `int' in declaration of `atomic_dec' include/asm/spinlock.h:281: warning: parameter names (without types) in function declaration include/asm/spinlock.h:281: error: conflicting types for `atomic_dec' include/asm/atomic.h:116: error: previous declaration of `atomic_dec' include/asm/spinlock.h:281: warning: data definition has no type or storage class include/asm/spinlock.h:282: error: parse error before "if" include/asm/spinlock.h:284: warning: type defaults to `int' in declaration of `atomic_inc' include/asm/spinlock.h:284: warning: parameter names (without types) in function declaration include/asm/spinlock.h:284: error: conflicting types for `atomic_inc' include/asm/atomic.h:102: error: previous declaration of `atomic_inc' include/asm/spinlock.h:284: warning: data definition has no type or storage class include/asm/spinlock.h:285: error: parse error before "return" include/asm/spinlock.h:288: error: parse error before '{' token include/asm/spinlock.h:293: error: parse error before numeric constant include/asm/spinlock.h:293: warning: type defaults to `int' in declaration of `atomic_add' include/asm/spinlock.h:293: warning: function declaration isn't a prototype include/asm/spinlock.h:293: error: conflicting types for `atomic_add' include/asm/atomic.h:53: error: previous declaration of `atomic_add' include/asm/spinlock.h:293: warning: data definition has no type or storage class In file included from arch/i386/kernel/asm-offsets.c:7: include/linux/sched.h:847:56: macro "_spin_lock_irqsave" requires 2 arguments, but only 1 given In file included from arch/i386/kernel/asm-offsets.c:7: include/linux/sched.h: In function `dequeue_signal_lock': include/linux/sched.h:847: error: `_spin_lock_irqsave' undeclared (first use in this function) include/linux/seqlock.h: In function `write_tryseqlock': include/linux/seqlock.h:66: warning: statement with no effect make[1]: *** [arch/i386/kernel/asm-offsets.s] Error 1 make: *** [arch/i386/kernel/asm-offsets.s] Error 2 .config: # # Automatically generated make config: don't edit # Linux kernel version: 2.6.9-rc4-mm1-VP-T4 # Mon Oct 11 19:40:39 2004 # CONFIG_X86=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_IOMAP=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_CLEAN_COMPILE=y CONFIG_BROKEN_ON_SMP=y # # General setup # CONFIG_LOCALVERSION="-LT" CONFIG_SWAP=y CONFIG_SYSVIPC=y CONFIG_POSIX_MQUEUE=y CONFIG_BSD_PROCESS_ACCT=y # CONFIG_BSD_PROCESS_ACCT_V3 is not set CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_LOG_BUF_SHIFT=14 # CONFIG_HOTPLUG is not set CONFIG_KOBJECT_UEVENT=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_PREEMPT_TIMING=y CONFIG_LATENCY_TRACE=y CONFIG_MCOUNT=y CONFIG_IOSCHED_NOOP=y CONFIG_IOSCHED_AS=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_CFQ=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SHMEM=y # CONFIG_TINY_SHMEM is not set # # Loadable module support # CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_MODULE_FORCE_UNLOAD is not set CONFIG_OBSOLETE_MODPARM=y CONFIG_MODVERSIONS=y # CONFIG_MODULE_SRCVERSION_ALL is not set CONFIG_KMOD=y # # Processor type and features # CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUMM is not set # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set CONFIG_MK7=y # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_INTEL_USERCOPY=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_X86_USE_3DNOW=y # CONFIG_SMP is not set CONFIG_PREEMPT=y CONFIG_PREEMPT_BKL=y CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREEMPT_SOFTIRQS=y CONFIG_PREEMPT_HARDIRQS=y CONFIG_PREEMPT_REALTIME=y # CONFIG_X86_UP_APIC is not set CONFIG_X86_TSC=y # CONFIG_X86_MCE is not set # CONFIG_TOSHIBA is not set # CONFIG_I8K is not set # CONFIG_MICROCODE is not set # CONFIG_X86_MSR is not set # CONFIG_X86_CPUID is not set # # Firmware Drivers # # CONFIG_EDD is not set CONFIG_NOHIGHMEM=y # CONFIG_HIGHMEM4G is not set # CONFIG_HIGHMEM64G is not set # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y CONFIG_HAVE_DEC_LOCK=y # # Performance-monitoring counters support # # CONFIG_PERFCTR is not set # CONFIG_KEXEC is not set # # Power management options (ACPI, APM) # CONFIG_PM=y # CONFIG_PM_DEBUG is not set # CONFIG_SOFTWARE_SUSPEND is not set # # ACPI (Advanced Configuration and Power Interface) Support # # CONFIG_ACPI is not set CONFIG_ACPI_BLACKLIST_YEAR=0 # # APM (Advanced Power Management) BIOS Support # CONFIG_APM=y # CONFIG_APM_IGNORE_USER_SUSPEND is not set # CONFIG_APM_DO_ENABLE is not set # CONFIG_APM_CPU_IDLE is not set # CONFIG_APM_DISPLAY_BLANK is not set # CONFIG_APM_RTC_IS_GMT is not set # CONFIG_APM_ALLOW_INTS is not set CONFIG_APM_REAL_MODE_POWER_OFF=y # # CPU Frequency scaling # # CONFIG_CPU_FREQ is not set # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GOMMCONFIG is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y # CONFIG_PCI_LEGACY_PROC is not set CONFIG_PCI_NAMES=y # CONFIG_ISA is not set # CONFIG_MCA is not set # CONFIG_SCx200 is not set # # Executable file formats # CONFIG_BINFMT_ELF=y CONFIG_BINFMT_AOUT=y CONFIG_BINFMT_MISC=y # # Device Drivers # # # Generic Driver Options # CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_DEBUG_DRIVER is not set # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # # CONFIG_PARPORT is not set # # Plug and Play support # # # Block devices # CONFIG_BLK_DEV_FD=m # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_CRYPTOLOOP=m CONFIG_BLK_DEV_NBD=m # CONFIG_BLK_DEV_SX8 is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" # CONFIG_LBD is not set # CONFIG_CDROM_PKTCDVD is not set # # ATA/ATAPI/MFM/RLL support # CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=y # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set CONFIG_BLK_DEV_IDESCSI=m # CONFIG_IDE_TASK_IOCTL is not set # # IDE chipset support/bugfixes # CONFIG_IDE_GENERIC=y # CONFIG_BLK_DEV_CMD640 is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y # CONFIG_BLK_DEV_OFFBOARD is not set CONFIG_BLK_DEV_GENERIC=y # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_RZ1000 is not set CONFIG_BLK_DEV_IDEDMA_PCI=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set # CONFIG_BLK_DEV_AMD74XX is not set # CONFIG_BLK_DEV_ATIIXP is not set # CONFIG_BLK_DEV_CMD64X is not set # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_CS5530 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set # CONFIG_BLK_DEV_PIIX is not set # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set CONFIG_BLK_DEV_SIS5513=y # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set # CONFIG_BLK_DEV_VIA82CXXX is not set # CONFIG_IDE_ARM is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_IVB is not set CONFIG_IDEDMA_AUTO=y # CONFIG_BLK_DEV_HD is not set # # SCSI device support # CONFIG_SCSI=m CONFIG_SCSI_PROC_FS=y # # SCSI support type (disk, tape, CD-ROM) # CONFIG_BLK_DEV_SD=m # CONFIG_CHR_DEV_ST is not set # CONFIG_CHR_DEV_OSST is not set CONFIG_BLK_DEV_SR=m # CONFIG_BLK_DEV_SR_VENDOR is not set CONFIG_CHR_DEV_SG=m # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # # CONFIG_SCSI_MULTI_LUN is not set CONFIG_SCSI_CONSTANTS=y # CONFIG_SCSI_LOGGING is not set # # SCSI Transport Attributes # # CONFIG_SCSI_SPI_ATTRS is not set # CONFIG_SCSI_FC_ATTRS is not set # # SCSI low-level drivers # # CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_AACRAID is not set CONFIG_SCSI_AIC7XXX=m CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 CONFIG_AIC7XXX_RESET_DELAY_MS=15000 # CONFIG_AIC7XXX_DEBUG_ENABLE is not set CONFIG_AIC7XXX_DEBUG_MASK=0 # CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set # CONFIG_SCSI_QLOGIC_1280_1040 is not set CONFIG_SCSI_QLA2XXX=m # CONFIG_SCSI_QLA21XX is not set # CONFIG_SCSI_QLA22XX is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6322 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_DEBUG is not set # # Multi-device support (RAID and LVM) # # CONFIG_MD is not set # # Fusion MPT device support # # CONFIG_FUSION is not set # # IEEE 1394 (FireWire) support # # CONFIG_IEEE1394 is not set # # I2O device support # # CONFIG_I2O is not set # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set CONFIG_NETLINK_DEV=y CONFIG_UNIX=y # CONFIG_NET_KEY is not set CONFIG_INET=y CONFIG_IP_MULTICAST=y CONFIG_IP_ADVANCED_ROUTER=y # CONFIG_IP_MULTIPLE_TABLES is not set # CONFIG_IP_ROUTE_MULTIPATH is not set # CONFIG_IP_ROUTE_VERBOSE is not set # CONFIG_IP_PNP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_IP_MROUTE is not set # CONFIG_ARPD is not set # CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # # IP: Virtual Server Configuration # # CONFIG_IP_VS is not set # CONFIG_IPV6 is not set CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set # # IP: Netfilter Configuration # CONFIG_IP_NF_CONNTRACK=m # CONFIG_IP_NF_CT_ACCT is not set # CONFIG_IP_NF_CT_PROTO_SCTP is not set # CONFIG_IP_NF_FTP is not set # CONFIG_IP_NF_IRC is not set # CONFIG_IP_NF_TFTP is not set # CONFIG_IP_NF_AMANDA is not set # CONFIG_IP_NF_QUEUE is not set CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_LIMIT=m CONFIG_IP_NF_MATCH_IPRANGE=m CONFIG_IP_NF_MATCH_MAC=m CONFIG_IP_NF_MATCH_PKTTYPE=m CONFIG_IP_NF_MATCH_MARK=m CONFIG_IP_NF_MATCH_MULTIPORT=m CONFIG_IP_NF_MATCH_TOS=m CONFIG_IP_NF_MATCH_RECENT=m CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_DSCP=m CONFIG_IP_NF_MATCH_AH_ESP=m CONFIG_IP_NF_MATCH_LENGTH=m CONFIG_IP_NF_MATCH_TTL=m CONFIG_IP_NF_MATCH_TCPMSS=m CONFIG_IP_NF_MATCH_HELPER=m CONFIG_IP_NF_MATCH_STATE=m CONFIG_IP_NF_MATCH_CONNTRACK=m CONFIG_IP_NF_MATCH_OWNER=m CONFIG_IP_NF_MATCH_ADDRTYPE=m CONFIG_IP_NF_MATCH_REALM=m # CONFIG_IP_NF_MATCH_SCTP is not set # CONFIG_IP_NF_MATCH_COMMENT is not set CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_LOG=m CONFIG_IP_NF_TARGET_ULOG=m CONFIG_IP_NF_TARGET_TCPMSS=m CONFIG_IP_NF_NAT=m CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=m CONFIG_IP_NF_TARGET_REDIRECT=m CONFIG_IP_NF_TARGET_NETMAP=m CONFIG_IP_NF_TARGET_SAME=m # CONFIG_IP_NF_NAT_LOCAL is not set # CONFIG_IP_NF_NAT_SNMP_BASIC is not set CONFIG_IP_NF_MANGLE=m CONFIG_IP_NF_TARGET_TOS=m CONFIG_IP_NF_TARGET_ECN=m CONFIG_IP_NF_TARGET_DSCP=m CONFIG_IP_NF_TARGET_MARK=m CONFIG_IP_NF_TARGET_CLASSIFY=m # CONFIG_IP_NF_RAW is not set CONFIG_IP_NF_ARPTABLES=m CONFIG_IP_NF_ARPFILTER=m CONFIG_IP_NF_ARP_MANGLE=m # CONFIG_IP_NF_COMPAT_IPCHAINS is not set # CONFIG_IP_NF_COMPAT_IPFWADM is not set # # SCTP Configuration (EXPERIMENTAL) # # CONFIG_IP_SCTP is not set # CONFIG_ATM is not set # CONFIG_BRIDGE is not set # CONFIG_VLAN_8021Q is not set # CONFIG_DECNET is not set # CONFIG_LLC2 is not set # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # CONFIG_NET_SCHED=y CONFIG_NET_SCH_CLK_JIFFIES=y # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set # CONFIG_NET_SCH_CLK_CPU is not set CONFIG_NET_SCH_CBQ=m CONFIG_NET_SCH_HTB=m # CONFIG_NET_SCH_HFSC is not set CONFIG_NET_SCH_PRIO=m CONFIG_NET_SCH_RED=m CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m # CONFIG_NET_SCH_NETEM is not set CONFIG_NET_SCH_INGRESS=m CONFIG_NET_QOS=y CONFIG_NET_ESTIMATOR=y CONFIG_NET_CLS=y CONFIG_NET_CLS_TCINDEX=m CONFIG_NET_CLS_ROUTE4=m CONFIG_NET_CLS_ROUTE=y CONFIG_NET_CLS_FW=m CONFIG_NET_CLS_U32=m # CONFIG_CLS_U32_PERF is not set # CONFIG_NET_CLS_IND is not set CONFIG_NET_CLS_RSVP=m CONFIG_NET_CLS_RSVP6=m # CONFIG_NET_CLS_ACT is not set CONFIG_NET_CLS_POLICE=y # # Network testing # # CONFIG_NET_PKTGEN is not set # CONFIG_KGDBOE is not set # CONFIG_NETPOLL is not set # CONFIG_NETPOLL_RX is not set # CONFIG_NETPOLL_TRAP is not set # CONFIG_NET_POLL_CONTROLLER is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set CONFIG_NETDEVICES=y CONFIG_DUMMY=m # CONFIG_BONDING is not set # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # CONFIG_ETHERTAP is not set # # ARCnet devices # # CONFIG_ARCNET is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y CONFIG_MII=m # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_HP100 is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_DGRS is not set # CONFIG_EEPRO100 is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set # CONFIG_8139CP is not set # CONFIG_8139TOO is not set CONFIG_SIS900=m # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_TLAN is not set # CONFIG_VIA_RHINE is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set # CONFIG_E1000 is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_SK98LIN is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_TIGON3 is not set # # Ethernet (10000 Mbit) # # CONFIG_IXGB is not set # CONFIG_S2IO is not set # # Token Ring devices # # CONFIG_TR is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Wan interfaces # # CONFIG_WAN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set CONFIG_PPP=m CONFIG_PPP_MULTILINK=y CONFIG_PPP_FILTER=y CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOMP=m CONFIG_PPPOE=m # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set # CONFIG_NETCONSOLE is not set # # ISDN subsystem # # CONFIG_ISDN is not set # # Telephony Support # # CONFIG_PHONE is not set # # 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_TSDEV is not set # CONFIG_INPUT_EVDEV is not set # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # CONFIG_GAMEPORT=m CONFIG_SOUND_GAMEPORT=m # CONFIG_GAMEPORT_NS558 is not set # CONFIG_GAMEPORT_L4 is not set # CONFIG_GAMEPORT_EMU10K1 is not set # CONFIG_GAMEPORT_VORTEX is not set # CONFIG_GAMEPORT_FM801 is not set # CONFIG_GAMEPORT_CS461x is not set CONFIG_SERIO=y CONFIG_SERIO_I8042=y # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_CT82C710 is not set CONFIG_SERIO_PCIPS2=m CONFIG_SERIO_LIBPS2=y # CONFIG_SERIO_RAW is not set # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=y # CONFIG_MOUSE_SERIAL is not set # CONFIG_MOUSE_VSXXXAA is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set CONFIG_INPUT_MISC=y CONFIG_INPUT_PCSPKR=y # CONFIG_INPUT_UINPUT is not set # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y # CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers # CONFIG_SERIAL_8250=y # CONFIG_SERIAL_8250_CONSOLE is not set CONFIG_SERIAL_8250_NR_UARTS=4 # CONFIG_SERIAL_8250_EXTENDED is not set # # Non-8250 serial port support # CONFIG_SERIAL_CORE=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 # # IPMI # # CONFIG_IPMI_HANDLER is not set # # Watchdog Cards # # CONFIG_WATCHDOG is not set # CONFIG_HW_RANDOM is not set CONFIG_NVRAM=y CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set CONFIG_AGP=m # CONFIG_AGP_ALI is not set # CONFIG_AGP_ATI is not set # CONFIG_AGP_AMD is not set # CONFIG_AGP_AMD64 is not set # CONFIG_AGP_INTEL is not set # CONFIG_AGP_INTEL_MCH is not set # CONFIG_AGP_NVIDIA is not set CONFIG_AGP_SIS=m # CONFIG_AGP_SWORKS is not set # CONFIG_AGP_VIA is not set # CONFIG_AGP_EFFICEON is not set # CONFIG_DRM is not set # CONFIG_MWAVE is not set # CONFIG_RAW_DRIVER is not set CONFIG_HANGCHECK_TIMER=m # # I2C support # CONFIG_I2C=m CONFIG_I2C_CHARDEV=m # # I2C Algorithms # CONFIG_I2C_ALGOBIT=m CONFIG_I2C_ALGOPCF=m # CONFIG_I2C_ALGOPCA is not set # # I2C Hardware Bus support # CONFIG_I2C_ALI1535=m CONFIG_I2C_ALI1563=m CONFIG_I2C_ALI15X3=m CONFIG_I2C_AMD756=m CONFIG_I2C_AMD8111=m CONFIG_I2C_I801=m CONFIG_I2C_I810=m CONFIG_I2C_ISA=m CONFIG_I2C_NFORCE2=m CONFIG_I2C_PARPORT_LIGHT=m CONFIG_I2C_PIIX4=m CONFIG_I2C_PROSAVAGE=m CONFIG_I2C_SAVAGE4=m CONFIG_SCx200_ACB=m CONFIG_I2C_SIS5595=m CONFIG_I2C_SIS630=m CONFIG_I2C_SIS96X=m # CONFIG_I2C_STUB is not set CONFIG_I2C_VIA=m CONFIG_I2C_VIAPRO=m CONFIG_I2C_VOODOO3=m # CONFIG_I2C_PCA_ISA is not set # # Hardware Sensors Chip support # CONFIG_I2C_SENSOR=m CONFIG_SENSORS_ADM1021=m CONFIG_SENSORS_ADM1025=m CONFIG_SENSORS_ADM1031=m CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_DS1621=m CONFIG_SENSORS_FSCHER=m CONFIG_SENSORS_GL518SM=m CONFIG_SENSORS_IT87=m CONFIG_SENSORS_LM75=m CONFIG_SENSORS_LM77=m CONFIG_SENSORS_LM78=m CONFIG_SENSORS_LM80=m CONFIG_SENSORS_LM83=m CONFIG_SENSORS_LM85=m CONFIG_SENSORS_LM90=m CONFIG_SENSORS_MAX1619=m # CONFIG_SENSORS_SMSC47M1 is not set CONFIG_SENSORS_VIA686A=m CONFIG_SENSORS_W83781D=m CONFIG_SENSORS_W83L785TS=m CONFIG_SENSORS_W83627HF=m # # Other I2C Chip support # CONFIG_SENSORS_EEPROM=m CONFIG_SENSORS_PCF8574=m CONFIG_SENSORS_PCF8591=m CONFIG_SENSORS_RTC8564=m # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set # CONFIG_I2C_DEBUG_CHIP is not set # # Dallas's 1-wire bus # # CONFIG_W1 is not set # # Misc devices # # CONFIG_IBM_ASM is not set # # Multimedia devices # # CONFIG_VIDEO_DEV is not set # # Digital Video Broadcasting Devices # # CONFIG_DVB is not set # # Graphics support # # CONFIG_FB is not set CONFIG_VIDEO_SELECT=y # # Console display driver support # CONFIG_VGA_CONSOLE=y CONFIG_DUMMY_CONSOLE=y # # Sound # CONFIG_SOUND=m # # Advanced Linux Sound Architecture # CONFIG_SND=m CONFIG_SND_TIMER=m CONFIG_SND_PCM=m CONFIG_SND_RAWMIDI=m CONFIG_SND_SEQUENCER=m CONFIG_SND_SEQ_DUMMY=m CONFIG_SND_OSSEMUL=y CONFIG_SND_MIXER_OSS=m CONFIG_SND_PCM_OSS=m CONFIG_SND_SEQUENCER_OSS=y CONFIG_SND_RTCTIMER=m # CONFIG_SND_VERBOSE_PRINTK is not set CONFIG_SND_DEBUG=y # CONFIG_SND_DEBUG_MEMORY is not set # CONFIG_SND_DEBUG_DETECT is not set # # Generic devices # # CONFIG_SND_DUMMY is not set # CONFIG_SND_VIRMIDI is not set # CONFIG_SND_MTPAV is not set # CONFIG_SND_SERIAL_U16550 is not set # CONFIG_SND_MPU401 is not set # # PCI devices # CONFIG_SND_AC97_CODEC=m # CONFIG_SND_ALI5451 is not set # CONFIG_SND_ATIIXP is not set # CONFIG_SND_ATIIXP_MODEM is not set # CONFIG_SND_AU8810 is not set # CONFIG_SND_AU8820 is not set # CONFIG_SND_AU8830 is not set # CONFIG_SND_AZT3328 is not set # CONFIG_SND_BT87X is not set CONFIG_SND_CS46XX=m CONFIG_SND_CS46XX_NEW_DSP=y # CONFIG_SND_CS4281 is not set # CONFIG_SND_EMU10K1 is not set # CONFIG_SND_KORG1212 is not set # CONFIG_SND_MIXART is not set # CONFIG_SND_NM256 is not set # CONFIG_SND_RME32 is not set # CONFIG_SND_RME96 is not set # CONFIG_SND_RME9652 is not set # CONFIG_SND_HDSP is not set # CONFIG_SND_TRIDENT is not set # CONFIG_SND_YMFPCI is not set # CONFIG_SND_ALS4000 is not set # CONFIG_SND_CMIPCI is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set # CONFIG_SND_ES1938 is not set # CONFIG_SND_ES1968 is not set # CONFIG_SND_MAESTRO3 is not set # CONFIG_SND_FM801 is not set # CONFIG_SND_ICE1712 is not set # CONFIG_SND_ICE1724 is not set # CONFIG_SND_INTEL8X0 is not set # CONFIG_SND_INTEL8X0M is not set # CONFIG_SND_SONICVIBES is not set # CONFIG_SND_VIA82XX is not set # CONFIG_SND_VX222 is not set # # Open Sound System # # CONFIG_SOUND_PRIME is not set # # USB support # # CONFIG_USB is not set # # USB Gadget Support # # CONFIG_USB_GADGET is not set # # File systems # CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y # CONFIG_EXT2_FS_POSIX_ACL is not set # CONFIG_EXT2_FS_SECURITY is not set CONFIG_EXT3_FS=y CONFIG_EXT3_FS_XATTR=y # CONFIG_EXT3_FS_POSIX_ACL is not set # CONFIG_EXT3_FS_SECURITY is not set CONFIG_JBD=y # CONFIG_JBD_DEBUG is not set CONFIG_FS_MBCACHE=y # CONFIG_REISER4_FS is not set # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set # CONFIG_XFS_FS is not set # CONFIG_MINIX_FS is not set CONFIG_ROMFS_FS=y # CONFIG_QUOTA is not set # CONFIG_AUTOFS_FS is not set CONFIG_AUTOFS4_FS=y # # Caches # # CONFIG_FSCACHE is not set # # CD-ROM/DVD Filesystems # CONFIG_ISO9660_FS=y CONFIG_JOLIET=y CONFIG_ZISOFS=y CONFIG_ZISOFS_FS=y CONFIG_UDF_FS=y CONFIG_UDF_NLS=y # # DOS/FAT/NT Filesystems # CONFIG_FAT_FS=y CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" CONFIG_NTFS_FS=m # CONFIG_NTFS_DEBUG is not set # CONFIG_NTFS_RW is not set # # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_SYSFS=y # CONFIG_DEVFS_FS is not set CONFIG_DEVPTS_FS_XATTR=y # CONFIG_DEVPTS_FS_SECURITY is not set CONFIG_TMPFS=y # CONFIG_TMPFS_XATTR is not set # CONFIG_HUGETLBFS is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y # # Miscellaneous filesystems # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_HFSPLUS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set CONFIG_CRAMFS=m # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # # Network File Systems # # CONFIG_NFS_FS is not set # CONFIG_NFSD is not set # CONFIG_EXPORTFS is not set # CONFIG_SMB_FS is not set # CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set CONFIG_AFS_FS=m CONFIG_RXRPC=m # # Partition Types # # CONFIG_PARTITION_ADVANCED is not set CONFIG_MSDOS_PARTITION=y # # Native Language Support # CONFIG_NLS=y CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set CONFIG_NLS_CODEPAGE_850=y # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_860 is not set # CONFIG_NLS_CODEPAGE_861 is not set # CONFIG_NLS_CODEPAGE_862 is not set # CONFIG_NLS_CODEPAGE_863 is not set # CONFIG_NLS_CODEPAGE_864 is not set # CONFIG_NLS_CODEPAGE_865 is not set # CONFIG_NLS_CODEPAGE_866 is not set # CONFIG_NLS_CODEPAGE_869 is not set # CONFIG_NLS_CODEPAGE_936 is not set # CONFIG_NLS_CODEPAGE_950 is not set # CONFIG_NLS_CODEPAGE_932 is not set # CONFIG_NLS_CODEPAGE_949 is not set # CONFIG_NLS_CODEPAGE_874 is not set # CONFIG_NLS_ISO8859_8 is not set CONFIG_NLS_CODEPAGE_1250=y # CONFIG_NLS_CODEPAGE_1251 is not set # CONFIG_NLS_ASCII is not set CONFIG_NLS_ISO8859_1=y # CONFIG_NLS_ISO8859_2 is not set # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_5 is not set # CONFIG_NLS_ISO8859_6 is not set # CONFIG_NLS_ISO8859_7 is not set # CONFIG_NLS_ISO8859_9 is not set # CONFIG_NLS_ISO8859_13 is not set # CONFIG_NLS_ISO8859_14 is not set CONFIG_NLS_ISO8859_15=y # CONFIG_NLS_KOI8_R is not set # CONFIG_NLS_KOI8_U is not set # CONFIG_NLS_UTF8 is not set # # Profiling support # # CONFIG_PROFILING is not set # # Kernel hacking # CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_SPINLOCK_SLEEP is not set CONFIG_DEBUG_PREEMPT=y # CONFIG_DEBUG_INFO is not set CONFIG_EARLY_PRINTK=y # CONFIG_DEBUG_STACKOVERFLOW is not set # CONFIG_KPROBES is not set # CONFIG_DEBUG_STACK_USAGE is not set # CONFIG_DEBUG_PAGEALLOC is not set # CONFIG_4KSTACKS is not set # CONFIG_SCHEDSTATS is not set # CONFIG_KGDB is not set # # Security options # # CONFIG_KEYS is not set CONFIG_SECURITY=y # CONFIG_SECURITY_NETWORK is not set CONFIG_SECURITY_CAPABILITIES=m # CONFIG_SECURITY_SECLVL is not set # CONFIG_SECURITY_SELINUX is not set # # Cryptographic options # CONFIG_CRYPTO=y # CONFIG_CRYPTO_HMAC is not set # CONFIG_CRYPTO_NULL is not set # CONFIG_CRYPTO_MD4 is not set # CONFIG_CRYPTO_MD5 is not set # CONFIG_CRYPTO_SHA1 is not set # CONFIG_CRYPTO_SHA256 is not set # CONFIG_CRYPTO_SHA512 is not set # CONFIG_CRYPTO_WP512 is not set # CONFIG_CRYPTO_DES is not set # CONFIG_CRYPTO_BLOWFISH is not set # CONFIG_CRYPTO_TWOFISH is not set # CONFIG_CRYPTO_SERPENT is not set # CONFIG_CRYPTO_AES_586 is not set # CONFIG_CRYPTO_CAST5 is not set # CONFIG_CRYPTO_CAST6 is not set # CONFIG_CRYPTO_TEA is not set # CONFIG_CRYPTO_ARC4 is not set # CONFIG_CRYPTO_KHAZAD is not set # CONFIG_CRYPTO_DEFLATE is not set # CONFIG_CRYPTO_MICHAEL_MIC is not set # CONFIG_CRYPTO_CRC32C is not set # CONFIG_CRYPTO_TEST is not set # # Library routines # CONFIG_CRC_CCITT=m CONFIG_CRC32=m CONFIG_LIBCRC32C=m CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=m CONFIG_GENERIC_HARDIRQS=y CONFIG_X86_BIOS_REBOOT=y CONFIG_PC=y ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 2004-10-11 14:29 ` [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Ingo Molnar 2004-10-11 17:48 ` Florian Schmidt @ 2004-10-11 21:22 ` Rui Nuno Capela 2004-10-11 21:37 ` Lee Revell 1 sibling, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-10-11 21:22 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano, Daniel Walker, Andrew Morton > Ingo Molnar > > i've released the -T4 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc4-mm1-T4 > Very rough indeed. First and only attempt on my SMP/HT box stumbled very early at make time (CONFIG_PREEMPT_REALTIME=y): ... arch/i386/kernel/i386_ksyms.c:166: error: `rtc_lock' undeclared here (not in a function) arch/i386/kernel/i386_ksyms.c:166: error: initializer element is not constant arch/i386/kernel/i386_ksyms.c:166: error: (near initialization for `__ksymtab_rtc_lock.value') arch/i386/kernel/i386_ksyms.c:177: error: `atomic_dec_and_lock' undeclared here(not in a function) arch/i386/kernel/i386_ksyms.c:177: error: initializer element is not constant arch/i386/kernel/i386_ksyms.c:177: error: (near initialization for `__ksymtab_atomic_dec_and_lock.value') arch/i386/kernel/i386_ksyms.c:166: error: __ksymtab_rtc_lock causes a section type conflict arch/i386/kernel/i386_ksyms.c:177: error: __ksymtab_atomic_dec_and_lock causes a section type conflict make[1]: *** [arch/i386/kernel/i386_ksyms.o] Error 1 make: *** [arch/i386/kernel] Error 2 Bye. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 2004-10-11 21:22 ` Rui Nuno Capela @ 2004-10-11 21:37 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-11 21:37 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, linux-kernel, K.R. Foley, Florian Schmidt, mark_h_johnson, Fernando Pablo Lopez-Lezcano, Daniel Walker, Andrew Morton On Mon, 2004-10-11 at 17:22, Rui Nuno Capela wrote: > > Ingo Molnar > > > > i've released the -T4 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc4-mm1-T4 > > > > Very rough indeed. First and only attempt on my SMP/HT box stumbled very > early at make time (CONFIG_PREEMPT_REALTIME=y): Ingo, any reason you bump the major version number to U? Maybe it's my problem, I just posted yesterday on LAU that number changes are usually bugfix releases, and letter changes represent big, possibly untested changes. So we had a few users try T4 and were surprised it didn't work ;-) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (9 preceding siblings ...) 2004-10-11 14:29 ` [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Ingo Molnar @ 2004-10-12 4:30 ` Lee Revell 2004-10-12 9:17 ` Ingo Molnar 2004-10-13 16:48 ` Lee Revell 11 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-10-12 4:30 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > Just to recap, these are the three problem areas that still produce latencies over 500 usec on my machine. journal_clean_checkpoint_list rt_garbage_collect vga console I have found that the latter does not require switching back and forth to X; anything that produces a lot of console output can trigger 500 usec latencies. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-12 4:30 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell @ 2004-10-12 9:17 ` Ingo Molnar 2004-10-13 16:52 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-10-12 9:17 UTC (permalink / raw) To: Lee Revell Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano * Lee Revell <rlrevell@joe-job.com> wrote: > Just to recap, these are the three problem areas that still produce > latencies over 500 usec on my machine. > > journal_clean_checkpoint_list you might want to send this trace to Andrew too - the primary master of ext3 latency-breaking. > rt_garbage_collect this one is still nasty and needs revisiting. > vga console > > I have found that the latter does not require switching back and forth > to X; anything that produces a lot of console output can trigger 500 > usec latencies. the vga console one we got rid of at a certain stage and it now resurfaced. The issue was doing VGA-text-RAM copies/memsets under the vga_lock. Maybe there were changes in vgacon recently that moved some of those back under the lock? Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-12 9:17 ` Ingo Molnar @ 2004-10-13 16:52 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-13 16:52 UTC (permalink / raw) To: Andrew Morton Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano, Ingo Molnar On Tue, 2004-10-12 at 05:17, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > Just to recap, these are the three problem areas that still produce > > latencies over 500 usec on my machine. > > > > journal_clean_checkpoint_list > > you might want to send this trace to Andrew too - the primary master of > ext3 latency-breaking. > OK, Andrew, here it is. This is one of the last 2 or 3 code paths that can still produce latencies > 200 usecs on a typical machine. -- Also, I am still seeing some long latencies in the ext3 journaling code: preemption latency trace v1.0.7 on 2.6.9-rc3-mm3-VP-T3 ------------------------------------------------------- latency: 607 us, entries: 1087 (1087) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: kjournald/687, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: journal_commit_transaction+0x75/0x2830 => ended at: __journal_clean_checkpoint_list+0xb2/0xf0 =======> 00000001 0.000ms (+0.003ms): journal_commit_transaction (kjournald) Here is the loop: 00000002 0.003ms (+0.001ms): kfree (journal_commit_transaction) 00000001 0.004ms (+0.001ms): journal_refile_buffer (journal_commit_transaction) 00000003 0.006ms (+0.000ms): __journal_refile_buffer (journal_refile_buffer) 00000003 0.006ms (+0.001ms): __journal_unfile_buffer (journal_refile_buffer) 00000002 0.008ms (+0.000ms): journal_remove_journal_head (journal_refile_buffer) 00000003 0.008ms (+0.000ms): __journal_remove_journal_head (journal_remove_journal_head) 00000003 0.009ms (+0.000ms): __brelse (__journal_remove_journal_head) 00000003 0.010ms (+0.000ms): journal_free_journal_head (journal_remove_journal_head) 00000003 0.010ms (+0.001ms): kmem_cache_free (journal_free_journal_head) 00000001 0.011ms (+0.000ms): __brelse (journal_commit_transaction) [end loop] 00000002 0.012ms (+0.000ms): kfree (journal_commit_transaction) 00000001 0.013ms (+0.000ms): journal_refile_buffer (journal_commit_transaction) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar ` (10 preceding siblings ...) 2004-10-12 4:30 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell @ 2004-10-13 16:48 ` Lee Revell 11 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-10-13 16:48 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, K.R. Foley, Rui Nuno Capela, Florian Schmidt, Mark_H_Johnson, Fernando Pablo Lopez-Lezcano On Thu, 2004-10-07 at 06:52, Ingo Molnar wrote: > i've released the -T3 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm3-T3 > Ingo, here's the data from an 87 million sample run (about 24 hours) of my jackd test. Note the 1292 usec outlier. This is definitely not latency trace overhead as it was disabled. I suspect either the rt_garbage_collect or journal_clean_checkpoint_list code path is responsible. Delay # samples ----- --------- 0 86798124 1 122 2 113 3 118 4 109 5 96 6 78 7 66 8 66 9 51 10 52 11 41 12 39 13 43 14 43 15 30 16 17 17 18 18 28 19 17 20 18 21 16 22 19 23 19 24 19 25 15 26 26 27 13 28 13 29 10 30 17 31 19 32 12 33 12 34 17 35 7 36 16 37 13 38 7 39 10 40 9 41 9 42 9 43 8 44 11 45 18 46 12 47 13 48 6 49 12 50 12 51 13 52 8 53 11 54 14 55 5 56 5 57 11 58 8 59 11 60 8 61 5 62 11 63 8 64 9 65 11 66 9 67 8 68 8 69 8 70 8 71 8 72 11 73 10 74 10 75 8 76 2 77 7 78 4 79 9 80 5 81 4 82 2 83 7 84 6 85 1 86 7 87 5 88 10 89 7 90 3 91 7 92 7 93 7 94 1 95 7 96 5 97 7 98 2 99 3 100 3 101 4 102 4 103 4 104 5 105 3 106 5 107 2 108 4 109 1 110 2 111 2 112 3 113 2 115 1 116 3 117 2 118 3 119 3 120 1 121 2 122 2 123 2 124 1 127 1 128 2 129 2 130 2 133 1 135 1 139 1 141 2 145 1 147 1 152 1 156 1 169 1 173 1 177 1 187 1 194 2 233 1 242 1 290 1 352 1 1292 1 Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar 2004-10-05 16:37 ` Rui Nuno Capela 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar @ 2004-10-08 11:16 ` William Lee Irwin III 2 siblings, 0 replies; 224+ messages in thread From: William Lee Irwin III @ 2004-10-08 11:16 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, Lee Revell, K.R. Foley, Rui Nuno Capela, Florian Schmidt On Tue, Oct 05, 2004 at 03:47:07PM +0200, Ingo Molnar wrote: > i've released the -T1 VP patch: > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T1 > Changes since -T0: > - added the read-lock fix from Hugh that affects SMP systems. This > could fix Rui's problem - i've checked -T1 on a P4/HT box and saw no > problems, BYMMV. > - compilation fixes (for those who downloaded T0 early) > - small tracer improvement > to build a -T1 tree from scratch the patching order is: > http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2 > + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc3.bz2 > + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc3/2.6.9-rc3-mm2/2.6.9-rc3-mm2.bz2 > + http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc3-mm2-T1 The version numbers are up to Chebyshev polynomials. Now I have to try it. -- wli ^ permalink raw reply [flat|nested] 224+ messages in thread
* Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 2004-09-21 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo Molnar 2004-09-21 18:51 ` K.R. Foley 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar @ 2004-09-22 17:30 ` K.R. Foley 2004-09-22 19:43 ` Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-22 17:30 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S2 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S2 > I don't know if this one has been fixed in S3 or not but I also saw this in S1 I think. This just happened when I booted back into S2 so I thought I would report it. kr Sep 22 12:00:44 porky kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000000 Sep 22 12:00:44 porky kernel: printing eip: Sep 22 12:00:44 porky kernel: c01776dd Sep 22 12:00:44 porky kernel: *pde = 00000000 Sep 22 12:00:44 porky kernel: using smp_processor_id() in preemptible code: mingetty/2667 Sep 22 12:00:44 porky kernel: [<c011c58e>] smp_processor_id+0x8e/0xa0 Sep 22 12:00:44 porky kernel: [<c01078b8>] die+0x18/0x190 Sep 22 12:00:44 porky kernel: [<c0121675>] vprintk+0x125/0x170 Sep 22 12:00:44 porky kernel: [<c012153d>] printk+0x1d/0x30 Sep 22 12:00:44 porky kernel: [<c011958d>] do_page_fault+0x32d/0x621 Sep 22 12:00:44 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 22 12:00:44 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 22 12:00:44 porky kernel: [<c02b3f9a>] _spin_unlock+0x1a/0x40 Sep 22 12:00:44 porky init: open(/dev/pts/0): No such file or directory Sep 22 12:00:44 porky kernel: [<c0138512>] check_preempt_timing+0x192/0x200 Sep 22 12:00:45 porky init: open(/dev/pts/0): No such file or directory Sep 22 12:00:45 porky kernel: [<c02b3f9a>] _spin_unlock+0x1a/0x40 Sep 22 12:00:45 porky kernel: [<c014a8a3>] kmem_cache_alloc+0x63/0x70 Sep 22 12:00:45 porky kernel: [<c02b314e>] cond_resched+0xe/0x80 Sep 22 12:00:45 porky kernel: [<c0119260>] do_page_fault+0x0/0x621 Sep 22 12:00:45 porky kernel: [<c0107175>] error_code+0x2d/0x38 Sep 22 12:00:45 porky kernel: [<c01776dd>] __posix_lock_file+0x6d/0x5a0 Sep 22 12:00:45 porky kernel: [<c0176a2e>] flock_to_posix_lock+0xe/0x170 Sep 22 12:00:45 porky kernel: [<c0178bd6>] fcntl_setlk+0x166/0x2d0 Sep 22 12:00:45 porky kernel: [<c01b3fd8>] dummy_file_lock+0x8/0x10 Sep 22 12:00:45 porky kernel: [<c0178c0f>] fcntl_setlk+0x19f/0x2d0 Sep 22 12:00:45 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 22 12:00:45 porky kernel: [<c02b3f9a>] _spin_unlock+0x1a/0x40 Sep 22 12:00:45 porky kernel: [<c0138512>] check_preempt_timing+0x192/0x200 Sep 22 12:00:45 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 22 12:00:45 porky kernel: [<c02b3f9a>] _spin_unlock+0x1a/0x40 Sep 22 12:00:45 porky kernel: [<c01747d2>] sys_fcntl64+0xa2/0xc0 Sep 22 12:00:45 porky kernel: [<c0174501>] do_fcntl+0x11/0x1c0 Sep 22 12:00:45 porky kernel: [<c01745f5>] do_fcntl+0x105/0x1c0 Sep 22 12:00:45 porky kernel: [<c01747d2>] sys_fcntl64+0xa2/0xc0 Sep 22 12:00:46 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 Sep 22 12:00:46 porky kernel: Oops: 0000 [#1] Sep 22 12:00:46 porky kernel: PREEMPT SMP Sep 22 12:00:46 porky kernel: Modules linked in: parport_pc lp parport autofs4 sunrpc tulip ide_cd cdrom floppy sg microcode dm_mod uhci_hcd usbcore ipv6 ext3 jbd aic7xxx sd_mod scsi_mod Sep 22 12:00:46 porky kernel: CPU: 0 Sep 22 12:00:47 porky kernel: EIP: 0060:[<c01776dd>] Not tainted VLI Sep 22 12:00:47 porky kernel: EFLAGS: 00010246 (2.6.9-rc2-mm1-VP-S2) Sep 22 12:00:47 porky kernel: EIP is at __posix_lock_file+0x6d/0x5a0 Sep 22 12:00:47 porky kernel: eax: 00000000 ebx: 00000000 ecx: d74e05ac edx: 00000000 Sep 22 12:00:47 porky kernel: esi: dc53e328 edi: dc53e3d8 ebp: de96ff00 esp: de96fea4 Sep 22 12:00:47 porky kernel: ds: 007b es: 007b ss: 0068 preempt: 00000001 Sep 22 12:00:47 porky kernel: Process mingetty (pid: 2667, threadinfo=de96e000 task=dfcecbf0) Sep 22 12:00:48 porky kernel: Stack: d74e05ac d74e01ec 00000202 00000046 c0176a2e d74e05ac dea26ce0 d74e05ac Sep 22 12:00:48 porky kernel: dea26ce0 de96fee4 00000202 c0178bd6 c01b3fd8 d74e05ac 00000000 00000000 Sep 22 12:00:48 porky kernel: 00000000 00000000 d74e054c d74e04ec d74e05ac dea26ce0 00000000 de96ff7c Sep 22 12:00:48 porky kernel: Call Trace: Sep 22 12:00:48 porky kernel: [<c0176a2e>] flock_to_posix_lock+0xe/0x170 Sep 22 12:00:48 porky kernel: [<c0178bd6>] fcntl_setlk+0x166/0x2d0 Sep 22 12:00:48 porky kernel: [<c01b3fd8>] dummy_file_lock+0x8/0x10 Sep 22 12:00:48 porky kernel: [<c0178c0f>] fcntl_setlk+0x19f/0x2d0 Sep 22 12:00:48 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 22 12:00:48 porky kernel: [<c02b3f9a>] _spin_unlock+0x1a/0x40 Sep 22 12:00:48 porky kernel: [<c0138512>] check_preempt_timing+0x192/0x200 Sep 22 12:00:48 porky kernel: [<c0138759>] sub_preempt_count+0x69/0x80 Sep 22 12:00:48 porky kernel: [<c02b3f9a>] _spin_unlock+0x1a/0x40 Sep 22 12:00:48 porky kernel: [<c01747d2>] sys_fcntl64+0xa2/0xc0 Sep 22 12:00:48 porky kernel: [<c0174501>] do_fcntl+0x11/0x1c0 Sep 22 12:00:48 porky kernel: [<c01745f5>] do_fcntl+0x105/0x1c0 Sep 22 12:00:48 porky kernel: [<c01747d2>] sys_fcntl64+0xa2/0xc0 Sep 22 12:00:48 porky kernel: [<c01066b9>] sysenter_past_esp+0x52/0x71 Sep 22 12:00:48 porky kernel: Code: 74 2f 8d 96 b0 00 00 00 89 55 e0 8b 86 b0 00 00 00 85 c0 74 1c 89 c3 8d b4 26 00 00 00 00 f6 43 30 01 0f 85 ce 04 00 00 89 5d e0 <8b> 1b 85 db 75 ed 8b 55 0c 31 ff f6 42 30 08 0f 85 6e 02 00 00 ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 2004-09-22 17:30 ` Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 K.R. Foley @ 2004-09-22 19:43 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-22 19:43 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson * K.R. Foley <kr@cybsft.com> wrote: > Ingo Molnar wrote: > >i've released the -S2 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S2 > > > > I don't know if this one has been fixed in S3 or not but I also saw > this in S1 I think. This just happened when I booted back into S2 so I > thought I would report it. > > kr > > > Sep 22 12:00:44 porky kernel: Unable to handle kernel NULL pointer > dereference at virtual address 00000000 > Sep 22 12:00:45 porky kernel: [<c0107175>] error_code+0x2d/0x38 > Sep 22 12:00:45 porky kernel: [<c01776dd>] __posix_lock_file+0x6d/0x5a0 yeah, this is one of the bugs that should be fixed in -S3. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar ` (3 preceding siblings ...) 2004-09-21 2:07 ` BKL backtraces - was: " K.R. Foley @ 2004-09-21 18:24 ` K.R. Foley 2004-09-21 19:21 ` Ingo Molnar 4 siblings, 1 reply; 224+ messages in thread From: K.R. Foley @ 2004-09-21 18:24 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > i've released the -S1 VP patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 > Two separate oopses this morning running that above patch. One appears to happen in locks_delete_lock. The log output follows. Unfortunately I am not sure what is relevant to the oops and whats not so I am sending it all. Also the trace that was generated when this happened can be found here: http://www.cybsft.com/testresults/2.6.9-rc2-mm1-VP-S0/lat_trace22.txt log output: http://www.cybsft.com/testresults/2.6.9-rc2-mm1-VP-S0/dump1.txt The other appears to happen in __posix_lock_file. Trace here: http://www.cybsft.com/testresults/2.6.9-rc2-mm1-VP-S0/lat_trace23.txt log output here: http://www.cybsft.com/testresults/2.6.9-rc2-mm1-VP-S0/dump2.txt If there is anything else that I can provide on these, or if there is a better way to post this, please let me know. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-21 18:24 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 K.R. Foley @ 2004-09-21 19:21 ` Ingo Molnar 2004-09-21 19:37 ` K.R. Foley 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-21 19:21 UTC (permalink / raw) To: K.R. Foley; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson * K.R. Foley <kr@cybsft.com> wrote: > Ingo Molnar wrote: > >i've released the -S1 VP patch: > > > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 > > > > Two separate oopses this morning running that above patch. One appears > to happen in locks_delete_lock. [...] i too got this one today. Seems to be related to the BKL changes - locks.c is a heavy user of the BKL. You have an SMP system, right? Does the oops happen if you boot with maxcpus=1? Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 2004-09-21 19:21 ` Ingo Molnar @ 2004-09-21 19:37 ` K.R. Foley 0 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-21 19:37 UTC (permalink / raw) To: Ingo Molnar; +Cc: linux-kernel, Lee Revell, Mark_H_Johnson Ingo Molnar wrote: > * K.R. Foley <kr@cybsft.com> wrote: > > >>Ingo Molnar wrote: >> >>>i've released the -S1 VP patch: >>> >>> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc2-mm1-S1 >>> >> >>Two separate oopses this morning running that above patch. One appears >>to happen in locks_delete_lock. [...] > > > i too got this one today. Seems to be related to the BKL changes - > locks.c is a heavy user of the BKL. You have an SMP system, right? Does > the oops happen if you boot with maxcpus=1? > > Ingo > This was on my SMP system. I can try the maxcpus=1. However, the trouble may be reproducing the oops. This happened at ~5:35 this morning (~9 hrs. ago). Hadn't happened again as of an hour ago when I booted S2. I will give it a try though. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-06 11:06 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Ingo Molnar 2004-09-06 11:48 ` Rafael J. Wysocki @ 2004-09-08 6:56 ` Lee Revell 2004-09-09 19:29 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-08 6:56 UTC (permalink / raw) To: Ingo Molnar Cc: linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson On Mon, 2004-09-06 at 07:06, Ingo Molnar wrote: > i've released the -R6 patch: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R6 I get these latencies when I cause the machine to swap by compiling a kernel with make -j32. They get bigger as the machine gets further into swap. Every 2.0s: head -60 /proc/latency_trace Wed Sep 8 02:51:40 2004 preemption latency trace v1.0.6 on 2.6.9-rc1-bk12-VP-R6 -------------------------------------------------- latency: 605 us, entries: 5 (5) [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: kswapd0/35, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: get_swap_page+0x23/0x490 => ended at: get_swap_page+0x13f/0x490 =======> 00000001 0.000ms (+0.606ms): get_swap_page (add_to_swap) 00000001 0.606ms (+0.000ms): sub_preempt_count (get_swap_page) 00000001 0.606ms (+0.000ms): update_max_trace (check_preempt_timing) 00000001 0.606ms (+0.000ms): _mmx_memcpy (update_max_trace) 00000001 0.607ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-08 6:56 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Lee Revell @ 2004-09-09 19:29 ` Ingo Molnar 2004-09-09 19:33 ` Lee Revell ` (3 more replies) 0 siblings, 4 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-09 19:29 UTC (permalink / raw) To: Lee Revell, Andrew Morton Cc: linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson * Lee Revell <rlrevell@joe-job.com> wrote: > I get these latencies when I cause the machine to swap by compiling a > kernel with make -j32. They get bigger as the machine gets further > into swap. > > Every 2.0s: head -60 /proc/latency_trace Wed Sep 8 02:51:40 2004 > > preemption latency trace v1.0.6 on 2.6.9-rc1-bk12-VP-R6 > -------------------------------------------------- > latency: 605 us, entries: 5 (5) [VP:1 KP:1 SP:1 HP:1 #CPUS:1] > ----------------- > | task: kswapd0/35, uid:0 nice:0 policy:0 rt_prio:0 > ----------------- > => started at: get_swap_page+0x23/0x490 > => ended at: get_swap_page+0x13f/0x490 > =======> > 00000001 0.000ms (+0.606ms): get_swap_page (add_to_swap) > 00000001 0.606ms (+0.000ms): sub_preempt_count (get_swap_page) > 00000001 0.606ms (+0.000ms): update_max_trace (check_preempt_timing) > 00000001 0.606ms (+0.000ms): _mmx_memcpy (update_max_trace) > 00000001 0.607ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) yep, the get_swap_page() latency. I can easily trigger 10+ msec latencies on a box with alot of swap by just letting stuff swap out. I had a quick look but there was no obvious way to break the lock. Maybe Andrew has better ideas? get_swap_page() is pretty stupid, it does a near linear search for a free slot in the swap bitmap - this not only is a latency issue but also an overhead thing as we do it for every other page that touches swap. rationale: this is pretty much the only latency that we still having during heavy VM load and it would Just Be Cool if we fixed this final one. audio daemons and apps like jackd use mlockall() so they are not affected by swapping. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 19:29 ` Ingo Molnar @ 2004-09-09 19:33 ` Lee Revell 2004-09-09 20:43 ` Lee Revell 2004-09-09 20:05 ` Andrew Morton ` (2 subsequent siblings) 3 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-09 19:33 UTC (permalink / raw) To: Ingo Molnar Cc: Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson, scott On Thu, 2004-09-09 at 15:29, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > I get these latencies when I cause the machine to swap by compiling a > > kernel with make -j32. They get bigger as the machine gets further > > into swap. > > > > Every 2.0s: head -60 /proc/latency_trace Wed Sep 8 02:51:40 2004 > > > > preemption latency trace v1.0.6 on 2.6.9-rc1-bk12-VP-R6 > > -------------------------------------------------- > > latency: 605 us, entries: 5 (5) [VP:1 KP:1 SP:1 HP:1 #CPUS:1] > > ----------------- > > | task: kswapd0/35, uid:0 nice:0 policy:0 rt_prio:0 > > ----------------- > > => started at: get_swap_page+0x23/0x490 > > => ended at: get_swap_page+0x13f/0x490 > > =======> > > 00000001 0.000ms (+0.606ms): get_swap_page (add_to_swap) > > 00000001 0.606ms (+0.000ms): sub_preempt_count (get_swap_page) > > 00000001 0.606ms (+0.000ms): update_max_trace (check_preempt_timing) > > 00000001 0.606ms (+0.000ms): _mmx_memcpy (update_max_trace) > > 00000001 0.607ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) > > yep, the get_swap_page() latency. I can easily trigger 10+ msec > latencies on a box with alot of swap by just letting stuff swap out. I > had a quick look but there was no obvious way to break the lock. Maybe > Andrew has better ideas? get_swap_page() is pretty stupid, it does a > near linear search for a free slot in the swap bitmap - this not only is > a latency issue but also an overhead thing as we do it for every other > page that touches swap. > > rationale: this is pretty much the only latency that we still having > during heavy VM load and it would Just Be Cool if we fixed this final > one. audio daemons and apps like jackd use mlockall() so they are not > affected by swapping. > I believe Scott Wood suggested a fix back when I first reported this, have to check my mailbox. Scott? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 19:33 ` Lee Revell @ 2004-09-09 20:43 ` Lee Revell 2004-09-09 20:51 ` Ingo Molnar 2004-09-09 21:03 ` Scott Wood 0 siblings, 2 replies; 224+ messages in thread From: Lee Revell @ 2004-09-09 20:43 UTC (permalink / raw) To: Ingo Molnar Cc: Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson, scott On Thu, 2004-09-09 at 15:33, Lee Revell wrote: > I believe Scott Wood suggested a fix back when I first reported this, > have to check my mailbox. Scott? > Nope, checking the original thread, Scott pointed out that any RT process will have mlockall'ed anyway and thus won't be affected by this latency. So, this one would be cool to fix, but it's not a problem as such. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 20:43 ` Lee Revell @ 2004-09-09 20:51 ` Ingo Molnar 2004-09-09 21:03 ` Scott Wood 1 sibling, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-09 20:51 UTC (permalink / raw) To: Lee Revell Cc: Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson, scott * Lee Revell <rlrevell@joe-job.com> wrote: > > I believe Scott Wood suggested a fix back when I first reported this, > > have to check my mailbox. Scott? > > Nope, checking the original thread, Scott pointed out that any RT > process will have mlockall'ed anyway and thus won't be affected by > this latency. So, this one would be cool to fix, but it's not a > problem as such. RT threads will be affected by this latency just as much because it's a non-preemptable critical section. You are right in that an RT task wont see the overhead itself because it doesnt generate swap entries. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 20:43 ` Lee Revell 2004-09-09 20:51 ` Ingo Molnar @ 2004-09-09 21:03 ` Scott Wood 1 sibling, 0 replies; 224+ messages in thread From: Scott Wood @ 2004-09-09 21:03 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson, scott On Thu, Sep 09, 2004 at 04:43:49PM -0400, Lee Revell wrote: > On Thu, 2004-09-09 at 15:33, Lee Revell wrote: > > I believe Scott Wood suggested a fix back when I first reported this, > > have to check my mailbox. Scott? > > > > Nope, checking the original thread, Scott pointed out that any RT > process will have mlockall'ed anyway and thus won't be affected by this > latency. So, this one would be cool to fix, but it's not a problem as > such. Though, if this is an actual lock latency (as opposed to merely being a page-fault latency suffered by the task swapping something in), it could affect mlockall'd processes as well due to some other task swapping. One way to fix the latency would be to turn the locks involved into sleeping mutexes. There's a comment in the code saying that swaplock cannot be turned into a semaphore, but it does not say why; if this is due to it nesting in other locks, those locks would need to be converted as well. It could turn into quite a mess doing it manually, though turning all spinlocks into mutexes (except hand-chosen exceptions) should take care of it. -Scott ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 19:29 ` Ingo Molnar 2004-09-09 19:33 ` Lee Revell @ 2004-09-09 20:05 ` Andrew Morton 2004-09-09 20:09 ` Alan Cox ` (2 more replies) 2004-09-09 20:13 ` Lee Revell 2004-09-22 0:17 ` William Lee Irwin III 3 siblings, 3 replies; 224+ messages in thread From: Andrew Morton @ 2004-09-09 20:05 UTC (permalink / raw) To: Ingo Molnar Cc: rlrevell, linux-kernel, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson Ingo Molnar <mingo@elte.hu> wrote: > > yep, the get_swap_page() latency. I can easily trigger 10+ msec > latencies on a box with alot of swap by just letting stuff swap out. I > had a quick look but there was no obvious way to break the lock. Maybe > Andrew has better ideas? get_swap_page() is pretty stupid, it does a > near linear search for a free slot in the swap bitmap - this not only is > a latency issue but also an overhead thing as we do it for every other > page that touches swap. Someone needs to get down and redesign the swap block allocator. I bet latency improvements would fall out of that automatically. The main problem is that swap blocks are now physically clustered according to the page lru ordering, which doesn't have much relationship to process-virtual-address-ordering. The swap allocator made sense when we were doing a virtual scan. It doesn't make much sense now. I did a patch a while back which switches the swapspace allocator over to perform program-virtual-address clustering, but it didn't help much in brief testing and I haven't got back onto it. And contrary to my above assertion, I don't think it'll help latency ;) A short-term bodge would be to scan the map without locks held, take the lock just to actually claim the block, retry if we raced. Use swapon_sem to avoid races. After checking that we never perform GFP_WAIT allocations while holding swapon_sem. The whole thing needs work. diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c --- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700 +++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700 @@ -381,8 +381,11 @@ static int shrink_list(struct list_head * XXX: implement swap clustering ? */ if (PageAnon(page) && !PageSwapCache(page)) { + void *cookie = page->mapping; + pgoff_t index = page->index; + page_map_unlock(page); - if (!add_to_swap(page)) + if (!add_to_swap(page, cookie, index)) goto activate_locked; page_map_lock(page); } diff -puN mm/swap_state.c~swapspace-layout-improvements mm/swap_state.c --- 25/mm/swap_state.c~swapspace-layout-improvements 2004-06-03 21:32:51.089602408 -0700 +++ 25-akpm/mm/swap_state.c 2004-06-03 21:32:51.103600280 -0700 @@ -137,8 +137,12 @@ void __delete_from_swap_cache(struct pag * * Allocate swap space for the page and add the page to the * swap cache. Caller needs to hold the page lock. + * + * We attempt to lay pages out on swap to that virtually-contiguous pages are + * contiguous on-disk. To do this we utilise page->index (offset into vma) and + * page->mapping (the anon_vma's address). */ -int add_to_swap(struct page * page) +int add_to_swap(struct page *page, void *cookie, pgoff_t index) { swp_entry_t entry; int pf_flags; @@ -148,7 +152,7 @@ int add_to_swap(struct page * page) BUG(); for (;;) { - entry = get_swap_page(); + entry = get_swap_page(cookie, index); if (!entry.val) return 0; diff -puN include/linux/swap.h~swapspace-layout-improvements include/linux/swap.h --- 25/include/linux/swap.h~swapspace-layout-improvements 2004-06-03 21:32:51.090602256 -0700 +++ 25-akpm/include/linux/swap.h 2004-06-03 21:32:51.104600128 -0700 @@ -193,7 +193,7 @@ extern int rw_swap_page_sync(int, swp_en extern struct address_space swapper_space; #define total_swapcache_pages swapper_space.nrpages extern void show_swap_cache_info(void); -extern int add_to_swap(struct page *); +extern int add_to_swap(struct page *page, void *cookie, pgoff_t index); extern void __delete_from_swap_cache(struct page *); extern void delete_from_swap_cache(struct page *); extern int move_to_swap_cache(struct page *, swp_entry_t); @@ -210,7 +210,7 @@ extern int total_swap_pages; extern unsigned int nr_swapfiles; extern struct swap_info_struct swap_info[]; extern void si_swapinfo(struct sysinfo *); -extern swp_entry_t get_swap_page(void); +extern swp_entry_t get_swap_page(void *cookie, pgoff_t index); extern int swap_duplicate(swp_entry_t); extern int valid_swaphandles(swp_entry_t, unsigned long *); extern void swap_free(swp_entry_t); @@ -259,7 +259,7 @@ static inline int remove_exclusive_swap_ return 0; } -static inline swp_entry_t get_swap_page(void) +static inline swp_entry_t get_swap_page(void *cookie, pgoff_t index) { swp_entry_t entry; entry.val = 0; diff -puN mm/shmem.c~swapspace-layout-improvements mm/shmem.c --- 25/mm/shmem.c~swapspace-layout-improvements 2004-06-03 21:32:51.092601952 -0700 +++ 25-akpm/mm/shmem.c 2004-06-03 21:32:51.108599520 -0700 @@ -744,7 +744,7 @@ static int shmem_writepage(struct page * struct shmem_inode_info *info; swp_entry_t *entry, swap; struct address_space *mapping; - unsigned long index; + pgoff_t index; struct inode *inode; BUG_ON(!PageLocked(page)); @@ -756,7 +756,7 @@ static int shmem_writepage(struct page * info = SHMEM_I(inode); if (info->flags & VM_LOCKED) goto redirty; - swap = get_swap_page(); + swap = get_swap_page(mapping, index); if (!swap.val) goto redirty; diff -puN mm/swapfile.c~swapspace-layout-improvements mm/swapfile.c --- 25/mm/swapfile.c~swapspace-layout-improvements 2004-06-03 21:32:51.094601648 -0700 +++ 25-akpm/mm/swapfile.c 2004-06-03 23:40:44.396082512 -0700 @@ -25,6 +25,7 @@ #include <linux/rmap.h> #include <linux/security.h> #include <linux/backing-dev.h> +#include <linux/hash.h> #include <asm/pgtable.h> #include <asm/tlbflush.h> @@ -83,71 +84,51 @@ void swap_unplug_io_fn(struct backing_de up_read(&swap_unplug_sem); } -static inline int scan_swap_map(struct swap_info_struct *si) -{ - unsigned long offset; - /* - * We try to cluster swap pages by allocating them - * sequentially in swap. Once we've allocated - * SWAPFILE_CLUSTER pages this way, however, we resort to - * first-free allocation, starting a new cluster. This - * prevents us from scattering swap pages all over the entire - * swap partition, so that we reduce overall disk seek times - * between swap pages. -- sct */ - if (si->cluster_nr) { - while (si->cluster_next <= si->highest_bit) { - offset = si->cluster_next++; - if (si->swap_map[offset]) - continue; - si->cluster_nr--; - goto got_page; - } - } - si->cluster_nr = SWAPFILE_CLUSTER; +int akpm; - /* try to find an empty (even not aligned) cluster. */ - offset = si->lowest_bit; - check_next_cluster: - if (offset+SWAPFILE_CLUSTER-1 <= si->highest_bit) - { - int nr; - for (nr = offset; nr < offset+SWAPFILE_CLUSTER; nr++) - if (si->swap_map[nr]) - { - offset = nr+1; - goto check_next_cluster; - } - /* We found a completly empty cluster, so start - * using it. - */ - goto got_page; - } - /* No luck, so now go finegrined as usual. -Andrea */ - for (offset = si->lowest_bit; offset <= si->highest_bit ; offset++) { - if (si->swap_map[offset]) +/* + * We divide the swapdev into 1024 kilobyte chunks. We use the cookie and the + * upper bits of the index to select a chunk and the rest of the index as the + * offset into the selected chunk. + */ +#define CHUNK_SHIFT (20 - PAGE_SHIFT) +#define CHUNK_MASK (-1UL << CHUNK_SHIFT) + +static int +scan_swap_map(struct swap_info_struct *si, void *cookie, pgoff_t index) +{ + unsigned long chunk; + unsigned long nchunks; + unsigned long block; + unsigned long scan; + + nchunks = si->max >> CHUNK_SHIFT; + chunk = 0; + if (nchunks) + chunk = hash_long((unsigned long)cookie + (index & CHUNK_MASK), + BITS_PER_LONG) % nchunks; + + block = (chunk << CHUNK_SHIFT) + (index & ~CHUNK_MASK); + + for (scan = 0; scan < si->max; scan++, block++) { + if (block == si->max) + block = 0; + if (block == 0) continue; - si->lowest_bit = offset+1; - got_page: - if (offset == si->lowest_bit) - si->lowest_bit++; - if (offset == si->highest_bit) - si->highest_bit--; - if (si->lowest_bit > si->highest_bit) { - si->lowest_bit = si->max; - si->highest_bit = 0; - } - si->swap_map[offset] = 1; - si->inuse_pages++; + if (si->swap_map[block]) + continue; + si->swap_map[block] = 1; nr_swap_pages--; - si->cluster_next = offset+1; - return offset; + if (akpm) + printk("cookie:%p, index:%lu, chunk:%lu nchunks:%lu " + "block:%lu\n", + cookie, index, chunk, nchunks, block); + return block; } - si->lowest_bit = si->max; - si->highest_bit = 0; return 0; } -swp_entry_t get_swap_page(void) +swp_entry_t get_swap_page(void *cookie, pgoff_t index) { struct swap_info_struct * p; unsigned long offset; @@ -166,7 +147,7 @@ swp_entry_t get_swap_page(void) p = &swap_info[type]; if ((p->flags & SWP_ACTIVE) == SWP_ACTIVE) { swap_device_lock(p); - offset = scan_swap_map(p); + offset = scan_swap_map(p, cookie, index); swap_device_unlock(p); if (offset) { entry = swp_entry(type,offset); diff -puN kernel/power/swsusp.c~swapspace-layout-improvements kernel/power/swsusp.c --- 25/kernel/power/swsusp.c~swapspace-layout-improvements 2004-06-03 21:32:51.096601344 -0700 +++ 25-akpm/kernel/power/swsusp.c 2004-06-03 21:32:51.112598912 -0700 @@ -317,7 +317,7 @@ static int write_suspend_image(void) for (i=0; i<nr_copy_pages; i++) { if (!(i%100)) printk( "." ); - if (!(entry = get_swap_page()).val) + if (!(entry = get_swap_page(NULL, i)).val) panic("\nNot enough swapspace when writing data" ); if (swapfile_used[swp_type(entry)] != SWAPFILE_SUSPEND) @@ -334,7 +334,7 @@ static int write_suspend_image(void) cur = (union diskpage *)((char *) pagedir_nosave)+i; BUG_ON ((char *) cur != (((char *) pagedir_nosave) + i*PAGE_SIZE)); printk( "." ); - if (!(entry = get_swap_page()).val) { + if (!(entry = get_swap_page(NULL, i)).val) { printk(KERN_CRIT "Not enough swapspace when writing pgdir\n" ); panic("Don't know how to recover"); free_page((unsigned long) buffer); @@ -356,7 +356,7 @@ static int write_suspend_image(void) BUG_ON (sizeof(struct suspend_header) > PAGE_SIZE-sizeof(swp_entry_t)); BUG_ON (sizeof(union diskpage) != PAGE_SIZE); BUG_ON (sizeof(struct link) != PAGE_SIZE); - if (!(entry = get_swap_page()).val) + if (!(entry = get_swap_page(NULL, i)).val) panic( "\nNot enough swapspace when writing header" ); if (swapfile_used[swp_type(entry)] != SWAPFILE_SUSPEND) panic("\nNot enough swapspace for header on suspend device" ); diff -puN kernel/power/pmdisk.c~swapspace-layout-improvements kernel/power/pmdisk.c --- 25/kernel/power/pmdisk.c~swapspace-layout-improvements 2004-06-03 21:32:51.098601040 -0700 +++ 25-akpm/kernel/power/pmdisk.c 2004-06-03 21:32:51.113598760 -0700 @@ -206,7 +206,7 @@ static int write_swap_page(unsigned long swp_entry_t entry; int error = 0; - entry = get_swap_page(); + entry = get_swap_page(NULL, addr >> PAGE_SHIFT); if (swp_offset(entry) && swapfile_used[swp_type(entry)] == SWAPFILE_SUSPEND) { error = rw_swap_page_sync(WRITE, entry, _ ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 20:05 ` Andrew Morton @ 2004-09-09 20:09 ` Alan Cox 2004-09-09 21:28 ` Andrew Morton 2004-09-09 22:45 ` William Lee Irwin III 2004-09-10 13:28 ` Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: Alan Cox @ 2004-09-09 20:09 UTC (permalink / raw) To: Andrew Morton Cc: Ingo Molnar, rlrevell, Linux Kernel Mailing List, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson On Iau, 2004-09-09 at 21:05, Andrew Morton wrote: > I did a patch a while back which switches the swapspace allocator over to > perform program-virtual-address clustering, but it didn't help much in > brief testing and I haven't got back onto it. > > And contrary to my above assertion, I don't think it'll help latency ;) I would still expect the only thing to materially improve swap latency to be a log structured swap, possibly with a cleaner which tidies together pages that are referenced together. You also want contiguous runs of at least 64K and probaly a lot more on bigger memory systems. ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 20:09 ` Alan Cox @ 2004-09-09 21:28 ` Andrew Morton 0 siblings, 0 replies; 224+ messages in thread From: Andrew Morton @ 2004-09-09 21:28 UTC (permalink / raw) To: Alan Cox Cc: mingo, rlrevell, linux-kernel, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson Alan Cox <alan@lxorguk.ukuu.org.uk> wrote: > > I would still expect the only thing to materially improve swap latency > to be a log structured swap, possibly with a cleaner which tidies > together pages that are referenced together. > Maybe. It'd be nice to show some benefit from the "organise pages by virtual address" patch first. But then, maybe that doesn't help because there is little correlation between address congruency and time-of-reference. That's hard to believe though. hm. The patch _does_ do what I wanted it to do. Maybe I tested it with silly workloads. > > You also want contiguous runs of at least 64K and probaly a lot more on > bigger memory systems. I used 1MB. +/* + * We divide the swapdev into 1024 kilobyte chunks. We use the cookie and the + * upper bits of the index to select a chunk and the rest of the index as the + * offset into the selected chunk. + */ +#define CHUNK_SHIFT (20 - PAGE_SHIFT) ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 20:05 ` Andrew Morton 2004-09-09 20:09 ` Alan Cox @ 2004-09-09 22:45 ` William Lee Irwin III 2004-09-09 22:11 ` Alan Cox 2004-09-10 13:28 ` Ingo Molnar 2 siblings, 1 reply; 224+ messages in thread From: William Lee Irwin III @ 2004-09-09 22:45 UTC (permalink / raw) To: Andrew Morton Cc: Ingo Molnar, rlrevell, linux-kernel, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson Ingo Molnar <mingo@elte.hu> wrote: >> yep, the get_swap_page() latency. I can easily trigger 10+ msec >> latencies on a box with alot of swap by just letting stuff swap out. I >> had a quick look but there was no obvious way to break the lock. Maybe >> Andrew has better ideas? get_swap_page() is pretty stupid, it does a >> near linear search for a free slot in the swap bitmap - this not only is >> a latency issue but also an overhead thing as we do it for every other >> page that touches swap. On Thu, Sep 09, 2004 at 01:05:26PM -0700, Andrew Morton wrote: > Someone needs to get down and redesign the swap block allocator. I bet > latency improvements would fall out of that automatically. > The main problem is that swap blocks are now physically clustered according > to the page lru ordering, which doesn't have much relationship to > process-virtual-address-ordering. > The swap allocator made sense when we were doing a virtual scan. It > doesn't make much sense now. Something odd is going on, in part because I get *blistering* IO speeds running benchmarks like dbench, tiobench, et al on tmpfs with striped swap. In fact, IO speeds markedly faster than any other filesystem I've ever tried, by about 30MB/s (i.e. wirespeed, where others fall about 37.5% short of it). Virtual alignment issues do hurt, but the core allocation algorithm appears to be better than good, it's astounding. On Thu, Sep 09, 2004 at 01:05:26PM -0700, Andrew Morton wrote: > I did a patch a while back which switches the swapspace allocator over to > perform program-virtual-address clustering, but it didn't help much in > brief testing and I haven't got back onto it. > And contrary to my above assertion, I don't think it'll help latency ;) > A short-term bodge would be to scan the map without locks held, take the > lock just to actually claim the block, retry if we raced. Use swapon_sem > to avoid races. After checking that we never perform GFP_WAIT allocations > while holding swapon_sem. > The whole thing needs work. Well, yes, dbench on tmpfs isn't really the load we're shooting for. -- wli ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 22:45 ` William Lee Irwin III @ 2004-09-09 22:11 ` Alan Cox 2004-09-09 23:20 ` William Lee Irwin III 0 siblings, 1 reply; 224+ messages in thread From: Alan Cox @ 2004-09-09 22:11 UTC (permalink / raw) To: William Lee Irwin III Cc: Andrew Morton, Ingo Molnar, rlrevell, Linux Kernel Mailing List, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson On Iau, 2004-09-09 at 23:45, William Lee Irwin III wrote: > Something odd is going on, in part because I get *blistering* IO speeds > running benchmarks like dbench, tiobench, et al on tmpfs with striped > swap. In fact, IO speeds markedly faster than any other filesystem I've > ever tried, by about 30MB/s (i.e. wirespeed, where others fall about > 37.5% short of it). Virtual alignment issues do hurt, but the core > allocation algorithm appears to be better than good, it's astounding. Thats a very atypical load where you can expect to get long linear write outs. The seek v write numbers for a disk nowdays have more in common with a tape drive. Paging tends to be much much more random. Alan ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 22:11 ` Alan Cox @ 2004-09-09 23:20 ` William Lee Irwin III 0 siblings, 0 replies; 224+ messages in thread From: William Lee Irwin III @ 2004-09-09 23:20 UTC (permalink / raw) To: Alan Cox Cc: Andrew Morton, Ingo Molnar, rlrevell, Linux Kernel Mailing List, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson On Iau, 2004-09-09 at 23:45, William Lee Irwin III wrote: >> Something odd is going on, in part because I get *blistering* IO speeds >> running benchmarks like dbench, tiobench, et al on tmpfs with striped >> swap. In fact, IO speeds markedly faster than any other filesystem I've >> ever tried, by about 30MB/s (i.e. wirespeed, where others fall about >> 37.5% short of it). Virtual alignment issues do hurt, but the core >> allocation algorithm appears to be better than good, it's astounding. On Thu, Sep 09, 2004 at 11:11:39PM +0100, Alan Cox wrote: > Thats a very atypical load where you can expect to get long linear write > outs. The seek v write numbers for a disk nowdays have more in common > with a tape drive. Paging tends to be much much more random. Yes, I mentioned that those kinds of benchmarks are not the workload we're shooting for in the second part of the message. The commentary regarding dbench et al on tmpfs suggests that the lower-level parts of the algorithm are sound, but are somehow driven inappropriately or in a manner unaligned with what locality of reference there may be. -- wli ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 20:05 ` Andrew Morton 2004-09-09 20:09 ` Alan Cox 2004-09-09 22:45 ` William Lee Irwin III @ 2004-09-10 13:28 ` Ingo Molnar 2004-09-10 14:28 ` Paolo Ciarrocchi 2004-09-10 22:54 ` Lee Revell 2 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-10 13:28 UTC (permalink / raw) To: Andrew Morton Cc: rlrevell, linux-kernel, felipe_alfaro, mista.tapas, kr, Mark_H_Johnson [-- Attachment #1: Type: text/plain, Size: 502 bytes --] * Andrew Morton <akpm@osdl.org> wrote: > diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c > --- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700 > +++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700 i've attached a merge against current BK-ish kernels. Lee, would you be interested in testing it? It applies cleanly to an -S0 VP tree. I've tested it only lightly - it compiles and boots and survives some simple swapping but that's all. Ingo [-- Attachment #2: swapspace-layout-improvements-2.6.9-rc1-bk12-A1 --] [-- Type: text/plain, Size: 8058 bytes --] --- linux/include/linux/swap.h.orig +++ linux/include/linux/swap.h @@ -193,7 +193,7 @@ extern int rw_swap_page_sync(int, swp_en extern struct address_space swapper_space; #define total_swapcache_pages swapper_space.nrpages extern void show_swap_cache_info(void); -extern int add_to_swap(struct page *); +extern int add_to_swap(struct page *page, void *cookie, pgoff_t index); extern void __delete_from_swap_cache(struct page *); extern void delete_from_swap_cache(struct page *); extern int move_to_swap_cache(struct page *, swp_entry_t); @@ -209,7 +209,7 @@ extern long total_swap_pages; extern unsigned int nr_swapfiles; extern struct swap_info_struct swap_info[]; extern void si_swapinfo(struct sysinfo *); -extern swp_entry_t get_swap_page(void); +extern swp_entry_t get_swap_page(void *cookie, pgoff_t index); extern int swap_duplicate(swp_entry_t); extern int valid_swaphandles(swp_entry_t, unsigned long *); extern void swap_free(swp_entry_t); @@ -274,7 +274,7 @@ static inline int remove_exclusive_swap_ return 0; } -static inline swp_entry_t get_swap_page(void) +static inline swp_entry_t get_swap_page(void *cookie, pgoff_t index) { swp_entry_t entry; entry.val = 0; --- linux/kernel/power/swsusp.c.orig +++ linux/kernel/power/swsusp.c @@ -317,7 +317,7 @@ static int write_suspend_image(void) for (i=0; i<nr_copy_pages; i++) { if (!(i%100)) printk( "." ); - entry = get_swap_page(); + entry = get_swap_page(NULL, i); if (!entry.val) panic("\nNot enough swapspace when writing data" ); @@ -335,7 +335,7 @@ static int write_suspend_image(void) cur = (union diskpage *)((char *) pagedir_nosave)+i; BUG_ON ((char *) cur != (((char *) pagedir_nosave) + i*PAGE_SIZE)); printk( "." ); - entry = get_swap_page(); + entry = get_swap_page(NULL, i); if (!entry.val) { printk(KERN_CRIT "Not enough swapspace when writing pgdir\n" ); panic("Don't know how to recover"); @@ -358,7 +358,7 @@ static int write_suspend_image(void) BUG_ON (sizeof(struct suspend_header) > PAGE_SIZE-sizeof(swp_entry_t)); BUG_ON (sizeof(union diskpage) != PAGE_SIZE); BUG_ON (sizeof(struct link) != PAGE_SIZE); - entry = get_swap_page(); + entry = get_swap_page(NULL, i); if (!entry.val) panic( "\nNot enough swapspace when writing header" ); if (swapfile_used[swp_type(entry)] != SWAPFILE_SUSPEND) --- linux/kernel/power/pmdisk.c.orig +++ linux/kernel/power/pmdisk.c @@ -206,7 +206,7 @@ static int write_swap_page(unsigned long swp_entry_t entry; int error = 0; - entry = get_swap_page(); + entry = get_swap_page(NULL, addr >> PAGE_SHIFT); if (swp_offset(entry) && swapfile_used[swp_type(entry)] == SWAPFILE_SUSPEND) { error = rw_swap_page_sync(WRITE, entry, --- linux/mm/vmscan.c.orig +++ linux/mm/vmscan.c @@ -390,7 +390,10 @@ static int shrink_list(struct list_head * Try to allocate it some swap space here. */ if (PageAnon(page) && !PageSwapCache(page)) { - if (!add_to_swap(page)) + void *cookie = page->mapping; + pgoff_t index = page->index; + + if (!add_to_swap(page, cookie, index)) goto activate_locked; } #endif /* CONFIG_SWAP */ --- linux/mm/swap_state.c.orig +++ linux/mm/swap_state.c @@ -137,8 +137,12 @@ void __delete_from_swap_cache(struct pag * * Allocate swap space for the page and add the page to the * swap cache. Caller needs to hold the page lock. + * + * We attempt to lay pages out on swap to that virtually-contiguous pages are + * contiguous on-disk. To do this we utilise page->index (offset into vma) and + * page->mapping (the anon_vma's address). */ -int add_to_swap(struct page * page) +int add_to_swap(struct page *page, void *cookie, pgoff_t index) { swp_entry_t entry; int pf_flags; @@ -148,7 +152,7 @@ int add_to_swap(struct page * page) BUG(); for (;;) { - entry = get_swap_page(); + entry = get_swap_page(cookie, index); if (!entry.val) return 0; --- linux/mm/shmem.c.orig +++ linux/mm/shmem.c @@ -740,7 +740,7 @@ static int shmem_writepage(struct page * struct shmem_inode_info *info; swp_entry_t *entry, swap; struct address_space *mapping; - unsigned long index; + pgoff_t index; struct inode *inode; BUG_ON(!PageLocked(page)); @@ -752,7 +752,7 @@ static int shmem_writepage(struct page * info = SHMEM_I(inode); if (info->flags & VM_LOCKED) goto redirty; - swap = get_swap_page(); + swap = get_swap_page(mapping, index); if (!swap.val) goto redirty; --- linux/mm/swapfile.c.orig +++ linux/mm/swapfile.c @@ -25,6 +25,7 @@ #include <linux/rmap.h> #include <linux/security.h> #include <linux/backing-dev.h> +#include <linux/hash.h> #include <asm/pgtable.h> #include <asm/tlbflush.h> @@ -83,71 +84,51 @@ void swap_unplug_io_fn(struct backing_de up_read(&swap_unplug_sem); } -static inline int scan_swap_map(struct swap_info_struct *si) -{ - unsigned long offset; - /* - * We try to cluster swap pages by allocating them - * sequentially in swap. Once we've allocated - * SWAPFILE_CLUSTER pages this way, however, we resort to - * first-free allocation, starting a new cluster. This - * prevents us from scattering swap pages all over the entire - * swap partition, so that we reduce overall disk seek times - * between swap pages. -- sct */ - if (si->cluster_nr) { - while (si->cluster_next <= si->highest_bit) { - offset = si->cluster_next++; - if (si->swap_map[offset]) - continue; - si->cluster_nr--; - goto got_page; - } - } - si->cluster_nr = SWAPFILE_CLUSTER; +int akpm; - /* try to find an empty (even not aligned) cluster. */ - offset = si->lowest_bit; - check_next_cluster: - if (offset+SWAPFILE_CLUSTER-1 <= si->highest_bit) - { - unsigned long nr; - for (nr = offset; nr < offset+SWAPFILE_CLUSTER; nr++) - if (si->swap_map[nr]) - { - offset = nr+1; - goto check_next_cluster; - } - /* We found a completly empty cluster, so start - * using it. - */ - goto got_page; - } - /* No luck, so now go finegrined as usual. -Andrea */ - for (offset = si->lowest_bit; offset <= si->highest_bit ; offset++) { - if (si->swap_map[offset]) +/* + * We divide the swapdev into 1024 kilobyte chunks. We use the cookie and the + * upper bits of the index to select a chunk and the rest of the index as the + * offset into the selected chunk. + */ +#define CHUNK_SHIFT (20 - PAGE_SHIFT) +#define CHUNK_MASK (-1UL << CHUNK_SHIFT) + +static int +scan_swap_map(struct swap_info_struct *si, void *cookie, pgoff_t index) +{ + unsigned long chunk; + unsigned long nchunks; + unsigned long block; + unsigned long scan; + + nchunks = si->max >> CHUNK_SHIFT; + chunk = 0; + if (nchunks) + chunk = hash_long((unsigned long)cookie + (index & CHUNK_MASK), + BITS_PER_LONG) % nchunks; + + block = (chunk << CHUNK_SHIFT) + (index & ~CHUNK_MASK); + + for (scan = 0; scan < si->max; scan++, block++) { + if (block == si->max) + block = 0; + if (block == 0) continue; - si->lowest_bit = offset+1; - got_page: - if (offset == si->lowest_bit) - si->lowest_bit++; - if (offset == si->highest_bit) - si->highest_bit--; - if (si->lowest_bit > si->highest_bit) { - si->lowest_bit = si->max; - si->highest_bit = 0; - } - si->swap_map[offset] = 1; - si->inuse_pages++; + if (si->swap_map[block]) + continue; + si->swap_map[block] = 1; nr_swap_pages--; - si->cluster_next = offset+1; - return offset; + if (akpm) + printk("cookie:%p, index:%lu, chunk:%lu nchunks:%lu " + "block:%lu\n", + cookie, index, chunk, nchunks, block); + return block; } - si->lowest_bit = si->max; - si->highest_bit = 0; return 0; } -swp_entry_t get_swap_page(void) +swp_entry_t get_swap_page(void *cookie, pgoff_t index) { struct swap_info_struct * p; unsigned long offset; @@ -166,7 +147,7 @@ swp_entry_t get_swap_page(void) p = &swap_info[type]; if ((p->flags & SWP_ACTIVE) == SWP_ACTIVE) { swap_device_lock(p); - offset = scan_swap_map(p); + offset = scan_swap_map(p, cookie, index); swap_device_unlock(p); if (offset) { entry = swp_entry(type,offset); ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-10 13:28 ` Ingo Molnar @ 2004-09-10 14:28 ` Paolo Ciarrocchi 2004-09-10 16:45 ` Lee Revell 2004-09-10 22:54 ` Lee Revell 1 sibling, 1 reply; 224+ messages in thread From: Paolo Ciarrocchi @ 2004-09-10 14:28 UTC (permalink / raw) To: Ingo Molnar Cc: Andrew Morton, rlrevell, linux-kernel, felipe_alfaro, mista.tapas, kr, mark_h_johnson On Fri, 10 Sep 2004 15:28:41 +0200, Ingo Molnar <mingo@elte.hu> wrote: > > * Andrew Morton <akpm@osdl.org> wrote: > > > diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c > > --- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700 > > +++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700 > > i've attached a merge against current BK-ish kernels. Lee, would you be > interested in testing it? It applies cleanly to an -S0 VP tree. I've > tested it only lightly - it compiles and boots and survives some simple > swapping but that's all. Hello kernel folks, what's the plan regarding the inclusion of VP in mainstream ? -- Paolo Personal home page: paoloc.doesntexist.org Buy cool stuff here: http://www.cafepress.com/paoloc ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-10 14:28 ` Paolo Ciarrocchi @ 2004-09-10 16:45 ` Lee Revell 0 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-10 16:45 UTC (permalink / raw) To: Paolo Ciarrocchi Cc: Ingo Molnar, Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, kr, mark_h_johnson On Fri, 2004-09-10 at 10:28, Paolo Ciarrocchi wrote: > On Fri, 10 Sep 2004 15:28:41 +0200, Ingo Molnar <mingo@elte.hu> wrote: > > > > * Andrew Morton <akpm@osdl.org> wrote: > > > > > diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c > > > --- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700 > > > +++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700 > > > > i've attached a merge against current BK-ish kernels. Lee, would you be > > interested in testing it? It applies cleanly to an -S0 VP tree. I've > > tested it only lightly - it compiles and boots and survives some simple > > swapping but that's all. > > Hello kernel folks, > what's the plan regarding the inclusion of VP in mainstream ? > I believe the plan is to merge the individual fixes one at a time. See Ingo's recent non-VP-related posts. Once the fixes for all of the real deficiencies in the kernel that the VP patches revealed are merged, then we will have a very small patch. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-10 13:28 ` Ingo Molnar 2004-09-10 14:28 ` Paolo Ciarrocchi @ 2004-09-10 22:54 ` Lee Revell 2004-09-11 0:21 ` K.R. Foley 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-10 22:54 UTC (permalink / raw) To: Ingo Molnar Cc: Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, kr, Mark_H_Johnson On Fri, 2004-09-10 at 09:28, Ingo Molnar wrote: > * Andrew Morton <akpm@osdl.org> wrote: > > > diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c > > --- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700 > > +++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700 > OK, Andrew's patch seems to be an improvement. I can still cause unbounded latencies, but these only seem to happen when we fill all available RAM and swap space, at which point we start spending milliseconds at a time in scan_swap_map: preemption latency trace v1.0.7 on 2.6.9-rc1-bk12-VP-S0 ------------------------------------------------------- latency: 6032 us, entries: 550 (550) | [VP:1 KP:1 SP:1 HP:1 #CPUS:1] ----------------- | task: xfs/1098, uid:0 nice:0 policy:0 rt_prio:0 ----------------- => started at: rtc_interrupt+0x294/0x450 => ended at: get_swap_page+0x13f/0x350 =======> 00010002 0.000ms (+0.000ms): touch_preempt_timing (rtc_interrupt) 00010002 0.000ms (+0.000ms): printk (rtc_interrupt) 00010002 0.000ms (+0.001ms): vprintk (printk) 00010003 0.002ms (+0.000ms): vscnprintf (vprintk) 00010003 0.002ms (+0.002ms): vsnprintf (vscnprintf) 00010003 0.005ms (+0.004ms): number (vsnprintf) 00010003 0.009ms (+0.001ms): number (vsnprintf) 00010003 0.010ms (+0.001ms): number (vsnprintf) 00010003 0.011ms (+0.000ms): emit_log_char (vprintk) [...] 00010002 1.983ms (+0.000ms): preempt_schedule (do_IRQ) 00000003 1.984ms (+0.000ms): do_softirq (do_IRQ) 00000003 1.984ms (+0.911ms): __do_softirq (do_softirq) 00010002 2.896ms (+0.000ms): do_IRQ (scan_swap_map) 00010002 2.896ms (+0.000ms): do_IRQ (<00000008>) 00010003 2.897ms (+0.004ms): mask_and_ack_8259A (do_IRQ) 00010003 2.901ms (+0.000ms): preempt_schedule (do_IRQ) Full trace: http://krustophenia.net/testresults.php?dataset=2.6.9-rc1-bk12-S0#/var/www/2.6.9-rc1-bk12-S0/swapspace-layout-improvements-A1.txt The above are just the initial results; I am still testing this. It certainly seems like it can take a beating. Lee Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-10 22:54 ` Lee Revell @ 2004-09-11 0:21 ` K.R. Foley 0 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-11 0:21 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, Mark_H_Johnson Lee Revell wrote: > On Fri, 2004-09-10 at 09:28, Ingo Molnar wrote: > >>* Andrew Morton <akpm@osdl.org> wrote: >> >> >>>diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c >>>--- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700 >>>+++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700 >> > > OK, Andrew's patch seems to be an improvement. I can still cause > unbounded latencies, but these only seem to happen when we fill all > available RAM and swap space, at which point we start spending > milliseconds at a time in scan_swap_map: > > I see much improved performance so far. Been running for about 3 hours and the highest latency I've seen thus far is ~260 usec and that was mmap not swap. The highest latency I've seen from swapping is ~198 and we have been in and out of swap at least several times. The latency trace can be seen here: http://www.cybsft.com/testresults/2.6.9-rc1-bk12-S0/latencytrace1.txt kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 19:29 ` Ingo Molnar 2004-09-09 19:33 ` Lee Revell 2004-09-09 20:05 ` Andrew Morton @ 2004-09-09 20:13 ` Lee Revell 2004-09-22 0:17 ` William Lee Irwin III 3 siblings, 0 replies; 224+ messages in thread From: Lee Revell @ 2004-09-09 20:13 UTC (permalink / raw) To: Ingo Molnar Cc: Andrew Morton, linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson On Thu, 2004-09-09 at 15:29, Ingo Molnar wrote: > yep, the get_swap_page() latency. I can easily trigger 10+ msec > latencies on a box with alot of swap by just letting stuff swap out. I > had a quick look but there was no obvious way to break the lock. Maybe > Andrew has better ideas? get_swap_page() is pretty stupid, it does a > near linear search for a free slot in the swap bitmap - this not only is > a latency issue but also an overhead thing as we do it for every other > page that touches swap. > > rationale: this is pretty much the only latency that we still having > during heavy VM load and it would Just Be Cool if we fixed this final > one. audio daemons and apps like jackd use mlockall() so they are not > affected by swapping. Considering that the default swappiness behavior is to swap out idle apps to get more page cache, this would indeed be nice to fix. If the default behavior were to not swap until someone actually asks for more memory than we have, it would be less of a concern. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 2004-09-09 19:29 ` Ingo Molnar ` (2 preceding siblings ...) 2004-09-09 20:13 ` Lee Revell @ 2004-09-22 0:17 ` William Lee Irwin III 3 siblings, 0 replies; 224+ messages in thread From: William Lee Irwin III @ 2004-09-22 0:17 UTC (permalink / raw) To: Ingo Molnar Cc: Lee Revell, Andrew Morton, Hugh Dickins, linux-kernel, felipe_alfaro, Florian Schmidt, K.R. Foley, Mark_H_Johnson * Lee Revell <rlrevell@joe-job.com> wrote: >> preemption latency trace v1.0.6 on 2.6.9-rc1-bk12-VP-R6 >> -------------------------------------------------- >> latency: 605 us, entries: 5 (5) [VP:1 KP:1 SP:1 HP:1 #CPUS:1] >> ----------------- >> | task: kswapd0/35, uid:0 nice:0 policy:0 rt_prio:0 >> ----------------- >> => started at: get_swap_page+0x23/0x490 >> => ended at: get_swap_page+0x13f/0x490 >> =======> >> 00000001 0.000ms (+0.606ms): get_swap_page (add_to_swap) >> 00000001 0.606ms (+0.000ms): sub_preempt_count (get_swap_page) >> 00000001 0.606ms (+0.000ms): update_max_trace (check_preempt_timing) >> 00000001 0.606ms (+0.000ms): _mmx_memcpy (update_max_trace) >> 00000001 0.607ms (+0.000ms): kernel_fpu_begin (_mmx_memcpy) This appears to be the middle of the function, which is about right... On Thu, Sep 09, 2004 at 09:29:24PM +0200, Ingo Molnar wrote: > yep, the get_swap_page() latency. I can easily trigger 10+ msec > latencies on a box with alot of swap by just letting stuff swap out. I > had a quick look but there was no obvious way to break the lock. Maybe > Andrew has better ideas? get_swap_page() is pretty stupid, it does a > near linear search for a free slot in the swap bitmap - this not only is > a latency issue but also an overhead thing as we do it for every other > page that touches swap. > rationale: this is pretty much the only latency that we still having > during heavy VM load and it would Just Be Cool if we fixed this final > one. audio daemons and apps like jackd use mlockall() so they are not > affected by swapping. I presume most of the time is due to scan_swap_map() and not much of the rest of get_swap_page(). Dangling hierarchical bitmaps off of the swap_info structures to accelerate the search sounds plausible, though code reuse is largely infeasible due to memory allocation concerns (it must be fully-populated during swaplist element creation). The space overhead should be 1 bit per unsigned short at the first level and 1 bit per word for higher levels until the terms vanish. So that's si->max*sum(i>=0,BITS_PER_LONG**i<=si->max)floor(si->max/BITS_PER_LONG**i) <= si->max*/(1-1/BITS_PER_LONG) bits, or si->max*sizeof(long)/(BITS_PER_LONG-1) bytes, which is sizeof(long)/sizeof(short)/(BITS_PER_LONG-1) times the size of the original swap map, which is 2/31 on 32-bit and 4/63 on 64-bit of the size of the original swap map, both of which are just above 1/16 (1/496 above on 32-bit and 1/1008 above on 64-bit), so the space overhead appears to be acceptable. A hierarchical bitmap should reduce the time requirements for the search from O(sum(si) si->max) to O(BITS_PER_LONG/lg(BITS_PER_LONG)). Sound reasonable? -- wli ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar ` (2 preceding siblings ...) 2004-09-06 11:06 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Ingo Molnar @ 2004-09-07 22:55 ` Lee Revell 2004-09-07 23:13 ` Lee Revell 3 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-07 22:55 UTC (permalink / raw) To: Ingo Molnar Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro, rncbc On Sun, 2004-09-05 at 10:02, Ingo Molnar wrote: > i've released -R5: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo, here is a report from a user (Rui) of a problem that seems to have been introduced in Q5. The symptoms look very similar to the SMP/HT problems that were thought to be fixed. I have already requested more info as to what happens if soft/hardirq preemption are enabled. --- I'm having some trouble with latest VP patches on my P4 HT/SMP box. The trouble is that since Q5 that I can't get my machine to boot reliably, if at all. It goes almost all through the init scripts to drop dead on the beach, so to speak. It just freezes completely somewhere before the login prompts. This only happens if the kernel is configured for SMP/SMT (HyperThreading). The very same kernel configured and built for UP boots and runs fine. As I said before this was introduced on the Q5 patch, and the same showstopper is present on latest R6. Only with Q3 I'm still happy, altought only with softirq-preempt=0 AND hardirq-preempt=0. The "offending" box is a SUSE 9.1 based one, P4 2.80C HT on a ASUS P4P800 mobo, 1GB DDR. --- Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-07 22:55 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Lee Revell @ 2004-09-07 23:13 ` Lee Revell 2004-09-07 23:58 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-07 23:13 UTC (permalink / raw) To: Ingo Molnar Cc: Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro, Rui Nuno Capela On Tue, 2004-09-07 at 18:55, Lee Revell wrote: > Ingo, here is a report from a user (Rui) of a problem that seems to have > been introduced in Q5. Ugh, I got Rui's address wrong in the first post, please use the one above for any followups. Sorry. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-07 23:13 ` Lee Revell @ 2004-09-07 23:58 ` Rui Nuno Capela 2004-09-08 8:23 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-07 23:58 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro > Lee Revell wrote: >> Ingo, here is a report from a user (Rui) of a problem that seems to >> have been introduced in Q5. > > Ugh, I got Rui's address wrong in the first post, please use the one > above for any followups. Sorry. > >Rui Nuno Capela wrote: >> >> I'm having some trouble with latest VP patches on my P4 HT/SMP box. The >> trouble is that since Q5 that I can't get my machine to boot reliably, >> if at all. It goes almost all through the init scripts to drop dead on >> the beach, so to speak. It just freezes completely somewhere before the >> login prompts. >> >> This only happens if the kernel is configured for SMP/SMT >> (HyperThreading). The very same kernel configured and built for UP >> boots and runs fine. As I said before this was introduced on the Q5 >> patch, and the same showstopper is present on latest R6. Only with Q3 >> I'm still happy, altought only with softirq-preempt=0 AND >> hardirq-preempt=0. >> >> The "offending" box is a SUSE 9.1 based one, P4 2.80C HT on a ASUS >> P4P800 mobo, 1GB DDR. >> > > I posted the above report to LKML and cc'ed you and Ingo. None of the > LKML testers are reporting this problem, it sounds very similar to the > problems others have had with SMP/HT but those were thought to all be > solved. > Thanks Lee. Yes I was pretty excited with those reports too (I've been lurking on LKML :), but I just seem to be unlucky. That's why I've been trying one by one of the patches, from Q5 to R6 and tweaking the available options as much as I know and time permitted. OK, could just someone with a P4 HT/SMP box hand me their working kernel .config file for me to try? That could be a good starting point, if not a plain baseline. > > Has any version worked with softirq or hardirq preemption enabled? What > are the symptoms if you boot Q3 with either of the above enabled? > On this box in question, softirq and hardirq-preempt options had NEVER lead to a stable SMP/HT system, ever since my first rehearsal with VP, which I think was around O3. UP is quite different, it works and always worked, as advertised :) FWIW, R6 is pumping hard on my laptop :) Q3-SMP doesn't pass the KDE 3.3 startup splash if I set softirq=1 or hardirq=1. The system just hangs. I still keep softirq-preempt=0 and hardirq-preempt=0 as my Q3-SMP kernel bootloader parameters though. Hope this gets cleared out. All I can do is offering my best efforts to dig this out, provided someone give me some hunch ;) Thank you all. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-07 23:58 ` Rui Nuno Capela @ 2004-09-08 8:23 ` Ingo Molnar 2004-09-08 8:31 ` Ingo Molnar 2004-09-08 8:46 ` Rui Nuno Capela 0 siblings, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-08 8:23 UTC (permalink / raw) To: Rui Nuno Capela Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Rui Nuno Capela <rncbc@rncbc.org> wrote: > OK, could just someone with a P4 HT/SMP box hand me their working > kernel .config file for me to try? That could be a good starting > point, if not a plain baseline. I'll try the latest VP kernel (-R9) on a P4/HT SMP box in a minute and will send you a .config if it works. Could you also send me your .config? Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-08 8:23 ` Ingo Molnar @ 2004-09-08 8:31 ` Ingo Molnar 2004-09-09 11:09 ` Rui Nuno Capela 2004-09-25 19:26 ` Lee Revell 2004-09-08 8:46 ` Rui Nuno Capela 1 sibling, 2 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-08 8:31 UTC (permalink / raw) To: Rui Nuno Capela Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro [-- Attachment #1: Type: text/plain, Size: 893 bytes --] * Ingo Molnar <mingo@elte.hu> wrote: > * Rui Nuno Capela <rncbc@rncbc.org> wrote: > > > OK, could just someone with a P4 HT/SMP box hand me their working > > kernel .config file for me to try? That could be a good starting > > point, if not a plain baseline. > > I'll try the latest VP kernel (-R9) on a P4/HT SMP box in a minute and > will send you a .config if it works. [...] P4/HT SMP works fine here - config attached. since your lockups occur under X, could you try to disable DRI/DRM in your XConfig? Also, would it be possible to connect that box to another box via a serial line and enable the kernel's serial console via the 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that other box, set the serial line to 38400 baud there too and capture all kernel messages that occur when the lockups happens? Also enable the NMI watchdog via nmi_watchdog=1. Ingo [-- Attachment #2: config --] [-- Type: text/plain, Size: 18953 bytes --] # # Automatically generated make config: don't edit # Linux kernel version: 2.6.9-rc1-bk12-VP-S0 # Wed Sep 8 09:07:59 2004 # CONFIG_X86=y CONFIG_MMU=y CONFIG_UID16=y CONFIG_GENERIC_ISA_DMA=y # # Code maturity level options # CONFIG_EXPERIMENTAL=y CONFIG_CLEAN_COMPILE=y # # General setup # CONFIG_SWAP=y CONFIG_SYSVIPC=y # CONFIG_POSIX_MQUEUE is not set # CONFIG_BSD_PROCESS_ACCT is not set CONFIG_SYSCTL=y # CONFIG_AUDIT is not set CONFIG_LOG_BUF_SHIFT=15 CONFIG_HOTPLUG=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y # CONFIG_EMBEDDED is not set CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set # CONFIG_KALLSYMS_EXTRA_PASS is not set CONFIG_FUTEX=y CONFIG_EPOLL=y CONFIG_PREEMPT_TIMING=y CONFIG_LATENCY_TRACE=y CONFIG_MCOUNT=y CONFIG_IOSCHED_NOOP=y CONFIG_IOSCHED_AS=y CONFIG_IOSCHED_DEADLINE=y CONFIG_IOSCHED_CFQ=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SHMEM=y # CONFIG_TINY_SHMEM is not set # # Loadable module support # # CONFIG_MODULES is not set # # Processor type and features # CONFIG_X86_PC=y # CONFIG_X86_ELAN is not set # CONFIG_X86_VOYAGER is not set # CONFIG_X86_NUMAQ is not set # CONFIG_X86_SUMMIT is not set # CONFIG_X86_BIGSMP is not set # CONFIG_X86_VISWS is not set # CONFIG_X86_GENERICARCH is not set # CONFIG_X86_ES7000 is not set # CONFIG_M386 is not set # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set # CONFIG_MPENTIUMII is not set # CONFIG_MPENTIUMIII is not set # CONFIG_MPENTIUMM is not set CONFIG_MPENTIUM4=y # CONFIG_MK6 is not set # CONFIG_MK7 is not set # CONFIG_MK8 is not set # CONFIG_MCRUSOE is not set # CONFIG_MWINCHIPC6 is not set # CONFIG_MWINCHIP2 is not set # CONFIG_MWINCHIP3D is not set # CONFIG_MCYRIXIII is not set # CONFIG_MVIAC3_2 is not set # CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_L1_CACHE_SHIFT=7 CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_INTEL_USERCOPY=y CONFIG_X86_USE_PPRO_CHECKSUM=y # CONFIG_HPET_TIMER is not set CONFIG_SMP=y CONFIG_NR_CPUS=8 CONFIG_SCHED_SMT=y CONFIG_PREEMPT=y CONFIG_PREEMPT_VOLUNTARY=y CONFIG_PREEMPT_SOFTIRQS=y CONFIG_PREEMPT_HARDIRQS=y CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_TSC=y # CONFIG_X86_MCE is not set # CONFIG_TOSHIBA is not set # CONFIG_I8K is not set # CONFIG_MICROCODE is not set # CONFIG_X86_MSR is not set # CONFIG_X86_CPUID is not set # # Firmware Drivers # # CONFIG_EDD is not set # CONFIG_NOHIGHMEM is not set CONFIG_HIGHMEM4G=y # CONFIG_HIGHMEM64G is not set CONFIG_HIGHMEM=y # CONFIG_HIGHPTE is not set # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y CONFIG_IRQBALANCE=y CONFIG_HAVE_DEC_LOCK=y # # Power management options (ACPI, APM) # # CONFIG_PM is not set # # ACPI (Advanced Configuration and Power Interface) Support # # CONFIG_ACPI is not set CONFIG_ACPI_BOOT=y # # CPU Frequency scaling # # CONFIG_CPU_FREQ is not set # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GOMMCONFIG is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y # CONFIG_PCI_MSI is not set # CONFIG_PCI_LEGACY_PROC is not set # CONFIG_PCI_NAMES is not set CONFIG_ISA=y # CONFIG_EISA is not set # CONFIG_MCA is not set # CONFIG_SCx200 is not set # # PCMCIA/CardBus support # # CONFIG_PCMCIA is not set CONFIG_PCMCIA_PROBE=y # # PCI Hotplug Support # # CONFIG_HOTPLUG_PCI is not set # # Executable file formats # CONFIG_BINFMT_ELF=y CONFIG_BINFMT_AOUT=y CONFIG_BINFMT_MISC=y # # Device Drivers # # # Generic Driver Options # CONFIG_STANDALONE=y CONFIG_PREVENT_FIRMWARE_BUILD=y # CONFIG_FW_LOADER is not set # CONFIG_DEBUG_DRIVER is not set # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # CONFIG_PARPORT=y CONFIG_PARPORT_PC=y CONFIG_PARPORT_PC_CML1=y # CONFIG_PARPORT_SERIAL is not set CONFIG_PARPORT_PC_FIFO=y # CONFIG_PARPORT_PC_SUPERIO is not set # CONFIG_PARPORT_OTHER is not set CONFIG_PARPORT_1284=y # # Plug and Play support # # CONFIG_PNP is not set # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_BLK_DEV_XD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set # CONFIG_BLK_DEV_LOOP is not set # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_SX8 is not set # CONFIG_BLK_DEV_RAM is not set # CONFIG_LBD is not set # # ATA/ATAPI/MFM/RLL support # CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y # # Please see Documentation/ide.txt for help/info on IDE drives # # CONFIG_BLK_DEV_IDE_SATA is not set # CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y CONFIG_IDEDISK_MULTI_MODE=y CONFIG_BLK_DEV_IDECD=y # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set # CONFIG_BLK_DEV_IDESCSI is not set # CONFIG_IDE_TASK_IOCTL is not set # CONFIG_IDE_TASKFILE_IO is not set # # IDE chipset support/bugfixes # CONFIG_IDE_GENERIC=y CONFIG_BLK_DEV_CMD640=y # CONFIG_BLK_DEV_CMD640_ENHANCED is not set CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y # CONFIG_BLK_DEV_OFFBOARD is not set # CONFIG_BLK_DEV_GENERIC is not set # CONFIG_BLK_DEV_OPTI621 is not set CONFIG_BLK_DEV_RZ1000=y CONFIG_BLK_DEV_IDEDMA_PCI=y # CONFIG_BLK_DEV_IDEDMA_FORCED is not set CONFIG_IDEDMA_PCI_AUTO=y # CONFIG_IDEDMA_ONLYDISK is not set CONFIG_BLK_DEV_ADMA=y # CONFIG_BLK_DEV_AEC62XX is not set # CONFIG_BLK_DEV_ALI15X3 is not set # CONFIG_BLK_DEV_AMD74XX is not set # CONFIG_BLK_DEV_ATIIXP is not set # CONFIG_BLK_DEV_CMD64X is not set # CONFIG_BLK_DEV_TRIFLEX is not set # CONFIG_BLK_DEV_CY82C693 is not set # CONFIG_BLK_DEV_CS5520 is not set # CONFIG_BLK_DEV_CS5530 is not set # CONFIG_BLK_DEV_HPT34X is not set # CONFIG_BLK_DEV_HPT366 is not set # CONFIG_BLK_DEV_SC1200 is not set CONFIG_BLK_DEV_PIIX=y # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_PDC202XX_OLD is not set # CONFIG_BLK_DEV_PDC202XX_NEW is not set # CONFIG_BLK_DEV_SVWKS is not set # CONFIG_BLK_DEV_SIIMAGE is not set # CONFIG_BLK_DEV_SIS5513 is not set # CONFIG_BLK_DEV_SLC90E66 is not set # CONFIG_BLK_DEV_TRM290 is not set # CONFIG_BLK_DEV_VIA82CXXX is not set # CONFIG_IDE_ARM is not set # CONFIG_IDE_CHIPSETS is not set CONFIG_BLK_DEV_IDEDMA=y # CONFIG_IDEDMA_IVB is not set CONFIG_IDEDMA_AUTO=y # CONFIG_BLK_DEV_HD is not set # # SCSI device support # CONFIG_SCSI=y CONFIG_SCSI_PROC_FS=y # # SCSI support type (disk, tape, CD-ROM) # CONFIG_BLK_DEV_SD=y # CONFIG_CHR_DEV_ST is not set # CONFIG_CHR_DEV_OSST is not set # CONFIG_BLK_DEV_SR is not set # CONFIG_CHR_DEV_SG is not set # # Some SCSI devices (e.g. CD jukebox) support multiple LUNs # CONFIG_SCSI_MULTI_LUN=y CONFIG_SCSI_CONSTANTS=y # CONFIG_SCSI_LOGGING is not set # # SCSI Transport Attributes # # CONFIG_SCSI_SPI_ATTRS is not set # CONFIG_SCSI_FC_ATTRS is not set # # SCSI low-level drivers # # CONFIG_BLK_DEV_3W_XXXX_RAID is not set # CONFIG_SCSI_3W_9XXX is not set # CONFIG_SCSI_7000FASST is not set # CONFIG_SCSI_ACARD is not set # CONFIG_SCSI_AHA152X is not set # CONFIG_SCSI_AHA1542 is not set # CONFIG_SCSI_AACRAID is not set CONFIG_SCSI_AIC7XXX=y CONFIG_AIC7XXX_CMDS_PER_DEVICE=253 CONFIG_AIC7XXX_RESET_DELAY_MS=500 CONFIG_AIC7XXX_DEBUG_ENABLE=y CONFIG_AIC7XXX_DEBUG_MASK=0 CONFIG_AIC7XXX_REG_PRETTY_PRINT=y # CONFIG_SCSI_AIC7XXX_OLD is not set # CONFIG_SCSI_AIC79XX is not set # CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_MEGARAID_NEWGEN is not set # CONFIG_MEGARAID_LEGACY is not set # CONFIG_SCSI_SATA is not set # CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_DMX3191D is not set # CONFIG_SCSI_DTC3280 is not set # CONFIG_SCSI_EATA is not set # CONFIG_SCSI_EATA_PIO is not set # CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_GDTH is not set # CONFIG_SCSI_GENERIC_NCR5380 is not set # CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_PPA is not set # CONFIG_SCSI_IMM is not set # CONFIG_SCSI_NCR53C406A is not set # CONFIG_SCSI_SYM53C8XX_2 is not set # CONFIG_SCSI_IPR is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PSI240I is not set # CONFIG_SCSI_QLOGIC_FAS is not set # CONFIG_SCSI_QLOGIC_ISP is not set # CONFIG_SCSI_QLOGIC_FC is not set # CONFIG_SCSI_QLOGIC_1280 is not set CONFIG_SCSI_QLA2XXX=y # CONFIG_SCSI_QLA21XX is not set # CONFIG_SCSI_QLA22XX is not set # CONFIG_SCSI_QLA2300 is not set # CONFIG_SCSI_QLA2322 is not set # CONFIG_SCSI_QLA6312 is not set # CONFIG_SCSI_QLA6322 is not set # CONFIG_SCSI_SYM53C416 is not set # CONFIG_SCSI_DC395x is not set # CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_T128 is not set # CONFIG_SCSI_U14_34F is not set # CONFIG_SCSI_ULTRASTOR is not set # CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_DEBUG is not set # # Old CD-ROM drivers (not SCSI, not IDE) # # CONFIG_CD_NO_IDESCSI is not set # # Multi-device support (RAID and LVM) # # CONFIG_MD is not set # # Fusion MPT device support # # CONFIG_FUSION is not set # # IEEE 1394 (FireWire) support # # CONFIG_IEEE1394 is not set # # I2O device support # # CONFIG_I2O is not set # # Networking support # CONFIG_NET=y # # Networking options # CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set # CONFIG_NETLINK_DEV is not set CONFIG_UNIX=y # CONFIG_NET_KEY is not set CONFIG_INET=y # CONFIG_IP_MULTICAST is not set CONFIG_IP_ADVANCED_ROUTER=y # CONFIG_IP_MULTIPLE_TABLES is not set # CONFIG_IP_ROUTE_MULTIPATH is not set # CONFIG_IP_ROUTE_TOS is not set # CONFIG_IP_ROUTE_VERBOSE is not set # CONFIG_IP_PNP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_ARPD is not set # CONFIG_SYN_COOKIES is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set # CONFIG_INET_IPCOMP is not set # CONFIG_INET_TUNNEL is not set # CONFIG_IPV6 is not set # CONFIG_NETFILTER is not set # # SCTP Configuration (EXPERIMENTAL) # # CONFIG_IP_SCTP is not set # CONFIG_ATM is not set # CONFIG_BRIDGE is not set # CONFIG_VLAN_8021Q is not set # CONFIG_DECNET is not set # CONFIG_LLC2 is not set # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # # CONFIG_NET_SCHED is not set # CONFIG_NET_CLS_ROUTE is not set # # Network testing # # CONFIG_NET_PKTGEN is not set # CONFIG_NETPOLL is not set # CONFIG_NET_POLL_CONTROLLER is not set # CONFIG_HAMRADIO is not set # CONFIG_IRDA is not set # CONFIG_BT is not set CONFIG_NETDEVICES=y # CONFIG_DUMMY is not set # CONFIG_BONDING is not set # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # # ARCnet devices # # CONFIG_ARCNET is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y CONFIG_MII=y # CONFIG_HAPPYMEAL is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # CONFIG_LANCE is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_RACAL is not set # # Tulip family network device support # # CONFIG_NET_TULIP is not set # CONFIG_AT1700 is not set # CONFIG_DEPCA is not set # CONFIG_HP100 is not set # CONFIG_NET_ISA is not set CONFIG_NET_PCI=y # CONFIG_PCNET32 is not set # CONFIG_AMD8111_ETH is not set # CONFIG_ADAPTEC_STARFIRE is not set # CONFIG_AC3200 is not set # CONFIG_APRICOT is not set # CONFIG_B44 is not set # CONFIG_FORCEDETH is not set # CONFIG_CS89x0 is not set # CONFIG_DGRS is not set CONFIG_EEPRO100=y # CONFIG_EEPRO100_PIO is not set # CONFIG_E100 is not set # CONFIG_FEALNX is not set # CONFIG_NATSEMI is not set # CONFIG_NE2K_PCI is not set # CONFIG_8139CP is not set # CONFIG_8139TOO is not set # CONFIG_SIS900 is not set # CONFIG_EPIC100 is not set # CONFIG_SUNDANCE is not set # CONFIG_TLAN is not set # CONFIG_VIA_RHINE is not set # CONFIG_VIA_VELOCITY is not set # CONFIG_NET_POCKET is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_DL2K is not set CONFIG_E1000=y # CONFIG_E1000_NAPI is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_R8169 is not set # CONFIG_SK98LIN is not set CONFIG_TIGON3=y # # Ethernet (10000 Mbit) # # CONFIG_IXGB is not set # CONFIG_S2IO is not set # # Token Ring devices # # CONFIG_TR is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Wan interfaces # # CONFIG_WAN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set # CONFIG_PLIP is not set # CONFIG_PPP is not set # CONFIG_SLIP is not set # CONFIG_NET_FC is not set # CONFIG_SHAPER is not set # CONFIG_NETCONSOLE is not set # # ISDN subsystem # # CONFIG_ISDN is not set # # Telephony Support # # CONFIG_PHONE is not set # # 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 is not set # CONFIG_INPUT_TSDEV is not set # CONFIG_INPUT_EVDEV is not set # CONFIG_INPUT_EVBUG is not set # # Input I/O drivers # # CONFIG_GAMEPORT is not set CONFIG_SOUND_GAMEPORT=y CONFIG_SERIO=y CONFIG_SERIO_I8042=y # CONFIG_SERIO_SERPORT is not set # CONFIG_SERIO_CT82C710 is not set # CONFIG_SERIO_PARKBD is not set # CONFIG_SERIO_PCIPS2 is not set # # Input Device Drivers # CONFIG_INPUT_KEYBOARD=y CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_XTKBD is not set # CONFIG_KEYBOARD_NEWTON is not set CONFIG_INPUT_MOUSE=y CONFIG_MOUSE_PS2=y # CONFIG_MOUSE_SERIAL is not set # CONFIG_MOUSE_INPORT is not set # CONFIG_MOUSE_LOGIBM is not set # CONFIG_MOUSE_PC110PAD is not set # CONFIG_MOUSE_VSXXXAA is not set # CONFIG_INPUT_JOYSTICK is not set # CONFIG_INPUT_TOUCHSCREEN is not set # CONFIG_INPUT_MISC is not set # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_HW_CONSOLE=y # CONFIG_SERIAL_NONSTANDARD is not set # # Serial drivers # CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_NR_UARTS=4 # CONFIG_SERIAL_8250_EXTENDED is not set # # Non-8250 serial port support # CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256 CONFIG_PRINTER=y # CONFIG_LP_CONSOLE is not set # CONFIG_PPDEV is not set # CONFIG_TIPAR is not set # # IPMI # # CONFIG_IPMI_HANDLER is not set # # Watchdog Cards # CONFIG_WATCHDOG=y # CONFIG_WATCHDOG_NOWAYOUT is not set # # Watchdog Device Drivers # # CONFIG_SOFT_WATCHDOG is not set # CONFIG_ACQUIRE_WDT is not set # CONFIG_ADVANTECH_WDT is not set # CONFIG_ALIM1535_WDT is not set # CONFIG_ALIM7101_WDT is not set # CONFIG_SC520_WDT is not set # CONFIG_EUROTECH_WDT is not set # CONFIG_IB700_WDT is not set # CONFIG_WAFER_WDT is not set # CONFIG_I8XX_TCO is not set # CONFIG_SC1200_WDT is not set # CONFIG_SCx200_WDT is not set # CONFIG_60XX_WDT is not set # CONFIG_CPU5_WDT is not set # CONFIG_W83627HF_WDT is not set # CONFIG_W83877F_WDT is not set # CONFIG_MACHZ_WDT is not set # # ISA-based Watchdog Cards # # CONFIG_PCWATCHDOG is not set # CONFIG_MIXCOMWD is not set # CONFIG_WDT is not set # # PCI-based Watchdog Cards # # CONFIG_PCIPCWATCHDOG is not set # CONFIG_WDTPCI is not set # CONFIG_HW_RANDOM is not set # CONFIG_NVRAM is not set CONFIG_RTC=y # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_AGP is not set # CONFIG_DRM is not set # CONFIG_MWAVE is not set # CONFIG_RAW_DRIVER is not set # CONFIG_HANGCHECK_TIMER is not set # # I2C support # # CONFIG_I2C is not set # # Dallas's 1-wire bus # # CONFIG_W1 is not set # # Misc devices # # CONFIG_IBM_ASM is not set # # Multimedia devices # # CONFIG_VIDEO_DEV is not set # # Digital Video Broadcasting Devices # # CONFIG_DVB is not set # # Graphics support # # CONFIG_FB is not set # CONFIG_VIDEO_SELECT is not set # # Console display driver support # CONFIG_VGA_CONSOLE=y # CONFIG_MDA_CONSOLE is not set CONFIG_DUMMY_CONSOLE=y # # Sound # # CONFIG_SOUND is not set # # USB support # # CONFIG_USB is not set # # USB Gadget Support # # CONFIG_USB_GADGET is not set # # File systems # CONFIG_EXT2_FS=y # CONFIG_EXT2_FS_XATTR is not set CONFIG_EXT3_FS=y CONFIG_EXT3_FS_XATTR=y # CONFIG_EXT3_FS_POSIX_ACL is not set # CONFIG_EXT3_FS_SECURITY is not set CONFIG_JBD=y # CONFIG_JBD_DEBUG is not set CONFIG_FS_MBCACHE=y # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set # CONFIG_XFS_FS is not set # CONFIG_MINIX_FS is not set # CONFIG_ROMFS_FS is not set # CONFIG_QUOTA is not set # CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS4_FS is not set # # CD-ROM/DVD Filesystems # # CONFIG_ISO9660_FS is not set # CONFIG_UDF_FS is not set # # DOS/FAT/NT Filesystems # # CONFIG_MSDOS_FS is not set # CONFIG_VFAT_FS is not set # CONFIG_NTFS_FS is not set # # Pseudo filesystems # CONFIG_PROC_FS=y CONFIG_PROC_KCORE=y CONFIG_SYSFS=y # CONFIG_DEVFS_FS is not set # CONFIG_DEVPTS_FS_XATTR is not set CONFIG_TMPFS=y # CONFIG_HUGETLBFS is not set # CONFIG_HUGETLB_PAGE is not set CONFIG_RAMFS=y # # Miscellaneous filesystems # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_HFSPLUS_FS is not set # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_EFS_FS is not set # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set # CONFIG_HPFS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # # Network File Systems # CONFIG_NFS_FS=y CONFIG_NFS_V3=y # CONFIG_NFS_V4 is not set # CONFIG_NFS_DIRECTIO is not set # CONFIG_NFSD is not set CONFIG_LOCKD=y CONFIG_LOCKD_V4=y # CONFIG_EXPORTFS is not set CONFIG_SUNRPC=y # CONFIG_RPCSEC_GSS_KRB5 is not set # CONFIG_RPCSEC_GSS_SPKM3 is not set # CONFIG_SMB_FS is not set # CONFIG_CIFS is not set # CONFIG_NCP_FS is not set # CONFIG_CODA_FS is not set # CONFIG_AFS_FS is not set # # Partition Types # # CONFIG_PARTITION_ADVANCED is not set CONFIG_MSDOS_PARTITION=y # # Native Language Support # # CONFIG_NLS is not set # # Profiling support # # CONFIG_PROFILING is not set # # Kernel hacking # CONFIG_DEBUG_KERNEL=y CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_SLAB is not set # CONFIG_DEBUG_SPINLOCK is not set CONFIG_DEBUG_SPINLOCK_SLEEP=y CONFIG_DEBUG_HIGHMEM=y # CONFIG_DEBUG_INFO is not set CONFIG_EARLY_PRINTK=y CONFIG_DEBUG_STACKOVERFLOW=y # CONFIG_KPROBES is not set # CONFIG_DEBUG_STACK_USAGE is not set # CONFIG_DEBUG_PAGEALLOC is not set CONFIG_4KSTACKS=y # CONFIG_SCHEDSTATS is not set CONFIG_X86_FIND_SMP_CONFIG=y CONFIG_X86_MPPARSE=y # # Security options # # CONFIG_SECURITY is not set # # Cryptographic options # # CONFIG_CRYPTO is not set # # Library routines # # CONFIG_CRC_CCITT is not set # CONFIG_CRC32 is not set # CONFIG_LIBCRC32C is not set CONFIG_X86_SMP=y CONFIG_X86_HT=y CONFIG_X86_BIOS_REBOOT=y CONFIG_X86_TRAMPOLINE=y CONFIG_PC=y ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-08 8:31 ` Ingo Molnar @ 2004-09-09 11:09 ` Rui Nuno Capela 2004-09-15 1:16 ` Lee Revell 2004-09-25 19:26 ` Lee Revell 1 sibling, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-09 11:09 UTC (permalink / raw) To: Ingo Molnar Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro [-- Attachment #1: Type: text/plain, Size: 3745 bytes --] Hi, I'm back with some news :) >* Ingo Molnar wrote: > >> * Rui Nuno Capela wrote: >> >> > OK, could just someone with a P4 HT/SMP box hand me their working >> > kernel .config file for me to try? That could be a good starting >> > point, if not a plain baseline. >> >> I'll try the latest VP kernel (-R9) on a P4/HT SMP box in a minute and >> will send you a .config if it works. [...] > > P4/HT SMP works fine here - config attached. > > since your lockups occur under X, could you try to disable DRI/DRM in > your XConfig? Also, would it be possible to connect that box to another > box via a serial line and enable the kernel's serial console via the > 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that > other box, set the serial line to 38400 baud there too and capture all > kernel messages that occur when the lockups happens? Also enable the NMI > watchdog via nmi_watchdog=1. > OK. Spent the whole late night building several R9's, enabling modules one by one, and testing most options in a incremental fashion. Didn't tried the serial console yet but I found something that's otherwise specific to my hardware setup, but only exposed with the VP SMP configuration, as I've been recently reporting. So the base experiments were conducted by applying on: linux-2.6.9-rc1.tar.bz2 the follwing patches in sequence: patch-2.6.9-rc1-bk12.bz2 voluntary-preempt-2.6.9-rc1-bk12-R9 Here are my summary report: 1) My first experiment was using Ingo's .config exactly as he gave me, with the sole exception that I switched reiserfs support liked in, as needed by primary/boot disk partitions. It boots OK, fine but missing alomost every needed module/device support. 2) Switched module (un|auto)loading support. OK. 3) Several config iterations later, which were taken by switching in some modules I found obvious to be included one by one, I've finally reached the showstopper: USB support. 4) Then I wandered: the problem must be in one of plugged USB devices. And right I was: my WACOM GRAPHIRE2 USB tablet was the culprit. Strange enough, the hid and wacom modules weren't compiled in yet. Some more iterations later, and it didn't matter if those modules are in or not: if the tablet is plugged in at boot time the VP+SMP combination freezes. 5) Incidentally I found that I must unplug the tablet at boot time of freshly built VP+SMP kernel. Then I found that installing the linuxwacom project [http://linuxwacom.sourceforge.net] drivers, which adds some changes to mousedev (built-in), evdev and wacom kernel modules, I end up with a kernel that I can boot and run later already with the tablet plugged in. 6) Now that had found the major showstopper, I decided to go for audio: among some other thingies, switched ALSA sound modules on, included the realtime-lsm patch and built what comes to be my latest VP+SMP working kernel. And it boots OK. Great. 7) Now let's start jackd... start some client applications, hear some sound, and... horror! The system hangs completetly. The time it takes to hang is by no means deterministic. Soon or later it hangs. Hard-reboot is always the only way around, no magic-sysrq :( Gasp, I've seen this before. 8) Indeed, only by disabling both softirq and hardirq preeemption I get an usable VP+SMP kernel. But that's no surprise either, it has been always like that until Q3, which was the latest VP+SMP combination that didn't suffer with the Wacom tablet presence at boot/init time. I only hoped the (soft|hard)irq trouble would be solved by R9 time. Nevertheless, I'm now a lil'bit happier, now that I've catched up on this VP promise :) Thanks for the patience. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org P.S. Included is my latest .config. [-- Attachment #2: config-2.6.9-rc1-bk12-R9.6smp.gz --] [-- Type: application/x-gzip-compressed, Size: 7405 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-09 11:09 ` Rui Nuno Capela @ 2004-09-15 1:16 ` Lee Revell 2004-09-15 9:29 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-15 1:16 UTC (permalink / raw) To: Rui Nuno Capela Cc: Ingo Molnar, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Thu, 2004-09-09 at 07:09, Rui Nuno Capela wrote: > 4) Then I wandered: the problem must be in one of plugged USB devices. And > right I was: my WACOM GRAPHIRE2 USB tablet was the culprit. Strange > enough, the hid and wacom modules weren't compiled in yet. Some more > iterations later, and it didn't matter if those modules are in or not: if > the tablet is plugged in at boot time the VP+SMP combination freezes. > > 5) Incidentally I found that I must unplug the tablet at boot time of > freshly built VP+SMP kernel. Then I found that installing the linuxwacom > project [http://linuxwacom.sourceforge.net] drivers, which adds some > changes to mousedev (built-in), evdev and wacom kernel modules, I end up > with a kernel that I can boot and run later already with the tablet > plugged in. > > 6) Now that had found the major showstopper, I decided to go for audio: > among some other thingies, switched ALSA sound modules on, included the > realtime-lsm patch and built what comes to be my latest VP+SMP working > kernel. And it boots OK. Great. > > 7) Now let's start jackd... start some client applications, hear some > sound, and... horror! The system hangs completetly. The time it takes to > hang is by no means deterministic. Soon or later it hangs. Hard-reboot is > always the only way around, no magic-sysrq :( Gasp, I've seen this before. > > 8) Indeed, only by disabling both softirq and hardirq preeemption I get an > usable VP+SMP kernel. But that's no surprise either, it has been always > like that until Q3, which was the latest VP+SMP combination that didn't > suffer with the Wacom tablet presence at boot/init time. I only hoped the > (soft|hard)irq trouble would be solved by R9 time. Rui, did you ever get this working? Other testers are not reporting problems, it would be good to know if there are still bugs lurking. Have you tried booting with hard and softirq preemption disabled and enabling them one at a time? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-15 1:16 ` Lee Revell @ 2004-09-15 9:29 ` Rui Nuno Capela 2004-09-15 9:38 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-15 9:29 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro Hi, Lee Revell wrote: > >Rui Nuno Capela wrote: >> >> 8) Indeed, only by disabling both softirq and hardirq preeemption I get >> an usable VP+SMP kernel. But that's no surprise either, it has been >> always like that until Q3, which was the latest VP+SMP combination that >> didn't suffer with the Wacom tablet presence at boot/init time. I only >> hoped the (soft|hard)irq trouble would be solved by R9 time. > > Rui, did you ever get this working? Other testers are not reporting > problems, it would be good to know if there are still bugs lurking. > > Have you tried booting with hard and softirq preemption disabled and > enabling them one at a time? > I've beeing doing a lot experiments, the trial-and-error way, by tweaking kernel config options on and off, and (re)building the linux-2.6.9-rc1-bk12-S0 SMP kernel. I have some news indeed. As you may recall, I'm trying to run jackd realtime low-latency audio on a P4 2.80C HT (Hyperthreading), and I keep CONFIG_SMP=y always set. I found, almost by mistake, that whether CONFIG_SCHED_SMT is set makes a lot of difference. a) With CONFIG_SCHED_SMT=y, which I've being doing since ever, the system behavior is that same one I've been complaining about: having softirq-preempt=0 and hardirq-preempt=0 is the minimal setting to run jackd in realtime mode without hard-locking the whole system. Even then, I get the system completely frozen more times than I like, almost twice a day! Can't figure out who's or what's the culprit here. It's quite random. b) When CONFIG_SCHED_SMT is not set, I can run all along with softirq-preempt=1, hardirq-preempt=1 et al. While running jackd in realtime mode, I get NO hard-locks, but unfortunately XRUNs are plenty. A real storm. However I've noticed that the whole seems pretty much stable, as I didn't experience one single system hang. Regression to softirq-preempt=0 and hardirq-preempt=0 dissolves the xrun storm to nothing again. All my experiments were done based on starting jackd -R -p 128 -n 2 ... using an onboard Intel ICH5 soundcrap driven by snd-intel8x0 (alsa). Oh, I forgot to say that it's been always with kernel-preempt=1 and voluntary-preempt=1. I'm preparing to take some latency traces later on, while regarding the SMP=1 SMT=0 configuration and softirq=1 hardirq=1 setting, in a effort to let that horrible XRUN flux getting out of the way somehow, someday ;) So, bottomline is that the SMT-aware scheduler is not ready for VP, isn't it? Does anyone care to confirm this out? Cheers. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-15 9:29 ` Rui Nuno Capela @ 2004-09-15 9:38 ` Ingo Molnar 2004-09-15 9:53 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-15 9:38 UTC (permalink / raw) To: Rui Nuno Capela Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Rui Nuno Capela <rncbc@rncbc.org> wrote: > b) When CONFIG_SCHED_SMT is not set, I can run all along with > softirq-preempt=1, hardirq-preempt=1 et al. While running jackd in > realtime mode, I get NO hard-locks, but unfortunately XRUNs are > plenty. A real storm. However I've noticed that the whole seems pretty > much stable, as I didn't experience one single system hang. Regression > to softirq-preempt=0 and hardirq-preempt=0 dissolves the xrun storm to > nothing again. when you set softirq-preempt=1 and hardirq-preempt=1 then you also need to make the soundcard's IRQ non-threaded via /proc/irq/*/*/threaded (pick the right one that is your soundcard). E.g. i have a CMI8738-MC6 on IRQ11, so i'd have to do this: echo 0 > /proc/irq/11/CMI8738-MC6/threaded to mark the soundcard's interrupt as directly-executed. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-15 9:38 ` Ingo Molnar @ 2004-09-15 9:53 ` Rui Nuno Capela 2004-09-15 10:00 ` Ingo Molnar 0 siblings, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-15 9:53 UTC (permalink / raw) To: Ingo Molnar Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro Hi Ingo, Ingo Molnar wrote: > >Rui Nuno Capela wrote: > >> b) When CONFIG_SCHED_SMT is not set, I can run all along with >> softirq-preempt=1, hardirq-preempt=1 et al. While running jackd in >> realtime mode, I get NO hard-locks, but unfortunately XRUNs are >> plenty. A real storm. However I've noticed that the whole seems pretty >> much stable, as I didn't experience one single system hang. Regression >> to softirq-preempt=0 and hardirq-preempt=0 dissolves the xrun storm to >> nothing again. > > when you set softirq-preempt=1 and hardirq-preempt=1 then you also need > to make the soundcard's IRQ non-threaded via /proc/irq/*/*/threaded > (pick the right one that is your soundcard). E.g. i have a CMI8738-MC6 > on IRQ11, so i'd have to do this: > > echo 0 > /proc/irq/11/CMI8738-MC6/threaded > > to mark the soundcard's interrupt as directly-executed. > Yes, I didn't mentioned that, but I do have provided it and assumed on all my reported trials: echo 0 > "/proc/irq/8/rtc/threaded" echo 0 > "/proc/irq/17/Intel ICH5/threaded" Thanks. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-15 9:53 ` Rui Nuno Capela @ 2004-09-15 10:00 ` Ingo Molnar 2004-09-15 10:35 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-15 10:00 UTC (permalink / raw) To: Rui Nuno Capela Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Rui Nuno Capela <rncbc@rncbc.org> wrote: > Yes, I didn't mentioned that, but I do have provided it and assumed on > all my reported trials: > > echo 0 > "/proc/irq/8/rtc/threaded" > echo 0 > "/proc/irq/17/Intel ICH5/threaded" > > Thanks. weird. You shouldnt get any xruns - unless jackd for whatever reason doesnt truly run under RT priorities. (there was some NPTL related buglet that caused such a symptom in earlier jackd versions.) Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-15 10:00 ` Ingo Molnar @ 2004-09-15 10:35 ` Rui Nuno Capela 0 siblings, 0 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-15 10:35 UTC (permalink / raw) To: Ingo Molnar Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro Ingo Molnar wrote: > >Rui Nuno Capela wrote: > >> Yes, I didn't mentioned that, but I do have provided it and assumed on >> all my reported trials: >> >> echo 0 > "/proc/irq/8/rtc/threaded" >> echo 0 > "/proc/irq/17/Intel ICH5/threaded" >> >> Thanks. > > weird. You shouldnt get any xruns - unless jackd for whatever reason > doesnt truly run under RT priorities. (there was some NPTL related > buglet that caused such a symptom in earlier jackd versions.) > I thought it has been ironed out here. Note that the difference arises only whether softirq-preempt and hardirq-preempt are enabled or not. - with softirq-preempt=0 and hardirq-preempt=0, jackd realtime runs perfectly, as advertised (jackd -R -p 128 -n 2), and sounds good too ;) - with softirq-preempt=1 and hardirq-preempt=1, the XRUN storm is terribly annoying. And sound is obviously a crackling festival. Remember, that all this is on same hardware, same smp kernel configuration (CONFIG_SCHED_SMT is not set), same everything else (SuSE 9.1, NPTL 0.61, jack-0.98.11cvs). I hope the latency-traces show something useful. Til then... Take care. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-08 8:31 ` Ingo Molnar 2004-09-09 11:09 ` Rui Nuno Capela @ 2004-09-25 19:26 ` Lee Revell 2004-09-25 20:38 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-25 19:26 UTC (permalink / raw) To: Ingo Molnar Cc: Rui Nuno Capela, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Wed, 2004-09-08 at 04:31, Ingo Molnar wrote: > * Ingo Molnar <mingo@elte.hu> wrote: > > > * Rui Nuno Capela <rncbc@rncbc.org> wrote: > > > > > OK, could just someone with a P4 HT/SMP box hand me their working > > > kernel .config file for me to try? That could be a good starting > > > point, if not a plain baseline. > > > > I'll try the latest VP kernel (-R9) on a P4/HT SMP box in a minute and > > will send you a .config if it works. [...] > > P4/HT SMP works fine here - config attached. > > since your lockups occur under X, could you try to disable DRI/DRM in > your XConfig? Also, would it be possible to connect that box to another > box via a serial line and enable the kernel's serial console via the > 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that > other box, set the serial line to 38400 baud there too and capture all > kernel messages that occur when the lockups happens? Also enable the NMI > watchdog via nmi_watchdog=1. Rui brought up an interesting point on the alsa list. Is this procedure possible at all on a new laptop without a legacy serial port? Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-25 19:26 ` Lee Revell @ 2004-09-25 20:38 ` Ingo Molnar 2004-09-25 20:40 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Ingo Molnar @ 2004-09-25 20:38 UTC (permalink / raw) To: Lee Revell Cc: Rui Nuno Capela, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Lee Revell <rlrevell@joe-job.com> wrote: > > since your lockups occur under X, could you try to disable DRI/DRM in > > your XConfig? Also, would it be possible to connect that box to another > > box via a serial line and enable the kernel's serial console via the > > 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that > > other box, set the serial line to 38400 baud there too and capture all > > kernel messages that occur when the lockups happens? Also enable the NMI > > watchdog via nmi_watchdog=1. > > Rui brought up an interesting point on the alsa list. Is this > procedure possible at all on a new laptop without a legacy serial > port? well, netconsole should work. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-25 20:38 ` Ingo Molnar @ 2004-09-25 20:40 ` Lee Revell 2004-09-25 20:50 ` Duncan Sands 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-25 20:40 UTC (permalink / raw) To: Ingo Molnar Cc: Rui Nuno Capela, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Sat, 2004-09-25 at 16:38, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > > since your lockups occur under X, could you try to disable DRI/DRM in > > > your XConfig? Also, would it be possible to connect that box to another > > > box via a serial line and enable the kernel's serial console via the > > > 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that > > > other box, set the serial line to 38400 baud there too and capture all > > > kernel messages that occur when the lockups happens? Also enable the NMI > > > watchdog via nmi_watchdog=1. > > > > Rui brought up an interesting point on the alsa list. Is this > > procedure possible at all on a new laptop without a legacy serial > > port? > > well, netconsole should work. > OK just to save everyone a google search here is the procedure: http://technocrat.net/article.pl?sid=04/08/14/0236245&mode=thread Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-25 20:40 ` Lee Revell @ 2004-09-25 20:50 ` Duncan Sands 2004-09-25 23:54 ` Lee Revell 0 siblings, 1 reply; 224+ messages in thread From: Duncan Sands @ 2004-09-25 20:50 UTC (permalink / raw) To: Lee Revell Cc: Ingo Molnar, Rui Nuno Capela, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Saturday 25 September 2004 22:40, Lee Revell wrote: > On Sat, 2004-09-25 at 16:38, Ingo Molnar wrote: > > * Lee Revell <rlrevell@joe-job.com> wrote: > > > > > > since your lockups occur under X, could you try to disable DRI/DRM in > > > > your XConfig? Also, would it be possible to connect that box to another > > > > box via a serial line and enable the kernel's serial console via the > > > > 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that > > > > other box, set the serial line to 38400 baud there too and capture all > > > > kernel messages that occur when the lockups happens? Also enable the NMI > > > > watchdog via nmi_watchdog=1. > > > > > > Rui brought up an interesting point on the alsa list. Is this > > > procedure possible at all on a new laptop without a legacy serial > > > port? > > > > well, netconsole should work. > > > > OK just to save everyone a google search here is the procedure: > > http://technocrat.net/article.pl?sid=04/08/14/0236245&mode=thread You may need this patch: http://linux.bkbits.net:8080/linux-2.5/cset%4041470590n9GHsFJI2h0NeYTRXiyWMQ?nav=index.html|ChangeSet@-8w Ciao, Duncan. ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-25 20:50 ` Duncan Sands @ 2004-09-25 23:54 ` Lee Revell 2004-09-26 13:42 ` Rui Nuno Capela 0 siblings, 1 reply; 224+ messages in thread From: Lee Revell @ 2004-09-25 23:54 UTC (permalink / raw) To: Duncan Sands Cc: Ingo Molnar, Rui Nuno Capela, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro On Sat, 2004-09-25 at 16:50, Duncan Sands wrote: > On Saturday 25 September 2004 22:40, Lee Revell wrote: > > On Sat, 2004-09-25 at 16:38, Ingo Molnar wrote: > > > * Lee Revell <rlrevell@joe-job.com> wrote: > > > > > > > > since your lockups occur under X, could you try to disable DRI/DRM in > > > > > your XConfig? Also, would it be possible to connect that box to another > > > > > box via a serial line and enable the kernel's serial console via the > > > > > 'console=ttyS0,38400 console=tty' boot option and run 'minicom' on that > > > > > other box, set the serial line to 38400 baud there too and capture all > > > > > kernel messages that occur when the lockups happens? Also enable the NMI > > > > > watchdog via nmi_watchdog=1. > > > > > > > > Rui brought up an interesting point on the alsa list. Is this > > > > procedure possible at all on a new laptop without a legacy serial > > > > port? > > > > > > well, netconsole should work. > > > > > > > OK just to save everyone a google search here is the procedure: > > > > http://technocrat.net/article.pl?sid=04/08/14/0236245&mode=thread > > You may need this patch: > > http://linux.bkbits.net:8080/linux-2.5/cset%4041470590n9GHsFJI2h0NeYTRXiyWMQ?nav=index.html|ChangeSet@-8w > You know, this actually seems like an easier process than the serial console. Is there any good reason this isn't the "recommended" way to diagnose lockups? Unless they used to work at a telco ;-), most users are more likely to have an ethernet crossover cable handy than a serial cable. Here's the netconsole mini-mini HOWTO. load the module like: insmod netconsole \ netconsole=source-port@source-ip/net-interface,dest-port@dest-ip/MAC-address for example: modprobe netconsole \ netconsole=1234@69.44.153.169/eth0,4567@64.81.245.32/00:0A:8A:05:3D:80 then connect the other machine and run: netcat -u -l -p dest-port to watch the output. Lee ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-25 23:54 ` Lee Revell @ 2004-09-26 13:42 ` Rui Nuno Capela 0 siblings, 0 replies; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-26 13:42 UTC (permalink / raw) To: Lee Revell Cc: Duncan Sands, Ingo Molnar, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro Lee Revell wrote: > > You know, this actually seems like an easier process than the serial > console. Is there any good reason this isn't the "recommended" way to > diagnose lockups? Unless they used to work at a telco ;-), most users > are more likely to have an ethernet crossover cable handy than a serial > cable. > > Here's the netconsole mini-mini HOWTO. > > load the module like: > insmod netconsole \ > netconsole=source-port@source-ip/net-interface,dest-port@dest-ip/MAC-address > > for example: > modprobe netconsole \ > netconsole=1234@69.44.153.169/eth0,4567@64.81.245.32/00:0A:8A:05:3D:80 > > then connect the other machine and run: > netcat -u -l -p dest-port > > to watch the output. > Thanks Lee. I have tested this netconsole stuff and it seems to work pretty well. Already sent some results to alsa-devel bugtracker on the respective bug entry. Cheers. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-08 8:23 ` Ingo Molnar 2004-09-08 8:31 ` Ingo Molnar @ 2004-09-08 8:46 ` Rui Nuno Capela 2004-09-08 8:52 ` Ingo Molnar 1 sibling, 1 reply; 224+ messages in thread From: Rui Nuno Capela @ 2004-09-08 8:46 UTC (permalink / raw) To: Ingo Molnar Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro [-- Attachment #1: Type: text/plain, Size: 1030 bytes --] Ingo Molnar wrote: > > * Rui Nuno Capela <rncbc@rncbc.org> wrote: > >> OK, could just someone with a P4 HT/SMP box hand me their working >> kernel .config file for me to try? That could be a good starting >> point, if not a plain baseline. > > I'll try the latest VP kernel (-R9) on a P4/HT SMP box in a minute and > will send you a .config if it works. Could you also send me your > .config? > Thanks Ingo. Here goes my .config, altough Q3 specific it's been the base for all others (from Q5 to R6). Few moments ago, Tim Savannah was kind enough to send me it's working .config for 2.6.9-rc1-bk13 with ck patch and voluntary preempt R6. At first glance it seems that he takes the monolithic approach while I prefer all-modular. The other main difference is that he has HIGHMEM disabled, while I'm on HIGHMEM(4GB) 'coz my machine has 1GB of RAM :) I didn't test Tim's configuration yet, as I can only do it when I get back home tonight. I'll wait for yours too then. Thanks again. -- rncbc aka Rui Nuno Capela rncbc@rncbc.org [-- Attachment #2: config-2.6.9-rc1-bk4-Q3.1smp.gz --] [-- Type: application/x-gzip-compressed, Size: 12143 bytes --] ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 2004-09-08 8:46 ` Rui Nuno Capela @ 2004-09-08 8:52 ` Ingo Molnar 0 siblings, 0 replies; 224+ messages in thread From: Ingo Molnar @ 2004-09-08 8:52 UTC (permalink / raw) To: Rui Nuno Capela Cc: Lee Revell, Florian Schmidt, K.R. Foley, linux-kernel, felipe_alfaro * Rui Nuno Capela <rncbc@rncbc.org> wrote: > Few moments ago, Tim Savannah was kind enough to send me it's working > .config for 2.6.9-rc1-bk13 with ck patch and voluntary preempt R6. At > first glance it seems that he takes the monolithic approach while I > prefer all-modular. The other main difference is that he has HIGHMEM > disabled, while I'm on HIGHMEM(4GB) 'coz my machine has 1GB of RAM > :) mine is HIGHMEM4G too. Ingo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 2004-09-04 19:51 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Ingo Molnar 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar @ 2004-09-05 14:49 ` Florian Schmidt 2004-09-05 14:53 ` K.R. Foley 1 sibling, 1 reply; 224+ messages in thread From: Florian Schmidt @ 2004-09-05 14:49 UTC (permalink / raw) To: Ingo Molnar; +Cc: K.R. Foley, linux-kernel, rlrevell, felipe_alfaro On Sat, 4 Sep 2004 21:51:41 +0200 Ingo Molnar <mingo@elte.hu> wrote: > i've uploaded -R4 which fixes these two bugs: > > http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk4-R4 yep, no more lockup.. cool flo ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 2004-09-05 14:49 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Florian Schmidt @ 2004-09-05 14:53 ` K.R. Foley 0 siblings, 0 replies; 224+ messages in thread From: K.R. Foley @ 2004-09-05 14:53 UTC (permalink / raw) To: Florian Schmidt; +Cc: Ingo Molnar, linux-kernel, rlrevell, felipe_alfaro Florian Schmidt wrote: > On Sat, 4 Sep 2004 21:51:41 +0200 > Ingo Molnar <mingo@elte.hu> wrote: > > >>i've uploaded -R4 which fixes these two bugs: >> >> http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc1-bk4-R4 > > > yep, no more lockup.. cool > > flo So far so good here also. Thanks Ingo. kr ^ permalink raw reply [flat|nested] 224+ messages in thread
* Re: [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4
@ 2004-10-11 18:23 Mark_H_Johnson
0 siblings, 0 replies; 224+ messages in thread
From: Mark_H_Johnson @ 2004-10-11 18:23 UTC (permalink / raw)
To: Ingo Molnar
Cc: Andrew Morton, Daniel Walker, K.R. Foley, linux-kernel,
Florian Schmidt, Fernando Pablo Lopez-Lezcano, Lee Revell,
Rui Nuno Capela
>i've released the -T4 VP patch:
>
>
http://redhat.com/~mingo/voluntary-preempt/voluntary-preempt-2.6.9-rc4-mm1-T4
I would have to say this is "very rough" at this point. I had the following
problems in the build:
[1] kernel/ksyms.c - undefined symbols
[2] kernel/mutex.c - obvious cut / paste problems
[3] XFS has incompatible mutex definition
[4] suspicious warnings
[5] missing symbols for modules
Details at the end.
I booted w/ SMP and the machine threw a lot of error messages about
sleeping in
an invalid context. For example:
include/linux/rwsem.h:43
in_atomic():1 [00010001], irqs_disabled():1
[<c011f0ea>] __might_sleep+0xca/0xe0
[<c01390d4>] rw_mutex_read_lock+0x34/0x50
[<c0122dbd>] profile_hook+0x1d/0x50
[<c0123338>] profile_tick+0x68/0x70
[<c01150ad>] smp_apic_timer_interrupt+0x5d/0xf0
[<c0105820>] default_idle+0x0/0x40
[<c010854a>] apic_timer_interrupt+0x1a/0x20
[<c0105820>] default_idle+0x0/0x40
[<c011007b>] dmi_get_system_info+0xb/0x20
[<c010585a>] default_idle+0x3a/0x40
[<c03b4a4d>] start_kernel+0x19d/0x1e0
[<c03b4440>] unknown_bootoption+0x0/0x180
(somehow managed to stop the scrolling console with the above message
displayed...)
Finally died with a kernel BUG
kernel BUG at kernel/latenc.c:419!
invalid operand: 0000 [#1]
PREEMPT SMP
Modules linked in microcode dm_mod uhci_hcd ext3 jbd
CPU: 1
EIP: 0001:[<00000000>] Not tainted VLI
EFLAGS: c1663f38 (2.6.9-rc4-mm1-VP-T4)
EIP is at 0x0
eax: 00000000 ebx: c1663f54 ecx: c0109a8c edx: c1663f78
esi: 0000000c edi: c1663f28 ebp: c1663f3c esp: c1663f78
ds: 007b es: 07b ss: 4f03 preempt: 00000001
Process swapper (pid: 0, threadinfo=c1662000 task=c165e550)
<0> Kernel panic - not syncing: Attempted to kill the idle task!
Rebooting with num_cpus=1 and appeared to make it farther but then the
console scrolled like crazy and finally said "console shuts up ..."
and the machine appeared to be hung. Could not scroll the window up
or down to see the full message. Had to power off / on to get the
machine back up. Going back to -T3 until I see some fixes.
If the machine managed to record some good data in /var/log/messages
I will send them separately to you for reference.
--Mark H Johnson
<mailto:Mark_H_Johnson@raytheon.com>
Details on build problems / work arounds follow:
[1] ksyms.c - I commented these lines out, to get a complete build, but
there appears to
be code that expects rtc_lock to be defined. See #5.
arch/i386/kernel/i386_ksyms.c:166 error: `rtc_lock' undeclared here (not in
a function)
arch/i386/kernel/i386_ksyms.c:166 error: initializer element is not
constant
arch/i386/kernel/i386_ksyms.c:166 error: (near initialization for
`__ksymtab_rtc_lock.value')
followed by a similar error for atomic_dec_and_lock at line 177.
[2] mutex.c - several symbols were defined twice, fixed by changing the
names to
the functions preceeding them. See lines 108, 201, 213, 297.
[3] XFS compile failed as follows:
CC [M] fs/xfs/quota/xfs_dquot.o
In file included from fs/xfs/linux-2.6/xfs_linux.h:63,
from fs/xfs/xfs.h:35,
from fs/xfs/quota/xfs_dquot.c:33:
fs/xfs/linux-2.6/mutex.h:45: error: conflicting types for `mutex_t'
include/asm/spinlock.h:79: error: previous declaration of `mutex_t'
In file included from fs/xfs/linux-2.6/xfs_linux.h:102,
from fs/xfs/xfs.h:35,
from fs/xfs/quota/xfs_dquot.c:33:
fs/xfs/linux-2.6/xfs_vnode.h:578:30: macro "mutex_lock" requires 2
arguments, but only 1 given
fs/xfs/linux-2.6/xfs_vnode.h:585:30: macro "mutex_lock" requires 2
arguments, but only 1 given
fs/xfs/quota/xfs_dquot.c:1327:23: macro "mutex_lock" requires 2 arguments,
but only 1 given
fs/xfs/quota/xfs_dquot.c:1390:41: macro "mutex_lock" requires 2 arguments,
but only 1 given
fs/xfs/linux-2.6/xfs_vnode.h: In function `vn_flagset':
fs/xfs/linux-2.6/xfs_vnode.h:578: warning: statement with no effect
fs/xfs/linux-2.6/xfs_vnode.h: In function `vn_flagclr':
fs/xfs/linux-2.6/xfs_vnode.h:585: warning: statement with no effect
Turned off XFS in the build.
[4] I considered the following warnings to be "suspicious" but am not sure
if they are really problems or not.
CC security/selinux/ss/policydb.o
fs/dcache.c: In function `prune_dcache':
fs/dcache.c:391: warning: passing arg 1 of `cond_resched_lock' from
incompatible pointer type
CC security/selinux/ss/services.o
CC fs/inode.o
fs/inode.c: In function `invalidate_list':
fs/inode.c:317: warning: passing arg 1 of `cond_resched_lock' from
incompatible pointer type
[5] Several modules had undefined symbols. The messages were...
Kernel: arch/i386/boot/bzImage is ready
*** Warning: "mutex_trylock_bh" [drivers/net/ppp_synctty.ko] undefined!
*** Warning: "del_mtd_partitions" [drivers/mtd/maps/scx200_docflash.ko]
undefined!
*** Warning: "add_mtd_partitions" [drivers/mtd/maps/scx200_docflash.ko]
undefined!
*** Warning: "i2o_msg_in_to_virt" [drivers/message/i2o/i2o_scsi.ko]
undefined!
*** Warning: "i2o_msg_out_to_virt" [drivers/message/i2o/i2o_core.ko]
undefined!
*** Warning: "i2o_msg_in_to_virt" [drivers/message/i2o/i2o_core.ko]
undefined!
*** Warning: "i2o_msg_in_to_virt" [drivers/message/i2o/i2o_block.ko]
undefined!
*** Warning: "rtc_lock" [drivers/char/nvram.ko] undefined!
*** Warning: "rtc_lock" [drivers/char/mwave/mwave.ko] undefined!
*** Warning: "rtc_lock" [drivers/block/floppy.ko] undefined!
...
if [ -r System.map ]; then /sbin/depmod -ae -F System.map -b
/var/tmp/kernel-2.6.9rc4mm1VPT4-root -r 2.6.9-rc4-mm1-VP-T4; fi
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/net/ppp_synctty.ko
needs unknown symbol mutex_trylock_bh
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/mtd/maps/scx200_docflash.ko
needs unknown symbol del_mtd_partitions
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/mtd/maps/scx200_docflash.ko
needs unknown symbol add_mtd_partitions
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/message/i2o/i2o_scsi.ko
needs unknown symbol i2o_msg_in_to_virt
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/message/i2o/i2o_core.ko
needs unknown symbol i2o_msg_in_to_virt
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/message/i2o/i2o_core.ko
needs unknown symbol i2o_msg_out_to_virt
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/message/i2o/i2o_block.ko
needs unknown symbol i2o_msg_in_to_virt
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/char/nvram.ko
needs unknown symbol rtc_lock
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/char/mwave/mwave.ko
needs unknown symbol rtc_lock
WARNING: /var/tmp/kernel-2.6.9
rc4mm1VPT4-root/lib/modules/2.6.9-rc4-mm1-VP-T4/kernel/drivers/block/floppy.ko
needs unknown symbol rtc_lock
^ permalink raw reply [flat|nested] 224+ messages in thread
end of thread, other threads:[~2004-10-13 16:53 UTC | newest] Thread overview: 224+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20040903120957.00665413@mango.fruits.de> [not found] ` <20040903100946.GA22819@elte.hu> [not found] ` <20040903123139.565c806b@mango.fruits.de> 2004-09-03 10:32 ` lockup with voluntary preempt R0 and VP, KP, etc, disabled Ingo Molnar 2004-09-03 11:59 ` Florian Schmidt 2004-09-03 11:55 ` Ingo Molnar 2004-09-03 13:01 ` Florian Schmidt 2004-09-03 12:04 ` Florian Schmidt 2004-09-03 12:08 ` Florian Schmidt 2004-09-03 18:28 ` Lee Revell 2004-09-03 18:54 ` Florian Schmidt 2004-09-03 18:52 ` Lee Revell 2004-09-03 19:06 ` K.R. Foley 2004-09-04 19:51 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Ingo Molnar 2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar 2004-09-05 16:07 ` Matt Heler 2004-09-05 18:16 ` Lee Revell 2004-09-05 19:12 ` Ingo Molnar 2004-09-05 21:03 ` Lee Revell 2004-09-06 6:30 ` Ingo Molnar 2004-09-06 7:44 ` Lee Revell 2004-09-07 3:17 ` K.R. Foley 2004-09-06 11:06 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Ingo Molnar 2004-09-06 11:48 ` Rafael J. Wysocki 2004-09-06 12:25 ` Alexander Nyberg 2004-09-06 12:29 ` Ingo Molnar 2004-09-07 9:26 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R7 Ingo Molnar 2004-09-07 11:57 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 Ingo Molnar 2004-09-07 14:50 ` Alexander Nyberg 2004-09-07 15:04 ` Ingo Molnar 2004-09-07 15:29 ` Alexander Nyberg 2004-09-07 19:56 ` Rafael J. Wysocki 2004-09-07 22:59 ` Lee Revell 2004-09-08 8:20 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 Ingo Molnar 2004-09-08 9:46 ` Rafael J. Wysocki 2004-09-08 9:56 ` Ingo Molnar 2004-09-08 22:37 ` Lee Revell 2004-09-09 6:17 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 Ingo Molnar 2004-09-09 19:30 ` Lee Revell 2004-09-09 20:23 ` Lee Revell 2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar 2004-09-19 17:05 ` Felipe Alfaro Solana 2004-09-20 17:14 ` K.R. Foley 2004-09-20 19:48 ` Ingo Molnar 2004-09-21 2:25 ` K.R. Foley 2004-09-20 19:47 ` Magnus Määttä 2004-09-21 2:07 ` BKL backtraces - was: " K.R. Foley 2004-09-21 7:18 ` Ingo Molnar 2004-09-21 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo Molnar 2004-09-21 18:51 ` K.R. Foley 2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar 2004-09-22 15:07 ` K.R. Foley 2004-09-22 17:16 ` Lee Revell 2004-09-22 17:40 ` K.R. Foley 2004-09-22 19:45 ` Ingo Molnar 2004-09-22 17:09 ` K.R. Foley 2004-09-22 19:08 ` Lee Revell 2004-09-23 1:13 ` Lee Revell 2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar 2004-09-23 12:57 ` Norberto Bensa 2004-09-23 13:01 ` Ingo Molnar 2004-09-23 13:07 ` Ingo Molnar 2004-09-23 13:09 ` Ingo Molnar 2004-09-23 16:46 ` Norberto Bensa 2004-09-23 17:13 ` Norberto Bensa 2004-09-23 18:20 ` Ingo Molnar 2004-09-23 13:35 ` Rui Nuno Capela 2004-09-23 13:40 ` Ingo Molnar 2004-09-23 16:23 ` Rui Nuno Capela 2004-09-23 18:07 ` Rui Nuno Capela 2004-09-24 12:43 ` OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) Rui Nuno Capela 2004-09-24 12:55 ` Ingo Molnar 2004-09-24 14:00 ` Rui Nuno Capela 2004-09-24 16:16 ` Bjorn Helgaas 2004-09-25 23:37 ` David Brownell 2004-09-26 13:09 ` Rui Nuno Capela 2004-09-27 15:11 ` Bjorn Helgaas 2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar 2004-09-24 0:32 ` Rui Nuno Capela 2004-09-24 2:22 ` K.R. Foley 2004-09-24 3:30 ` K.R. Foley 2004-09-24 7:40 ` Ingo Molnar 2004-09-24 11:05 ` K.R. Foley 2004-09-24 11:45 ` Ingo Molnar 2004-09-24 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S6 Ingo Molnar 2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar 2004-09-28 20:17 ` Rui Nuno Capela 2004-09-28 21:03 ` Rui Nuno Capela 2004-09-28 21:46 ` Rui Nuno Capela 2004-09-28 22:01 ` Matt Heler 2004-09-29 17:43 ` Lee Revell 2004-09-29 18:40 ` Lee Revell 2004-09-29 20:30 ` Ingo Molnar 2004-09-29 20:34 ` Lee Revell 2004-10-02 3:02 ` Lee Revell 2004-10-02 9:50 ` Ingo Molnar 2004-10-03 2:01 ` Lee Revell 2004-10-03 2:14 ` Lee Revell 2004-10-03 2:19 ` Lee Revell 2004-10-03 20:08 ` Ingo Molnar 2004-10-03 6:37 ` Lee Revell 2004-10-03 6:50 ` Lee Revell 2004-10-03 7:06 ` Lee Revell 2004-10-03 19:57 ` Ingo Molnar 2004-10-04 0:53 ` Lee Revell 2004-10-04 10:17 ` Ingo Molnar 2004-10-04 17:20 ` Lee Revell 2004-10-03 20:05 ` Ingo Molnar 2004-10-03 21:09 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S8 Ingo Molnar 2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar 2004-10-05 0:31 ` Lee Revell 2004-10-05 0:56 ` Florian Schmidt 2004-10-05 0:45 ` Lee Revell 2004-10-05 0:38 ` Andrew Rodland 2004-10-05 1:19 ` Rui Nuno Capela 2004-10-05 5:32 ` Peter Williams 2004-10-05 6:38 ` Ingo Molnar 2004-10-05 1:42 ` Florian Schmidt 2004-10-05 2:05 ` Florian Schmidt 2004-10-05 3:09 ` Andrew Rodland 2004-10-05 10:24 ` Florian Schmidt 2004-10-05 7:02 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 Ingo Molnar 2004-10-05 11:11 ` Rui Nuno Capela 2004-10-05 11:17 ` Ingo Molnar 2004-10-05 12:07 ` Hugh Dickins 2004-10-05 11:12 ` Florian Schmidt 2004-10-05 11:03 ` Ingo Molnar 2004-10-05 11:14 ` Rui Nuno Capela 2004-10-05 11:16 ` Ingo Molnar 2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar 2004-10-05 16:37 ` Rui Nuno Capela 2004-10-05 18:42 ` Ingo Molnar 2004-10-05 19:38 ` Rui Nuno Capela 2004-10-05 19:44 ` Ingo Molnar 2004-10-05 20:01 ` Rui Nuno Capela 2004-10-06 0:12 ` Lee Revell 2004-10-06 7:51 ` Ingo Molnar 2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar [not found] ` <20041007134116.3e53b239.h.mth@web.de> 2004-10-07 11:44 ` Ingo Molnar 2004-10-07 12:08 ` Hanno Meyer-Thurow 2004-10-07 12:16 ` Rui Nuno Capela 2004-10-07 13:53 ` Rui Nuno Capela 2004-10-07 14:13 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-07 23:26 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Rui Nuno Capela 2004-10-08 5:36 ` Lee Revell 2004-10-08 6:49 ` Con Kolivas 2004-10-08 18:05 ` Lee Revell 2004-10-08 7:06 ` Ingo Molnar 2004-10-08 7:36 ` Peter Williams 2004-10-08 17:27 ` Lee Revell 2004-10-07 17:55 ` K.R. Foley 2004-10-07 20:29 ` K.R. Foley 2004-10-07 21:55 ` Ingo Molnar 2004-10-08 1:41 ` K.R. Foley 2004-10-08 7:02 ` Ingo Molnar 2004-10-08 14:03 ` K.R. Foley 2004-10-08 14:28 ` Ingo Molnar 2004-10-08 21:14 ` Lee Revell 2004-10-08 23:11 ` Lee Revell 2004-10-09 4:16 ` Lee Revell 2004-10-09 4:57 ` Lee Revell 2004-10-09 5:09 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-09 5:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-09 5:23 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-09 5:31 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-09 5:34 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas 2004-10-09 5:50 ` Preemption model (was Re: voluntary-preempt-2.6.9-rc3-mm3-T3) Lee Revell 2004-10-09 5:53 ` Con Kolivas 2004-10-09 10:46 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar 2004-10-09 13:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 K.R. Foley 2004-10-09 18:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Florian Schmidt 2004-10-11 14:29 ` [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Ingo Molnar 2004-10-11 17:48 ` Florian Schmidt 2004-10-11 21:22 ` Rui Nuno Capela 2004-10-11 21:37 ` Lee Revell 2004-10-12 4:30 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell 2004-10-12 9:17 ` Ingo Molnar 2004-10-13 16:52 ` Lee Revell 2004-10-13 16:48 ` Lee Revell 2004-10-08 11:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 William Lee Irwin III 2004-09-22 17:30 ` Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 K.R. Foley 2004-09-22 19:43 ` Ingo Molnar 2004-09-21 18:24 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 K.R. Foley 2004-09-21 19:21 ` Ingo Molnar 2004-09-21 19:37 ` K.R. Foley 2004-09-08 6:56 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Lee Revell 2004-09-09 19:29 ` Ingo Molnar 2004-09-09 19:33 ` Lee Revell 2004-09-09 20:43 ` Lee Revell 2004-09-09 20:51 ` Ingo Molnar 2004-09-09 21:03 ` Scott Wood 2004-09-09 20:05 ` Andrew Morton 2004-09-09 20:09 ` Alan Cox 2004-09-09 21:28 ` Andrew Morton 2004-09-09 22:45 ` William Lee Irwin III 2004-09-09 22:11 ` Alan Cox 2004-09-09 23:20 ` William Lee Irwin III 2004-09-10 13:28 ` Ingo Molnar 2004-09-10 14:28 ` Paolo Ciarrocchi 2004-09-10 16:45 ` Lee Revell 2004-09-10 22:54 ` Lee Revell 2004-09-11 0:21 ` K.R. Foley 2004-09-09 20:13 ` Lee Revell 2004-09-22 0:17 ` William Lee Irwin III 2004-09-07 22:55 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Lee Revell 2004-09-07 23:13 ` Lee Revell 2004-09-07 23:58 ` Rui Nuno Capela 2004-09-08 8:23 ` Ingo Molnar 2004-09-08 8:31 ` Ingo Molnar 2004-09-09 11:09 ` Rui Nuno Capela 2004-09-15 1:16 ` Lee Revell 2004-09-15 9:29 ` Rui Nuno Capela 2004-09-15 9:38 ` Ingo Molnar 2004-09-15 9:53 ` Rui Nuno Capela 2004-09-15 10:00 ` Ingo Molnar 2004-09-15 10:35 ` Rui Nuno Capela 2004-09-25 19:26 ` Lee Revell 2004-09-25 20:38 ` Ingo Molnar 2004-09-25 20:40 ` Lee Revell 2004-09-25 20:50 ` Duncan Sands 2004-09-25 23:54 ` Lee Revell 2004-09-26 13:42 ` Rui Nuno Capela 2004-09-08 8:46 ` Rui Nuno Capela 2004-09-08 8:52 ` Ingo Molnar 2004-09-05 14:49 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Florian Schmidt 2004-09-05 14:53 ` K.R. Foley 2004-10-11 18:23 [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Mark_H_Johnson
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.