Skip to contentSkip to conversation

2.6.10-rc1-mm3

PATCH New Andrew Morton 22 participants 47 messages Nov 5, 2004 – Nov 16, 2004

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

- Added Andi's 4-level-pagetable patches. It's tested on x86, x86_64, ia64 and ppc64. These are fairly intrusive patches and I'll probably push them upstream soon.

- UML updates, ppc64 updates.

- Should fix a few bugs which people reported in 2.6.10-rc1-mm2.

Changes since 2.6.10-rc1-mm2:

linus.patch
bk-acpi.patch
bk-agpgart.patch
bk-cifs.patch
bk-cpufreq.patch
bk-driver-core.patch
bk-drm.patch
bk-i2c.patch
bk-ia64.patch
bk-ide-dev.patch
bk-input.patch
bk-dtor-input.patch
bk-jfs.patch
bk-kbuild.patch
bk-kbuild-utsname-fix.patch
bk-netdev.patch
bk-ntfs.patch
bk-pci.patch
bk-scsi.patch
bk-watchdog.patch

External BK trees

-direct-io-write-memory-leak-fix.patch -add-typechecking-to-suspend-types-and-powerdown-types.patch -key_init-ordering-fix.patch
-acpi_processor_start-fix.patch -acpi_processor_add-warning-fix.patch -swapper_space-warning-suppression.patch -use-mmiowb-in-tg3_poll.patch -x25-stop-x25_destroy_socket-timer-looping.patch -ethertap-debug-no-newline.patch -x25-stop-proc-net-x25-route-infinitely.patch -x25-dont-log-unknown-frame-type-when.patch -avoid-warning-on-conntrack_stat_inc-in-destroy_conntrack.patch -ppc32-fix-ppc4xx_progress-warnings.patch -ppc32-fix-boot-on-powermac.patch -ppc64-iseries-fix-for-generic-irq-changes.patch -ppc64-setup-cpu_sibling_map-on-iseries.patch -ppc64-enable-maple-ide-fixup.patch -x86_64-fix-safe_smp_processor_id-after-genapic.patch -x86_64-fix-warning-in-genapic.patch -m32r-fix-a-typo-of-delayc.patch -uml-fix-mainline-lazyness-about-tty-layer-patch.patch -ext3_rsv_cleanup.patch
-ext3_rsv_base.patch
-ext3-reservation-default-on.patch -ext3-lazy-discard-reservation-window-patch.patch -ext3-reservations-spelling-fixes.patch -ext3-reservations-renumber-the-ext3-reservations-ioctls.patch -ext3-reservations-remove-unneeded-declaration.patch -ext3-reservations-turn-ext3-per-sb-reservations-list-into-an-rbtree.patch -ext3-reservations-split-the-reserve_window-struct-into-two.patch -ext3-reservations-smp-protect-the-reservation-during-allocation.patch -ext3-rsv-use-before-initialise-fix.patch -ext3-reservations-window-allocation-fix.patch -ext3-reservation-window-size-increase-incorrectly-fix.patch -ext3_reservation_window_fix_fix.patch -ext3-reservation-remove-stale-window-fix.patch -ext3-reservation-allow-turn-off-for-specifed-file.patch -ext3-reservation-skip-allocation-in-a-full-group.patch -ext3-online-resize-patch.patch
-ext3_bread-cleanup.patch -fbdev-convert-module_parm-to-module_param-in-i810fb.patch -fbdev-remove-module-parameter-disabled-from-savagefb.patch -fbdev-convert-module_parm-to-module_param-in-intelfb.patch -fbdev-convert-module_parm-to-module_param-in-neofb.patch -fbdev-fix-io-access-in-neofb.patch -fbdev-add-__iomem-annotations-to-sstfb.patch -fbdev-add-__iomem-annotations-to-tdfxfb.patch -fbdev-do-not-memset-the-framebuffer-memory-in-asiliantfb.patch -fbdev-add-__iomem-annotations-to-cyber2000fb.patch -fbdev-add-__iomem-annotations-to-pm2fb.patch -fbdev-add-__iomem-annotations-to-hgafb.patch -fbdev-add-__iomem-annotations-to-cirrusfb.patch -fbdev-add-__iomem-annotations-to-vfb.patch -fbdev-check-if-cursor-image-has-changed-in-intelfb.patch -fbdev-maintainership.patch
-use-mmiowb-in-tg3c.patch -export-power_status-parameter-through-sysfs.patch -unwind-information-fix-for-the-vsyscall-dso.patch -make-dnotify-a-configure-time-option.patch -make-dnotify-a-configure-time-option-embedded.patch -convert-pipefs-to-fs_initcall.patch -fix-deprecated-module_parm-for-capi-subsystem.patch -documentation-cpqarraytxt-update.patch -documentation-mkdevida-removal.patch

Merged

+fix-hpet-time_interpolator-registration.patch

HPET fix

+4level-architecture-changes-for-alpha.patch +4level-architecture-changes-for-arm.patch +4level-core-patch.patch +4level-architecture-changes-for-cris.patch +4level-convert-drm-to-4levels.patch +4level-add-asm-generic-support-for-emulating.patch +4level-ia64-support.patch +4level-architecture-changes-for-i386.patch +4level-architecture-changes-for-m32r.patch +4level-architecture-changes-for-ppc.patch +4level-architecture-changes-for-ppc64.patch +4level-architecture-changes-for-s390.patch +4level-architecture-changes-for-sh.patch +4level-architecture-changes-for-sh64.patch +4level-architecture-changes-for-sparc.patch +4level-architecture-changes-for-sparc64.patch +4level-architecture-changes-for-x86_64.patch

4-level pagetables

+compat-syscalls-naming-standardisation.patch
+compat-syscalls-naming-standardisation-fix.patch

compat syscall fixes for parisc

+icom-makefile-fix.patch

icom serial driver fix

+unexport-lock_page.patch

Unneeded export

+fix-duplicate-config-for-ia64_mca_recovery.patch

ia64 config fix

+mm-higher-order-watermarks-fix.patch

page reclaim fix

+prio_tree-fix-prio_tree_expand-corner-c.patch
+prio_tree-add-documentation-prio_treetxt.patch

priotree oops fixes

+fix-find_next_best_node.patch

numa fix

+more-hardirqh-consolidation.patch

irq cleanups

+arcnet-fixes-fix.patch

fix the arcnet fixes

+e1000-stop-working-after-resume.patch
+fix-for-8023ad-shutdown-issue.patch

net driver fixes

+ppc32-cpm2-bug.patch
+ppc32-add-support-for-sandpoint-x2.patch
+fix-pmac_zilog-as-console.patch

ppc32 things

+ppc64-iseries-iommu-cleanups.patch +ppc64-vio-iommu-table-property-parsing-wrong.patch +ppc64-add-option-for-oprofile-to-backtrace-through-spinlocks.patch +ppc64-iommu-fixes-round-3.patch +ppc64-iseries_pcic-use-for_each_pci_dev.patch +ppc64-pmac_pcic-replace-pci_find_device-with-pci_get_device.patch +ppc64-pseries_pcic-use-for_each_pci_dev.patch +ppc64-pseries_iommuc-use-for_each_pci_dev.patch +ppc64-u3_iommuc-use-for_each_pci_dev.patch

ppc64 things

-fix-iounmap-and-a-pageattr-memleak-x86-and-x86-64.patch

This is sick

+up-local-apic-bootstrap-cleanup.patch +x86-x86_64-only-handle-system-nmis-on-the-bsp.patch +ptrace-pokeusr-add-comment-about-the-dr7-check.patch

x86 fixes

+x86_64-add-p4-clockmod.patch

x86_64 Kconfig fix

+m32r-fix-arch-m32r-lib-memsets.patch
+m32r-fix-for-use-of-mappi-pcc.patch

m32r fixes

+uml-fix-ptrace-hang-on-269-host-due-to-host-changes.patch +uml-some-comments-about-forcing-bin-bash.patch +uml-add-startup-check-for-mmapprot_exec-from-tmp.patch +uml-fix-syscall-auditing.patch +uml-fix-symbol-conflict-in-linking.patch +uml-cleanup-header-names.patch +uml-remove-useless-inclusion.patch +uml-no-duplicate-current_thread-definition.patch +uml-mconsole_proc-simplify-and-partial-fix.patch +uml-catch-eintr-in-generic_console_write.patch +uml-remove-sigprof-from-change_signals.patch +umluse-kallsyms-when-dumping-stack.patch +uml-revert-compile-only-changes-for-other-ones.patch +uml-fix-sysemu-test-at-startup.patch +uml-more-careful-test-startup.patch +uml-use-ptrace_sysemu-also-for-tt-mode.patch +uml-lots-of-little-fixes-by-jeff-dike.patch +uml-clear-errno-in-catch_eintr.patch +uml-readd-linux-makefile-target-fixes-to-the-old-version.patch +uml-add-missing-newline-in-help-string.patch +uml-update-atomich-so-uml-builds-cleanly.patch +uml-handle-signal-api.patch +uml-sysenter-is-syscall.patch +uml-generic-singlestep-syscall.patch +uml-generic-singlestepping.patch +uml-clear-singlestep.patch +uml-dont-check-nr_syscalls.patch +uml-set-dtrace-correctly.patch

UML updates

+pcmcia-module_refcount-oops-fix.patch

Fix the PCMCIA patches in -mm

+kgdb-x86_64-serial-fix.patch

Update kgdb stub for serial changes

+fix-cpm2-uart-driver-device-number-brain-damage.patch

serial driver fix

+sched-reset-cache_hot_time.patch

Unbreak the sched-domains tuning

-sched-mm-fix-scheduling-latencies-in-copy_page_range.patch -fix-config_debug_highmem-assert-in-copy_page_range.patch

The 4level patches broke these

+v4l-mxb-driver-and-i2c-helper-cleanup.patch +v4l-keep-tvaudio-driver-away-from-saa7146.patch +meye-module-related-fixes.patch +meye-replace-homebrew-queue-with-kfifo.patch +meye-picture-depth-is-in-bits-not-in-bytes.patch +meye-do-lock-properly-when-waiting-for-buffers.patch +meye-implement-non-blocking-access-using-poll.patch +meye-cleanup-init-exit-paths.patch +meye-the-driver-is-no-longer-experimental-and-depends-on-pci.patch +meye-module-parameters-documentation-fixes.patch +meye-add-v4l2-support.patch +meye-whitespace-and-coding-style-cleanups.patch +meye-bump-up-the-version-number.patch +meye-cache-the-camera-settings-in-the-driver.patch +sonypi-documentation-fixes.patch +pcmcia-network-drivers-cleanup.patch +videodev2h-patchlet.patch

Various video driver updates

+kexec-kexecx86_64-4level-fix.patch

Fix kexec for the 4level patches

+kexec-loading-kernel-from-non-default-offset-fix.patch

kexec fix

+reiser4-rename-key_init.patch

reiser4 namespace clash fix

+mpsc-driver-patch.patch

Fix this serial driver

+make-acpi_bus_register_driver-consistent-with-pci_register_driver-again.patch +make-acpi_bus_register_driver-consistent-with-pci_register_driver-again-warning-fix.patch

ACPI fixes

+make-cancel_rearming_delayed_workqueue-static.patch

namespace cleanup

+remove-journal-callback-code-from-jbd.patch

dead code

+no-buddy-bitmap-patch-revisit-for-mm-page_allocc-fix.patch

Fix the page allocator rework

+o_direct-fix-again.patch

Hopefully get the direct-io fix done right. Should fix the LVM setup problems people have been reporting.

+fbcon-do-not-touch-hardware-if-vc_mode-=-kd_text.patch +fbdev-fix-access-to-rom-in-aty128fb.patch +fbdev-fix-io-access-in-rivafb.patch +fbcon-add-box-drawing-glyphs-to-6x11-font.patch +fbdev-fix-source-copy-bug-in-neofb.patch +fbcon-fbdev-remove-fbcon-specific-fields-from-struct-fb_info.patch +fbdev-atyfb_basec-requires-atyfb_cursor.patch +fix-atyfb-cursor-problems.patch +fbdev-set-correct-mclk-xclk-values-for-aty-in-ibook.patch +fbdev-check-for-intialized-flag-before-registration-in-matroxfb.patch +fbcon-do-not-touch-hardware-if-vc_mode-=-kd_text-fix.patch +remove-two-leftover-asm-linux_logoh-files.patch +fbdev-intelfb-code-cleanup.patch +fbcon-another-fix-for-fbcon-generic-blanking-code.patch

fbdev/fbcon updates

+md-fix-problem-with-md-linear-for-devices-larger-than-2-terabytes.patch +md-fix-raid6-problem.patch +md-delete-unplug-timer-before-shutting-down-md-array.patch +md-delete-unplug-timer-before-shutting-down-md-array-cleanup.patch +md-faulty-personality.patch

MD update

+dont-ignore-try_stop_module-return.patch

module fix

+proc-kcore-enable-disable.patch

Add missing config for /proc/kcore

-invalidate_inode_pages-mmap-coherency-fix.patch

This is causing I/O errors when it shouldn't. Needs work.

+sysrq-n-changes-rt-tasks-to-normal.patch

Make alt-sysrq-n turn all rt-policy tasks into SCHED_OTHER. For when an rt-policy process goes crazy and locks the machine up.

+cputime-fix-do_setitimer.patch

Fix the cputime patches. Should fix the "konqueror doesn't work" problem which people noted.

+fix-bug-in-i2o_iop_systab_set-where-address-is-used-instead.patch

i2o driver fix

-lock-initializer-unifying-batch-2-usb.patch

Clashed with other things

+remove-duplicate-safe_for_readread_buffer-entry-in-scsi_ioctlc.patch +remove-unused-lookup_mnt-export.patch

Code cleanups

+kprobes-minor-i386-changes-required-for-porting-kprobes-to-x86_64.patch +kprobes-kprobes-ported-to-x86_64.patch +kprobes-minor-changes-for-sparc64.patch

kprobes updates

+maintainer-vfs-email.patch

email address update

+fix-ext3_dx_readdir.patch

Fix htree's readdir function.

+remove-dead-kernel_map_pages-export.patch
+reove-dead-exports-from-randomc.patch
+unexport-do_settimeofday.patch

cleanups

+documentation-remove-drivers-char-readmecomputone.patch +documentation-remove-drivers-char-readmecyclomy.patch +documentation-remove-drivers-char-readmeecpa.patch +documentation-remove-drivers-char-readmescc.patch +tipar-documentation-tipartxt-cleanup.patch +ramdisk-correction-to-documentation-kernel-parameterstxt.patch

Documentation fixes

+fix-building-of-samba-userland.patch
+add-__kernel__-to-linux-crc-ccitth.patch

namespace fixes

+use-add_hotplug_env_var-in-firmware-loader.patch

Code consolidation

number of patches in -mm: 465
number of changesets in external trees: 472
number of patches in -mm only: 446
total patches: 918

All 465 patches:

linus.patch

fix-hpet-time_interpolator-registration.patch
fix HPET time_interpolator registration

4level-architecture-changes-for-alpha.patch
4level: Architecture changes for alpha

4level-architecture-changes-for-arm.patch
4level: Architecture changes for arm

4level-core-patch.patch
4level core patch

4level-architecture-changes-for-cris.patch
4level: Architecture changes for cris

4level-convert-drm-to-4levels.patch
4level: convert DRM to 4levels.

4level-add-asm-generic-support-for-emulating.patch
4level: Add asm-generic support for emulating 2/3level tables.

4level-ia64-support.patch
4level: ia64 support

4level-architecture-changes-for-i386.patch
4level: Architecture changes for i386

4level-architecture-changes-for-m32r.patch
4level: Architecture changes for m32r

4level-architecture-changes-for-ppc.patch
4level: Architecture changes for ppc

4level-architecture-changes-for-ppc64.patch
4level: Architecture changes for ppc64

4level-architecture-changes-for-s390.patch
4level: Architecture changes for s390

4level-architecture-changes-for-sh.patch
4level: Architecture changes for sh

4level-architecture-changes-for-sh64.patch
4level: Architecture changes for sh64

4level-architecture-changes-for-sparc.patch
4level: Architecture changes for sparc

4level-architecture-changes-for-sparc64.patch
4level: Architecture changes for sparc64

4level-architecture-changes-for-x86_64.patch
4level: Architecture changes for x86_64

compat-syscalls-naming-standardisation.patch
compat syscalls naming standardisation

compat-syscalls-naming-standardisation-fix.patch
compat-syscalls-naming-standardisation-fix

