2005-11-11 04:36:04

by Andrew Morton

[permalink] [raw]
Subject: 2.6.14-mm2


ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/

- reiser4 seems to be broken when built as a module (due, I assume, to a
reiser4-specific kbuild change). CONFIG_REISER4_FS=y will be needed.

- New git tree git-cfq.patch - CFQ I/O scheduler updates from Jens

- The git-pcmcia tree has been reinstated

- git-audit and the several -mm fixups to it have been dropped for now - it's
undergoing a bit of churn.

- Numerous subsystem updates. Notably more v4l work.




Changes since 2.6.14-mm1:


linus.patch
git-acpi.patch
git-blktrace.patch
git-cfq.patch
git-cifs.patch
git-drm.patch
git-ia64.patch
git-ieee1394.patch
git-infiniband.patch
git-kbuild.patch
git-libata-all.patch
git-mmc.patch
git-netdev-all.patch
git-ocfs2.patch
git-pcmcia.patch
git-scsi-misc.patch
git-sas.patch
git-cryptodev.patch

Subsystem trees

-ppc64-64k-pages-support.patch
-ppc64-fix-bug-in-slb-miss-handler-for-hugepages.patch
-typo-correction-for-fix-build-on-nls-free-systems.patch
-#export-ia64_max_cacheline_size.patch
-ia64-re-implement-dma_get_cache_alignment-to-avoid-export_symbol.patch
-powerpc-ppc64-fix-config_smp=n-build-for-ppc64.patch
-cpu-hotplug-fix-locking-in-cpufreq-drivers.patch
-fec_8xx-build-fix.patch
-suppress-split-ptlock-on-arches-which-may-use-one-page-for-multiple-page-tables.patch
-posix-timers-smp-race-condition-tidy.patch
-agp-performance-fixes.patch
-i460-agp-warning-fixes.patch
-sound-align-device-drivers-menus.patch
-git-blktrace-fixup.patch
-pci-gart-fix.patch
-gregkh-i2c-i2c-viapro-some-adjustments.patch
-gregkh-i2c-i2c-doc-writing-clients-fix-2.patch
-activate-sata300-tx4-in-sata_promise.patch
-kbuild-permanently-fix-kernel-configuration-include-mess.patch
-sharpsl-mtd-nand-driver-support-for-akita-borzoi.patch
-git-netdev-all-fix-net_radio=n-ieee80211=y-compile.patch
-s2io-warning-fixes.patch
-gregkh-pci-pci-driver-owner-removal-agp-fixes.patch
-arch-pci_find_device-remove-alpha-kernel-sys_alcorc.patch
-arch-pci_find_device-remove-alpha-kernel-sys_sioc.patch
-arch-pci_find_device-remove-frv-mb93090-mb00-pci-frvc.patch
-arch-pci_find_device-remove-frv-mb93090-mb00-pci-irqc.patch
-arch-pci_find_device-remove-ppc-kernel-pcic.patch
-arch-pci_find_device-remove-ppc-platforms-85xx-mpc85xx_cds_commonc.patch
-arch-pci_find_device-remove-sparc64-kernel-ebusc.patch
-arch-i386-pci-acpic-use-for_each_pci_dev.patch
-gregkh-usb-usb-pm-09.patch
-eagle-and-adi-930-usb-adsl-modem-driver.patch
-eagle-and-adi-930-usb-adsl-modem-driver-tidies.patch
-x86_64-fix-find-bit.patch
-x86_64-enable_pagefaulttrace-warning-fix.patch
-x86_64-vect-share-build-fix.patch
-slab-dont-bug-on-duplicated-cache.patch
-mm-rename-kmem_cache_s-to-kmem_cache.patch
-slab-use-same-schedule-timeout-for-all-cpus-in-cache_reap.patch
-ppp-handle-misaligned-accesses-2.patch
-irda-donauboe-locking-fix.patch
-ppp_mppe-add-ppp-mppe-encryption-module.patch
-dgrs-fixes-warnings-when-config_isa-and-config_pci-are-not-enabled.patch
-3c59x-convert-to-use-of-pci-iomap-api.patch
-3c59xc-cleanup-mdio_read-routines.patch
-3c59x-avoid-blindly-reading-link-status-twice.patch
-3c59x-bounds-checking-for-hw_checksums.patch
-3c59x-cleanup-init-of-module-parameter-arrays.patch
-3c59x-fix-some-grammar-in-module-parameter-descriptions.patch
-3c59x-support-ethtool_gpermaddr.patch
-3c59x-correct-rx_dropped-counting.patch
-3c59x-enable-use-of-memory-mapped-pci-i-o.patch
-3c59x-dont-enable-scatter-gather-w-o-checksum.patch
-ppc32-add-watchdog-rtc-support-for-marvell-ev64360bp-board.patch
-ppc32-allow-erpn-for-early-serial-to-depend-on-cpu-type.patch
-ppc32-dump-error-status-for-both-plb-segments-on-440sp.patch
-ppc32-add-440spe-support.patch
-ppc32-add-yucca-440spe-eval-board-platform.patch
-ppc32-cleanup-amcc-ppc40x-eval-boards-to-support-u-boot.patch
-ppc32-remove-internal-pci-arbiter-check-on-ppc40x.patch
-ppc32-add-missing-initrd-header-on-ppc440.patch
-ppc32-add-cpm1-config-option.patch
-sh-re-add-sh-to-drivers-makefile.patch
-sh-drop-deprecated-support-for-custom-ramdisk-embedding.patch
-superhyway-multiple-block-support-and-vcr-rework.patch
-sh-superhyway-support-for-sh4-202.patch
-sh-pte_mkhuge-compile-fix-for-config_hugetlb_page.patch
-sh-drop-hp690-discontig-support.patch
-sh-use-pfn_valid-for-lazy-dcache-write-back-on-sh7705.patch
-arch-i386-use-array_size-macro.patch
-i386-lvt-entries-remaining-unmasked-on-reboot.patch
-arch-i386-kernel-ldtc-should-include-asm-mmu_contexth.patch
-arch-i386-kernel-reboot_fixupsc-should-include-linux-reboot_fixupsh.patch
-arch-i386-kernel-scx200c-should-include-linux-scx200_gpioh.patch
-cpu-hoptlug-avoid-usage-of-smp_processor_id-in-preemptible-code.patch
-suspend-to-ram-update-docs.patch
-swsusp-cleanups.patch
-swsusp-remove-unused-variable.patch
-x86-add-mce-resume.patch
-cris-printk-duplicate-declaration.patch
-cris-extern-inline-static-inline.patch
-uml-improve-stub-debugging.patch
-uml-fix-syscall-stubs.patch
-uml-fix-uml-network-driver-endianness-bugs.patch
-uml-separate-libc-dependent-uaccess-code.patch
-uml-separate-libc-dependent-early-initialization.patch
-uml-separate-libc-dependent-early-initialization-fix.patch
-uml-separate-libc-dependent-helper-code.patch
-uml-switch_mm-fix.patch
-uml-maintain-own-ldt-entries.patch
-uml-big-memory-fixes.patch
-uml-make-tt-mode-dependent-options-depend-on-mode_tt.patch
-uml-fix-hardcoded-zone_-constants-in-zone-setup.patch
-uml-build-host-binaries-with-the-native-host-arch-again.patch
-include-asm-v850-extern-inline-static-inline.patch
-xtensa-struct-semaphoresleepers-initialization.patch
-s390-signal-delivery.patch
-s390-stop_hz_timer-vs-xtime-updates.patch
-s390-documentation-update.patch
-s390-memory-query-wait-psw.patch
-s390-ccwgroup-online-attribute.patch
-s390-remove-pagex-support.patch
-s390-test_bit-return-value.patch
-s390-dasd-diag-inline-assembly.patch
-s390-dasd-diag-with-block-sizes-512.patch
-s390-cleanup-of-include-asm-s390-vtoch.patch
-s390-duplicate-timeout-in-qdio.patch
-s390-const-pointer-uaccess.patch
-s390-fix-memory-leak-in-vmcp.patch
-s390-merge-common-parts-of-heads-and-head64s.patch
-serial-console-touch-nmi-watchdog.patch
-reorder-struct-files_struct.patch
-remove-drm-ioctl32-translations-from-sparc-and-parisc.patch
-moving-kprobes-and-oprofile-to-instrumentation-support-menu.patch
-write_inode_now-write-inode-if-not-bdi_cap_no_writeback.patch
-compat-fcntl-fixes.patch
-process-events-connector.patch
-process-events-connector-fixes.patch
-remove-hlist_for_each_rcu-api-convert-existing-use-to-hlist_for_each_entry_rcu.patch
-hfs-needs-nls.patch
-fix-floppyc-to-store-correct-ro-rw-status-in-underlying.patch
-schedule-obsolete-oss-drivers-for-removal.patch
-ide-scsi-fails-to-call-idescsi_check_condition-for-things.patch
-hpet-maintainers.patch
-serial-moxa-cleanup-mxser_init.patch
-serial-moxa-fix-leaks-of-struct-tty_driver.patch
-serial-moxa-fix-wrong-bug.patch
-fs-smbfs-requestc-turn-null-dereference-into-bug.patch
-tpm-fix-lack-of-driver_unregister-in-init-failcases.patch
-dell_rbu-adding-bios-memory-floor-support.patch
-fuse-remove-dead-code-from-fuse_permission.patch
-shm_noreserve-flags-for-shmget.patch
-readahead-commentary.patch
-reiser4-radix_tree_lookup_slot.patch
-add-be-le-types-without-underscores.patch
-small-kernel_stath-cleanup.patch
-keys-remove-incorrect-and-obsolete-operators.patch
-aio-remove-aio_max_nr-accounting-race.patch
-futex_wake_op-enhanced-error-handling.patch
-only-disallow-_setting_-of-function-key-string.patch
-quota-small-cleanups.patch
-v9fs-names_cache-memory-leak.patch
-v9fs-names_cache-memory-leak-fix.patch
-smbfs-names_cache-memory-leak.patch
-__find_get_block_slow-cleanup.patch
-kconfig-fix-kconfig-performance-bug.patch
-kconfig-preset-config-during-allconfig.patch
-kconfig-allow-variable-argumnts-for-range.patch
-kconfig-update-kconfig-makefile.patch
-kconfig-use-gperf-for-kconfig-keywords.patch
-kconfig-simplify-symbol-type-parsing.patch
-kconfig-improve-error-handling-in-the-parser.patch
-kconfig-stricter-error-checking-for-config.patch
-perform-maintenance-on-documentation-vm-hugetlbpagetxt.patch
-memory-leak-in-dentry_open.patch
-cpuset-rebind-numa-vma-mempolicy.patch
-cpuset-rebind-numa-vma-mempolicy-fix.patch
-fix-remaining-missing-includes.patch
-changing-config_localversion-rebuilds-too-much-for-no-good-reason.patch
-changing-config_localversion-rebuilds-too-much-for-no-good-reason-ipw2200-fix.patch
-max1619-build-fix.patch
-befs-use-generic_ro_fops.patch
-vxfs-use-generic_ro_fops.patch
-afs-use-generic_ro_fops.patch
-remove-superflous-ctime-mtime-updates-in-affs.patch
-add-a-vfs_permission-helper.patch
-consolidate-sys_ptrace.patch
-consolidate-sys_ptrace-x86_64-fix.patch
-add-a-file_permission-helper.patch
-sanitize-lookup_hash-prototype.patch
-re-add-tiocstart-and-tiocstop-compat_ioctl-handlers.patch
-remove-ioctl32_handler_t.patch
-move-some-compatible_ioctl-entries-from-x86_64-to-common-code.patch
-vfs-pass-file-pointer-to-filesystem-from-ftruncate.patch
-fuse-bump-interface-minor-version.patch
-fuse-add-access-call.patch
-fuse-atomic-createopen.patch
-fuse-pass-file-handle-in-setattr.patch
-implement-kmap_atomic_irqsave.patch
-as-cooperating-processes.patch
-ipmi-use-refcount-in-message-handler.patch
-ipmi-various-si-cleanup.patch
-ipmi-watchdog-parms-in-sysfs.patch
-ipmi-poweroff-cleanups.patch
-ipmi-more-dell-fixes.patch
-ipmi-si-start-transaction-hook.patch
-ipmi-bt-restart-reset-fixes.patch
-ipmi-kcs-error0-delay.patch
-ipmi-add-timer-thread.patch
-ipmi-add-timer-thread-use-kthread-api.patch
-ipmi-use-rcu-lock-for-using-command-receivers.patch
-ipmi-fix-watchdog-timeout-panic-handling.patch
-kprobes-rearrange-preempt_disable-enable-calls.patch
-kprobes-track-kprobe-on-a-per_cpu-basis-base-changes.patch
-kprobes-track-kprobe-on-a-per_cpu-basis-i386-changes.patch
-kprobes-track-kprobe-on-a-per_cpu-basis-ia64-changes.patch
-kprobes-track-kprobe-on-a-per_cpu-basis-ppc64-changes.patch
-kprobes-track-kprobe-on-a-per_cpu-basis-sparc64-changes.patch
-kprobes-track-kprobe-on-a-per_cpu-basis-x86_64-changes.patch
-kprobes-use-rcu-for-unregister-synchronization-base-changes.patch
-kprobes-use-rcu-for-unregister-synchronization-base-changes-vs-remove-hlist_for_each_rcu-api-convert-existing-use-to-hlist_for_each_entry_rcu.patch
-kprobes-use-rcu-for-unregister-synchronization-arch-changes.patch
-kprobes-preempt_disable-enable-simplification.patch
-rapidio-support-core-base.patch
-rapidio-support-core-includes.patch
-rapidio-support-core-enum.patch
-rapidio-support-core-enum-fix.patch
-rapidio-support-ppc32.patch
-rapidio-message-interface-updates.patch
-i4l-update-hfc_usb-driver.patch
-dvb-dst-correcty-identify-tuner-and-daughterboards.patch
-dvb-add-support-for-technotrend-budget-card-s1500.patch
-dvb-stv0299-revert-improper-method.patch
-dvb-add-atsc-support-for-dvico-fusionhdtv5-lite.patch
-dvb-tda1004x-pll-communication-fixes.patch
-dvb-pluto2-removed-unavoidable-error-message-and.patch
-dvb-remove-duplicate-key-definitions.patch
-dvb-microtune-mt7202dtf-fix-charge-pump-setting.patch
-dvb-dst-asn1-length-field-fix.patch
-dvb-fix-sparse-warnings.patch
-dvb-dst-fix-memory-leaks.patch
-dvb-dst-fix-broken-support-for-vp-3040-ts204.patch
-dvb-dst-fix-dst-dvb-s-get_frequency.patch
-dvb-dst-remove-redundant-checksum-calculation.patch
-dvb-dst-fix-possible-buffer-overflow.patch
-dvb-fix-integer-overflow-bug.patch
-dvb-let-other-frontends-support-fe_dishnetwork_send_legacy_cmd.patch
-dvb-remove-broken-stv0299-enhanced-tuning-code.patch
-dvb-remove-debug_lockloss-stuff.patch
-dvb-add-support-for-air2pc-airstar-2-atsc-3rd-generation.patch
-dvb-updated-documentation.patch
-dvb-updated-documentation-for-fusionhdtv-lite-cards.patch
-dvb-dst-protect-the-read-write-commands-with-a-mutex.patch
-dvb-dst-protect-dst_write_tuna-from-simultaneous.patch
-dvb-add-support-for-plls-used-by-nxt200x.patch
-dvb-nebula-nxt6000-requires-fe-reset.patch
-dvb-stv0299-reduce-i2c-xfer-and-set-register-0x12.patch
-dvb-fixed-inittab-register-0x12-for-bsru6-bsbe1.patch
-dvb-add-nxt200x-frontend-module.patch
-dvb-nxt200x-check-callback-fix.patch
-dvb-nxt200x-remove-null-check-before-kfree.patch
-dvb-determine-tuner-write-method-based-on-nxt-chip.patch
-dvb-fix-bug-in-demux-that-caused-lost-mpeg-sections.patch
-dvb-remove-status-check-from-nxt200x_readreg_multibyte.patch
-dvb-add-support-for-the-artec-t1-usb20-box.patch
-dvb-documentation-updates-for-hybrid-v4l-dvb-cards.patch
-dvb-usb-urb-printk-fix.patch
-dvb-lgdt330x-correct-qam-symbol_rate_min-for-lgdt3302.patch
-dvb-nxt200x-fix-typo-in-makefile-for-nxt200x.patch
-dvb-nxt200x-add-function-for-nxt200x-to-change-pll.patch
-v4l-627-added-support-for-oem-version-of-flytv.patch
-v4l-628-added-new-avermedia-card-550.patch
-v4l-629-added-behold-tv-409-fm.patch
-v4l-630-capitalized-hex-a-f-changed-to-lowercase.patch
-v4l-631-implemented-the-v4l2-mpeg-api-for.patch
-v4l-633-climov-s-previous-patch-missing-changelog.patch
-v4l-634-implemented-tuner-set-standby-on-cx88-init.patch
-v4l-635-add-bttv-card-137-conceptronic-ctvfmi-v2.patch
-v4l-636-don-t-enable-gpioirq-until-after-card.patch
-v4l-639-added-new-card-gotview-pci-7135.patch
-v4l-640-fixed-typos.patch
-v4l-643-use-key-media-instead-of-key.patch
-v4l-644-lower-switch-from-vhf-lo-to-vhf-hi-for.patch
-v4l-645-refine-input-handling-for-manli-beholder.patch
-v4l-646-enable-dvb-support-for-dvico-fusionhdtv5.patch
-v4l-647-included-cb3-structures-on-tda8290-that.patch
-v4l-648-some-clean-up-in-cx88-tvaudio-c.patch
-v4l-649-fixed-gcc-4-0-compile-warnings-by-moving.patch
-v4l-651-fix-a-number-of-sparse-warnings.patch
-v4l-653-ts-dma-buffer-synchronization-was-inverted.patch
-v4l-655-added-support-for-the-philips-td1316-tuner.patch
-v4l-656-added-support-for-the-following-cards.patch
-v4l-657-update-documentation.patch
-v4l-660-small-fixes.patch
-v4l-663-add-new-rtd-cards.patch
-v4l-664-improved-coding-style-for-timer-settings.patch
-v4l-665-fix-for-problem-with-audio-register-setup.patch
-v4l-667-remove-some-if-0-which-doesn-t-have-any.patch
-v4l-669-added-prolink-pixelview-pv-bt878p-rev-2e.patch
-v4l-670-cardlist-update.patch
-v4l-672-fix-build-for-2-6-14.patch
-v4l-673-initial-code-for-texas-instruments.patch
-v4l-674-move-some-if-kernel-version-into-compat-h.patch
-v4l-675-tvp5150-included-on-makefile.patch
-v4l-677-increased-eeprom-dump-to-128-bytes.patch
-v4l-678-fixed-input-selection.patch
-v4l-683-some-v4l2-api-calls-implemented-on-msp3400.patch
-v4l-685-update-the-tveeprom-tuner-list-with-the.patch
-v4l-686-change-the-number-of-lines-in-the-input.patch
-v4l-687-fix-source-charset-make-symbols-utf-8.patch
-v4l-688-add-remote-for-dvb-t300-remote.patch
-v4l-689-cx88-cardlist-updated-now-it-also-includes.patch
-v4l-690-added-support-for-lifeview-flytv-platinum.patch
-v4l-691-set-if-of-tda8275-according-to-tv-norm.patch
-v4l-692-bttv-coding-style-and-card-ids.patch
-v4l-693-bttv-board-renaming.patch
-v4l-694-updated-an-entry-to-reflect-changes-on.patch
-v4l-695-added-more-pci-id.patch
-v4l-700-added-ir-for-lifeview-flytv-platinum-mini2.patch
-v4l-702-included-audio-chips-enum.patch
-v4l-703-added-new-card-prolink-pixelview-playtv.patch
-v4l-704-enable-support-for-the-ir-remote-on-compro.patch
-v4l-705-added-kworld-vstream-expertdvd.patch
-v4l-706-reindent-cx88-tvaudio-c-to-keep-coding.patch
-v4l-707-remote-for-kworld-terminator.patch
-v4l-708-full-mute-of-saa7134-on-mute-command.patch
-v4l-709-added-osprey-440-card.patch
-v4l-711-changed-pll-1-to-pll-pll-28.patch
-v4l-712-added-analog-support-for-ati-hdtv-wonder.patch
-v4l-713-corrected-settings-for-secam-l.patch
-v4l-714-fix-typo.patch
-v4l-715-enable-s-video-input-on-dvico-fusionhdtv5.patch
-v4l-716-support-for-em28xx-board-family.patch
-v4l-717-added-scripts-and-cardlist-for-em2820.patch
-v4l-718-fixed-build.patch
-v4l-719-implement-some-differences-in-video-output.patch
-v4l-720-alsa-support-for-saa7134-that-should-work.patch
-v4l-721-check-kthread-correctly.patch
-v4l-723-fix-build-for-2-6-14.patch
-v4l-725-fixed-kernel-oops-when-hotswapping-pc.patch
-v4l-727-fixed-a-bug-that-caused-some-saa7133-code.patch
-v4l-728-vidiocsfreq-and-vidiocgfreq-expect-an.patch
-v4l-729-fixed-include-when-compiling-at-kernel.patch
-v4l-739-created-make-changelog-to-make-easier-to.patch
-v4l-754-add-the-adapter-address-prefix-to-the.patch
-v4l-758-some-improvements-at-msp3400-c-from-ivtv.patch
-v4l-759-more-improvements-at-msp3400-c-from-ivtv.patch
-v4l-761-fixed-registry-value-in-em2820-i2c-c-which.patch
-v4l-762-added-support-for-the-terratec-cinergy-250.patch
-v4l-763-include-newer-i2c-id-at-linux-include.patch
-v4l-766-add-dvb-card-winfast-dtv1000-t.patch
-v4l-767-included-support-for-em2800.patch
-v4l-768-don-t-bother-gerd-with-bttv-cards-patches.patch
-v4l-771-the-wm8775-is-a-wolfson-microelectronics.patch
-v4l-773-be-sure-to-enable-video-buf-dvb-in-kernel.patch
-v4l-775-fix-build-warnings.patch
-v4l-776-added-card-75-avermedia-avertvhd-mce-a180.patch
-v4l-777-updated-script-to-function-in-new-tree.patch
-v4l-780-fixed-typo-in-module-param-description.patch
-v4l-782-ir-kbd-i2cc-updates.patch
-v4l-783-fixed-bad-em2820-remote-layout-values-set.patch
-v4l-784-several-improvement-on-i2c-ir-handling-for.patch
-v4l-786-chip-id-removed-since-it-isn-t-required.patch
-v4l-788-log-message.patch
-v4l-789-added-support-for-saa7113.patch
-v4l-790-added-support-for-terratec-cinergy-250-usb.patch
-v4l-791-codingstyle-fixes.patch
-v4l-793-remotes-for-the-cinergy-200-usb-and.patch
-v4l-794-added-asound-skyeye-bttv-card.patch
-v4l-795-new-config-option-for-tda9887-to.patch
-v4l-796-add-sknet-monster-tv-mobile-card.patch
-v4l-797-more-intellect-on-clearing-in-bits-on-irq.patch
-v4l-798-this-patch-adds-the-vidioc-log-status-to.patch
-v4l-799-don-t-request-gpint-on-avermedia-tv.patch
-v4l-800-whitespace-cleanups.patch
-v4l-801-whitespaces-cleanups.patch
-v4l-802-replaced-kmalloc-kfree-with-usb-buffer.patch
-v4l-803-after-msp34xxg-reset-msp-wake-thread.patch
-v4l-806-add-support-for-tda8275a.patch
-v4l-809-some-changes-to-allow-compiling-cx88-and.patch
-v4l-810-vidioc-log-status-is-added-to-videodev2-h.patch
-v4l-811-strip-trailing-whitespaces.patch
-v4l-812-supports-the-pinnacle-pctv-110i-board.patch
-v4l-813-replaced-obsolete-video-get-drvdata-and.patch
-v4l-814-cleanup-dev-assignment.patch
-v4l-815-commented-obsoleted-stuff-at-videodev.patch
-v4l-816-added-driver-for-cirrus-logic-low-voltage.patch
-v4l-817-saa713x-keymaps-and-key-builders-were.patch
-v4l-818-cleanup-some-unnecessary-alsa-memory-de.patch
-v4l-819-added-autodetection-code-to-tda8290-to.patch
-v4l-820-fixed-log-for-tveeprom-on-em28xx-cards.patch
-v4l-821-set-tuner-type-in-vidioc-g-tuner.patch
-v4l-823-corrected-probing-code-for-tda8290.patch
-v4l-826-unify-whitespaces.patch
-v4l-829-fixed-user-mode-compiling.patch
-v4l-830-rearranged-print-order-to-present-a.patch
-v4l-833-analog-support-for-asus-p7131-dual.patch
-v4l-834-add-card-pctv-cardbus-tv-radio-ito25-rev.patch
-v4l-838-modified-settings-for-msi-vox-usb-2-0.patch
-v4l-840-fixed-settings-for-msi-vox-usb-2-0-saa7114.patch
-v4l-841-added-saa7114-initcode-for-msi-vox-usb-2-0.patch
-v4l-842-create-kconfig-files-for-cx88-and-saa7134.patch
-v4l-843-added-saa7114-support-on-i2c-address-0x42.patch
-v4l-847-fix-bug-5484-asus-digimatrix-card-doesnt.patch
-v4l-848-fixed-tda8290-autodetection.patch
-v4l-850-update-em2800-scaler-code-and-comments.patch
-v4l-851-fixed-broken-api-link-and-indentation.patch
-v4l-854-move-cx88-and-saa7134-configuration-out-of.patch
-v4l-855-improve-kconfig-user-friendliness-for.patch
-v4l-856-some-module-rename-and-small-fixes.patch
-v4l-859-fix-compilation-with-2-6-8.patch
-v4l-863-added-pinnacle-dazzle-dvc-90.patch
-v4l-864-improved-isoc-error-detection.patch
-v4l-865-fixed-bttv-to-accept-radio-devices-like.patch
-v4l-866-fix-bug-with-setting-mt2050-radio.patch
-v4l-867-correcting-fixes-to-accept-radio-devices.patch
-v4l-868-added-support-for-nxt200x-based-cards-ati.patch
-v4l-869-iso-c90-forbids-mixed-declarations-and.patch
-v4l-870-added-dvb-support-for-avermedia-avertvhd.patch
-v4l-871-fixed-bttv-to-accept-radio-devices-like.patch
-v4l-873-updated-comments-for-avertvhd-a180.patch
-v4l-874-quick-and-dirty-fix-for-audc-config.patch
-v4l-875-some-cleanups-at-i2c-stuff-and-fixing-when.patch
-v4l-876-moved-some-user-defines-to-be-out-of.patch
-v4l-877-module-em2820-renamed-to-em28xx-and-moved.patch
-v4l-881-video-cx88-need-not-depend-on-experimental.patch
-v4l-885-second-round-of-i2c-ids-redefinition.patch
-v4l-886-renamed-common-structures-to-em28xx.patch
-v4l-887-i2c-id-h-updated-to-reflect-the-newer.patch
-v4l-888-saa7113-renamed-to-saa711x.patch
-v4l-889-add-em28xx-to-kernel-build.patch
-v4l-890-fixed-typo.patch
-v4l-891-change-config-em28xx-to-config-video.patch
-v4l-892-correct-nicam-audio-settings-to-match.patch
-v4l-893-rollback-recent-i2c-change-to-solve-tuner.patch
-v4l-894-work-around-to-allow-hybrid-dvb-card-to.patch
-v4l-895-new-avermedia-303-card-without-radio.patch
-v4l-896-rename-bttv_foo-bttv_board_foo.patch
-v4l-897-saa7146-fix.patch
-v4l-898-em2820-i2c-fix.patch
-v4l-899-remove-media-id-h.patch
-prevent-dmesg-warning-in-zr36067-driver.patch
-knfsd-fix-setattr-on-symlink-error-return.patch
-knfsd-restore-functionality-to-read-from-file-in-proc-fs-nfsd.patch
-knfsd-allow-run-time-selection-of-nfs-versions-to-export.patch
-knfsd-fix-some-minor-sign-problems-in-nfsd-xdr.patch
-knfsd-make-sure-svc_process-call-the-correct-pg_authenticate-for-multi-service-port.patch
-optimize-activate_task.patch
-sched-implement-nice-support-across-physical-cpus-on-smp.patch
-sched-change_prio_bias_only_if_queued.patch
-sched-account_rt_tasks_in_prio_bias.patch
-sched-smp-nice-bias-busy-queues-on-idle-rebalance.patch
-sched-correct_smp_nice_bias.patch
-sched-consider-migration-thread-with-smp-nice.patch
-sched-better-wake-balancing-3.patch
-sched-disable-preempt-in-idle-tasks-2.patch
-sched-disable-preempt-in-idle-tasks-2-powerpc-fixes.patch
-sched-resched-and-cpu_idle-rework.patch
-sched-resched-and-cpu_idle-rework-warning-fix.patch
-ide-move-config_ide_max_hwifs-into-linux-ideh.patch
-siimage-enable-interrupts-on-adaptec-sa-1210-card.patch
-ide-explain-the-pci-bus-test.patch
-drivers-ide-possible-cleanups.patch
-framebuffer-add-some-help-text-in-kconfig.patch
-fb-straighten-up-fb-drivers-menu.patch
-nvidiafb-fix-mode-setting-ppc-support.patch
-nvidiafb-fix-mode-setting-ppc-support-warning-fixes.patch
-nvidiafb-add-flat-panel-dither-support.patch
-intelfb-extend-partial-support-of-i915g-to-include-i915gm.patch
-radeonfb-prevent-spurious-recompilations.patch
-fbcon-fbdev-move-softcursor-out-of-fbdev-to-fbcon.patch
-fbcon-consolidate-redundant-code.patch
-fbcon-use-helper-function-when-filling-out-var-structure.patch
-fbcon-initialize-new-driver-when-old-driver-is-released.patch
-fbdev-remove-software-clipping-from-drawing.patch
-vesafb-fix-color-palette-handling.patch
-atyfb-get-initial-mode-timings-from-lcd-bios.patch
-savagefb-convert-from-vga-io-access-to-mmio-access.patch
-pm2fb-manual-configuration-of-timings-for-elsa-winner.patch
-fbdev-workaround-for-buggy-edid-blocks.patch
-nvidiafb-fix-empty-macro.patch
-fbdev-fix-the-fb_find_nearest_mode-function.patch
-s3c2410fb-initialise-device_driver-owner.patch
-vesafb-disable-mtrr-as-the-default.patch
-i810fb-cleanup-i2c-code.patch
-console-fix-compile-error.patch
-fbcon-add-rl-roman-large-font.patch
-fbdev-rearrange-mode-database-entries.patch
-fbdev-add-helper-to-get-an-appropriate-initial-mode.patch
-fbdev-convert-a-few-drivers-to-use-the-fb_find_best_display.patch
-fbdev-ati-rn50-pci-id.patch
-fix-dm-snapshot-tutorial-in-documentation.patch
-md-better-handling-of-readerrors-with-raid5.patch
-md-initial-sysfs-support-for-md.patch
-md-extend-md-sysfs-support-to-component-devices.patch
-md-add-kobject-sysfs-support-to-raid5.patch
-md-allow-a-manual-resync-with-md.patch
-md-teach-raid5-the-difference-between-check-and-repair.patch
-md-provide-proper-rcu_dereference--rcu_assign_pointer-annotations-in-md.patch
-md-fix-ref-counting-problems-with-kobjects-in-md.patch
-md-minor-md-fixes.patch
-md-change-raid5-sysfs-attribute-to-not-create-a-new-directory.patch
-md-improvements-to-raid5-handling-of-read-errors.patch
-md-convert-faulty-and-in_sync-fields-to-bits-in-flags-field.patch
-md-make-md-on-disk-bitmaps-not-host-endian.patch
-md-support-bio_rw_barrier-for-md-raid1.patch
-md-remove-attempt-to-use-dynamic-names-in-sysfs-for-component-devices-on-an-md-array.patch
-md-allow-md-arrays-to-be-started-read-only-module-parameter.patch
-md-make-sure-block-link-in-sys-md-goes-to-correct-devices.patch
-md-make-manual-repair-work-for-raid1.patch
-md-make-sure-a-user-request-sync-of-raid5-ignores-intent-bitmap.patch
-md-fix-some-locking-and-module-refcounting-issues-with-mds-use-of-sysfs.patch
-md-split-off-some-md-attributes-in-sysfs-to-a-separate-group.patch
-md-only-try-to-print-recovery-resync-status-for-personalities-that-support-recovery.patch
-md-ignore-auto-readonly-flag-for-arrays-where-it-isnt-meaningful.patch
-md-complete-conversion-of-md-to-use-kthreads.patch
-md-improve-scan_mode-and-rename-it-to-sync_action.patch
-md-document-sysfs-usage-of-md-and-make-a-couple-of-small-refinements.patch
-documentation-sparsetxt-mention-cf=-wbitwise.patch
-ksymoops-related-docs-update.patch
-doc-msi-howto-cleanups.patch
-jbd-doc-fix-some-kernel-doc-warnings.patch
-kernel-doc-fix-some-kernel-api-warnings.patch
-doc-hpettxt-change-to-80-columns.patch
-more-kernel-doc-cleanups-additions.patch
-kernel-docs-fix-kernel-doc-format-problems.patch
-vfs-update-overview-document.patch
-vfs-split-dentry-locking-documentation.patch
-ramfs-rootfs-and-initramfs-docs.patch
-kernel-doc-fix-warnings-in-vmallocc.patch
-fs-nameic-make-path_lookup_create-static.patch
-ia64-fix-up-schedule_timeout-usage.patch
-m68k-fix-up-schedule_timeout-usage.patch
-ppc-fix-up-schedule_timeout-usage.patch
-um-fix-up-schedule_timeout-usage.patch
-drivers-acpi-fix-up-schedule_timeout-usage.patch
-ieee1394-fix-up-schedule_timeout-usage.patch
-isdn-fix-up-schedule_timeout-usage.patch
-drivers-macintosh-fix-up-schedule_timeout-usage.patch
-drivers-md-fix-up-schedule_timeout-usage.patch
-drivers-media-fix-up-schedule_timeout-usage.patch
-message-fix-up-schedule_timeout-usage.patch
-drivers-scsi-fix-up-schedule_timeout-usage.patch
-serial-fix-up-schedule_timeout-usage.patch
-drivers-cdrom-kmalloc-memset-kzalloc-conversion.patch
-drivers-dio-kmalloc-memset-kzalloc-conversion.patch
-drivers-eisa-kmalloc-memset-kzalloc-conversion.patch
-drivers-fc4-kmalloc-memset-kzalloc-conversion.patch
-drivers-firmware-kmalloc-memset-kzalloc-conversion.patch
-ide-kmalloc-memset-kzalloc-conversion.patch
-ide-kmalloc-memset-kzalloc-conversion-fix.patch
-bluetooth-kmalloc-memset-kzalloc-conversion.patch
-kfree-cleanup-drivers-scsi.patch
-kfree-cleanup-net.patch
-kfree-cleanup-drivers-mtd.patch
-kfree-cleanup-drivers-char.patch
-kfree-cleanup-drivers-isdn.patch
-kfree-cleanup-drivers-s390.patch
-kfree-cleanup-drivers-media.patch
-kfree-cleanup-misc-remaining-drivers.patch
-kfree-cleanup-fs.patch
-kfree-cleanup-arch.patch
-kfree-cleanup-security.patch
-mm-mmapnommuc-several-unexports.patch
-unexport-hugetlb_total_pages.patch
-unexport-clear_page_dirty_for_io.patch
-mm-page_allocc-unexport-nr_swap_pages.patch
-unexport-console_unblank.patch
-mm-swapc-unexport-vm_acct_memory.patch
-mm-swapfilec-unexport-total_swap_pages.patch
-mm-swap_statec-unexport-swapper_space.patch
-unexport-idle_cpu.patch
-unexport-uts_sem.patch
-__deprecated_for_modules-insert_resource.patch
-__deprecated_for_modules-panic_timeout.patch
-sound-oss-sequencer_syms-unexport-reprogram_timer.patch
-fs-superc-unexport-user_get_super.patch
-unexport-phys_proc_id-and-cpu_core_id.patch
-drivers-pnp-cleanups.patch

