ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
- Added lots of Ingo's low-latency patches
- Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
- Several architecture updates
linus.patch
bk-acpi.patch
bk-agpgart.patch
bk-alsa.patch
bk-cpufreq.patch
bk-driver-core.patch
bk-ia64.patch
bk-ieee1394.patch
bk-input.patch
bk-libata.patch
bk-netdev.patch
bk-ntfs.patch
bk-pci.patch
bk-pnp.patch
bk-power.patch
bk-scsi.patch
bk-scsi-target.patch
bk-usb.patch
bk-watchdog.patch
External trees
-remove-set_fs-from-compat-sched-affinity-syscalls.patch
-allow-compat-long-sized-bitmasks-in-affinity-code.patch
-fix-schedstats-null-deref-in-sched_exec.patch
-rock-fix.patch
-2681-es7000-subarch-update.patch
-fix-abi-in-set_mempolicy.patch
-ksysfs-warning-fix.patch
-kobject_uevent-warning-fix.patch
-pointer-dereference-before-null-check-in-acpi-thermal-driver.patch
-ppc64-lparcfg-fixes-for-processor-counts.patch
-ppc64-lparcfg-whitespace-and-wordwrap-cleanup.patch
-ppc64-remove-spinline-config-option.patch
-ppc64-rtas-error-logs-can-appear-twice-in-dmesg.patch
-ppc64-enable-numa-api.patch
-ppc64-give-the-kernel-an-opd-section.patch
-ppc64-use-nm-synthetic-where-available.patch
-ppc64-clean-up-kernel-command-line-code.patch
-ppc64-remove-unused-ppc64_calibrate_delay.patch
-ppc64-remove-eeh-command-line-device-matching-code.patch
-ppc64-use-early_param.patch
-ppc64-restore-smt-enabled=off-kernel-command-line-option.patch
-ppc64-enable-power5-low-power-mode-in-idle-loop.patch
-ppc64-clean-up-idle-loop-code.patch
-ppc64-remove-wno-uninitialized.patch
-ppc64-fix-real-bugs-uncovered-by-wno-uninitialized-removal.patch
-ppc64-fix-spurious-warnings-uncovered-by-wno-uninitialized-removal.patch
-hvc-uninitialised-variable.patch
-ppc64-improved-vsid-allocation-algorithm.patch
-ppc64fix-missing-register-in-altivec-context-switch.patch
-ppc32-remove-wno-uninitialized.patch
-ppc32-pmac-cpufreq-for-ibook-2-600.patch
-searching-for-parameters-in-make-menuconfig.patch
-menuconfig-regex-search-dependencies.patch
-pnpbios-parser-bugfix.patch
-shmem-dont-slab_hwcache_align.patch
-shmem-inodes-and-links-need-lowmem.patch
-shmem-no-sbinfo-for-shm-mount.patch
-shmem-no-sbinfo-for-tmpfs-mount.patch
-shmem-avoid-the-shmem_inodes-list.patch
-shmem-rework-majmin-and-zero_page.patch
-shmem-copyright-file_setup-trivia.patch
-allocate-correct-amount-of-memory-for-pid-hash.patch
-explicity-align-tss-stack.patch
-remember-to-check-return-value-from-__copy_to_user-in.patch
-make-kmem_find_general_cachep-static-in-slabc.patch
-mark-md_interrupt_thread-static.patch
-mark-dq_list_lock-static.patch
-remove-exports-from-audit-code.patch
-add-prctl-to-modify-current-comm.patch
-blk-max_sectors-tunables.patch
-rtl8150-fix.patch
-hvcs-fix-to-replace-yield-with-tty_wait_until_sent-in.patch
-uml-remove-ghash.patch
-uml-eliminate-useless-thread-field.patch
-uml-fix-scheduler-race.patch
-uml-fix-binary-layout-assumption.patch
-uml-disable-pending-signals-across-a-reboot.patch
-uml-refer-to-config_usermode-not-to-config_um.patch
-uml-remove-commented-old-code-in-kconfig.patch
-uml-smp-build-fix.patch
-uml-remove-config_uml_smp.patch
-highmem-flushes.patch
-add-support-for-word-length-uart-registers.patch
-show-aggregate-per-process-counters-in-proc-pid-stat-2.patch
-fix-uninitialized-warnings-in-mempolicyc.patch
-small-linux-hardirqh-tweaks.patch
-bsd-disklabel-handle-more-than-8-partitions.patch
-asm-softirqh-crept-back-in-h8300-and-sh64.patch
-mark-amiflop-non-unloadable.patch
-netpoll-endian-fixes.patch
-missing-pci_disable_device.patch
-fbdev-radeonfb-remove-bogus-radeonfb_read-write.patch
-add-missing-pci_disable_device-for-pci-based-usb-hcd.patch
Merged
+x86_64-profiling-oops-workaround.patch
Work around the x86_64 profile_pc() crash
+reduce-ioremap-memory-size-for-adaptec-i2o-controllers.patch
i2o driver fix
+hvc_console-fix-to-protect-hvc_write-against-ldisc-write.patch
HVC driver fix
+back-out-siginfo_tsi_rusage-from-waitid-changes.patch
Signal API fixup
-lazy-tsss-i-o-bitmap-copy-for-x86-64.patch
-lazy-tsss-i-o-bitmap-copy-for-x86-64-fix.patch
Dropped
-lazy-tsss-i-o-bitmap-copy-for-i386.patch
+ioport-cache-2.6.9-rc1-mm5-A0.patch
+ioport-cache-gpf-2.6.9-rc1-mm5-A3.patch
x86 TSS speedup
+show-aggregate-per-process-counters-in-proc-pid-stat-2.patch
Fixed up accounting patch
+fix-posix-timers-leak.patch
Fix leaking of posix timers
+qlogic-oops-fix.patch
Fix qlogic oops
+radeon-do-not-blank-screen-during-suspend.patch
radeon suspend fix
+ppc32-fix-arch-ppc-boot-common-ns16550c.patch
+ppc64-force_sigsegv-fixes.patch
+ppc64-powersave_nap-sysctl.patch
+ppc64-replace-mmu_context_queue-with-idr-allocator.patch
+ppc64-iseries-build-fixes.patch
+ppc64-clean-up-asm-mmuh.patch
+ppc64-fix-some-bogus-warnings-cleanup-tlbie-code-path.patch
+ppc64-remove-a-and-aa.patch
ppc[64] updates
+x86-64-add-atomic64_t.patch
+x86-64-make-apic-errors-kern_debug.patch
+x86-64-add-apic=verbosequietdebug.patch
+x86-64-update-defconfig.patch
+x86-64-avoid-deadlock-in-page-fault-handler.patch
+x86-64-avoid-panic-when-apic-id-cannot-be-set.patch
+x86-64-io-apic-suspend-resume.patch
+x86-64-make-machine-check-handler-configurable.patch
+x86-64-remove-warn_on-in-smp_call_function.patch
+x86-64-print-mce-bank-enable-mask-in-hex.patch
+x86-64-add-might_sleeps-to-more-_user-functions.patch
+x86-64-fix-for-mem=-on-numa-systems.patch
+x86-64-sibling-map-fix-for-clustered-mode.patch
+x86-64-synchronize-videos-with-i386.patch
+x86-64-add-read-implies-exec-macro.patch
+x86-64-x86-dont-pass-cr2-on-alignment-faults.patch
+x86-64-turn-tss-into-per-cpu-data.patch
+x86-64-copy-ioperm-bitmaps-more-efficiently-at-context-switch.patch
x86_64 updates
+fix-for-fsync-ignoring-writing-errors.patch
fsync() I/O error reporting fix
-tty_io-hangup-locking.patch
+tty-locking-for-269rc2.patch
+tty-locking-for-269rc2-fixes.patch
Alan's tty locking rework
-lockmeter.patch
+lockmeter-2.patch
New lockmeter patch (doesn't compile)
+ext3-reservations-window-allocation-fix.patch
+ext3-reservation-window-size-increase-incorrectly-fix.patch
ext3 reservation fixes
+sched-sched-add-load-balance-flag-fix.patch
+sched-make-domain-setup-overridable-fix.patch
+sched-print-preempt-count.patch
CPU scheduler fixes
+preempt-smp.patch
+preempt-cleanup.patch
+preempt-cleanup-fix.patch
+add-lock_need_resched.patch
+sched-add-cond_resched_softirq.patch
+sched-fix-latency-in-random-driver.patch
+sched-ext3-fix-scheduling-latencies-in-ext3.patch
+sched-vfs-fix-scheduling-latencies-in-invalidate_inodes.patch
+sched-vfs-fix-scheduling-latencies-in-prune_dcache-and-select_parent.patch
+sched-net-fix-scheduling-latencies-in-netstat.patch
+sched-net-fix-scheduling-latencies-in-__release_sock.patch
+sched-mm-fix-scheduling-latencies-in-copy_page_range.patch
+sched-mm-fix-scheduling-latencies-in-unmap_vmas.patch
+sched-mm-fix-scheduling-latencies-in-get_user_pages.patch
+sched-mm-fix-scheduling-latencies-in-filemap_sync.patch
+sched-pty-fix-scheduling-latencies-in-ptyc.patch
+fix-keventd-execution-dependency.patch
+sched-fix-scheduling-latencies-in-mttrc.patch
+sched-fix-scheduling-latencies-in-vgaconc.patch
+sched-fix-scheduling-latencies-for-preempt-kernels.patch
Ingo's latency stuff
-b44-add-47xx-support.patch
Was old
+reiserfs-rename-struct-key.patch
Fix `struct key' naming clash
+cpusets-document-proc-status-allowed-fields.patch
-cpusets-fix-possible-race-in-cpuset_tasks_read.patch
+cpusets-alternative-fix-for-possible-race-in.patch
+cpusets-remove-casts.patch
cpusets fixes
+reiser4-cond_resched-build-fix.patch
+reiser4-generic_acl-fix.patch
reiser4 tweaks
+m32r-remove-network-drivers.patch
+m32r-modify-drivers-net-smc91xc-for.patch
+m32r-modify-drivers-net-nec-for-m32r.patch
+m32r-slim-arch-m32r-kconfig.patch
+m32r-upgrade-include-asm-m32r-atomich.patch
+m32r-fix-to-build-smp-kernel.patch
+m32r-upgrade-for-mm5-changes.patch
m32r architecture updates
+cfq-v2-update.patch
+cfq-fix-allocated-counts.patch
+cfq-warnings.patch
CFQ fixes
-fix-for-spurious-interrupts-on-e100-resume.patch
+fix-for-spurious-interrupts-on-e100-resume-2.patch
New version
+fbcon-fix-fbcons-setup-routine.patch
+fbdev-arrange-driver-order-in-makefile.patch
+fbdev-fix-scrolling-corruption.patch
+radeonfb-fix-warnings-about-uninitialized-variables.patch
+fbdev-remove-i810fb-explicit-agp-initialization-hack.patch
fbcon/fbdev updates
+fix-for-fsync-ignoring-writing-errors-fat-fix.patch
fatfs fix
+pidhashing-retain-older-vendor-copyright.patch
+pidhashing-lower-pid_max_limit-for-32-bit-machines.patch
+pidhashing-enforce-pid_max_limit-in-sysctls.patch
PID hashing updates
-next_thread-bug-fixes.patch
Dropped
+allow-multiple-inputs-in-alternative_input.patch
Tweak the alternative-instruction handling
+autofs4-allow-map-update-recognition.patch
autofs fix
+fake_ino-fixes.patch
procfs fix
+fix-of-race-in-writeback_inodes.patch
Writeback race fix
+rearrange-of-inode_lock-in-writeback_inodes.patch
Writeback microoptimisation
+lighten-mmlist_lock.patch
mm locking speedup
+updates-to-rcu-documentation.patch
Documentation
+fix-sysrq-handling-bug-in-sn_consolec.patch
ia64 driver fix
+incorrect-pci-interrupt-assignment-on-es7000-for-platform-gsi.patch
+incorrect-pci-interrupt-assignment-on-es7000-for-platform-gsi-fix.patch
+incorrect-pci-interrupt-assignment-on-es7000-for-pin-zero.patch
ES7000 updates
+fix-task_mmuc-text-size-reporting.patch
/proc accounting fix
+uml-update-handle_irq_event.patch
+uml-finish-the-signals-across-a-reboot-fix.patch
+uml-finish-conversion-to-sigjmp_buf-siglongjmp.patch
+uml-fix-a-signal-race.patch
+uml-enable-the-timer-after-the-timer-handler.patch
+uml-convert-the-real-time-clock-to-gettimeofday-from-rdtsc.patch
+uml-cleaning-up.patch
+uml-let-page-faults-always-be-delivered-immediately.patch
+uml-eliminate-signal-order-delivery-dependency.patch
+uml-iomem-fix.patch
+uml-fix-call-to-sys_clone.patch
+uml-copy_user-fixes.patch
UML updates
+sparc32-add-atomic_sub_and_test.patch
sparc32 bitops update
+make-console_conditional_schedule-__sched-and-use-cond_resched.patch
cleanup
+ide-remove-obsolete-config_blk_dev_adma.patch
Kconfig cleanup
+fix-driver-name-in-eth1394-as-returned-by-ethtool_gdrvinfo.patch
1394 net driver ethtool fix
+mips-fixed-do_signal-in-arch-mips-kernel-signalc.patch
MIPS fix
+time-interpolators-logic-fix.patch
Fix the new time interpolator code
+document-arm-pci=firmware-option.patch
Kconfig help
+update-ixp4xx-mtd-driver-from-cvs-mtd.patch
+add-mtd-map-driver-for-intel-ixp2000-npu.patch
MTD driver updates
+remove-i2o_core.patch
Dead file
+bio_alloc-cleanup.patch
Code cleanup
+report-per-process-pagetable-usage.patch
Enhanced memory accounting
+tune-vmalloc-size.patch
+tune-vmalloc-size-docs.patch
Allow boot-time setting of the vmalloc pool size (x86 only)
+reduce-_do_execve-stack-usage.patch
+reduce-_do_execve-stack-usage-fix.patch
Stack reductions
+remove-lock_section-from-x86_64-spin_lock-asm.patch
x86_64 fix
+fix-write-return-values-for-tmpfs.patch
+fix-write-return-values-for-reiserfs.patch
Fix a truncation problem with large write()s
number of patches in -mm: 486
number of changesets in external trees: 710
number of patches in -mm only: 468
total patches: 1178
All 486 patches:
linus.patch
x86_64-profiling-oops-workaround.patch
x86_64 profiling oops workaround
reduce-ioremap-memory-size-for-adaptec-i2o-controllers.patch
reduce ioremap memory size for Adaptec I2O controllers
hvc_console-fix-to-protect-hvc_write-against-ldisc-write.patch
hvc_console fix to protect hvc_write against ldisc write after hvc_close
back-out-siginfo_tsi_rusage-from-waitid-changes.patch
back out siginfo_t.si_rusage from waitid changes
ioport-cache-2.6.9-rc1-mm5-A0.patch
x86 TSS: io port caching
ioport-cache-gpf-2.6.9-rc1-mm5-A3.patch
x86 TSS: io bitmap lazy updating
distinct-tgid-tid-cpu-usage.patch
distinct tgid/tid CPU usage
show-aggregate-per-process-counters-in-proc-pid-stat-2.patch
show aggregate per-process counters in /proc/PID/stat 2
fix-posix-timers-leak.patch
fix posix-timers leak
exec-fix-posix-timers-leak-and-pending-signal-loss.patch
exec: fix posix-timers leak and pending signal loss
__set_page_dirty_nobuffers-mappings.patch
__set_page_dirty_nobuffers mappings
sysfs-backing-store-prepare-file_operations.patch
sysfs backing store - prepare sysfs_file_operations helpers
sysfs-backing-store-prepare-file_operations-fix.patch
fix oops with firmware loading
sysfs-backing-store-add-sysfs_dirent.patch
sysfs backing store - add sysfs_direct structure
sysfs-backing-store-use-sysfs_dirent-tree-in-removal.patch
sysfs backing store: use sysfs_dirent based tree in file removal
sysfs-backing-store-use-sysfs_dirent-tree-in-dir-file_operations.patch
sysfs backing store: use sysfs_dirent based tree in dir file operations
sysfs-backing-store-stop-pinning-dentries-inodes-for-leaves.patch
sysfs backing store: stop pinning dentries/inodes for leaf entries
bk-acpi.patch
acpi-compile-fix.patch
acpi-compile-fix
acpi-x86_64-build-fix.patch
acpi x86_64 build fix
bk-agpgart.patch
bk-alsa.patch
bk-cpufreq.patch
bk-driver-core.patch
bk-ia64.patch
bk-ieee1394.patch
bk-input.patch
fix-smm-failures-on-e750x-systems.patch
fix SMM failures on E750x systems
vsxxxaac-fixups.patch
vsxxxaa.c fixups
allow-i8042-register-location-override-2.patch
allow i8042 register location override #2
bk-libata.patch
bk-netdev.patch
bk-ntfs.patch
bk-pci.patch
bk-pnp.patch
bk-power.patch
bk-scsi.patch
bk-scsi-target.patch
qlogic-oops-fix.patch
qlogic oops fix
tmscsim-build-fix.patch
tmscsim-build-fix
bk-usb.patch
bk-watchdog.patch
mm.patch
add -mmN to EXTRAVERSION
mm-swsusp-make-sure-we-do-not-return-to-userspace-where-image-is-on-disk.patch
-mm swsusp: make sure we do not return to userspace where image is on disk
mm-swsusp-copy_page-is-harmfull.patch
-mm swsusp: copy_page is harmfull
swsusp-fix-highmem.patch
swsusp: fix highmem
swsusp-do-not-disable-platform-swsusp-because-s4bios-is-available.patch
swsusp: do not disable platform swsusp because S4bios is available
swsusp-fix-default-powerdown-mode.patch
swsusp: fix default powerdown mode
mark-old-power-managment-as-deprecated-and-clean-it-up.patch
Mark old power managment as deprecated and clean it up
use-global-system_state-to-avoid-system-state-confusion.patch
Use global system_state to avoid system-state confusion
swsusp-error-do-not-oops-after-allocation-failure.patch
swsusp: do not oops after allocation failure
swsusp-documentation-update.patch
swsusp: Documentation update
small-cleanups-for-swsusp.patch
Small cleanups for swsusp
swsusp-kill-crash-when-too-much-memory-is-free.patch
swsusp: kill crash when too much memory is free
swsusp-progress-in-percent.patch
swsusp: progress in percent
swsusp-clean-up-reading.patch
swsusp: clean up reading
swsusp-another-simplification.patch
swsusp: another simplification
radeon-do-not-blank-screen-during-suspend.patch
Radeon: do not blank screen during suspend
acpi-proc-simplify-error-handling.patch
acpi proc: simplify error handling
pegasus-fixes.patch
pegasus.c fixes
network-packet-tracer-module-using-kprobes-interface.patch
Network packet tracer module using kprobes interface.
kgdb-ga.patch
kgdb stub for ia32 (George Anzinger's one)
kgdbL warning fix
kgdb buffer overflow fix
kgdbL warning fix
kgdb: CONFIG_DEBUG_INFO fix
x86_64 fixes
correct kgdb.txt Documentation link (against 2.6.1-rc1-mm2)
kgdb: fix for recent gcc
kgdb warning fixes
THREAD_SIZE fixes for kgdb
Fix stack overflow test for non-8k stacks
kgdb-ga.patch fix for i386 single-step into sysenter
fix TRAP_BAD_SYSCALL_EXITS on i386
add TRAP_BAD_SYSCALL_EXITS config for i386
kgdb-is-incompatible-with-kprobes.patch
kgdb-is-incompatible-with-kprobes
kgdboe-netpoll.patch
kgdb-over-ethernet via netpoll
kgdboe: fix configuration of MAC address
kgdb-x86_64-support.patch
kgdb-x86_64-support.patch for 2.6.2-rc1-mm3
kgdb-x86_64-warning-fixes
kgdb-ia64-support.patch
IA64 kgdb support
ia64 kgdb repair and cleanup
ia64 kgdb fix
kgdb-ia64-fixes.patch
kgdb: ia64 fixes
make-tree_lock-an-rwlock.patch
make mapping->tree_lock an rwlock
must-fix.patch
must fix lists update
must fix list update
mustfix update
must-fix update
mustfix lists
ppc32-fix-arch-ppc-boot-common-ns16550c.patch
ppc32: Fix arch/ppc/boot/common/ns16550.c
ppc64-force_sigsegv-fixes.patch
ppc64: force_sigsegv fixes
ppc64-powersave_nap-sysctl.patch
ppc64: powersave_nap sysctl
ppc64-replace-mmu_context_queue-with-idr-allocator.patch
ppc64: replace mmu_context_queue with idr allocator
ppc64-iseries-build-fixes.patch
ppc64: iseries build fixes
ppc64-clean-up-asm-mmuh.patch
ppc64: clean up asm/mmu.h
ppc64-fix-some-bogus-warnings-cleanup-tlbie-code-path.patch
ppc64: Fix some bogus warnings & cleanup tlbie code path
ppc64-remove-a-and-aa.patch
ppc64: Remove A() and AA()
x86-64-add-atomic64_t.patch
x86-64: add atomic64_t
x86-64-make-apic-errors-kern_debug.patch
x86-64: make APIC errors KERN_DEBUG
x86-64-add-apic=verbosequietdebug.patch
x86-64: add apic={verbose,quiet,debug}
x86-64-update-defconfig.patch
x86-64: update defconfig
x86-64-avoid-deadlock-in-page-fault-handler.patch
x86-64: avoid deadlock in page fault handler
x86-64-avoid-panic-when-apic-id-cannot-be-set.patch
x86-64: avoid panic when APIC ID cannot be set
x86-64-io-apic-suspend-resume.patch
x86-64: IO-APIC suspend/resume
x86-64-make-machine-check-handler-configurable.patch
x86-64: make machine check handler configurable
x86-64-remove-warn_on-in-smp_call_function.patch
x86-64: remove WARN_ON in smp_call_function
x86-64-print-mce-bank-enable-mask-in-hex.patch
x86-64: print mce bank enable mask in hex
x86-64-add-might_sleeps-to-more-_user-functions.patch
x86-64: add might_sleeps to more *_user functions
x86-64-fix-for-mem=-on-numa-systems.patch
x86-64: fix for mem= on NUMA systems
x86-64-sibling-map-fix-for-clustered-mode.patch
x86-64: sibling map fix for clustered mode
x86-64-synchronize-videos-with-i386.patch
x86-64: synchronize video.S with i386
x86-64-add-read-implies-exec-macro.patch
x86-64: add read implies exec macro
x86-64-x86-dont-pass-cr2-on-alignment-faults.patch
x86-64, x86: don't pass CR2 on alignment faults
x86-64-turn-tss-into-per-cpu-data.patch
x86-64: turn tss into per cpu data
x86-64-copy-ioperm-bitmaps-more-efficiently-at-context-switch.patch
x86-64: copy ioperm bitmaps more efficiently at context switch
fix-for-fsync-ignoring-writing-errors.patch
fix for fsync ignoring writing errors
ppc64-reloc_hide.patch
tty-locking-for-269rc2.patch
tty locking for 2.6.9rc2
tty-locking-for-269rc2-fixes.patch
tty-locking-for-269rc2 fixes
invalidate_inodes-speedup.patch
invalidate_inodes speedup
more invalidate_inodes speedup fixes
dev-mem-restriction-patch.patch
/dev/mem restriction patch
get_user_pages-handle-VM_IO.patch
fix get_user_pages() against mappings of /dev/mem
jbd-remove-livelock-avoidance.patch
JBD: remove livelock avoidance code in journal_dirty_data()
journal_add_journal_head-debug.patch
journal_add_journal_head-debug
list_del-debug.patch
list_del debug check
unplug-can-sleep.patch
unplug functions can sleep
firestream-warnings.patch
firestream warnings
ext3_rsv_cleanup.patch
ext3 block reservation patch set -- ext3 preallocation cleanup
ext3_rsv_base.patch
ext3 block reservation patch set -- ext3 block reservation
ext3 reservations: fix performance regression
ext3 block reservation patch set -- mount and ioctl feature
ext3 block reservation patch set -- dynamically increase reservation window
ext3 reservation ifdef cleanup patch
ext3 reservation max window size check patch
ext3 reservation file ioctl fix
ext3-reservation-default-on.patch
ext3 reservation: default to on
ext3-lazy-discard-reservation-window-patch.patch
ext3 lazy discard reservation window patch
ext3 discard reservation in last iput fix patch
Fix lazy reservation discard
ext3 reservations: bad_inode fix
ext3 reservation discard race fix
ext3-reservations-spelling-fixes.patch
ext3 reservations: Spelling fixes
ext3-reservations-renumber-the-ext3-reservations-ioctls.patch
ext3 reservations: Renumber the ext3 reservations ioctls
ext3-reservations-remove-unneeded-declaration.patch
ext3 reservations: Remove unneeded declaration.
ext3-reservations-turn-ext3-per-sb-reservations-list-into-an-rbtree.patch
ext3 reservations: Turn ext3 per-sb reservations list into an rbtree.
ext3-reservations-split-the-reserve_window-struct-into-two.patch
ext3 reservations: Split the "reserve_window" struct into two
ext3-reservations-smp-protect-the-reservation-during-allocation.patch
ext3 reservations: SMP-protect the reservation during allocation
ext3-reservations-window-allocation-fix.patch
ext3 reservations window allocation fix
ext3-reservation-window-size-increase-incorrectly-fix.patch
ext3 reservation window size increase incorrectly fix
perfctr-core.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][1/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: core
CONFIG_PERFCTR=n build fix
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][6/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: misc
perfctr-i386.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][2/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: i386
perfctr #if/#ifdef cleanup
perfctr Dothan support
perfctr x86_tests build fix
perfctr x86 init bug
perfctr: K8 fix for internal benchmarking code
perfctr x86 update
perfctr-prescott-fix.patch
Prescott fix for perfctr
perfctr-x86_64.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][3/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: x86_64
perfctr-ppc.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][4/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: PowerPC
perfctr ppc32 update
perfctr update 4/6: PPC32 cleanups
perfctr ppc32 buglet fix
perfctr-virtualised-counters.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][5/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: virtualised counters
perfctr update 6/6: misc minor cleanups
perfctr update 3/6: __user annotations
perfctr-cpus_complement-fix
perfctr cpumask cleanup
perfctr SMP hang fix
make-perfctr_virtual-default-in-kconfig-match-recommendation.patch
Make PERFCTR_VIRTUAL default in Kconfig match recommendation in help text
perfctr-ifdef-cleanup.patch
perfctr ifdef cleanup
perfctr-update-2-6-kconfig-related-updates.patch
perfctr update 2/6: Kconfig-related updates
perfctr-update-5-6-reduce-stack-usage.patch
perfctr update 5/6: reduce stack usage
perfctr-low-level-documentation.patch
perfctr low-level documentation
perfctr documentation update
perfctr-inheritance-1-3-driver-updates.patch
perfctr inheritance 1/3: driver updates
perfctr inheritance illegal sleep bug
perfctr-inheritance-2-3-kernel-updates.patch
perfctr inheritance 2/3: kernel updates
perfctr-inheritance-3-3-documentation-updates.patch
perfctr inheritance 3/3: documentation updates
perfctr-inheritance-locking-fix.patch
perfctr inheritance locking fix
ext3-online-resize-patch.patch
ext3: online resizing
ext3-online-resize-warning-fix
sched-trivial-sched-changes.patch
sched: trivial sched changes
sched-add-cpu_down_prepare-notifier.patch
sched: add CPU_DOWN_PREPARE notifier
sched-integrate-cpu-hotplug-and-sched-domains.patch
sched: integrate cpu hotplug and sched domains
sched-arch_destroy_sched_domains-warning-fix.patch
sched: arch_destroy_sched_domains warning fix
sched-sched-add-load-balance-flag.patch
sched: sched add load balance flag
sched-sched-add-load-balance-flag-fix.patch
sched: ia64 load balancing fix
sched-remove-disjoint-numa-domains-setup.patch
sched: remove disjoint NUMA domains setup
sched-make-domain-setup-overridable.patch
sched: make domain setup overridable
sched-make-domain-setup-overridable-rename.patch
sched-make-domain-setup-overridable: rename IDLE
sched-make-domain-setup-overridable-fix.patch
sched: make domain setup overridable fix
sched-ia64-add-disjoint-numa-domain-support.patch
sched: IA64 add disjoint NUMA domain support
sched-fix-domain-debug-for-isolcpus.patch
sched: fix domain debug for isolcpus
sched-enable-sd_load_balance.patch
sched: enable SD_LOAD_BALANCE
sched-hotplug-add-a-cpu_down_failed-notifier.patch
sched: hotplug add a CPU_DOWN_FAILED notifier
sched-use-cpu_down_failed-notifier.patch
sched: use CPU_DOWN_FAILED notifier
sched-fixes-for-ia64-domain-setup.patch
sched: fixes for ia64 domain setup
sched-print-preempt-count.patch
sched-print-preempt-count
preempt-smp.patch
improve preemption on SMP
preempt-cleanup.patch
preempt cleanup
preempt-cleanup-fix.patch
preempt-cleanup-fix
add-lock_need_resched.patch
add lock_need_resched()
sched-add-cond_resched_softirq.patch
sched: add cond_resched_softirq()
sched-fix-latency-in-random-driver.patch
sched: fix latency in random driver
sched-ext3-fix-scheduling-latencies-in-ext3.patch
sched: ext3: fix scheduling latencies in ext3
sched-vfs-fix-scheduling-latencies-in-invalidate_inodes.patch
sched: vfs: fix scheduling latencies in invalidate_inodes()
sched-vfs-fix-scheduling-latencies-in-prune_dcache-and-select_parent.patch
sched: vfs: fix scheduling latencies in prune_dcache() and select_parent()
sched-net-fix-scheduling-latencies-in-netstat.patch
sched: net: fix scheduling latencies in netstat
sched-net-fix-scheduling-latencies-in-__release_sock.patch
sched: net: fix scheduling latencies in __release_sock
sched-mm-fix-scheduling-latencies-in-copy_page_range.patch
sched: mm: fix scheduling latencies in copy_page_range()
sched-mm-fix-scheduling-latencies-in-unmap_vmas.patch
sched: mm: fix scheduling latencies in unmap_vmas()
sched-mm-fix-scheduling-latencies-in-get_user_pages.patch
sched: mm: fix scheduling latencies in get_user_pages()
sched-mm-fix-scheduling-latencies-in-filemap_sync.patch
sched: mm: fix scheduling latencies in filemap_sync()
sched-pty-fix-scheduling-latencies-in-ptyc.patch
sched: pty: fix scheduling latencies in pty.c
fix-keventd-execution-dependency.patch
fix keventd execution dependency
sched-fix-scheduling-latencies-in-mttrc.patch
sched: fix scheduling latencies in mttr.c
sched-fix-scheduling-latencies-in-vgaconc.patch
sched: fix scheduling latencies in vgacon.c
sched-fix-scheduling-latencies-for-preempt-kernels.patch
sched: fix scheduling latencies for !PREEMPT kernels
nicksched.patch
nicksched
nicksched-sched_fifo-fix.patch
nicksched: SCHED_FIFO fix
sched-smtnice-fix.patch
sched: SMT nice fix
lockmeter-2.patch
lockmeter: lockmeter for out-of-line-spinlocks
ia64 CONFIG_LOCKMETER fix
lockmeter-build-fix
lockmeter for x86_64
ext3_bread-cleanup.patch
ext3_bread() cleanup
pcmcia-implement-driver-model-support.patch
pcmcia: implement driver model support
pcmcia-update-network-drivers.patch
pcmcia: update network drivers
pcmcia-update-wireless-drivers.patch
pcmcia: update wireless drivers
pcmcia-fix-eject-lockup.patch
pcmcia: fix eject lockup
pcmcia-add-hotplug-support.patch
pcmcia: add *hotplug support
linux-2.6.8.1-49-rpc_workqueue.patch
nfs: RPC: Convert rpciod into a work queue for greater flexibility
linux-2.6.8.1-50-rpc_queue_lock.patch
nfs: RPC: Remove the rpc_queue_lock global spinlock
dvdrw-support-for-267-bk13.patch
DVD+RW support for 2.6.7-bk13
packet-writing-credits.patch
packet-writing: add credits
cdrw-packet-writing-support-for-267-bk13.patch
CDRW packet writing support
packet: remove #warning
packet writing: door unlocking fix
pkt_lock_door() warning fix
Fix race in pktcdvd kernel thread handling
Fix open/close races in pktcdvd
packet writing: review fixups
Remove pkt_dev from struct pktcdvd_device
packet writing: convert to seq_file
dvd-rw-packet-writing-update.patch
Packet writing support for DVD-RW and DVD+RW discs.
Get blockdev size right in pktcdvd after switching discs
packet-writing-docco.patch
packet writing documentation
Trivial CDRW packet writing doc update
control-pktcdvd-with-an-auxiliary-character-device.patch
Control pktcdvd with an auxiliary character device
Subject: Re: 2.6.8-rc2-mm2
control-pktcdvd-with-an-auxiliary-character-device-fix
simplified-request-size-handling-in-cdrw-packet-writing.patch
Simplified request size handling in CDRW packet writing
fix-setting-of-maximum-read-speed-in-cdrw-packet-writing.patch
Fix setting of maximum read speed in CDRW packet writing
packet-writing-reporting-fix.patch
Packet writing reporting fixes
speed-up-the-cdrw-packet-writing-driver.patch
Speed up the cdrw packet writing driver
packet-writing-avoid-bio-hackery.patch
packet writing: avoid BIO hackery
cdrom-buffer-size-fix.patch
cdrom: buffer sizing fix
cpufreq-driver-for-nforce2-kernel-267.patch
cpufreq driver for nForce2
allow-modular-ide-pnp.patch
allow modular ide-pnp
create-nodemask_t.patch
Create nodemask_t
nodemask fix
nodemask build fix
allow-x86_64-to-reenable-interrupts-on-contention.patch
Allow x86_64 to reenable interrupts on contention
serial-cs-and-unusable-port-size-ranges.patch
serial-cs and unusable port size ranges
add-support-for-it8212-ide-controllers.patch
Add support for IT8212 IDE controllers
i386-hotplug-cpu.patch
i386 Hotplug CPU
hotplug-cpu-fix-apic-queued-timer-vector-race.patch
Hotplug cpu: Fix APIC queued timer vector race
hotplug-cpu-move-cpu_online_map-clear-to-__cpu_disable.patch
Hotplug cpu: Move cpu_online_map clear to __cpu_disable
igxb-speedup.patch
igxb speedup
serialize-access-to-ide-devices.patch
serialize access to ide devices
remove-unconditional-pci-acpi-irq-routing.patch
remove unconditional PCI ACPI IRQ routing
propagate-pci_enable_device-errors.patch
propagate pci_enable_device() errors
disable-atykb-warning.patch
disable atykb "too many keys pressed" warning
reiserfs-rename-struct-key.patch
reiserfs-rename-struct-key
add-some-key-management-specific-error-codes.patch
Add some key management specific error codes
keys-new-error-codes-for-alpha-mips-pa-risc-sparc-sparc64.patch
keys: new error codes for Alpha, MIPS, PA-RISC, Sparc & Sparc64
implement-in-kernel-keys-keyring-management.patch
implement in-kernel keys & keyring management
keys build fix
keys & keyring management update patch
implement-in-kernel-keys-keyring-management-update-build-fix
implement-in-kernel-keys-keyring-management-update-build-fix-2
key management patch cleanup
make-key-management-code-use-new-the-error-codes.patch
Make key management code use new the error codes
keys-permission-fix.patch
keys: permission fix
keys-keyring-management-keyfs-patch.patch
keys & keyring management: keyfs patch
keyfs-build-fix.patch
keyfs build fix
implement-in-kernel-keys-keyring-management-afs-workaround.patch
implement-in-kernel-keys-keyring-management afs workaround
support-supplementary-information-for-request-key.patch
Support supplementary information for request-key
make-key-management-use-syscalls-not-prctls.patch
Make key management use syscalls not prctls
move-syscall-declarations-from-linux-keyh-2.patch
Move syscall declarations from linux/key.h #2
make-key-management-use-syscalls-not-prctls-build-fix.patch
make-key-management-use-syscalls-not-prctls build fix
export-file_ra_state_init-again.patch
Export file_ra_state_init() again
cachefs-filesystem.patch
CacheFS filesystem
cachefs-return-the-right-error-upon-invalid-mount.patch
CacheFS: return the right error upon invalid mount
remove-error-from-linux-cachefsh.patch
Remove #error from linux/cachefs.h
cachefs-warning-fix-2.patch
cachefs warning fix 2
cachefs-linkage-fix-2.patch
cachefs linkage fix
cachefs-build-fix.patch
cachefs build fix
cachefs-documentation.patch
CacheFS documentation
add-page-becoming-writable-notification.patch
Add page becoming writable notification
provide-a-filesystem-specific-syncable-page-bit.patch
Provide a filesystem-specific sync'able page bit
provide-a-filesystem-specific-syncable-page-bit-fix.patch
provide-a-filesystem-specific-syncable-page-bit-fix
make-afs-use-cachefs.patch
Make AFS use CacheFS
ide-probe.patch
ide probe
268-rc3-jffs2-unable-to-read-filesystems.patch
jffs2 unable to read filesystems
qlogic-isp2x00-remove-needless-busyloop.patch
QLogic ISP2x00: remove needless busyloop
jffs2-mount-options-discarded.patch
JFFS2 mount options discarded
assign_irq_vector-section-fix.patch
assign_irq_vector __init section fix
find_isa_irq_pin-should-not-be-__init.patch
find_isa_irq_pin should not be __init
kexec-i8259-shutdowni386.patch
kexec: i8259-shutdown.i386
kexec-i8259-shutdown-x86_64.patch
kexec: x86_64 i8259 shutdown
kexec-apic-virtwire-on-shutdowni386patch.patch
kexec: apic-virtwire-on-shutdown.i386.patch
kexec-apic-virtwire-on-shutdownx86_64.patch
kexec: apic-virtwire-on-shutdown.x86_64
kexec-ioapic-virtwire-on-shutdowni386.patch
kexec: ioapic-virtwire-on-shutdown.i386
kexec-ioapic-virtwire-on-shutdownx86_64.patch
kexec: ioapic-virtwire-on-shutdown.x86_64
kexec-e820-64bit.patch
kexec: e820-64bit
kexec-kexec-generic.patch
kexec: kexec-generic
kexec-machine_shutdownx86_64.patch
kexec: machine_shutdown.x86_64
kexec-kexecx86_64.patch
kexec: kexec.x86_64
kexec-machine_shutdowni386.patch
kexec: machine_shutdown.i386
kexec-kexeci386.patch
kexec: kexec.i386
kexec-use_mm.patch
kexec: use_mm
kexec-kexecppc.patch
kexec: kexec.ppc
kexec-ppc-kexec-kconfig-misplacement.patch
kexec ppc KEXEC Kconfig misplacement
new-bitmap-list-format-for-cpusets.patch
new bitmap list format (for cpusets)
cpusets-big-numa-cpu-and-memory-placement.patch
cpusets - big numa cpu and memory placement
cpusets-document-proc-status-allowed-fields.patch
cpusets: document proc status allowed fields
cpusets-dont-export-proc_cpuset_operations.patch
Cpusets - Dont export proc_cpuset_operations
cpusets-display-allowed-masks-in-proc-status.patch
cpusets: display allowed masks in proc status
cpusets-simplify-cpus_allowed-setting-in-attach.patch
cpusets: simplify cpus_allowed setting in attach
cpusets-remove-useless-validation-check.patch
cpusets: remove useless validation check
cpusets-config_cpusets-depends-on-smp.patch
Cpusets: CONFIG_CPUSETS depends on SMP
cpusets-tasks-file-simplify-format-fixes.patch
Cpusets tasks file: simplify format, fixes
cpusets-simplify-memory-generation.patch
Cpusets: simplify memory generation
cpusets-interoperate-with-hotplug-online-maps.patch
cpusets: interoperate with hotplug online maps
cpusets-alternative-fix-for-possible-race-in.patch
cpusets: alternative fix for possible race in cpuset_tasks_read()
cpusets-remove-casts.patch
cpusets: remove void* typecasts
reiser4-sb_sync_inodes.patch
reiser4: vfs: add super_operations.sync_inodes()
reiser4-sb_sync_inodes-cleanup.patch
reiser4-sb_sync_inodes-cleanup
reiser4-allow-drop_inode-implementation.patch
reiser4: export vfs inode.c symbols
reiser4-allow-drop_inode-implementation-cleanup.patch
reiser4-allow-drop_inode-implementation-cleanup
reiser4-truncate_inode_pages_range.patch
reiser4: vfs: add truncate_inode_pages_range()
reiser4-truncate_inode_pages_range-cleanup.patch
reiser4-truncate_inode_pages_range-cleanup
reiser4-export-remove_from_page_cache.patch
reiser4: export pagecache add/remove functions to modules
reiser4-export-page_cache_readahead.patch
reiser4: export page_cache_readahead to modules
reiser4-reget-page-mapping.patch
reiser4: vfs: re-check page->mapping after calling try_to_release_page()
reiser4-rcu-barrier.patch
reiser4: add rcu_barrier() synchronization point
reiser4-rcu-barrier-fix.patch
reiser4-rcu-barrier fix
reiser4-export-inode_lock.patch
reiser4: export inode_lock to modules
reiser4-export-inode_lock-cleanup.patch
reiser4-export-inode_lock-cleanup
reiser4-export-pagevec-funcs.patch
reiser4: export pagevec functions to modules
reiser4-export-pagevec-funcs-cleanup.patch
reiser4-export-pagevec-funcs-cleanup
reiser4-export-radix_tree_preload.patch
reiser4: export radix_tree_preload() to modules
reiser4-radix-tree-tag.patch
reiser4: add new radix tree tag
reiser4-radix_tree_lookup_slot.patch
reiser4: add radix_tree_lookup_slot()
reiser4-aliased-dir.patch
reiser4: vfs: handle aliased directories
reiser4-kobject-umount-race.patch
reiser4: introduce filesystem kobjects
reiser4-kobject-umount-race-cleanup.patch
reiser4-kobject-umount-race-cleanup
reiser4-perthread-pages.patch
reiser4: per-thread page pools
reiser4-unstatic-kswapd.patch
reiser4: make kswapd() unstatic for debug
reiser4-include-reiser4.patch
reiser4: add to build system
reiser4-4kstacks-fix.patch
resier4-4kstacks-fix
stop-reiser4-from-turning-itself-on-by-default.patch
Stop reiser4 from turning itself on by default
reiser4-doc.patch
reiser4: documentation
reiser4-doc-update.patch
Update Documentation/Changes for reiser4
reiser4-only.patch
reiser4: main fs
reiser4-cond_resched-build-fix.patch
reiser4: cond_resched() build fix
reiser4-debug-build-fix.patch
reiser4-debug-build-fix
reiser4-prefetch-warning-fix.patch
reiser4: prefetch warning fix
reiser4-mode-fix.patch
reiser4: mode type fix
reiser4-get_context_ok-warning-fixes.patch
reiser4: get_context_ok() warning fixes
reiser4-remove-debug.patch
resier4: remove debug stuff
reiser4-spinlock-debugging-build-fix-2.patch
reiser4-spinlock-debugging-build-fix-2
reiser4-sparc64-build-fix.patch
reiser4 sparc64 build fix
sys_reiser4-sparc64-build-fix.patch
sys_reiser4 sparc64 build fix
reiser4-printk-warning-fixes.patch
reiser4 printk warning fixes
reiser4-generic_acl-fix.patch
reiser4: generic_acl fix
add-acpi-based-floppy-controller-enumeration.patch
Add ACPI-based floppy controller enumeration.
add-acpi-based-floppy-controller-enumeration-fix.patch
add-acpi-based-floppy-controller-enumeration fix
update-acpi-floppy-enumeration.patch
update ACPI floppy enumeration
possible-dcache-bug-debugging-patch.patch
Possible dcache BUG: debugging patch
kallsyms-data-size-reduction--lookup-speedup.patch
kallsyms data size reduction / lookup speedup
inconsistent-kallsyms-fix.patch
Inconsistent kallsyms fix
kallsyms-correct-type-char-in-proc-kallsyms.patch
kallsyms: correct type char in /proc/kallsyms
kallsyms-fix-sparc-gibberish.patch
kallsyms: fix sparc gibberish
tioccons-security.patch
TIOCCONS security
fix-process-start-times.patch
Fix reporting of process start times
fix-comment-in-include-linux-nodemaskh.patch
Fix comment in include/linux/nodemask.h
x86-build-issue-with-software-suspend-code.patch
Fix x86 build issue with software suspend code
hpt366c-wrong-timings-used-since-268.patch
hpt366.c: wrong timings
move-waitqueue-functions-to-kernel-waitc.patch
move waitqueue functions to kernel/wait.c
standardize-bit-waiting-data-type.patch
standardize bit waiting data type
provide-a-filesystem-specific-syncable-page-bit-fix-2.patch
provide-a-filesystem-specific-syncable-page-bit-fix-2
consolidate-bit-waiting-code-patterns.patch
consolidate bit waiting code patterns
consolidate-bit-waiting-code-patterns-cleanup
__wait_on_bit-fix
eliminate-bh-waitqueue-hashtable.patch
eliminate bh waitqueue hashtable
eliminate-bh-waitqueue-hashtable-fix.patch
wait_on_bit_lock() must test_and_set_bit(), not test_bit()
eliminate-inode-waitqueue-hashtable.patch
eliminate inode waitqueue hashtable
move-wait-ops-contention-case-completely-out-of-line.patch
move wait ops' contention case completely out of line
reduce-number-of-parameters-to-__wait_on_bit-and-__wait_on_bit_lock.patch
reduce number of parameters to __wait_on_bit() and __wait_on_bit_lock()
document-wake_up_bits-requirement-for-preceding-memory-barriers.patch
document wake_up_bit()'s requirement for preceding memory barriers
3c59x-pm-fix.patch
3c59x: enable power management unconditionally
serial-mpsc-driver.patch
Serial MPSC driver
serial-add-support-for-non-standard-xtals-to-16c950-driver.patch
serial: add support for non-standard XTALs to 16c950 driver
add-support-for-possio-gcc-aka-pcmcia-siemens-mc45.patch
Add support for Possio GCC AKA PCMCIA Siemens MC45
add-smc91x-ethernet-for-lpd7a40x.patch
add SMC91x ethernet for LPD7A40X
m32r-base.patch
m32r architecture
m32r-update-for-profiling.patch
m32r: update for profiling
m32r-update-zone_sizes_init.patch
m32r: update zone_sizes_init()
m32r-update-to-fix-compile-errors.patch
m32r: update to fix compile errors
m32r-update-uaccessh.patch
m32r: update uaccess.h
m32r-update-checksum-functions.patch
m32r: update checksum functions
m32r-update-cf-pcmcia-drivers.patch
m32r: update CF/PCMCIA drivers
m32r-update-headers-to-remove-useless-ibcs2-support-code.patch
m32r: update headers to remove useless iBCS2 support code
atomic_inc_return-for-m32r-re.patch
atomic_inc_return for m32r
m32r-change-from-export_symbol_novers-to-export_symbol.patch
m32r: change from EXPORT_SYMBOL_NOVERS to EXPORT_SYMBOL
m32r-modify-sys_ipc-to-remove-useless-ibcs2-support-code.patch
m32r: modify sys_ipc() to remove useless iBCS2 support code
m32r-add-elf-machine-code.patch
m32r: add ELF machine code
m32r-upgrade-to-2681-kernel.patch
m32r: upgrade to 2.6.8.1 kernel
m32r-support-a-new-bootloader-m32r-g00ff.patch
m32r: support a new bootloader "m32r-g00ff"
m32r-modify-io-routines-for-m32700ut-cf-access.patch
m32r: modify IO routines for m32700ut CF access
m32r-remove-network-drivers.patch
m32r: remove network drivers
m32r-modify-drivers-net-smc91xc-for.patch
m32r: modify drivers/net/smc91x.c for m32r
m32r-modify-drivers-net-nec-for-m32r.patch
m32r: modify drivers/net/ne.c for m32r
m32r-slim-arch-m32r-kconfig.patch
m32r: slim arch/m32r/Kconfig
m32r-upgrade-include-asm-m32r-atomich.patch
m32r: upgrade include/asm-m32r/atomic.h
m32r-fix-to-build-smp-kernel.patch
m32r: fix to build SMP kernel
m32r-upgrade-for-mm5-changes.patch
m32r: upgrade for -mm5 changes
vm-pageout-throttling.patch
vm: pageout throttling
fix-race-in-sysfs_read_file-and-sysfs_write_file.patch
Fix race in sysfs_read_file() and sysfs_write_file()
possible-race-in-sysfs_read_file-and-sysfs_write_file-update.patch
Possible race in sysfs_read_file() and sysfs_write_file()
md-add-interface-for-userspace-monitoring-of-events.patch
md: add interface for userspace monitoring of events.
unreachable-code-in-ext3_direct_io.patch
unreachable code in ext3_direct_IO()
fix-for-nforce2-secondary-ide-getting-wrong-irq.patch
Fix for NForce2 secondary IDE getting wrong IRQ
revert-allow-oem-written-modules-to-make-calls-to-ia64-oem-sal-functions.patch
revert "allow OEM written modules to make calls to ia64 OEM SAL functions"
misrouted-irq-recovery-take-2.patch
Misrouted IRQ recovery, take 2
misrouted-irq-recovery-take-2-cleanup.patch
misrouted-irq-recovery-take-2 cleanup
misrouted-irq-recovery-take-2-fix.patch
misrouted-irq-recovery-take-2 fix
misrouted-irq-recovery-docs.patch
misrouted-irq-recovery documentation
check-checksums-for-bnep.patch
Check checksums for BNEP
cfq-iosched-v2.patch
CFQ iosched v2
cfq-v2-update.patch
cfq v2 update
cfq-fix-allocated-counts.patch
cfq: fix allocated counts
cfq-warnings.patch
cfq warnings
dont-export-blkdev_open-and-def_blk_ops.patch
don't export blkdev_open and def_blk_ops
remove-dead-code-from-fs-mbcachec.patch
remove dead code from fs/mbcache.c
remove-posix_acl_masq_nfs_mode.patch
remove posix_acl_masq_nfs_mode
dont-export-shmem_file_setup.patch
don't export shmem_file_setup
remove-pm_find-unexport-pm_send.patch
remove pm_find, unexport pm_send
remove-dead-code-and-exports-from-signalc.patch
remove dead code and exports from signal.c
unexport-proc_sys_root.patch
unexport proc_sys_root
unexport-is_subdir-and-shrink_dcache_anon.patch
unexport is_subdir and shrink_dcache_anon
unexport-devfs_mk_symlink.patch
unexport devfs_mk_symlink
unexport-do_execve-do_select.patch
unexport do_execve/do_select
unexport-exit_mm.patch
unexport exit_mm
unexport-files_lock-and-put_filp.patch
unexport files_lock and put_filp
unexport-f_delown.patch
unexport f_delown
unexport-lookup_create.patch
unexport lookup_create
remove-wake_up_all_sync.patch
remove wake_up_all_sync
remove-set_fs_root-set_fs_pwd.patch
remove set_fs_root/set_fs_pwd
md-remove-md_flush_all.patch
md: remove md_flush_all
md-make-retry_list-non-global-in-raid1-and-multipath.patch
md: make retry_list non-global in raid1 and multipath
md-rationalise-issue_flush-function-in-md-personalities.patch
md: rationalise issue_flush function in md personalities
md-rationalise-unplug-functions-in-md.patch
md: rationalise unplug functions in md
md-make-sure-md-always-uses-rdev_dec_pending-properly.patch
md: make sure md always uses rdev_dec_pending properly
md-fix-two-little-bugs-in-raid10.patch
md: fix two little bugs in raid10
md-modify-locking-when-accessing-subdevices-in-md.patch
md: modify locking when accessing subdevices in md
generic-acl-support-for-permission.patch
generic acl support for ->permission
generic-acl-support-for-permission-fix.patch
generic acl support for ->permission fix
generic-acl-support-for-permission-keyfs-fix.patch
generic-acl-support-for-permission-keyfs-fix
device-driver-for-the-sgi-system-clock-mmtimer.patch
device driver for the SGI system clock, mmtimer
close-race-with-preempt-and-modular-pm_idle-callbacks.patch
Close race with preempt and modular pm_idle callbacks
cacheline-align-pagevec-structure.patch
Adjust align pagevec structure
fbdev-remove-unnecessary-banshee_wait_idle-from-tdfxfb.patch
fbdev: remove unnecessary banshee_wait_idle from tdfxfb
fbdev-fix-logo-drawing-failure-for-vga16fb.patch
fbdev: fix logo drawing failure for vga16fb
fbdev-initialize-i810fb-after-agpgart.patch
fbdev: Initialize i810fb after agpgart
fbdev-fix-userland-compile-breakage.patch
fbdev: Fix userland compile breakage
fbcon-fix-setup-boot-options-of-fbcon.patch
fbcon: Fix setup boot options of fbcon
fbdev-pass-struct-device-to-class_simple_device_add.patch
fbdev: Pass struct device to class_simple_device_add
fbdev-add-tile-blitting-support.patch
fbdev: Add Tile Blitting support
fbcon-fix-fbcons-setup-routine.patch
fbcon: fix fbcon's setup routine
fbdev-arrange-driver-order-in-makefile.patch
fbdev: Arrange driver order in Makefile
fbdev-fix-scrolling-corruption.patch
fbdev: fix scrolling corruption
radeonfb-fix-warnings-about-uninitialized-variables.patch
radeonfb: Fix warnings about uninitialized variables
fbdev-remove-i810fb-explicit-agp-initialization-hack.patch
fbdev: Remove i810fb explicit agp initialization hack.
fix-for-spurious-interrupts-on-e100-resume-2.patch
Fix for spurious interrupts on e100 resume 2
r8169-miscalculation-of-available-tx-descriptors.patch
r8169: miscalculation of available Tx descriptors
r8169-hint-for-tx-flow-control.patch
r8169: hint for Tx flow control
r8169-tso-support.patch
r8169: TSO support.
r8169-mac-identifier-extracted-from-realteks-driver-v22.patch
r8169: Mac identifier extracted from Realtek's driver v2.2
compile-fix-3c59x-for-eisa-without-pci.patch
compile fix 3c59x for eisa without pci
atomic_inc_return-for-i386.patch
atomic_inc_return() for i386
atomic_inc_return-for-x86_64.patch
atomic_inc_return() for x86_64
atomic_inc_return-for-arm.patch
atomic_inc_return() for arm
atomic_inc_return-for-arm26.patch
atomic_inc_return() for arm26
atomic_inc_return-for-sparc64.patch
atomic_inc_return() for sparc64
online-cpu-with-maxcpus-option-panics.patch
Online CPU with maxcpus option panics
remove-dead-exports-from-fs-fat.patch
remove dead exports from fs/fat/
fat-use-hlist_head-for-fat_inode_hashtable-1-6.patch
FAT: use hlist_head for fat_inode_hashtable
fat-rewrite-the-cache-for-file-allocation-table-lookup.patch
FAT: rewrite the cache for file allocation table lookup
fat-cache-lock-from-per-sb-to-per-inode-3-6.patch
FAT: cache lock from per sb to per inode
fat-the-inode-hash-from-per-module-to-per-sb-4-6.patch
FAT: the inode hash from per module to per sb
fat-fix-the-race-bitween-fat_free-and-fat_get_cluster.patch
FAT: Fix the race bitween fat_free() and fat_get_cluster()
fat-remove-debug_pr-6-6.patch
FAT: remove debug_pr()
fix-for-fsync-ignoring-writing-errors-fat-fix.patch
fix-for-fsync-ignoring-writing-errors-fat-fix
thinkpad-fnfx-key-driver.patch
thinkpad fn+fx key driver
rewrite-alloc_pidmap.patch
pidhashing: rewrite alloc_pidmap()
pidhashing-retain-older-vendor-copyright.patch
From: William Lee Irwin III <[email protected]>
Subject: [pidhashing] [1/3] retain older vendor copyright
pidhashing-lower-pid_max_limit-for-32-bit-machines.patch
From: William Lee Irwin III <[email protected]>
Subject: [pidhashing] [2/3] lower PID_MAX_LIMIT for 32-bit machines
pidhashing-enforce-pid_max_limit-in-sysctls.patch
From: William Lee Irwin III <[email protected]>
Subject: [pidhashing] [3/3] enforce PID_MAX_LIMIT in sysctls
add-missing-pci_disable_device-for-e1000.patch
add missing pci_disable_device for e1000
allow-multiple-inputs-in-alternative_input.patch
Allow multiple inputs in alternative_input
autofs4-allow-map-update-recognition.patch
autofs4: allow map update recognition
fake_ino-fixes.patch
fake_ino fixes
fix-of-race-in-writeback_inodes.patch
Fix of race in writeback_inodes()
rearrange-of-inode_lock-in-writeback_inodes.patch
Rearrangement of inode_lock in writeback_inodes()
lighten-mmlist_lock.patch
lighten mmlist_lock
updates-to-rcu-documentation.patch
Updates to RCU documentation
fix-sysrq-handling-bug-in-sn_consolec.patch
fix sysrq handling bug in sn_console.c
incorrect-pci-interrupt-assignment-on-es7000-for-platform-gsi.patch
Incorrect PCI interrupt assignment on ES7000 for platform GSI
incorrect-pci-interrupt-assignment-on-es7000-for-platform-gsi-fix.patch
incorrect-pci-interrupt-assignment-on-es7000-for-platform-gsi fix
incorrect-pci-interrupt-assignment-on-es7000-for-pin-zero.patch
Incorrect PCI interrupt assignment on ES7000 for pin zero
fix-task_mmuc-text-size-reporting.patch
procfs: fix task_mmu.c text size reporting
uml-update-handle_irq_event.patch
uml: update handle_IRQ_event
uml-finish-the-signals-across-a-reboot-fix.patch
uml: finish the signals across a reboot fix
uml-finish-conversion-to-sigjmp_buf-siglongjmp.patch
uml: finish conversion to sigjmp_buf/siglongjmp
uml-fix-a-signal-race.patch
uml: fix a signal race
uml-enable-the-timer-after-the-timer-handler.patch
uml: enable the timer *after* the timer handler
uml-convert-the-real-time-clock-to-gettimeofday-from-rdtsc.patch
uml: convert the real-time clock to gettimeofday from rdtsc
uml-cleaning-up.patch
uml: cleaning up
uml-let-page-faults-always-be-delivered-immediately.patch
uml: let page faults always be delivered immediately
uml-eliminate-signal-order-delivery-dependency.patch
uml: eliminate signal order delivery dependency
uml-iomem-fix.patch
uml: iomem fix
uml-fix-call-to-sys_clone.patch
uml: fix call to sys_clone
uml-copy_user-fixes.patch
uml: copy_user fixes
sparc32-add-atomic_sub_and_test.patch
sparc32: add atomic_sub_and_test()
make-console_conditional_schedule-__sched-and-use-cond_resched.patch
make console_conditional_schedule() __sched and use cond_resched()
ide-remove-obsolete-config_blk_dev_adma.patch
ide: remove obsolete CONFIG_BLK_DEV_ADMA
fix-driver-name-in-eth1394-as-returned-by-ethtool_gdrvinfo.patch
fix driver name in eth1394 as returned by ETHTOOL_GDRVINFO
mips-fixed-do_signal-in-arch-mips-kernel-signalc.patch
mips: fixed do_signal in arch/mips/kernel/signal.c
time-interpolators-logic-fix.patch
time interpolators logic fix
document-arm-pci=firmware-option.patch
Document ARM pci=firmware option
update-ixp4xx-mtd-driver-from-cvs-mtd.patch
Update IXP4xx MTD driver from CVS MTD
add-mtd-map-driver-for-intel-ixp2000-npu.patch
Add MTD map driver for Intel IXP2000 NPU
remove-i2o_core.patch
remove i2o_core.c
bio_alloc-cleanup.patch
bio_alloc() cleanup
report-per-process-pagetable-usage.patch
report per-process pagetable usage
tune-vmalloc-size.patch
tune vmalloc size
tune-vmalloc-size-docs.patch
tune vmalloc size docs
reduce-_do_execve-stack-usage.patch
Reduce [compat]_do_execve stack usage
reduce-_do_execve-stack-usage-fix.patch
reduce-_do_execve-stack-usage fix
remove-lock_section-from-x86_64-spin_lock-asm.patch
remove LOCK_SECTION from x86_64 spin_lock asm
fix-write-return-values-for-tmpfs.patch
Fix write() return values for tmpfs.
fix-write-return-values-for-reiserfs.patch
Fix write() return values for reiserfs.
El Thu, 16 Sep 2004 02:40:20 -0700 Andrew Morton <[email protected]> escribi?:
[...]
> -tty_io-hangup-locking.patch
> +tty-locking-for-269rc2.patch
> +tty-locking-for-269rc2-fixes.patch
>
> Alan's tty locking rework
I couldn't connect to internet, the connection didn't go beyond of...
Sep 16 15:01:51 estel chat[1235]: ATDTSOMETHING^M^M
Sep 16 15:01:51 estel chat[1235]: CONNECT
Sep 16 15:01:51 estel chat[1235]: -- got it
Sep 16 15:01:51 estel chat[1235]: send (\d)
Sep 16 15:01:52 estel pppd[1233]: Serial connection established.
^^^
here (the rest is from a working kernel)
Sep 16 15:01:52 estel pppd[1233]: using channel 1
Sep 16 15:01:52 estel pppd[1233]: Using interface ppp0
Sep 16 15:01:52 estel pppd[1233]: Connect: ppp0 <--> /dev/ttyS1
Unapplying those two patches quoted above made it work again, the box
is a smp 2xpentium3, the sysrq-t output of pppd was:
Sep 16 14:44:45 estel kernel: pppd S 00000000 0 1365 1 1323 (NOTLB)
Sep 16 14:44:45 estel kernel: db495e9c 00000086 c0116680 00000000 00000000 bffff978 ffff037f 43e740f2
Sep 16 14:44:45 estel kernel: 0000001b db8f2170 c0116680 de36b2a0 07a2d1a5 00000000 c1409f60 db8f22cc
Sep 16 14:44:45 estel kernel: db494000 d919f000 db495edc 00000003 c01b9739 00000000 db4221a8 c016308b
Sep 16 14:44:45 estel kernel: Call Trace:
Sep 16 14:44:45 estel kernel: [default_wake_function+0/16] default_wake_function+0x0/0x10
Sep 16 14:44:45 estel kernel: [default_wake_function+0/16] default_wake_function+0x0/0x10
Sep 16 14:44:45 estel kernel: [tty_set_ldisc+457/1232] tty_set_ldisc+0x1c9/0x4d0
Sep 16 14:44:45 estel kernel: [locks_delete_lock+91/256] locks_delete_lock+0x5b
/0x100
Sep 16 14:44:45 estel kernel: [autoremove_wake_function+0/80] autoremove_wake_function+0x0/0x50
Sep 16 14:44:45 estel kernel: [autoremove_wake_function+0/80] autoremove_wake_function+0x0/0x50
Sep 16 14:44:45 estel kernel: [serial8250_tx_empty+52/80] serial8250_tx_empty+0x34/0x50
Sep 16 14:44:45 estel kernel: [remove_wait_queue+23/112] remove_wait_queue+0x17/0x70
Sep 16 14:44:45 estel kernel: [tty_wait_until_sent+230/256] tty_wait_until_sent+0xe6/0x100
Sep 16 14:44:45 estel kernel: [default_wake_function+0/16] default_wake_function+0x0/0x10
Sep 16 14:44:45 estel kernel: [n_tty_open+0/160] n_tty_open+0x0/0xa0
Sep 16 14:44:45 estel kernel: [n_tty_close+0/48] n_tty_close+0x0/0x30
Sep 16 14:44:45 estel kernel: [n_tty_flush_buffer+0/96] n_tty_flush_buffer+0x0/0x60
Sep 16 14:44:45 estel kernel: [n_tty_chars_in_buffer+0/128] n_tty_chars_in_buffer+0x0/0x80
Sep 16 14:44:45 estel kernel: [read_chan+0/2000] read_chan+0x0/0x7d0
Sep 16 14:44:45 estel kernel: [write_chan+0/560] write_chan+0x0/0x230
Sep 16 14:44:45 estel kernel: [n_tty_ioctl+0/896] n_tty_ioctl+0x0/0x380
Sep 16 14:44:45 estel kernel: [n_tty_set_termios+0/480] n_tty_set_termios+0x0/0x1e0
Sep 16 14:44:45 estel kernel: [normal_poll+0/331] normal_poll+0x0/0x14b
Sep 16 14:44:45 estel kernel: [n_tty_receive_buf+0/3728] n_tty_receive_buf+0x0/0xe90
Sep 16 14:44:45 estel kernel: [n_tty_receive_room+0/64] n_tty_receive_room+0x0/0x40
Sep 16 14:44:45 estel kernel: [n_tty_write_wakeup+0/48] n_tty_write_wakeup+0x0/0x30
Sep 16 14:44:45 estel kernel: [sys_ioctl+255/624] sys_ioctl+0xff/0x270
Sep 16 14:44:45 estel kernel: [sysenter_past_esp+82/113] sysenter_past_esp+0x52/0x71
Yeah this is the bug Paul nailed down, new patch later today that should
fix the ldisc change hang. Thanks for the report.
On Thursday 16 September 2004 02:40, Andrew Morton wrote:
> +sched-fix-scheduling-latencies-for-preempt-kernels.patch
This patch got a rather unfortunate name, as it actually only fixes latencies
for non-preempt kernels.
-Ryan
On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> - Added lots of Ingo's low-latency patches
> - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> - Several architecture updates
Please remove include/asm-sh64/smp_lock.h; they missed the smp_lock.h
consolidation while sitting out-of-tree and/or in the process of
forward porting to 2.6
-- wli
Andrew Morton wrote:
> +tune-vmalloc-size.patch
This one of course breaks nvidia's binary driver; so nvidia users should do a
"patch -Rp1" to revert it.
Regards,
Norberto
On Thursday, September 16, 2004 2:40 am, Andrew Morton wrote:
> bk-acpi.patch
Looks like some changes in this patch break sn2. In particular, this hunk in
acpi_pci_irq_enable():
- if (dev->irq && (dev->irq <= 0xF)) {
+ if (dev->irq >= 0 && (dev->irq <= 0xF)) {
printk(" - using IRQ %d\n", dev->irq);
return_VALUE(dev->irq);
}
else {
printk("\n");
- return_VALUE(0);
+ return_VALUE(-EINVAL);
}
Now instead of returning 0, we'll get -EINVAL when a driver calls
pci_enable_device. This is arguably correct since there's no _PRT entry (and
in fact no ACPI namespace on sn2), but shouldn't the code above be looking at
the 'pin' value instead of dev->irq? The sn2 specific PCI code sets up each
dev->irq long before this with the correct values...
Thanks,
Jesse
On Thu, 2004-09-16 at 18:45, Norberto Bensa wrote:
> Andrew Morton wrote:
> > +tune-vmalloc-size.patch
>
> This one of course breaks nvidia's binary driver; so nvidia users should do a
> "patch -Rp1" to revert it.
eh why how ?? what evil stuff is nvidia doing this time ?
Arjan van de Ven wrote:
> On Thu, 2004-09-16 at 18:45, Norberto Bensa wrote:
> > Andrew Morton wrote:
> > > +tune-vmalloc-size.patch
> >
> > This one of course breaks nvidia's binary driver; so nvidia users should
> > do a "patch -Rp1" to revert it.
>
> eh why how ?? what evil stuff is nvidia doing this time ?
On modprobe it says: "__VMALLOC_RESERVE undefined symbol". I'm almost sure is
an #include thing, but since I know near to nothing about the kernel
internals, I prefer to revert the patch.
Now I got this problem with vmware but I need a reboot to tell you the exact
message; if you are interested, I'll report later.
Best regards,
Norberto
On Thu, Sep 16, 2004 at 02:28:10PM -0300, Norberto Bensa wrote:
> Arjan van de Ven wrote:
> > On Thu, 2004-09-16 at 18:45, Norberto Bensa wrote:
> > > Andrew Morton wrote:
> > > > +tune-vmalloc-size.patch
> > >
> > > This one of course breaks nvidia's binary driver; so nvidia users should
> > > do a "patch -Rp1" to revert it.
> >
> > eh why how ?? what evil stuff is nvidia doing this time ?
>
> On modprobe it says: "__VMALLOC_RESERVE undefined symbol". I'm almost sure is
> an #include thing, but since I know near to nothing about the kernel
> internals, I prefer to revert the patch.
I would consider it REALLY weird for a module to use detailed vmalloc
knowledge like this. Does anyone know what they are doing?????
On Thursday 16 September 2004 11:14 am, Jesse Barnes wrote:
> On Thursday, September 16, 2004 2:40 am, Andrew Morton wrote:
> > bk-acpi.patch
>
> Looks like some changes in this patch break sn2. In particular, this hunk in
> acpi_pci_irq_enable():
>
> - if (dev->irq && (dev->irq <= 0xF)) {
> + if (dev->irq >= 0 && (dev->irq <= 0xF)) {
> printk(" - using IRQ %d\n", dev->irq);
> return_VALUE(dev->irq);
> }
> else {
> printk("\n");
> - return_VALUE(0);
> + return_VALUE(-EINVAL);
> }
>
> Now instead of returning 0, we'll get -EINVAL when a driver calls
> pci_enable_device. This is arguably correct since there's no _PRT entry (and
> in fact no ACPI namespace on sn2), but shouldn't the code above be looking at
> the 'pin' value instead of dev->irq? The sn2 specific PCI code sets up each
> dev->irq long before this with the correct values...
I think the change above is actually from
incorrect-pci-interrupt-assignment-on-es7000-for-pin-zero.patch
of which I am officially ignorant :-)
Jedi/Sector One wrote:
> On Thu, Sep 16, 2004 at 01:45:55PM -0300, Norberto Bensa wrote:
> > Andrew Morton wrote:
> > > +tune-vmalloc-size.patch
> >
> > This one of course breaks nvidia's binary driver; so nvidia users should
> > do a "patch -Rp1" to revert it.
>
> http://00f.net/blogs/index.php/2004/09/16/nvidia_kernel_module_and_linux_2_
>6_9_rc2
Thanks. Actually, that was going to be my next fix, but ATM I'm trying to get
a work done for my CS class.
Best regards,
Norberto
On Thu, Sep 16, 2004 at 01:45:55PM -0300, Norberto Bensa wrote:
> Andrew Morton wrote:
> > +tune-vmalloc-size.patch
>
> This one of course breaks nvidia's binary driver; so nvidia users should do a
> "patch -Rp1" to revert it.
http://00f.net/blogs/index.php/2004/09/16/nvidia_kernel_module_and_linux_2_6_9_rc2
Hello list,
Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6
>.9-rc2-mm1/
I mentioned before that this kernel was giving me problems with nvidia (fixed
thanks to "jedi/sector one") and vmware. Now I'm at home so I booted
2.6.9-rc2-mm1 and this is what vmware is saying:
"Could not mmap 139264 bytes of memory from file offset 0 at (nil):
Operation not permitted. Failed to allocate shared memory."
Anyone knows what's going on here?
Many thanks in advance,
Norberto
> On Thursday 16 September 2004 11:14 am, Jesse Barnes wrote:
> > On Thursday, September 16, 2004 2:40 am, Andrew Morton wrote:
> > bk-acpi.patch
> >
> > Looks like some changes in this patch break sn2. In particular,
this
> > hunk in
> > acpi_pci_irq_enable():
> >
> > - if (dev->irq && (dev->irq <= 0xF)) {
> > + if (dev->irq >= 0 && (dev->irq <= 0xF)) {
> > printk(" - using IRQ %d\n", dev->irq);
> > return_VALUE(dev->irq);
> > }
> > else {
> > printk("\n");
> > - return_VALUE(0);
> > + return_VALUE(-EINVAL);
> > }
> >
> > Now instead of returning 0, we'll get -EINVAL when a driver calls
> > pci_enable_device. This is arguably correct since there's no _PRT
> > entry (and in fact no ACPI namespace on sn2), but shouldn't the code
> > above be looking at the 'pin' value instead of dev->irq? The sn2
> > specific PCI code sets up each
> > dev->irq long before this with the correct values...
>
> I think the change above is actually from
> incorrect-pci-interrupt-assignment-on-es7000-for-pin-zero.patch
> of which I am officially ignorant :-)
I realize now that this is very involved piece of code and a lot was
built around the assumption that IRQ0 is a timer interrupt (pin 0 is for
PCI on ES7000), and assumption that everyone honors this assumption :)
However, it seems wrong that we are not able to read literally what ACPI
says, such as irq 0 for INTA. Maybe, it would be better if the code
above was returing an error code, not an irq, which is returned in dev
anyway. It should be some creative way to resolve this issue... I think
the idea in the comment above by Jesse Barnes has good potential.
Thanks,
--Natalie
On Fri, 2004-09-17 at 01:18, Protasevich, Natalie wrote:
> > On Thursday 16 September 2004 11:14 am, Jesse Barnes wrote:
> > > On Thursday, September 16, 2004 2:40 am, Andrew Morton wrote:
> > > bk-acpi.patch
> > >
> > > Looks like some changes in this patch break sn2. In particular,
> this
> > > hunk in
> > > acpi_pci_irq_enable():
> > >
> > > - if (dev->irq && (dev->irq <= 0xF)) {
> > > + if (dev->irq >= 0 && (dev->irq <= 0xF)) {
> > > printk(" - using IRQ %d\n", dev->irq);
> > > return_VALUE(dev->irq);
> > > }
> > > else {
> > > printk("\n");
> > > - return_VALUE(0);
> > > + return_VALUE(-EINVAL);
> > > }
> > >
> > > Now instead of returning 0, we'll get -EINVAL when a driver calls
> > > pci_enable_device. This is arguably correct since there's no _PRT
> > > entry (and in fact no ACPI namespace on sn2), but shouldn't the
> code
>
> > > above be looking at the 'pin' value instead of dev->irq? The sn2
> > > specific PCI code sets up each
> > > dev->irq long before this with the correct values...
No, in this context, the variable "pin" is to select PCI INTA/B/C/D, not
a interrupt controller pin.
If SN2 is using its pre-determied interrupt configuration, then is is
probably a bug that it calls down into this code at all, since SN2 wants
this code to be a NOP, yes?
> > I think the change above is actually from
> > incorrect-pci-interrupt-assignment-on-es7000-for-pin-zero.patch
>
> > of which I am officially ignorant :-)
yeah, probably these IRQ patches should come through me, but haven't b/c
my patch throughput has been very low the last couple of weeks. At
least if I ship no new patches I don't get blamed for breaking stuff;-)
> I realize now that this is very involved piece of code and a lot was
> built around the assumption that IRQ0 is a timer interrupt (pin 0 is
> for
> PCI on ES7000), and assumption that everyone honors this assumption :)
> However, it seems wrong that we are not able to read literally what
> ACPI
> says, such as irq 0 for INTA. Maybe, it would be better if the code
> above was returing an error code, not an irq, which is returned in dev
> anyway. It should be some creative way to resolve this issue... I
> think
> the idea in the comment above by Jesse Barnes has good potential.
Yes, there are lots of places where IRQ0 is an error condition. I
expect that this was lazyness based on the fact that the timer code is
hard-wired to use IRQ0, so it is always taken on IA32. My suggestion
to un-hard-wire the timer code was not greeted with enthusiasm, so this
is how things sit.
But IRQ0 should not be a problem on the ES7000, as there is an override
to supply IRQ0 from pin 0:20. pin 0:0, on the other hand is a PCI
interrupt on the ES7000, completely valid to be assigned from the _PRT
and to be assigned by the es7000-specific code to any arbitrary IRQ#.
I'm not sure exactly that the patch above was trying to fix. Looks like
it is time to examine the latest ew7000 changes in detail. But I think
the patch has pointed out that this routine really should be returning 0
for success and non zero for failure; and returning dev->irq was
probably a latent bug all along.
-Len
On Thursday, September 16, 2004 11:50 pm, Len Brown wrote:
> I'm not sure exactly that the patch above was trying to fix. Looks like
> it is time to examine the latest ew7000 changes in detail. But I think
> the patch has pointed out that this routine really should be returning 0
> for success and non zero for failure; and returning dev->irq was
> probably a latent bug all along.
Right, and I'd like success to be defined a little more broadly. If dev->irq
is already valid, we should just return 0 right away. That would take care
of platforms that already have the dev in question setup properly.
Thanks,
Jesse
On Thursday 16 September 2004 11:40, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6
>.9-rc2-mm1/
I get a lot of usb error messages on boot, here the relevant dmesg output.
I also attached lsusb -v output, which maybe useful, if you need more
information, let me know!
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard on isa0060/serio0
input: ImPS/2 Generic Wheel Mouse on isa0060/serio1
input: PC Speaker
NET: Registered protocol family 2
IP: routing cache hash table of 2048 buckets, 16Kbytes
TCP: Hash tables configured (established 16384 bind 32768)
IPv4 over IPv4 tunneling driver
GRE over IPv4 tunneling driver
Initializing IPsec netlink socket
NET: Registered protocol family 1
NET: Registered protocol family 17
ACPI: (supports S0 S3 S4 S5)
ACPI wakeup devices:
FUTS PCI0 USB0 USB1 USB2 USB3 MAC0 AMR0 UAR1 PS2M PS2K
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 136k freed
Adding 514040k swap on /dev/hda9. Priority:-1 extents:1
EXT3 FS on hda10, internal journal
warning: process `update' used the obsolete bdflush system call
Fix your initscripts?
ohci1394: $Rev: 1226 $ Ben Collins <[email protected]>
ACPI: PCI interrupt 0000:00:02.3[B] -> GSI 17 (level, low) -> IRQ 17
ohci1394: fw-host0: Unexpected PCI resource length of 1000!
ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[17] MMIO=[e2427000-e24277ff]
Max Packet=[2048]
snd: Unknown parameter `device_gid'
ACPI: PCI interrupt 0000:00:02.7[C] -> GSI 18 (level, low) -> IRQ 18
intel8x0_measure_ac97_clock: measured 49665 usecs
intel8x0: clocking to 48000
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 0000:00:03.0[A] -> GSI 20 (level, low) -> IRQ 20
ohci_hcd 0000:00:03.0: Silicon Integrated Systems [SiS] USB 1.0 Controller
ohci_hcd 0000:00:03.0: irq 20, pci mem 0xe2420000
ohci_hcd 0000:00:03.0: new USB bus registered, assigned bus number 1
ohci_hcd 0000:00:03.0: SiS init quirk
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
ACPI: PCI interrupt 0000:00:03.1[B] -> GSI 21 (level, low) -> IRQ 21
ohci_hcd 0000:00:03.1: Silicon Integrated Systems [SiS] USB 1.0 Controller
(#2)
ohci_hcd 0000:00:03.1: irq 21, pci mem 0xe2421000
ohci_hcd 0000:00:03.1: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:03.1: SiS init quirk
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
ACPI: PCI interrupt 0000:00:03.2[C] -> GSI 22 (level, low) -> IRQ 22
ohci_hcd 0000:00:03.2: Silicon Integrated Systems [SiS] USB 1.0 Controller
(#3)
ieee1394: Host added: ID:BUS[0-00:1023] GUID[000010dc001ee09a]
ohci_hcd 0000:00:03.2: irq 22, pci mem 0xe2422000
ohci_hcd 0000:00:03.2: new USB bus registered, assigned bus number 3
ohci_hcd 0000:00:03.2: SiS init quirk
usb 2-1: new full speed USB device using address 2
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 2 ports detected
ACPI: PCI interrupt 0000:00:03.3[D] -> GSI 23 (level, low) -> IRQ 23
ehci_hcd 0000:00:03.3: Silicon Integrated Systems [SiS] USB 2.0 Controller
ehci_hcd 0000:00:03.3: irq 23, pci mem 0xe2423000
ehci_hcd 0000:00:03.3: new USB bus registered, assigned bus number 4
PCI: cache line size of 128 is not supported by device 0000:00:03.3
ehci_hcd 0000:00:03.3: USB 2.0 enabled, EHCI 1.00, driver 2004-May-10
usb 2-1: USB disconnect, address 2
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 6 ports detected
ohci_hcd 0000:00:03.1: wakeup
sis900.c: v1.08.07 11/02/2003
ACPI: PCI interrupt 0000:00:04.0[A] -> GSI 19 (level, low) -> IRQ 19
eth0: Unknown PHY transceiver found at address 0.
eth0: Realtek RTL8201 PHY transceiver found at address 1.
eth0: Unknown PHY transceiver found at address 2.
eth0: Unknown PHY transceiver found at address 3.
eth0: Unknown PHY transceiver found at address 4.
eth0: Unknown PHY transceiver found at address 5.
eth0: Unknown PHY transceiver found at address 6.
eth0: Unknown PHY transceiver found at address 7.
eth0: Unknown PHY transceiver found at address 8.
eth0: Unknown PHY transceiver found at address 9.
eth0: Unknown PHY transceiver found at address 10.
eth0: Unknown PHY transceiver found at address 11.
eth0: Unknown PHY transceiver found at address 12.
eth0: Unknown PHY transceiver found at address 13.
eth0: Unknown PHY transceiver found at address 14.
eth0: Unknown PHY transceiver found at address 15.
eth0: Unknown PHY transceiver found at address 16.
eth0: Unknown PHY transceiver found at address 17.
eth0: Unknown PHY transceiver found at address 18.
eth0: Unknown PHY transceiver found at address 19.
eth0: Unknown PHY transceiver found at address 20.
eth0: Unknown PHY transceiver found at address 21.
eth0: Unknown PHY transceiver found at address 22.
eth0: Unknown PHY transceiver found at address 23.
eth0: Unknown PHY transceiver found at address 24.
eth0: Unknown PHY transceiver found at address 25.
usb 2-1: new full speed USB device using address 3
eth0: Unknown PHY transceiver found at address 26.
eth0: Unknown PHY transceiver found at address 27.
eth0: Unknown PHY transceiver found at address 28.
eth0: Unknown PHY transceiver found at address 29.
eth0: Unknown PHY transceiver found at address 30.
eth0: Unknown PHY transceiver found at address 31.
eth0: Using transceiver found at address 1 as default
eth0: SiS 900 PCI Fast Ethernet at 0xdc00, IRQ 19, 00:10:fa:3f:29:16.
8139too Fast Ethernet driver 0.9.27
ACPI: PCI interrupt 0000:00:07.0[A] -> GSI 18 (level, low) -> IRQ 18
eth1: RealTek RTL8139 at 0xd134a000, 00:50:fc:2d:9a:5c, IRQ 18
eth1: Identified 8139 chip type 'RTL-8139C'
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb 2-1: control timeout on ep0in
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
eth0: Media Link On 100mbps full-duplex
eth0: Media Link On 100mbps full-duplex
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb usb3: string descriptor 0 read error: -113
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb 2-1: string descriptor 0 read error: -110
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
usb usb1: string descriptor 0 read error: -113
lsusb -v:
Bus 004 Device 001: ID 0000:0000
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 1 Single TT
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 2.06
iManufacturer 3 Linux 2.6.8.1-ck8 ehci_hcd
iProduct 2 Silicon Integrated Systems [SiS] USB 2.0
Controller
iSerial 1 0000:00:03.3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 bytes 2 twice
bInterval 12
Bus 003 Device 001: ID 0000:0000
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 2.06
iManufacturer 3 Linux 2.6.8.1-ck8 ohci_hcd
iProduct 2 Silicon Integrated Systems [SiS] USB 1.0
Controller(#3)
iSerial 1 0000:00:03.2
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 bytes 2 twice
bInterval 255
Bus 002 Device 003: ID 0db0:6982 Micro Star International Medion Flash XL
V2.7ACard Reader
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0db0 Micro Star International
idProduct 0x6982 Medion Flash XL V2.7A Card Reader
bcdDevice 2.6d
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 39
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 4
bmAttributes 0x80
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk (Zip)
iInterface 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 bytes 64 once
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 bytes 64 once
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 bytes 8 once
bInterval 10
Bus 002 Device 001: ID 0000:0000
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 2.06
iManufacturer 3 Linux 2.6.8.1-ck8 ohci_hcd
iProduct 2 Silicon Integrated Systems [SiS] USB 1.0
Controller(#2)
iSerial 1 0000:00:03.1
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 bytes 2 twice
bInterval 255
Bus 001 Device 001: ID 0000:0000
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 2.06
iManufacturer 3 Linux 2.6.8.1-ck8 ohci_hcd
iProduct 2 Silicon Integrated Systems [SiS] USB 1.0
Controller
iSerial 1 0000:00:03.0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 bytes 2 twice
bInterval 255
On Thu, 16 Sep 2004 19:30:22 +0200, Arjan van de Ven said:
> I would consider it REALLY weird for a module to use detailed vmalloc
> knowledge like this. Does anyone know what they are doing?????
Here's the problematic code:
// start off by tracking down which page within this allocation
// we're looking at. do this by searching for the physical address
// in our page table.
for (i = 0; i < at->num_pages; i++)
{
if ((address == (unsigned long) at->page_table[i].phys_addr))
{
unsigned long retaddr = (unsigned long) at->page_table[i].phys_addr;
// if we've allocated via vmalloc on a highmem system, the
// physical address may not be accessible via PAGE_OFFSET,
// that's ok, we have a simple linear pointer already.
if (at->flags & NV_ALLOC_TYPE_VMALLOC)
{
return (void *)((unsigned char *) at->key_mapping + (i << PAGE_SHIFT) + offset);
}
if (retaddr <= MAXMEM)
{
return __va((retaddr + offset));
}
// ?? this may be a contiguous allocation, fall through
// to below? or should I just check at->flag here?
}
}
It gets hung up because MAXMEM is:
#define MAXMEM (-__PAGE_OFFSET-__VMALLOC_RESERVE)
and in arch/i386/mm/init.c we have:
unsigned int __VMALLOC_RESERVE = 128 << 20;
but alas without an EXPORT_SYMBOL() so it's not visible to modules. The old
definition was:
#define __VMALLOC_RESERVE (128 << 20)
Change was introduced with the 'tune-vmalloc-size' patch in -rc2-mm1 that added
the boot-time 'vmalloc=' parameter.
I admit not knowing the memory manager or the NVidia well enough to know what
they *should* be doing instead.....
Noticed this in my dmesg after booting 2.6.9-rc2-mm1:
enable_irq(17) unbalanced from c02a1ce5
$ grep ^c02a1c /boot/System.map-`uname -r`
c02a1c10 t e100_up
On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> - Added lots of Ingo's low-latency patches
> - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> - Several architecture updates
Tested this on my laptop, which is a shoddy testing environment because
it lacks serial devices... no, not all of my boxen are UltraEnterprise,
AlphaServer, and Altix systems (the Altix isn't even mine, it's werk's).
But anyway, I got some kind of backtrace in yenta_interrupt, that said
"stack pointer is garbage, not dumping" or some such, followed by an
interrupts-off deadlock later in some unclear location (looks like ICH
scanning or some such; while legible, I couldn't make heads or tails of
it). ISTR PCMCIA IRQ/etc. stack consumption issues; this may be related.
Russell, I didn't know whom to cc:; if you could redirect this in the
proper direction (e.g. PCMCIA maintainer) I'd be much obliged.
-- wli
On Fri, Sep 17, 2004 at 11:01:34PM -0700, William Lee Irwin III wrote:
> Tested this on my laptop, which is a shoddy testing environment because
> it lacks serial devices... no, not all of my boxen are UltraEnterprise,
> AlphaServer, and Altix systems (the Altix isn't even mine, it's werk's).
> But anyway, I got some kind of backtrace in yenta_interrupt, that said
> "stack pointer is garbage, not dumping" or some such, followed by an
As far as "stack pointer is garbage", ISTR that I've seen that some
bug reports, and it looked like the test for that was wrong - ESP
seemed to be within 4K or 8K (I don't remember which) of the reported
stack base.
I think the first step is for someone to check whether the stack
pointer validation code is correct or not.
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> - Added lots of Ingo's low-latency patches
> - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> - Several architecture updates
Fails to boot on my Altix. I'm guessing this is some known issue with
some patch, so hopefully one member of the cc: list has heard of it as
I'm a bit late to the game with this release and ia64. Relevant bootlog
diff between 2.6.9-rc1-mm4 and 2.6.9-rc2 indicates some kind of PCI,
qla1280, ia64/Altix IO support, or ACPI IRQ bogon.
Full diff between 2.6.9-rc2-mm1 and 2.6.9-rc1-mm4 bootlogs and complete
bootlog with 2.6.9-rc2-mm1 included as MIME attachments.
-- wli
--- altix.log.54 2004-09-19 17:39:12.000000000 -0700
+++ altix.log.53 2004-09-19 17:33:25.000000000 -0700
@@ -440,111 +524,21 @@
Loading kernel/drivers/scsi/sd_mod.ko
Loading kernel/drivers/ide/pci/sgiioc4.ko
ACPI: PCI interrupt 0000:01:01.0[A]: no GSI
-SGIIOC4: IDE controller at PCI slot 0000:01:01.0, revision 79
-ide0: BM-DMA at 0xc00000080c200140-0xc00000080c200163
-Probing IDE interface ide0...
-hda: MATSHITADVD-ROM SR-8588, ATAPI CD/DVD-ROM drive
-Using deadline io scheduler
-ide0 at 0xc00000080c200100-0xc00000080c200107,0xc00000080c200120 on irq 55
+Failed to enable device SGIIOC4 at slot 0000:01:01.0
Loading kernel/drivers/scsi/qla1280.ko
qla1280: QLA12160 found on PCI bus 1, dev 3
ACPI: PCI interrupt 0000:01:03.0[A]: no GSI
-scsi(0): Enabling SN2 PCI DMA dual channel lockup workaround
-scsi(0): Enabling SN2 PCI DMA workaround
-scsi(0:0): Resetting SCSI BUS
-scsi(0:1): Resetting SCSI BUS
-scsi0 : QLogic QLA12160 PCI to SCSI Host Adapter
- Firmware version: 10.04.32, Driver version 3.24.4
- Vendor: SGI Model: ST336753LC Rev: 2741
- Type: Direct-Access ANSI SCSI revision: 03
-scsi(0:0:1:0): Sync: period 9, offset 14, Wide, DT, Tagged queuing: depth 255
-SCSI device sda: 71687372 512-byte hdwr sectors (36704 MB)
-SCSI device sda: drive cache: write through
- sda: sda1 sda2 sda3
-Attached scsi disk sda at scsi0, channel 0, id 1, lun 0
- Vendor: SGI Model: ST336753LC Rev: 2741
- Type: Direct-Access ANSI SCSI revision: 03
-scsi(0:0:2:0): Sync: period 9, offset 14, Wide, DT, Tagged queuing: depth 255
-SCSI device sdb: 71687372 512-byte hdwr sectors (36704 MB)
-SCSI device sdb: drive cache: write through
- sdb: sdb1 sdb2 sdb3 sdb4 sdb5
-Attached scsi disk sdb at scsi0, channel 0, id 2, lun 0
+qla1280: Failed to enabled pci device, aborting.
Loading kernel/fs/jbd/jbd.ko
Loading kernel/fs/ext3/ext3.ko
-Waiting for device /dev/sda3 to appear: ok
-rootfs: major=8 minor=3 devn=2051
-warning: can't open /etc/mtab: No such file or directory
-EXT2-fs warning (device sda3): ext2_fill_super: mounting ext3 filesystem as ext2
-
-VFS: Mounted root (ext2 filesystem) readonly.
-Trying to move old root to /initrd ... failed
-Unmounting old root
-Trying to free ramdisk memory ... okay
-Freeing unused kernel memory: 368kB freed
-INIT: version 2.85 booting
-System Boot Control: Running /etc/init.d/boot
-Mounting /proc filesystemdone
-Mounting sysfs on /sysdone
-Mounting /dev/ptsdone
-Configuring serial ports...
-/dev/ttySG0 at 0x0000 (irq = 233) is a 16550A
-Configured serial ports
-[1AdoneMounting shared memory FS on /dev/shmdone
-Activating swap-devices in /etc/fstab...
-Adding 1052144k swap on /dev/sda2. Priority:42 extents:1
-Adding 1052160k swap on /dev/sdb2. Priority:42 extents:1
-[1Adoneshowconsole: Warning: the ioctl TIOCGDEV is not known by the kernel
-Checking root file system...
-fsck 1.34 (25-Jul-2003)
-[/sbin/fsck.ext3 (1) -- /] fsck.ext3 -a /dev/sda3
-/dev/sda3: clean, 473518/4325376 files, 6590955/8644436 blocks
-[1Adonemd: Autodetecting RAID arrays.
-md: autorun ...
-md: ... autorun DONE.
-Activating device mapper...
-device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
-Creating /dev/mapper/control character device with major:10 minor:63.
-done
-Scanning for LVM volume groups...
- Reading all physical volumes. This may take a while...
- No volume groups found
-Activating LVM volume groups...
- No volume groups found
-skipped
-showconsole: Warning: the ioctl TIOCGDEV is not known by the kernel
-Checking file systems...
-fsck 1.34 (25-Jul-2003)
-Checking all file systems.
-[/sbin/fsck.xfs (1) -- /oracle] fsck.xfs -a /dev/sdb3
-[1AdoneSetting updone
-Mounting local file systems...
-proc on /proc type proc (rw)
-tmpfs on /dev/shm type tmpfs (rw)
-devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
-/dev/sda1 on /boot/efi type vfat (rw)
-mount: fs type subfs not supported by kernel
-SGI XFS with ACLs, security attributes, realtime, large block/inode numbers, no debug enabled
-XFS mounting filesystem sdb3
-Ending clean XFS mount for filesystem: sdb3
-/dev/sdb3 on /oracle type xfs (rw)
-none on /tmp type tmpfs (rw)
-[1AfailedLoading required kernel modules
-[1AdoneActivating remaining swap-devices in /etc/fstab...
-[1AdoneRestore device permissionsdone
-Setting up the CMOS clockdone
-Setting up timezone datadone
-Setting scheduling timeslices unused
-Setting up hostname 'ca-test21'done
-Setting up loopback interface lo
- lo IP address: 127.0.0.1/8
-done
-Enabling syn flood protectiondone
-Disabling IP forwardingdone
-done
-Creating /var/log/boot.msg
-
+Waiting for device /dev/sda3 to appear: .....not found -- device nodes:
+console fb0 loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7 md0 null ram ram0 ram1 ram10 ram11 ram12 ram13 ram14 ram15 ram2 ram3 ram4 ram5 ram6 ram7 ram8 ram9 ramdisk tty1 tty2 zero warning: can't open /etc/mtab: No such file or directory
+VFS: Cannot open root device "sda3" or unknown-block(0,0)
+Please append a correct "root=" boot option
+Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
+
telnet> close
Connection closed.
$
-Script done on Sun Sep 19 17:40:18 2004
+Script done on Sun Sep 19 17:34:31 2004
On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> - Added lots of Ingo's low-latency patches
> - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> - Several architecture updates
top(1) shows no tasks on sparc64. Large negative inode numbers appear
to be showing up for /proc/stat and other /proc/ special files on
64-bit irrespective of endianness, and all processes appear to have the
same inode number once again irrespective of endianness. It's unclear
why top(1) enumerates tasks on x86-64 and does not do so on sparc64,
unless 2.6.9-rc2-mm1 shows some behavior procps-3.2.3 is sensitive to
that 3.2.1 is not, or some numbers are overflowing on 32-bit apps but
not 64-bit ones (top(1) is 64-bit on x86-64 but 32-bit on sparc64)
that userspace barfs on and not the kernel (no error returns from
syscalls are visible in strace). ls and cat appear to work where top(1)
does not.
acahalan cc:'d as he last touched fs/proc/.
$ stat /proc/stat
File: `/proc/stat'
Size: 0 Blocks: 0 IO Block: 1024 regular empty file
Device: 3h/3d Inode: -268435443 Links: 1
Access: (0444/-r--r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2004-09-19 18:46:38.246034917 -0700
Modify: 2004-09-19 18:46:38.246034917 -0700
Change: 2004-09-19 18:46:38.246034917 -0700
$ stat /proc/[0-9]*|grep Inode|sort -u -k 4,4
Device: 3h/3d Inode: 2 Links: 3
(the same on x86-64 and sparc64).
-- wli
On Sun, 2004-09-19 at 22:34, William Lee Irwin III wrote:
> On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> > - Added lots of Ingo's low-latency patches
> > - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> > - Several architecture updates
>
> top(1) shows no tasks on sparc64.
It would be nice if I had such a box. I can't even
find a user account on one. I have 32-bit ppc, plus
non-root accounts on alpha, i386, and x86_64 boxes
with obsolete kernels.
> Large negative inode numbers appear
> to be showing up for /proc/stat and other /proc/ special files on
> 64-bit irrespective of endianness, and all processes appear to have the
> same inode number once again irrespective of endianness.
The inode numbering patch looks sane enough...
> It's unclear
> why top(1) enumerates tasks on x86-64 and does not do so on sparc64,
> unless 2.6.9-rc2-mm1 shows some behavior procps-3.2.3 is sensitive to
> that 3.2.1 is not, or some numbers are overflowing on 32-bit apps but
> not 64-bit ones (top(1) is 64-bit on x86-64 but 32-bit on sparc64)
In no place does procps itself care about ino_t.
Perhaps your 32-bit glibc chokes on 64-bit inode numbers.
If so, yuck. It's really sad that we have a zillion
versions of stat(), many with oversize dev_t, and still
we use 32-bit ino_t in many places.
Whether or not that's the problem...
1. install a 64-bit or bi-arch gcc
2. install a 64-bit libc
3. install a 64-bit ncurses
4. install a 64-bit procps
(suggestion: keep going until /bin is done)
That's pretty much it. The procps package goes to
great lengths to compile itself 64-bit, even passing
the -m64 option and installing to /lib64 as needed.
If you've broken this, you get to keep the pieces.
In other words: seriously unsupported
I see no reason why 32-bit SPARC users should have
to suffer the pain of running code bloated up to
handle 64-bit SPARC. The 32-bit SPARC hardware is
slow enough already. Just try to look a 32-bit SPARC
user in the eye and tell him "Your system should run
even slower now, so that my hot new hardware can keep
running old 32-bit executables meant for you"
wli wrote:
> Fails to boot on my Altix.
See a couple of patches on this linux-scsi thread, mostly between Jesse
Barnes and Andrew Vasquez:
SCSI QLA not working on latest *-mm SN2
http://marc.theaimsgroup.com/?l=linux-scsi&m=109537406715003&w=2
Or I got it working (I think - memory fuzzy know) without this patch, by
(1) disabling the CONFIG_SCSI_QLA2[123]?? options, and (2) applying the
following workaround patch:
--- 2.6.9-rc2-mm1.orig/arch/ia64/pci/pci.c 2004-09-16 07:45:58.000000000 -0700
+++ 2.6.9-rc2-mm1/arch/ia64/pci/pci.c 2004-09-16 12:02:34.000000000 -0700
@@ -445,7 +445,7 @@ pcibios_enable_device (struct pci_dev *d
if (ret < 0)
return ret;
- return acpi_pci_irq_enable(dev);
+ return ia64_platform_is("sn2") ? 0 : acpi_pci_irq_enable(dev);
}
void
===
Jesse - could you post on lkml the definitive guide to getting
2.6.9-rc2-mm1 working on Altix?
--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <[email protected]> 1.650.933.1373
On Sun, 2004-09-19 at 22:34, William Lee Irwin III wrote:
>> top(1) shows no tasks on sparc64.
On Mon, Sep 20, 2004 at 12:18:45AM -0400, Albert Cahalan wrote:
> It would be nice if I had such a box. I can't even
> find a user account on one. I have 32-bit ppc, plus
> non-root accounts on alpha, i386, and x86_64 boxes
> with obsolete kernels.
On Sun, 2004-09-19 at 22:34, William Lee Irwin III wrote:
>> Large negative inode numbers appear
>> to be showing up for /proc/stat and other /proc/ special files on
>> 64-bit irrespective of endianness, and all processes appear to have the
>> same inode number once again irrespective of endianness.
On Sun, 2004-09-19 at 22:34, William Lee Irwin III wrote:
> The inode numbering patch looks sane enough...
It may be userspace. stat(1) on SuSE/x86-64 reports large negative
inode numbers and identical inode numbers for all processes similarly
to that of Debian, yet it is compiled as a 64-bit application. So even
with of 64-bit-ness of userspace something has gone wrong.
On Sun, 2004-09-19 at 22:34, William Lee Irwin III wrote:
>> It's unclear
>> why top(1) enumerates tasks on x86-64 and does not do so on sparc64,
>> unless 2.6.9-rc2-mm1 shows some behavior procps-3.2.3 is sensitive to
>> that 3.2.1 is not, or some numbers are overflowing on 32-bit apps but
>> not 64-bit ones (top(1) is 64-bit on x86-64 but 32-bit on sparc64)
On Mon, Sep 20, 2004 at 12:18:45AM -0400, Albert Cahalan wrote:
> In no place does procps itself care about ino_t.
> Perhaps your 32-bit glibc chokes on 64-bit inode numbers.
> If so, yuck. It's really sad that we have a zillion
> versions of stat(), many with oversize dev_t, and still
> we use 32-bit ino_t in many places.
> Whether or not that's the problem...
> 1. install a 64-bit or bi-arch gcc
> 2. install a 64-bit libc
> 3. install a 64-bit ncurses
> 4. install a 64-bit procps
> (suggestion: keep going until /bin is done)
> That's pretty much it. The procps package goes to
> great lengths to compile itself 64-bit, even passing
> the -m64 option and installing to /lib64 as needed.
> If you've broken this, you get to keep the pieces.
I didn't touch this. Also, procps FTBFS on sparc64; I see no evidence
of passing -m64 or whatever to either the compilation or linking phase
in virgin procps. It gets better, though. On SuSE's x86-64 userspace,
procps and stat(1) are compiled 64-bit yet the inode numbers overflow,
as all /proc/$PID entries have identical inode numbers as reported.
So you may be getting bitten by -EOVERFLOW from 32-bit emulated stat(2)
or otherwise glibc's struct stat sans O_LARGEFILE, even though I
couldn't see it with strace(1). Perhaps silent truncation is going on
for the case of inode numbers that would overflow 32-bit integers. IIRC
stat(2) will be replaced by stat64(2) if O_LARGEFILE is passed, which
should probably be done for this case. Having made this a requirement
for 32-bit apps on 64-bit systems may be considered undesirable.
Perhaps a method of generating inode numbers different from assigning
fixed numerical ranges to tasks of a given pid would be more
appropriate, particularly as you've observed that numbers so large in
absolute terms have undesirable side effects. It's likewise readily
observable that these inode number space reservations are ridiculous
for systems running well under 100 tasks.
x86-64 and ia64 are highly unusual in that 64-bit compilation is
useful for basic apps, and alpha an exception in that it has no 32-bit
ABI; for most 64-bit architectures making such large fractions of
userspace 64-bit applictions is undesirable.
Furthermore, this bit of userspace policy isn't my decision and I don't
care to override it, particularly as it would break automated upgrades.
I just don't dork around much with userspace. Maintainers of the Debian
procps package and sparc64 Debian kernel package cc:'d here, as they do
care somewhat more and make more of the decisions. I'm not sure who the
SuSE counterparts are, but they surely have similar concerns as their
userspace is likewise affected.
On Mon, Sep 20, 2004 at 12:18:45AM -0400, Albert Cahalan wrote:
> In other words: seriously unsupported
> I see no reason why 32-bit SPARC users should have
> to suffer the pain of running code bloated up to
> handle 64-bit SPARC. The 32-bit SPARC hardware is
> slow enough already. Just try to look a 32-bit SPARC
> user in the eye and tell him "Your system should run
> even slower now, so that my hot new hardware can keep
> running old 32-bit executables meant for you"
It's UltraSPARC. 32-bit userspace is used there. Recompiling top(1) as
a 64-bit app produces nonempty process lists.
And telling sparc32 users that has already been done for far more
severe slowdowns, in particular udiv emulation. Proper use of
O_LARGEFILE etc. is actually unlikely to hurt sparc32 in any
significant way, as it has a decent number of registers, unlike the
32-bit counterparts of some architectures for whose sake O_LARGEFILE is
omitted where considered feasible. On the contrary, compiling it 64-bit
would be a minor (though I can't imagine it being significant) slowdown
for users of UltraSPARC (the 64-bit cpus). O_LARGEFILE for 32-bit apps
is far more likely to hurt x86 biarch userspace than SPARC or other
standard 64-bit architectures' biarch userspace, though in that case it
would still be unusual, as its policy is generally 64-bit by default.
-- wli
On Mon, 2004-09-20 at 03:47, William Lee Irwin III wrote:
> On Sun, 2004-09-19 at 22:34, William Lee Irwin III wrote:
> >> top(1) shows no tasks on sparc64.
>
> On Mon, Sep 20, 2004 at 12:18:45AM -0400, Albert Cahalan wrote:
> > It would be nice if I had such a box. I can't even
> > find a user account on one. I have 32-bit ppc, plus
> > non-root accounts on alpha, i386, and x86_64 boxes
> > with obsolete kernels.
> On Mon, Sep 20, 2004 at 12:18:45AM -0400, Albert Cahalan wrote:
> > In no place does procps itself care about ino_t.
> > Perhaps your 32-bit glibc chokes on 64-bit inode numbers.
> > If so, yuck. It's really sad that we have a zillion
> > versions of stat(), many with oversize dev_t, and still
> > we use 32-bit ino_t in many places.
> > Whether or not that's the problem...
> > 1. install a 64-bit or bi-arch gcc
> > 2. install a 64-bit libc
> > 3. install a 64-bit ncurses
> > 4. install a 64-bit procps
> > (suggestion: keep going until /bin is done)
> > That's pretty much it. The procps package goes to
> > great lengths to compile itself 64-bit, even passing
> > the -m64 option and installing to /lib64 as needed.
> > If you've broken this, you get to keep the pieces.
>
> I didn't touch this. Also, procps FTBFS on sparc64; I see no evidence
> of passing -m64 or whatever to either the compilation or linking phase
> in virgin procps.
Debian compiles sparc and sparc64 on the same box,
and fails to distinguish them. Therefore, Debian
disables -m64 during the build. The package itself
will disable -m64 if it is unable to successfully
link a dummy.c file with ncurses when using it.
If you compile from the *.tar.gz file and have a
working 64-bit ncurses, you should get a 64-bit
executable. If you don't, please tell me what I
need to do to make it work.
> It gets better, though. On SuSE's x86-64 userspace,
> procps and stat(1) are compiled 64-bit yet the inode numbers overflow,
> as all /proc/$PID entries have identical inode numbers as reported.
Hmmm... who cares about the inode numbers?
If the answer is "glibc readdir", then the numbers
should be taken from distinct number spaces for the
/proc, /proc/*/task, and /proc/*/fd directories.
Re-use within a directory may be the most trouble.
If it's not even that, then the fake_ino() macro
shouldn't pretend that the numbers matter. Simply
make it be a constant.
> x86-64 and ia64 are highly unusual in that 64-bit compilation is
> useful for basic apps, and alpha an exception in that it has no 32-bit
> ABI; for most 64-bit architectures making such large fractions of
> userspace 64-bit applictions is undesirable.
MIPS at least has N32, which is a distinct ABI for
the ILP32 model on 64-bit hardware. This offers the
best performance while not making 32-bit users suffer.
> On Mon, Sep 20, 2004 at 12:18:45AM -0400, Albert Cahalan wrote:
> > In other words: seriously unsupported
> > I see no reason why 32-bit SPARC users should have
> > to suffer the pain of running code bloated up to
> > handle 64-bit SPARC. The 32-bit SPARC hardware is
> > slow enough already. Just try to look a 32-bit SPARC
> > user in the eye and tell him "Your system should run
> > even slower now, so that my hot new hardware can keep
> > running old 32-bit executables meant for you"
>
> It's UltraSPARC. 32-bit userspace is used there. Recompiling top(1) as
> a 64-bit app produces nonempty process lists.
>
> And telling sparc32 users that has already been done for far more
> severe slowdowns, in particular udiv emulation.
You mean it traps instead of directly calling
a routine in libgcc?
Admittedly on x86, profiling has shown that handling
64-bit values with a 32-bit ABI is truly horrible.
So both sparc and sparc64 are being hurt if 32-bit
sparc binaries have to support 64-bit kernels.
If 32-bit is so good, you'll want to get a 32-bit
kernel on your hardware ASAP.
> Proper use of
> O_LARGEFILE etc. is actually unlikely to hurt sparc32 in any
> significant way, as it has a decent number of registers,
More than O_LARGEFILE would be involved.
All the /proc parsing code would have to be 64-bit.
The overhead of strtoull() and the libgcc division
functions is really bad. It can show up at the top
of a profile.
Here's just a small amount of 64-bit usage:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ns/call ns/call name
16.26 0.20 0.20 __udivdi3
That was merely an accidental 64-bit usage. It gets
far, far worse when trying to support a 64-bit kernel
from a 32-bit app.
On Fri, Sep 17, 2004 at 03:29:51PM -0400, [email protected] wrote:
> I admit not knowing the memory manager or the NVidia well enough to know what
> they *should* be doing instead.....
this is some ugly code. we're doing a lookup on a physical address to
see if this is memory we previously allocated and returning a kernel
pointer to the page.
the particular snippet in question (that uses MAXMEM) is an ugly attempt
to verify the address is a real physical address, before using __va()
on something like an i/o region. A better approach than comparing
MAXMEM would probably be to convert the address to a mapnr and compare
to max_mapnr.
I'll clean up this code and post a patch in the next couple of days.
in the meantime, the current patches out there should be good.
Thanks,
Terence
Magnus M??tt? <[email protected]> wrote:
>
> I'm getting
> *** Warning: "afs_file_page_mkwrite" [fs/afs/kafs.ko] undefined!
> when I build the kernel.
>
> If I remove make-afs-use-cachefs.patch it works just fine.
Like this, I guess.
--- 25/fs/afs/file.c~afs-cachefs-dependency-fix 2004-09-20 10:56:28.714441752 -0700
+++ 25-akpm/fs/afs/file.c 2004-09-20 10:57:39.770639568 -0700
@@ -33,7 +33,9 @@ static int afs_file_releasepage(struct p
static ssize_t afs_file_write(struct file *file, const char __user *buf,
size_t size, loff_t *off);
+#ifdef CONFIG_AFS_CACHEFS
static int afs_file_page_mkwrite(struct page *page);
+#endif
struct inode_operations afs_file_inode_operations = {
.getattr = afs_inode_getattr,
@@ -56,7 +58,9 @@ struct address_space_operations afs_fs_a
.set_page_dirty = __set_page_dirty_nobuffers,
.releasepage = afs_file_releasepage,
.invalidatepage = afs_file_invalidatepage,
+#ifdef CONFIG_AFS_CACHEFS
.page_mkwrite = afs_file_page_mkwrite,
+#endif
};
/*****************************************************************************/
_
Terence Ripperda <[email protected]> writes:
> this is some ugly code. we're doing a lookup on a physical address to
> see if this is memory we previously allocated and returning a kernel
> pointer to the page.
>
> the particular snippet in question (that uses MAXMEM) is an ugly attempt
> to verify the address is a real physical address, before using __va()
> on something like an i/o region. A better approach than comparing
> MAXMEM would probably be to convert the address to a mapnr and compare
> to max_mapnr.
pfn_valid() is intended for that. However it cannot work
when you have more than 4GB memory and IO memory holes below 4GB.
Testing the reserved bit of the struct page * may work in
that case, although it can give false positives when you try
this with random memory (some people set reserved on real memory
for other reason)
-Andi
Hi Andrew,
Sent first mail with wrong mail address..
On Monday 20 September 2004 19.58, Andrew Morton wrote:
> Magnus M??tt? <[email protected]> wrote:
> > I'm getting
> > *** Warning: "afs_file_page_mkwrite" [fs/afs/kafs.ko] undefined!
> > when I build the kernel.
> >
> > If I remove make-afs-use-cachefs.patch it works just fine.
>
> Like this, I guess.
>
> --- 25/fs/afs/file.c~afs-cachefs-dependency-fix 2004-09-20
> 10:56:28.714441752 -0700 +++ 25-akpm/fs/afs/file.c 2004-09-20
> 10:57:39.770639568 -0700
> @@ -33,7 +33,9 @@ static int afs_file_releasepage(struct p
>
> static ssize_t afs_file_write(struct file *file, const char __user *buf,
> size_t size, loff_t *off);
> +#ifdef CONFIG_AFS_CACHEFS
> static int afs_file_page_mkwrite(struct page *page);
> +#endif
>
> struct inode_operations afs_file_inode_operations = {
> .getattr = afs_inode_getattr,
> @@ -56,7 +58,9 @@ struct address_space_operations afs_fs_a
> .set_page_dirty = __set_page_dirty_nobuffers,
> .releasepage = afs_file_releasepage,
> .invalidatepage = afs_file_invalidatepage,
> +#ifdef CONFIG_AFS_CACHEFS
> .page_mkwrite = afs_file_page_mkwrite,
> +#endif
> };
>
>
> /*****************************************************************************/
That fixed it, thanks!
/Magnus
On Mon, 2004-09-20 at 03:47, William Lee Irwin III wrote:
>> I didn't touch this. Also, procps FTBFS on sparc64; I see no evidence
>> of passing -m64 or whatever to either the compilation or linking phase
>> in virgin procps.
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> Debian compiles sparc and sparc64 on the same box,
> and fails to distinguish them. Therefore, Debian
> disables -m64 during the build. The package itself
> will disable -m64 if it is unable to successfully
> link a dummy.c file with ncurses when using it.
> If you compile from the *.tar.gz file and have a
> working 64-bit ncurses, you should get a 64-bit
> executable. If you don't, please tell me what I
> need to do to make it work.
Reread the above.
I used make CC="gcc -m64" to make it work on the pristine sources.
It did not work on pristine sources otherwise.
On Mon, 2004-09-20 at 03:47, William Lee Irwin III wrote:
>> It gets better, though. On SuSE's x86-64 userspace,
>> procps and stat(1) are compiled 64-bit yet the inode numbers overflow,
>> as all /proc/$PID entries have identical inode numbers as reported.
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> Hmmm... who cares about the inode numbers?
> If the answer is "glibc readdir", then the numbers
> should be taken from distinct number spaces for the
> /proc, /proc/*/task, and /proc/*/fd directories.
> Re-use within a directory may be the most trouble.
> If it's not even that, then the fake_ino() macro
> shouldn't pretend that the numbers matter. Simply
> make it be a constant.
I don't need to answer this beyond "stock userspace pukes on it".
The patch writer bears the burden of proof.
On Mon, 2004-09-20 at 03:47, William Lee Irwin III wrote:
>> x86-64 and ia64 are highly unusual in that 64-bit compilation is
>> useful for basic apps, and alpha an exception in that it has no 32-bit
>> ABI; for most 64-bit architectures making such large fractions of
>> userspace 64-bit applictions is undesirable.
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> MIPS at least has N32, which is a distinct ABI for
> the ILP32 model on 64-bit hardware. This offers the
> best performance while not making 32-bit users suffer.
For whatever merits the n32 ABI may have, biarch userspace generally
involves reusing most of the 32-bit userspace.
On Mon, 2004-09-20 at 03:47, William Lee Irwin III wrote:
>> It's UltraSPARC. 32-bit userspace is used there. Recompiling top(1) as
>> a 64-bit app produces nonempty process lists.
>> And telling sparc32 users that has already been done for far more
>> severe slowdowns, in particular udiv emulation.
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> You mean it traps instead of directly calling
> a routine in libgcc?
Yes. There is some instruction that's emulated (udiv) instead of having
library calls generated.
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> Admittedly on x86, profiling has shown that handling
> 64-bit values with a 32-bit ABI is truly horrible.
> So both sparc and sparc64 are being hurt if 32-bit
> sparc binaries have to support 64-bit kernels.
sparc32 is legacy enough that the true 32-bit systems are
irrelevant as performance considerations. I also very explicitly
discussed the ia32 case being the sole exception among all emulated
32-bit ABI's; it is so grossly inferior the 64-bit ABI dominates it in
performance as it does nowhere else.
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> If 32-bit is so good, you'll want to get a 32-bit
> kernel on your hardware ASAP.
This may be one reason why non-Linux kernels have chosen to use 32-bit
kernels on 64-bit cpus in various instances. But in general this
assertion is pure gibberish. That's not how biarch userspace is done;
if you care to change that, petition the distribution maintainers.
As for e.g. UltraSPARC userspace, it doesn't come any other way but
biarch and mostly 32-bit. If you would like to petition distributions
to ship procps as 64-bit those Debian project members I added to the
cc: list here may be relevant.
On Mon, 2004-09-20 at 03:47, William Lee Irwin III wrote:
>> Proper use of
>> O_LARGEFILE etc. is actually unlikely to hurt sparc32 in any
>> significant way, as it has a decent number of registers,
On Mon, Sep 20, 2004 at 11:00:47AM -0400, Albert Cahalan wrote:
> More than O_LARGEFILE would be involved.
> All the /proc parsing code would have to be 64-bit.
> The overhead of strtoull() and the libgcc division
> functions is really bad. It can show up at the top
> of a profile.
> Here's just a small amount of 64-bit usage:
> Each sample counts as 0.01 seconds.
> % cumulative self self total
> time seconds seconds calls ns/call ns/call name
> 16.26 0.20 0.20 __udivdi3
> That was merely an accidental 64-bit usage. It gets
> far, far worse when trying to support a 64-bit kernel
> from a 32-bit app.
This is undoubtedly architecture-specific. I am thoroughly unimpressed
by ia32 results. The effect of double-precision arithmetic on inferior,
register-starved ISA's/ABI's is very predictable and not applicable to
any other architecture. Also, your concerns have been expressed before
and are motivators of the canonical -D_FILE_OFFSET_BITS=64 arrangement,
where apps do not explicitly use any 64-bit types or 64-bit aware
library routines, but are rather redirected to such depending on whether
-D_FILE_OFFSET_BITS=64 is passed as a compilation flag or not.
I strongly suggest the following:
(a) Stop fiddling with the compilation flags since it doesn't work
anyway and is undone by packagers just to get it to build.
Furthermore, they also find your attempt to force 64-bit
compilation undesirable. As a reminder, the compiletest
demonstrating build failure from prior posts was on pristine
sources, not Debian-altered sources.
(b) Make O_LARGEFILE a compile-time option; merely use off_t etc. instead
of unsigned long and the types and fs syscalls will be switched
between single and double precision depending on whether
-D_FILE_OFFSET_BITS=64 is used. No overhead will be created
for 32-bit ia32 unless someone is so foolish as to e.g. use
-D_FILE_OFFSET_BITS=64 on an inferior, register-starved ISA/ABI.
(c) The compiler spews more warnings than are reasonable, and some of
them are likely bugs. Cleaning those up may help.
(d) If your patch is triggering some bug in glibc, diagnose it and send
a bugreport to glibc maintainers.
(e) This should have been rather easily anticipated given that you're
shifting (pid+1) << BITS_PER_LONG/2. I expect the maintainers
of most/all arches with 32-bit emulation (essentially all
64-bit except alpha) to have conniption fits if this gets
anywhere near mainline. Such shifts are tantamount to 32-bit
emulated stat(2) always returning -EOVERFLOW in lieu of results.
-- wli
On Mon, Sep 20, 2004 at 02:01:59PM -0700, William Lee Irwin III wrote:
> (e) This should have been rather easily anticipated given that you're
> shifting (pid+1) << BITS_PER_LONG/2. I expect the maintainers
> of most/all arches with 32-bit emulation (essentially all
> 64-bit except alpha) to have conniption fits if this gets
> anywhere near mainline. Such shifts are tantamount to 32-bit
> emulated stat(2) always returning -EOVERFLOW in lieu of results.
I've confirmed that backing out fake_ino-fixes.patch repairs 32-bit
emulated userspace.
akpm, please back out fake_ino-fixes.patch.
-- wli
On Sunday, September 19, 2004 9:37 pm, Paul Jackson wrote:
> wli wrote:
> > Fails to boot on my Altix.
>
> See a couple of patches on this linux-scsi thread, mostly between Jesse
> Barnes and Andrew Vasquez:
>
> SCSI QLA not working on latest *-mm SN2
> http://marc.theaimsgroup.com/?l=linux-scsi&m=109537406715003&w=2
>
> Or I got it working (I think - memory fuzzy know) without this patch, by
> (1) disabling the CONFIG_SCSI_QLA2[123]?? options, and (2) applying the
> following workaround patch:
You'll need the patch you posted (or its equivalent, see my earlier reply to
Andrew's announcement) to boot. You'll need the qla patches I posted to use
qla2xxx adapters.
Jesse
On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> - Added lots of Ingo's low-latency patches
> - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> - Several architecture updates
Sorry to bother you again. I appear to get this after a couple days of
uptime:
# ----------- [cut here ] --------- [please bite here ] ---------
Kernel BUG at cfq_iosched:1395
invalid operand: 0000 [1] SMP
CPU 0
Modules linked in: st sr_mod floppy usbserial parport_pc lp parport snd_seq_oss snd_seq_device snd_seq_midi_event snd_seq thermal snd_pcm_oss snd_mixer_oss snd_ioctl32 processor fan button battery snd_intel8x0 snd_ac97_codec snd_pcm ipv6 snd_timer ac snd soundcore snd_page_alloc af_packet joydev usbhid uhci_hcd e1000 usbcore hw_random evdev dm_mod ext3 jbd aic79xx ata_piix libata sd_mod scsi_mod
Pid: 0, comm: swapper Not tainted 2.6.9-rc2-mm1
RIP: 0010:[<ffffffff802909cb>] <ffffffff802909cb>{cfq_put_request+139}
RSP: 0018:ffffffff804c9848 EFLAGS: 00010046
RAX: 0000000000000000 RBX: 000001017e1d0040 RCX: 000001017e23a0c0
RDX: 0000000000000001 RSI: 0000010132292990 RDI: 000001017e4b2ef8
RBP: 000001017e9e6968 R08: 0000000000000002 R09: 0000000000800110
R10: 0000000000000001 R11: 0000010006466560 R12: 000001017ff68c08
R13: 0000010132292990 R14: 000001017ffdf100 R15: 0000000000000200
FS: 0000000000000000(0000) GS:ffffffff8054d900(0000) knlGS:0000000000000000
CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b
CR2: 0000002a9b7f4000 CR3: 0000000000101000 CR4: 00000000000006e0
Process swapper (pid: 0, threadinfo ffffffff80550000, task ffffffff8041dc80)
Stack: 0000010132292990 000001017e1d0040 0000000000000001 0000000000000001
000001017e1d0040 ffffffff802850cf 000001015e4bfc80 ffffffff80287a4b
0000010132292990 0000010037c1c800
Call Trace:<IRQ> <ffffffff802850cf>{elv_put_request+15} <ffffffff80287a4b>{__blk_put_request+139}
<ffffffff80287b83>{end_that_request_last+243} <ffffffffa0006178>{:scsi_mod:scsi_end_request+200}
<ffffffffa00063f0>{:scsi_mod:scsi_io_completion+576}
<ffffffffa0000506>{:scsi_mod:scsi_finish_command+214}
<ffffffffa0000e4a>{:scsi_mod:scsi_softirq+234} <ffffffff8013da51>{__do_softirq+113}
<ffffffff8013db05>{do_softirq+53} <ffffffff80113f1f>{do_IRQ+335}
<ffffffff80110d27>{ret_from_intr+0} <EOI> <ffffffff8010f5a6>{mwait_idle+86}
<ffffffff8010f9fd>{cpu_idle+29} <ffffffff8055371a>{start_kernel+490}
<ffffffff805531e0>{_sinittext+480}
Code: 0f 0b e7 9d 38 80 ff ff ff ff 73 05 ff c8 48 89 ef 41 89 44
RIP <ffffffff802909cb>{cfq_put_request+139} RSP <ffffffff804c9848>
<0>Kernel panic - not syncing: Aiee, killing interrupt handler!
On Thu, Sep 23 2004, William Lee Irwin III wrote:
> On Thu, Sep 16, 2004 at 02:40:20AM -0700, Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc2/2.6.9-rc2-mm1/
> > - Added lots of Ingo's low-latency patches
> > - Lockmeter doesn't compile. Don't enable CONFIG_LOCKMETER.
> > - Several architecture updates
>
> Sorry to bother you again. I appear to get this after a couple days of
> uptime:
>
> # ----------- [cut here ] --------- [please bite here ] ---------
> Kernel BUG at cfq_iosched:1395
is it the !allocated[rw] test again?
--
Jens Axboe
On Thu, Sep 23 2004, William Lee Irwin III wrote:
>> Sorry to bother you again. I appear to get this after a couple days of
>> uptime:
>> # ----------- [cut here ] --------- [please bite here ] ---------
>> Kernel BUG at cfq_iosched:1395
On Fri, Sep 24, 2004 at 09:11:23AM +0200, Jens Axboe wrote:
> is it the !allocated[rw] test again?
I am unfortunately completely oblivious to bdev handling code. In
2.6.9-rc2-mm1 this corresponds to (whitespace not preserved):
1390 BUG_ON(!hlist_unhashed(&crq->hash));
1391
1392 if (crq->io_context)
1393 put_io_context(crq->io_context->ioc);
1394
1395 BUG_ON(!cfqq->allocated[crq->is_write]);
1396 cfqq->allocated[crq->is_write]--;
1397
1398 mempool_free(crq, cfqd->crq_pool);
1399 rq->elevator_private = NULL;
-- wli
On Fri, 2004-09-17 at 02:50, Len Brown wrote:
> On Fri, 2004-09-17 at 01:18, Protasevich, Natalie wrote:
> > > On Thursday 16 September 2004 11:14 am, Jesse Barnes wrote:
> > > > On Thursday, September 16, 2004 2:40 am, Andrew Morton wrote:
> > > > bk-acpi.patch
> > > >
> > > > Looks like some changes in this patch break sn2. In particular,
> > this
> > > > hunk in acpi_pci_irq_enable():
> > > >
> > > > - return_VALUE(0);
> > > > + return_VALUE(-EINVAL);
> > > >
> I think the patch has pointed out that this routine really should be returning 0
> for success and non zero for failure; and returning dev->irq was
> probably a latent bug all along.
Jesse,
I think this one is correct, please let me know if you have any trouble
with it.
thanks,
-Len