make-sysrq-f-call-oom_kill.patch
make sysrq-F call oom_kill()

icom-makefile-fix.patch
icom makefile fix

unexport-lock_page.patch
unexport lock_page()

bk-acpi.patch

acpi-report-errors-in-fanc.patch
ACPI: report errors in fan.c

bk-agpgart.patch

bk-cifs.patch

bk-cpufreq.patch

bk-driver-core.patch

bk-drm.patch

bk-i2c.patch

bk-ia64.patch

fix-duplicate-config-for-ia64_mca_recovery.patch
Fix duplicate config for IA64_MCA_RECOVERY

bk-ide-dev.patch

bk-input.patch

bk-dtor-input.patch

bk-jfs.patch

bk-kbuild.patch

bk-kbuild-utsname-fix.patch
bk-kbuild utsname fix

bk-netdev.patch

bk-ntfs.patch

bk-pci.patch

bk-scsi.patch

bk-watchdog.patch

mm.patch
add -mmN to EXTRAVERSION

fix-smm-failures-on-e750x-systems.patch
fix SMM failures on E750x systems

mm-keep-count-of-free-areas.patch
mm: keep count of free areas

mm-higher-order-watermarks.patch
mm: higher order watermarks

mm-higher-order-watermarks-fix.patch
higher order watermarks fix

mm-teach-kswapd-about-higher-order-areas.patch
mm: teach kswapd about higher order areas

bootmem-use-node_data.patch
bootmem use NODE_DATA

prio_tree-fix-prio_tree_expand-corner-c.patch
prio_tree: fix prio_tree_expand corner c

prio_tree-add-documentation-prio_treetxt.patch
prio_tree: add Documentation/prio_tree.txt

fix-find_next_best_node.patch
fix find_next_best_node()

make-tree_lock-an-rwlock.patch
make mapping->tree_lock an rwlock

more-hardirqh-consolidation.patch
more hardirq.h consolidation

must-fix.patch
must fix lists update
must fix list update
mustfix update
must-fix update
mustfix lists

arcnet-fixes.patch
arcnet fixes

arcnet-fixes-fix.patch
arcnet fixes fix

netpoll-fix-null-ifa_list-pointer-dereference.patch
netpoll: fix null ifa_list pointer dereference

e1000-stop-working-after-resume.patch
E1000 stop working after resume

fix-for-8023ad-shutdown-issue.patch
Fix for 802.3ad shutdown issue

ppc32-cpm2-bug.patch
ppc32: CPM2 bug

ppc32-add-support-for-sandpoint-x2.patch
ppc32: Add support for Sandpoint X2

fix-pmac_zilog-as-console.patch
Fix pmac_zilog as console

ppc64-iseries-iommu-cleanups.patch
ppc64: iSeries iommu cleanups

ppc64-vio-iommu-table-property-parsing-wrong.patch
ppc64: VIO iommu table property parsing wrong

ppc64-add-option-for-oprofile-to-backtrace-through-spinlocks.patch
ppc64: Add option for oprofile to backtrace through spinlocks

ppc64-iommu-fixes-round-3.patch
ppc64: iommu fixes, round 3

ppc64-iseries_pcic-use-for_each_pci_dev.patch
ppc64: iSeries_pci.c use for_each_pci_dev()

ppc64-pmac_pcic-replace-pci_find_device-with-pci_get_device.patch
ppc64: pmac_pci.c replace pci_find_device with pci_get_device

ppc64-pseries_pcic-use-for_each_pci_dev.patch
ppc64: pSeries_pci.c use for_each_pci_dev()

ppc64-pseries_iommuc-use-for_each_pci_dev.patch
ppc64: pSeries_iommu.c use for_each_pci_dev

ppc64-u3_iommuc-use-for_each_pci_dev.patch
ppc64: u3_iommu.c use for_each_pci_dev()

ppc64-reloc_hide.patch

superhyway-bus-support.patch
SuperHyway bus support

optimize-stack-pointer-access-reduce-register-usage.patch
x86: optimize stack pointer access (reduce register usage)

up-local-apic-bootstrap-cleanup.patch
UP local APIC bootstrap cleanup

x86-x86_64-only-handle-system-nmis-on-the-bsp.patch
x86, x86_64: Only handle system NMIs on the BSP

ptrace-pokeusr-add-comment-about-the-dr7-check.patch
ptrace POKEUSR: add comment about the DR7 check.

x86_64-add-p4-clockmod.patch
x86_64: Add p4 clockmod

m32r-fix-arch-m32r-lib-memsets.patch
m32r: fix arch/m32r/lib/memset.S

m32r-fix-for-use-of-mappi-pcc.patch
m32r: fix for use of Mappi PCC

uml-fix-ptrace-hang-on-269-host-due-to-host-changes.patch
uml: fix ptrace() hang on 2.6.9 host due to host changes

uml-some-comments-about-forcing-bin-bash.patch
uml - some comments about forcing /bin/bash

uml-add-startup-check-for-mmapprot_exec-from-tmp.patch
uml: add startup check for mmap(...PROT_EXEC...) from /tmp.

uml-fix-syscall-auditing.patch
uml: fix syscall auditing

uml-fix-symbol-conflict-in-linking.patch
uml: fix symbol conflict in linking

uml-cleanup-header-names.patch
uml: cleanup header names

uml-remove-useless-inclusion.patch
uml: remove useless inclusion

uml-no-duplicate-current_thread-definition.patch
uml: no duplicate current_thread definition

uml-mconsole_proc-simplify-and-partial-fix.patch
uml: mconsole_proc simplify and partial fix

uml-catch-eintr-in-generic_console_write.patch
uml: catch EINTR in generic_console_write

uml-remove-sigprof-from-change_signals.patch
uml: remove SIGPROF from change_signals

umluse-kallsyms-when-dumping-stack.patch
Subject: [patch 12/20] uml:use kallsyms when dumping stack

uml-revert-compile-only-changes-for-other-ones.patch
Uml: revert compile-only changes for other ones

uml-fix-sysemu-test-at-startup.patch
uml: fix sysemu test at startup

uml-more-careful-test-startup.patch
uml-more-careful-test-startup

uml-use-ptrace_sysemu-also-for-tt-mode.patch
uml: use PTRACE_SYSEMU also for TT mode

uml-lots-of-little-fixes-by-jeff-dike.patch
uml: Lots of little fixes by Jeff Dike.

uml-clear-errno-in-catch_eintr.patch
uml: clear errno in CATCH_EINTR

uml-readd-linux-makefile-target-fixes-to-the-old-version.patch
uml: readd linux Makefile target - fixes to the old version.

uml-add-missing-newline-in-help-string.patch
uml: add missing newline in help string

uml-update-atomich-so-uml-builds-cleanly.patch
uml: update atomic.h so UML builds cleanly

uml-handle-signal-api.patch
uml: handle signal api

uml-sysenter-is-syscall.patch
uml: sysenter is syscall

uml-generic-singlestep-syscall.patch
uml: generic singlestep syscall

uml-generic-singlestepping.patch
uml: generic singlestepping

uml-clear-singlestep.patch
uml: clear singlestep

uml-dont-check-nr_syscalls.patch
uml: dont check NR_syscalls

uml-set-dtrace-correctly.patch
uml: set DTRACE correctly

pcmcia-17-device-model-integration.patch
pcmcia-17: device model integration

pcmcia-module_refcount-oops-fix.patch
pcmcia: module_refcount oops fix

pcmcia-18a-client_t-and-pcmcia_device-integration.patch
pcmcia-18a: client_t and pcmcia_device integration

pcmcia-18b-error-on-leftover-devices.patch
pcmcia-18b: error on leftover devices

pcmcia-19-netdevice-integration.patch
pcmcia-19: netdevice integration

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-x86_64-fix.patch
kgdb-x86_64-fix

kgdb-x86_64-serial-fix.patch
kgdb-x86_64-serial-fix

kprobes-exception-notifier-fix-kgdb-x86_64.patch
kprobes exception notifier fix

kgdb-ia64-support.patch
IA64 kgdb support
ia64 kgdb repair and cleanup
ia64 kgdb fix

kgdb-ia64-fixes.patch
kgdb: ia64 fixes

fix-cpm2-uart-driver-device-number-brain-damage.patch
Fix CPM2 uart driver device number brain damage

invalidate_inodes-speedup.patch
invalidate_inodes speedup
more invalidate_inodes speedup fixes

dev-mem-restriction-patch.patch
/dev/mem restriction patch

dev-mem-restriction-patch-allow-reads.patch
dev-mem-restriction-patch: allow reads

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

perfctr-core.patch
perfctr: core

perfctr-i386.patch
perfctr: i386

perfctr-prescott-fix.patch
Prescott fix for perfctr

perfctr-x86_64.patch
perfctr: x86_64

perfctr-ppc.patch
perfctr: PowerPC

perfctr-ppc32-mmcr0-handling-fixes.patch
perfctr ppc32 MMCR0 handling fixes

perfctr-virtualised-counters.patch
perfctr: virtualised counters

perfctr-remap_page_range-fix.patch

virtual-perfctr-illegal-sleep.patch
virtual perfctr illegal sleep

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: Kconfig-related updates

perfctr-ppc32-preliminary-interrupt-support.patch
perfctr ppc32 preliminary interrupt support

perfctr-update-5-6-reduce-stack-usage.patch
perfctr: reduce stack usage

perfctr-interrupt-support-kconfig-fix.patch
perfctr interrupt_support Kconfig fix

perfctr-low-level-documentation.patch
perfctr low-level documentation

perfctr-inheritance-1-3-driver-updates.patch
perfctr inheritance: driver updates

perfctr-inheritance-2-3-kernel-updates.patch
perfctr inheritance: kernel updates

perfctr-inheritance-3-3-documentation-updates.patch
perfctr inheritance: documentation updates

perfctr-inheritance-locking-fix.patch
perfctr inheritance locking fix

perfctr-api-changes-first-step.patch
perfctr API changes: first step

perfctr-x86-64-ia32-emulation-fix.patch
perfctr x86-64 ia32 emulation fix

perfctr-ppc32-update.patch
perfctr ppc32 update

sched-more-agressive-wake_idle.patch
sched: more agressive wake_idle()

sched-can_migrate-exception-for-idle-cpus.patch
sched: can_migrate exception for idle cpus

sched-newidle-fix.patch
sched: newidle fix

sched-active_load_balance-fixlet.patch
sched: active_load_balance() fixlet

sched-reset-cache_hot_time.patch
sched: reset cache_hot_time

add-do_proc_doulonglongvec_minmax-to-sysctl-functions.patch
Add do_proc_doulonglongvec_minmax to sysctl functions

add-do_proc_doulonglongvec_minmax-to-sysctl-functions-fix.patch
add-do_proc_doulonglongvec_minmax-to-sysctl-functions-fix

add-sysctl-interface-to-sched_domain-parameters.patch
Add sysctl interface to sched_domain parameters

preempt-smp.patch
improve preemption on SMP

preempt-smp-_raw_read_trylock-bias-fix.patch
preempt-smp _raw_read_trylock bias fix

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-ext3-fix-scheduling-latencies-in-ext3.patch
sched: ext3: fix scheduling latencies in ext3

break-latency-in-invalidate_list.patch
break latency in invalidate_list()

sched-vfs-fix-scheduling-latencies-in-prune_dcache-and-select_parent.patch
sched: vfs: fix scheduling latencies in prune_dcache() and select_parent()

sched-vfs-fix-scheduling-latencies-in-prune_dcache-and-select_parent-fix.patch
sched-vfs-fix-scheduling-latencies-in-prune_dcache-and-select_parent fix

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-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()

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

idle-thread-preemption-fix.patch
idle thread preemption fix

oprofile-smp_processor_id-fixes.patch
oprofile smp_processor_id() fixes

fix-smp_processor_id-warning-in-numa_node_id.patch
Fix smp_processor_id() warning in numa_node_id()

remove-the-bkl-by-turning-it-into-a-semaphore.patch
remove the BKL by turning it into a semaphore

cpu_down-warning-fix.patch
cpu_down() warning fix

vmtrunc-truncate_count-not-atomic.patch
vmtrunc: truncate_count not atomic

vmtrunc-restore-unmap_vmas-zap_bytes.patch
vmtrunc: restore unmap_vmas zap_bytes

vmtrunc-unmap_mapping_range_tree.patch
vmtrunc: unmap_mapping_range_tree

vmtrunc-unmap_mapping-dropping-i_mmap_lock.patch
vmtrunc: unmap_mapping dropping i_mmap_lock

vmtrunc-vm_truncate_count-race-caution.patch
vmtrunc: vm_truncate_count race caution

vmtrunc-bug-if-page_mapped.patch
vmtrunc: bug if page_mapped

vmtrunc-restart_addr-in-truncate_count.patch
vmtrunc: restart_addr in truncate_count

v4l-mxb-driver-and-i2c-helper-cleanup.patch
v4l: mxb driver and i2c helper cleanup

v4l-keep-tvaudio-driver-away-from-saa7146.patch
v4l: keep tvaudio driver away from saa7146

meye-module-related-fixes.patch
meye: module related fixes

meye-replace-homebrew-queue-with-kfifo.patch
meye: replace homebrew queue with kfifo

meye-picture-depth-is-in-bits-not-in-bytes.patch
meye: picture depth is in bits not in bytes

meye-do-lock-properly-when-waiting-for-buffers.patch
meye: do lock properly when waiting for buffers

meye-implement-non-blocking-access-using-poll.patch
meye: implement non blocking access using poll()

meye-cleanup-init-exit-paths.patch
meye: cleanup init/exit paths

meye-the-driver-is-no-longer-experimental-and-depends-on-pci.patch
meye: the driver is no longer experimental and depends on PCI

meye-module-parameters-documentation-fixes.patch
meye: module parameters documentation fixes

meye-add-v4l2-support.patch
meye: add v4l2 support

meye-whitespace-and-coding-style-cleanups.patch
meye: whitespace and coding style cleanups

meye-bump-up-the-version-number.patch
meye: bump up the version number

meye-cache-the-camera-settings-in-the-driver.patch
meye: cache the camera settings in the driver

sonypi-documentation-fixes.patch
From: Stelian Pop <[email protected]>
Subject: [PATCH] sonypi: documentation fixes

pcmcia-network-drivers-cleanup.patch
From: Stelian Pop <[email protected]>
Subject: [PATCH RESEND] pcmcia network drivers cleanup

videodev2h-patchlet.patch
From: Stelian Pop <[email protected]>
Subject: [PATCH RESEND] videodev2.h patchlet

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

allow-modular-ide-pnp.patch
allow modular ide-pnp

allow-x86_64-to-reenable-interrupts-on-contention.patch
Allow x86_64 to reenable interrupts on contention

i386-cpu-hotplug-updated-for-mm.patch
i386 CPU hotplug updated for -mm

serialize-access-to-ide-devices.patch
serialize access to ide devices

disable-atykb-warning.patch
disable atykb "too many keys pressed" warning

export-file_ra_state_init-again.patch
Export file_ra_state_init() again

cachefs-filesystem.patch
CacheFS filesystem

cachefs-release-search-records-lest-they-return-to-haunt-us.patch
CacheFS: release search records lest they return to haunt us

fix-64-bit-problems-in-cachefs.patch
Fix 64-bit problems in cachefs

cachefs-fixed-typos-that-cause-wrong-pointer-to-be-kunmapped.patch
cachefs: fixed typos that cause wrong pointer to be kunmapped

cachefs-return-the-right-error-upon-invalid-mount.patch
CacheFS: return the right error upon invalid mount

fix-cachefs-barrier-handling-and-other-kernel-discrepancies.patch
Fix CacheFS barrier handling and other kernel discrepancies

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

provide-a-filesystem-specific-syncable-page-bit-fix-2.patch
provide-a-filesystem-specific-syncable-page-bit-fix-2

make-afs-use-cachefs.patch
Make AFS use CacheFS

afs-cachefs-dependency-fix.patch
afs-cachefs-dependency-fix

split-general-cache-manager-from-cachefs.patch
Split general cache manager from CacheFS

turn-cachefs-into-a-cache-backend.patch
Turn CacheFS into a cache backend

rework-the-cachefs-documentation-to-reflect-fs-cache-split.patch
Rework the CacheFS documentation to reflect FS-Cache split

update-afs-client-to-reflect-cachefs-split.patch
Update AFS client to reflect CacheFS split

assign_irq_vector-section-fix.patch
assign_irq_vector __init section fix

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-ide-spindown-fix.patch
kexec-ide-spindown-fix