Merged

+work-around-gcc-32x-cpp-bug.patch

kbuild fixup

-increase-maximum-kmalloc-size-to-256k.patch
-increase-maximum-kmalloc-size-to-256k-fix.patch

Dropped

-mpt-fusion-free-irq-in-suspend.patch

Dropped

+elevator-init-fixes.patch
+elevator-init-fixes-2.patch

I/O scheduler fixes

+cpufreq-nforce2c-fix-u320-test.patch

cpufreq fix

-gregkh-driver-driver-sample.sh.patch

driver tree fixes

+speakup-is-busted-on-pc64.patch

trying to get ppc64 allmodconfig to work.

-git-drm-prep.patch

Unneeded now

+gregkh-i2c-i2c-i801-explicitly-set-smbauxctl.patch
+gregkh-i2c-i2c-ds1337-init.patch
+gregkh-i2c-hwmon-adm1025-adm1026-remove-deprecated-symbols.patch

i2c tree updates

+libatah-needs-dma-mappingh.patch

libata build fix

+drivers-mtd-possible-cleanups.patch

MTD cleanups

+mtd-make-sharpc-compile.patch

mtd build fix

+sky2-needs-dma_mappingh.patch

netdev build fix

+gregkh-pci-pci_ids-cleanup-fix-two-additional-ids-in-bt87x.patch
+gregkh-pci-pci-drivers-pci-small-cleanups.patch
+gregkh-pci-pci-changing-msi-to-use-physical-delivery-mode-always.patch
+gregkh-pci-pci-fix-namespace-clashes.patch
+gregkh-pci-pci-fix-for-toshiba-ohci1394-quirk.patch
+gregkh-pci-pci-pci_find_device-remove-sys_sio.patch
+gregkh-pci-pci-pci_find_device-remove-sys_alcor.patch
+gregkh-pci-pci-pci_find_device-remove-pci-ppc.patch
+gregkh-pci-pci-pci_find_device-remove-pci-mpc85xx_cds_common.patch
+gregkh-pci-pci-pci_find_device-remove-pci-frv.patch
+gregkh-pci-pci-pci_find_device-remove-pci-ebus.patch
+gregkh-pci-pci-arch-pci_find_device-remove-frv.patch
+gregkh-pci-pci-arch-i386-pci-acpi.c-use-for_each_pci_dev.patch

PCI tree updates

+gregkh-pci-pci-driver-owner-removal-fix-spider_net.patch
+pciehp_hpc-build-fix.patch
+shpchp_hpc-build-fix.patch

Fixes thereto

+git-scsi-misc-fixup.patch

Fix reject in git-scsi-misc

+kill-libata-scsi_wait_req-usage-make-libata-compile-in.patch
+kill-libata-scsi_wait_req-usage-make-libata-compile-in-fix.patch

Fix libata for git-scsi-misc API change

-areca-raid-linux-scsi-driver-update.patch
-areca-raid-linux-scsi-driver-update-2.patch
-areca-raid-linux-scsi-driver-update-3.patch

Folded into areca-raid-linux-scsi-driver.patch

+aic94xx_init-needs-dma-mappingh.patch
+sas_task-needs-timerh.patch
+sas_event-needs-schedh.patch

git-sas.patch build fixes

+display7seg-build-fix.patch

sparc driver build fix

+gregkh-usb-usb-eagle-and-adi-930-usb-adsl-modem-driver.patch
+gregkh-usb-usb-eagle-and-adi-930-usb-adsl-modem-driver-fix.patch
+gregkh-usb-usb-remove-usb_audio-and-usb_midi-drivers.patch
+gregkh-usb-usb-drivers-usb-core-message.c-make-usb_get_string-static.patch
+gregkh-usb-usb-ehci-updates.patch
+gregkh-usb-usb-ehci-updates-mostly-whitespace-cleanups.patch
+gregkh-usb-usb-ehci-updates-split-init-reinit-logic-for-resume.patch
+gregkh-usb-usb-ehci-updates-driver-model-wakeup-flags.patch
+gregkh-usb-usb-wakeup-flag-updates-sl811-hcd.patch
+gregkh-usb-usb-wakeup-flag-updates-uhci-hcd.patch
+gregkh-usb-usb-wakeup-flag-updates-isp116x-hcd.patch
+gregkh-usb-usb-ohci-move-ppc-asic-tweaks-nearer-pci.patch
+gregkh-usb-usb-hcd-uses-extra_cflags-for-ddebug.patch
+gregkh-usb-usb-onetouch-doesn-t-suspend-yet.patch
+gregkh-usb-usb-serial-anydata.patch

USB tree updates

+x86_64-max-apics.patch
+x86_64-sparse-fix.patch

x86_64 tree updates

-m.patch

Folded into mm.patch

+mm-__gfp_nofail-fix.patch

Fix __GFP_NOFAIL

+mm-__alloc_pages-cleanup.patch
+mm-__alloc_pages-cleanup-tidy.patch
+mm-highmem-watermarks.patch
+mm-dont-print-per-cpu-vm-stats-for-offline-cpus.patch

page allocator fixes and tuneups

+hugetlb-remove-duplicate-i_size-check.patch
+hugetlb-rename-find_lock_page-to.patch
+hugetlb-reorganize-hugetlb_fault-to-prepare-for-cow.patch
+hugetlb-copy-on-write-support.patch

copy on write support for hugetlb pages

+swap-migration-v5-lru-operations-fix.patch

Fix swap-migration-v5-lru-operations.patch

+cpusets-swap-migration-interface.patch

Access swap migration via cpusets API

+fix-sparse-warning-in-horizon-atm-driver.patch

Fix a sparse warning

+8139cp-register-interrupt-handler-when-net-device-is-registered.patch
+ipw2200-kzalloc-conversion-and-kconfig-dependency-fix.patch

netdev things

+security-possible-cleanups.patch

Code cleanup

+ppc-add-support-for-new-powerbooks.patch
+ppc32-add-support-for-handling-pci-interrupts-on-mpc834x.patch

ppc32 updates

+powerpc-check_for_initrd-fix.patch
+powerpc-xmon-build-fix.patch

ppc64 updates

+arch-i386-mm-initc-small-cleanups.patch
+i386-nmi-pointer-comparison-fix.patch
+x86-gdt-alignment-fix.patch
+i386-dont-blindly-enable-interrupts-in-die.patch
+i386-move-simd-initialization.patch
+i386-move-simd-initialization-fix.patch
+i386-fix-bound-check-idt-gate.patch
+x86-cr4-is-valid-on-some-486s.patch
+x86-pnp-segments-in-segment-h.patch
+x86-always-relax-segments.patch
+x86-apm-seg-in-gdt.patch
+x86-deprecate-obsolete-ldt-accessors.patch
+x86-pnp-byte-granularity.patch
+x86-fixed-pnp-bios-limits.patch
+x86-stop-deleting-nt.patch
+x86-apm-is-on-cpu-zero-only.patch
+x86-deprecate-useless-bug.patch

x86 fixes

+mark-rodata-section-read-only-generic-infrastructure.patch
+mark-rodata-section-read-only-x86-parts.patch
+mark-rodata-section-read-only-generic-x86-64-bugfix.patch
+mark-rodata-section-read-only-x86-64-support.patch
+mark-rodata-section-read-only-make-some-datastructures-const.patch
+debug-option-to-write-protect-rodata-x86-support-warning-fix.patch

debugging feature: mark the kernel's read-only data section as read-only.
So modifying a const variable (for example) will oops.

+x86_64-fix-page-fault-from-show_trace.patch

x86_64 fix

+suspend-support-for-pnp-bus.patch
+move-pm_register-etc-to-config_pm_legacy-pm_legacyh.patch

power management updates

+m68k-introduce-task_thread_info.patch
+m68k-introduce-setup_thread_stack-end_of_stack.patch
+m68k-thread_info-header-cleanup.patch
+m68k-m68k-specific-thread_info-changes.patch
+m68k-convert-thread-flags-to-use-bit-fields.patch
+add-stack-field-to-task_struct.patch
+rename-allocfree_thread_info-to-allocfree_thread_stack.patch
+rename-allocfree_thread_info-to-allocfree_thread_stack-powerpc-fix.patch
+use-end_of_stack.patch
+change-thread_info-access-to-stack.patch
+use-task_thread_info.patch

Bring back the m68k fixes and thread_info cleanup patches

+signal-handling-revert-sigkill-priority-fix.patch

signal fix

+rcu-signal-handling-fix-in-attach_pid.patch

Fix rcu-signal-handling.patch

+ext3_readdir-use-generic-readahead-fixes.patch

Fix the new ext3 readahead so it still doesn't work right.

+fix-missing-includes-for-2614-git11.patch

Continue to untangle header files

-new-driver-synclink_gt-header.patch
-new-driver-synclink_gt-kconfig.patch
-new-driver-synclink_gt-makefile.patch
+new-char-driver-synclink_gt-2.patch

New version of this driver

+fat-move-fat_clusters_flush-to-write_super.patch
+fat-use-sb_find_get_block-instead-of-sb_getblk.patch
+fat-add-the-read-writepages.patch
+fat-s-export_symbol-export_symbol_gpl.patch
+fat-support-direct_io.patch
+export-change-sync_page_range-_nolock.patch
+fat-support-a-truncate-for-expanding-size-2.patch

fatfs updates

+ext3-journal-handling-on-error-path-in-ext3_journalled_writepage.patch

ext3 fix

+synclink-update-to-use-dma-mapping-api.patch

Modernise the synclink driver

+fix-and-add-export_symbolfilemap_write_and_wait.patch

pagecache writeout fix

+move-rtc_interrupt-prototype-to-rtch.patch

Cleanup

+fix-sparse-warning-in-proc-task_mmuc.patch

sparse fix

+drivers-isdn-extern-inline-static-inline.patch
+kernel-small-cleanups.patch

cleanups

+shut-up-per_cpu_ptr-on-up.patch

warning fix

+pktcdvd-remove-subscribers-only-list.patch
+pktcdvd-use-bd_claim-to-get-exclusive-access.patch

packet driver update

+rcutorture-renice-to-low-priority.patch

Make the RCU self-test more useable

+i386-generic-cmpxchg.patch
+i386-generic-cmpxchg-tidy.patch
+atomic-cmpxchg.patch
+atomic-cmpxchg-tidy.patch
+atomic-inc_not_zero.patch
+atomic-inc_not_zero-tidy.patch

Make cmpxchg() available on all architectures

+atomic-dec_and_lock-use-atomic-primitives.patch
+rcu-file-use-atomic-primitives.patch
+rcu-file-use-atomic-primitives-tidy.patch

Applications of cmpxchg

+elf-symbol-table-type-additions.patch

Elf additions

+arch-mips-au1000-common-usbdevc-dont-concatenate-__function__-with-strings.patch

cleanup

+pc-speaker-add-snd_silent.patch

PC speaker driver feature: add ioctl to shut it up

+stop_machine-vs-synchronous-ipi-send-deadlock.patch

Fix machine halting race

+ipc-expand-shm_flags.patch

ipc.c cleanup

+aio-remove-kioctx-from-mm_struct.patch
+aio-replace-locking-comments-with-assert_spin_locked.patch
+aio-dont-ref-kioctx-after-decref-in-put_ioctx.patch

AIO updates

+relayfs-add-support-for-non-relay-files.patch
+relayfs-documentation-for-non-relay-file-support.patch
+relayfs-make-exported-relay-fileops-useful.patch
+relayfs-documentation-for-exported-relay-fileops.patch

relayfs feature work

+ext2-remove-duplicate-newlines-in-ext2_fill_super.patch

fix a printk

+accth-needs-jiffies-h.patch

build fix

+hdaps-convert-to-dynamic-input_dev-allocation.patch

hdaps oops fix

+add-vfs_-helpers-for-xattr-operations-fix.patch

Fix add-vfs_-helpers-for-xattr-operations.patch

+__deprecated_for_modules-the-lookup_hash-prototype.patch

lookup_hash() is deprecated in modules

+compat-remove-leftovers-from-register_ioctl32_conversion.patch

More compat cleanups

+edac-core-edac-support-edac-kconfig-fixes.patch
+edac-needs-x86.patch

EDAC driver updates

+parport-daisy-chain-device-id-reading-fix-2.patch

Fix parport-daisy-chain-device-id-reading-fix.patch

+dlm-device-interface-dlm-force-unlock.patch
+dlm-use-configfs-fix-2.patch
+dlm-cleanup-unused-functions.patch
+dlm-include-own-headers.patch

DLM updates

+v4l-9261-added-compiling-options-for-wm8775-and.patch
+v4l-930-alsa-fixes-and-improvements.patch
+v4l-943-added-secam-l-video-standard.patch
+v4l-935-moved-common-ir-stuff-to-ir-commonc.patch
+v4l-936-support-for-sabrent-bt848-version.patch
+v4l-937-included-missing-interrupth-at.patch
+v4l-939-support-for-nebula-rc5-based-gpio-remote.patch
+v4l-944-added-driver-for-saa7127-video.patch
+v4l-944-added-driver-for-saa7127-video-tidy.patch
+v4l-945-adds-a-new-include-for-internal.patch
+v4l-946-adds-support-for-cx25840-video.patch
+v4l-949-added-support-for-secam-l.patch
+v4l-950-added-compiler-options-for-cx25840-saa7115.patch
+v4l-951-make-saa7134-oss-as-a-stand-alone-module.patch
+v4l-958-make-cx25840-use-firmware-image-named.patch
+v4l-962-added-new-saa7134-card-msi-tv-anywhere.patch
+v4l-963-em28xx-ir-fixup.patch
+v4l-9631-hybrid-v4l-dvb-remove-duplicated-code.patch
+v4l-948-adds-support-for-saa7115-video.patch
+v4l-966-authorship-fixes-for-new-modules.patch
+v4l-9661-removes-obsoleted-i2c-compath-from.patch
+v4l-prevent-saa7134-alsa-undefined-warnings.patch
+v4l-saa711x-driver-doesnt-need-segmenth.patch

More v4l updates

+sched-add-cacheflush-asm.patch
+scheduler-cache-hot-autodetect.patch

Bring back the CPU scheduler auto-tuning code.

+sched-filter-affine-wakeups.patch

CPU scheduler tuning

+reiser4-spinlock-cleanup.patch
+reiser4-fix-kbuild.patch

reiser4 updates

+ia64-drop-arch-specific-ide-max_hwifs-definition.patch
+drivers-ide-pci-alim15x3c-replace-pci_find_device-with-pci_dev_present.patch
+drivers-ide-pci-alim15x3c-use-kern_warning.patch
+stop-compactflash-devices-being-marked-as-removable.patch

IDE updates

+fix-console-blanking.patch
console driver fix

+make-vesafb-build-without-config_mtrr.patch

framebuffer driver fix

+md-dm-reduce-stack-usage-with-stacked-block-devices.patch
+md-dm-reduce-stack-usage-with-stacked-block-devices-fixes.patch

Fix CPU stack windup with deep device mapper stacking

+docbook-allow-to-mark-structure-members-private.patch
+docbook-include-printk-documentation.patch
+docbook-comment-about-paper-type.patch
+docbook-revert-xmlto-use-for-ps-and-pdf-documentation.patch

kerneldoc updates

+synclink_gt-conversion-to-new-buffering.patch

Convert new synclink_gt driver to the new TTY API


All 610 patches:

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/patch-list



2005-11-11 05:22:20

by Brice Goglin

[permalink] [raw]
Subject: Re: 2.6.14-mm2: loop detected in depmod

Andrew Morton wrote:

>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>
>- reiser4 seems to be broken when built as a module (due, I assume, to a
> reiser4-specific kbuild change). CONFIG_REISER4_FS=y will be needed.
>
>- New git tree git-cfq.patch - CFQ I/O scheduler updates from Jens
>
>- The git-pcmcia tree has been reinstated
>
>- git-audit and the several -mm fixups to it have been dropped for now - it's
> undergoing a bit of churn.
>
>- Numerous subsystem updates. Notably more v4l work.
>
>
>

Hi Andrew,

Nothing to declare during compilation of this new -mm, except this
warning in depmod:

WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ud.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_rotate.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_cw.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ccw.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon.ko ignored,
due to loop
WARNING: Loop detected:
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/bitblit.ko needs
fbcon.ko needs fbcon_cw.ko needs fbcon_rotate.ko which needs bitblit.ko
again!
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/bitblit.ko ignored,
due to loop

.config is attached

Regards,
Brice Goglin


Attachments:
config.gz (9.96 kB)

2005-11-11 05:50:04

by Reuben Farrelly

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Hi,