kexec-ifdef-cleanup.patch
kexec ifdef cleanup

kexec-machine_shutdownx86_64.patch
kexec: machine_shutdown.x86_64

kexec-kexecx86_64.patch
kexec: kexec.x86_64

kexec-kexecx86_64-4level-fix.patch
kexec-kexecx86_64-4level-fix

kexec-machine_shutdowni386.patch
kexec: machine_shutdown.i386

kexec-kexeci386.patch
kexec: kexec.i386

kexec-use_mm.patch
kexec: use_mm

kexec-loading-kernel-from-non-default-offset.patch
kexec: loading kernel from non-default offset

kexec-loading-kernel-from-non-default-offset-fix.patch
kdump: fix bss compile error

kexec-enabling-co-existence-of-normal-kexec-kernel-and-panic-kernel.patch
kexec: nabling co-existence of normal kexec kernel and panic kernel

crashdump-documentation.patch
crashdump: documentation

crashdump-memory-preserving-reboot-using-kexec.patch
crashdump: memory preserving reboot using kexec

crashdump-routines-for-copying-dump-pages.patch
crashdump: routines for copying dump pages

crashdump-kmap-build-fix.patch
crashdump kmap build fix

crashdump-register-snapshotting-before-kexec-boot.patch
crashdump: register snapshotting before kexec boot

crashdump-elf-format-dump-file-access.patch
crashdump: ELF format dump file access

crashdump-linear-raw-format-dump-file-access.patch
crashdump: linear/raw format dump file access

crashdump-minor-bug-fixes-to-kexec-crashdump-code.patch
crashdump: minor bug fixes to kexec crashdump code

crashdump-cleanups-to-the-kexec-based-crashdump-code.patch
crashdump: cleanups to the kexec based crashdump code

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-fix-cpuset_get_dentry.patch
cpusets : fix cpuset_get_dentry()

cpusets-fix-race-in-cpuset_add_file.patch
cpusets: fix race in cpuset_add_file()

cpusets-remove-more-casts.patch
cpusets: remove more casts

cpusets-make-config_cpusets-the-default-in-sn2_defconfig.patch
cpusets: make CONFIG_CPUSETS the default in sn2_defconfig

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-rename-key_init.patch
reiser4: rename key_init

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

reiser4-plugin_set_done-memleak-fix.patch
reiser4 plugin_set_done-memleak-fix.patch

reiser4-init-max_atom_flusers.patch
reiser4 init-max_atom_flusers.patch

reiser4-parse-options-reduce-stack-usage.patch
reiser4 parse-options-reduce-stack-usage.patch

reiser4-sparce64-warning-fix.patch
reiser4 sparc64-warning-fix.patch

reiser4-hardirq-build-fix.patch
resiser4: hardirq.h build fix

reiser4-x86_64-warning-fix.patch
reiser4 x86_64-warning-fix.patch

reiser4-fix-mount-option-parsing.patch
reiser4 fix-mount-option-parsing.patch

reiser4-parse-option-cleanup.patch
reiser4 parse-option-cleanup.patch

reiser4-comment-fix.patch
reiser4 comment-fix.patch

reiser4-fill_super-improve-warning.patch
reiser4 fill_super-improve-warning.patch

reiser4-disable-pseudo.patch
reiser4 disable-pseudo.patch

reiser4-disable-repacker.patch
reiser4 disable-repacker.patch

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

floppy-acpi-enumeration-update.patch
floppy ACPI enumeration update

possible-dcache-bug-debugging-patch.patch
Possible dcache BUG: debugging patch

3c59x-pm-fix.patch
3c59x: enable power management unconditionally

3c59x-missing-pci_disable_device.patch
3c59x: missing pci_disable_device

3c59x-use-netdev_priv.patch
3c59x: use netdev_priv

3c59x-make-use-of-generic_mii_ioctl.patch
3c59x: Make use of generic_mii_ioctl

3c59x-vortex-select-mii.patch
3c59x: VORTEX select MII

3c59x-reload-eeprom-values-at-rmmod-for-needy-cards.patch
3c59x: reload EEPROM values at rmmod for needy cards

3c59x-remove-eeprom_reset-for-3c905b.patch
3c59x: remove EEPROM_RESET for 3c905B

3c59x-support-more-ethtool_ops.patch
3c59x: support more ethtool_ops

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

serial-8250-receive-lockup-fix.patch
serial: 8250 receive lockup fix

new-serial-flow-control.patch
new serial flow control

early-uart-console-support.patch
early uart console support

move-hcdp-pcdp-to-early-uart-console.patch
move HCDP/PCDP to early uart console

mpsc-driver-patch.patch
serial: MPSC driver

vm-pageout-throttling.patch
vm: pageout throttling

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"

md-add-interface-for-userspace-monitoring-of-events.patch
md: add interface for userspace monitoring of events.

fix-for-spurious-interrupts-on-e100-resume-2.patch
Fix for spurious interrupts on e100 resume 2

thinkpad-fnfx-key-driver.patch
thinkpad fn+fx key driver

make-acpi_bus_register_driver-consistent-with-pci_register_driver-again.patch
make acpi_bus_register_driver() consistent with pci_register_driver()

make-acpi_bus_register_driver-consistent-with-pci_register_driver-again-warning-fix.patch
make-acpi_bus_register_driver-consistent-with-pci_register_driver-again-warning-fix

enforce-a-gap-between-heap-and-stack.patch
Enforce a gap between heap and stack

remove-lock_section-from-x86_64-spin_lock-asm.patch
remove LOCK_SECTION from x86_64 spin_lock asm

kfree_skb-dump_stack.patch
kfree_skb-dump_stack

for-mm-only-remove-remap_page_range-completely.patch
vm: for -mm only: remove remap_page_range() completely

cancel_rearming_delayed_work.patch
cancel_rearming_delayed_work()

make-cancel_rearming_delayed_workqueue-static.patch
make cancel_rearming_delayed_workqueue static

ipvs-deadlock-fix.patch
ipvs deadlock fix

remove-journal-callback-code-from-jbd.patch
remove journal callback code from jbd

minimal-ide-disk-updates.patch
Minimal ide-disk updates

no-buddy-bitmap-patch-revist-intro-and-includes.patch
no buddy bitmap patch revist: intro and includes

no-buddy-bitmap-patch-revisit-for-mm-page_allocc.patch
no buddy bitmap patch revisit: for mm/page_alloc.c

no-buddy-bitmap-patch-revisit-for-mm-page_allocc-fix.patch
no-buddy-bitmap-patch-revisit-for-mm-page_allocc fix

no-buddy-bitmap-patch-revist-for-ia64.patch
no buddy bitmap patch revist: for ia64

no-buddy-bitmap-patch-revist-for-ia64-fix.patch
no-buddy-bitmap-patch-revist-for-ia64 fix

use-find_trylock_page-in-free_swap_and_cache-instead-of-hand-coding.patch
use find_trylock_page in free_swap_and_cache instead of hand coding

dio-handle-eof.patch
direct-IO: handle EOF
dio-handle-eof fix

o_direct-fix-again.patch
O_DIRECT fix again

fbcon-do-not-touch-hardware-if-vc_mode-=-kd_text.patch
fbcon: Do not touch hardware if vc_mode != KD_TEXT

fbdev-fix-access-to-rom-in-aty128fb.patch
fbdev: Fix access to ROM in aty128fb

fbdev-fix-io-access-in-rivafb.patch
fbdev: Fix IO access in rivafb

fbcon-add-box-drawing-glyphs-to-6x11-font.patch
fbcon: Add box drawing glyphs to 6x11 font

fbdev-fix-source-copy-bug-in-neofb.patch
fbdev: Fix source copy bug in neofb

fbcon-fbdev-remove-fbcon-specific-fields-from-struct-fb_info.patch
fbcon/fbdev: Remove fbcon-specific fields from struct fb_info

fbdev-atyfb_basec-requires-atyfb_cursor.patch
fbdev: atyfb_base.c requires atyfb_cursor()

fix-atyfb-cursor-problems.patch
fbdev: Fix atyfb cursor problems

fbdev-set-correct-mclk-xclk-values-for-aty-in-ibook.patch
fbdev: Set correct mclk/xclk values for aty in ibook

fbdev-check-for-intialized-flag-before-registration-in-matroxfb.patch
fbdev: Check for intialized flag before registration in matroxfb

fbcon-do-not-touch-hardware-if-vc_mode-=-kd_text-fix.patch
fbcon: "Do not touch hardware if vc_mode != KD_TEXT: fix

remove-two-leftover-asm-linux_logoh-files.patch
remove two leftover <asm/linux_logo.h> files

fbdev-intelfb-code-cleanup.patch
fbdev: intelfb code cleanup

fbcon-another-fix-for-fbcon-generic-blanking-code.patch
fbcon: Another fix for fbcon generic blanking code

md-fix-problem-with-md-linear-for-devices-larger-than-2-terabytes.patch
md: fix problem with md/linear for devices larger than 2 terabytes

md-fix-raid6-problem.patch
md: fix raid6 problem

md-delete-unplug-timer-before-shutting-down-md-array.patch
md: delete unplug timer before shutting down md array

md-delete-unplug-timer-before-shutting-down-md-array-cleanup.patch
md-delete-unplug-timer-before-shutting-down-md-array-cleanup

md-faulty-personality.patch
md: "Faulty" personality

dont-ignore-try_stop_module-return.patch
Don't ignore try_stop_module return

figure-out-who-is-inserting-bogus-modules.patch
Figure out who is inserting bogus modules

proc-kcore-enable-disable.patch
/proc/kcore - enable/disable.

use-mmiowb-in-qla1280c.patch
use mmiowb in qla1280.c

yenta_socketc-fix-missing-pci_disable_dev.patch
yenta_socket.c: Fix missing pci_disable_dev

yenta-dont-enable-read-prefetch-on-older-o2-bridges.patch
yenta: don't enable read prefetch on older o2 bridges.

via8231-support-for-parallel-port-driver.patch
VIA8231 support for parallel port driver

via8231-support-for-parallel-port-driver-warning-fix.patch
via8231-support-for-parallel-port-driver warning fix

fix-altsysrq-deadlock.patch
fix alt-sysrq deadlock

sysrq-n-changes-rt-tasks-to-normal.patch
SysRq-n changes RT tasks to normal

cputime-introduce-cputime.patch
cputime: introduce cputime

cputime-introduce-cputime-fix.patch
cputime-introduce-cputime fix

cputime-fix-do_setitimer.patch
cputime: fix do_setitimer.

cputime-missing-pieces.patch
cputime: missing pieces.

fix-bug-in-i2o_iop_systab_set-where-address-is-used-instead.patch
fix bug in i2o_iop_systab_set where address is used instead of length

detect-atomic-counter-underflows.patch
detect atomic counter underflows

lock-initializer-unifying-batch-2-alpha.patch
Lock initializer unifying: ALPHA

lock-initializer-unifying-batch-2-ia64.patch
Lock initializer unifying: IA64

lock-initializer-unifying-batch-2-m32r.patch
Lock initializer unifying: M32R

lock-initializer-unifying-batch-2-mips.patch
Lock initializer unifying: MIPS

lock-initializer-unifying-batch-2-misc-drivers.patch
Lock initializer unifying: Misc drivers

lock-initializer-unifying-batch-2-block-devices.patch
Lock initializer unifying: Block devices

lock-initializer-unifying-batch-2-bluetooth.patch
Lock initializer unifying: Bluetooth

lock-initializer-unifying-batch-2-drm.patch
Lock initializer unifying: DRM

lock-initializer-unifying-batch-2-character-devices.patch
Lock initializer unifying: character devices

lock-initializer-unifying-batch-2-rio.patch
Lock initializer unifying: RIO

lock-initializer-unifying-batch-2-firewire.patch
Lock initializer unifying: Firewire

lock-initializer-unifying-batch-2-isdn.patch
Lock initializer unifying: ISDN

lock-initializer-unifying-batch-2-raid.patch
Lock initializer unifying: Raid

lock-initializer-unifying-batch-2-media-drivers.patch
Lock initializer unifying: media drivers

lock-initializer-unifying-batch-2-pci.patch
Lock initializer unifying: PCI

lock-initializer-unifying-batch-2-scsi.patch
Lock initializer unifying: SCSI

lock-initializer-unifying-batch-2-drivers-serial.patch
Lock initializer unifying: drivers/serial

lock-initializer-unifying-batch-2-filesystems.patch
Lock initializer unifying: Filesystems

lock-initializer-unifying-batch-2-video.patch
Lock initializer unifying: Video

lock-initializer-unifying-batch-2-networking.patch
Lock initializer unifying: Networking

lock-initializer-unifying-batch-2-sound.patch
Lock initializer unifying: sound

remove-duplicate-safe_for_readread_buffer-entry-in-scsi_ioctlc.patch
Subject: [PATCH] Remove duplicate safe_for_read(READ_BUFFER) entry in scsi_ioctl.c

remove-unused-lookup_mnt-export.patch
remove unused lookup_mnt export

kprobes-minor-i386-changes-required-for-porting-kprobes-to-x86_64.patch
kprobes: Minor i386 changes required for porting kprobes to x86_64

kprobes-kprobes-ported-to-x86_64.patch
kprobes: kprobes ported to x86_64

kprobes-minor-changes-for-sparc64.patch
kprobes: Minor changes for sparc64

maintainer-vfs-email.patch
maintainer vfs email

fix-ext3_dx_readdir.patch
Fix ext3_dx_readdir

remove-dead-kernel_map_pages-export.patch
remove dead kernel_map_pages export

reove-dead-exports-from-randomc.patch
remove dead exports from random.c

unexport-do_settimeofday.patch
unexport do_settimeofday

minor-fix-of-rcu-documentation.patch
Minor fix of RCU documentation

documentation-remove-drivers-char-readmecomputone.patch
documentation: Remove drivers/char/README.computone

documentation-remove-drivers-char-readmecyclomy.patch
documentation: Remove drivers/char/README.cyclomY

documentation-remove-drivers-char-readmeecpa.patch
documentation: Remove drivers/char/README.ecpa

documentation-remove-drivers-char-readmescc.patch
documentation: Remove drivers/char/README.scc

tipar-documentation-tipartxt-cleanup.patch
tipar: Documentation/tipar.txt cleanup

ramdisk-correction-to-documentation-kernel-parameterstxt.patch
ramdisk: Correction to Documentation/kernel-parameters.txt

fix-building-of-samba-userland.patch
Fix building of samba userland

use-add_hotplug_env_var-in-firmware-loader.patch
Use add_hotplug_env_var() in firmware loader

add-__kernel__-to-linux-crc-ccitth.patch
Add __KERNEL__ to <linux/crc-ccitt.h>

remove-module_parm-from-allyesconfig-almost.patch
Remove MODULE_PARM from allyesconfig (almost)

convert-module_parm-to-module_param-family.patch
convert MODULE_PARM() to module_param() family

more-module_parm-conversions.patch
more MODULE_PARM conversions

#1 lore raw
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

------------[ cut here ]------------
kernel BUG at mm/memory.c:156!
invalid operand: 0000 [#1]
PREEMPT 
Modules linked in: ipv6 tun dm_mod emu10k1 sound soundcore ac97_codec unix
CPU:    0
EIP:    0060:[clear_page_range+276/304]    Not tainted VLI
EFLAGS: 00010206   (2.6.10-rc1-mm3) 

EIP is at clear_page_range+0x114/0x130
eax: daffc000 ebx: 00483fff ecx: c03b7088 edx: daffc000
esi: 00000000 edi: 00080000 ebp: dca51ed0 esp: dca51ea8
ds: 007b es: 007b ss: 0068
Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)

Stack: 00000000 00004000 dca51ef0 c0144fdb daffc000 daffc000 00000000 00483fff 
       00000000 00080000 dca51ef0 c0149131 c03b7088 00000000 00483fff c5eee8e0 
       00084000 00080000 dca51f28 c014928b c03b7088 00000000 00080000 00084000 
Call Trace:
 [show_stack+127/160] show_stack+0x7f/0xa0
 [show_registers+346/448] show_registers+0x15a/0x1c0
 [die+240/400] die+0xf0/0x190
 [do_invalid_op+256/272] do_invalid_op+0x100/0x110
 [error_code+43/48] error_code+0x2b/0x30
 [free_pgtables+129/160] free_pgtables+0x81/0xa0
 [unmap_region+155/224] unmap_region+0x9b/0xe0
 [do_munmap+283/416] do_munmap+0x11b/0x1a0
 [sys_shmdt+199/352] sys_shmdt+0xc7/0x160
 [sys_ipc+521/576] sys_ipc+0x209/0x240
 [syscall_call+7/11] syscall_call+0x7/0xb