On 11/11/2005 5:35 p.m., Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>
> - reiser4 seems to be broken when built as a module (due, I assume, to a
> reiser4-specific kbuild change). CONFIG_REISER4_FS=y will be needed.
>
> - New git tree git-cfq.patch - CFQ I/O scheduler updates from Jens
>
> - The git-pcmcia tree has been reinstated
>
> - git-audit and the several -mm fixups to it have been dropped for now - it's
> undergoing a bit of churn.
>
> - Numerous subsystem updates. Notably more v4l work.

Network is a no-go for me:

[root@tornado ~]# /etc/init.d/network restart
e100: 0000:06:03.0: e100_eeprom_load: EEPROM corrupted
e100: probe of 0000:06:03.0 failed with error -11
sky2 0000:04:00.0: unsupported chip type 0xff
sky2: probe of 0000:04:00.0 failed with error -95

Both drivers worked under 2.6.14-rc5-mm1, but failed with 2.6.14-mm2. I also
re-tested against 2.6.14-mm1 and this problem also occurs there (I didn't get
to test this this far with -mm1, had too many problems with other things and
been having other hassles such as dsl connection).

Somehow I doubt that these two cards are both genuinely faulty..........I can
swap out with another e100 if need be.

New config is up at http://www.reub.net/kernel/

Otherwise compiles, starts up and shuts down fine.

Reuben

2005-11-11 06:07:49

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Reuben Farrelly <[email protected]> wrote:
>
> Hi,
>
> On 11/11/2005 5:35 p.m., Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
> >
> > - reiser4 seems to be broken when built as a module (due, I assume, to a
> > reiser4-specific kbuild change). CONFIG_REISER4_FS=y will be needed.
> >
> > - New git tree git-cfq.patch - CFQ I/O scheduler updates from Jens
> >
> > - The git-pcmcia tree has been reinstated
> >
> > - git-audit and the several -mm fixups to it have been dropped for now - it's
> > undergoing a bit of churn.
> >
> > - Numerous subsystem updates. Notably more v4l work.
>
> Network is a no-go for me:
>
> [root@tornado ~]# /etc/init.d/network restart
> e100: 0000:06:03.0: e100_eeprom_load: EEPROM corrupted
> e100: probe of 0000:06:03.0 failed with error -11
> sky2 0000:04:00.0: unsupported chip type 0xff
> sky2: probe of 0000:04:00.0 failed with error -95

At a guess I'd say we didn't power the NIC up.

Could you please generate full dmesg output for good and bad kernels?

Also `lspci -vvxx -s 06:03.0' to have a look at the card's config space.

> Both drivers worked under 2.6.14-rc5-mm1, but failed with 2.6.14-mm2. I also
> re-tested against 2.6.14-mm1 and this problem also occurs there (I didn't get
> to test this this far with -mm1, had too many problems with other things and
> been having other hassles such as dsl connection).

Are you able to test just
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/broken-out/linus.patch ?

> Somehow I doubt that these two cards are both genuinely faulty..........I can
> swap out with another e100 if need be.

Yeah. You could try eepro100.c, perhaps.


2005-11-11 07:52:42

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: 2.6.14-mm2: loop detected in depmod

Brice Goglin wrote:
> Andrew Morton wrote:
>
> WARNING: Module
> /lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ud.ko
> ignored, due to loop

Sorry about that, did only a make modules without a make modules_install.
Try this patch.

Tony

Exporting struct fb_display produces this warning error on depmod:

WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ud.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_rotate.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_cw.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ccw.ko
ignored, due to loop
WARNING: Module
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon.ko ignored,
due to loop
WARNING: Loop detected:
/lib/modules/2.6.14-mm2/kernel/drivers/video/console/bitblit.ko needs

Signed-off-by: Antonino Daplas <[email protected]>
---

fbcon.c | 15 ++++++---------
fbcon.h | 3 +--
fbcon_ccw.c | 14 ++++++--------
fbcon_cw.c | 14 ++++++--------
fbcon_ud.c | 22 ++++++++++------------
5 files changed, 29 insertions(+), 39 deletions(-)

diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index e7802ff..bcea87c 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -106,8 +106,7 @@ enum {
FBCON_LOGO_DONTSHOW = -3 /* do not show the logo */
};

-struct display fb_display[MAX_NR_CONSOLES];
-EXPORT_SYMBOL(fb_display);
+static struct display fb_display[MAX_NR_CONSOLES];

static signed char con2fb_map[MAX_NR_CONSOLES];
static signed char con2fb_map_boot[MAX_NR_CONSOLES];
@@ -653,13 +652,12 @@ static void set_blitting_type(struct vc_
{
struct fbcon_ops *ops = info->fbcon_par;

+ ops->p = (p) ? p : &fb_display[vc->vc_num];
+
if ((info->flags & FBINFO_MISC_TILEBLITTING))
fbcon_set_tileops(vc, info, p, ops);
else {
- struct display *disp;
-
- disp = (p) ? p : &fb_display[vc->vc_num];
- fbcon_set_rotation(info, disp);
+ fbcon_set_rotation(info, ops->p);
fbcon_set_bitops(ops);
}
}
@@ -668,11 +666,10 @@ static void set_blitting_type(struct vc_
struct display *p)
{
struct fbcon_ops *ops = info->fbcon_par;
- struct display *disp;

info->flags &= ~FBINFO_MISC_TILEBLITTING;
- disp = (p) ? p : &fb_display[vc->vc_num];
- fbcon_set_rotation(info, disp);
+ ops->p = (p) ? p : &fb_display[vc->vc_num];
+ fbcon_set_rotation(info, ops->p);
fbcon_set_bitops(ops);
}
#endif /* CONFIG_MISC_TILEBLITTING */
diff --git a/drivers/video/console/fbcon.h b/drivers/video/console/fbcon.h
index accfd7b..6892e7f 100644
--- a/drivers/video/console/fbcon.h
+++ b/drivers/video/console/fbcon.h
@@ -52,8 +52,6 @@ struct display {
struct fb_videomode *mode;
};

-extern struct display fb_display[];
-
struct fbcon_ops {
void (*bmove)(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int dy, int dx, int height, int width);
@@ -73,6 +71,7 @@ struct fbcon_ops {
struct fb_var_screeninfo var; /* copy of the current fb_var_screeninfo */
struct timer_list cursor_timer; /* Cursor timer */
struct fb_cursor cursor_state;
+ struct display *p;
int currcon; /* Current VC. */
int cursor_flash;
int cursor_reset;
diff --git a/drivers/video/console/fbcon_ccw.c b/drivers/video/console/fbcon_ccw.c
index 680aaba..3afd1ee 100644
--- a/drivers/video/console/fbcon_ccw.c
+++ b/drivers/video/console/fbcon_ccw.c
@@ -63,9 +63,9 @@ static inline void ccw_update_attr(u8 *d
static void ccw_bmove(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int dy, int dx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_copyarea area;
- u32 vyres = GETVYRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);

area.sx = sy * vc->vc_font.height;
area.sy = vyres - ((sx + width) * vc->vc_font.width);
@@ -80,10 +80,10 @@ static void ccw_bmove(struct vc_data *vc
static void ccw_clear(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_fillrect region;
int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
- u32 vyres = GETVYRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);

region.color = attr_bgcol_ec(bgshift,vc);
region.dx = sy * vc->vc_font.height;
@@ -131,7 +131,6 @@ static void ccw_putcs(struct vc_data *vc
int fg, int bg)
{
struct fb_image image;
- struct display *p = &fb_display[vc->vc_num];
struct fbcon_ops *ops = info->fbcon_par;
u32 width = (vc->vc_font.height + 7)/8;
u32 cellsize = width * vc->vc_font.width;
@@ -141,7 +140,7 @@ static void ccw_putcs(struct vc_data *vc
u32 cnt, pitch, size;
u32 attribute = get_attribute(info, scr_readw(s));
u8 *dst, *buf = NULL;
- u32 vyres = GETVYRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);

if (!ops->fontbuffer)
return;
@@ -397,9 +396,8 @@ static void ccw_cursor(struct vc_data *v
int ccw_update_start(struct fb_info *info)
{
struct fbcon_ops *ops = info->fbcon_par;
- struct display *p = &fb_display[ops->currcon];
u32 yoffset;
- u32 vyres = GETVYRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
int err;

yoffset = (vyres - info->var.yres) - ops->var.xoffset;
diff --git a/drivers/video/console/fbcon_cw.c b/drivers/video/console/fbcon_cw.c
index 6c6f3b6..6d92b84 100644
--- a/drivers/video/console/fbcon_cw.c
+++ b/drivers/video/console/fbcon_cw.c
@@ -49,9 +49,9 @@ static inline void cw_update_attr(u8 *ds
static void cw_bmove(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int dy, int dx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_copyarea area;
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);

area.sx = vxres - ((sy + height) * vc->vc_font.height);
area.sy = sx * vc->vc_font.width;
@@ -66,10 +66,10 @@ static void cw_bmove(struct vc_data *vc,
static void cw_clear(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_fillrect region;
int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);

region.color = attr_bgcol_ec(bgshift,vc);
region.dx = vxres - ((sy + height) * vc->vc_font.height);
@@ -117,7 +117,6 @@ static void cw_putcs(struct vc_data *vc,
int fg, int bg)
{
struct fb_image image;
- struct display *p = &fb_display[vc->vc_num];
struct fbcon_ops *ops = info->fbcon_par;
u32 width = (vc->vc_font.height + 7)/8;
u32 cellsize = width * vc->vc_font.width;
@@ -127,7 +126,7 @@ static void cw_putcs(struct vc_data *vc,
u32 cnt, pitch, size;
u32 attribute = get_attribute(info, scr_readw(s));
u8 *dst, *buf = NULL;
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);

if (!ops->fontbuffer)
return;
@@ -381,8 +380,7 @@ static void cw_cursor(struct vc_data *vc
int cw_update_start(struct fb_info *info)
{
struct fbcon_ops *ops = info->fbcon_par;
- struct display *p = &fb_display[ops->currcon];
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
u32 xoffset;
int err;

diff --git a/drivers/video/console/fbcon_ud.c b/drivers/video/console/fbcon_ud.c
index 2e1d9d4..c4d7c89 100644
--- a/drivers/video/console/fbcon_ud.c
+++ b/drivers/video/console/fbcon_ud.c
@@ -48,10 +48,10 @@ static inline void ud_update_attr(u8 *ds
static void ud_bmove(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int dy, int dx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_copyarea area;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);

area.sy = vyres - ((sy + height) * vc->vc_font.height);
area.sx = vxres - ((sx + width) * vc->vc_font.width);
@@ -66,11 +66,11 @@ static void ud_bmove(struct vc_data *vc,
static void ud_clear(struct vc_data *vc, struct fb_info *info, int sy,
int sx, int height, int width)
{
- struct display *p = &fb_display[vc->vc_num];
+ struct fbcon_ops *ops = info->fbcon_par;
struct fb_fillrect region;
int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);

region.color = attr_bgcol_ec(bgshift,vc);
region.dy = vyres - ((sy + height) * vc->vc_font.height);
@@ -153,7 +153,6 @@ static void ud_putcs(struct vc_data *vc,
int fg, int bg)
{
struct fb_image image;
- struct display *p = &fb_display[vc->vc_num];
struct fbcon_ops *ops = info->fbcon_par;
u32 width = (vc->vc_font.width + 7)/8;
u32 cellsize = width * vc->vc_font.height;
@@ -163,8 +162,8 @@ static void ud_putcs(struct vc_data *vc,
u32 mod = vc->vc_font.width % 8, cnt, pitch, size;
u32 attribute = get_attribute(info, scr_readw(s));
u8 *dst, *buf = NULL;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);

if (!ops->fontbuffer)
return;
@@ -421,10 +420,9 @@ static void ud_cursor(struct vc_data *vc
int ud_update_start(struct fb_info *info)
{
struct fbcon_ops *ops = info->fbcon_par;
- struct display *p = &fb_display[ops->currcon];
u32 xoffset, yoffset;
- u32 vyres = GETVYRES(p->scrollmode, info);
- u32 vxres = GETVXRES(p->scrollmode, info);
+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
int err;

xoffset = (vxres - info->var.xres) - ops->var.xoffset;


2005-11-11 08:28:47

by Reuben Farrelly

[permalink] [raw]
Subject: Re: 2.6.14-mm2



On 11/11/2005 7:07 p.m., Andrew Morton wrote:
> Reuben Farrelly <[email protected]> wrote:
>> Hi,
>>
>> On 11/11/2005 5:35 p.m., Andrew Morton wrote:
>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>>>
>>> - reiser4 seems to be broken when built as a module (due, I assume, to a
>>> reiser4-specific kbuild change). CONFIG_REISER4_FS=y will be needed.
>>>
>>> - New git tree git-cfq.patch - CFQ I/O scheduler updates from Jens
>>>
>>> - The git-pcmcia tree has been reinstated
>>>
>>> - git-audit and the several -mm fixups to it have been dropped for now - it's
>>> undergoing a bit of churn.
>>>
>>> - Numerous subsystem updates. Notably more v4l work.
>> Network is a no-go for me:
>>
>> [root@tornado ~]# /etc/init.d/network restart
>> e100: 0000:06:03.0: e100_eeprom_load: EEPROM corrupted
>> e100: probe of 0000:06:03.0 failed with error -11
>> sky2 0000:04:00.0: unsupported chip type 0xff
>> sky2: probe of 0000:04:00.0 failed with error -95
>
> At a guess I'd say we didn't power the NIC up.

It fails almost all the time (but not 100%). However if by chance it *does*
come up on boot (without the message about eeprom being corrupted) then I can
kill it by just shutting down the ethX interface and then rmmod'ing the e100 +
sky2 modules, and then trying to reload them again. Then the message above
comes up then, as well as if it fails when booting.

When trying to bring up eth0, I this message is always logged:

Nov 11 21:16:07 tornado kernel: e100: probe of 0000:06:03.0 failed with error -11

It fails even on a cold boot.

2.6.14-rc5-mm1 does not exhibit this behaviour, not only because the modules
come up fine every time, but even after being removed and reinserted into the
kernel they still work OK.

[I need to use those two modules because I've been helping test the sky2
driver, and only want one eth0 network driver loaded at a time]


> Could you please generate full dmesg output for good and bad kernels?

in http://www.reub.net/kernel/ (which is up most of the time at present).

> Also `lspci -vvxx -s 06:03.0' to have a look at the card's config space.

2.6.14-rc5-mm1 with eth0 up on boot:

06:03.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100]
(rev 05)
Subsystem: Intel Corporation EtherExpress PRO/100+ Management Adapter
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 32 (2000ns min, 14000ns max), Cache Line Size 10
Interrupt: pin A routed to IRQ 19
Region 0: Memory at fe000000 (32-bit, prefetchable) [size=4K]
Region 1: I/O ports at b800 [size=32]
Region 2: Memory at ff300000 (32-bit, non-prefetchable) [size=1M]
Expansion ROM at fe100000 [disabled] [size=1M]
Capabilities: [dc] Power Management version 1
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 86 80 29 12 17 01 90 02 05 00 00 02 10 20 00 00
10: 08 00 00 fe 01 b8 00 00 00 00 30 ff 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 86 80 0a 00
30: 00 00 40 ff dc 00 00 00 00 00 00 00 0a 01 08 38


2.6.14-mm2, eth0 did not come up on boot:

[root@tornado ~]# lspci -vvxx -s 06:03.0
06:03.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100]
(rev 05)
Subsystem: Intel Corporation EtherExpress PRO/100+ Management Adapter
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 19
Region 0: Memory at fe000000 (32-bit, prefetchable) [size=4K]
Region 1: I/O ports at b800 [size=32]
Region 2: Memory at ff300000 (32-bit, non-prefetchable) [size=1M]
Expansion ROM at fe100000 [disabled] [size=1M]
Capabilities: [dc] Power Management version 1
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 86 80 29 12 13 01 90 02 05 00 00 02 10 20 00 00
10: 08 00 00 fe 01 b8 00 00 00 00 30 ff 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 86 80 0a 00
30: 00 00 40 ff dc 00 00 00 00 00 00 00 0a 01 08 38

[root@tornado ~]#


>> Both drivers worked under 2.6.14-rc5-mm1, but failed with 2.6.14-mm2. I also
>> re-tested against 2.6.14-mm1 and this problem also occurs there (I didn't get
>> to test this this far with -mm1, had too many problems with other things and
>> been having other hassles such as dsl connection).
>
> Are you able to test just
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/broken-out/linus.patch ?

Yes, no such problem with that version. But it spews out loads of debug
messages though:

Debug: sleeping function called from invalid context at include/asm/semaphore.h:99
in_atomic():1, irqs_disabled():1
[<c0103c10>] dump_stack+0x17/0x19
[<c0119824>] __might_sleep+0x9d/0xae
[<c028754b>] scsi_disk_get_from_dev+0x15/0x48
[<c0287d86>] sd_prepare_flush+0x17/0x5a
[<c0277e19>] scsi_prepare_flush_fn+0x30/0x33
[<c01dfc30>] blk_start_pre_flush+0xd5/0x13f
[<c01df200>] elv_next_request+0x10e/0x16b
[<c027825b>] scsi_request_fn+0x4b/0x2fd
[<c01df041>] __elv_add_request+0x105/0x172
[<c01e2371>] __make_request+0x1d3/0x47a
[<c01e2756>] generic_make_request+0xb3/0x128
[<c01e2814>] submit_bio+0x49/0xce
[<c0297b58>] md_super_write+0x87/0xa3
[<c029980e>] md_update_sb+0xc3/0x175
[<c029df6d>] md_check_recovery+0x17b/0x427
[<c0296103>] raid1d+0x1f/0x38d
[<c029c767>] md_thread+0x3b/0xee
[<c012f227>] kthread+0x99/0x9d
[<c010112d>] kernel_thread_helper+0x5/0xb