Code: 00 eb db 89 54 24 0c c7 44 24 08 70 00 00 00 c7 44 24 04 fc 04 2e c0 c7 04 24 3e d1 2d c0 e8 84 45 fd ff c7 03 00 00 00 00 eb 81 <0f> 0b 9c 00 fc 04 2e c0 e9 22 ff ff ff eb 0d 90 90 90 90 90 90 
 <6>note: shmt04[4854] exited with preempt_count 1

scheduling while atomic: shmt04/0x00000001/4854
[dump_stack+30/32] dump_stack+0x1e/0x20 [schedule+1306/1312] schedule+0x51a/0x520 [rwsem_down_read_failed+146/464] rwsem_down_read_failed+0x92/0x1d0 [.text.lock.exit+107/231] .text.lock.exit+0x6b/0xe7 [die+391/400] die+0x187/0x190
[do_invalid_op+256/272] do_invalid_op+0x100/0x110 [error_code+43/48] error_code+0x2b/0x30 [free_pgtables+129/160] free_pgtables+0x81/0xa0 [unmap_region+155/224] unmap_region+0x9b/0xe0 [do_munmap+283/416] do_munmap+0x11b/0x1a0 [sys_shmdt+199/352] sys_shmdt+0xc7/0x160 [sys_ipc+521/576] sys_ipc+0x209/0x240 [syscall_call+7/11] syscall_call+0x7/0xb

------------[ cut here ]------------
kernel BUG at mm/memory.c:156!
invalid operand: 0000 [#2]
PREEMPT 
Modules linked in: ipv6 tun dm_mod emu10k1 sound soundcore ac97_codec unix
CPU:    0
EIP:    0060:[clear_page_range+276/304]    Not tainted VLI
EFLAGS: 00010206   (2.6.10-rc1-mm3) 

EIP is at clear_page_range+0x114/0x130
eax: c1849000 ebx: 00483fff ecx: c03b7088 edx: c1849000
esi: 00000000 edi: 00080000 ebp: dd937ed0 esp: dd937ea8
ds: 007b es: 007b ss: 0068
Process shmt06 (pid: 4857, threadinfo=dd937000 task=dd0be0e0)

Stack: 00000000 00004000 dd937ef0 c0144fdb c1849000 c1849000 00000000 00483fff 
       00000000 00080000 dd937ef0 c0149131 c03b7088 00000000 00483fff c5eee4a0 
       00084000 00080000 dd937f28 c014928b c03b7088 00000000 00080000 00084000 
Call Trace:
 [show_stack+127/160] show_stack+0x7f/0xa0
 [show_registers+346/448] show_registers+0x15a/0x1c0
 [die+240/400] die+0xf0/0x190
 [do_invalid_op+256/272] do_invalid_op+0x100/0x110
 [error_code+43/48] error_code+0x2b/0x30
 [free_pgtables+129/160] free_pgtables+0x81/0xa0
 [unmap_region+155/224] unmap_region+0x9b/0xe0
 [do_munmap+283/416] do_munmap+0x11b/0x1a0
 [sys_shmdt+199/352] sys_shmdt+0xc7/0x160
 [sys_ipc+521/576] sys_ipc+0x209/0x240
 [syscall_call+7/11] syscall_call+0x7/0xb
Code: 00 eb db 89 54 24 0c c7 44 24 08 70 00 00 00 c7 44 24 04 fc 04 2e c0 c7 04 24 3e d1 2d c0 e8 84 45 fd ff c7 03 00 00 00 00 eb 81 <0f> 0b 9c 00 fc 04 2e c0 e9 22 ff ff ff eb 0d 90 90 90 90 90 90 
 <6>note: shmt06[4857] exited with preempt_count 1

scheduling while atomic: shmt06/0x00000001/4857
[dump_stack+30/32] dump_stack+0x1e/0x20 [schedule+1306/1312] schedule+0x51a/0x520 [rwsem_down_read_failed+146/464] rwsem_down_read_failed+0x92/0x1d0 [.text.lock.exit+107/231] .text.lock.exit+0x6b/0xe7 [die+391/400] die+0x187/0x190
[do_invalid_op+256/272] do_invalid_op+0x100/0x110 [error_code+43/48] error_code+0x2b/0x30 [free_pgtables+129/160] free_pgtables+0x81/0xa0 [unmap_region+155/224] unmap_region+0x9b/0xe0 [do_munmap+283/416] do_munmap+0x11b/0x1a0 [sys_shmdt+199/352] sys_shmdt+0xc7/0x160 [sys_ipc+521/576] sys_ipc+0x209/0x240 [syscall_call+7/11] syscall_call+0x7/0xb

Signature · 1 line
I route therefore you are
#2 lore raw
Quoted 5 lines · Lorenzo Allegrucci
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

Quoted 13 lines
 ------------[ cut here ]------------
 kernel BUG at mm/memory.c:156!
 invalid operand: 0000 [#1]
 PREEMPT 
 Modules linked in: ipv6 tun dm_mod emu10k1 sound soundcore ac97_codec unix
 CPU:    0
 EIP:    0060:[clear_page_range+276/304]    Not tainted VLI
 EFLAGS: 00010206   (2.6.10-rc1-mm3) 
 EIP is at clear_page_range+0x114/0x130
 eax: daffc000   ebx: 00483fff   ecx: c03b7088   edx: daffc000
 esi: 00000000   edi: 00080000   ebp: dca51ed0   esp: dca51ea8
 ds: 007b   es: 007b   ss: 0068
 Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)

hm, I thought I ran ltp. Andi, this is due to the 4level patches. I can reproduce it with non-PAE x86. But testing was interrupted by the apparent suicide of an IDE disk :(

#3 lore raw
Quoted 20 lines · Andrew Morton
Quoted 5 lines · Lorenzo Allegrucci
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

Quoted 13 lines
 ------------[ cut here ]------------
 kernel BUG at mm/memory.c:156!
 invalid operand: 0000 [#1]
 PREEMPT 
 Modules linked in: ipv6 tun dm_mod emu10k1 sound soundcore ac97_codec unix
 CPU:    0
 EIP:    0060:[clear_page_range+276/304]    Not tainted VLI
 EFLAGS: 00010206   (2.6.10-rc1-mm3) 
 EIP is at clear_page_range+0x114/0x130
 eax: daffc000   ebx: 00483fff   ecx: c03b7088   edx: daffc000
 esi: 00000000   edi: 00080000   ebp: dca51ed0   esp: dca51ea8
 ds: 007b   es: 007b   ss: 0068
 Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)
Quoted 3 lines

hm, I thought I ran ltp. Andi, this is due to the 4level patches. I can reproduce it with non-PAE x86. But testing was interrupted by the apparent suicide of an IDE disk :(

Ok, I think that was a BUG_ON I added later to check for something. I think problem is that last is off by one at this point. That is ok. I think it's safe to just remove it.

I will do a non PAE i386 LTP run with this now. Lorenzo can you check it solves the problem for you?

-Andi

Remove bogus BUG_ON.

mm/memory.c renamed from mm/memory.c-o +0 -1
diff -u linux-2.6.10rc1-mm3/mm/memory.c-o linux-2.6.10rc1-mm3/mm/memory.c
@@ -153,7 +153,6 @@
 		return;
 	}
 	BUG_ON(addr & ~PGDIR_MASK);
-	BUG_ON(end & ~PGDIR_MASK);
 	pgd_start = pml4_pgd_offset(pml4, addr);
 	free = 0;
 	pgd = pgd_start;
#4 lore raw
Quoted 45 lines · Andi Kleen
Quoted 20 lines · Andrew Morton
Quoted 5 lines · Lorenzo Allegrucci
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

Quoted 13 lines
 ------------[ cut here ]------------
 kernel BUG at mm/memory.c:156!
 invalid operand: 0000 [#1]
 PREEMPT 
 Modules linked in: ipv6 tun dm_mod emu10k1 sound soundcore ac97_codec unix
 CPU:    0
 EIP:    0060:[clear_page_range+276/304]    Not tainted VLI
 EFLAGS: 00010206   (2.6.10-rc1-mm3) 
 EIP is at clear_page_range+0x114/0x130
 eax: daffc000   ebx: 00483fff   ecx: c03b7088   edx: daffc000
 esi: 00000000   edi: 00080000   ebp: dca51ed0   esp: dca51ea8
 ds: 007b   es: 007b   ss: 0068
 Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)
Quoted 3 lines

hm, I thought I ran ltp. Andi, this is due to the 4level patches. I can reproduce it with non-PAE x86. But testing was interrupted by the apparent suicide of an IDE disk :(

Ok, I think that was a BUG_ON I added later to check for something. I think problem is that last is off by one at this point. That is ok. I think it's safe to just remove it.

I will do a non PAE i386 LTP run with this now. Lorenzo can you check it solves the problem for you?

-Andi

Remove bogus BUG_ON.

diff -u linux-2.6.10rc1-mm3/mm/memory.c-o linux-2.6.10rc1-mm3/mm/memory.c

mm/memory.c 2004-11-05 11:45:37.000000000 +0100 line 158

Quoted 7 lines
mm/memory.c 2004-11-05 11:45:37.000000000 +0100 renamed from mm/memory.c-o 2004-11-05 11:42:00.000000000 +0100 +0 -1
@@ -153,7 +153,6 @@
   return;
  }
  BUG_ON(addr & ~PGDIR_MASK);
- BUG_ON(end & ~PGDIR_MASK);
  pgd_start = pml4_pgd_offset(pml4, addr);
  free = 0;
  pgd = pgd_start;

The above patch solves the problem for me.

Signature · 1 line
I route therefore you are
#5 lore raw
In reply to Lorenzo Allegrucci
Quoted 8 lines · Lorenzo Allegrucci
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

------------[ cut here ]------------
kernel BUG at mm/memory.c:156!

Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)

reproducible here too, just running LTP's shmt04 directly triggers it immediately. Looks like there's interaction of 4-level pagetables with ipc/shm.c or mm/shmem.c.

Ingo

#6 lore raw
Quoted 7 lines · Ingo Molnar
Quoted 4 lines · Lorenzo Allegrucci
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

Quoted 8 lines
Quoted 4 lines
------------[ cut here ]------------
kernel BUG at mm/memory.c:156!

Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)

reproducible here too, just running LTP's shmt04 directly triggers it immediately. Looks like there's interaction of 4-level pagetables with ipc/shm.c or mm/shmem.c.

I tested LTP at one point on i386/x86-64 and and it didn't oops for me. Perhaps I messed up a later merge. Will investigate.

-Andi

#7 lore raw
In reply to Ingo Molnar
Quoted 8 lines · Ingo Molnar
Quoted 4 lines
------------[ cut here ]------------
kernel BUG at mm/memory.c:156!

Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)

reproducible here too, just running LTP's shmt04 directly triggers it immediately. Looks like there's interaction of 4-level pagetables with ipc/shm.c or mm/shmem.c.

due to the PML4 feature, the clear_page_tables() function changed to clear_page_range(), changing its (first,size) argument to (first,last). Normally it's called with (0,TASK_SIZE) which normally is PML4-aligned, but in the (relatively rare) do_munmap() use this is not the case. We correctly calculate the range that could be cleared, but it's not PML4_SIZE aligned.

The solution is to clip both 'first' and 'last' to PML4_SIZE boundary. Since when we calculate 'first' we add at least +PML4_SIZE to the value, it is safe to clip 'first'. It is obviously safe to clip 'last'.

The patch below implements this fix - it boots & works fine and shmt04 doesnt crash anymore. Andi, do you agree with this fix?

Ingo

mm/mmap.c renamed from mm/mmap.c.orig +1 -1
@@ -1545,7 +1545,7 @@ no_mmaps:
 	}
 	if (pml4_index(last) > start_pml4_index ||
 	    pgd_index(last) > start_pgd_index) {
-		clear_page_range(tlb, first, last);
+		clear_page_range(tlb, first & PML4_MASK, last & PML4_MASK);
 		flush_tlb_pgtables(mm, first & PML4_MASK, last & PML4_MASK);
 	}
 }
#8 lore raw
Quoted 12 lines · Ingo Molnar
Quoted 8 lines · Ingo Molnar
Quoted 4 lines
------------[ cut here ]------------
kernel BUG at mm/memory.c:156!

Process shmt04 (pid: 4854, threadinfo=dca51000 task=de374510)

reproducible here too, just running LTP's shmt04 directly triggers it immediately. Looks like there's interaction of 4-level pagetables with ipc/shm.c or mm/shmem.c.

Quoted 6 lines

due to the PML4 feature, the clear_page_tables() function changed to clear_page_range(), changing its (first,size) argument to (first,last). Normally it's called with (0,TASK_SIZE) which normally is PML4-aligned, but in the (relatively rare) do_munmap() use this is not the case. We correctly calculate the range that could be cleared, but it's not PML4_SIZE aligned.

I think just removing the BUG_ON is easier. I sent a patch for that to Andrew.

Quoted 3 lines

The solution is to clip both 'first' and 'last' to PML4_SIZE boundary. Since when we calculate 'first' we add at least +PML4_SIZE to the value, it is safe to clip 'first'. It is obviously safe to clip 'last'.

It's a bit tricky because on 3level architectures it clips on PGDs, not PML4s, otherwise it would never free any pagetables. But the if()s check that correctly.

-Andi

#9 lore raw
Quoted 7 lines · Andi Kleen
Quoted 3 lines

The solution is to clip both 'first' and 'last' to PML4_SIZE boundary. Since when we calculate 'first' we add at least +PML4_SIZE to the value, it is safe to clip 'first'. It is obviously safe to clip 'last'.

It's a bit tricky because on 3level architectures it clips on PGDs, not PML4s, otherwise it would never free any pagetables. But the if()s check that correctly.

indeed ... But in the do_munmap() case we dont even clip to PGD boundary. So shouldnt we at least do the patch below?

Ingo

mm/mmap.c renamed from mm/mmap.c.orig +1 -1
@@ -1545,7 +1545,7 @@ no_mmaps:
 	}
 	if (pml4_index(last) > start_pml4_index ||
 	    pgd_index(last) > start_pgd_index) {
-		clear_page_range(tlb, first & PML4_MASK, last & PML4_MASK);
+		clear_page_range(tlb, first & PGDIR_MASK, last & PGDIR_MASK);
 		flush_tlb_pgtables(mm, first & PML4_MASK, last & PML4_MASK);
 	}
 }
#10 lore raw
Quoted 2 lines

indeed ... But in the do_munmap() case we dont even clip to PGD boundary. So shouldnt we at least do the patch below?

It shouldn't be needed. The functions below the pgd level ignore the additional bits because they always free whole levels.

-Andi

#11 lore raw
In reply to Ingo Molnar

next problem: the x64 kernel doesnt boot 32-bit userspace anymore. I'm getting an endless stream of segfaults:

Freeing unused kernel memory: 148k freed
kjournald starting. Commit interval 5 seconds
hotplug[890]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd434 error 4 hotplug[891]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd434 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4

full bootlog and .config attached. Same .config produced a working 64-bit kernel on 2.6.10-rc1-mm2.

Ingo