I think this was the one addressed in a patch sent by James Bottomley, Tue, 08
Nov 2005 09:21:07 -0500 which is now in -mm2. I guess that patch wants to be
pushed to Linus ;-)

The 2.6.14 with your linus.patch works fine, so it looks like an -mm(1|2)
specific problem, which is common to both sky2 and e100 drivers (unlikely to
be e100 specific I guess).

reuben

2005-11-11 08:55:35

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Reuben Farrelly <[email protected]> wrote:
>
> The 2.6.14 with your linus.patch works fine, so it looks like an -mm(1|2)
> specific problem, which is common to both sky2 and e100 drivers (unlikely to
> be e100 specific I guess).

That's getting us closer.

Would you be able to revert the git-netdev-all.patch changes in e100.c? To
do that, take the drivers/net/e100.c from 2.6.14+linus.patch and simply
overwrite the e100.c in 2.6.14-mm2 with it.

Or, prepare a 2.6.14-mm2 tree and use
http://www.zip.com.au/~akpm/linux/patches/stuff/e100.c, which amounts to
the same thing.

Thanks.

2005-11-11 09:01:12

by J.A. Magallon

[permalink] [raw]
Subject: Re: 2.6.14-mm2

On Thu, 10 Nov 2005 20:35:44 -0800, Andrew Morton <[email protected]> wrote:

>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>

The "Block layer" config option seems a bit out of place where it is now.
I would move it just before "Networking", but that requires touching
every architecture Kconfig file (just cloning the 'source net/Kconfig' line).

Is this the way to go ? Is it where it is for some reason apart from being
a fast way to let every arch load it ?

TIA

--
J.A. Magallon <jamagallon()able!es> \ Software is like sex:
werewolf!able!es \ It's better when it's free
Mandriva Linux release 2006.1 (Cooker) for i586
Linux 2.6.14-jam1 (gcc 4.0.2 (4.0.2-1mdk for Mandriva Linux release 2006.1))


Attachments:
signature.asc (189.00 B)

2005-11-11 12:33:35

by Felipe Alfaro Solana

[permalink] [raw]
Subject: Re: 2.6.14-mm2

> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/

I get the following error when compiling -mm2:

WARNING: /lib/modules/2.6.14-mm2/kernel/drivers/media/video/saa7134/saa7134.ko
needs unknown symbol get_key_pinnacle

Attached is .config.
Thanks.


Attachments:
(No filename) (279.00 B)
config-2.6.14-mm2 (38.16 kB)
Download all attachments

2005-11-11 13:28:49

by Reuben Farrelly

[permalink] [raw]
Subject: Re: 2.6.14-mm2



On 11/11/2005 9:55 p.m., Andrew Morton wrote:
> Reuben Farrelly <[email protected]> wrote:
>> The 2.6.14 with your linus.patch works fine, so it looks like an -mm(1|2)
>> specific problem, which is common to both sky2 and e100 drivers (unlikely to
>> be e100 specific I guess).
>
> That's getting us closer.
>
> Would you be able to revert the git-netdev-all.patch changes in e100.c? To
> do that, take the drivers/net/e100.c from 2.6.14+linus.patch and simply
> overwrite the e100.c in 2.6.14-mm2 with it.
>
> Or, prepare a 2.6.14-mm2 tree and use
> http://www.zip.com.au/~akpm/linux/patches/stuff/e100.c, which amounts to
> the same thing.
>
> Thanks.

Unfortunately made no difference.

However I noticed that I had compiled 2.6.14-mm1+2 with a couple of different
and probably significant config options from rc5-mm1:

CONFIG_PREEMPT=y
CONFIG_DEBUG_PREEMPT=y
CONFIG_KALLSYMS_ALL=y

I reverted those changes and rebuilt -mm2, and it all seems OK now after 6x
reboots and about 18 or so times removal and reinsertion of the two modules.
The reason for this being on in the config was that PREEMPT and the debug for
it was turned on to find the sd.c oopsing problem I had in -mm1, but it was
obviously not turned off afterwards. I'm not sure it should have *needed* to
be turned off though?

Then to double check I put CONFIG_PREEMPT and CONFIG_DEBUG_PREEMPT back into
that same config via menuconfig the way it was originally, made mrproper and
rebuilt, and the network failed to come up at all (again) on boot on first
attempt. This is consistent with both network drivers and not just the e100
failing to function, I think, as either both drivers always work, or both
always fail.

So in summary -

2.6.14-rc5-mm1 (preempt): <didn't test>
2.6.14-rc5-mm1 (no preempt) : works
2.6.14 with linus.patch (preempt): works
2.6.14 with linus.patch (no preempt): works
2.6.14-mm1 (preempt): broken ***
2.6.14-mm1 (no preempt): <didn't test>
2.6.14-mm2 (preempt): broken ***
2.6.14-mm2 (no preempt): works

All tests done with multiple reboots.

-mm2 seems otherwise to be quite OK apart from this issue.


2005-11-11 16:40:58

by Adrian Bunk

[permalink] [raw]
Subject: [-mm patch] fs/ocfs2/file.c: make ocfs2_extend_allocation() static

On Thu, Nov 10, 2005 at 08:35:44PM -0800, Andrew Morton wrote:
>...
> Changes since 2.6.14-mm1:
>...
> git-ocfs2.patch
>...
> Subsystem trees
>...


<-- snip -->


This patch makes the needlessly global function
ocfs2_extend_allocation() static.


Signed-off-by: Adrian Bunk <[email protected]>

--- linux-2.6.14-mm2-full/fs/ocfs2/file.c.old 2005-11-11 16:55:01.000000000 +0100
+++ linux-2.6.14-mm2-full/fs/ocfs2/file.c 2005-11-11 16:55:19.000000000 +0100
@@ -413,8 +413,8 @@
return status;
}

-int ocfs2_extend_allocation(struct inode *inode,
- u32 clusters_to_add)
+static int ocfs2_extend_allocation(struct inode *inode,
+ u32 clusters_to_add)
{
int status = 0;
int restart_func = 0;

2005-11-11 17:10:10

by Yoichi Yuasa

[permalink] [raw]
Subject: [-mm PATCH] slob: add kmem_set_shrinker

Hi,

This patch adds kmem_set_shrinker() to SLOB.
It is necessary for fixing the build error.

Yoichi

Signed-off-by: Yoichi Yuasa <[email protected]>

diff -Npru -X dontdiff mm2-orig/mm/slob.c mm2/mm/slob.c
--- mm2-orig/mm/slob.c 2005-11-11 22:21:20.000000000 +0900
+++ mm2/mm/slob.c 2005-11-11 23:15:02.000000000 +0900
@@ -240,6 +240,11 @@ unsigned int ksize(const void *block)
return ((slob_t *)block - 1)->units * SLOB_UNIT;
}