Linux version 2.6.10-rc1-mm3 (mingo@jupiter) (gcc version 3.4.0 20040129 (Red Hat Linux 3.4.0-0.3)) #1 Fri Nov 5 14:08:44 CET 2004 BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000e4000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000003ff30000 (usable)
BIOS-e820: 000000003ff30000 - 000000003ff40000 (ACPI data)
BIOS-e820: 000000003ff40000 - 000000003fff0000 (ACPI NVS)
BIOS-e820: 000000003fff0000 - 0000000040000000 (reserved)
BIOS-e820: 00000000fff80000 - 0000000100000000 (reserved)
No mptable found.
Looks like a VIA chipset. Disabling IOMMU. Overwrite with "iommu=allowed"
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
Processor #0 15:4 APIC version 16
ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 1, version 3, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
Setting APIC routing to flat
Using ACPI (MADT) for SMP configuration information
Built 1 zonelists
Initializing CPU#0
Kernel command line: root=/dev/hdb1 3 earlyprintk=serial,ttyS0,38400 console=ttyS0,38400 console=tty0 profile=0 nmi_watchdog=2 idle=poll preempt_thresh=0 kernel_preempt=1 kernel profiling enabled (shift: 0)
using polling idle threads.
PID hash table entries: 4096 (order: 12, 131072 bytes)
time.c: Using 1.193182 MHz PIT timer.
time.c: Detected 2040.429 MHz processor.
disabling early console
Console: colour VGA+ 80x25
Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
Placing software IO TLB between 0x2d46000 - 0x6d46000
Memory: 946056k/1047744k available (3108k kernel code, 100980k reserved, 1209k data, 148k init)
Mount-cache hash table entries: 256 (order: 0, 4096 bytes)
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 1024K (64 bytes/line)
CPU: AMD Athlon(tm) 64 Processor 3200+ stepping 08
Using local APIC timer interrupts.
Detected 12.752 MHz APIC timer.
NET: Registered protocol family 16
PCI: Using configuration type 1
mtrr: v2.0 (20020519)
ACPI: Subsystem revision 20041015
ACPI: Interpreter enabled
ACPI: Using IOAPIC for interrupt routing
ACPI: PCI Root Bridge [PCI0] (00:00)
PCI: Probing PCI hardware (bus 00)
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 7 10 *11 14 15)
ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 *5 7 10 11 14 15)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 7 10 *11 14 15)
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 7 10 11 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 7 10 11 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 7 10 11 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 7 10 11 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 7 10 11 14 15) *0, disabled.
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
PCI: Using ACPI for IRQ routing
** PCI interrupts are no longer routed automatically. If this
** causes a device to stop working, it is probably because the
** driver failed to call pci_enable_device(). As a temporary
** workaround, the "pci=routeirq" argument restores the old
** behavior. If this argument makes the device work again,
** please email the output of "lspci" to [email protected]
** so I can fix the driver.
agpgart: Detected AGP bridge 0
agpgart: Maximum main memory to use for agp memory: 941M
agpgart: AGP aperture is 64M @ 0xf8000000
PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
IA32 emulation $Id: sys_ia32.c,v 1.32 2002/03/24 13:02:28 ak Exp $
Total HugeTLB memory allocated, 0
Installing knfsd (copyright (C) 1996 [email protected]).
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
ACPI: Power Button (FF) [PWRF]
ACPI: Sleep Button (CM) [SLPB]
Real Time Clock Driver v1.12
Linux agpgart interface v0.100 (c) Dave Jones
Hangcheck: starting hangcheck timer 0.5.0 (tick is 180 seconds, margin is 60 seconds).
ACPI: PS/2 Keyboard Controller [PS2K] at I/O 0x60, 0x64, irq 1
ACPI: PS/2 Mouse Controller [PS2M] at irq 12
serio: i8042 AUX port at 0x60,0x64 irq 12
serio: i8042 KBD port at 0x60,0x64 irq 1
Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
Intel(R) PRO/1000 Network Driver - version 5.5.4-k2
Copyright (c) 1999-2004 Intel Corporation.
e100: Intel(R) PRO/100 Network Driver, 3.2.3-k2-NAPI
e100: Copyright(c) 1999-2004 Intel Corporation
ACPI: PCI interrupt 0000:00:0a.0[A] -> GSI 17 (level, low) -> IRQ 169
ACPI: PCI interrupt 0000:00:0a.0[A] -> GSI 17 (level, low) -> IRQ 169
eth0: 3Com Gigabit LOM (3C940)
PrefPort:A RlmtMode:Check Link State
forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.30.
8139too Fast Ethernet driver 0.9.27
ACPI: PCI interrupt 0000:00:0c.0[A] -> GSI 17 (level, low) -> IRQ 169
eth1: RealTek RTL8139 at 0xffffc20000004000, 00:30:4f:25:80:8a, IRQ 169
netconsole: not configured, aborting
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: IDE controller at PCI slot 0000:00:0f.1
ACPI: PCI interrupt 0000:00:0f.1[A] -> GSI 20 (level, low) -> IRQ 177
VP_IDE: chipset revision 6
VP_IDE: not 100% native mode: will probe irqs later
VP_IDE: VIA vt8237 (rev 00) IDE UDMA133 controller on pci0000:00:0f.1

    ide0: BM-DMA at 0xfc00-0xfc07, BIOS settings: hda:pio, hdb:DMA
    ide1: BM-DMA at 0xfc08-0xfc0f, BIOS settings: hdc:DMA, hdd:pio

hdb: ST3120022A, <4>warning: many lost ticks.
Your time source seems to be instable or some driver is hogging interupts
rip release_console_sem+0x16d/0x210
ATA DISK drive
elevator: using anticipatory as default io scheduler
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hdc: HL-DT-ST GCE-8525B, ATAPI CD/DVD-ROM drive
ide1 at 0x170-0x177,0x376 on irq 15
hdb: max request size: 1024KiB
hdb: 234441648 sectors (120034 MB) w/2048KiB Cache, CHS=16383/255/63, UDMA(100)
hdb: hdb1 hdb2 hdb3 hdb4 < hdb5 >
hdc: ATAPI 52X CD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.20
3ware Storage Controller device driver for Linux v1.26.02.000.
ACPI: PCI interrupt 0000:00:0f.0[B] -> GSI 20 (level, low) -> IRQ 177 sata_via(0000:00:0f.0): routed to hard irq line 5
ata1: SATA max UDMA/133 cmd 0xE800 ctl 0xE402 bmdma 0xD400 irq 177
ata2: SATA max UDMA/133 cmd 0xE000 ctl 0xD802 bmdma 0xD408 irq 177
ata1: no device found (phy stat 00000000)
scsi0 : sata_via
ata2: no device found (phy stat 00000000)
scsi1 : sata_via
Fusion MPT base driver 3.01.17
Copyright (c) 1999-2004 LSI Logic Corporation
Fusion MPT SCSI Host driver 3.01.17
ACPI: PCI interrupt 0000:00:10.4[C] -> GSI 21 (level, low) -> IRQ 185 ehci_hcd 0000:00:10.4: EHCI Host Controller
ehci_hcd 0000:00:10.4: irq 185, pci mem 0xfdf00000
ehci_hcd 0000:00:10.4: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:10.4: USB 2.0 initialized, EHCI 1.00, driver 26 Oct 2004
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 8 ports detected
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.0:USB HID core driver
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
Intel 810 + AC97 Audio, version 1.01, 14:07:49 Nov 5 2004
oprofile: using NMI interrupt.
NET: Registered protocol family 2
IP: routing cache hash table of 8192 buckets, 64Kbytes
TCP: Hash tables configured (established 262144 bind 65536)
NET: Registered protocol family 1
NET: Registered protocol family 10
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
ACPI: (supports S0 S1 S3 S4 S5)
ACPI wakeup devices:
PCI0 PS2K PS2M UAR2 UAR1 AC97 USB1 USB2 USB3 USB4 EHCI PWRB SLPB
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 148k freed
kjournald starting. Commit interval 5 seconds
hotplug[890]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd434 error 4 hotplug[891]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd434 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe6000 rip 000000004217aab1 rsp 00000000ffffd484 error 4 init[1]: segfault at 00000000fffe600ð

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.10-rc1-mm3
# Fri Nov 5 14:07:35 2004
#
CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_X86_CMPXCHG=y
CONFIG_EARLY_PRINTK=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_CLEAN_COMPILE=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_LOG_BUF_SHIFT=18
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_KALLSYMS_EXTRA_PASS=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_SHMEM=y
CONFIG_CC_ALIGN_FUNCTIONS=0
CONFIG_CC_ALIGN_LABELS=0
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
# CONFIG_TINY_SHMEM is not set

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_KMOD is not set

#
# Processor type and features
#
# CONFIG_MK8 is not set
# CONFIG_MPSC is not set
CONFIG_GENERIC_CPU=y
CONFIG_X86_L1_CACHE_BYTES=128
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
# CONFIG_MICROCODE is not set
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_MTRR=y
# CONFIG_SMP is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
# CONFIG_NUMA is not set
CONFIG_GART_IOMMU=y
CONFIG_SWIOTLB=y
CONFIG_X86_MCE=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y

#
# Power management options
#
CONFIG_PM=y
# CONFIG_PM_DEBUG is not set
CONFIG_SOFTWARE_SUSPEND=y
CONFIG_PM_STD_PARTITION=""

#
# ACPI (Advanced Configuration and Power Interface) Support #
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set CONFIG_ACPI_THINKPAD=m
CONFIG_ACPI_IBM=m
# CONFIG_ACPI_TOSHIBA is not set CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
# CONFIG_ACPI_CONTAINER is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_UNORDERED_IO=y
CONFIG_PCI_MSI=y
# CONFIG_PCI_LEGACY_PROC is not set
# CONFIG_PCI_NAMES is not set

#
# PCCARD (PCMCIA/CardBus) support
#
# CONFIG_PCCARD is not set

#
# PC-card bridges
#

#
# PCI Hotplug Support
#
CONFIG_HOTPLUG_PCI=y
# CONFIG_HOTPLUG_PCI_FAKE is not set
# CONFIG_HOTPLUG_PCI_ACPI is not set
# CONFIG_HOTPLUG_PCI_CPCI is not set
# CONFIG_HOTPLUG_PCI_PCIE is not set
# CONFIG_HOTPLUG_PCI_SHPC is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_IA32_EMULATION=y
CONFIG_IA32_AOUT=y
CONFIG_COMPAT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_UID16=y

#
# Performance-monitoring counters support
#
# CONFIG_PERFCTR is not set
# CONFIG_KEXEC is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_FW_LOADER is not set
# CONFIG_DEBUG_DRIVER is not set

#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set

#
# Parallel port support
#
# CONFIG_PARPORT is not set

#
# Plug and Play support
#
# CONFIG_PNP is not set

#
# Block devices
#
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_LBD=y
# CONFIG_CDROM_PKTCDVD is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y

#
# ATA/ATAPI/MFM/RLL support
#
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y

#
# Please see Documentation/ide.txt for help/info on IDE drives #
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_IDE_TASK_IOCTL is not set

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
# CONFIG_BLK_DEV_CMD640 is not set
CONFIG_BLK_DEV_IDEPCI=y
# CONFIG_IDEPCI_SHARE_IRQ is not set
# CONFIG_BLK_DEV_OFFBOARD is not set
# CONFIG_BLK_DEV_GENERIC is not set
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
# CONFIG_BLK_DEV_ATIIXP is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_IDE_ARM is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set

#
# SCSI device support
#
CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
# CONFIG_BLK_DEV_SR is not set
# CONFIG_CHR_DEV_SG is not set

#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs #
# CONFIG_SCSI_MULTI_LUN is not set
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set

#
# SCSI Transport Attributes
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set

#
# SCSI low-level drivers
#
CONFIG_BLK_DEV_3W_XXXX_RAID=y
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
CONFIG_SCSI_AIC79XX=y
CONFIG_AIC79XX_CMDS_PER_DEVICE=32
CONFIG_AIC79XX_RESET_DELAY_MS=2000
# CONFIG_AIC79XX_ENABLE_RD_STRM is not set
# CONFIG_AIC79XX_DEBUG_ENABLE is not set
CONFIG_AIC79XX_DEBUG_MASK=0
CONFIG_AIC79XX_REG_PRETTY_PRINT=y
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
CONFIG_SCSI_SATA=y
# CONFIG_SCSI_SATA_AHCI is not set
# CONFIG_SCSI_SATA_SVW is not set
CONFIG_SCSI_ATA_PIIX=y
# CONFIG_SCSI_SATA_NV is not set
# CONFIG_SCSI_SATA_PROMISE is not set
# CONFIG_SCSI_SATA_SX4 is not set
# CONFIG_SCSI_SATA_SIL is not set
# CONFIG_SCSI_SATA_SIS is not set
# CONFIG_SCSI_SATA_ULI is not set
CONFIG_SCSI_SATA_VIA=y
# CONFIG_SCSI_SATA_VITESSE is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_EATA_PIO is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_QLOGIC_ISP is not set
# CONFIG_SCSI_QLOGIC_FC is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_QLOGIC_1280_1040 is not set
CONFIG_SCSI_QLA2XXX=y
# CONFIG_SCSI_QLA21XX is not set
# CONFIG_SCSI_QLA22XX is not set
# CONFIG_SCSI_QLA2300 is not set
# CONFIG_SCSI_QLA2322 is not set
# CONFIG_SCSI_QLA6312 is not set
# CONFIG_SCSI_QLA6322 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set

#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set

#
# Fusion MPT device support
#
CONFIG_FUSION=y
CONFIG_FUSION_MAX_SGE=40
# CONFIG_FUSION_CTL is not set

#
# IEEE 1394 (FireWire) support
#
# CONFIG_IEEE1394 is not set

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
# CONFIG_NETLINK_DEV is not set
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_INET_TUNNEL is not set
CONFIG_IP_TCPDIAG=y
CONFIG_IP_TCPDIAG_IPV6=y
CONFIG_IPV6=y
# CONFIG_IPV6_PRIVACY is not set
# CONFIG_INET6_AH is not set
# CONFIG_INET6_ESP is not set
# CONFIG_INET6_IPCOMP is not set
# CONFIG_INET6_TUNNEL is not set
# CONFIG_IPV6_TUNNEL is not set
# CONFIG_NETFILTER is not set

#
# SCTP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set

#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set
# CONFIG_NET_CLS_ROUTE is not set

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_KGDBOE is not set
CONFIG_NETPOLL=y
# CONFIG_NETPOLL_RX is not set
# CONFIG_NETPOLL_TRAP is not set
CONFIG_NET_POLL_CONTROLLER=y
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set

#
# ARCnet devices
#
# CONFIG_ARCNET is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_NET_VENDOR_3COM is not set

#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_HP100 is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
# CONFIG_ADAPTEC_STARFIRE is not set
# CONFIG_B44 is not set
CONFIG_FORCEDETH=y
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not set
CONFIG_E100=y
CONFIG_E100_NAPI=y
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_8139CP is not set
CONFIG_8139TOO=y
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_VIA_RHINE is not set

#
# Ethernet (1000 Mbit)
#
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
CONFIG_E1000=y
# CONFIG_E1000_NAPI is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
CONFIG_SK98LIN=y
# CONFIG_VIA_VELOCITY is not set
CONFIG_TIGON3=y

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_S2IO is not set

#
# Token Ring devices
#
# CONFIG_TR is not set

#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
# CONFIG_SHAPER is not set
CONFIG_NETCONSOLE=y

#
# ISDN subsystem
#
# CONFIG_ISDN is not set

#
# Telephony Support
#
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_EVBUG is not set

#
# Input I/O drivers
#
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PCIPS2 is not set
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_SERIAL_NONSTANDARD is not set

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_ACPI is not set
CONFIG_SERIAL_8250_NR_UARTS=4
# CONFIG_SERIAL_8250_EXTENDED is not set

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=y
# CONFIG_NVRAM is not set
CONFIG_RTC=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set

#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
# CONFIG_AGP_INTEL_MCH is not set
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
CONFIG_RAW_DRIVER=y
CONFIG_HPET=y
# CONFIG_HPET_RTC_IRQ is not set
CONFIG_HPET_MMAP=y
CONFIG_MAX_RAW_DEVS=256
CONFIG_HANGCHECK_TIMER=y

#
# I2C support
#
# CONFIG_I2C is not set

#
# Dallas's 1-wire bus
#
# CONFIG_W1 is not set

#
# Misc devices
#
# CONFIG_IBM_ASM is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set

#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set

#
# Graphics support
#
# CONFIG_FB is not set
# CONFIG_VIDEO_SELECT is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y

#
# Sound
#
CONFIG_SOUND=y

#
# Advanced Linux Sound Architecture
#
# CONFIG_SND is not set

#
# Open Sound System
#
CONFIG_SOUND_PRIME=y
# CONFIG_SOUND_BT878 is not set
# CONFIG_SOUND_CMPCI is not set
# CONFIG_SOUND_EMU10K1 is not set
# CONFIG_SOUND_FUSION is not set
# CONFIG_SOUND_CS4281 is not set
# CONFIG_SOUND_ES1370 is not set
# CONFIG_SOUND_ES1371 is not set
# CONFIG_SOUND_ESSSOLO1 is not set
# CONFIG_SOUND_MAESTRO is not set
# CONFIG_SOUND_MAESTRO3 is not set
CONFIG_SOUND_ICH=y
# CONFIG_SOUND_SONICVIBES is not set
# CONFIG_SOUND_TRIDENT is not set
# CONFIG_SOUND_MSNDCLAS is not set
# CONFIG_SOUND_MSNDPIN is not set
# CONFIG_SOUND_VIA82CXXX is not set
# CONFIG_SOUND_OSS is not set
# CONFIG_SOUND_ALI5455 is not set
# CONFIG_SOUND_FORTE is not set
# CONFIG_SOUND_RME96XX is not set
# CONFIG_SOUND_AD1980 is not set