+void kmem_set_shrinker(kmem_cache_t *cachep, struct shrinker *shrinker)
+{
+}
+EXPORT_SYMBOL(kmem_set_shrinker);
+
struct kmem_cache {
unsigned int size, align;
const char *name;

2005-11-11 19:14:27

by Badari Pulavarty

[permalink] [raw]
Subject: Re: 2.6.14-mm2

On Thu, 2005-11-10 at 20:35 -0800, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>

Doesn't compile on my PPC box. Looking at the problem to fix it.

Thanks,
Badari

elm3b157:/usr/src/linux-2.6.14 # make -j8 zImage
CHK include/linux/version.h
CHK include/linux/compile.h
CHK usr/initramfs_list
CC drivers/pci/syscall.o
CC drivers/pci/hotplug/rpaphp_pci.o
CC drivers/pci/hotplug/rpaphp_slot.o
drivers/pci/hotplug/rpaphp_pci.c: In function `rpaphp_pci_config_slot':
drivers/pci/hotplug/rpaphp_pci.c:256: error: `systemcfg' undeclared
(first use in this function)
drivers/pci/hotplug/rpaphp_pci.c:256: error: (Each undeclared identifier
is reported only once
drivers/pci/hotplug/rpaphp_pci.c:256: error: for each function it
appears in.)
make[3]: *** [drivers/pci/hotplug/rpaphp_pci.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [drivers/pci/hotplug] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [drivers/pci] Error 2
make: *** [drivers] Error 2


2005-11-11 19:21:48

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Badari Pulavarty <[email protected]> wrote:
>
> On Thu, 2005-11-10 at 20:35 -0800, Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
> >
>
> Doesn't compile on my PPC box. Looking at the problem to fix it.
>
> Thanks,
> Badari
>
> elm3b157:/usr/src/linux-2.6.14 # make -j8 zImage
> CHK include/linux/version.h
> CHK include/linux/compile.h
> CHK usr/initramfs_list
> CC drivers/pci/syscall.o
> CC drivers/pci/hotplug/rpaphp_pci.o
> CC drivers/pci/hotplug/rpaphp_slot.o
> drivers/pci/hotplug/rpaphp_pci.c: In function `rpaphp_pci_config_slot':
> drivers/pci/hotplug/rpaphp_pci.c:256: error: `systemcfg' undeclared
> (first use in this function)
> drivers/pci/hotplug/rpaphp_pci.c:256: error: (Each undeclared identifier
> is reported only once
> drivers/pci/hotplug/rpaphp_pci.c:256: error: for each function it
> appears in.)
> make[3]: *** [drivers/pci/hotplug/rpaphp_pci.o] Error 1
> make[3]: *** Waiting for unfinished jobs....
> make[2]: *** [drivers/pci/hotplug] Error 2
> make[2]: *** Waiting for unfinished jobs....
> make[1]: *** [drivers/pci] Error 2
> make: *** [drivers] Error 2

This?

Signed-off-by: Serge Hallyn <[email protected]>
---

Index: linux-2.6.14-mm2/drivers/pci/hotplug/rpaphp_pci.c
===================================================================
--- linux-2.6.14-mm2.orig/drivers/pci/hotplug/rpaphp_pci.c 2005-11-11 11:42:21.000000000 -0600
+++ linux-2.6.14-mm2/drivers/pci/hotplug/rpaphp_pci.c 2005-11-11 11:48:40.000000000 -0600
@@ -253,7 +253,7 @@ rpaphp_pci_config_slot(struct pci_bus *b
if (!dn || !dn->child)
return NULL;

- if (systemcfg->platform == PLATFORM_PSERIES_LPAR) {
+ if (_machine == PLATFORM_PSERIES_LPAR) {
of_scan_bus(dn, bus);
if (list_empty(&bus->devices)) {
err("%s: No new device found\n", __FUNCTION__);

2005-11-11 19:32:26

by Badari Pulavarty

[permalink] [raw]
Subject: Re: 2.6.14-mm2

On Fri, 2005-11-11 at 11:21 -0800, Andrew Morton wrote:
> Badari Pulavarty <[email protected]> wrote:
> >
> > On Thu, 2005-11-10 at 20:35 -0800, Andrew Morton wrote:
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
> > >
> >
> > Doesn't compile on my PPC box. Looking at the problem to fix it.
> >
> > Thanks,
> > Badari
> >
> > elm3b157:/usr/src/linux-2.6.14 # make -j8 zImage
> > CHK include/linux/version.h
> > CHK include/linux/compile.h
> > CHK usr/initramfs_list
> > CC drivers/pci/syscall.o
> > CC drivers/pci/hotplug/rpaphp_pci.o
> > CC drivers/pci/hotplug/rpaphp_slot.o
> > drivers/pci/hotplug/rpaphp_pci.c: In function `rpaphp_pci_config_slot':
> > drivers/pci/hotplug/rpaphp_pci.c:256: error: `systemcfg' undeclared
> > (first use in this function)
> > drivers/pci/hotplug/rpaphp_pci.c:256: error: (Each undeclared identifier
> > is reported only once
> > drivers/pci/hotplug/rpaphp_pci.c:256: error: for each function it
> > appears in.)
> > make[3]: *** [drivers/pci/hotplug/rpaphp_pci.o] Error 1
> > make[3]: *** Waiting for unfinished jobs....
> > make[2]: *** [drivers/pci/hotplug] Error 2
> > make[2]: *** Waiting for unfinished jobs....
> > make[1]: *** [drivers/pci] Error 2
> > make: *** [drivers] Error 2
>
> This?
>
> Signed-off-by: Serge Hallyn <[email protected]>
> ---
>
> Index: linux-2.6.14-mm2/drivers/pci/hotplug/rpaphp_pci.c
> ===================================================================
> --- linux-2.6.14-mm2.orig/drivers/pci/hotplug/rpaphp_pci.c 2005-11-11 11:42:21.000000000 -0600
> +++ linux-2.6.14-mm2/drivers/pci/hotplug/rpaphp_pci.c 2005-11-11 11:48:40.000000000 -0600
> @@ -253,7 +253,7 @@ rpaphp_pci_config_slot(struct pci_bus *b
> if (!dn || !dn->child)
> return NULL;
>
> - if (systemcfg->platform == PLATFORM_PSERIES_LPAR) {
> + if (_machine == PLATFORM_PSERIES_LPAR) {
> of_scan_bus(dn, bus);
> if (list_empty(&bus->devices)) {
> err("%s: No new device found\n", __FUNCTION__);


Yes.

Thanks,
Badari

2005-11-11 22:32:53

by Michal Piotrowski

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Hi,

On 11/11/05, Andrew Morton <[email protected]> wrote:
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>

Something is broken with nvidia framebuffer. When I try to login on
tty1 "Password: " doesn't appear. It appear when I switch Alt+F2 to
tty2 and then back to tty1.

Regards,
Michal Piotrowski

2005-11-11 22:38:42

by Michal Piotrowski

[permalink] [raw]
Subject: Re: 2.6.14-mm2

On 11/11/05, Michal Piotrowski <[email protected]> wrote:
> Something is broken with nvidia framebuffer. When I try to login on
> tty1 "Password: " doesn't appear. It appear when I switch Alt+F2 to
> tty2 and then back to tty1.

Here is my config:
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.14-mm2
# Fri Nov 11 23:14:55 2005
#
CONFIG_X86_32=y
CONFIG_SEMAPHORE_SLEEPERS=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_CLEAN_COMPILE=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SWAP_PREFETCH=y
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_SYSCTL=y
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_CPUSETS is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_CC_ALIGN_FUNCTIONS=0
CONFIG_CC_ALIGN_LABELS=0
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
CONFIG_SLAB=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
# CONFIG_SLOB 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=y
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y

#
# Block layer
#
# CONFIG_LBD is not set
# CONFIG_BLK_DEV_IO_TRACE is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=m
CONFIG_IOSCHED_CFQ=m
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
CONFIG_MPENTIUM4=y
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
# CONFIG_HPET_TIMER is not set
CONFIG_SMP=y
CONFIG_NR_CPUS=2
CONFIG_SCHED_SMT=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=m
# CONFIG_X86_MCE_P4THERMAL is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_X86_REBOOTFIXUPS is not set
CONFIG_MICROCODE=m
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m

#
# Firmware Drivers
#
# CONFIG_EDD is not set
# CONFIG_DELL_RBU is not set
# CONFIG_DCDBAS is not set
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_HIGHMEM=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_SPARSEMEM_STATIC=y
CONFIG_SPLIT_PTLOCK_CPUS=4
# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
CONFIG_IRQBALANCE=y
# CONFIG_REGPARM is not set
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_PHYSICAL_START=0x100000
CONFIG_KEXEC=y

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
# CONFIG_PM_LEGACY is not set
# CONFIG_PM_DEBUG is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
# CONFIG_ACPI_AC is not set
# CONFIG_ACPI_BATTERY is not set
# CONFIG_ACPI_BUTTON is not set
# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACPI_HOTKEY is not set
CONFIG_ACPI_FAN=m
CONFIG_ACPI_PROCESSOR=m
CONFIG_ACPI_THERMAL=m
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_IBM is not set
# CONFIG_ACPI_TOSHIBA is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
# CONFIG_X86_PM_TIMER is not set
# CONFIG_ACPI_CONTAINER is not set

#
# APM (Advanced Power Management) BIOS Support
#

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
# CONFIG_PCIEPORTBUS is not set
# CONFIG_PCI_MSI is not set
CONFIG_PCI_LEGACY_PROC=y
# CONFIG_PCI_DEBUG is not set
CONFIG_ISA_DMA_API=y
# CONFIG_ISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set
# CONFIG_HOTPLUG_CPU is not set

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

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats
#
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=m
CONFIG_BINFMT_MISC=m

#
# Networking
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=m
# CONFIG_PACKET_MMAP is not set
CONFIG_UNIX=m
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
# 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_INET_DIAG=m
CONFIG_INET_TCP_DIAG=m
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_BIC=y

#
# IP: Virtual Server Configuration
#
# CONFIG_IP_VS is not set
CONFIG_IPV6=m
# 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=y
# CONFIG_NETFILTER_DEBUG is not set

#
# Core Netfilter Configuration
#
# CONFIG_NETFILTER_NETLINK is not set

#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=m
# CONFIG_IP_NF_CT_ACCT is not set
# CONFIG_IP_NF_CONNTRACK_MARK is not set
# CONFIG_IP_NF_CONNTRACK_EVENTS is not set
# CONFIG_IP_NF_CT_PROTO_SCTP is not set
CONFIG_IP_NF_FTP=m
# CONFIG_IP_NF_IRC is not set
# CONFIG_IP_NF_NETBIOS_NS is not set
# CONFIG_IP_NF_TFTP is not set
# CONFIG_IP_NF_AMANDA is not set
# CONFIG_IP_NF_PPTP is not set
# CONFIG_IP_NF_QUEUE is not set
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_LIMIT=m
CONFIG_IP_NF_MATCH_IPRANGE=m
CONFIG_IP_NF_MATCH_MAC=m
CONFIG_IP_NF_MATCH_PKTTYPE=m
CONFIG_IP_NF_MATCH_MARK=m
CONFIG_IP_NF_MATCH_MULTIPORT=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_DSCP=m
CONFIG_IP_NF_MATCH_AH_ESP=m
CONFIG_IP_NF_MATCH_LENGTH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_TCPMSS=m
CONFIG_IP_NF_MATCH_HELPER=m
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_MATCH_REALM=m
# CONFIG_IP_NF_MATCH_SCTP is not set
# CONFIG_IP_NF_MATCH_DCCP is not set
CONFIG_IP_NF_MATCH_COMMENT=m
CONFIG_IP_NF_MATCH_HASHLIMIT=m
CONFIG_IP_NF_MATCH_STRING=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_TARGET_LOG=m
# CONFIG_IP_NF_TARGET_ULOG is not set
CONFIG_IP_NF_TARGET_TCPMSS=m
CONFIG_IP_NF_TARGET_NFQUEUE=m
# CONFIG_IP_NF_NAT is not set
# CONFIG_IP_NF_MANGLE is not set
# CONFIG_IP_NF_RAW is not set
# CONFIG_IP_NF_ARPTABLES is not set

#
# IPv6: Netfilter Configuration (EXPERIMENTAL)
#
# CONFIG_IP6_NF_QUEUE is not set
# CONFIG_IP6_NF_IPTABLES is not set
# CONFIG_IP6_NF_TARGET_NFQUEUE is not set

#
# DCCP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_DCCP 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=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_IEEE80211 is not set

#
# Device Drivers
#

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

#
# Connector - unified userspace <-> kernelspace linker
#
# CONFIG_CONNECTOR is not set

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

#
# Parallel port support
#
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
# CONFIG_PARPORT_SERIAL is not set
# CONFIG_PARPORT_PC_FIFO is not set
# CONFIG_PARPORT_PC_SUPERIO is not set
# CONFIG_PARPORT_GSC is not set
# CONFIG_PARPORT_1284 is not set

#
# Plug and Play support
#
CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set

#
# Protocols
#
CONFIG_PNPACPI=y

#
# Block devices
#
# CONFIG_BLK_DEV_FD is not set
# CONFIG_PARIDE is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
# 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 is not set
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_CDROM_PKTCDVD=m
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_CDROM_PKTCDVD_WCACHE=y
# CONFIG_ATA_OVER_ETH is not set

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

#
# 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=m
# CONFIG_IDEDISK_MULTI_MODE is not set
CONFIG_BLK_DEV_IDECD=m
# 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=m
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_IDEPNP is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_BLK_DEV_GENERIC=m
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD74XX is not set
# CONFIG_BLK_DEV_ATIIXP is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_CS5535 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=m
# CONFIG_BLK_DEV_IT821X is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
# CONFIG_IDE_ARM is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set

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

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
# CONFIG_BLK_DEV_SR is not set
# CONFIG_CHR_DEV_SG is not set
# CONFIG_CHR_DEV_SCH 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
# CONFIG_SCSI_ISCSI_ATTRS is not set
# CONFIG_SCSI_SAS_ATTRS is not set

#
# SCSI Transport Layers
#
# CONFIG_SAS_CLASS is not set

#
# SCSI low-level drivers
#
# CONFIG_ISCSI_TCP is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
# CONFIG_MEGARAID_SAS is not set
CONFIG_SCSI_SATA=y
# CONFIG_SCSI_SATA_AHCI is not set
# CONFIG_SCSI_PATA_AMD is not set
# CONFIG_SCSI_SATA_SVW is not set
# CONFIG_SCSI_PATA_TRIFLEX is not set
CONFIG_SCSI_ATA_PIIX=y
# CONFIG_SCSI_SATA_MV is not set
# CONFIG_SCSI_SATA_NV is not set
# CONFIG_SCSI_PATA_OPTI is not set
# CONFIG_SCSI_PDC_ADMA is not set
# CONFIG_SCSI_SATA_QSTOR is not set
# CONFIG_SCSI_PATA_PDC2027X 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_SIL24 is not set
# CONFIG_SCSI_PATA_SIL680 is not set
# CONFIG_SCSI_SATA_SIS is not set
# CONFIG_SCSI_SATA_ULI is not set
# CONFIG_SCSI_PATA_VIA is not set
# CONFIG_SCSI_SATA_VIA is not set
# 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_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_PPA is not set
# CONFIG_SCSI_IMM is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_QLOGIC_FC is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
CONFIG_SCSI_QLA2XXX=y
# CONFIG_SCSI_QLA21XX is not set
# CONFIG_SCSI_QLA22XX is not set
# CONFIG_SCSI_QLA2300 is not set
# CONFIG_SCSI_QLA2322 is not set
# CONFIG_SCSI_QLA6312 is not set
# CONFIG_SCSI_QLA24XX is not set
# CONFIG_SCSI_LPFC is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set

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

#
# Fusion MPT device support
#
# CONFIG_FUSION is not set
# CONFIG_FUSION_SPI is not set
# CONFIG_FUSION_FC is not set
# CONFIG_FUSION_SAS is not set

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

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Network device support
#
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
CONFIG_TUN=m
# CONFIG_NET_SB1000 is not set

#
# ARCnet devices
#
# CONFIG_ARCNET is not set

#
# PHY device support
#

#
# Ethernet (10 or 100Mbit)
#
# CONFIG_NET_ETHERNET is not set

#
# Ethernet (1000 Mbit)
#
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
# CONFIG_SIS190 is not set
# CONFIG_SKGE is not set
# CONFIG_SKY2 is not set
CONFIG_SK98LIN=m
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set

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

#
# Token Ring devices
#
# CONFIG_TR is not set

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

#
# Wan interfaces
#
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_KGDBOE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NETPOLL_RX is not set
# CONFIG_NETPOLL_TRAP is not set
# CONFIG_NET_POLL_CONTROLLER is not set

#
# 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=m
# CONFIG_INPUT_EVBUG 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=m
# 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

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
# CONFIG_SERIO_PCIPS2 is not set
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT 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=m
# 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=m
# CONFIG_SERIAL_JSM is not set
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
# CONFIG_PRINTER is not set
# CONFIG_PPDEV is not set
# CONFIG_TIPAR is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=m
CONFIG_NVRAM=m
CONFIG_RTC=m
CONFIG_GEN_RTC=m
CONFIG_GEN_RTC_X=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
# CONFIG_SONYPI is not set

#
# Ftape, the floppy tape device driver
#
CONFIG_AGP=m
# CONFIG_AGP_ALI is not set
# CONFIG_AGP_ATI is not set
# CONFIG_AGP_AMD is not set
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=m
# CONFIG_AGP_NVIDIA is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_SWORKS is not set
# CONFIG_AGP_VIA is not set
# CONFIG_AGP_EFFICEON is not set
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HPET is not set
# CONFIG_HANGCHECK_TIMER is not set

#
# TPM devices
#
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set

#
# I2C support
#
CONFIG_I2C=y
# CONFIG_I2C_CHARDEV is not set

#
# I2C Algorithms
#
CONFIG_I2C_ALGOBIT=y
# CONFIG_I2C_ALGOPCF is not set
# CONFIG_I2C_ALGOPCA is not set

#
# I2C Hardware Bus support
#
# CONFIG_I2C_ALI1535 is not set
# CONFIG_I2C_ALI1563 is not set
# CONFIG_I2C_ALI15X3 is not set
# CONFIG_I2C_AMD756 is not set
# CONFIG_I2C_AMD8111 is not set
# CONFIG_I2C_I801 is not set
# CONFIG_I2C_I810 is not set
# CONFIG_I2C_PIIX4 is not set
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_PARPORT is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
# CONFIG_I2C_PROSAVAGE is not set
# CONFIG_I2C_SAVAGE4 is not set
# CONFIG_SCx200_ACB is not set
# CONFIG_I2C_SIS5595 is not set
# CONFIG_I2C_SIS630 is not set
# CONFIG_I2C_SIS96X is not set
# CONFIG_I2C_STUB is not set
# CONFIG_I2C_VIA is not set
# CONFIG_I2C_VIAPRO is not set
# CONFIG_I2C_VOODOO3 is not set
# CONFIG_I2C_PCA_ISA is not set

#
# Miscellaneous I2C Chip support
#
# CONFIG_SENSORS_DS1337 is not set
# CONFIG_SENSORS_DS1374 is not set
# CONFIG_SENSORS_EEPROM is not set
# CONFIG_SENSORS_PCF8574 is not set
# CONFIG_SENSORS_PCA9539 is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_SENSORS_RTC8564 is not set
# CONFIG_SENSORS_MAX6875 is not set
# CONFIG_RTC_X1205_I2C is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set

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

#
# Hardware Monitoring support
#
# CONFIG_HWMON is not set
# CONFIG_HWMON_VID is not set

#
# Misc devices
#
# CONFIG_IBM_ASM is not set

#
# Multimedia Capabilities Port drivers
#

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set

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

#
# Graphics support
#
CONFIG_FB=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_MACMODES is not set
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
# CONFIG_FB_VESA is not set
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_S1D13XXX is not set
CONFIG_FB_NVIDIA=y
CONFIG_FB_NVIDIA_I2C=y
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_INTEL is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON_OLD is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_CYBLA is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_GEODE is not set
# CONFIG_FB_VIRTUAL is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y

#
# Logo configuration
#
# CONFIG_LOGO is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_BACKLIGHT_CLASS_DEVICE=m
CONFIG_BACKLIGHT_DEVICE=y
CONFIG_LCD_CLASS_DEVICE=m
CONFIG_LCD_DEVICE=y

#
# Speakup console speech
#
# CONFIG_SPEAKUP is not set

#
# Sound
#
CONFIG_SOUND=m

#
# Advanced Linux Sound Architecture
#
CONFIG_SND=m
CONFIG_SND_AC97_CODEC=m
CONFIG_SND_AC97_BUS=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
CONFIG_SND_GENERIC_DRIVER=y

#
# Generic devices
#
CONFIG_SND_DUMMY=m
CONFIG_SND_VIRMIDI=m
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set

#
# PCI devices
#
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_ATIIXP is not set
# CONFIG_SND_ATIIXP_MODEM is not set
# CONFIG_SND_AU8810 is not set
# CONFIG_SND_AU8820 is not set
# CONFIG_SND_AU8830 is not set
# CONFIG_SND_AZT3328 is not set
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_EMU10K1 is not set
# CONFIG_SND_EMU10K1X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_MIXART is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_HDSP is not set
# CONFIG_SND_HDSPM is not set
# CONFIG_SND_TRIDENT is not set
# CONFIG_SND_YMFPCI is not set
# CONFIG_SND_AD1889 is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_CS5535AUDIO is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_FM801 is not set
# CONFIG_SND_ICE1712 is not set
# CONFIG_SND_ICE1724 is not set
CONFIG_SND_INTEL8X0=m
# CONFIG_SND_INTEL8X0M is not set
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_VIA82XX is not set
# CONFIG_SND_VIA82XX_MODEM is not set
# CONFIG_SND_VX222 is not set
# CONFIG_SND_HDA_INTEL is not set

#
# USB devices
#
# CONFIG_SND_USB_AUDIO is not set
# CONFIG_SND_USB_USX2Y is not set

#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not set

#
# USB support
#
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set

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

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=m
# CONFIG_USB_EHCI_SPLIT_ISO is not set
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_OHCI_HCD is not set
CONFIG_USB_UHCI_HCD=m
# CONFIG_USB_SL811_HCD is not set

#
# USB Device Class drivers
#
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set

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

#
# may also be needed; see USB_STORAGE Help for more information
#
# CONFIG_USB_STORAGE is not set
# CONFIG_USB_LIBUSUAL is not set

#
# USB Input Devices
#
# CONFIG_USB_HID is not set

#
# USB HID Boot Protocol drivers
#
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set
# CONFIG_USB_AIPTEK is not set
# CONFIG_USB_WACOM is not set
# CONFIG_USB_ACECAD is not set
# CONFIG_USB_KBTAB is not set
# CONFIG_USB_POWERMATE is not set
# CONFIG_USB_MTOUCH is not set
# CONFIG_USB_ITMTOUCH is not set
# CONFIG_USB_EGALAX is not set
# CONFIG_USB_YEALINK is not set
# CONFIG_USB_XPAD is not set
# CONFIG_USB_ATI_REMOTE is not set
# CONFIG_USB_KEYSPAN_REMOTE is not set
# CONFIG_USB_APPLETOUCH is not set

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

#
# USB Multimedia devices
#
# CONFIG_USB_DABUSB is not set

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

#
# USB Network Adapters
#
# 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
CONFIG_USB_MON=y

#
# USB port drivers
#
# CONFIG_USB_USS720 is not set

#
# 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_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_GOTEMP is not set
# CONFIG_USB_PHIDGETKIT is not set
# CONFIG_USB_PHIDGETSERVO is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_SISUSBVGA is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TEST is not set

#
# USB DSL modem support
#

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set

#
# MMC/SD Card support
#
# CONFIG_MMC is not set

#
# InfiniBand support
#
# CONFIG_INFINIBAND is not set

#
# SN Devices
#

#
# EDAC - error detection and reporting (RAS)
#
# CONFIG_EDAC is not set

#
# Distributed Lock Manager
#
# CONFIG_DLM is not set

#
# File systems
#
CONFIG_EXT2_FS=m
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_EXT2_FS_XIP=y
CONFIG_FS_XIP=y
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISER4_FS=m
# CONFIG_REISER4_DEBUG is not set
CONFIG_REISERFS_FS=m
# CONFIG_REISERFS_CHECK is not set
CONFIG_REISERFS_PROC_INFO=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
CONFIG_XFS_QUOTA=y
CONFIG_XFS_SECURITY=y
CONFIG_XFS_POSIX_ACL=y
# CONFIG_XFS_RT is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_INOTIFY=y
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
CONFIG_QFMT_V2=m
CONFIG_QUOTACTL=y
CONFIG_DNOTIFY=y
# CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_ZISOFS_FS=m
CONFIG_UDF_FS=m
CONFIG_UDF_NLS=y

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=m
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
CONFIG_NTFS_FS=m
# CONFIG_NTFS_DEBUG is not set
CONFIG_NTFS_RW=y

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
# CONFIG_PROC_KCORE is not set
CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
CONFIG_RELAYFS_FS=m
CONFIG_CONFIGFS_FS=m

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_ASFS_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 is not set
# CONFIG_NFSD 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
# CONFIG_9P_FS is not set

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

#
# Native Language Support
#
CONFIG_NLS=m
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=m
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
# CONFIG_NLS_CODEPAGE_850 is not set
CONFIG_NLS_CODEPAGE_852=m
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
CONFIG_NLS_CODEPAGE_1250=m
# CONFIG_NLS_CODEPAGE_1251 is not set
# CONFIG_NLS_ASCII is not set
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
CONFIG_NLS_UTF8=m

#
# Instrumentation Support
#
CONFIG_PROFILING=y
CONFIG_OPROFILE=m
CONFIG_KPROBES=y

#
# Kernel hacking
#
# CONFIG_PRINTK_TIME is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_LOG_BUF_SHIFT=17
CONFIG_DETECT_SOFTLOCKUP=y
CONFIG_SCHEDSTATS=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_PREEMPT=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_KOBJECT=y
CONFIG_DEBUG_HIGHMEM=y
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
CONFIG_PAGE_OWNER=y
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_VM=y
CONFIG_FRAME_POINTER=y
CONFIG_RCU_TORTURE_TEST=m
CONFIG_EARLY_PRINTK=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_DEBUG_STACK_USAGE=y
CONFIG_DEBUG_PAGEALLOC=y
# CONFIG_DEBUG_RODATA is not set
CONFIG_4KSTACKS=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y

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

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Hardware crypto devices
#

#
# Library routines
#
CONFIG_CRC_CCITT=m
CONFIG_CRC16=m
CONFIG_CRC32=y
CONFIG_LIBCRC32C=m
CONFIG_ZLIB_INFLATE=m
CONFIG_ZLIB_DEFLATE=m
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_X86_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y

kernel /boot/vmlinuz-2.6.14-mm2 root=/dev/sda1 ro
video=nvidia:1024x768@75

lspci:
[..]
0000:01:00.0 VGA compatible controller: nVidia Corporation NV34
[GeForce FX 5200] (rev a1)
[..]

2005-11-11 23:01:33

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Michal Piotrowski <[email protected]> wrote:
>
> Hi,
>
> On 11/11/05, Andrew Morton <[email protected]> wrote:
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
> >
>
> Something is broken with nvidia framebuffer. When I try to login on
> tty1 "Password: " doesn't appear. It appear when I switch Alt+F2 to
> tty2 and then back to tty1.
>

Yup, thanks. Yesterday Ben reported:

> not 100% sure what's up, but current -git has funny breakage with
> nvidiafb on an iMac G5 I have here. The mode seems correct but the
> console uses one line too much of text.
>
> That is, the total height of the screen isn't a multiple of the height
> of a line of text. It seems that fbcon is rounding up instead of down,
> thus the "last" line is basically going offscreen (about 2 or 3 pixels
> visible, the rest is offscreen).
>

Which looks sort-of similar.

And Tony replied:

> What does stty -a say, and fbset -i?

2005-11-11 23:30:16

by Michal Piotrowski

[permalink] [raw]
Subject: Re: 2.6.14-mm2

On 12/11/05, Andrew Morton <[email protected]> wrote:
> Yup, thanks. Yesterday Ben reported:
>
> > not 100% sure what's up, but current -git has funny breakage with
> > nvidiafb on an iMac G5 I have here. The mode seems correct but the
> > console uses one line too much of text.
> >
> > That is, the total height of the screen isn't a multiple of the height
> > of a line of text. It seems that fbcon is rounding up instead of down,
> > thus the "last" line is basically going offscreen (about 2 or 3 pixels
> > visible, the rest is offscreen).
> >
>
> Which looks sort-of similar.
>
> And Tony replied:
>
> > What does stty -a say, and fbset -i?
>

debian:~# stty -a
speed 38400 baud; rows 48; columns 128; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z;
rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl
ixon ixoff -iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon -iexten echo echoe echok -echonl -noflsh -xcase -tostop
-echoprt -echoctl echoke

debian:~# fbset -i

mode "1024x768-60"
# D: 65.003 MHz, H: 48.365 kHz, V: 60.006 Hz
geometry 1024 768 1024 32767 8
timings 15384 160 24 29 3 136 6
accel true
rgba 8/0,8/0,8/0,0/0
endmode

Frame buffer device information:
Name : NV32
Address : 0xe8000000
Size : 134217728
Type : PACKED PIXELS
Visual : PSEUDOCOLOR
XPanStep : 8
YPanStep : 1
YWrapStep : 0
LineLength : 1024
MMIO Address: 0xf6000000
MMIO Size : 16777216
Accelerator : Unknown (45)

fbset recognise my gpu as NV32. lspci show it as NV34 (0000:01:00.0
VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200]
(rev a1)
). According to
http://download.nvidia.com/Windows/45.23/NVIDIA_Driver_Release_Notes_v45.23.pdf
it should be NV34.

Regards,
Michal Piotrowski

2005-11-11 23:32:21

by Antonino A. Daplas

[permalink] [raw]
Subject: [PATCH] nvidiafb: Fix bug in nvidiafb_pan_display

nvidiafb_pan_display() is incorrectly using the fields in
info->var instead of var passed to the function.

Signed-off-by: Antonino Daplas <[email protected]>
---

Andrew Morton wrote:
> Michal Piotrowski <[email protected]> wrote:
>> Hi,
>>
>> On 11/11/05, Andrew Morton <[email protected]> wrote:
>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14/2.6.14-mm2/
>>>
>> Something is broken with nvidia framebuffer. When I try to login on
>> tty1 "Password: " doesn't appear. It appear when I switch Alt+F2 to
>> tty2 and then back to tty1.
>>
>
> Yup, thanks. Yesterday Ben reported:
>
>> not 100% sure what's up, but current -git has funny breakage with
>> nvidiafb on an iMac G5 I have here. The mode seems correct but the
>> console uses one line too much of text.
>>
>> That is, the total height of the screen isn't a multiple of the height
>> of a line of text. It seems that fbcon is rounding up instead of down,
>> thus the "last" line is basically going offscreen (about 2 or 3 pixels
>> visible, the rest is offscreen).
>>
>

Looks like a bug in nvidiafb_pan_display() which was revealed when I
changed the semantics of update_var/update_start.

Try this patch.

Tony

nvidia.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)


diff --git a/drivers/video/nvidia/nvidia.c b/drivers/video/nvidia/nvidia.c
index 0b40a2a..bee09c6 100644
--- a/drivers/video/nvidia/nvidia.c
+++ b/drivers/video/nvidia/nvidia.c
@@ -1301,7 +1301,7 @@ static int nvidiafb_pan_display(struct f
struct nvidia_par *par = info->par;
u32 total;

- total = info->var.yoffset * info->fix.line_length + info->var.xoffset;
+ total = var->yoffset * info->fix.line_length + var->xoffset;

NVSetStartAddress(par, total);


2005-11-11 23:41:59

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [PATCH] nvidiafb: Fix bug in nvidiafb_pan_display

On Sat, 2005-11-12 at 07:28 +0800, Antonino A. Daplas wrote:
> nvidiafb_pan_display() is incorrectly using the fields in
> info->var instead of var passed to the function.

Shouldn't it also update info->var is is this done by the core ?

Ben.


2005-11-11 23:54:45

by Michal Piotrowski

[permalink] [raw]
Subject: Re: [PATCH] nvidiafb: Fix bug in nvidiafb_pan_display

Hi,

On 12/11/05, Antonino A. Daplas <[email protected]> wrote:
> nvidiafb_pan_display() is incorrectly using the fields in
> info->var instead of var passed to the function.
>
> Signed-off-by: Antonino Daplas <[email protected]>
> ---
[snip]
> Looks like a bug in nvidiafb_pan_display() which was revealed when I
> changed the semantics of update_var/update_start.
>
> Try this patch.
>
> Tony
>
> nvidia.c | 2 +-
> 1 files changed, 1 insertion(+), 1 deletion(-)
>
>
> diff --git a/drivers/video/nvidia/nvidia.c b/drivers/video/nvidia/nvidia.c
> index 0b40a2a..bee09c6 100644
> --- a/drivers/video/nvidia/nvidia.c
> +++ b/drivers/video/nvidia/nvidia.c
> @@ -1301,7 +1301,7 @@ static int nvidiafb_pan_display(struct f
> struct nvidia_par *par = info->par;
> u32 total;
>
> - total = info->var.yoffset * info->fix.line_length + info->var.xoffset;
> + total = var->yoffset * info->fix.line_length + var->xoffset;
>
> NVSetStartAddress(par, total);
>
>
>

Problem fixed. Great thanks.

Regards,
Michal Piotrowski

2005-11-11 23:56:57

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: [PATCH] nvidiafb: Fix bug in nvidiafb_pan_display

Benjamin Herrenschmidt wrote:
> On Sat, 2005-11-12 at 07:28 +0800, Antonino A. Daplas wrote:
>> nvidiafb_pan_display() is incorrectly using the fields in
>> info->var instead of var passed to the function.
>
> Shouldn't it also update info->var is is this done by the core ?
>

Nobody calls or should call fbops->fb_pan_display() directly except
the wrapper fb_pan_display() in fbmem.c. It already does the checking
and the update to info->var. So checking and updating for the offsets
will be redundant.

Tony

2005-11-12 00:46:34

by Antonino A. Daplas

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Michal Piotrowski wrote:

>
> fbset recognise my gpu as NV32. lspci show it as NV34 (0000:01:00.0
> VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200]
> (rev a1)
> ). According to
> http://download.nvidia.com/Windows/45.23/NVIDIA_Driver_Release_Notes_v45.23.pdf
> it should be NV34.

This is okay, I think. The id assigned by nvidia and the id derived by
nvidiafb may not match. nvidiafb derives it from the pci device id (the 2nd
and 3rd nibble). Since your chipset's id is 0x0322, it prints out as NV32.

Tony

2005-11-12 03:40:40

by Brice Goglin

[permalink] [raw]
Subject: Re: 2.6.14-mm2: loop detected in depmod

Antonino A. Daplas wrote:

>Brice Goglin wrote:
>
>
>>Andrew Morton wrote:
>>
>>WARNING: Module
>>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ud.ko
>>ignored, due to loop
>>
>>
>
>Sorry about that, did only a make modules without a make modules_install.
>Try this patch.
>
>Tony
>
>
>

This patch should now go into Linus' tree since the same problem
occurs with rc1 (and this patch fixes it) :)

thanks,
Brice



>Exporting struct fb_display produces this warning error on depmod:
>
>WARNING: Module
>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ud.ko
>ignored, due to loop
>WARNING: Module
>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_rotate.ko
>ignored, due to loop
>WARNING: Module
>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_cw.ko
>ignored, due to loop
>WARNING: Module
>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon_ccw.ko
>ignored, due to loop
>WARNING: Module
>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/fbcon.ko ignored,
>due to loop
>WARNING: Loop detected:
>/lib/modules/2.6.14-mm2/kernel/drivers/video/console/bitblit.ko needs
>
>Signed-off-by: Antonino Daplas <[email protected]>
>---
>
> fbcon.c | 15 ++++++---------
> fbcon.h | 3 +--
> fbcon_ccw.c | 14 ++++++--------
> fbcon_cw.c | 14 ++++++--------
> fbcon_ud.c | 22 ++++++++++------------
> 5 files changed, 29 insertions(+), 39 deletions(-)
>
>diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
>index e7802ff..bcea87c 100644
>--- a/drivers/video/console/fbcon.c
>+++ b/drivers/video/console/fbcon.c
>@@ -106,8 +106,7 @@ enum {
> FBCON_LOGO_DONTSHOW = -3 /* do not show the logo */
> };
>
>-struct display fb_display[MAX_NR_CONSOLES];
>-EXPORT_SYMBOL(fb_display);
>+static struct display fb_display[MAX_NR_CONSOLES];
>
> static signed char con2fb_map[MAX_NR_CONSOLES];
> static signed char con2fb_map_boot[MAX_NR_CONSOLES];
>@@ -653,13 +652,12 @@ static void set_blitting_type(struct vc_
> {
> struct fbcon_ops *ops = info->fbcon_par;
>
>+ ops->p = (p) ? p : &fb_display[vc->vc_num];
>+
> if ((info->flags & FBINFO_MISC_TILEBLITTING))
> fbcon_set_tileops(vc, info, p, ops);
> else {
>- struct display *disp;
>-
>- disp = (p) ? p : &fb_display[vc->vc_num];
>- fbcon_set_rotation(info, disp);
>+ fbcon_set_rotation(info, ops->p);
> fbcon_set_bitops(ops);
> }
> }
>@@ -668,11 +666,10 @@ static void set_blitting_type(struct vc_
> struct display *p)
> {
> struct fbcon_ops *ops = info->fbcon_par;
>- struct display *disp;
>
> info->flags &= ~FBINFO_MISC_TILEBLITTING;
>- disp = (p) ? p : &fb_display[vc->vc_num];
>- fbcon_set_rotation(info, disp);
>+ ops->p = (p) ? p : &fb_display[vc->vc_num];
>+ fbcon_set_rotation(info, ops->p);
> fbcon_set_bitops(ops);
> }
> #endif /* CONFIG_MISC_TILEBLITTING */
>diff --git a/drivers/video/console/fbcon.h b/drivers/video/console/fbcon.h
>index accfd7b..6892e7f 100644
>--- a/drivers/video/console/fbcon.h
>+++ b/drivers/video/console/fbcon.h
>@@ -52,8 +52,6 @@ struct display {
> struct fb_videomode *mode;
> };
>
>-extern struct display fb_display[];
>-
> struct fbcon_ops {
> void (*bmove)(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int dy, int dx, int height, int width);
>@@ -73,6 +71,7 @@ struct fbcon_ops {
> struct fb_var_screeninfo var; /* copy of the current fb_var_screeninfo */
> struct timer_list cursor_timer; /* Cursor timer */
> struct fb_cursor cursor_state;
>+ struct display *p;
> int currcon; /* Current VC. */
> int cursor_flash;
> int cursor_reset;
>diff --git a/drivers/video/console/fbcon_ccw.c b/drivers/video/console/fbcon_ccw.c
>index 680aaba..3afd1ee 100644
>--- a/drivers/video/console/fbcon_ccw.c
>+++ b/drivers/video/console/fbcon_ccw.c
>@@ -63,9 +63,9 @@ static inline void ccw_update_attr(u8 *d
> static void ccw_bmove(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int dy, int dx, int height, int width)
> {
>- struct display *p = &fb_display[vc->vc_num];
>+ struct fbcon_ops *ops = info->fbcon_par;
> struct fb_copyarea area;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>
> area.sx = sy * vc->vc_font.height;
> area.sy = vyres - ((sx + width) * vc->vc_font.width);
>@@ -80,10 +80,10 @@ static void ccw_bmove(struct vc_data *vc
> static void ccw_clear(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int height, int width)
> {
>- struct display *p = &fb_display[vc->vc_num];
>+ struct fbcon_ops *ops = info->fbcon_par;
> struct fb_fillrect region;
> int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>
> region.color = attr_bgcol_ec(bgshift,vc);
> region.dx = sy * vc->vc_font.height;
>@@ -131,7 +131,6 @@ static void ccw_putcs(struct vc_data *vc
> int fg, int bg)
> {
> struct fb_image image;
>- struct display *p = &fb_display[vc->vc_num];
> struct fbcon_ops *ops = info->fbcon_par;
> u32 width = (vc->vc_font.height + 7)/8;
> u32 cellsize = width * vc->vc_font.width;
>@@ -141,7 +140,7 @@ static void ccw_putcs(struct vc_data *vc
> u32 cnt, pitch, size;
> u32 attribute = get_attribute(info, scr_readw(s));
> u8 *dst, *buf = NULL;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>
> if (!ops->fontbuffer)
> return;
>@@ -397,9 +396,8 @@ static void ccw_cursor(struct vc_data *v
> int ccw_update_start(struct fb_info *info)
> {
> struct fbcon_ops *ops = info->fbcon_par;
>- struct display *p = &fb_display[ops->currcon];
> u32 yoffset;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
> int err;
>
> yoffset = (vyres - info->var.yres) - ops->var.xoffset;
>diff --git a/drivers/video/console/fbcon_cw.c b/drivers/video/console/fbcon_cw.c
>index 6c6f3b6..6d92b84 100644
>--- a/drivers/video/console/fbcon_cw.c
>+++ b/drivers/video/console/fbcon_cw.c
>@@ -49,9 +49,9 @@ static inline void cw_update_attr(u8 *ds
> static void cw_bmove(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int dy, int dx, int height, int width)
> {
>- struct display *p = &fb_display[vc->vc_num];
>+ struct fbcon_ops *ops = info->fbcon_par;
> struct fb_copyarea area;
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
>
> area.sx = vxres - ((sy + height) * vc->vc_font.height);
> area.sy = sx * vc->vc_font.width;
>@@ -66,10 +66,10 @@ static void cw_bmove(struct vc_data *vc,
> static void cw_clear(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int height, int width)
> {
>- struct display *p = &fb_display[vc->vc_num];
>+ struct fbcon_ops *ops = info->fbcon_par;
> struct fb_fillrect region;
> int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
>
> region.color = attr_bgcol_ec(bgshift,vc);
> region.dx = vxres - ((sy + height) * vc->vc_font.height);
>@@ -117,7 +117,6 @@ static void cw_putcs(struct vc_data *vc,
> int fg, int bg)
> {
> struct fb_image image;
>- struct display *p = &fb_display[vc->vc_num];
> struct fbcon_ops *ops = info->fbcon_par;
> u32 width = (vc->vc_font.height + 7)/8;
> u32 cellsize = width * vc->vc_font.width;
>@@ -127,7 +126,7 @@ static void cw_putcs(struct vc_data *vc,
> u32 cnt, pitch, size;
> u32 attribute = get_attribute(info, scr_readw(s));
> u8 *dst, *buf = NULL;
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
>
> if (!ops->fontbuffer)
> return;
>@@ -381,8 +380,7 @@ static void cw_cursor(struct vc_data *vc
> int cw_update_start(struct fb_info *info)
> {
> struct fbcon_ops *ops = info->fbcon_par;
>- struct display *p = &fb_display[ops->currcon];
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
> u32 xoffset;
> int err;
>
>diff --git a/drivers/video/console/fbcon_ud.c b/drivers/video/console/fbcon_ud.c
>index 2e1d9d4..c4d7c89 100644
>--- a/drivers/video/console/fbcon_ud.c
>+++ b/drivers/video/console/fbcon_ud.c
>@@ -48,10 +48,10 @@ static inline void ud_update_attr(u8 *ds
> static void ud_bmove(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int dy, int dx, int height, int width)
> {
>- struct display *p = &fb_display[vc->vc_num];
>+ struct fbcon_ops *ops = info->fbcon_par;
> struct fb_copyarea area;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
>
> area.sy = vyres - ((sy + height) * vc->vc_font.height);
> area.sx = vxres - ((sx + width) * vc->vc_font.width);
>@@ -66,11 +66,11 @@ static void ud_bmove(struct vc_data *vc,
> static void ud_clear(struct vc_data *vc, struct fb_info *info, int sy,
> int sx, int height, int width)
> {
>- struct display *p = &fb_display[vc->vc_num];
>+ struct fbcon_ops *ops = info->fbcon_par;
> struct fb_fillrect region;
> int bgshift = (vc->vc_hi_font_mask) ? 13 : 12;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
>
> region.color = attr_bgcol_ec(bgshift,vc);
> region.dy = vyres - ((sy + height) * vc->vc_font.height);
>@@ -153,7 +153,6 @@ static void ud_putcs(struct vc_data *vc,
> int fg, int bg)
> {
> struct fb_image image;
>- struct display *p = &fb_display[vc->vc_num];
> struct fbcon_ops *ops = info->fbcon_par;
> u32 width = (vc->vc_font.width + 7)/8;
> u32 cellsize = width * vc->vc_font.height;
>@@ -163,8 +162,8 @@ static void ud_putcs(struct vc_data *vc,
> u32 mod = vc->vc_font.width % 8, cnt, pitch, size;
> u32 attribute = get_attribute(info, scr_readw(s));
> u8 *dst, *buf = NULL;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
>
> if (!ops->fontbuffer)
> return;
>@@ -421,10 +420,9 @@ static void ud_cursor(struct vc_data *vc
> int ud_update_start(struct fb_info *info)
> {
> struct fbcon_ops *ops = info->fbcon_par;
>- struct display *p = &fb_display[ops->currcon];
> u32 xoffset, yoffset;
>- u32 vyres = GETVYRES(p->scrollmode, info);
>- u32 vxres = GETVXRES(p->scrollmode, info);
>+ u32 vyres = GETVYRES(ops->p->scrollmode, info);
>+ u32 vxres = GETVXRES(ops->p->scrollmode, info);
> int err;
>
> xoffset = (vxres - info->var.xres) - ops->var.xoffset;
>
>
>-
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to [email protected]
>More majordomo info at http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at http://www.tux.org/lkml/
>
>
>

2005-11-16 09:04:38

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: 2.6.14-mm2

I saw following errors while compilng with CONFIG_MEMORY_HOTPLUG=y.

==
drivers/base/memory.c:28: error: static declaration of 'memory_sysdev_class' follows non-static declaration
include/linux/memory.h:88: error: previous declaration of 'memory_sysdev_class' was here
drivers/base/memory.c:47: warning: initialization from incompatible pointer type
drivers/base/memory.c:54: error: static declaration of 'register_memory_notifier' follows non-static declaration
include/linux/memory.h:85: error: previous declaration of 'register_memory_notifier' was here
drivers/base/memory.c:59: error: static declaration of 'unregister_memory_notifier' follows non-static declaration
include/linux/memory.h:86: error: previous declaration of 'unregister_memory_notifier' was here
drivers/base/memory.c:69: error: static declaration of 'register_memory' follows non-static declaration
include/linux/memory.h:73: error: previous declaration of 'register_memory' was here
==

patch is attached.

-- Kame

Compile fix for /driver/base/memory.c

Signed-Off-by KAMEZAWA Hiroyuki <[email protected]>


Index: linux-2.6.14-mm2/drivers/base/memory.c
===================================================================
--- linux-2.6.14-mm2.orig/drivers/base/memory.c
+++ linux-2.6.14-mm2/drivers/base/memory.c
@@ -25,12 +25,12 @@

#define MEMORY_CLASS_NAME "memory"

-static struct sysdev_class memory_sysdev_class = {
+struct sysdev_class memory_sysdev_class = {
set_kset_name(MEMORY_CLASS_NAME),
};
EXPORT_SYMBOL(memory_sysdev_class);

-static char *memory_hotplug_name(struct kset *kset, struct kobject *kobj)
+static const char *memory_hotplug_name(struct kset *kset, struct kobject *kobj)
{
return MEMORY_CLASS_NAME;
}
@@ -50,12 +50,12 @@ static struct kset_hotplug_ops memory_ho

static struct notifier_block *memory_chain;

-static int register_memory_notifier(struct notifier_block *nb)
+int register_memory_notifier(struct notifier_block *nb)
{
return notifier_chain_register(&memory_chain, nb);
}

-static void unregister_memory_notifier(struct notifier_block *nb)
+void unregister_memory_notifier(struct notifier_block *nb)
{
notifier_chain_unregister(&memory_chain, nb);
}
@@ -63,7 +63,7 @@ static void unregister_memory_notifier(s
/*
* register_memory - Setup a sysfs device for a memory block
*/
-static int
+int
register_memory(struct memory_block *memory, struct mem_section *section,
struct node *root)
{

2005-11-16 12:56:50

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: 2.6.14-mm2

Hi,

This patch was needed to add new pages into empty zone.

-- Kamezawa Hiroyuki <[email protected]>

--
This is a fix to add pages into empty zone.

fixes free_area_init_code, which doesn't calles
init_currently_empty_zone() if zone size is 0.

Signed-Off-By: KAMEZAWA Hiroyuki <[email protected]>



Index: linux-2.6.14-mm2/mm/page_alloc.c
===================================================================
--- linux-2.6.14-mm2.orig/mm/page_alloc.c
+++ linux-2.6.14-mm2/mm/page_alloc.c
@@ -2054,11 +2054,11 @@ static void __init free_area_init_core(s
zone->nr_active = 0;
zone->nr_inactive = 0;
atomic_set(&zone->reclaim_in_progress, 0);
+ init_currently_empty_zone(zone, zone_start_pfn, size);
if (!size)
continue;

zonetable_add(zone, nid, j, zone_start_pfn, size);
- init_currently_empty_zone(zone, zone_start_pfn, size);
zone_start_pfn += size;
}
}

2005-11-16 13:17:21

by Dave Hansen

[permalink] [raw]
Subject: Re: [Lhms-devel] Re: 2.6.14-mm2

On Wed, 2005-11-16 at 21:56 +0900, KAMEZAWA Hiroyuki wrote:
> Index: linux-2.6.14-mm2/mm/page_alloc.c
> ===================================================================
> --- linux-2.6.14-mm2.orig/mm/page_alloc.c
> +++ linux-2.6.14-mm2/mm/page_alloc.c
> @@ -2054,11 +2054,11 @@ static void __init free_area_init_core(s
> zone->nr_active = 0;
> zone->nr_inactive = 0;
> atomic_set(&zone->reclaim_in_progress, 0);
> + init_currently_empty_zone(zone, zone_start_pfn, size);
> if (!size)
> continue;
>
> zonetable_add(zone, nid, j, zone_start_pfn, size);
> - init_currently_empty_zone(zone, zone_start_pfn, size);
> zone_start_pfn += size;
> }
> }

Can you explain in a little bit more detail why this matters, and
exactly how it fixes your problem. I'm not sure it's correct.

"init_currently_empty_zone" could more properly be called something like
"init currently empty zone to now have memory". There's no reason to
call it, unless you have an empty zone *AND* you some memory to put in
it now. If you call it with a size of 0, the things like memmap_init
inside of it don't make any sense.

Also, if you're doing hot-adds of _new_ zones at runtime, you need to do
something fancy with the zonelist locking that I never got around to
because nobody needs it yet. See something along these lines:

http://www.sr71.net/patches/2.6.14/2.6.14-rc2-git8-mhp1/broken-out/E2-for-debugging-handle-add-to-empty-zone.patch

-- Dave

2005-11-16 16:02:48

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: [Lhms-devel] Re: 2.6.14-mm2

Dave Hansen wrote:

>
> Can you explain in a little bit more detail why this matters, and
> exactly how it fixes your problem. I'm not sure it's correct.
>
Ah, okay.

It's just because free_area[] is not initaialized at all if this is not called.
It is list.next and list.prev has bad value.
Then, the first free_page(page) will cause panic.

> Also, if you're doing hot-adds of _new_ zones at runtime, you need to do
> something fancy with the zonelist locking that I never got around to
> because nobody needs it yet. See something along these lines:
>
When node 0's higmem size is 0 at boot time, I have to add new page into empty zone.
This happens because my machine has only 700M mem.
I use mem=500M and hot add extra 200M memory for testing.

"Nobody needs " is sane in real world. But it's useful to my tiny test enveironment.

Could you spin out initializing free_area[] from
init_currently_empty_zone(zone, zone_start_pfn, size);
Then I'll be happy.

-- Kame
> http://www.sr71.net/patches/2.6.14/2.6.14-rc2-git8-mhp1/broken-out/E2-for-debugging-handle-add-to-empty-zone.patch
>
> -- Dave
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>


2005-11-16 16:31:50

by Dave Hansen

[permalink] [raw]
Subject: Re: [Lhms-devel] Re: 2.6.14-mm2

On Thu, 2005-11-17 at 01:02 +0900, Kamezawa Hiroyuki wrote:
> > Can you explain in a little bit more detail why this matters, and
> > exactly how it fixes your problem. I'm not sure it's correct.
> >
> Ah, okay.
>
> It's just because free_area[] is not initaialized at all if this is not called.
> It is list.next and list.prev has bad value.
> Then, the first free_page(page) will cause panic.

Hmmm. I _think_ you're just trying to do some things at runtime that I
didn't intend. In the patch I pointed to in the last mail, look at what
I did in hot_add_zone_init(). It does some of what
free_area_init_core() does, but only the most minimal bits. Basically:

zone_wait_table_init(zone, size_pages);
init_currently_empty_zone(zone, phys_start_pfn, size_pages);
zone_pcp_init(zone);

Your way may also be valid, but I broke out init_currently_empty_zone()
for a reason, and I think this was it. I don't think we want to be
calling free_area_init_core() itself at runtime.

-- Dave

2005-11-16 16:40:27

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: [Lhms-devel] Re: 2.6.14-mm2

Dave Hansen wrote:
> On Thu, 2005-11-17 at 01:02 +0900, Kamezawa Hiroyuki wrote:
>
>>>Can you explain in a little bit more detail why this matters, and
>>>exactly how it fixes your problem. I'm not sure it's correct.
>>>
>>
>>Ah, okay.
>>
>>It's just because free_area[] is not initaialized at all if this is not called.
>>It is list.next and list.prev has bad value.
>>Then, the first free_page(page) will cause panic.
>
>
> Hmmm. I _think_ you're just trying to do some things at runtime that I
> didn't intend. In the patch I pointed to in the last mail, look at what
> I did in hot_add_zone_init(). It does some of what
> free_area_init_core() does, but only the most minimal bits. Basically:
>
> zone_wait_table_init(zone, size_pages);
> init_currently_empty_zone(zone, phys_start_pfn, size_pages);
> zone_pcp_init(zone);
>
> Your way may also be valid, but I broke out init_currently_empty_zone()
> for a reason, and I think this was it. I don't think we want to be
> calling free_area_init_core() itself at runtime.
>
Okay... I'll read what you done more carefully and find another approach.
I guess what I need is that free_area[] is initialized before the first free_page[].

thanks,
-- Kame

2005-11-17 00:10:46

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: [Lhms-devel] Re: 2.6.14-mm2

Dave Hansen wrote:
> Hmmm. I _think_ you're just trying to do some things at runtime that I
> didn't intend. In the patch I pointed to in the last mail, look at what
> I did in hot_add_zone_init(). It does some of what
> free_area_init_core() does, but only the most minimal bits. Basically:
>
> zone_wait_table_init(zone, size_pages);
> init_currently_empty_zone(zone, phys_start_pfn, size_pages);
> zone_pcp_init(zone);
>
> Your way may also be valid, but I broke out init_currently_empty_zone()
> for a reason, and I think this was it. I don't think we want to be
> calling free_area_init_core() itself at runtime.
>

I understand what is missing..
"add new zone" function is not in -mm kernel.
So, I can't add new pages into Highmem which is empty at boot time.
Could you post your "add new zone" patch to -mm ?

-- Kame

2005-11-17 09:16:15

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: [Lhms-devel] Re: 2.6.14-mm2

Dave Hansen wrote:
> Hmmm. I _think_ you're just trying to do some things at runtime that I
> didn't intend. In the patch I pointed to in the last mail, look at what
> I did in hot_add_zone_init(). It does some of what
> free_area_init_core() does, but only the most minimal bits. Basically:
>
> zone_wait_table_init(zone, size_pages);
> init_currently_empty_zone(zone, phys_start_pfn, size_pages);
> zone_pcp_init(zone);
>
> Your way may also be valid, but I broke out init_currently_empty_zone()
> for a reason, and I think this was it. I don't think we want to be
> calling free_area_init_core() itself at runtime.
>
Thank you, Dave.

My final patch is below. but I attach this just for sharing not for upstream.

Without some strange emulation of memory hot add, this patch is needless, now.

I use this with custom-dsdt (custom acpi information created by hand) and
other emulation code.

This is sesstion log :)
--
> [kamezawa@aworks ~]$ cat /proc/meminfo
> MemTotal: 501772 kB
> MemFree: 415576 kB
> HighTotal: 0 kB
> HighFree: 0 kB
There are no Highmem.
> [root@aworks kamezawa]# cat /sys/devices/system/memory/memory9/state
> offline
> [root@aworks kamezawa]# echo online > /sys/devices/system/memory/memory9/state
> [root@aworks kamezawa]# cat /sys/devices/system/memory/memory9/state
> online
> [root@aworks kamezawa]# cat /proc/meminfo
> MemTotal: 567308 kB
> MemFree: 479968 kB
> HighTotal: 65536 kB
> HighFree: 65408 kB
Highmem is available
> [root@aworks kamezawa]# cat /proc/meminfo
> MemTotal: 567308 kB
> MemFree: 475440 kB
> HighTotal: 65536 kB
> HighFree: 61128 kB
Highmem is used.

Thanks,
-- Kame
--
Linux-2.6.14-mm2's memory-hot-add cannot deal with
adding new zone case.

My personal x86 environment, which has only 700M bytes memory,
has no HIGHMEM at boot time. So I cannot play with memory-hot-add
with it.

This patch enables memory-hot-add test on tiny machine.
With this patch, I boot the kernel with mem= or memlimit= option
and can add extra 200M bytes pages.

Just for emulation people with poor machine ;)

Note:
This patch is cut out from Dave Hansen's -mhp tree.

-- kame <[email protected]>

Index: linux-2.6.14-mm2/mm/page_alloc.c
===================================================================
--- linux-2.6.14-mm2.orig/mm/page_alloc.c
+++ linux-2.6.14-mm2/mm/page_alloc.c
@@ -36,6 +36,7 @@
#include <linux/memory_hotplug.h>
#include <linux/nodemask.h>
#include <linux/vmalloc.h>
+#include <linux/stop_machine.h>

#include <asm/tlbflush.h>
#include "internal.h"
@@ -1479,7 +1480,9 @@ static int __init build_zonelists_node(p
BUG();
case ZONE_HIGHMEM:
zone = pgdat->node_zones + ZONE_HIGHMEM;
- if (zone->present_pages) {
+ /* When hot-add, present page is 0 at this point.
+ so check spanned_pages instead of present_pages */
+ if (zone->spanned_pages) {
#ifndef CONFIG_HIGHMEM
BUG();
#endif
@@ -1952,21 +1955,26 @@ void __init setup_per_cpu_pageset()
#endif

static __devinit
-void zone_wait_table_init(struct zone *zone, unsigned long zone_size_pages)
+void zone_wait_table_init(struct zone *zone,
+ unsigned long zone_size_pages, int hotadd)
{
int i;
struct pglist_data *pgdat = zone->zone_pgdat;
-
+ int allocsize;
/*
* The per-page waitqueue mechanism uses hashed waitqueues
* per zone.
*/
+ if (hotadd && (zone_size_pages == PAGES_PER_SECTION))
+ zone_size_pages = PAGES_PER_SECTION << 2;
zone->wait_table_size = wait_table_size(zone_size_pages);
zone->wait_table_bits = wait_table_bits(zone->wait_table_size);
- zone->wait_table = (wait_queue_head_t *)
- alloc_bootmem_node(pgdat, zone->wait_table_size
- * sizeof(wait_queue_head_t));
-
+ allocsize = zone->wait_table_size * sizeof(wait_queue_head_t);
+ if (hotadd)
+ zone->wait_table = kmalloc(allocsize, GFP_KERNEL);
+ else
+ zone->wait_table = (wait_queue_head_t *)
+ alloc_bootmem_node(pgdat, allocsize);
for(i = 0; i < zone->wait_table_size; ++i)
init_waitqueue_head(zone->wait_table + i);
}
@@ -1994,7 +2002,6 @@ static __devinit void init_currently_emp
{
struct pglist_data *pgdat = zone->zone_pgdat;

- zone_wait_table_init(zone, size);
pgdat->nr_zones = zone_idx(zone) + 1;

zone->zone_mem_map = pfn_to_page(zone_start_pfn);
@@ -2003,6 +2010,7 @@ static __devinit void init_currently_emp
memmap_init(size, pgdat->node_id, zone_idx(zone), zone_start_pfn);

zone_init_free_lists(pgdat, zone, zone->spanned_pages);
+ zone->spanned_pages = size;
}

/*
@@ -2022,7 +2030,7 @@ static void __init free_area_init_core(s
pgdat->nr_zones = 0;
init_waitqueue_head(&pgdat->kswapd_wait);
pgdat->kswapd_max_order = 0;
-
+
for (j = 0; j < MAX_NR_ZONES; j++) {
struct zone *zone = pgdat->node_zones + j;
unsigned long size, realsize;
@@ -2054,10 +2062,12 @@ static void __init free_area_init_core(s
zone->nr_active = 0;
zone->nr_inactive = 0;
atomic_set(&zone->reclaim_in_progress, 0);
+
if (!size)
continue;

zonetable_add(zone, nid, j, zone_start_pfn, size);
+ zone_wait_table_init(zone, size, 0);
init_currently_empty_zone(zone, zone_start_pfn, size);
zone_start_pfn += size;
}
@@ -2669,3 +2679,49 @@ void *__init alloc_large_system_hash(con

return table;
}
+
+static inline int zone_previously_initialized(struct zone *zone)
+{
+ if (zone->wait_table_size)
+ return 1;
+
+ return 0;
+}
+
+#ifdef CONFIG_MEMORY_HOTPLUG
+static int __build_zonelists(void *__pgdat)
+{
+ pg_data_t *pgdat = __pgdat;
+ build_zonelists(pgdat);
+ return 0;
+}
+DEFINE_SPINLOCK(zone_init_lock);
+int hot_add_zone_init(struct zone *zone, unsigned long phys_start_pfn, unsigned long size_pages)
+{
+ int ret = 0;
+ unsigned long flags;
+ spin_lock_irqsave(&zone_init_lock,flags);
+ if (zone_previously_initialized(zone)) {
+ ret = -EEXIST;
+ goto out;
+ }
+
+ zone_wait_table_init(zone, size_pages, 1);
+ printk("hot add zone init %lx %lx.....\n",phys_start_pfn, size_pages);
+ init_currently_empty_zone(zone, phys_start_pfn, size_pages);
+ zone_pcp_init(zone);
+
+ /*
+ * This is an awfully blunt way to do this. But, the
+ * zonelists are accessed many times over large areas
+ * of performance-critical code in the allocator.
+ * That makes it very hard to get a conventional lock
+ * to work. This of this as a rw lock with a huge
+ * write cost.
+ */
+ stop_machine_run(__build_zonelists, zone->zone_pgdat, NR_CPUS);
+out:
+ spin_unlock_irqrestore(&zone_init_lock, flags);
+ return ret;
+}
+#endif
Index: linux-2.6.14-mm2/mm/memory_hotplug.c
===================================================================
--- linux-2.6.14-mm2.orig/mm/memory_hotplug.c
+++ linux-2.6.14-mm2/mm/memory_hotplug.c
@@ -48,6 +48,8 @@ static int __add_section(struct zone *zo

ret = sparse_add_one_section(zone, phys_start_pfn, nr_pages);

+ hot_add_zone_init(zone, phys_start_pfn, PAGES_PER_SECTION);
+
if (ret < 0)
return ret;