#
# USB support
#
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set

#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_BANDWIDTH is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_SUSPEND is not set
# CONFIG_USB_OTG is not set
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=y
# CONFIG_USB_EHCI_SPLIT_ISO is not set
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_UHCI_HCD is not set

#
# USB Device Class drivers
#
# CONFIG_USB_AUDIO is not set
# CONFIG_USB_BLUETOOTH_TTY is not set
# CONFIG_USB_MIDI is not set
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set
# CONFIG_USB_STORAGE is not set

#
# USB Input Devices
#
CONFIG_USB_HID=y
CONFIG_USB_HIDINPUT=y
# CONFIG_HID_FF is not set
# CONFIG_USB_HIDDEV is not set
# CONFIG_USB_AIPTEK is not set
# CONFIG_USB_WACOM is not set
# CONFIG_USB_KBTAB is not set
# CONFIG_USB_POWERMATE is not set
# CONFIG_USB_MTOUCH is not set
# CONFIG_USB_EGALAX is not set
# CONFIG_USB_XPAD is not set
# CONFIG_USB_ATI_REMOTE is not set

#
# USB Imaging devices
#
# CONFIG_USB_MDC800 is not set
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_HPUSBSCSI is not set

#
# USB Multimedia devices
#
# CONFIG_USB_DABUSB is not set

#
# Video4Linux support is needed for USB Multimedia device support #

#
# USB Network adaptors
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET is not set

#
# USB port drivers
#

#
# USB Serial Converter support
#
# CONFIG_USB_SERIAL is not set

#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_TIGL is not set
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_PHIDGETKIT is not set
# CONFIG_USB_PHIDGETSERVO is not set
# CONFIG_USB_TEST is not set

#
# USB ATM/DSL drivers
#

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
# CONFIG_EXT2_FS_SECURITY is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
# CONFIG_EXT3_FS_SECURITY is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
# CONFIG_REISER4_FS is not set
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
# CONFIG_REISERFS_FS_SECURITY is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_QUOTA is not set
CONFIG_DNOTIFY=y
CONFIG_AUTOFS_FS=y
# CONFIG_AUTOFS4_FS is not set

#
# Caches
#
# CONFIG_FSCACHE is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
# CONFIG_JOLIET is not set
# CONFIG_ZISOFS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
# CONFIG_MSDOS_FS is not set
# CONFIG_VFAT_FS is not set
# CONFIG_NTFS_FS is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_SYSFS=y
# CONFIG_DEVFS_FS is not set
# CONFIG_DEVPTS_FS_XATTR is not set
CONFIG_TMPFS=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS_SECURITY=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_RAMFS=y

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

#
# Network File Systems
#
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V4 is not set
# CONFIG_NFS_DIRECTIO is not set
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V4 is not set
CONFIG_NFSD_TCP=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=y
CONFIG_SUNRPC=y
# CONFIG_RPCSEC_GSS_KRB5 is not set
# CONFIG_RPCSEC_GSS_SPKM3 is not set
# CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y

#
# Native Language Support
#
# CONFIG_NLS is not set

#
# Profiling support
#
CONFIG_PROFILING=y
CONFIG_OPROFILE=y

#
# Kernel hacking
#
CONFIG_DEBUG_KERNEL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_SCHEDSTATS is not set
# CONFIG_DEBUG_SLAB is not set
CONFIG_DEBUG_PREEMPT=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_CHECKING is not set
CONFIG_INIT_DEBUG=y
CONFIG_IOMMU_DEBUG=y
# CONFIG_KPROBES is not set
# CONFIG_IOMMU_LEAK is not set
# CONFIG_KGDB is not set

#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Library routines
#
# CONFIG_CRC_CCITT is not set
CONFIG_CRC32=y
# CONFIG_LIBCRC32C is not set

#12 lore raw
Quoted 3 lines · Ingo Molnar

next problem: the x64 kernel doesnt boot 32-bit userspace anymore. I'm getting an endless stream of segfaults:

I bet that is caused by the flexmmap TASK_SIZE changes. Can you revert the 64bit flexmmap patch and see if that helps?

I tested it before flexmmap and it worked for me.

-Andi

#13 lore raw
Quoted 9 lines · Andi Kleen
Quoted 3 lines · Ingo Molnar

next problem: the x64 kernel doesnt boot 32-bit userspace anymore. I'm getting an endless stream of segfaults:

I bet that is caused by the flexmmap TASK_SIZE changes. Can you revert the 64bit flexmmap patch and see if that helps?

I tested it before flexmmap and it worked for me.

If it's not changed from the version that went to [email protected], flexmmap breaks 32-bit user land on x86-64. I've already reported it.

Greets,
RJW

Signature · 3 lines
- Would you tell me, please, which way I ought to go from here?
- That depends a good deal on where you want to get to.
		-- Lewis Carroll "Alice's Adventures in Wonderland"
#14 lore raw
Quoted 6 lines · Rafael J. Wysocki
Quoted 5 lines · Andi Kleen
Quoted 3 lines · Ingo Molnar

next problem: the x64 kernel doesnt boot 32-bit userspace anymore. I'm getting an endless stream of segfaults:

Quoted 7 lines
Quoted 4 lines

I bet that is caused by the flexmmap TASK_SIZE changes. Can you revert the 64bit flexmmap patch and see if that helps?

I tested it before flexmmap and it worked for me.

If it's not changed from the version that went to [email protected], flexmmap breaks 32-bit user land on x86-64. I've already reported it.

It didn't for me when I tested it without 4levels.

-Andi

#15 lore raw
Quoted 7 lines · Andi Kleen
Quoted 6 lines · Rafael J. Wysocki
Quoted 5 lines · Andi Kleen
Quoted 3 lines · Ingo Molnar

next problem: the x64 kernel doesnt boot 32-bit userspace anymore. I'm getting an endless stream of segfaults:

Quoted 6 lines
Quoted 6 lines
Quoted 4 lines

I bet that is caused by the flexmmap TASK_SIZE changes. Can you revert the 64bit flexmmap patch and see if that helps?

I tested it before flexmmap and it worked for me.

If it's not changed from the version that went to [email protected],

flexmmap

Quoted 3 lines
Quoted 1 line

breaks 32-bit user land on x86-64. I've already reported it.

It didn't for me when I tested it without 4levels.

Well, for me it did, on two different boxes, with defconfig, so I think there's at least something wrong with it.

Greets,
RJW

Signature · 3 lines
- Would you tell me, please, which way I ought to go from here?
- That depends a good deal on where you want to get to.
		-- Lewis Carroll "Alice's Adventures in Wonderland"
#16 lore raw
In reply to Ingo Molnar
Quoted 6 lines · Ingo Molnar

due to the PML4 feature, the clear_page_tables() function changed to clear_page_range(), changing its (first,size) argument to (first,last). Normally it's called with (0,TASK_SIZE) which normally is PML4-aligned, but in the (relatively rare) do_munmap() use this is not the case. We correctly calculate the range that could be cleared, but it's not PML4_SIZE aligned.

If PML4 is the outer page table (god I hate that confusing name) then this is going to break ARM.

"first" needs to be able to handle being set to virtual address 0x8000 since, for some CPUs, it is absolutely vital that we keep the first _page_ of memory mapped, but user executables are loaded at 0x8000.

Note that the PGD increment is 2MB on ARM.

Signature · 4 lines
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
#17 lore raw
Quoted 5 lines

"first" needs to be able to handle being set to virtual address 0x8000 since, for some CPUs, it is absolutely vital that we keep the first _page_ of memory mapped, but user executables are loaded at 0x8000.

Note that the PGD increment is 2MB on ARM.

I think I handled the ARM hac^wcase correctly, but I wasn't able to test it (hint hint). Even with Ingo's changes it would still work because of the guarding ifs.

-Andi

#18 lore raw
In reply to Andrew Morton
Quoted 3 lines · Andrew Morton

- Added Andi's 4-level-pagetable patches. It's tested on x86, x86_64, ia64 and ppc64. These are fairly intrusive patches and I'll probably push them upstream soon.

make it compile on x86 with !REGPARM (default):

arch/i386/mm/pgtable.c renamed from arch/i386/mm/pgtable.c.orig +1 -1
@@ -221,7 +221,7 @@ void pgd_dtor(void *pgd, kmem_cache_t *c
 	spin_unlock_irqrestore(&pgd_lock, flags);
 }
 
-pgd_t *__pgd_alloc(struct mm_struct *mm, pml4_t *pml4, unsigned long address)
+pgd_t fastcall *__pgd_alloc(struct mm_struct *mm, pml4_t *pml4, unsigned long address)
 {
 	int i;
 	pgd_t *pgd = kmem_cache_alloc(pgd_cache, GFP_KERNEL);
#19 lore raw
Quoted 26 lines · On 2004-11-05 04:17:23 -0600 Ingo Molnar <[email protected]> wrote:
Quoted 5 lines · Andrew Morton

- Added Andi's 4-level-pagetable patches. It's tested on x86, x86_64, ia64
and ppc64. These are fairly intrusive patches and I'll probably
push them
upstream soon.

make it compile on x86 with !REGPARM (default):

arch/i386/mm/pgtable.c renamed from arch/i386/mm/pgtable.c.orig +1 -1
@@ -221,7 +221,7 @@ void pgd_dtor(void *pgd, kmem_cache_t *c
 	spin_unlock_irqrestore(&pgd_lock, flags);
 }
 
-pgd_t *__pgd_alloc(struct mm_struct *mm, pml4_t *pml4, unsigned long 
 address)
+pgd_t fastcall *__pgd_alloc(struct mm_struct *mm, pml4_t *pml4, 
 unsigned long address)
 {
	int i;
	pgd_t *pgd = kmem_cache_alloc(pgd_cache, GFP_KERNEL);
Quoted 1 line

-

I was about to whine to LKML about how I couldn't build rc1-mm3 until I saw your patch. This fixes it. Thank you :)

Cheers,

- Mike

#20 lore raw
In reply to Andrew Morton

It's life Jim but not as we know it...

This happened during modprobe of alsa modules. Keyboard still alive, everything else dead; not even sysrq would do anything, netconsole had no output, luckily this made it to syslog:

Nov  5 21:39:27 pc kernel: Unable to handle kernel paging request at virtual address f8c00000
Nov  5 21:39:27 pc kernel:  printing eip:
Nov  5 21:39:27 pc kernel: c02bddce
Nov  5 21:39:27 pc kernel: *pde = 00000000
Nov  5 21:39:27 pc kernel: Oops: 0002 [#1]
Nov  5 21:39:27 pc kernel: PREEMPT SMP
Nov  5 21:39:27 pc kernel: Modules linked in: soundcore intel_agp agpgart bttv video_buf firmware_class i2c_algo_bit btcx_risc i2c_core us
blp ehci_hcd uhci_hcd
Nov  5 21:39:27 pc kernel: CPU:    0
Nov  5 21:39:27 pc kernel: EIP:    0060:[<c02bddce>]    Not tainted VLI
Nov  5 21:39:27 pc kernel: EFLAGS: 00010246   (2.6.10-rc1-mm3)
Nov  5 21:39:27 pc kernel: EIP is at __lock_text_end+0xbe3/0x119a
Nov  5 21:39:27 pc kernel: eax: 00000000   ebx: 000a151a   ecx: 0002851a 
  edx: b7c82008
Nov  5 21:39:27 pc kernel: esi: b7cfb008   edi: f8c00000   ebp: f6c1c000 
  esp: f6c1cf14
Nov  5 21:39:27 pc kernel: ds: 007b   es: 007b   ss: 0068
Nov  5 21:39:27 pc kernel: Process modprobe (pid: 955, threadinfo=f6c1c000 task=f76ef530)
Nov  5 21:39:27 pc kernel: Stack: 00000002 0002851a f8b87000 b7c82008 c01d2a10 b7c82008 000a151a 08049410
Nov  5 21:39:27 pc kernel:        c012f697 00000000 00000001 00008000 00000000 00000000 c1707400 f6a41580
Nov  5 21:39:27 pc kernel:        f58c4ac4 f58c4ac4 00000046 00000000 f6a41580 00000246 00000246 00000000
Nov  5 21:39:27 pc kernel: Call Trace:
Nov  5 21:39:27 pc kernel:  [<c01d2a10>] copy_from_user+0x29/0x4d
Nov  5 21:39:27 pc kernel:  [<c012f697>] load_module+0x73/0x916
Nov  5 21:39:27 pc kernel:  [<c0142007>] do_munmap+0x10e/0x11c
Nov  5 21:39:27 pc kernel:  [<c012ff87>] sys_init_module+0x4d/0x207
Nov  5 21:39:27 pc kernel:  [<c0104b31>] sysenter_past_esp+0x52/0x71
Nov  5 21:39:27 pc kernel: Code: 88 00 51 50 31 c0 f3 aa 58 59 e9 75 4b f1 ff 01 c1 e9 a9 4b f1 ff 8d 4c 88 00 e9 a0 4b f1 ff 01 c1 eb 04

8d 4c 88 00 51 50 31 c0 <f3> aa 58 59 e9 d1 4b f1 ff ba f2 ff ff ff e9 60 96 f1 ff b9 f2

*__lock_text_end+0xbe3: hidden in inlined functions

*copy_from_user+0x29: hidden in inlined functions

*load_module+0x73:
0xc012f697 is in load_module (kernel/module.c:1457).

1452            /* Suck in entire file: we'll want most of it. */
1453            /* vmalloc barfs on "unusual" numbers.  Check here */
1454            if (len > 64 * 1024 * 1024 || (hdr = vmalloc(len)) == NULL)

1455 return ERR_PTR(-ENOMEM);
1456 if (copy_from_user(hdr, umod, len) != 0) {
1457 err = -EFAULT;

*do_munmap+0x10e:
0xc0142007 is in do_munmap (mm/mmap.c:1753).
1748 spin_unlock(&mm->page_table_lock);
1749
1750 /* Fix up all other VM information */
1751 unmap_vma_list(mm, mpnt);
1752
1753 return 0;

*sys_init_module+0x4d: inlined

*sysenter_past_esp+0x52:
0xc0104b31 is at arch/i386/kernel/entry.S:243.

238             testb $(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT),TI_flags(%ebp)
239             jnz syscall_trace_entry
240             cmpl $(nr_syscalls), %eax
241             jae syscall_badsys
242             call *sys_call_table(,%eax,4)
243             movl %eax,EAX(%esp)

Con

#21 lore raw

2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

In reply to Andrew Morton

The following error (compin from Linus' tree) is caused by the fact that hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map 2.6.10-rc1-mm3; fi
WARNING: /lib/modules/2.6.10-rc1-mm3/kernel/drivers/acpi/container.ko needs unknown symbol hotplug_path

<-- snip -->

#22 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 10 lines · Adrian Bunk

The following error (compin from Linus' tree) is caused by the fact that hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map 2.6.10-rc1-mm3; fi
WARNING: /lib/modules/2.6.10-rc1-mm3/kernel/drivers/acpi/container.ko needs unknown symbol hotplug_path

<-- snip -->

Hm, must be an -mm specific change that is causing this. I don't see this in the current tree.

Len, why would any ACPI code be wanting to get access to hotplug_path directly?

thanks,

greg k-h

#23 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 10 lines · Greg KH
Quoted 9 lines · Adrian Bunk

The following error (compin from Linus' tree) is caused by the fact that hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map 2.6.10-rc1-mm3; fi
WARNING: /lib/modules/2.6.10-rc1-mm3/kernel/drivers/acpi/container.ko needs unknown symbol hotplug_path

Quoted 7 lines
Quoted 1 line

<-- snip -->

Hm, must be an -mm specific change that is causing this. I don't see this in the current tree.

Len, why would any ACPI code be wanting to get access to hotplug_path directly?

I've found it. This wants to introduce a new direct /sbin/hotplug call, with "add" and "remove" events, without sysfs support.

It should use class support or kobject_hotplug() instead. Nobody should fake hotplug events anymore, cause every other notification transport will not get called (currently uevent over netlink).
http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/broken-out/bk-acpi.patch

+static int
+container_run_sbin_hotplug(struct acpi_device *device, char *action) +{
...
+ argv[i++] = hotplug_path;
+ argv[i++] = "container";
+ argv[i] = NULL;
...
+ i = 0;
+ envp[i++] = "HOME=/";
+ envp[i++] = "PATH=/sbin;/bin;/usr/sbin;/usr/bin";
+ envp[i++] = action_str;
+ envp[i++] = container_str;
+ envp[i++] = "PLATFORM=ACPI";
+ envp[i] = NULL;
...

Thanks,
Kay

#24 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 12 lines · Kay Sievers
Quoted 1 line · Greg KH
Quoted 1 line

The following error (compin from Linus' tree) is caused by the

fact that

Quoted 6 lines
Quoted 6 lines

hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map

2.6.10-rc1-mm3; fi

Quoted 9 lines

I've found it. This wants to introduce a new direct /sbin/hotplug call,
with "add" and "remove" events, without sysfs support.

It should use class support or kobject_hotplug() instead. Nobody should
fake hotplug events anymore, cause every other notification transport will not get called (currently uevent over netlink).

we were discussing this exact thing recently.. we maybe able to clean this up.. here is why we are doing this manual thingy...

When we support physical component hotplug, we want to create the sysfs entries, but that doesnt mean the component (i.e CPU or memory) is hotplugged. The reason is for node level hotplug there are sequencing requirements, memory needs to be brought up first before cpu, and also the error handling/policy requirments which we want the user space to handle it and not from kernel side.

the sequence is when physical arrival of cpu is seen, we will just create a sysfs entry which will also send an add event (which really is just cpu arrival, and sysfs created).

In our model the event is just consumed by the script cpu.agent, which would in turn decide and bring the cpu up by

#echo 1> /sys/devices/system/cpu/cpu#/online

what apps really would care about is the ONLINE (which doesnt exist) event itself, and the OFFLINE. The ADD/REMOVE only indicate sysfs entries appear and disappear.

I dont know if adding ONLINE/OFFLINE is the right thing, or use the CHANGE notification to inform.

This is an area that needs more though which is slightly different from how other devices are being handled.

Greg-kh/Rusty .. any suggestions

Cheers,
Ashok Raj
- Linux OS & Technology Team

#25 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 39 lines · Ashok Raj
Quoted 12 lines · Kay Sievers
Quoted 1 line · Greg KH
Quoted 1 line

The following error (compin from Linus' tree) is caused by the

fact that

Quoted 6 lines
Quoted 6 lines

hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map

2.6.10-rc1-mm3; fi

Quoted 9 lines

I've found it. This wants to introduce a new direct /sbin/hotplug call,
with "add" and "remove" events, without sysfs support.

It should use class support or kobject_hotplug() instead. Nobody should
fake hotplug events anymore, cause every other notification transport will not get called (currently uevent over netlink).

we were discussing this exact thing recently.. we maybe able to clean this up.. here is why we are doing this manual thingy...

When we support physical component hotplug, we want to create the sysfs entries, but that doesnt mean the component (i.e CPU or memory) is hotplugged. The reason is for node level hotplug there are sequencing requirements, memory needs to be brought up first before cpu, and also the error handling/policy requirments which we want the user space to handle it and not from kernel side.

the sequence is when physical arrival of cpu is seen, we will just create a sysfs entry which will also send an add event (which really is just cpu arrival, and sysfs created).

In our model the event is just consumed by the script cpu.agent, which would in turn decide and bring the cpu up by

Quoted 7 lines

#echo 1> /sys/devices/system/cpu/cpu#/online

what apps really would care about is the ONLINE (which doesnt exist) event itself, and the OFFLINE. The ADD/REMOVE only indicate sysfs entries appear and disappear.

I dont know if adding ONLINE/OFFLINE is the right thing, or use the CHANGE notification to inform.

That's fine. But call kobject_hotplug() if you want to do that. Don't rewrite your own function, or you will loose out on a lot of the hotplug functionality (sequence numbers, kevent notifications, etc.)

thanks,

greg k-h

#26 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

In reply to Ashok Raj
Quoted 41 lines · Ashok Raj
Quoted 12 lines · Kay Sievers
Quoted 1 line · Greg KH
Quoted 1 line

The following error (compin from Linus' tree) is caused by the

fact that

Quoted 6 lines
Quoted 6 lines

hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map

2.6.10-rc1-mm3; fi

Quoted 9 lines

I've found it. This wants to introduce a new direct /sbin/hotplug call,
with "add" and "remove" events, without sysfs support.

It should use class support or kobject_hotplug() instead. Nobody should
fake hotplug events anymore, cause every other notification transport will not get called (currently uevent over netlink).

we were discussing this exact thing recently.. we maybe able to clean this up.. here is why we are doing this manual thingy...

When we support physical component hotplug, we want to create the sysfs entries, but that doesnt mean the component (i.e CPU or memory) is hotplugged. The reason is for node level hotplug there are sequencing requirements, memory needs to be brought up first before cpu, and also the error handling/policy requirments which we want the user space to handle it and not from kernel side.

the sequence is when physical arrival of cpu is seen, we will just create a sysfs entry which will also send an add event (which really is just cpu arrival, and sysfs created).

In our model the event is just consumed by the script cpu.agent, which would in turn decide and bring the cpu up by

#echo 1> /sys/devices/system/cpu/cpu#/online

Quoted 7 lines

what apps really would care about is the ONLINE (which doesnt exist) event itself, and the OFFLINE. The ADD/REMOVE only indicate sysfs entries appear and disappear.

I dont know if adding ONLINE/OFFLINE is the right thing, or use the CHANGE notification to inform.

This is an area that needs more though which is slightly different from how other devices are being handled.

There is already an "offline" event used for cpu's in drivers/base/cpu.c. It was recently converted from calling /sbin/hotplug directly :)

ChangeSet: 1.2021
http://linus.bkbits.net:8080/linux-2.5/[email protected]?nav=index.html|src/|src/kernel|related/kernel/cpu.c|[email protected]

Kay

#27 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

In reply to Kay Sievers
Quoted 34 lines · Kay Sievers
Quoted 10 lines · Greg KH
Quoted 9 lines · Adrian Bunk

The following error (compin from Linus' tree) is caused by the fact that hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map 2.6.10-rc1-mm3; fi
WARNING: /lib/modules/2.6.10-rc1-mm3/kernel/drivers/acpi/container.ko needs unknown symbol hotplug_path

Quoted 7 lines
Quoted 1 line

<-- snip -->

Hm, must be an -mm specific change that is causing this. I don't see this in the current tree.

Len, why would any ACPI code be wanting to get access to hotplug_path directly?

I've found it. This wants to introduce a new direct /sbin/hotplug call, with "add" and "remove" events, without sysfs support.

It should use class support or kobject_hotplug() instead. Nobody should fake hotplug events anymore, cause every other notification transport will not get called (currently uevent over netlink).
http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/broken-out/bk-acpi.patch

(quoted diff) +5 -0
+static int
+container_run_sbin_hotplug(struct acpi_device *device, char *action)
+{
...
+	argv[i++] = hotplug_path;
+	argv[i++] = "container";

Review

Quoted 10 lines
(quoted diff) +8 -0
+	argv[i] = NULL;
...
+	i = 0;
+	envp[i++] = "HOME=/";
+	envp[i++] = "PATH=/sbin;/bin;/usr/sbin;/usr/bin";
+	envp[i++] = action_str;
+	envp[i++] = container_str;
+	envp[i++] = "PLATFORM=ACPI";
+	envp[i] = NULL;
...

Good catch. Yeah, that code is just wrong.

Anil, your name is on this file. Care to fix it up to use the proper driver core hotplug functionality instead of rolling your own?

Or is there some reason you are wanting to do this kind of notification that the driver core is not providing for you?

thanks,

greg k-h

#28 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 48 lines · Greg KH
Quoted 34 lines · Kay Sievers
Quoted 10 lines · Greg KH
Quoted 9 lines · Adrian Bunk

The following error (compin from Linus' tree) is caused by the fact that hotplug_path is no longer EXPORT_SYMBOL'ed:

<-- snip -->

if [ -r System.map ]; then /sbin/depmod -ae -F System.map 2.6.10-rc1-mm3; fi
WARNING: /lib/modules/2.6.10-rc1-mm3/kernel/drivers/acpi/container.ko needs unknown symbol hotplug_path

Quoted 7 lines
Quoted 1 line

<-- snip -->

Hm, must be an -mm specific change that is causing this. I don't see this in the current tree.

Len, why would any ACPI code be wanting to get access to hotplug_path directly?

I've found it. This wants to introduce a new direct /sbin/hotplug call, with "add" and "remove" events, without sysfs support.

It should use class support or kobject_hotplug() instead. Nobody should fake hotplug events anymore, cause every other notification transport will not get called (currently uevent over netlink).
http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/broken-out/bk-acpi.patch

(quoted diff) +5 -0
+static int
+container_run_sbin_hotplug(struct acpi_device *device, char *action)
+{
...
+	argv[i++] = hotplug_path;
+	argv[i++] = "container";

Review

Quoted 10 lines
(quoted diff) +8 -0
+	argv[i] = NULL;
...
+	i = 0;
+	envp[i++] = "HOME=/";
+	envp[i++] = "PATH=/sbin;/bin;/usr/sbin;/usr/bin";
+	envp[i++] = action_str;
+	envp[i++] = container_str;
+	envp[i++] = "PLATFORM=ACPI";
+	envp[i] = NULL;
...

Good catch. Yeah, that code is just wrong.

Quoted 5 lines

Anil, your name is on this file. Care to fix it up to use the proper driver core hotplug functionality instead of rolling your own?

Or is there some reason you are wanting to do this kind of notification that the driver core is not providing for you?

Greg,
Yes, I agree what you say, we need to use class support or kobject_hotplug().
But in this case "a container object" gets added and this container object has no direct representation in sysfs. So in this case can you please tell me
what is the best thing to notify user.agent. Sorry I had looked some really old examples when I wrote this driver.

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

thanks,
Anil

Quoted 4 lines

thanks,

greg k-h

#29 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 5 lines · Keshavamurthy Anil S

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

Hi Anil,

Please take a look at drivers/base/firmware_class.c to see how one can suppress initial hotplug notification and call hotplug when object is finally ready. Hopefully you can use similar solution.

Signature · 1 line
Dmitry
#30 lore raw

Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

In reply to Keshavamurthy Anil S
Quoted 4 lines · Keshavamurthy Anil S

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

This happens when kobject_add() is called. You shouldn't ever need to call kobject_hotplug() for an add event yourself.

thanks,

greg k-h

-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click

#31 lore raw

Re: [ACPI] Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 9 lines · Greg KH
Quoted 4 lines · Keshavamurthy Anil S

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

This happens when kobject_add() is called. You shouldn't ever need to call kobject_hotplug() for an add event yourself.

This is not always the case. One might want to postpone ADD event until all summpelental object attributes are created. This way userspace is presented with object in consistent state.

Signature · 8 lines
Dmitry


-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
#32 lore raw

Re: [ACPI] Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 7 lines · Dmitry Torokhov
Quoted 6 lines · Greg KH
Quoted 4 lines · Keshavamurthy Anil S

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

Quoted 7 lines
Quoted 3 lines

This happens when kobject_add() is called. You shouldn't ever need to call kobject_hotplug() for an add event yourself.

This is not always the case. One might want to postpone ADD event until all summpelental object attributes are created. This way userspace is presented with object in consistent state.

No, that's a mess. Let userspace wait for those attributes to show up if they need to. That's what the "wait_for_sysfs" program bundled with udev is for.

thanks,

greg k-h

-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click

#33 lore raw

Re: [ACPI] Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 12 lines · Greg KH
Quoted 11 lines · Dmitry Torokhov
Quoted 9 lines · Greg KH
Quoted 4 lines · Keshavamurthy Anil S

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

This happens when kobject_add() is called. You shouldn't ever need to call kobject_hotplug() for an add event yourself.

Quoted 8 lines
Quoted 3 lines

This is not always the case. One might want to postpone ADD event until all summpelental object attributes are created. This way userspace is presented with object in consistent state.

No, that's a mess. Let userspace wait for those attributes to show up if they need to. That's what the "wait_for_sysfs" program bundled with udev is for.

I strongly disagree:

- it makes userspace being aware of implementation details (whe exactly it has to wait for, for how long, etc.) which is bad thing;
- not all the world is udev - needless replication of the code and bugs;
- not only making visible but announcing an object in non-working state to userspace simply does not feel right.

Signature · 8 lines
Dmitry


-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
#34 lore raw

Re: [ACPI] Re: 2.6.10-rc1-mm3: ACPI problem due to un-exported hotplug_path

Quoted 22 lines · Dmitry Torokhov
Quoted 12 lines · Greg KH
Quoted 11 lines · Dmitry Torokhov
Quoted 9 lines · Greg KH
Quoted 4 lines · Keshavamurthy Anil S

Also, since you have brought this, I have one another question to you. Now in the new kernel, I see whenever anybody calls sysdev_register(kobj), an "ADD" notification is sent. why is this? I would like to call kobject_hotplug(kobj, ADD) later.

This happens when kobject_add() is called. You shouldn't ever need to call kobject_hotplug() for an add event yourself.

Quoted 8 lines
Quoted 3 lines

This is not always the case. One might want to postpone ADD event until all summpelental object attributes are created. This way userspace is presented with object in consistent state.

No, that's a mess. Let userspace wait for those attributes to show up if they need to. That's what the "wait_for_sysfs" program bundled with udev is for.

Quoted 7 lines

I strongly disagree:

- it makes userspace being aware of implementation details (whe exactly it has to wait for, for how long, etc.) which is bad thing;
- not all the world is udev - needless replication of the code and bugs;
- not only making visible but announcing an object in non-working state to userspace simply does not feel right.

Based on the recent additions to the /sbin/hotplug environment variables, userspace now knows exactly what it needs to wait for, if anything.

Also, there's no needless replication of this code, that's why wait_for_sysfs was split off of udev, it's for everyone to use, if they want to.

thanks,

greg k-h

#35 lore raw

2.6.10-rc1-mm3: drm_ati_pcigart_{init,cleanup} multiple definition

In reply to Andrew Morton
Quoted 5 lines · Andrew Morton

...
Changes since 2.6.10-rc1-mm2:
...
bk-drm.patch
...

This causes the following compile error:

<-- snip -->

...
LD drivers/char/drm/built-in.o
drivers/char/drm/radeon.o(.text+0x120): In function `drm_ati_pcigart_init':
: multiple definition of drm_ati_pcigart_init' drivers/char/drm/r128.o(.text+0x120): first defined here drivers/char/drm/radeon.o(.text+0x350): In function drm_ati_pcigart_cleanup':
: multiple definition of `drm_ati_pcigart_cleanup' drivers/char/drm/r128.o(.text+0x350): first defined here
make[3]: *** [drivers/char/drm/built-in.o] Error 1

<-- snip -->

The definition of non-inline functions in drivers/char/drm/ati_pcigart.h is not a good idea.

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#36 lore raw

Re: 2.6.10-rc1-mm3: drm_ati_pcigart_{init,cleanup} multiple definition

Quoted 10 lines

...
LD drivers/char/drm/built-in.o
drivers/char/drm/radeon.o(.text+0x120): In function `drm_ati_pcigart_init':
: multiple definition of drm_ati_pcigart_init' drivers/char/drm/r128.o(.text+0x120): first defined here drivers/char/drm/radeon.o(.text+0x350): In function drm_ati_pcigart_cleanup':
: multiple definition of `drm_ati_pcigart_cleanup' drivers/char/drm/r128.o(.text+0x350): first defined here
make[3]: *** [drivers/char/drm/built-in.o] Error 1

The latest drm-2.6 tree avoids this I'm working with Jon to see if this solution is suitable..

It is a leftover from the templated tree, building into the kernel wasn't noticed until my merge....

Dave.

Signature · 3 lines
David Airlie, Software Engineer
http://www.skynet.ie/~airlied / airlied at skynet.ie
pam_smb / Linux DECstation / Linux VAX / ILUG person
#37 lore raw

Re: 2.6.10-rc1-mm3: drm_ati_pcigart_{init,cleanup} multiple definition

Quoted 3 lines · Dave Airlie
Quoted 3 lines

LD drivers/char/drm/built-in.o
drivers/char/drm/radeon.o(.text+0x120): In function `drm_ati_pcigart_init':
: multiple definition of `drm_ati_pcigart_init'

I put a quick fix for this into DRM CVS that moves the two functions into the drm-core module. Let me know if you want to do anything more complicated.

Signature · 2 lines
Jon Smirl
[email protected]
#38 lore raw
In reply to Andrew Morton
Quoted 7 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

+o_direct-fix-again.patch

Hopefully get the direct-io fix done right. Should fix the LVM setup problems people have been reporting.

It does for me. First mm kernel that has worked for me since 2.6.9 came out.

Now I can run the RT kernels again.

#39 lore raw
In reply to Andrew Morton
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

Quoted 9 lines

- Added Andi's 4-level-pagetable patches. It's tested on x86, x86_64, ia64 and ppc64. These are fairly intrusive patches and I'll probably push them upstream soon.

- UML updates, ppc64 updates.

- Should fix a few bugs which people reported in 2.6.10-rc1-mm2.

I get this from "make xconfig" on x86-64 ("make menuconfig" apparently works):

rafael@albercik:/local/src/mm/linux-2.6.10-rc1-mm3> make xconfig

  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/split-include
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kconfig_load.o
  HOSTCC  scripts/kconfig/mconf.o
  HOSTCC  scripts/kconfig/zconf.tab.o

HOSTCXX scripts/kconfig/qconf.o
HOSTLD scripts/kconfig/qconf
scripts/kconfig/qconf arch/x86_64/Kconfig ./scripts/kconfig/libkconfig.so: cannot open shared object file: No such file or directory
make[1]: *** [xconfig] Error 1
make: *** [xconfig] Error 2

Greets,
RJW

Signature · 3 lines
- Would you tell me, please, which way I ought to go from here?
- That depends a good deal on where you want to get to.
		-- Lewis Carroll "Alice's Adventures in Wonderland"
#40 lore raw

Re: 2.6.10-rc1-mm3: (fix for make xconfig)

Quoted 4 lines · Rafael J. Wysocki
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

Quoted 3 lines
Quoted 3 lines

- Added Andi's 4-level-pagetable patches. It's tested on x86, x86_64,

ia64

Quoted 1 line
Quoted 1 line

and ppc64. These are fairly intrusive patches and I'll probably push

them

Quoted 7 lines
Quoted 5 lines

upstream soon.

- UML updates, ppc64 updates.

- Should fix a few bugs which people reported in 2.6.10-rc1-mm2.

I get this from "make xconfig" on x86-64 ("make menuconfig" apparently

works):

Quoted 9 lines

rafael@albercik:/local/src/mm/linux-2.6.10-rc1-mm3> make xconfig

  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/split-include
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kconfig_load.o
  HOSTCC  scripts/kconfig/mconf.o
  HOSTCC  scripts/kconfig/zconf.tab.o
Quoted 4 lines

HOSTCXX scripts/kconfig/qconf.o
HOSTLD scripts/kconfig/qconf
scripts/kconfig/qconf arch/x86_64/Kconfig ./scripts/kconfig/libkconfig.so: cannot open shared object file: No such

file

Quoted 3 lines

or directory
make[1]: *** [xconfig] Error 1
make: *** [xconfig] Error 2

I did this to fix it:

kconfig/Makefile renamed from kconfig/Makefile.orig +4 -2
@@ -70,9 +70,11 @@
 #         Based on GTK which needs to be installed to compile it
 # object files used by all kconfig flavours
 
+libkconfig-objs := zconf.tab.o
+
 hostprogs-y	:= conf mconf qconf gconf
-conf-objs	:= conf.o  zconf.tab.o
-mconf-objs	:= mconf.o zconf.tab.o
+conf-objs	:= conf.o  libkconfig.so
+mconf-objs	:= mconf.o libkconfig.so
 
 ifeq ($(MAKECMDGOALS),xconfig)
 	qconf-target := 1

Greets,
RJW

Signature · 3 lines
- Would you tell me, please, which way I ought to go from here?
- That depends a good deal on where you want to get to.
		-- Lewis Carroll "Alice's Adventures in Wonderland"
#41 lore raw

Re: 2.6.10-rc1-mm3: (fix for make xconfig)

Quoted 17 lines · Rafael J. Wysocki
Quoted 4 lines

HOSTCXX scripts/kconfig/qconf.o
HOSTLD scripts/kconfig/qconf
scripts/kconfig/qconf arch/x86_64/Kconfig ./scripts/kconfig/libkconfig.so: cannot open shared object file: No such

file

Quoted 3 lines

or directory
make[1]: *** [xconfig] Error 1
make: *** [xconfig] Error 2

I did this to fix it:

kconfig/Makefile renamed from kconfig/Makefile.orig +0 -0
@@ -70,9 +70,11 @@
 #         Based on GTK which needs to be installed to compile it
 # object files used by all kconfig flavours
 

kconfig/Makefile line 80

Quoted 10 lines
kconfig/Makefile renamed from kconfig/Makefile.orig +4 -2
+libkconfig-objs := zconf.tab.o
+
 hostprogs-y	:= conf mconf qconf gconf
-conf-objs	:= conf.o  zconf.tab.o
-mconf-objs	:= mconf.o zconf.tab.o
+conf-objs	:= conf.o  libkconfig.so
+mconf-objs	:= mconf.o libkconfig.so
 
 ifeq ($(MAKECMDGOALS),xconfig)
 	qconf-target := 1

Wrong fix.
I will look into it later tonight.

Sam

#42 lore raw

Re: 2.6.10-rc1-mm3: (fix for make xconfig)

Quoted 2 lines · Sam Ravnborg

Wrong fix.
I will look into it later tonight.

Here is the fix. Tested with both xconfg and gconfig.

Sam

# This is a BitKeeper generated diff -Nru style patch. #
# ChangeSet
# 2004/11/06 21:18:02+01:00 [email protected]
# kconfig: fix xconfig and gconfig
#
# Patch that disabled use of loadable modules broke qconf and gconf.
# Fixed by disabling this also for these targets.
#
# Signed-off-by: Sam Ravnborg <[email protected]>
#
# scripts/kconfig/Makefile
# 2004/11/06 21:17:26+01:00 [email protected] +5 -4
# Enable build of qconf anf gconf without loadable module support
#

scripts/kconfig/Makefile +5 -4
diff -Nru a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
@@ -84,11 +84,11 @@
 
 ifeq ($(qconf-target),1)
 qconf-cxxobjs	:= qconf.o
-qconf-objs	:= kconfig_load.o
+qconf-objs	:= kconfig_load.o zconf.tab.o
 endif
 
 ifeq ($(gconf-target),1)
-gconf-objs	:= gconf.o kconfig_load.o
+gconf-objs	:= gconf.o kconfig_load.o zconf.tab.o
 endif
 
 clean-files	:= lkc_defs.h qconf.moc .tmp_qtcheck \
@@ -99,10 +99,11 @@
 HOSTCFLAGS_zconf.tab.o	:= -I$(src)
 
 HOSTLOADLIBES_qconf	= -L$(QTLIBPATH) -Wl,-rpath,$(QTLIBPATH) -l$(QTLIB) -ldl
-HOSTCXXFLAGS_qconf.o	= -I$(QTDIR)/include 
+HOSTCXXFLAGS_qconf.o	= -I$(QTDIR)/include -D LKC_DIRECT_LINK
 
 HOSTLOADLIBES_gconf	= `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --libs`
-HOSTCFLAGS_gconf.o	= `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --cflags`
+HOSTCFLAGS_gconf.o	= `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --cflags` \
+                          -D LKC_DIRECT_LINK
 
 $(obj)/conf.o $(obj)/mconf.o $(obj)/qconf.o $(obj)/gconf.o: $(obj)/zconf.tab.h
 
#43 lore raw
In reply to Andrew Morton

* Andrew Morton <[email protected]>:

Quoted 1 line

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm3/

On 2xSMP

Ran tvtime, exited it (seemingly) OK, but shell didn't return. No reaction to ^C, however ^Z brought shell back. Killed tvtime and bash reported that it was terminated. Load went to 1. Did a 'ps aux', which 'hanged' after displaying most of process list. So I straced another one, which hanged at read() of /proc/<pid>/cmdline (<pid> was of supposedly dead tvtime). Also, these didn't react to ^C nor ^Z. kill -9 -1 <pidofdeadtvtime> hanged machine solid.

Found that dump in log later. I know it's not Oops, what is it?

This could be an older issue, I had a 2.6.9-mm1 which suddenly put load to 1 and never went down from that (it did reboot cleanly into 2.6.10-rc1-mm3).

- -

Nov  6 00:49:27 tienel kernel: c010a4a9
Nov  6 00:49:27 tienel kernel: PREEMPT SMP
Nov  6 00:49:27 tienel kernel: Modules linked in: mga sd_mod sg sr_mod ide_cd cdrom binfmt_misc ipv6 snd_bt87x tuner tvaudio bttv video_buf firmware_class i2c_algo_bit v4l2_common btcx_risc videodev ub e100 ohci_hcd evdev nls_iso8859_1 nls_cp437 vfat fat joydev usbhid usb_storage usbcore scsi_mod amd_k7_agp agpgart snd_ens1371 snd_rawmidi snd_seq_device snd_ac97_codec snd_pcm_oss snd_mixer_oss snd_pcm snd_timer snd soundcore snd_page_alloc gameport w83781d i2c_sensor i2c_amd756 i2c_core eepro100 mii
Nov  6 00:49:27 tienel kernel: CPU:    0
Nov  6 00:49:27 tienel kernel: EIP:    0060:[dma_free_coherent+41/96] Tainted: P      VLI
Nov  6 00:49:27 tienel kernel: EFLAGS: 00210202   (2.6.10-rc1-mm3)
Nov  6 00:49:27 tienel kernel: EIP is at dma_free_coherent+0x29/0x60
Nov  6 00:49:27 tienel kernel: eax: 00000000   ebx: e3bb8000   ecx: e3bb8000   edx: 00000000
Nov  6 00:49:27 tienel kernel: esi: 00000001   edi: e28e911c   ebp: f38974c0   esp: cf43ff14
Nov  6 00:49:27 tienel kernel: ds: 007b   es: 007b   ss: 0068
Nov  6 00:49:27 tienel kernel: Process tvtime (pid: 13513, threadinfo=cf43e000 task=cf736a60)
Nov  6 00:49:27 tienel kernel: Stack: 00000000 e3bb8000 f89c5037 23bb8000 f89fa61e e28e9084 e28e9060 f3897100
Nov  6 00:49:27 tienel kernel:        c4fdc17c f8a2fe45 00000000 f77ce8a0 c4fdc17c f89fbb8b c18073c0 ecbf1820
Nov  6 00:49:27 tienel kernel:        c4fdc17c c72b8d04 c72b8ce8 c72b8ce8 c72b8d14 f7870880 c014d88f 00000000
Nov  6 00:49:27 tienel kernel: Call Trace:
Nov  6 00:49:27 tienel kernel:  [pg0+945811511/1069777920] btcx_riscmem_free+0x37/0x80 [btcx_risc]
Nov  6 00:49:27 tienel kernel:  [pg0+946030110/1069777920] videobuf_dma_pci_unmap+0x2e/0x80 [video_buf]
Nov  6 00:49:27 tienel kernel:  [pg0+946249285/1069777920] bttv_dma_free+0x55/0x80 [bttv]
Nov  6 00:49:27 tienel kernel:  [pg0+946035595/1069777920] videobuf_vm_close+0x8b/0xc0 [video_buf]
Nov  6 00:49:27 tienel kernel:  [remove_vm_struct+127/144] remove_vm_struct+0x7f/0x90
Nov  6 00:49:27 tienel kernel:  [unmap_vma_list+14/32] unmap_vma_list+0xe/0x20
Nov  6 00:49:27 tienel kernel:  [do_munmap+269/320] do_munmap+0x10d/0x140
Nov  6 00:49:27 tienel kernel:  [sys_munmap+65/112] sys_munmap+0x41/0x70
Nov  6 00:49:27 tienel kernel:  [sysenter_past_esp+82/113] sysenter_past_esp+0x52/0x71
Nov  6 00:49:27 tienel kernel: Code: 00 00 56 31 f6 85 c0 53 89 cb 74 06 8b b0 b8 00 00 00 8d 42 ff ba ff ff ff ff c1 e8 0b 90 8d 74 26 00 4 2 d1 e8 75 fb 85 f6 74 13 <8b> 0e 39 cb 72 0d 8b 46 08 c1 e0 0c 8d 04 08 39 c3 72 09 89 d8

- -

Signature · 2 lines
   Psi -- <http://www.iki.fi/pasi.savolainen>
Vivake -- Virtuaalinen valokuvauskerho <http://members.lycos.co.uk/vivake/>
#44 lore raw

PATCH 1/1 sched.c whitespace mangler

In reply to Andrew Morton

Attack of the whitespace mangler in sched.c. Convert spaces to tabs.

Convert whitespace in sched.c to tabs

kernel/sched.c +27 -27
Index: linux-2.6.10-rc1-mm3/kernel/sched.c
===================================================================
@@ -1138,7 +1138,7 @@ out:
 int fastcall wake_up_process(task_t * p)
 {
 	return try_to_wake_up(p, TASK_STOPPED | TASK_TRACED |
-		       		 TASK_INTERRUPTIBLE | TASK_UNINTERRUPTIBLE, 0);
+				 TASK_INTERRUPTIBLE | TASK_UNINTERRUPTIBLE, 0);
 }
 
 EXPORT_SYMBOL(wake_up_process);
@@ -2019,7 +2019,7 @@ static int load_balance(int this_cpu, ru
 		if (sd->balance_interval < sd->max_interval)
 			sd->balance_interval++;
 	} else {
-                sd->nr_balance_failed = 0;
+		sd->nr_balance_failed = 0;
 
 		/* We were unbalanced, so reset the balancing interval */
 		sd->balance_interval = sd->min_interval;
@@ -3148,7 +3148,7 @@ EXPORT_SYMBOL(set_user_nice);
 #ifdef CONFIG_KGDB
 struct task_struct *kgdb_get_idle(int this_cpu)
 {
-        return cpu_rq(this_cpu)->idle;
+	return cpu_rq(this_cpu)->idle;
 }
 #endif
 
@@ -4992,30 +4992,30 @@ void destroy_sched_domain_sysctl()
 #ifdef CONFIG_MAGIC_SYSRQ
 void normalize_rt_tasks(void)
 {
-       struct task_struct *p;
-       prio_array_t *array;
-       unsigned long flags;
-       runqueue_t *rq;
-
-       read_lock_irq(&tasklist_lock);
-       for_each_process (p) {
-               if (!rt_task(p))
-                       continue;
-
-               rq = task_rq_lock(p, &flags);
-
-               array = p->array;
-               if (array)
-                       deactivate_task(p, task_rq(p));
-               __setscheduler(p, SCHED_NORMAL, 0);
-               if (array) {
-                       __activate_task(p, task_rq(p));
-                       resched_task(rq->curr);
-               }
-
-               task_rq_unlock(rq, &flags);
-       }
-       read_unlock_irq(&tasklist_lock);
+	struct task_struct *p;
+	prio_array_t *array;
+	unsigned long flags;
+	runqueue_t *rq;
+
+	read_lock_irq(&tasklist_lock);
+	for_each_process (p) {
+		if (!rt_task(p))
+			continue;
+
+		rq = task_rq_lock(p, &flags);
+
+		array = p->array;
+		if (array)
+			deactivate_task(p, task_rq(p));
+		__setscheduler(p, SCHED_NORMAL, 0);
+		if (array) {
+			__activate_task(p, task_rq(p));
+			resched_task(rq->curr);
+		}
+
+		task_rq_unlock(rq, &flags);
+	}
+	read_unlock_irq(&tasklist_lock);
 }
 
 EXPORT_SYMBOL(normalize_rt_tasks);
#45 lore raw

2.6.10-rc1-mm3: "bttv card=" breakage

In reply to Andrew Morton
Quoted 6 lines · Andrew Morton

...
All 465 patches:
...
remove-module_parm-from-allyesconfig-almost.patch
Remove MODULE_PARM from allyesconfig (almost)
...

Does this patch cause the breakage described in Bugzilla #3707?

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#46 lore raw

Re: 2.6.10-rc1-mm3: "bttv card=" breakage

Quoted 11 lines · Adrian Bunk
Quoted 6 lines · Andrew Morton

...
All 465 patches:
...
remove-module_parm-from-allyesconfig-almost.patch
Remove MODULE_PARM from allyesconfig (almost)
...

Does this patch cause the breakage described in Bugzilla #3707?

Think so. I've subsequently gone thorugh that patch and removed mention of those files which still have instances of MODULE_PARM in them. There's a lot of stuff changing under its feet and I don't want this patch to break everyone else's work when it goes in.