2008-03-04 09:20:37

by Andrew Morton

[permalink] [raw]
Subject: 2.6.25-rc3-mm1


ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/



Boilerplate:

- See the `hot-fixes' directory for any important updates to this patchset.

- To fetch an -mm tree using git, use (for example)

git-fetch git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git tag v2.6.16-rc2-mm1
git-checkout -b local-v2.6.16-rc2-mm1 v2.6.16-rc2-mm1

- -mm kernel commit activity can be reviewed by subscribing to the
mm-commits mailing list.

echo "subscribe mm-commits" | mail [email protected]

- If you hit a bug in -mm and it is not obvious which patch caused it, it is
most valuable if you can perform a bisection search to identify which patch
introduced the bug. Instructions for this process are at

http://www.zip.com.au/~akpm/linux/patches/stuff/bisecting-mm-trees.txt

But beware that this process takes some time (around ten rebuilds and
reboots), so consider reporting the bug first and if we cannot immediately
identify the faulty patch, then perform the bisection search.

- When reporting bugs, please try to Cc: the relevant maintainer and mailing
list on any email.

- When reporting bugs in this kernel via email, please also rewrite the
email Subject: in some manner to reflect the nature of the bug. Some
developers filter by Subject: when looking for messages to read.

- Occasional snapshots of the -mm lineup are uploaded to
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/mm/ and are announced on
the mm-commits list. These probably are at least compilable.

- More-than-daily -mm snapshots may be found at
http://userweb.kernel.org/~akpm/mmotm/. These are almost certainly not
compileable.



Changes since 2.6.25-rc2-mm1:


origin.patch
git-x86.patch
git-acpi.patch
git-alsa.patch
git-avr32.patch
git-cifs.patch
git-cpufreq.patch
git-powerpc.patch
git-drm.patch
git-dvb.patch
git-hwmon.patch
git-gfs2-nmw.patch
git-dlm.patch
git-hid.patch
git-hrt.patch
git-ia64.patch
git-ieee1394.patch
git-infiniband.patch
git-jfs.patch
git-kvm.patch
git-md-accel.patch
git-mtd.patch
git-ubi.patch
git-net.patch
git-nfsd.patch
git-ocfs2.patch
git-parisc.patch
git-selinux.patch
git-s390.patch
git-scsi-misc.patch
git-block.patch
git-unionfs.patch
git-v9fs.patch
git-watchdog.patch
git-xtensa.patch
git-slub.patch
git-semaphore.patch

git tres

-revert-send-a-single-notification-on-device-state-changes.patch
-uml-fix-initrd-printk.patch
-uml-update-defconfig.patch
-arch-um-kernel-memc-fix-a-shadowed-variable.patch
-make-lkdtm-depend-on-block.patch
-fuse-fix-permission-checking.patch
-mn10300-define-hz-as-a-config-option.patch
-mn10300-define-so_mark.patch
-samples-build-fix.patch
-git-acpi-powerpc-kconfig-fix.patch
-remove-is_processor_present-prototype.patch
-git-agpgart-make-ia64-compile.patch
-git-audit-printk-warning-fix.patch
-enable-hotplug-memory-remove-for-ppc64.patch
-driver-base-memory-semaphore-to-mutex.patch
-drivers-pcmcia-i82092c-fix-up-after-pci_bus_region-changes.patch
-gregkh-driver-kset-move-sys-slab-to-sys-kernel-slab-slabinfo-fallback-from-sys-kernel-slab-to-sys-slab.patch
-jdelvare-i2c-i2c-pxa-misc-fixes.patch
-i2c-isp1301_omap-new-style-i2c-driver-updates-part-1.patch
-adt7473-new-driver-for-analog-devices-adt7473-sensor-chip.patch
-applesmc-sensors-set-for-macbook2.patch
-dlm-match-signedness-between-dlm_config_info-and-cluster_set.patch
-apanel-fix-kconfig-dependencies.patch
-ata-fix-sparse-warning-in-libatah.patch
-ide-mm-ide-add-missing-base-addresses-for-falconide-and-macide.patch
-ide-mm-ide-tape-schedule-driver-for-removal-after-6-months.patch
-ide-mm-ide-rework-powermac-media-bay-support.patch
-ide-mm-ide-remove-broken-dangerous-ide-unregister-scan-hwif-ioctls-take-2.patch
-fix-ide-mm-ide-rework-powermac-media-bay-support.patch
-mips-use-find_task_by_vpid-in-system-calls.patch
-fix-alignment-of-ip-config-output.patch
-git-nfsd-fix.patch
-ocfs2-le_add_cpu-conversion.patch
-blackfin-serial-driver-this-driver-enable-sports-on-blackfin-emulate-uart.patch
-if-0-pci_cleanup_aer_correct_error_status.patch
-cleanup-gregkh-pci-pci-fix-bus-resource-assignment-on-32-bits-with-64b-resources.patch
-quirks-set-en-bit-of-msi-mapping-for-devices-onht-based-nvidia-platform.patch
-pci-disable-decoding-during-sizing-of-bars.patch
-kill-warnings-in-mptbaseh-on-parisc64.patch
-scsi-qlogicptic-section-fixes.patch
-megaraid-outb_p-extermination.patch
-embed-a-struct-path-into-struct-nameidata-instead-of-nd-dentrymnt-vs-git-unionfs.patch
-introduce-path_put-unionfs.patch
-iget-stop-unionfs-from-using-iget-and-read_inode.patch
-gregkh-usb-usb-ftdi_sioc-add-missing.patch
-gregkh-usb-usb-sane-memory-allocation-in-option-driver.patch
-usb-microtek-remove-unused-semaphore.patch
-usb-libusual-locking-cleanup.patch
-usb-make-usb_storage_onetouch-available-with-pm.patch
-usb-ohci-sm501-driver-v2-fix.patch
-usb-yet-another-dell-wireless-cdma-evdo-modem.patch
-drivers-usb-serial-io_tic-remove-pointless-eye-candy-in-debug-statements.patch
-usb-ehci-tolerates-some-buggy-devices.patch
-usbatm-switch-to-kthread-api-stop-using-kill_proc.patch
-usb-serial-move-zte-mf330-from-sierra-to-option.patch
-it8712f_wdt-support-for-16-bit-timeout-values-wdioc_getstatus.patch
-pci-dont-load-acpi_php-when-acpi-is-disabled.patch
-x86-amd-thermal-interrupt-support.patch
-x86-remove-pt_regs-arg-from-smp_thermal_interrupt.patch
-x86-visws-fix-printk-format-warnings.patch
-x86-minor-cleanup-of-comments-in-processorh.patch
-documentation-i386-io-apictxt-fix-description.patch
-x86_64-set-cfg_size-for-amd-family-10h-in-case-mmconfig-is-used.patch
-rtc-cmos-display-hpet-emulation-mode.patch
-register_memory-unregister_memory-fix-use-after-free-and-refcounting.patch
-acer-wmi-fail-gracefully-if-acpi-is-disabled.patch
-tc1100-wmi-fail-gracefully-if-acpi-is-disabled.patch
-dmi-dont-save-the-same-device-twice-was-smbios-dmi-add-type-41-=-onboard-devices-extended-information.patch
-uml-remove-unused-sigcontext-accessors.patch
-uml-fix-helper_wait-calls-in-watchdog.patch
-uml-fix-fp-register-corruption.patch
-x86-cast-cmpxchg-and-cmpxchg_local-result-for-386-and-486.patch
-nbd-make-nbd-default-to-deadline-i-o-scheduler.patch
-efs-move-headers-out-of-include-linux.patch
-percpu-fix-debug_preempt-per_cpu-checking.patch
-proc-add-rlimit_rttime-to-proc-pid-limits.patch
-sparc-fix-build.patch
-drivers-video-uvesafbc-fix-section-mismatch-warning-in-param_set_scroll.patch
-remove-rcu_assign_pointernull-penalty-with-type-macro-safety.patch
-add-rcu_assign_index-if-ever-needed.patch
-add-rcu_assign_index-if-ever-needed-fix.patch
-dmi-prevent-linked-list-corruption-resent.patch
-proc-pid-pagemap-fix-pm_special-macro.patch
-x86-fix-clearcopy_user_page-declarations-in-pageh.patch
-futex-fix-init-order.patch
-futex-runtime-enable-pi-and-robust-functionality.patch
-bluetooth-fix-warning-in-net-bluetooth-hci_sysfsc.patch
-h8300-signalc-typo-fix.patch
-h8300-uaccessh-update.patch
-h8300-config_kallsyms-fix.patch
-h8300-irq-handling-update.patch
-h8300-defconfig-update.patch
-debugfs-fix-sparse-warnings.patch
-rtc-add-support-for-the-s-35390a-rtc-chip.patch
-rtc-add-support-for-the-s-35390a-rtc-chip-checkpatch-fixes.patch
-ext4-mm-remove_incorrect_bkl_comments_in_ext4.patch
-ext4-mm-ext4_ialloc-flexbg.patch
-ext4-mm-ext4-online-defrag-iget-read-inode-fix.patch
-ext4-mm-convert_ext4_to_use_unlocked_ioctl_v2.patch
-ext4-fdatasync-should-skip-metadata-writeout-when-overwriting.patch
-ext4-le_add_cpu-conversion.patch
-jbd2-sparse-warnings-in-revokec-journalc.patch
-ext4-convert-byte-order-of-constant-instead-of-variable.patch
-provide-u64-version-of-jiffies_to_usecs-in-kernel-tsacctc.patch
-fix-shadowed-variables-in-kernel-posix-cpu-timersc.patch
-timers-simplify-lockdep-stuff.patch
-hrtimers-simplify-lockdep-stuff.patch
-kill-double_spin_lock.patch
-use-find_task_by_vpid-in-taskstats.patch
-deprecate-find_task_by_pid.patch

Merged into mainline or a subsystem tree

+cgroup-fix-default-notify_on_release-setting.patch
+update-checkpatchpl-to-version-015.patch
+serial-add-pnp-id-gvc0303-for-archtek-3334brv-isa-modem.patch
+cris-v10-include-mmh-instead-of-vmstath-in-kernel-timec.patch
+memory-resource-controller-use-strstrip-while-parsing-arguments.patch
+rtc-add-support-for-the-s-35390a-rtc-chip.patch
+specialixc-fix-possible-double-unlock.patch
+gpio-linux-gpioh-and-no-gpio-support-here-stubs.patch
+control-groups-add-paul-menage-a-maintainer.patch
+add-balbir-as-the-maintainer-for-memory-resource-controller.patch
+core-dump-user_regset-writeback.patch
+fix-malformed-early-option-loglevel.patch
+zlc_setup-handle-jiffies-wraparound.patch
+zlc_setup-handle-jiffies-wraparound-fix.patch
+hda_intel-needs-dma-mappingh.patch
+m68knommu-wire-up-new-timerfd-syscalls.patch

2.6.25 queue

+define-functions-for-page-cache-handling.patch

Will probably drop this series

-softlockup-workaround.patch

I still need this on one machine to fix a poweroff regression.

+arch-x86-kernel-ptracec-fix-defined-but-unused-warnings.patch
+documentation-i386-io-apictxt-fix-description.patch
+add-the-dff-desktop-form-factor-dell-optiplex-745-to-the-reboot-errata-list.patch

x86 things

+git-acpi-fixup.patch

Fix git-acpi.

+acpi-add-acpi-aliases-to-toshiba_acpi-module.patch
+acpi-make-real-parent-for-acpi-button-input-devices.patch

acpi things

+git-alsa-fix-git-conflicts.patch

Fix git conflicts in git-alsa

+git-alsa-build-fix.patch
+snd-hda-intel-dont-print-using-snd_printdd-on-device-open.patch
+sound-use-bug_on.patch
+sound-replace-remaining-__function__-occurences.patch

alsa stuff

+agp-fix-shadowed-variable-warning-in-amd-k7-agpc.patch

agp fix

+arm-replace-remaining-__function__-occurences.patch

cleanup

+cifs-remove-global_extern-macro.patch

cifs cleanup

+cpufreq-fix-section-mismatch-warnings.patch

cpufreq fix

+powerpc-replace-remaining-__function__-occurences.patch
+ppc-replace-remaining-__function__-occurences.patch

powerpc things

+gregkh-driver-kobject-properly-initialize-ksets.patch
+gregkh-driver-kobject-catch-kobjects-that-are-not-initialized.patch
+gregkh-driver-uio-kconfig-improvements.patch
+gregkh-driver-uio-mark-pci_device_id-hilscher_pci_ids-__devinitdata.patch
+gregkh-driver-uio-arch-arm-kconfig-make-uio-available-on-arm-architecture.patch
+gregkh-driver-uio-remove-needless-pci_device_id-definition-from-uio_cifc.patch
+gregkh-driver-debugfs-fix-sparse-warnings.patch
+gregkh-driver-driver-core-memory-semaphore-to-mutex.patch
+gregkh-driver-driver-core-register_memory-unregister_memory-clean-ups-and-bugfix.patch
+gregkh-driver-driver-core-numactl-interleave-all-doesn-t-works-on-memoryless-node.patch
+gregkh-driver-sysfs-small-header-file-cleanup-for-sysfs-n.patch
+gregkh-driver-firmware-move-firmware_class-from-documentation-to-samples.patch
+gregkh-driver-firmware-clean-up-samples-for-coding-style-issues.patch
+gregkh-driver-pnp-add-all-pnp-card-device-id-s-as-individual-aliases.patch
+gregkh-driver-power_state-remove-it-from-driver-core.patch
+gregkh-driver-video-add-the-go7007-driver.patch

driver tree updates

+revert-gregkh-driver-video-add-the-go7007-driver.patch
+drivers-base-cpu-fix-section-mismatch-in-cpucstore_online.patch
+sysdev-detect-multiple-driver-registrations.patch
+driver-core-fix-cleanup-when-failing-device_add.patch
+driver-core-debug-for-bad-dev_attr_show-return-value.patch

Things for the driver tree.

+radeon-fix-integer-as-null-pointer-warnings-in-radeon_memc.patch

drm fix

-git-dvb-someone-broke-the-gpio-includes.patch

Unneeded

+video-limit-stack-usage-of-ir-kbd-i2cc.patch

v4l fix

+jdelvare-i2c-i2c-amd756-fix-off-by-one.patch
+jdelvare-i2c-i2c-ibm_iic-01-change-log-levels.patch
+jdelvare-i2c-i2c-ibm_iic-02-of-platform.patch
+jdelvare-i2c-i2c-dev-split-i2cdev_ioctl.patch
+jdelvare-i2c-i2c-bus-driver-for-sh7760-soc.patch
+jdelvare-i2c-i2c-isp1301_omap-convert-to-new-style-1.patch

i2c tree updates

+provide-u64-version-of-jiffies_to_usecs-in-kernel-tsacctc.patch
+time-remove-obsolete-clock_tick_adjust.patch
+time-remove-obsolete-clock_tick_adjust-update.patch

time-management things

+ia64-remove-unnecessary-nfs-includes-from-sys_ia32c.patch
+ia64-remove-remaining-__function__-occurences.patch

ia64 things

+maple-allow-removal-and-reinsertion-of-keyboard-driver-module.patch
+maple-add-driver-for-sega-dreamcast-controller.patch
+maple-add-driver-for-sega-dreamcast-controller-update.patch
+maple-add-driver-for-sega-dreamcast-controller-update-checkpatch-fixes.patch
+input-put-ledstate-in-the-keyboard-notifier.patch
+input-put-ledstate-in-the-keyboard-notifier-fix.patch
+hdaps-invert-the-axes-for-hdaps-on-lenovo-r61i-thinkpads.patch
+input-core-driver-for-wm97xx-touchscreens.patch
+input-add-chip-driver-for-wm9705-touchscreen.patch
+input-add-chip-driver-for-wm9712-touchscreen.patch
+input-add-chip-driver-for-wm9713-touchscreen.patch
+input-driver-for-wm97xx-touchscreens-in-streaming-mode-on-mainstone.patch
+input-build-system-and-maintainers-entry-for-wm97xx-touchscreen-drivers.patch
+input-add-lenovo-3000-n100-to-nomux-blacklist.patch
+input-touchscreen-driver-add-support-ad7877-touchscreen-driver.patch
+ati_remote2-autorepeat-and-loadable-keymap-support.patch
+#input-add-debouncing-for-generic-gpio-input-device-gpio_keyc.patch: jiri probs
+input-add-debouncing-for-generic-gpio-input-device-gpio_keyc.patch
+xpad-match-xbox-360-devices-with-interface-info.patch

input patches I've been accumulating during Dmitry's absence.

+tags-add-menuconfig-symbols-as-well.patch

kbuild tweak

+pata_amd-fix-sparse-warning.patch
+pata-i-do-not-think-it-means-what-you-think-it-means.patch
+pata-i-do-not-think-it-means-what-you-think-it-means-checkpatch-fixes.patch

paa things

+ide-mm-ide-rework-powermac-media-bay-support-take-2.patch
+ide-mm-ide-remove-dead-obsolete-busproc-method.patch
+ide-mm-ide-remove-broken-dangerous-ide-unregister-scan-hwif-ioctls-take-3.patch
+ide-mm-ide-pmac-remove-dead-code.patch
+ide-mm-ppc-hdpu-remove-dead-ide-code.patch
+ide-mm-ppc-ppc4xx-remove-ppc_ide_md-hooks.patch
+ide-mm-ppc-pmac-remove-ppc_ide_md-hooks.patch
+ide-mm-ppc-mpc8xx-remove-ppc_ide_md-hooks.patch
+ide-mm-ppc-lopec-remove-ppc_ide_md-hooks.patch
+ide-mm-ppc-sandpoint-remove-ppc_ide_md-hooks.patch
+ide-mm-ppc-pplus-remove-ppc_ide_md-ide_init_hwif-hook.patch
+ide-mm-ppc-remove-ppc_ide_md-ide_init_hwif-hook.patch
+ide-mm-ppc-dont-include-linux-ide-h.patch
+ide-mm-ppc-pmac-remove-no-longer-needed-ide-quirk.patch
+ide-mm-ide-add-config_ide_arch_obsolete_defaults-take-2.patch
+ide-mm-ide-remove-config_ide_arch_obsolete_init.patch
+ide-mm-ide-remove-ide_default_io_ctl-macro.patch
+ide-mm-ide-remove-ppc-ifdef-from-init_ide_data.patch
+ide-mm-ide-add-ide-4drives-host-driver-take-3.patch
+ide-mm-cmd640-cleanup-setup_device_ptrs.patch
+ide-mm-cmd640-init-hwif-io_ports-irq-explicitly.patch
+ide-mm-ide-limit-legacy-vlb-host-drivers-to-alpha-x86-and-mips.patch
+ide-mm-ide-init-hwif-io_ports-irq-explicitly-in-legacy-vlb-host-drivers.patch
+ide-mm-ide-remove-needless-hwif-irq-check-from-ide_hwif_configure.patch
+ide-mm-ide-remove-obsoleted-idex-noprobe-kernel-parameter.patch
+ide-mm-ide-move-default-ide-ports-setup-to-ide_generic-host-driver.patch
+ide-mm-ide-remove-ide_init_default_irq-macro.patch
+ide-mm-ide-cleanup-ide_match_hwif.patch
+ide-mm-ide-cleanup-ide_find_port.patch
+ide-mm-swarm-use-ide_find_port.patch
+ide-mm-ide-pmac-dynamically-allocate-struct-pmac_ide_hwif-instances-take-2.patch
+ide-mm-ide-pmac-use-ide_find_port.patch
+ide-mm-sgiioc4-use-ide_find_port.patch
+ide-mm-au1xxx-ide-use-ide_find_port.patch
+ide-mm-cmd640-remove-cmd_drives.patch
+ide-mm-cmd640-use-ide_find_port.patch
+ide-mm-scc_pata-store-hwif-pointer-in-struct-scc_ports.patch
+ide-mm-umc8672-dont-use-ide_hwifs-in-umc_set_pio_mode.patch
+ide-mm-ht6560b-use-driver-name-for-resource-allocation.patch
+ide-mm-qd65xx-return-error-value-in-qd_probe.patch
+ide-mm-ide-ide_hflag_bootable-to-ide_hflag_non_bootable.patch
+ide-mm-ide-use-div_round_up.patch
+ide-mm-ide-remove-pio-downgrade-quirk.patch
+ide-mm-ide-merge-ide_match_hwif-and-ide_find_port.patch
+ide-mm-ide-use-ide_find_port-in-legacy-vlb-host-drivers-take-2.patch
+ide-mm-ide-generic-use-ide_find_port-take-3.patch
+ide-mm-ide-unexport-ide_hwifs.patch
+ide-mm-ide-disk-add-proc_idedisk_read_smart-helper.patch
+ide-mm-ide-disk-fix-issues-found-by-checkpatch-pl.patch
+ide-mm-ide-cd-remove-the-internal-64k-buffer.patch
+ide-mm-remove-include-linux-hdsmart-h.patch
+ide-mm-ide_platform-fix-resources-handling.patch
+ide-mm-delkin_cb-fix-resources-handling.patch
+ide-mm-bast-ide-fix-resources-reservation.patch
+ide-mm-mpc8xx-make-m8xx_ide_init_ports-return-an-error-value.patch
+ide-mm-mpc8xx-fix-resources-reservation.patch
+ide-mm-falconide-fix-resources-reservation-take-2.patch
+ide-mm-ide-fix-enabling-dma-on-it821x-in-smart-mode.patch
+ide-mm-ide-remove-ide_hflag_cy82c693-host-flag.patch
+ide-mm-ide-remove-hwif-straight8-flag.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_setup-pci-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_tc86c001-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_slc90e66-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_sis5513-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_jmicron-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_generic-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_legacy_umc8672-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_legacy_ide-4drives-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_ide-proc-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_ide-pnp-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_opti621-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_cmd640-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_legacy_hd-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_legacy_ali14xx-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_ide-floppy-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_it8213-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_pci_cy82c693-c.patch
+ide-mm-ide-coding-style-fixes-to-drivers_ide_ide-cd-c.patch
+ide-mm-ide-cd-replace-__function__-with-__func__.patch
+ide-mm-ide-cd-put-proc-related-functions-together-under-single-ifdef.patch
+ide-mm-qd65xx-selectproc-method-needs-to-be-always-used.patch
+ide-mm-qd65xx-use-ide_hflag_single-host-flag.patch
+ide-mm-it821x-fix-kzalloc-failure-handling.patch
+ide-mm-sis5513-fail-early-for-unsupported-chipsets.patch
+ide-mm-ide-sanitize-handling-of-ide_hflag_no_set_mode-host-flag.patch
+ide-mm-ide-add-struct-ide_port_ops.patch
+ide-mm-ide-cd-include-proper-headers.patch
+ide-mm-ide-cd-put-all-proc-related-code-at-one-place.patch
+ide-mm-ide-cd-fixup-comments.patch
+ide-mm-ide-cd-shorten-lines-longer-than-80-columns.patch
+ide-mm-ide-cd-fix-remaining-checkpatch-pl-issues.patch
+ide-mm-ide-remove-noprobe-field-from-ide_hwif_t.patch
+ide-mm-ide-add-ide_legacy_device_add-helper.patch
+ide-mm-ide-use-ide_legacy_device_add-for-qd65xx-take-2.patch
+ide-mm-qd65xx-cleanup-qd_probe.patch
+ide-mm-ide-pnp-manage-io-resources-in-driver.patch
+ide-mm-ide-cs-manage-io-resources-in-driver.patch
+ide-mm-ide-register-ports-with-non-present-devices-for-warm-plug.patch
+ide-mm-ide-remove-ide_hwif_release_regions.patch
+ide-mm-ide-generic-manage-io-resources-in-driver.patch
+ide-mm-ide-4drives-manage-io-resources-in-driver.patch
+ide-mm-ide_arm-manage-io-resources-in-driver.patch
+ide-mm-ide-add-ide_legacy_init_one-helper.patch
+ide-mm-ide-manage-io-resources-in-ide_legacy_init_one.patch
+ide-mm-cmd640-manage-io-resources-in-driver.patch
+ide-mm-ide-manage-resources-for-pci-devices-in-ide_pci_enable.patch
+ide-mm-ide-remove-ide_hwif_request_regions.patch
+ide-mm-ide-cleanup-setting-hwif-mmio-flag.patch
+ide-mm-ide-tape-remove-idetape_pipeline_active.patch

The IDE tree shows its usual levelof activity ;)

+m32r-cleanup-drop-dataidt-section-in-vmlinuxlds-script.patch

m32r cleanup

+mips-replace-remaining-__function__-occurences.patch

mips cleanup

+mtdoopsc-make-struct-oops_cxt-static-again.patch
+make-mtd-nand-cs553x_nandcpart_probes-static.patch
+jffs2-include-function-prototype-for-jffs2_ioctl.patch
+jffs2-fix-sparse-warning-in-nodemgmtc.patch
+jffs2-fix-sparse-warning-in-writec.patch
+jffs2-fix-sparse-warnings-in-gcc.patch
+block2mtd-logging-typo-fixes.patch
+jffs2-add-write-verify-on-dataflash.patch
+mtd-nor-add-support-for-the-st-m29w400db-flash-chip.patch

mtd things

+cosa-srp-convert-channel_datarsem-to-mutex.patch

mutex conversion

+bluetooth-make-hci_sock_cleanup-return-void.patch
+bluetooth-make-bnep_sock_cleanup-return-void.patch

bluetooth things

-3c509-convert-to-isa_driver-and-pnp_driver-v4.patch
-3c509-convert-to-isa_driver-and-pnp_driver-v4-cleanup.patch

Dropped

+make-s2iocinit_tti-static.patch
+smc91x-pass-along-private-data-v2.patch
+smc91x-introduce-platform-data-flags-v2.patch
+smc91x-add-insw-outsw-to-default-config-v2.patch
+smc91x-make-superh-use-default-config-v2.patch
+drivers-net-apnec-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-appletalk-copsc-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-appletalk-ltpcc-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-arcnet-capmodec-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-arcnet-com20020c-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-at1700c-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-atarilancec-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-8390c-replace-init_modulecleanup_module-with-module_initmodule_exit.patch
+drivers-net-ac3200c-replace-init_modulecleanup_module-with-module_initmodule_exit.patch

netdev things

+blackfin-replace-remaining-__function__-occurences.patch

blackfin cleanup

+fs-ocfs2-use-bug_on.patch
+fs-ocfs2-dlm-dlmdomainc-fix-printk-warning.patch

ocfs2 things

+parisc-replace-remaining-__function__-occurences.patch

parisc cleanup

+pcmcia-silence-section-mismatch-warnings-from-class_interface-variables.patch
+pcmcia-silence-section-mismatch-warnings-from-pci_driver-variables.patch
+pcmcia-annotate-cb_alloc-with-__ref.patch

pcmcia things

+gregkh-pci-pci-if-0-pci_assign_resource_fixed.patch
+gregkh-pci-pci-remove-parisc-consumer-of-the-pci-global_list.patch
+gregkh-pci-pci-pcie-aer-don-t-check-_osc-when-acpi-is-disabled.patch
+gregkh-pci-pci-if-0-pci_cleanup_aer_correct_error_status.patch
+gregkh-pci-pci-include-pci-domain-in-pci-bus-names-on-x86-x86_64.patch
+gregkh-pci-pci-remove-pci-routeirq-noise-from-dmesg.patch

PCI tree updates

+pci-fix-section-mismatch-warning-in-pci_scan_child_bus.patch
+pci_alloc_child_bus-mustnt-be-__devinit.patch
+pci_scan_device-mustnt-be-__devinit.patch
+pci_bus_size_cardbus-mustnt-be-__devinit.patch
+pci_setup_bridge-mustnt-be-__devinit.patch
+pci-simplify-quirk-debug-output.patch
+pci-iommu-iotlb-flushing.patch
+pci-consolidate-duplicated-msi-enable-functions.patch
+pci-use-dev_printk-in-quirk-messages.patch

PCI things

-git-sched-git-rejects.patch
-tracing-is-borked-on-powerpc.patch

Unneeded

+sh-superh-keysc-platform-driver.patch
+sh-superh-keysc-keypad-data-for-migor.patch
+sh-superh-keysc-keypad-data-for-solution-engine-7722.patch
+sh-replace-remaining-__function__-occurences.patch
+sh-export-copy-page-to-modules.patch

SuperH things

+scsi-fix-section-mismatch-in-aic94xx.patch
+if-0-ses_match_host.patch

scsi things

-libsas-convert-ata-bridge-to-use-new-eh.patch

Dropped

+remove-ps2esdi.patch
+kconfig-cleanup-block-kconfig-help-descriptions.patch
+block-fix-shadowed-variable-warning-in-blk-mapc.patch
+block-remove-extern-on-function-definition.patch
+use-page_cache_xxx-in-fs-splicec.patch
+cciss-remove-read_ahead-define-and-use-block-layer-defaults.patch
+kconfig-cleanup-block-kconfigiosched-help-descriptions.patch
+device-mapper-not-reporting-no-barrier-support.patch

block things

-unionfs-is-broken.patch
-git-unionfs-git-rejects.patch

Unneeded

+gregkh-usb-usb-microtek-remove-unused-semaphore.patch
+gregkh-usb-usb-libusual-locking-cleanup.patch
+gregkh-usb-usb-make-usb_storage_onetouch-available-with-pm.patch
+gregkh-usb-usb-usb-ohci-sm501-driver-use-the-conventional-convention-for-suspend-and-resume.patch
+gregkh-usb-usb-usbatm-convert-heavy-init-dances-to-kthread-api.patch
+gregkh-usb-usb-defines-for-usb-link-power-management-ecn.patch
+gregkh-usb-usb-ehci-minor-cleanups.patch
+gregkh-usb-usb-ohci-port-reset-paranoia-timeout.patch
+gregkh-usb-usb-ehci-tolerates-some-buggy-devices.patch
+gregkh-usb-usb-ehci-minor-soc-bus-glue-fixes.patch
+gregkh-usb-usb-m66592-udc-reduce-size-of-data-structure.patch
+gregkh-usb-usb-ehci-refactor-if-state-hc_state_halt.patch
+gregkh-usb-usb-gadget-hangup-tty-on-g_serial-disconnect.patch
+gregkh-usb-usb-io_tic-remove-pointless-eye-candy-in-debug-statements.patch
+gregkh-usb-usb-cypress_m8-feature-buffer-fixes.patch
+gregkh-usb-usb-cypress_m8-packet-format-is-separate-from-characteristic-size.patch
+gregkh-usb-usb-cypress_m8-don-t-issue-get_config-for-certain-devices.patch
+gregkh-usb-usb-cypress_m8-get-rid-of-pointless-null-check.patch
+gregkh-usb-usb-cypress_m8-limit-baud-rate-to-4800-for-usb-low-speed-devices.patch
+gregkh-usb-usb-misc-auerswald-cp_mutex-to-mutexdiff.patch
+gregkh-usb-usb-misc-auerswald-ccp_readmutex-to-mutexdiff.patch
+gregkh-usb-usb-misc-auerswald-ccp_mutex-to-mutexdiff.patch
+gregkh-usb-usb-minor-ehci-xitd-simplifications.patch
+gregkh-usb-usb-usb-serial-prepare-for-bkl-push-down.patch
+gregkh-usb-usb-ftdi_sio-note-missing-locking.patch
+gregkh-usb-usb-serial-note-mos7480-and-option-don-t-lock-modem-status.patch
+gregkh-usb-usb-iuu_phoenix-lock-priv-tiostatus-properly.patch
+gregkh-usb-usb-kobil_sct-get-rid-of-unneeded-priv-line_state.patch
+gregkh-usb-usb-ti_usb_3410_5052-extend-locking-to-msr-and-shadow-mcr.patch
+gregkh-usb-usb-io_ti-lock-mcr-and-msr-shadows-properly.patch
+gregkh-usb-usb-add-sensoray-2255-v4l-driver.patch

USB tree updates

+usb-use-div_round_up.patch
+usbaudio-handle-kcalloc-failure.patch
+drivers-usb-serial-io_tic-remove-unneeded-null-tty-check.patch
+usb-remove-unnecessary-type-casting-of-urb-context.patch
+usb-remove-unnecessary-type-casting-of-urb-context-checkpatch-fixes.patch
+usb-fix-comment-of-struct-usb_interface.patch
+usb-mos7840c-add-support-for-the-mos7820-7840-based-bb-usb-rs485-converter.patch

USB things

+9p-handle-kstrdup-and-match_strdup-failure.patch

v9fs fix

-git-watchdog-git-rejects.patch

Unneeded

+watchdog-hpwdt-fix-declaration-of-struct-smbios_entry_point.patch
+watchdog-hpwdt-fix-return-value-warning.patch
+watchdog-hpwdt-use-dmi_walk-instead-of-own-copy.patch

Watchdog things

+the-scheduled-bcm43xx-removal.patch
+the-scheduled-ieee80211-softmac-removal.patch
+the-scheduled-rc80211-simplec-removal.patch
+wdev-ath5k-typecheck-on-nondebug.patch

Wireless things

+use-page_cache_xxx-for-fs-xfs.patch

Will probably drop

+crypto-switch-to-proc_create.patch

Crypto fix

+xtensa-replace-remaining-__function__-occurences.patch

xtensa cleanup

+git-semaphore-git-rejects.patch

Fix git rejects in git-semaphore.patch

+alloc_percpu-fails-to-allocate-percpu-data.patch
+kthread-call-wake_up_process-without-the-lock-being-held.patch
+vt-notifier-fix-for-vt-switch.patch
+documentation-atomic_add_unless-doesnt-imply-mb-on-failure-fix.patch
+kprobes-indicate-kretprobe-support-in-kconfig.patch
+kprobes-move-kprobe-examples-to-samples.patch
+memory-controller-rename-to-memory-resource-controller.patch
+tridentfb-resource-management-fixes-in-probe-function.patch
+tridentfb-resource-management-fixes-in-probe-function-fix.patch
+add-noinline_for_stack.patch
+pktcdvd-reduce-stack-consumption.patch
+mpc5200-fix-build-error-on-mpc52xx_psc_spi-device-driver.patch
+ds1wm-should-check-for-is_errclk-instead-of-null.patch
+ds1wm-report-bus-reset-error.patch
+ndelay-switch-to-c-function-to-avoid-64-bit-division.patch
+ndelay-switch-to-c-function-to-avoid-64-bit-division-fix.patch
+sm501fb-direct-color-visual-does-not-work.patch
+sm501fb-rgb-offsets-are-reversed-in-16bpp-modes.patch
+sm501fb-set-transpoffset-to-0-in-8bpp-and-16bpp-modes.patch
+sm501fb-fix-timing-limits.patch
+sm501-remove-a-duplicated-table.patch
+sm501-add-support-for-the-sm502-programmable-pll.patch
+sm501-add-support-for-the-sm502-programmable-pll-checkpatch-fixes.patch
+ipwireless-fix-potential-tty-==-null-dereference.patch
+cris-import-stringc-memcpy-from-newlib-fixes-compile-error-with-gcc-4.patch
+include-falloch-in-header-y.patch
+alpha-convert-iommu-to-use-align.patch
+alpha-iommu-had-better-access-to-the-free-space-bitmap-at-only-one-place.patch
+alpha-make-iommu-respect-the-segment-boundary-limits.patch
+alpha-remove-unused-debug_forcedac-define-in-iommu.patch
+gitignore-ignore-emacs-backup-and-temporary-files.patch
+markers-dont-risk-null-deref-in-marker.patch
+markers-dont-risk-null-deref-in-marker-checkpatch-fixes.patch
+markers-add-an-if0-to-__mark_check_format.patch
+memcg-mm_match_cgroup-not-vm_match_cgroup.patch
+memcg-move_lists-on-page-not-page_cgroup.patch
+memcg-page_cache_release-not-__free_page.patch
+memcg-when-do_swaps-do_wp_page-fails.patch
+memcg-fix-vm_bug_on-from-page-migration.patch
+memcg-bad-page-if-page_cgroup-when-free.patch
+memcg-mem_cgroup_charge-never-null.patch
+memcg-remove-mem_cgroup_uncharge.patch
+memcg-memcontrol-whitespace-cleanups.patch
+memcg-memcontrol-uninlined-and-static.patch
+memcg-remove-clear_page_cgroup-and-atomics.patch
+memcg-css_put-after-remove_list.patch
+memcg-fix-mem_cgroup_move_lists-locking.patch
+memcg-simplify-force_empty-and-move_lists.patch
+memcg-fix-oops-on-null-lru-list.patch
+drivers-char-isicomc-correct-use-of-and.patch
+drivers-isdn-correct-use-of-and.patch
+drivers-serial-m32r_sioc-correct-use-of-and.patch
+fs-reiserfs-superc-correct-use-of-and.patch
+block-fix-residual-byte-count-handling.patch
+acpi-thinkpad-acpi-fix-hotkey_get_tablet_mode.patch
+cris-correct-usage-of-__user-for-copy-to-and-from-user-space-in-lib-usercopy-and-uaccessh-try-2.patch
+cris-correct-syscall-numbers-in-unistdh-for-timerfd_settime-and-timerfd_gettime.patch
+kernel-add-clamp-and-clamp_t-macros.patch
+kernel-add-clamp-and-clamp_t-macros-checkpatch-fixes.patch
+kernel-add-clamp-and-clamp_t-macros-fix.patch
+ecryptfs-make-ecryptfs_prepare_write-decrypt-the-page.patch
+hisax_fcpcipnp-move-request_irq-later-in-probe.patch
+iommu-export-iommu_is_span_boundary-helper-function.patch
+iommu-parisc-pass-struct-device-to-iommu_alloc_range.patch
+iommu-parisc-pass-struct-device-to-iommu_alloc_range-checkpatch-fixes.patch
+iommu-parisc-make-the-iommus-respect-the-segment-boundary-limits.patch
+iommu-parisc-make-the-iommus-respect-the-segment-boundary-limits-checkpatch-fixes.patch
+md-fix-deadlock-in-md-raid1-and-md-raid10-when-handling-a-read-error.patch
+md-reduce-cpu-wastage-on-idle-md-array-with-a-write-intent-bitmap.patch
+md-guard-against-possible-bad-array-geometry-in-v1-metadata.patch
+md-clean-up-irregularity-with-raid-autodetect.patch
+md-make-sure-a-reshape-is-started-when-device-switches-to-read-write.patch
+md-lock-access-to-rdev-attributes-properly.patch
+md-dont-attempt-read-balancing-for-raid10-far-layouts.patch
+md-fix-possible-raid1-raid10-deadlock-on-read-error-during-resync.patch
+md-the-md-raid10-resync-thread-could-cause-a-md-raid10-array-deadlock.patch
+hugetlb-correct-page-count-for-surplus-huge-pages.patch
+hugetlb-close-a-difficult-to-trigger-reservation-race.patch
+hugetlb-fix-pool-shrinking-while-in-restricted-cpuset.patch
+ext3-fix-mount-option-parsing.patch
+input-add-i2c-to-config-since-the-driver-makes-several-i2c-calls.patch
+kprobes-fix-a-null-pointer-bug-in-register_kretprobe.patch

2.6.25 things which I'll be merging

+pm-do-not-acquire-device-semaphores-upfront-during-suspend.patch
+pm-do-not-acquire-device-semaphores-upfront-during-suspend-fix.patch
+x86-cast-cmpxchg-and-cmpxchg_local-result-for-386-and-486.patch
+x86-fix-clearcopy_user_page-declarations-in-pageh.patch
+x86-visws-fix-printk-format-warnings.patch
+mpt-fusion-dont-oops-if-numphys==0.patch
+bluetooth-hci_core-defer-hci_unregister_sysfs.patch
+e100-do-suspend-shutdown-like-e1000.patch
+dm-raid1-bitops-bug.patch
+iova-lockdep-false-alarm-fix.patch
+bluetooth-conwise-technology-based-adapters-with-buggy-sco-support-bugzilla-9027.patch
+fix-typo-in-tick-broadcastc.patch
+i8042-use-sgi_has_i8042-to-select-sgi-i8042-handlinig.patch
+de2104x-remove-bug_on-when-changing-media-type.patch
+time-prevent-the-loop-in-timespec_add_ns-from-being-optimised-away.patch
+acpi-ec-fix-regression.patch
+drivers-acpi-asus_acpic-correct-use-of-and.patch
+drivers-media-video-em28xx-correct-use-of-and.patch
+drivers-media-video-em28xx-correct-use-of-and-fix.patch
+drivers-net-wireless-iwlwifi-iwl-4965c-correct-use-of-and.patch
+time-dont-touch-an-offlined-cpus-ts-tick_stopped-in-tick_cancel_sched_timer.patch
+scsi-arcmsr-update-driver-version.patch
+acpi-fix-overflow.patch
+the-kernel-gets-no-ip-from-some-dhcp-servers.patch
+fixed_phy-must-depend-on-phylib=y.patch
+ntfs-fix-nommu-build.patch
+2625-rc2-mm1-warning-at-arch-x86-mm-ioremapc129.patch
+slub-fix-possible-null-pointer-dereference.patch
+slub-fix-possible-null-pointer-dereference-fix.patch
+rxrpc-fix-rxrpc_recvmsgs-returning-of-msg_name.patch

Things which I thik are for 2.6.25 and which others should be merging.

+mm-remove-nopage.patch
+make-swap_pte_to_pagemap_entry-static.patch
+mm-use-zonelists-instead-of-zones-when-direct-reclaiming-pages.patch
+mm-introduce-node_zonelist-for-accessing-the-zonelist-for-a-gfp-mask.patch
+mm-remember-what-the-preferred-zone-is-for-zone_statistics.patch
+mm-use-two-zonelist-that-are-filtered-by-gfp-mask.patch
+mm-have-zonelist-contains-structs-with-both-a-zone-pointer-and-zone_idx.patch
+mm-filter-based-on-a-nodemask-as-well-as-a-gfp_mask.patch
+use-page_cache_xxx-functions-in-mm-filemapc.patch
+use-page_cache_xxx-in-mm-page-writebackc.patch
+use-page_cache_xxx-in-mm-truncatec.patch
+use-page_cache_xxx-in-mm-rmapc.patch
+use-page_cache_xxx-in-mm-filemap_xipc.patch
+use-page_cache_xxx-in-mm-migratec.patch
+use-page_cache_xxx-in-fs-libfsc.patch
+use-page_cache_xxx-in-fs-sync.patch
+use-page_cache_xxx-in-fs-bufferc.patch
+use-page_cache_xxx-in-mm-mpagec.patch
+use-page_cache_xxx-in-mm-fadvisec.patch
+mm-try-both-endianess-when-checking-for-endianess.patch
+hugetlb-decrease-hugetlb_lock-cycling-in-gather_surplus_huge_pages.patch
+mm-move-cache_line_size-to-linux-cacheh.patch

Memory management updates

+capabilities-implement-per-process-securebits.patch
+capabilities-implement-per-process-securebits-warning-fix.patch
+smack-fix-integer-as-null-pointer-warning-in-smack_lsmc.patch
+lsm-introduce-inode_getsecid-and-ipc_getsecid-hooks.patch
+lsm-introduce-inode_getsecid-and-ipc_getsecid-hooks-checkpatch-fixes.patch
+selinux-setup-new-inode-ipc-getsecid-hooks.patch
+audit-use-new-lsm-hooks-instead-of-selinux-exports.patch
+netlink-use-generic-lsm-hook.patch
+selinux-remove-redundant-exports.patch
+lsm-audit-introduce-generic-audit-lsm-hooks.patch
+lsm-audit-introduce-generic-audit-lsm-hooks-checkpatch-fixes.patch
+audit-internally-use-the-new-lsm-audit-hooks.patch
+selinux-use-new-audit-hooks-remove-redundant-exports.patch
+selinux-use-new-audit-hooks-remove-redundant-exports-checkpatch-fixes.patch
+audit-final-renamings-and-cleanup.patch
+audit-final-renamings-and-cleanup-checkpatch-fixes.patch
+smack-make-smk_cipso_doi-and-smk_unlbl_ambient.patch

Security updates

+alpha-handle-kcalloc-failure.patch
+alpha-remove-remaining-__function__-occurences.patch

alpha updates

+m68k-replace-remaining-__function__-occurences.patch

m68k update

+crisv10-prepare-for-bkl-push-down.patch

cris..

+uml-replace-remaining-__function__-occurences.patch

uml

+cpu-fix-section-mismatch-warnings-in-hotcpu_register.patch
+cpu-fix-section-mismatch-warning-in-unregister_cpu_notifier.patch
+cpu-fix-section-mismatch-warnings-in-cpu_down.patch
+cpu-fix-section-mismatch-warning-in-reference-to-register_cpu_notifier.patch
+tpm-fix-section-mismatch-warning.patch
+fs-ramfs-extern-cleanup.patch
+make-udf_error-static.patch
+fs-hfsplus-proper-externs.patch
+fs-freevxfs-proper-externs.patch
+make-__put_super-static.patch
+make-vfs_ioctl-static.patch
+fs-fs-writeback-make-2-functions-static.patch
+fs-drop_cachesc-make-2-functions-static.patch
+fs-aioc-make-3-functions-static.patch
+let-log_buf_shift-default-to-17.patch
+fs-timerfdc-should-include-linux-syscallsh.patch
+remove-generic_commit_write.patch
+make-fs-bufferccont_expand_zero-static.patch
+make-binfmt_flat-a-bool.patch
+remove-mca_is_adapter_used.patch
+autofs4-fix-sparse-warning-in-rootc.patch
+ipwireless-remove-dead-code.patch
+fs-remove-unused-fops-from-struct-char_device_struct.patch
+affs-handle-match_strdup-failure.patch
+hfs-handle-match_strdup-failure.patch
+hfsplus-handle-match_strdup-failure.patch
+lib-inflatec-handle-failed-malloc.patch
+simplify-initcall_debug-output.patch
+iomap-fix-64-bits-resources-on-32-bits.patch
+fs-affs-filec-use-bug_on.patch
+proper-__do_softirq-prototype.patch
+misc-phantom-add-compat-ioctl.patch
+misc-phantom-add-compat-ioctl-checkpatch-fixes.patch
+misc-phantom-fix-poll.patch
+misc-phantom-consistent-whitespace.patch
+remove-the-macro-get_personality.patch
+exec-remove-argv_len-from-struct-linux_binprm.patch
+proper-extern-for-late_time_init.patch

misc

+fs-inodec-use-hlist_for_each_entry.patch
+fs-inodec-use-hlist_for_each_entry-checkpatch-fixes.patch

VFS cleanup

+add-rcu_assign_index-if-ever-needed.patch
+add-rcu_assign_index-if-ever-needed-fix.patch
+rcu-split-listh-and-move-rcu-protected-lists-into-rculisth.patch
+rculisth-use-the-rcu-api.patch

RCU updates

-inflate-refactor-inflate-malloc-code.patch
-inflate-refactor-inflate-malloc-code-checkpatch-fixes.patch

Dropped (I think)

+serial-silence-section-mismatch-warnings-in-8250_pci.patch
+serial-remove-double-initializer.patch
+char-make-functions-static-in-synclinkmpc.patch
+fix-tty-speed-handling-on-8250.patch
+uart_get_baud_rate-stop-mangling-termios.patch

Serial updates

+spi-pxa2xx_spi-sparse-fixes.patch
+documentation-move-spidev_fdx-example-to-its-own-source-file.patch

SPI updates

+vt-notifier-extension-for-accessibility.patch
+vt-notifier-extension-for-accessibility-checkpatch-fixes.patch

VT updates

+kprobes-prevent-probing-of-preempt_schedule.patch
+kprobes-prevent-probing-of-preempt_schedule-fix.patch
+kprobes-prevent-probing-of-preempt_schedule-checkpatch-fixes.patch

kprobes updates

+capi-fix-sparse-warnings-using-integer-as-null-pointer.patch
+avm-fix-sparse-warning-using-integer-as-null-pointer.patch
+eicon-fix-sparse-integer-as-null-pointer-warnings.patch

ISDM updates

+i2o-remove-static-inline-forward-declarations.patch

i2o cleanup

+xen-make-blkif_getgeo-static.patch

xen clenaup

+remove-ecryptfs_header_cache_0.patch

ecryptfs cleanup

+rtc-silence-section-mismatch-warning-in-rtc-test.patch
+make-ds1511_rtc_readset_time-static.patch

RTC updates

+fbdev-use-div_round_up-or-roundup.patch
+pm2fb-correct-error-values-returned-from-probe-function.patch
+fbcon-replace-mono_col-macro-with-static-inline.patch
+fbcon-replace-mono_col-macro-with-static-inline-fix.patch
+gxfb-replace-fbsize-config-option-with-a-kernel-argument.patch
+gxfb-set-the-right-registers-to-tweak-the-sync-polarity.patch
+gxfb-dont-enable-the-crt-dacs-when-we-are-in-flatpanel-mode.patch
+gxfb-use-pci_device-for-gxfbs-pci-device-table.patch
+lxfb-extend-pll-table-to-support-dotclocks-below-25-mhz.patch
+fbdev-defio-and-metronomefb-v4.patch
+arkfb-add-option-mode_option.patch
+s3fb-add-option-mode_option.patch
+fbdev-add-removed-option-mode-to-keep-compatibility.patch

fbdev updates

+md-fix-integer-as-null-pointer-warnings-in-mdc.patch

md update

+pnp-skip-dev-protocol-null-checks.patch
+pnp-simplify-quirk-debug-output.patch

pnp updates

+ext2-improve-ext2_readdir-return-value.patch
+ext2-use-ext2_group_first_block_no.patch
+ext2-use-ext2_fsblk_t-type.patch
+use-page_cache_xxx-in-ext2.patch
+use-page_cache_xxx-in-ext2-fix.patch
+fs-ext2-use-bug_on.patch

ext2 updates

+make-ext3_xattr_list-static.patch
+ext3-use-ext3_group_first_block_no.patch
+ext3-add-missing-ext3_journal_stop.patch
+ext3-use-ext3_get_group_desc.patch
+ext3-check-ext3_journal_get_write_access-errors.patch
+use-page_cache_xxx-in-fs-ext3.patch
+fs-ext3-use-bug_on.patch
+jbd-fix-the-way-the-b_modified-flag-is-cleared.patch
+jbd-fix-possible-journal-overflow-issues.patch

ext3 updates

+udf-fix-sparse-warning-in-nameic.patch
+udf-fix-anchor-point-detection.patch

UDF updates

+use-page_cache_xxx-in-fs-reiserfs.patch
+reiserfs-fix-sparse-warnings-in-fix_nodec.patch
+reiserfs-fix-sparse-warnings-in-do_balanc.patch
+reiserfs-fix-sparse-warning-in-nameic.patch
+reiserfs-fix-sparse-warnings-in-lbalancec.patch
+reiserfs-fix-sparse-warning-in-journalc.patch
+reiserfs-fix-more-sparse-warnings-in-do_balanc.patch

reiserfs updates

+fat_valid_media-remove-pointless-test.patch
+fat-detect-media-without-partition-table-correctly.patch

FATFS updates

+make-cgroup_enable_task_cg_lists-static.patch
+cgroup-fix-sparse-warning-of-shadow-symbol-in-cgroupc.patch
+cgroups-kernel-ns_cgroupc-should-include-linux-nsproxyh.patch
+cgroup-api-files-rename-read-write_uint-methods-to-read_write_u64.patch
+cgroup-api-files-add-res_counter_read_u64.patch
+cgroup-api-files-use-read_u64-in-memory-controller.patch
+cgroup-api-files-strip-all-trailing-whitespace-in-cgroup_write_u64.patch
+cgroup-api-files-update-cpusets-to-use-cgroup-structured-file-api.patch
+cgroup-api-files-update-cpusets-to-use-cgroup-structured-file-api-fix.patch
+cgroup-api-files-add-cgroup-map-data-type.patch
+cgroup-api-files-use-cgroup-map-for-memcontrol-stats-file.patch
+cgroup-api-files-drop-mem_cgroup_force_empty.patch
+cgroup-api-files-move-releasable-to-cgroup_debug-subsystem.patch
+cgroup-api-files-make-cgroup_debug-default-to-off.patch

Control groups updates

+kernel-cpusetc-make-3-functions-static.patch

cpusets cleanup

+lock_task_sighand-add-rcu-lock-unlock.patch
+k_getrusage-dont-take-rcu_read_lock.patch
+do_task_stat-dont-take-rcu_read_lock.patch
+signals-consolidate-checks-for-whether-or-not-to-ignore-a-signal.patch
+signals-clean-dequeue_signal-from-excess-checks-and-assignments.patch
+#signals-consolidate-send_sigqueue-and-send_group_sigqueue.patch: Roland probs?
+signals-consolidate-send_sigqueue-and-send_group_sigqueue.patch
+signals-cleanup-security_task_kill-usage-implementation.patch

signal management updates

+introduce-kill_orphaned_pgrp-helper.patch
+will_become_orphaned_pgrp-partially-fix-insufficient-exit_state-check.patch
+exit_notify-fix-kill_orphaned_pgrp-usage-with-mt-exit.patch

pgrp handling updates

+ptrace-introduce-task_detached-helper.patch
+ptrace-introduce-ptrace_reparented-helper.patch
+reparent_thread-use-same_thread_group.patch
+document-de_thread-with-exit_notify-connection.patch

ptrace updates

+workqueues-shrink-cpu_populated_map-when-cpu-dies.patch
+workqueues-shrink-cpu_populated_map-when-cpu-dies-fix.patch
+cleanup_workqueue_thread-remove-the-unneeded-cpu-parameter.patch

workqueue management updates

+simplify-cpu_hotplug_begin-put_online_cpus.patch

CPU hotplug updates

+ext4-mm-ext4_ialloc-flexbg.patch
+ext4-mm-convert_ext4_to_use_unlocked_ioctl_v2.patch
+ext4-mm-ext4_reduce_mballoc_stack_usage_with_noinline.patch
+ext4-mm-ext4-convert-list_for_each_rcu-to_list_for_each_entry_rcu.patch
+ext4-mm-ext4-fdatasync-should-skip-metadata-writeout-when-overwriting.patch
+ext4-mm-ext4_lex_add_cpu_conversion.patch
+ext4-mm-ext4-convert-byte-order-of-constant-instead-of-variable.patch
+ext4-mm-jbd2-sparse-warnings-in-revokec-journalc.patch
+ext4-mm-ext4-use-group-first-block-no.patch
+ext4-mm-ext4-use-ext4_get_group_desc.patch
+ext4-mm-ext4-check-ext4_journal_get_write_access-errors.patch
+ext4-mm-ext4-remove-extra_ext4_new_blocks_old_define-from-mballoc-c.patch
+ext4-mm-ext4_page_mkwrite.patch

EXT4 tree updates

+make-ext4_xattr_list-static.patch
+use-page_cache_xxx-in-fs-ext4.patch
+fs-ext4-use-bug_on.patch
+jbd2-fix-the-way-the-b_modified-flag-is-cleared.patch
+jbd2-fix-possible-journal-overflow-issues.patch
+ext4-fix-mount-option-parsing.patch

ext4 things

+ext4-is-broken.patch

Disable ext4: it uses old interfaces which aren't in -mm any more.

+ipmi-remove-unused-target-and-action-in-makefile.patch

IPMI cleanup

+amiserial-prepare-for-locking-relaxation-in-caller.patch
+cyclades-prepare-for-relaxed-locking-in-callers.patch
+epca-lock_kernel-push-down.patch
+esp-lock_kernel-push-down.patch
+isicom-prepare-for-lock_kernel-push-down.patch
+isicom-istallion-prepare-for-lock_kernel-pushdown.patch
+mxser-prepare-for-bkl-pushdown.patch
+nozomi-prepare-for-bkl-pushdown.patch
+riscom8-prepare-for-bkl-pushdown.patch
+rocket-prepare-for-bkl-pushdown.patch
+serial167-prepare-to-push-bkl-down-into-drivers.patch
+specialix-prepare-for-bkl-pushdown.patch
+stallion-prepare-for-bkl-push-down.patch
+sx-prepare-for-bkl-pushdown.patch
+synclink-series-prepare-for-bkl-pushdown.patch
+viocons-bkl-locking.patch
+vt_ioctl-prepare-for-bkl-push-down.patch
+isdn_tty-prepare-for-bkl-push-down.patch
+68360serial-note-that-there-isnt-any-info-mcr-locking.patch
+serial_core-prepare-for-bkl-push-down.patch
+redo-locking-of-tty-pgrp.patch
+resume-tty-on-susp-and-fix-crnl-order-in-n_tty-line-discipline.patch
+tty_io-fix-remaining-pid-struct-locking.patch

TTY updates

+char-moxa-remove-static-isa-support.patch
+char-moxa-cleanup-module-param-passed-isa-init.patch
+char-moxa-pci-io-space-fixup.patch
+char-moxa-fix-tiocg-ssoftcar-param.patch
+char-moxa-add-firmware-loading.patch
+char-moxa-merge-c2xx-and-c320-firmware-loading.patch
+char-moxa-remove-port-port.patch
+char-moxa-remove-unused-port-entries.patch
+char-moxa-centralize-board-readiness.patch
+char-moxa-timer-cleanup.patch
+char-moxa-ioctl-cleanup.patch
+char-moxa-merge-2-poll-functions.patch
+char-moxa-cleanup-rx-tx.patch
+char-moxa-serialise-timer.patch
+char-moxa-rework-open-close.patch
+char-moxa-little-cleanup.patch
+char-moxa-remove-useless-tty-functions.patch
+char-moxa-introduce-moxa_is_320-macro.patch
+char-moxa-notify-about-board-readiness.patch
+char-moxa-update-credits.patch
+char-moxa-add-firmware-loading-fix.patch
+char-fix-sparse-shadowed-variable-warnings-in-espc.patch
+char-espc-fix-possible-double-unlock.patch
+char-rocketc-fix-sparse-variable-shadowing-and-int-as-null-pointer.patch
+cycladesc-fix-sparse-shadowed-variable-warnings.patch
+epcac-static-functions-and-integer-as-null-pointer-fixes.patch
+epcac-static-functions-and-integer-as-null-pointer-fixes-checkpatch-fixes.patch

Char driver updates

+keys-add-keyctl-function-to-get-a-security-label-fix.patch

Fix keys-add-keyctl-function-to-get-a-security-label.patch

+keys-switch-to-proc_create.patch

key management fix

+procfs-task-exe-symlink.patch
+procfs-task-exe-symlink-fix.patch
+procfs-task-exe-symlink-fix-2.patch
+proc-switch-to-proc_create.patch

procfs updates

+include-linux-sysctlh-remove-empty-else.patch
+sysctl-merge-equal-proc_sys_read-and-proc_sys_write.patch
+sysctl-clean-from-unneeded-extern-and-forward-declarations.patch
+sysctl-add-the-permissions-callback-on-the-ctl_table_root.patch

sysctl updates

+free_pidmap-turn-it-into-free_pidmapstruct-upid.patch
+use-find_task_by_vpid-in-taskstats.patch
+deprecate-find_task_by_pid.patch
+deprecate-find_task_by_pid-warning-fix.patch

PID management updates

+edd-add-default-mode-config_edd_off=n-override-with-edd=onoff.patch
+edd-add-default-mode-config_edd_off=n-override-with-edd=onoff-fix.patch

EDD updates

+generalize-asm-generic-ioctlh-to-allow-overriding-values.patch

cleanup

+atmel_tc-library.patch
+atmel_tc-clocksource-clockevent-code.patch

atmel_tc updates

+remove-aoedev_isbusy.patch

AOE update

+make-marker_debug-static.patch

markers cleanup

+modules-warn-about-suspicious-return-values-from-modules-init-hook.patch

modules debugging aid

+pidns-make-pid-level-and-pid_ns-level-unsigned.patch

namespaces update

+mm-bdi-export-bdi-attributes-in-sysfs-ia64-fix.patch

Fix mm-bdi-export-bdi-attributes-in-sysfs.patch even more

+basic-braille-screen-reader-support.patch
+basic-braille-screen-reader-support-fixes.patch
+basic-braille-screen-reader-support-ppc-fix.patch
+basic-braille-screen-reader-support-doc.patch

Support braille readers during early boot

+mm-remove-remaining-__function__-occurances.patch
+block-remove-remaining-__function__-occurances.patch
+kernel-replace-remaining-__function__-occurances.patch
+lib-replace-remaining-__function__-occurances.patch

cleanups

+reiser4-code-cleanups.patch

reiser4 update

-profile-likely-unlikely-macros-fix.patch

Folded into profile-likely-unlikely-macros.patch

+put_pid-make-sure-we-dont-free-the-live-pid.patch

put_pid() debugging



2993 commits in 1101 patch files

All patches:

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/patch-list


2008-03-04 12:00:26

by Cornelia Huck

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

On Tue, 4 Mar 2008 01:19:28 -0800,
Andrew Morton <[email protected]> wrote:

> +driver-core-fix-cleanup-when-failing-device_add.patch

This should go into 2.6.25, as it fixes a panic (see
http://marc.info/?l=linux-kernel&m=120411157302447&w=2,
http://marc.info/?l=linux-kernel&m=120412001416810&w=2).

2008-03-04 13:12:38

by Kamalesh Babulal

[permalink] [raw]
Subject: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

Hi Andrew,

The 2.6.25-rc3-mm1 kernel panics while bootup on power box. The machine booted up
without the panic on the third attempt, but badness call trace were seen while running
tests

1) The kernel panic on first attempt

Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0xc00000000000cb2c
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=128 NUMA pSeries
Modules linked in:
NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000000226
REGS: c00000000068f360 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
MSR: 8000000000001032 <ME,IR,DR> CR: 28000024 XER: 20000001
DAR: 0000000000000000, DSISR: 0000000040000000
TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
GPR00: c00000000068f5e0 c00000000068f5e0 c00000000068e690 0000000000000000
GPR04: 00000000000035e0 000000000087264e c000000008011280 c000000000594000
GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000008000 0000000000000000
GPR20: 0000000000000000 0000000000000000 000000000000007f 0000000000018000
GPR24: 0000000000000001 0000000000000080 0000000000000018 0000000000000000
GPR28: 0000000000000c00 c000000000588988 c000000000639be8 c000000008001c00
NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
Call Trace:
[c00000000068f5e0] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
[c00000000068f680] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
--- Exception: 501 at .memset+0x70/0xfc
LR = .__alloc_bootmem_core+0x39c/0x3dc
[c00000000068f970] [c00000000068fa10] init_thread_union+0x3a10/0x4000 (unreliable)
[c00000000068fa30] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
[c00000000068fad0] [c0000000003c477c] .zone_wait_table_init+0x74/0x108
[c00000000068fb60] [c0000000003d9058] .init_currently_empty_zone+0x40/0x11c
[c00000000068fc00] [c0000000003d94c8] .free_area_init_node+0x394/0x3fc
[c00000000068fcf0] [c00000000057314c] .free_area_init_nodes+0x2d8/0x364
[c00000000068fd90] [c00000000056682c] .paging_init+0x40/0x58
[c00000000068fe40] [c00000000055ba34] .setup_arch+0x20c/0x240
[c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
[c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
Instruction dump:
7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008

2) The kernel panic on second attempt

Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0xc00000000000cb2c
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=128 NUMA pSeries
Modules linked in:
NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000014a99
REGS: c00000000068f410 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
MSR: 8000000000001032 <ME,IR,DR> CR: 28000044 XER: 00000001
DAR: 0000000000000000, DSISR: 0000000040000000
TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
GPR00: c00000000068f690 c00000000068f690 c00000000068e690 0000000000000000
GPR04: 0000000000003690 0000000000537672 c000000001ad59c0 c000000000594000
GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000230000 0000000000000000 0000000000ffffff 0000000001000000
GPR24: 0000000000001000 0000000001000000 0000000000001000 0000000000000000
GPR28: 0000000000000000 c0000000005889c8 c000000000639be8 c000000001000000
NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
Call Trace:
[c00000000068f690] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
[c00000000068f730] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
--- Exception: 501 at .memset+0x80/0xfc
LR = .__alloc_bootmem_core+0x39c/0x3dc
[c00000000068fa20] [c000000000641a78] sysctl_pernet_ops+0x108e0/0x1d6e0 (unreliable)
[c00000000068fae0] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
[c00000000068fb80] [c0000000003c48dc] .__earlyonly_bootmem_alloc+0x24/0x3c
[c00000000068fc00] [c0000000003d885c] .vmemmap_populate+0x7c/0xf4
[c00000000068fc90] [c0000000003d9b6c] .sparse_mem_map_populate+0x38/0x64
[c00000000068fd10] [c000000000573ec4] .sparse_early_mem_map_alloc+0x54/0x98
[c00000000068fda0] [c000000000573f70] .sparse_init+0x68/0x148
[c00000000068fe40] [c00000000055b9ec] .setup_arch+0x1c4/0x240
[c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
[c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
Instruction dump:
7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008

3) Third attempt kernel booted up but had the following call trace 264 times while running
test

Badness at include/linux/gfp.h:110
NIP: c0000000000b4ff0 LR: c0000000000b4fa0 CTR: c00000000019cdb4
REGS: c000000009edf250 TRAP: 0700 Not tainted (2.6.25-rc3-mm1-autotest)
MSR: 8000000000029032 <EE,ME,IR,DR> CR: 22024042 XER: 20000003
TASK = c000000009062140[548] 'kjournald' THREAD: c000000009edc000 CPU: 0
NIP [c0000000000b4ff0] .get_page_from_freelist+0x29c/0x898
LR [c0000000000b4fa0] .get_page_from_freelist+0x24c/0x898
Call Trace:
[c000000009edf5f0] [c0000000000b56e4] .__alloc_pages_internal+0xf8/0x470
[c000000009edf6e0] [c0000000000e0458] .kmem_getpages+0x8c/0x194
[c000000009edf770] [c0000000000e1050] .fallback_alloc+0x194/0x254
[c000000009edf820] [c0000000000e14b0] .kmem_cache_alloc+0xd8/0x144
[c000000009edf8c0] [c0000000001fe0f8] .radix_tree_preload+0x50/0xd4
[c000000009edf960] [c0000000000ad048] .add_to_page_cache+0x38/0x12c
[c000000009edfa00] [c0000000000ad158] .add_to_page_cache_lru+0x1c/0x4c
[c000000009edfa90] [c0000000000add58] .find_or_create_page+0x60/0xa8
[c000000009edfb30] [c00000000011e478] .__getblk+0x140/0x310
[c000000009edfc00] [c0000000001b78c4] .journal_get_descriptor_buffer+0x44/0xd8
[c000000009edfca0] [c0000000001b236c] .journal_commit_transaction+0x948/0x1590
[c000000009edfe00] [c0000000001b585c] .kjournald+0xf4/0x2ac
[c000000009edff00] [c00000000007ff4c] .kthread+0x84/0xd0
[c000000009edff90] [c000000000028900] .kernel_thread+0x4c/0x68
Instruction dump:
7dc57378 48009575 60000000 2fa30000 419e0490 56c902d8 3c000018 7dd907b4
7ad2c7e2 7f890000 7c000026 5400fffe <0b000000> e93e8128 3b000000 80090000
--
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.

2008-03-04 14:42:18

by Michael Neuling

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

In message <[email protected]> you wrote:
> Hi Andrew,
>
> The 2.6.25-rc3-mm1 kernel panics while bootup on power box. The machine boote
d up
> without the panic on the third attempt, but badness call trace were seen whil
e running
> tests
>
> 1) The kernel panic on first attempt
>
> Unable to handle kernel paging request for data at address 0x00000000
> Faulting instruction address: 0xc00000000000cb2c
> Oops: Kernel access of bad area, sig: 11 [#1]
> SMP NR_CPUS=128 NUMA pSeries
> Modules linked in:
> NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000000226
> REGS: c00000000068f360 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000001032 <ME,IR,DR> CR: 28000024 XER: 20000001
> DAR: 0000000000000000, DSISR: 0000000040000000
> TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
> GPR00: c00000000068f5e0 c00000000068f5e0 c00000000068e690 0000000000000000
> GPR04: 00000000000035e0 000000000087264e c000000008011280 c000000000594000
> GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
> GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
> GPR16: 0000000000000000 0000000000000000 0000000000008000 0000000000000000
> GPR20: 0000000000000000 0000000000000000 000000000000007f 0000000000018000
> GPR24: 0000000000000001 0000000000000080 0000000000000018 0000000000000000
> GPR28: 0000000000000c00 c000000000588988 c000000000639be8 c000000008001c00
> NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
> LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
> Call Trace:
> [c00000000068f5e0] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
> [c00000000068f680] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
> --- Exception: 501 at .memset+0x70/0xfc
> LR = .__alloc_bootmem_core+0x39c/0x3dc
> [c00000000068f970] [c00000000068fa10] init_thread_union+0x3a10/0x4000 (unreli
able)
> [c00000000068fa30] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
> [c00000000068fad0] [c0000000003c477c] .zone_wait_table_init+0x74/0x108
> [c00000000068fb60] [c0000000003d9058] .init_currently_empty_zone+0x40/0x11c
> [c00000000068fc00] [c0000000003d94c8] .free_area_init_node+0x394/0x3fc
> [c00000000068fcf0] [c00000000057314c] .free_area_init_nodes+0x2d8/0x364
> [c00000000068fd90] [c00000000056682c] .paging_init+0x40/0x58
> [c00000000068fe40] [c00000000055ba34] .setup_arch+0x20c/0x240
> [c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
> [c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
> Instruction dump:
> 7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
> 480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008

I'm not getting a crash but I am getting this:

start_kernel(): bug: interrupts were enabled *very* early, fixing it

...and you're getting a null pointer access here (in do_IRQ):

irq = ppc_md.get_irq();

Are we somehow enabling interrupts before we've setup ppc_md.get_irq?

Mikey

>
> 2) The kernel panic on second attempt
>
> Unable to handle kernel paging request for data at address 0x00000000
> Faulting instruction address: 0xc00000000000cb2c
> Oops: Kernel access of bad area, sig: 11 [#1]
> SMP NR_CPUS=128 NUMA pSeries
> Modules linked in:
> NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000014a99
> REGS: c00000000068f410 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000001032 <ME,IR,DR> CR: 28000044 XER: 00000001
> DAR: 0000000000000000, DSISR: 0000000040000000
> TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
> GPR00: c00000000068f690 c00000000068f690 c00000000068e690 0000000000000000
> GPR04: 0000000000003690 0000000000537672 c000000001ad59c0 c000000000594000
> GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
> GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
> GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
> GPR20: 0000000000230000 0000000000000000 0000000000ffffff 0000000001000000
> GPR24: 0000000000001000 0000000001000000 0000000000001000 0000000000000000
> GPR28: 0000000000000000 c0000000005889c8 c000000000639be8 c000000001000000
> NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
> LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
> Call Trace:
> [c00000000068f690] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
> [c00000000068f730] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
> --- Exception: 501 at .memset+0x80/0xfc
> LR = .__alloc_bootmem_core+0x39c/0x3dc
> [c00000000068fa20] [c000000000641a78] sysctl_pernet_ops+0x108e0/0x1d6e0 (unre
liable)
> [c00000000068fae0] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
> [c00000000068fb80] [c0000000003c48dc] .__earlyonly_bootmem_alloc+0x24/0x3c
> [c00000000068fc00] [c0000000003d885c] .vmemmap_populate+0x7c/0xf4
> [c00000000068fc90] [c0000000003d9b6c] .sparse_mem_map_populate+0x38/0x64
> [c00000000068fd10] [c000000000573ec4] .sparse_early_mem_map_alloc+0x54/0x98
> [c00000000068fda0] [c000000000573f70] .sparse_init+0x68/0x148
> [c00000000068fe40] [c00000000055b9ec] .setup_arch+0x1c4/0x240
> [c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
> [c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
> Instruction dump:
> 7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
> 480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008
>
> 3) Third attempt kernel booted up but had the following call trace 264 times
while running
> test
>
> Badness at include/linux/gfp.h:110
> NIP: c0000000000b4ff0 LR: c0000000000b4fa0 CTR: c00000000019cdb4
> REGS: c000000009edf250 TRAP: 0700 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000029032 <EE,ME,IR,DR> CR: 22024042 XER: 20000003
> TASK = c000000009062140[548] 'kjournald' THREAD: c000000009edc000 CPU: 0
> NIP [c0000000000b4ff0] .get_page_from_freelist+0x29c/0x898
> LR [c0000000000b4fa0] .get_page_from_freelist+0x24c/0x898
> Call Trace:
> [c000000009edf5f0] [c0000000000b56e4] .__alloc_pages_internal+0xf8/0x470
> [c000000009edf6e0] [c0000000000e0458] .kmem_getpages+0x8c/0x194
> [c000000009edf770] [c0000000000e1050] .fallback_alloc+0x194/0x254
> [c000000009edf820] [c0000000000e14b0] .kmem_cache_alloc+0xd8/0x144
> [c000000009edf8c0] [c0000000001fe0f8] .radix_tree_preload+0x50/0xd4
> [c000000009edf960] [c0000000000ad048] .add_to_page_cache+0x38/0x12c
> [c000000009edfa00] [c0000000000ad158] .add_to_page_cache_lru+0x1c/0x4c
> [c000000009edfa90] [c0000000000add58] .find_or_create_page+0x60/0xa8
> [c000000009edfb30] [c00000000011e478] .__getblk+0x140/0x310
> [c000000009edfc00] [c0000000001b78c4] .journal_get_descriptor_buffer+0x44/0xd
8
> [c000000009edfca0] [c0000000001b236c] .journal_commit_transaction+0x948/0x159
0
> [c000000009edfe00] [c0000000001b585c] .kjournald+0xf4/0x2ac
> [c000000009edff00] [c00000000007ff4c] .kthread+0x84/0xd0
> [c000000009edff90] [c000000000028900] .kernel_thread+0x4c/0x68
> Instruction dump:
> 7dc57378 48009575 60000000 2fa30000 419e0490 56c902d8 3c000018 7dd907b4
> 7ad2c7e2 7f890000 7c000026 5400fffe <0b000000> e93e8128 3b000000 80090000
> --
> Thanks & Regards,
> Kamalesh Babulal,
> Linux Technology Center,
> IBM, ISTL.
> _______________________________________________
> Linuxppc-dev mailing list
> [email protected]
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
>

2008-03-04 16:40:19

by Randy Dunlap

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (IDE)

On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:

>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/

i386 allmodconfig gives me this:

ERROR: "probe_4drives" [drivers/ide/ide-core.ko] undefined!

---
~Randy

2008-03-04 16:48:26

by Randy Dunlap

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (CCISS)

On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:

>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/

With
CONFIG_BLK_CPQ_DA=m
CONFIG_BLK_CPQ_CISS_DA=m
# CONFIG_CISS_SCSI_TAPE is not set

I'm getting
In file included from drivers/block/cciss.c:230:
drivers/block/cciss_scsi.c:1498:38: error: macro parameters must be comma-separated
drivers/block/cciss.c: In function 'cciss_seq_show_header':
drivers/block/cciss.c:271: error: implicit declaration of function 'cciss_seq_tape_report'
drivers/block/cciss.c: In function 'cciss_proc_write':
drivers/block/cciss.c:392: error: implicit declaration of function 'cciss_engage_scsi'
make[2]: *** [drivers/block/cciss.o] Error 1
make[1]: *** [drivers/block] Error 2
make[1]: *** Waiting for unfinished jobs....

---
~Randy

2008-03-04 17:03:42

by Mike Miller

[permalink] [raw]
Subject: RE: 2.6.25-rc3-mm1 (CCISS)

Randy wrote:
>
> On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
>
> >
> >
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-r
> > c3/2.6.25-rc3-mm1/
>
> With
> CONFIG_BLK_CPQ_DA=m
> CONFIG_BLK_CPQ_CISS_DA=m
> # CONFIG_CISS_SCSI_TAPE is not set
>
> I'm getting
> In file included from drivers/block/cciss.c:230:
> drivers/block/cciss_scsi.c:1498:38: error: macro parameters
> must be comma-separated
> drivers/block/cciss.c: In function 'cciss_seq_show_header':
> drivers/block/cciss.c:271: error: implicit declaration of
> function 'cciss_seq_tape_report'
> drivers/block/cciss.c: In function 'cciss_proc_write':
> drivers/block/cciss.c:392: error: implicit declaration of
> function 'cciss_engage_scsi'
> make[2]: *** [drivers/block/cciss.o] Error 1
> make[1]: *** [drivers/block] Error 2
> make[1]: *** Waiting for unfinished jobs....
>
> ---
Randy,
It looks like you have the original broken patch. I resubmitted and I think Jens picked up the fixed patch but I don't know where it is... :(

-- mikem

2008-03-04 17:16:38

by Randy Dunlap

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (CCISS)

Miller, Mike (OS Dev) wrote:
> Randy wrote:
>> On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
>>
>>>
>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-r
>>> c3/2.6.25-rc3-mm1/
>> With
>> CONFIG_BLK_CPQ_DA=m
>> CONFIG_BLK_CPQ_CISS_DA=m
>> # CONFIG_CISS_SCSI_TAPE is not set
>>
>> I'm getting
>> In file included from drivers/block/cciss.c:230:
>> drivers/block/cciss_scsi.c:1498:38: error: macro parameters
>> must be comma-separated
>> drivers/block/cciss.c: In function 'cciss_seq_show_header':
>> drivers/block/cciss.c:271: error: implicit declaration of
>> function 'cciss_seq_tape_report'
>> drivers/block/cciss.c: In function 'cciss_proc_write':
>> drivers/block/cciss.c:392: error: implicit declaration of
>> function 'cciss_engage_scsi'
>> make[2]: *** [drivers/block/cciss.o] Error 1
>> make[1]: *** [drivers/block] Error 2
>> make[1]: *** Waiting for unfinished jobs....
>>
>> ---
> Randy,
> It looks like you have the original broken patch. I resubmitted and I think Jens picked up the fixed patch but I don't know where it is... :(

s/you/latest -mm/

I thought that this had been fixed, but I can't find it either... :(

Jens, did you queue a patch for this?

--
~Randy

2008-03-04 18:15:22

by Jens Axboe

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (CCISS)

On Tue, Mar 04 2008, Randy Dunlap wrote:
> Miller, Mike (OS Dev) wrote:
> >Randy wrote:
> >>On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
> >>
> >>>
> >>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-r
> >>>c3/2.6.25-rc3-mm1/
> >>With
> >>CONFIG_BLK_CPQ_DA=m
> >>CONFIG_BLK_CPQ_CISS_DA=m
> >># CONFIG_CISS_SCSI_TAPE is not set
> >>
> >>I'm getting
> >>In file included from drivers/block/cciss.c:230:
> >>drivers/block/cciss_scsi.c:1498:38: error: macro parameters
> >>must be comma-separated
> >>drivers/block/cciss.c: In function 'cciss_seq_show_header':
> >>drivers/block/cciss.c:271: error: implicit declaration of
> >>function 'cciss_seq_tape_report'
> >>drivers/block/cciss.c: In function 'cciss_proc_write':
> >>drivers/block/cciss.c:392: error: implicit declaration of
> >>function 'cciss_engage_scsi'
> >>make[2]: *** [drivers/block/cciss.o] Error 1
> >>make[1]: *** [drivers/block] Error 2
> >>make[1]: *** Waiting for unfinished jobs....
> >>
> >>---
> >Randy,
> >It looks like you have the original broken patch. I resubmitted and I
> >think Jens picked up the fixed patch but I don't know where it is... :(
>
> s/you/latest -mm/
>
> I thought that this had been fixed, but I can't find it either... :(
>
> Jens, did you queue a patch for this?

I did, here:

http://git.kernel.dk/?p=linux-2.6-block.git;a=commit;h=89b6e743788516491846724d7ef89bcac7ac9c99

--
Jens Axboe

2008-03-04 18:35:59

by Andrew Morton

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

On Tue, 04 Mar 2008 15:40:56 +0100 Michael Neuling <[email protected]> wrote:

> In message <[email protected]> you wrote:
> > Hi Andrew,
> >
> > The 2.6.25-rc3-mm1 kernel panics while bootup on power box. The machine boote
> d up
> > without the panic on the third attempt, but badness call trace were seen whil
> e running
> > tests
> >
> > 1) The kernel panic on first attempt
> >
> > Unable to handle kernel paging request for data at address 0x00000000
> > Faulting instruction address: 0xc00000000000cb2c
> > Oops: Kernel access of bad area, sig: 11 [#1]
> > SMP NR_CPUS=128 NUMA pSeries
> > Modules linked in:
> > NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000000226
> > REGS: c00000000068f360 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
> > MSR: 8000000000001032 <ME,IR,DR> CR: 28000024 XER: 20000001
> > DAR: 0000000000000000, DSISR: 0000000040000000
> > TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
> > GPR00: c00000000068f5e0 c00000000068f5e0 c00000000068e690 0000000000000000
> > GPR04: 00000000000035e0 000000000087264e c000000008011280 c000000000594000
> > GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
> > GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
> > GPR16: 0000000000000000 0000000000000000 0000000000008000 0000000000000000
> > GPR20: 0000000000000000 0000000000000000 000000000000007f 0000000000018000
> > GPR24: 0000000000000001 0000000000000080 0000000000000018 0000000000000000
> > GPR28: 0000000000000c00 c000000000588988 c000000000639be8 c000000008001c00
> > NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
> > LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
> > Call Trace:
> > [c00000000068f5e0] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
> > [c00000000068f680] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
> > --- Exception: 501 at .memset+0x70/0xfc
> > LR = .__alloc_bootmem_core+0x39c/0x3dc
> > [c00000000068f970] [c00000000068fa10] init_thread_union+0x3a10/0x4000 (unreli
> able)
> > [c00000000068fa30] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
> > [c00000000068fad0] [c0000000003c477c] .zone_wait_table_init+0x74/0x108
> > [c00000000068fb60] [c0000000003d9058] .init_currently_empty_zone+0x40/0x11c
> > [c00000000068fc00] [c0000000003d94c8] .free_area_init_node+0x394/0x3fc
> > [c00000000068fcf0] [c00000000057314c] .free_area_init_nodes+0x2d8/0x364
> > [c00000000068fd90] [c00000000056682c] .paging_init+0x40/0x58
> > [c00000000068fe40] [c00000000055ba34] .setup_arch+0x20c/0x240
> > [c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
> > [c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
> > Instruction dump:
> > 7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
> > 480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008
>
> I'm not getting a crash but I am getting this:
>
> start_kernel(): bug: interrupts were enabled *very* early, fixing it
>
> ...and you're getting a null pointer access here (in do_IRQ):
>
> irq = ppc_md.get_irq();
>
> Are we somehow enabling interrupts before we've setup ppc_md.get_irq?
>

Yes, we are - it's the semaphore rewrite which is doing this in
start_kernel(). It's being discussed.

Enabling interrupts too early on powerpc was discovered to be fatal on
powerpc years ago. It looks like that remains the case.

2008-03-04 18:39:24

by Andrew Morton

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

On Tue, 04 Mar 2008 18:42:19 +0530 Kamalesh Babulal <[email protected]> wrote:

> 3) Third attempt kernel booted up but had the following call trace 264 times while running
> test
>
> Badness at include/linux/gfp.h:110
> NIP: c0000000000b4ff0 LR: c0000000000b4fa0 CTR: c00000000019cdb4
> REGS: c000000009edf250 TRAP: 0700 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000029032 <EE,ME,IR,DR> CR: 22024042 XER: 20000003
> TASK = c000000009062140[548] 'kjournald' THREAD: c000000009edc000 CPU: 0
> NIP [c0000000000b4ff0] .get_page_from_freelist+0x29c/0x898
> LR [c0000000000b4fa0] .get_page_from_freelist+0x24c/0x898
> Call Trace:
> [c000000009edf5f0] [c0000000000b56e4] .__alloc_pages_internal+0xf8/0x470
> [c000000009edf6e0] [c0000000000e0458] .kmem_getpages+0x8c/0x194
> [c000000009edf770] [c0000000000e1050] .fallback_alloc+0x194/0x254
> [c000000009edf820] [c0000000000e14b0] .kmem_cache_alloc+0xd8/0x144
> [c000000009edf8c0] [c0000000001fe0f8] .radix_tree_preload+0x50/0xd4
> [c000000009edf960] [c0000000000ad048] .add_to_page_cache+0x38/0x12c
> [c000000009edfa00] [c0000000000ad158] .add_to_page_cache_lru+0x1c/0x4c
> [c000000009edfa90] [c0000000000add58] .find_or_create_page+0x60/0xa8
> [c000000009edfb30] [c00000000011e478] .__getblk+0x140/0x310
> [c000000009edfc00] [c0000000001b78c4] .journal_get_descriptor_buffer+0x44/0xd8
> [c000000009edfca0] [c0000000001b236c] .journal_commit_transaction+0x948/0x1590
> [c000000009edfe00] [c0000000001b585c] .kjournald+0xf4/0x2ac
> [c000000009edff00] [c00000000007ff4c] .kthread+0x84/0xd0
> [c000000009edff90] [c000000000028900] .kernel_thread+0x4c/0x68
> Instruction dump:
> 7dc57378 48009575 60000000 2fa30000 419e0490 56c902d8 3c000018 7dd907b4
> 7ad2c7e2 7f890000 7c000026 5400fffe <0b000000> e93e8128 3b000000 80090000

/* Convert GFP flags to their corresponding migrate type */
static inline int allocflags_to_migratetype(gfp_t gfp_flags)
{
WARN_ON((gfp_flags & GFP_MOVABLE_MASK) == GFP_MOVABLE_MASK);

Mel, Pekka: would you have some head-scratching time for this one please?

2008-03-04 18:47:58

by Pekka Enberg

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

On Tue, 04 Mar 2008 18:42:19 +0530 Kamalesh Babulal
<[email protected]> wrote:
> > 3) Third attempt kernel booted up but had the following call trace 264 times while running
> > test
> >
> > Badness at include/linux/gfp.h:110
> > NIP: c0000000000b4ff0 LR: c0000000000b4fa0 CTR: c00000000019cdb4
> > REGS: c000000009edf250 TRAP: 0700 Not tainted (2.6.25-rc3-mm1-autotest)
> > MSR: 8000000000029032 <EE,ME,IR,DR> CR: 22024042 XER: 20000003
> > TASK = c000000009062140[548] 'kjournald' THREAD: c000000009edc000 CPU: 0
> > NIP [c0000000000b4ff0] .get_page_from_freelist+0x29c/0x898
> > LR [c0000000000b4fa0] .get_page_from_freelist+0x24c/0x898
> > Call Trace:
> > [c000000009edf5f0] [c0000000000b56e4] .__alloc_pages_internal+0xf8/0x470
> > [c000000009edf6e0] [c0000000000e0458] .kmem_getpages+0x8c/0x194
> > [c000000009edf770] [c0000000000e1050] .fallback_alloc+0x194/0x254
> > [c000000009edf820] [c0000000000e14b0] .kmem_cache_alloc+0xd8/0x144
> > [c000000009edf8c0] [c0000000001fe0f8] .radix_tree_preload+0x50/0xd4
> > [c000000009edf960] [c0000000000ad048] .add_to_page_cache+0x38/0x12c
> > [c000000009edfa00] [c0000000000ad158] .add_to_page_cache_lru+0x1c/0x4c
> > [c000000009edfa90] [c0000000000add58] .find_or_create_page+0x60/0xa8
> > [c000000009edfb30] [c00000000011e478] .__getblk+0x140/0x310
> > [c000000009edfc00] [c0000000001b78c4] .journal_get_descriptor_buffer+0x44/0xd8
> > [c000000009edfca0] [c0000000001b236c] .journal_commit_transaction+0x948/0x1590
> > [c000000009edfe00] [c0000000001b585c] .kjournald+0xf4/0x2ac
> > [c000000009edff00] [c00000000007ff4c] .kthread+0x84/0xd0
> > [c000000009edff90] [c000000000028900] .kernel_thread+0x4c/0x68
> > Instruction dump:
> > 7dc57378 48009575 60000000 2fa30000 419e0490 56c902d8 3c000018 7dd907b4
> > 7ad2c7e2 7f890000 7c000026 5400fffe <0b000000> e93e8128 3b000000 80090000

On Tue, Mar 4, 2008 at 8:36 PM, Andrew Morton
<[email protected]> wrote:
> /* Convert GFP flags to their corresponding migrate type */
> static inline int allocflags_to_migratetype(gfp_t gfp_flags)
> {
> WARN_ON((gfp_flags & GFP_MOVABLE_MASK) == GFP_MOVABLE_MASK);
>
> Mel, Pekka: would you have some head-scratching time for this one please?

Sure. Just to double-check, this is with SLAB, right? Do you see this with SLUB?

2008-03-04 19:13:31

by Hugh Dickins

[permalink] [raw]
Subject: [PATCH 2.6.25-rc3-mm1] fix ext2 borkage

use-page_cache_xxx-in-ext2.patch gave me lots of EXT2-fs error (device
loop0): ext2_find_entry: dir 52629 size 5120 exceeds block count 2
so I stopped it quickly. Creating a directory entry was muddling up the
directory and the linked inode, writing directory page out to the latter.

Signed-off-by: Hugh Dickins <[email protected]>
---

fs/ext2/dir.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- 2.6.25-rc3-mm1/fs/ext2/dir.c 2008-03-04 11:37:47.000000000 +0000
+++ linux/fs/ext2/dir.c 2008-03-04 18:25:24.000000000 +0000
@@ -472,7 +472,7 @@ void ext2_set_link(struct inode *dir, st
int ext2_add_link (struct dentry *dentry, struct inode *inode)
{
struct inode *dir = dentry->d_parent->d_inode;
- struct address_space *mapping = inode->i_mapping;
+ struct address_space *mapping = dir->i_mapping;
const char *name = dentry->d_name.name;
int namelen = dentry->d_name.len;
unsigned chunk_size = ext2_chunk_size(dir);

2008-03-04 19:19:52

by Pekka Enberg

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

Andrew Morton wrote:
> > [c000000009edf5f0] [c0000000000b56e4] .__alloc_pages_internal+0xf8/0x470
> > [c000000009edf6e0] [c0000000000e0458] .kmem_getpages+0x8c/0x194
> > [c000000009edf770] [c0000000000e1050] .fallback_alloc+0x194/0x254
> > [c000000009edf820] [c0000000000e14b0] .kmem_cache_alloc+0xd8/0x144
> > [c000000009edf8c0] [c0000000001fe0f8] .radix_tree_preload+0x50/0xd4
> > [c000000009edf960] [c0000000000ad048] .add_to_page_cache+0x38/0x12c
> > [c000000009edfa00] [c0000000000ad158] .add_to_page_cache_lru+0x1c/0x4c
> > [c000000009edfa90] [c0000000000add58] .find_or_create_page+0x60/0xa8
> > [c000000009edfb30] [c00000000011e478] .__getblk+0x140/0x310
> > [c000000009edfc00] [c0000000001b78c4] .journal_get_descriptor_buffer+0x44/0xd8
> > [c000000009edfca0] [c0000000001b236c] .journal_commit_transaction+0x948/0x1590
> > [c000000009edfe00] [c0000000001b585c] .kjournald+0xf4/0x2ac
> > [c000000009edff00] [c00000000007ff4c] .kthread+0x84/0xd0
> > [c000000009edff90] [c000000000028900] .kernel_thread+0x4c/0x68
> > Instruction dump:
> > 7dc57378 48009575 60000000 2fa30000 419e0490 56c902d8 3c000018 7dd907b4
> > 7ad2c7e2 7f890000 7c000026 5400fffe <0b000000> e93e8128 3b000000 80090000
>
> /* Convert GFP flags to their corresponding migrate type */
> static inline int allocflags_to_migratetype(gfp_t gfp_flags)
> {
> WARN_ON((gfp_flags & GFP_MOVABLE_MASK) == GFP_MOVABLE_MASK);
>
> Mel, Pekka: would you have some head-scratching time for this one please?

What we have is __getblk() -> __getblk_slow() -> grow_buffers() ->
grow_dev_page() doing find_or_create_page() with __GFP_MOVABLE set. That
path then eventually does radix_tree_preload -> kmem_cache_alloc() to a
cache that has SLAB_RECLAIM_ACCOUNT set which implies __GFP_RECLAIMABLE
(for both SLAB and SLUB). So we oops there.

I suspect the WARN_ON() is bogus although I really don't know that part
of the code all too well. Mel?

Pekka

2008-03-04 19:20:38

by Kamalesh Babulal

[permalink] [raw]
Subject: [BUG] 2.6.25-rc3-mm1 kernel bug while running libhugetlbfs

Hi Andrew,

kernel bug is triggered while running libhugetlbfs test with 2.6.25-rc3-mm1 kernel
over the x86 and power machines.

------------[ cut here ]------------
kernel BUG at mm/hugetlb.c:295!
invalid opcode: 0000 [#1] SMP
last sysfs file: /sys/devices/system/node/possible
Modules linked in:

Pid: 5484, comm: counters Not tainted (2.6.25-rc3-mm1-autokern1 #1)
EIP: 0060:[<c10535cf>] EFLAGS: 00010202 CPU: 0
EIP is at alloc_buddy_huge_page+0x7a/0xb0
EAX: c13acd01 EBX: f7d3a000 ECX: 00000000 EDX: 00006363
ESI: 00000001 EDI: 00000000 EBP: 00000000 ESP: f5539ebc
DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process counters (pid: 5484, ti=f5538000 task=f60afa20 task.ti=f5538000)
Stack: 00000001 c1053669 fffffff4 00000001 f5539ecc f5539ecc 00000001 fffffff4
f55d0e78 00000001 c105480c 00000001 00200000 c1054875 00000000 f54426c0
00200000 00000000 f54426c0 c10b0fb8 fffffff4 00200000 00000000 f55d0e78
Call Trace:
[<c1053669>] gather_surplus_pages+0x64/0x16d
[<c105480c>] hugetlb_acct_memory+0x1e/0x4a
[<c1054875>] hugetlb_reserve_pages+0x3d/0x6b
[<c10b0fb8>] hugetlbfs_file_mmap+0x9b/0xe1
[<c104bf9f>] mmap_region+0x1dc/0x3ae
[<c104bd42>] do_mmap_pgoff+0x27f/0x28e
[<c1005af2>] sys_mmap2+0x5a/0x78
[<c10029fa>] syscall_call+0x7/0xb
=======================
Code: c1 e8 ed 27 1c 00 85 db 74 41 83 7b 04 00 75 10 68 c0 93 27 c1 e8 02 92 fc ff 58 e8 c1 02 fb ff f0 ff 4b 04 0f 94 c0 84 c0 74 04 <0f> 0b eb fe c7 43 38 3e 33 05 c1 8b 03 c1 e8 1c ff 04 85 60 ce
EIP: [<c10535cf>] alloc_buddy_huge_page+0x7a/0xb0 SS:ESP 0068:f5539ebc
---[ end trace 5a47484f8fe93a33 ]---


------------[ cut here ]------------
cpu 0x3: Vector: 700 (Program Check) at [c0000000fb277740]
pc: c0000000000c6f54: .alloc_buddy_huge_page+0x120/0x1dc
lr: c0000000000c6f20: .alloc_buddy_huge_page+0xec/0x1dc
sp: c0000000fb2779c0
msr: 8000000000029032
current = 0xc0000000fc4cae90
paca = 0xc0000000004fae80
pid = 6828, comm = counters
kernel BUG at mm/hugetlb.c:295!
enter ? for help
[c0000000fb277a50] c0000000000c70e8 .hugetlb_acct_memory+0xd8/0x374
[c0000000fb277b10] c0000000000c769c .hugetlb_reserve_pages+0x184/0x2b0
[c0000000fb277bc0] c00000000018c950 .hugetlbfs_file_mmap+0xec/0x160
[c0000000fb277c70] c0000000000bc280 .mmap_region+0x254/0x4d4
[c0000000fb277d80] c00000000000b1b8 .sys_mmap+0xa4/0x104
[c0000000fb277e30] c00000000000872c syscall_exit+0x0/0x40
--- Exception: c01 (System Call) at 000004000019e528
SP (fffffcd4eb0) is in userspace
3:mon>
--
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.

2008-03-04 19:54:57

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

On Tue, Mar 04, 2008 at 12:59:39PM +0100, Cornelia Huck wrote:
> On Tue, 4 Mar 2008 01:19:28 -0800,
> Andrew Morton <[email protected]> wrote:
>
> > +driver-core-fix-cleanup-when-failing-device_add.patch
>
> This should go into 2.6.25, as it fixes a panic (see
> http://marc.info/?l=linux-kernel&m=120411157302447&w=2,
> http://marc.info/?l=linux-kernel&m=120412001416810&w=2).

Will add it to that queue to send to Linus in a bit, thanks for poking
me.

Hint, when sending patches, please at least change the Subject so that I
don't accidentally pass it by, it was burried in a longer thread that I
missed the first time through.

thanks,

greg k-h

2008-03-04 20:04:35

by Andrew Morton

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel bug while running libhugetlbfs

On Wed, 05 Mar 2008 00:50:17 +0530
Kamalesh Babulal <[email protected]> wrote:

> Hi Andrew,
>
> kernel bug is triggered while running libhugetlbfs test with 2.6.25-rc3-mm1 kernel
> over the x86 and power machines.
>
> ------------[ cut here ]------------
> kernel BUG at mm/hugetlb.c:295!
> invalid opcode: 0000 [#1] SMP
> last sysfs file: /sys/devices/system/node/possible
> Modules linked in:
>
> Pid: 5484, comm: counters Not tainted (2.6.25-rc3-mm1-autokern1 #1)
> EIP: 0060:[<c10535cf>] EFLAGS: 00010202 CPU: 0
> EIP is at alloc_buddy_huge_page+0x7a/0xb0
> EAX: c13acd01 EBX: f7d3a000 ECX: 00000000 EDX: 00006363
> ESI: 00000001 EDI: 00000000 EBP: 00000000 ESP: f5539ebc
> DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
> Process counters (pid: 5484, ti=f5538000 task=f60afa20 task.ti=f5538000)
> Stack: 00000001 c1053669 fffffff4 00000001 f5539ecc f5539ecc 00000001 fffffff4
> f55d0e78 00000001 c105480c 00000001 00200000 c1054875 00000000 f54426c0
> 00200000 00000000 f54426c0 c10b0fb8 fffffff4 00200000 00000000 f55d0e78
> Call Trace:
> [<c1053669>] gather_surplus_pages+0x64/0x16d
> [<c105480c>] hugetlb_acct_memory+0x1e/0x4a
> [<c1054875>] hugetlb_reserve_pages+0x3d/0x6b
> [<c10b0fb8>] hugetlbfs_file_mmap+0x9b/0xe1
> [<c104bf9f>] mmap_region+0x1dc/0x3ae
> [<c104bd42>] do_mmap_pgoff+0x27f/0x28e
> [<c1005af2>] sys_mmap2+0x5a/0x78
> [<c10029fa>] syscall_call+0x7/0xb
> =======================
> Code: c1 e8 ed 27 1c 00 85 db 74 41 83 7b 04 00 75 10 68 c0 93 27 c1 e8 02 92 fc ff 58 e8 c1 02 fb ff f0 ff 4b 04 0f 94 c0 84 c0 74 04 <0f> 0b eb fe c7 43 38 3e 33 05 c1 8b 03 c1 e8 1c ff 04 85 60 ce
> EIP: [<c10535cf>] alloc_buddy_huge_page+0x7a/0xb0 SS:ESP 0068:f5539ebc
> ---[ end trace 5a47484f8fe93a33 ]---
>
>

Please send Adam a copy of that libhugetlbfs test ;)

hugetlb-correct-page-count-for-surplus-huge-pages.patch adds:

if (page) {
/*
* This page is now managed by the hugetlb allocator and has
* no users -- drop the buddy allocator's reference.
*/
int page_count = put_page_testzero(page);
BUG_ON(page_count != 0);

2008-03-04 20:25:22

by Randy Dunlap

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (wakeup)

On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:

>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/

Both x86_64 and i386 builds throw these messages at me:

LD arch/x86/kernel/acpi/realmode/wakeup.elf
ld: warning: dot moved backwards before `.text'
ld: warning: dot moved backwards before `.text'
ld: warning: dot moved backwards before `.text'
OBJCOPY arch/x86/kernel/acpi/realmode/wakeup.bin


---
~Randy

2008-03-04 21:26:35

by Randy Dunlap

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (9p docs)

On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:

>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/


"make htmldocs" gives me:

HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/docproc
make[1]: *** No rule to make target `Documentation/DocBook/9p-overview.eps', needed by `Documentation/DocBook/9p.xml'. Stop.
make: *** [htmldocs] Error 2


Are we missing the .eps and .png files?

---
~Randy

2008-03-04 21:44:23

by Eric Van Hensbergen

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (9p docs)

On Tue, Mar 4, 2008 at 3:26 PM, Randy Dunlap <[email protected]> wrote:
> On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
>
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>
>
> "make htmldocs" gives me:
>
> HOSTCC scripts/basic/fixdep
> HOSTCC scripts/basic/docproc
> make[1]: *** No rule to make target `Documentation/DocBook/9p-overview.eps', needed by `Documentation/DocBook/9p.xml'. Stop.
> make: *** [htmldocs] Error 2
>
>
> Are we missing the .eps and .png files?
>

Actually looks like we are missing a .fig (which generates the .eps or
.png as appropriate) and the template file.
Ugh, sorry, I must have messed up the patch. I'll fix it in my tree tonight.

-eric

2008-03-04 21:53:53

by Adam Litke

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel bug while running libhugetlbfs

On Tue, 2008-03-04 at 11:51 -0800, Andrew Morton wrote:
> hugetlb-correct-page-count-for-surplus-huge-pages.patch adds:
>
> if (page) {
> /*
> * This page is now managed by the hugetlb allocator and has
> * no users -- drop the buddy allocator's reference.
> */
> int page_count = put_page_testzero(page);
> BUG_ON(page_count != 0);
>
>

Ugh I got bitten by put_page_testzero(). When it returns 1, the page
count is zero (not the page count).

My initial version had a BUG_ON() with side-effects. When a reviewer
pointed it out, I thought I could fix the patch up on its way out the
door. I have self-administered my punishment. This patch will fix it:

Signed-off-by: Adam Litke <[email protected]>

--- mm/hugetlb.c.orig 2008-03-04 13:36:30.000000000 -0800
+++ mm/hugetlb.c 2008-03-04 13:39:30.000000000 -0800
@@ -291,8 +291,8 @@ static struct page *alloc_buddy_huge_pag
* This page is now managed by the hugetlb allocator and has
* no users -- drop the buddy allocator's reference.
*/
- int page_count = put_page_testzero(page);
- BUG_ON(page_count != 0);
+ put_page_testzero(page);
+ VM_BUG_ON(page_count(page));
nid = page_to_nid(page);
set_compound_page_dtor(page, free_huge_page);
/*

--
Adam Litke - (agl at us.ibm.com)
IBM Linux Technology Center

2008-03-04 22:34:43

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (wakeup)

On Tuesday, 4 of March 2008, Randy Dunlap wrote:
> On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
>
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>
> Both x86_64 and i386 builds throw these messages at me:
>
> LD arch/x86/kernel/acpi/realmode/wakeup.elf
> ld: warning: dot moved backwards before `.text'
> ld: warning: dot moved backwards before `.text'
> ld: warning: dot moved backwards before `.text'
> OBJCOPY arch/x86/kernel/acpi/realmode/wakeup.bin

I think I saw something like this on a system with an "older" toolchain.
I'm not seeing it on openSUSE 10.3, though (using gcc 4.2.1).

Added CCs to the experts.

Thanks,
Rafael

2008-03-05 07:40:03

by Sam Ravnborg

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (wakeup)

On Tue, Mar 04, 2008 at 11:33:12PM +0100, Rafael J. Wysocki wrote:
> On Tuesday, 4 of March 2008, Randy Dunlap wrote:
> > On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
> >
> > >
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
> >
> > Both x86_64 and i386 builds throw these messages at me:
> >
> > LD arch/x86/kernel/acpi/realmode/wakeup.elf
> > ld: warning: dot moved backwards before `.text'
> > ld: warning: dot moved backwards before `.text'
> > ld: warning: dot moved backwards before `.text'
> > OBJCOPY arch/x86/kernel/acpi/realmode/wakeup.bin
>
> I think I saw something like this on a system with an "older" toolchain.
> I'm not seeing it on openSUSE 10.3, though (using gcc 4.2.1).
>
> Added CCs to the experts.
Google turned up this post:
http://sourceware.org/ml/binutils/2006-08/msg00235.html

I have no time to dig more into it the next days.

Sam

2008-03-05 07:53:23

by Kamalesh Babulal

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel bug while running libhugetlbfs

Adam Litke wrote:
> On Tue, 2008-03-04 at 11:51 -0800, Andrew Morton wrote:
>> hugetlb-correct-page-count-for-surplus-huge-pages.patch adds:
>>
>> if (page) {
>> /*
>> * This page is now managed by the hugetlb allocator and has
>> * no users -- drop the buddy allocator's reference.
>> */
>> int page_count = put_page_testzero(page);
>> BUG_ON(page_count != 0);
>>
>>
>
> Ugh I got bitten by put_page_testzero(). When it returns 1, the page
> count is zero (not the page count).
>
> My initial version had a BUG_ON() with side-effects. When a reviewer
> pointed it out, I thought I could fix the patch up on its way out the
> door. I have self-administered my punishment. This patch will fix it:
Hi Adam,

Thanks the patch fixes the kernel bug while running the libhugetlbfs test.

Tested-by: Kamalesh Babulal <[email protected]>

>
> Signed-off-by: Adam Litke <[email protected]>
>
> --- mm/hugetlb.c.orig 2008-03-04 13:36:30.000000000 -0800
> +++ mm/hugetlb.c 2008-03-04 13:39:30.000000000 -0800
> @@ -291,8 +291,8 @@ static struct page *alloc_buddy_huge_pag
> * This page is now managed by the hugetlb allocator and has
> * no users -- drop the buddy allocator's reference.
> */
> - int page_count = put_page_testzero(page);
> - BUG_ON(page_count != 0);
> + put_page_testzero(page);
> + VM_BUG_ON(page_count(page));
> nid = page_to_nid(page);
> set_compound_page_dtor(page, free_huge_page);
> /*
>


--
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.

2008-03-05 08:24:34

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()


On Tue, 2008-03-04 at 18:42 +0530, Kamalesh Babulal wrote:
> Hi Andrew,
>
> The 2.6.25-rc3-mm1 kernel panics while bootup on power box. The machine booted up
> without the panic on the third attempt, but badness call trace were seen while running
> tests

We are taking a HW interrupt ... we aren't supposed to take HW
interrupts that early during boot afaik.

Is it yet another case of somebody hard-enabling interrupts with
local_irq_enable() ?

Ben.

> 1) The kernel panic on first attempt
>
> Unable to handle kernel paging request for data at address 0x00000000
> Faulting instruction address: 0xc00000000000cb2c
> Oops: Kernel access of bad area, sig: 11 [#1]
> SMP NR_CPUS=128 NUMA pSeries
> Modules linked in:
> NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000000226
> REGS: c00000000068f360 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000001032 <ME,IR,DR> CR: 28000024 XER: 20000001
> DAR: 0000000000000000, DSISR: 0000000040000000
> TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
> GPR00: c00000000068f5e0 c00000000068f5e0 c00000000068e690 0000000000000000
> GPR04: 00000000000035e0 000000000087264e c000000008011280 c000000000594000
> GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
> GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
> GPR16: 0000000000000000 0000000000000000 0000000000008000 0000000000000000
> GPR20: 0000000000000000 0000000000000000 000000000000007f 0000000000018000
> GPR24: 0000000000000001 0000000000000080 0000000000000018 0000000000000000
> GPR28: 0000000000000c00 c000000000588988 c000000000639be8 c000000008001c00
> NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
> LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
> Call Trace:
> [c00000000068f5e0] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
> [c00000000068f680] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
> --- Exception: 501 at .memset+0x70/0xfc
> LR = .__alloc_bootmem_core+0x39c/0x3dc
> [c00000000068f970] [c00000000068fa10] init_thread_union+0x3a10/0x4000 (unreliable)
> [c00000000068fa30] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
> [c00000000068fad0] [c0000000003c477c] .zone_wait_table_init+0x74/0x108
> [c00000000068fb60] [c0000000003d9058] .init_currently_empty_zone+0x40/0x11c
> [c00000000068fc00] [c0000000003d94c8] .free_area_init_node+0x394/0x3fc
> [c00000000068fcf0] [c00000000057314c] .free_area_init_nodes+0x2d8/0x364
> [c00000000068fd90] [c00000000056682c] .paging_init+0x40/0x58
> [c00000000068fe40] [c00000000055ba34] .setup_arch+0x20c/0x240
> [c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
> [c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
> Instruction dump:
> 7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
> 480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008
>
> 2) The kernel panic on second attempt
>
> Unable to handle kernel paging request for data at address 0x00000000
> Faulting instruction address: 0xc00000000000cb2c
> Oops: Kernel access of bad area, sig: 11 [#1]
> SMP NR_CPUS=128 NUMA pSeries
> Modules linked in:
> NIP: c00000000000cb2c LR: c00000000000caf8 CTR: 0000000000014a99
> REGS: c00000000068f410 TRAP: 0300 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000001032 <ME,IR,DR> CR: 28000044 XER: 00000001
> DAR: 0000000000000000, DSISR: 0000000040000000
> TASK = c0000000005c8590[0] 'swapper' THREAD: c00000000068c000 CPU: 0
> GPR00: c00000000068f690 c00000000068f690 c00000000068e690 0000000000000000
> GPR04: 0000000000003690 0000000000537672 c000000001ad59c0 c000000000594000
> GPR08: c0000000005c9300 0000000000000000 c000000000591090 c00000000068c000
> GPR12: 8000000000009032 c0000000005c9300 0000000000000000 0000000000000000
> GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
> GPR20: 0000000000230000 0000000000000000 0000000000ffffff 0000000001000000
> GPR24: 0000000000001000 0000000001000000 0000000000001000 0000000000000000
> GPR28: 0000000000000000 c0000000005889c8 c000000000639be8 c000000001000000
> NIP [c00000000000cb2c] .do_IRQ+0x74/0x1c4
> LR [c00000000000caf8] .do_IRQ+0x40/0x1c4
> Call Trace:
> [c00000000068f690] [c00000000000caf8] .do_IRQ+0x40/0x1c4 (unreliable)
> [c00000000068f730] [c000000000004790] hardware_interrupt_entry+0x18/0x1c
> --- Exception: 501 at .memset+0x80/0xfc
> LR = .__alloc_bootmem_core+0x39c/0x3dc
> [c00000000068fa20] [c000000000641a78] sysctl_pernet_ops+0x108e0/0x1d6e0 (unreliable)
> [c00000000068fae0] [c00000000057237c] .__alloc_bootmem_node+0x38/0x8c
> [c00000000068fb80] [c0000000003c48dc] .__earlyonly_bootmem_alloc+0x24/0x3c
> [c00000000068fc00] [c0000000003d885c] .vmemmap_populate+0x7c/0xf4
> [c00000000068fc90] [c0000000003d9b6c] .sparse_mem_map_populate+0x38/0x64
> [c00000000068fd10] [c000000000573ec4] .sparse_early_mem_map_alloc+0x54/0x98
> [c00000000068fda0] [c000000000573f70] .sparse_init+0x68/0x148
> [c00000000068fe40] [c00000000055b9ec] .setup_arch+0x1c4/0x240
> [c00000000068fee0] [c000000000552690] .start_kernel+0xdc/0x414
> [c00000000068ff90] [c000000000008594] .start_here_common+0x54/0xc0
> Instruction dump:
> 7c200b78 780404a0 2ba408ff 41bd001c e87e80a8 3884ff00 48058d21 60000000
> 480054cd 60000000 e93e80b0 e92900b8 <e8090000> f8410028 e9690010 e8490008
>
> 3) Third attempt kernel booted up but had the following call trace 264 times while running
> test
>
> Badness at include/linux/gfp.h:110
> NIP: c0000000000b4ff0 LR: c0000000000b4fa0 CTR: c00000000019cdb4
> REGS: c000000009edf250 TRAP: 0700 Not tainted (2.6.25-rc3-mm1-autotest)
> MSR: 8000000000029032 <EE,ME,IR,DR> CR: 22024042 XER: 20000003
> TASK = c000000009062140[548] 'kjournald' THREAD: c000000009edc000 CPU: 0
> NIP [c0000000000b4ff0] .get_page_from_freelist+0x29c/0x898
> LR [c0000000000b4fa0] .get_page_from_freelist+0x24c/0x898
> Call Trace:
> [c000000009edf5f0] [c0000000000b56e4] .__alloc_pages_internal+0xf8/0x470
> [c000000009edf6e0] [c0000000000e0458] .kmem_getpages+0x8c/0x194
> [c000000009edf770] [c0000000000e1050] .fallback_alloc+0x194/0x254
> [c000000009edf820] [c0000000000e14b0] .kmem_cache_alloc+0xd8/0x144
> [c000000009edf8c0] [c0000000001fe0f8] .radix_tree_preload+0x50/0xd4
> [c000000009edf960] [c0000000000ad048] .add_to_page_cache+0x38/0x12c
> [c000000009edfa00] [c0000000000ad158] .add_to_page_cache_lru+0x1c/0x4c
> [c000000009edfa90] [c0000000000add58] .find_or_create_page+0x60/0xa8
> [c000000009edfb30] [c00000000011e478] .__getblk+0x140/0x310
> [c000000009edfc00] [c0000000001b78c4] .journal_get_descriptor_buffer+0x44/0xd8
> [c000000009edfca0] [c0000000001b236c] .journal_commit_transaction+0x948/0x1590
> [c000000009edfe00] [c0000000001b585c] .kjournald+0xf4/0x2ac
> [c000000009edff00] [c00000000007ff4c] .kthread+0x84/0xd0
> [c000000009edff90] [c000000000028900] .kernel_thread+0x4c/0x68
> Instruction dump:
> 7dc57378 48009575 60000000 2fa30000 419e0490 56c902d8 3c000018 7dd907b4
> 7ad2c7e2 7f890000 7c000026 5400fffe <0b000000> e93e8128 3b000000 80090000

2008-03-05 08:30:48

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()


On Tue, 2008-03-04 at 10:33 -0800, Andrew Morton wrote:
> > Are we somehow enabling interrupts before we've setup
> ppc_md.get_irq?
> >
>
> Yes, we are - it's the semaphore rewrite which is doing this in
> start_kernel(). It's being discussed.
>
> Enabling interrupts too early on powerpc was discovered to be fatal on
> powerpc years ago. It looks like that remains the case.

Yes, it is and will probably always be. All that semaphore mucking
around that hard-enables interrupts is just asking for trouble (and on
more than just powerpc... heh, how do you do if your main interrupt
controller hasn't even been initialized yet ?)

Ben.

2008-03-05 10:51:31

by Jiri Slaby

[permalink] [raw]
Subject: prctl(0x8) -> EINVAL [Was: 2.6.25-rc3-mm1]

On 03/04/2008 10:19 AM, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
> +capabilities-implement-per-process-securebits.patch

This probably causes userspace damage:

dbus:
prctl(0x8, 0x1, 0, 0, 0) = -1 EINVAL (Invalid argument)

named:
named: -u with Linux threads not supported: requires kernel support for
prctl(PR_SET_KEEPCAPS)
prctl(0x8, 0x1, 0, 0, 0) = -1 EINVAL (Invalid argument)

ntpd:
prctl(0x8, 0x1, 0xffffffffffffffa8, 0x1, 0) = -1 EINVAL (Invalid argument)
prctl(0x8, 0x1, 0, 0, 0) = -1 EINVAL (Invalid argument)

$ grep CONFIG_SECURITY .config
# CONFIG_SECURITY is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set

2008-03-05 10:59:54

by Jiri Slaby

[permalink] [raw]
Subject: Re: prctl(0x8) -> EINVAL [Was: 2.6.25-rc3-mm1]

On 03/05/2008 11:51 AM, Jiri Slaby wrote:
> On 03/04/2008 10:19 AM, Andrew Morton wrote:
>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>>
>> +capabilities-implement-per-process-securebits.patch
>
> This probably causes userspace damage:

sorry, s/probably//

2008-03-05 13:05:39

by Pavel Emelyanov

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

With CONFIG_SYSFS not set got this on boot:

kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
------------[ cut here ]------------
WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
Modules linked in: sky2 e1000
Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
[<c041855b>] warn_on_slowpath+0x40/0x66
[<c041c687>] irq_exit+0x50/0x67
[<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
[<c0403380>] apic_timer_interrupt+0x28/0x30
[<c0418e36>] vprintk+0x2b0/0x2df
[<c04118e8>] __update_rq_clock+0x1d/0x110
[<c0565e43>] schedule_timeout+0x13/0x86

[<c05656c2>] wait_for_common+0xd1/0x123
[<c0418e79>] printk+0x14/0x18
[<c04b34bf>] kobject_put+0x29/0x3c
[<c0431e39>] free_module+0x2f/0x72
[<c04328dd>] sys_init_module+0xa61/0x15d2

[<c04ba863>] pci_bus_read_config_byte+0x0/0x58
[<c0454f87>] vfs_read+0x6c/0x8b
[<c0455323>] sys_read+0x3c/0x63
[<c04028b2>] sysenter_past_esp+0x5f/0x85

=======================
---[ end trace d50646e8e8e48682 ]---
BUG: atomic counter underflow at:
Pid: 1303, comm: modprobe Tainted: G W 2.6.25-rc3-mm1 #79
[<c04b4042>] kref_put+0x3a/0x55
[<c0431e39>] free_module+0x2f/0x72
[<c04328dd>] sys_init_module+0xa61/0x15d2
[<c04ba863>] pci_bus_read_config_byte+0x0/0x58
[<c0454f87>] vfs_read+0x6c/0x8b
[<c0455323>] sys_read+0x3c/0x63
[<c04028b2>] sysenter_past_esp+0x5f/0x85
=======================

And same on any (int this case sky2) module unload (load is OK)

sky2 eth1: disabling interface
kobject: '<NULL>' (f886cb48): is not initialized, yet kobject_put() is being called.
------------[ cut here ]------------
WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
Modules linked in: e1000 [last unloaded: sky2]
Pid: 3216, comm: rmmod Tainted: G W 2.6.25-rc3-mm1 #80
[<c041855b>] warn_on_slowpath+0x40/0x66
[<c041c687>] irq_exit+0x50/0x67
[<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
[<c0403380>] apic_timer_interrupt+0x28/0x30
[<c0418e36>] vprintk+0x2b0/0x2df
[<c04118e8>] __update_rq_clock+0x1d/0x110
[<c0565da3>] schedule_timeout+0x13/0x86
[<c0565622>] wait_for_common+0xd1/0x123
[<c0418e79>] printk+0x14/0x18
[<c04b343b>] kobject_put+0x29/0x3c
[<c0431e39>] free_module+0x2f/0x72
[<c0433a09>] sys_delete_module+0x19a/0x1b1
[<c040f866>] do_page_fault+0x1f6/0x4cc
[<c04028b2>] sysenter_past_esp+0x5f/0x85
=======================
---[ end trace 75a3ddf88545c3d4 ]---
BUG: atomic counter underflow at:
Pid: 3216, comm: rmmod Tainted: G W 2.6.25-rc3-mm1 #80
[<c04b3fbe>] kref_put+0x3a/0x55
[<c0431e39>] free_module+0x2f/0x72
[<c0433a09>] sys_delete_module+0x19a/0x1b1
[<c040f866>] do_page_fault+0x1f6/0x4cc
[<c04028b2>] sysenter_past_esp+0x5f/0x85
=======================


Config file:
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.25-rc3-mm1
# Wed Mar 5 15:55:32 2008
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
# CONFIG_X86_64 is not set
CONFIG_X86=y
# CONFIG_GENERIC_LOCKBREAK is not set
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_FAST_CMPXCHG_LOCAL=y
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
CONFIG_QUICKLIST=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y
# CONFIG_GENERIC_GPIO is not set
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
# CONFIG_GENERIC_TIME_VSYSCALL is not set
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
# CONFIG_ZONE_DMA32 is not set
CONFIG_ARCH_POPULATES_NODE_MAP=y
# CONFIG_AUDIT_ARCH is not set
CONFIG_ARCH_SUPPORTS_AOUT=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_X86_SMP=y
CONFIG_X86_32_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y
CONFIG_KTIME_SCALAR=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_TASKSTATS=y
# CONFIG_TASK_DELAY_ACCT is not set
# CONFIG_TASK_XACCT is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=17
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is not set
# CONFIG_CGROUP_NS is not set
# CONFIG_CPUSETS is not set
# CONFIG_GROUP_SCHED is not set
# CONFIG_CGROUP_CPUACCT is not set
CONFIG_RESOURCE_COUNTERS=y
# CONFIG_CGROUP_MEM_RES_CTLR is not set
# CONFIG_RELAY is not set
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
CONFIG_EMBEDDED=y
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
CONFIG_KALLSYMS_EXTRA_PASS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_COMPAT_BRK=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
# CONFIG_EPOLL is not set
# CONFIG_SIGNALFD is not set
# CONFIG_TIMERFD is not set
# CONFIG_EVENTFD is not set
CONFIG_SHMEM=y
# CONFIG_VM_EVENT_COUNTERS is not set
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
# CONFIG_MARKERS is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
# CONFIG_PROC_PAGE_MONITOR is not set
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_LBD=y
CONFIG_LSF=y
# CONFIG_BLK_DEV_BSG is not set

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

#
# Processor type and features
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_SMP=y
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_X86_RDC321X is not set
# CONFIG_X86_VSMP is not set
# CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not set
# CONFIG_PARAVIRT_GUEST 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=y
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 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_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_GENERIC=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_X86_XADD=y
CONFIG_X86_PPRO_FENCE=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=4
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_DMI=y
# CONFIG_IOMMU_HELPER is not set
CONFIG_NR_CPUS=255
# CONFIG_SCHED_SMT is not set
# CONFIG_SCHED_MC is not set
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
# CONFIG_RCU_TRACE is not set
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not set
CONFIG_X86_MCE_P4THERMAL=y
CONFIG_VM86=y
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_X86_REBOOTFIXUPS is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_VMSPLIT_3G=y
# CONFIG_VMSPLIT_3G_OPT is not set
# CONFIG_VMSPLIT_2G is not set
# CONFIG_VMSPLIT_2G_OPT is not set
# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
CONFIG_ARCH_FLATMEM_ENABLE=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_SPARSEMEM_VMEMMAP_ENABLE is not set
CONFIG_SPLIT_PTLOCK_CPUS=4
# CONFIG_RESOURCES_64BIT is not set
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_NR_QUICK=1
CONFIG_VIRT_TO_BUS=y
CONFIG_HIGHPTE=y
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_IRQBALANCE is not set
# CONFIG_SECCOMP is not set
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_SCHED_HRTICK=y
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x100000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x400000
# CONFIG_HOTPLUG_CPU is not set
# CONFIG_COMPAT_VDSO is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y

#
# Power management options
#
# CONFIG_PM is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set
# CONFIG_CPU_IDLE is not set

#
# Bus options (PCI etc.)
#
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_DOMAINS=y
# CONFIG_PCIEPORTBUS is not set
CONFIG_ARCH_SUPPORTS_MSI=y
# CONFIG_PCI_MSI is not set
CONFIG_PCI_LEGACY=y
# CONFIG_PCI_DEBUG is not set
# CONFIG_HT_IRQ is not set
CONFIG_ISA_DMA_API=y
# CONFIG_ISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set
# CONFIG_PCCARD is not set
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
CONFIG_BINFMT_MISC=y

#
# Networking
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_NET_NS=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_ASK_IP_FIB_HASH=y
# CONFIG_IP_FIB_TRIE is not set
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_MULTIPLE_TABLES is not set
# CONFIG_IP_ROUTE_MULTIPATH is not set
# CONFIG_IP_ROUTE_VERBOSE is not set
CONFIG_IP_PNP=y
# CONFIG_IP_PNP_DHCP is not set
# CONFIG_IP_PNP_BOOTP is not set
# CONFIG_IP_PNP_RARP is not set
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE=y
# CONFIG_NET_IPGRE_BROADCAST is not set
CONFIG_IP_MROUTE=y
# CONFIG_IP_PIMSM_V1 is not set
# CONFIG_IP_PIMSM_V2 is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_INET_XFRM_TUNNEL is not set
CONFIG_INET_TUNNEL=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_LRO is not set
# CONFIG_INET_DIAG is not set
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic"
CONFIG_TCP_MD5SIG=y
# CONFIG_IPV6 is not set
# CONFIG_INET6_XFRM_TUNNEL is not set
# CONFIG_INET6_TUNNEL is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETFILTER is not set
# CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
CONFIG_VLAN_8021Q=y
# 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_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_SCHED is not set

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_CAN is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_AF_RXRPC is not set

#
# Wireless
#
# CONFIG_CFG80211 is not set
# CONFIG_WIRELESS_EXT is not set
# CONFIG_MAC80211 is not set
# CONFIG_IEEE80211 is not set
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=m
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_CONNECTOR is not set
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_UB is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_MISC_DEVICES is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

#
# SCSI device support
#
# CONFIG_RAID_ATTRS is not set
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
# CONFIG_SCSI_TGT is not set
# CONFIG_SCSI_NETLINK is not set
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=y
CONFIG_SCSI_CONSTANTS=y
CONFIG_SCSI_LOGGING=y
# CONFIG_SCSI_SCAN_ASYNC is not set
CONFIG_SCSI_WAIT_SCAN=m

#
# SCSI Transports
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=m
# CONFIG_SCSI_SAS_LIBSAS is not set
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP 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_AIC94XX is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
# CONFIG_MEGARAID_SAS is not set
# CONFIG_SCSI_HPTIOP 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_MVSAS is not set
# CONFIG_SCSI_STEX is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_QLA_FC is not set
# CONFIG_SCSI_QLA_ISCSI 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
# CONFIG_SCSI_SRP is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
# CONFIG_SATA_AHCI is not set
# CONFIG_SATA_SVW is not set
CONFIG_ATA_PIIX=y
# CONFIG_SATA_MV is not set
# CONFIG_SATA_NV is not set
# CONFIG_PDC_ADMA is not set
# CONFIG_SATA_QSTOR is not set
# CONFIG_SATA_PROMISE is not set
# CONFIG_SATA_SX4 is not set
# CONFIG_SATA_SIL is not set
# CONFIG_SATA_SIL24 is not set
# CONFIG_SATA_SIS is not set
# CONFIG_SATA_ULI is not set
# CONFIG_SATA_VIA is not set
# CONFIG_SATA_VITESSE is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_PATA_ALI is not set
# CONFIG_PATA_AMD is not set
# CONFIG_PATA_ARTOP is not set
# CONFIG_PATA_ATIIXP is not set
# CONFIG_PATA_CMD640_PCI is not set
# CONFIG_PATA_CMD64X is not set
# CONFIG_PATA_CS5520 is not set
# CONFIG_PATA_CS5530 is not set
# CONFIG_PATA_CS5535 is not set
# CONFIG_PATA_CS5536 is not set
# CONFIG_PATA_CYPRESS is not set
# CONFIG_PATA_EFAR is not set
# CONFIG_ATA_GENERIC is not set
# CONFIG_PATA_HPT366 is not set
# CONFIG_PATA_HPT37X is not set
# CONFIG_PATA_HPT3X2N is not set
# CONFIG_PATA_HPT3X3 is not set
# CONFIG_PATA_IT821X is not set
# CONFIG_PATA_IT8213 is not set
# CONFIG_PATA_JMICRON is not set
# CONFIG_PATA_TRIFLEX is not set
# CONFIG_PATA_MARVELL is not set
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_OLDPIIX is not set
# CONFIG_PATA_NETCELL is not set
# CONFIG_PATA_NINJA32 is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_NS87415 is not set
# CONFIG_PATA_OPTI is not set
# CONFIG_PATA_OPTIDMA is not set
# CONFIG_PATA_PDC_OLD is not set
# CONFIG_PATA_RADISYS is not set
# CONFIG_PATA_RZ1000 is not set
# CONFIG_PATA_SC1200 is not set
# CONFIG_PATA_SERVERWORKS is not set
# CONFIG_PATA_PDC2027X is not set
# CONFIG_PATA_SIL680 is not set
# CONFIG_PATA_SIS is not set
# CONFIG_PATA_VIA is not set
# CONFIG_PATA_WINBOND is not set
# CONFIG_PATA_PLATFORM is not set
# CONFIG_MD is not set
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#
# CONFIG_FIREWIRE is not set
# CONFIG_IEEE1394 is not set
# CONFIG_I2O is not set
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
# CONFIG_NETDEVICES_MULTIQUEUE is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_VETH is not set
# CONFIG_ARCNET is not set
# CONFIG_NET_ETHERNET is not set
CONFIG_NETDEV_1000=y
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
CONFIG_E1000=m
CONFIG_E1000_NAPI=y
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
# CONFIG_E1000E is not set
# CONFIG_E1000E_ENABLED is not set
# CONFIG_IP1000 is not set
# CONFIG_IGB 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=m
# CONFIG_SK98LIN is not set
# CONFIG_VIA_VELOCITY is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
# CONFIG_QLA3XXX is not set
# CONFIG_ATL1 is not set
# CONFIG_NETDEV_10000 is not set
# CONFIG_TR is not set

#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set

#
# 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_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_ISDN is not set
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y
# CONFIG_INPUT_FF_MEMLESS is not set
# CONFIG_INPUT_POLLDEV is not set

#
# Userland interfaces
#
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_EVDEV is not set
# 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_KEYBOARD_STOWAWAY is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET 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_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_VT_HW_CONSOLE_BINDING=y
CONFIG_DEVKMEM=y
CONFIG_SERIAL_NONSTANDARD=y
# CONFIG_COMPUTONE is not set
# CONFIG_ROCKETPORT is not set
# CONFIG_CYCLADES is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_MOXA_INTELLIO is not set
# CONFIG_MOXA_SMARTIO is not set
# CONFIG_ISI is not set
CONFIG_SYNCLINK=m
CONFIG_SYNCLINKMP=m
CONFIG_SYNCLINK_GT=m
CONFIG_N_HDLC=m
# CONFIG_RISCOM8 is not set
# CONFIG_SPECIALIX is not set
# CONFIG_SX is not set
# CONFIG_RIO is not set
# CONFIG_STALDRV is not set
# CONFIG_NOZOMI is not set

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_NR_UARTS=32
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_SERIAL_JSM=m
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
# CONFIG_IPMI_HANDLER is not set
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_GEODE=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_NVRAM=y
CONFIG_RTC=y
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
CONFIG_SONYPI=m
# CONFIG_MWAVE is not set
CONFIG_PC8736x_GPIO=m
CONFIG_NSC_GPIO=m
CONFIG_CS5535_GPIO=m
CONFIG_RAW_DRIVER=y
CONFIG_MAX_RAW_DEVS=8192
CONFIG_HANGCHECK_TIMER=m
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
# CONFIG_I2C is not set
# CONFIG_SPI is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
# CONFIG_HWMON is not set
# CONFIG_THERMAL is not set
# CONFIG_WATCHDOG is not set

#
# Sonics Silicon Backplane
#
CONFIG_SSB_POSSIBLE=y
# CONFIG_SSB is not set

#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set
# CONFIG_DVB_CORE is not set
# CONFIG_DAB is not set

#
# Graphics support
#
# CONFIG_AGP is not set
# CONFIG_DRM is not set
# CONFIG_VGASTATE is not set
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
# CONFIG_FB is not set
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set

#
# Display device support
#
# CONFIG_DISPLAY_SUPPORT is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
# CONFIG_VIDEO_SELECT is not set
CONFIG_DUMMY_CONSOLE=y

#
# Sound
#
# CONFIG_SOUND is not set
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
# CONFIG_HIDRAW is not set

#
# USB Input Devices
#
CONFIG_USB_HID=y
# CONFIG_USB_HIDINPUT_POWERBOOK is not set
# CONFIG_HID_FF is not set
# CONFIG_USB_HIDDEV is not set
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set
# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set

#
# Miscellaneous USB options
#
# CONFIG_USB_DEVICEFS is not set
# CONFIG_USB_DEVICE_CLASS is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG is not set

#
# USB Host Controller Drivers
#
# CONFIG_USB_EHCI_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_OHCI_HCD is not set
# CONFIG_USB_UHCI_HCD is not set
# CONFIG_USB_SL811_HCD is not set
# CONFIG_USB_R8A66597_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 Imaging devices
#
# CONFIG_USB_MDC800 is not set
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_MON is not set

#
# USB port drivers
#
# CONFIG_USB_SERIAL is not set

#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_ADUTUX 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_BERRY_CHARGE is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_PHIDGET is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set
# CONFIG_USB_IOWARRIOR is not set
# CONFIG_USB_GOTEMP is not set
# CONFIG_USB_GADGET is not set
# CONFIG_MMC is not set
# CONFIG_MEMSTICK is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_INFINIBAND is not set
# CONFIG_EDAC is not set
# CONFIG_RTC_CLASS is not set
# CONFIG_DMADEVICES is not set
# CONFIG_UIO is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
# CONFIG_DELL_RBU is not set
# CONFIG_DCDBAS is not set
# CONFIG_DMIID is not set

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_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_FS_MBCACHE=y
# CONFIG_REISER4_FS is not set
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
# CONFIG_DNOTIFY is not set
# CONFIG_INOTIFY is not set
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set

#
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set

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

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
# CONFIG_SYSFS is not set
CONFIG_TMPFS=y
# CONFIG_TMPFS_POSIX_ACL is not set
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set

#
# Layered filesystems
#
# CONFIG_UNION_FS is not set

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

#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
# CONFIG_OSF_PARTITION is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_ATARI_PARTITION is not set
# CONFIG_MAC_PARTITION is not set
CONFIG_MSDOS_PARTITION=y
# CONFIG_BSD_DISKLABEL is not set
# CONFIG_MINIX_SUBPARTITION is not set
# CONFIG_SOLARIS_X86_PARTITION is not set
# CONFIG_UNIXWARE_DISKLABEL is not set
# CONFIG_LDM_PARTITION is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
# CONFIG_KARMA_PARTITION is not set
# CONFIG_EFI_PARTITION is not set
# CONFIG_SYSV68_PARTITION is not set
CONFIG_NLS=m
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=m
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_852=m
CONFIG_NLS_CODEPAGE_855=m
# 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=m
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
CONFIG_NLS_CODEPAGE_866=m
# 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=m
CONFIG_NLS_ASCII=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
CONFIG_NLS_ISO8859_5=m
# CONFIG_NLS_ISO8859_6 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=m
CONFIG_NLS_KOI8_U=m
CONFIG_NLS_UTF8=m

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_PAGE_OWNER is not set
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
# CONFIG_DETECT_SOFTLOCKUP is not set
# CONFIG_SCHED_DEBUG is not set
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_PROVE_LOCKING is not set
# CONFIG_LOCK_STAT is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_WRITECOUNT is not set
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_FRAME_POINTER is not set
# CONFIG_PROFILE_LIKELY is not set
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_DEBUG_SYNCHRO_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_LATENCYTOP is not set
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_SAMPLES is not set
CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_X86_PTDUMP is not set
# CONFIG_DEBUG_RODATA is not set
# CONFIG_DEBUG_NX_TEST is not set
# CONFIG_4KSTACKS is not set
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_DOUBLEFAULT=y
CONFIG_IO_DELAY_TYPE_0X80=0
CONFIG_IO_DELAY_TYPE_0XED=1
CONFIG_IO_DELAY_TYPE_UDELAY=2
CONFIG_IO_DELAY_TYPE_NONE=3
CONFIG_IO_DELAY_0X80=y
# CONFIG_IO_DELAY_0XED is not set
# CONFIG_IO_DELAY_UDELAY is not set
# CONFIG_IO_DELAY_NONE is not set
CONFIG_DEFAULT_IO_DELAY_TYPE=0
# CONFIG_CPA_DEBUG is not set

#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_BLKCIPHER=y
# CONFIG_CRYPTO_SEQIV is not set
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
# CONFIG_CRYPTO_XCBC is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_WP512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_GF128MUL is not set
# CONFIG_CRYPTO_ECB is not set
CONFIG_CRYPTO_CBC=y
# CONFIG_CRYPTO_PCBC is not set
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_XTS is not set
# CONFIG_CRYPTO_CTR is not set
# CONFIG_CRYPTO_GCM is not set
# CONFIG_CRYPTO_CCM is not set
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not set
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_TWOFISH is not set
# CONFIG_CRYPTO_TWOFISH_586 is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_AES is not set
# CONFIG_CRYPTO_AES_586 is not set
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST6 is not set
# CONFIG_CRYPTO_TEA is not set
# CONFIG_CRYPTO_ARC4 is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_ANUBIS is not set
# CONFIG_CRYPTO_SEED is not set
# CONFIG_CRYPTO_SALSA20 is not set
# CONFIG_CRYPTO_SALSA20_586 is not set
# CONFIG_CRYPTO_DEFLATE is not set
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_CRC32C is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_TEST is not set
# CONFIG_CRYPTO_AUTHENC is not set
# CONFIG_CRYPTO_LZO is not set
# CONFIG_CRYPTO_HW is not set
CONFIG_HAVE_KVM=y
# CONFIG_VIRTUALIZATION is not set

#
# Library routines
#
CONFIG_BITREVERSE=y
# CONFIG_CRC_CCITT is not set
# CONFIG_CRC16 is not set
# CONFIG_CRC_ITU_T is not set
CONFIG_CRC32=y
# CONFIG_CRC7 is not set
CONFIG_LIBCRC32C=y
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y

2008-03-05 13:13:18

by Pavel Emelyanov

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 (SYSFS=n breaks module engine)

Sorry, I forgot to change the subject in the previous letter.
Better late than never.

2008-03-05 13:30:47

by Kay Sievers

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

On Wed, 2008-03-05 at 16:04 +0300, Pavel Emelyanov wrote:
> With CONFIG_SYSFS not set got this on boot:
>
> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
> ------------[ cut here ]------------
> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
> Modules linked in: sky2 e1000
> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
> [<c041855b>] warn_on_slowpath+0x40/0x66
> [<c041c687>] irq_exit+0x50/0x67
> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
> [<c0403380>] apic_timer_interrupt+0x28/0x30
> [<c0418e36>] vprintk+0x2b0/0x2df
> [<c04118e8>] __update_rq_clock+0x1d/0x110
> [<c0565e43>] schedule_timeout+0x13/0x86
>
> [<c05656c2>] wait_for_common+0xd1/0x123
> [<c0418e79>] printk+0x14/0x18
> [<c04b34bf>] kobject_put+0x29/0x3c
> [<c0431e39>] free_module+0x2f/0x72
> [<c04328dd>] sys_init_module+0xa61/0x15d2
>
> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
> [<c0454f87>] vfs_read+0x6c/0x8b
> [<c0455323>] sys_read+0x3c/0x63
> [<c04028b2>] sysenter_past_esp+0x5f/0x85
>
> =======================
> ---[ end trace d50646e8e8e48682 ]---

Does this fix it?:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=120fc3d77acfd91f3521737a440d42839c475982

Thanks,
Kay

2008-03-05 13:38:36

by Pavel Emelyanov

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

Kay Sievers wrote:
> On Wed, 2008-03-05 at 16:04 +0300, Pavel Emelyanov wrote:
>> With CONFIG_SYSFS not set got this on boot:
>>
>> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
>> ------------[ cut here ]------------
>> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
>> Modules linked in: sky2 e1000
>> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
>> [<c041855b>] warn_on_slowpath+0x40/0x66
>> [<c041c687>] irq_exit+0x50/0x67
>> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
>> [<c0403380>] apic_timer_interrupt+0x28/0x30
>> [<c0418e36>] vprintk+0x2b0/0x2df
>> [<c04118e8>] __update_rq_clock+0x1d/0x110
>> [<c0565e43>] schedule_timeout+0x13/0x86
>>
>> [<c05656c2>] wait_for_common+0xd1/0x123
>> [<c0418e79>] printk+0x14/0x18
>> [<c04b34bf>] kobject_put+0x29/0x3c
>> [<c0431e39>] free_module+0x2f/0x72
>> [<c04328dd>] sys_init_module+0xa61/0x15d2
>>
>> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
>> [<c0454f87>] vfs_read+0x6c/0x8b
>> [<c0455323>] sys_read+0x3c/0x63
>> [<c04028b2>] sysenter_past_esp+0x5f/0x85
>>
>> =======================
>> ---[ end trace d50646e8e8e48682 ]---
>
> Does this fix it?:
>
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=120fc3d77acfd91f3521737a440d42839c475982

This is already in 2.6.25-rc3-mm1, so the answer is "no it does not" :)

> Thanks,
> Kay
>
> --
> 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/
>

2008-03-05 13:53:56

by Kay Sievers

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

On Wed, 2008-03-05 at 16:38 +0300, Pavel Emelyanov wrote:
> Kay Sievers wrote:
> > On Wed, 2008-03-05 at 16:04 +0300, Pavel Emelyanov wrote:
> >> With CONFIG_SYSFS not set got this on boot:
> >>
> >> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
> >> ------------[ cut here ]------------
> >> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
> >> Modules linked in: sky2 e1000
> >> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
> >> [<c041855b>] warn_on_slowpath+0x40/0x66
> >> [<c041c687>] irq_exit+0x50/0x67
> >> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
> >> [<c0403380>] apic_timer_interrupt+0x28/0x30
> >> [<c0418e36>] vprintk+0x2b0/0x2df
> >> [<c04118e8>] __update_rq_clock+0x1d/0x110
> >> [<c0565e43>] schedule_timeout+0x13/0x86
> >>
> >> [<c05656c2>] wait_for_common+0xd1/0x123
> >> [<c0418e79>] printk+0x14/0x18
> >> [<c04b34bf>] kobject_put+0x29/0x3c
> >> [<c0431e39>] free_module+0x2f/0x72
> >> [<c04328dd>] sys_init_module+0xa61/0x15d2
> >>
> >> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
> >> [<c0454f87>] vfs_read+0x6c/0x8b
> >> [<c0455323>] sys_read+0x3c/0x63
> >> [<c04028b2>] sysenter_past_esp+0x5f/0x85
> >>
> >> =======================
> >> ---[ end trace d50646e8e8e48682 ]---
> >
> > Does this fix it?:
> >
> > http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=120fc3d77acfd91f3521737a440d42839c475982
>
> This is already in 2.6.25-rc3-mm1, so the answer is "no it does not" :)

Ok. Care to enable CONFIG_DEBUG_KOBJECT, and post the part of the log
that happens right before the WARN()? We might get a hint where to look
for the stuff that goes wrong.

Thanks,
Kay

2008-03-05 14:06:41

by Serge E. Hallyn

[permalink] [raw]
Subject: Re: prctl(0x8) -> EINVAL [Was: 2.6.25-rc3-mm1]

Quoting Jiri Slaby ([email protected]):
> On 03/04/2008 10:19 AM, Andrew Morton wrote:
>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>> +capabilities-implement-per-process-securebits.patch
>
> This probably causes userspace damage:
>
> dbus:
> prctl(0x8, 0x1, 0, 0, 0) = -1 EINVAL (Invalid argument)
>
> named:
> named: -u with Linux threads not supported: requires kernel support for
> prctl(PR_SET_KEEPCAPS)
> prctl(0x8, 0x1, 0, 0, 0) = -1 EINVAL (Invalid argument)
>
> ntpd:
> prctl(0x8, 0x1, 0xffffffffffffffa8, 0x1, 0) = -1 EINVAL (Invalid argument)
> prctl(0x8, 0x1, 0, 0, 0) = -1 EINVAL (Invalid argument)
>
> $ grep CONFIG_SECURITY .config
> # CONFIG_SECURITY is not set
> # CONFIG_SECURITY_FILE_CAPABILITIES is not set

Thanks, Jiri. Does the following patch work for you?

This patch address the !CONFIG_SECURITY case, but not the case of
using the dummy LSM. The default these days is to have capabilities
compiled in no matter what, but it is still possible to have
CONFIG_SECURITY=y and CONFIG_SECURITY_CAPABILITIES=n, in which
case prctl(0x8) will return -EINVAL. Do we want dummy to call
cap_prctl() as well, or are we ok with userspace getting -EINVAL
given that there are in fact no capabilities at that point and
the userspace code is clearly expecting them?

thanks,
-serge

>From 4a66f19580489a3ac84f0a145e4585c09e65c88e Mon Sep 17 00:00:00 2001
From: Serge E. Hallyn <[email protected]>
Date: Wed, 5 Mar 2008 06:02:32 -0800
Subject: [PATCH 1/1] capabilities: use cap_task_prctl when !CONFIG_SECURITY

capabilities-implement-per-process-securebits.patch introduced
cap_task_prctl() and moved the handling of capability-related
prctl into it. So when !CONFIG_SECURITY, the default
security_task_prctl() needs to call cap_task_prctl() the way
other default hooks call capability helpers when they exist.

This fixes a slew of userspace breakages when
CONFIG_SECURITY=n.

Signed-off-by: Serge E. Hallyn <[email protected]>
---
include/linux/security.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/linux/security.h b/include/linux/security.h
index 83763b0..861d6da 100644
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -2228,7 +2228,7 @@ static inline int security_task_prctl (int option, unsigned long arg2,
unsigned long arg4,
unsigned long arg5, long *rc_p)
{
- return 0;
+ return cap_task_prctl(option, arg2, arg3, arg3, arg5, rc_p);
}

static inline void security_task_reparent_to_init (struct task_struct *p)
--
1.5.1

2008-03-05 14:29:04

by Pavel Emelyanov

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

Kay Sievers wrote:
> On Wed, 2008-03-05 at 16:38 +0300, Pavel Emelyanov wrote:
>> Kay Sievers wrote:
>>> On Wed, 2008-03-05 at 16:04 +0300, Pavel Emelyanov wrote:
>>>> With CONFIG_SYSFS not set got this on boot:
>>>>
>>>> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
>>>> ------------[ cut here ]------------
>>>> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
>>>> Modules linked in: sky2 e1000
>>>> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
>>>> [<c041855b>] warn_on_slowpath+0x40/0x66
>>>> [<c041c687>] irq_exit+0x50/0x67
>>>> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
>>>> [<c0403380>] apic_timer_interrupt+0x28/0x30
>>>> [<c0418e36>] vprintk+0x2b0/0x2df
>>>> [<c04118e8>] __update_rq_clock+0x1d/0x110
>>>> [<c0565e43>] schedule_timeout+0x13/0x86
>>>>
>>>> [<c05656c2>] wait_for_common+0xd1/0x123
>>>> [<c0418e79>] printk+0x14/0x18
>>>> [<c04b34bf>] kobject_put+0x29/0x3c
>>>> [<c0431e39>] free_module+0x2f/0x72
>>>> [<c04328dd>] sys_init_module+0xa61/0x15d2
>>>>
>>>> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
>>>> [<c0454f87>] vfs_read+0x6c/0x8b
>>>> [<c0455323>] sys_read+0x3c/0x63
>>>> [<c04028b2>] sysenter_past_esp+0x5f/0x85
>>>>
>>>> =======================
>>>> ---[ end trace d50646e8e8e48682 ]---
>>> Does this fix it?:
>>>
>>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=120fc3d77acfd91f3521737a440d42839c475982
>> This is already in 2.6.25-rc3-mm1, so the answer is "no it does not" :)
>
> Ok. Care to enable CONFIG_DEBUG_KOBJECT, and post the part of the log
> that happens right before the WARN()? We might get a hint where to look
> for the stuff that goes wrong.

Hm... Not sure how may lines are required, but here'are the ones
that are related to sky2 module, which is loaded and then removed:

kobject: 'sky2' (f74de280): kobject_add_internal: parent: 'drivers', set: 'drivers'
PCI: Setting latency timer of device 0000:02:00.0 to 64
sky2 0000:02:00.0: v1.21 addr 0xdeefc000 irq 16 Yukon-EC (0xb6) rev 2
kobject: 'net' (f7512200): kobject_add_internal: parent: '0000:02:00.0', set: '<NULL>'
kobject: 'eth1' (f74ccb64): kobject_add_internal: parent: 'net', set: 'devices'
kobject: 'eth1' (f74ccb64): kobject_uevent_env
kobject: 'eth1' (f74ccb64): fill_kobj_path: path = '/devices/pci0000:00/0000:00:03.0/0000:02:00.0/net/eth1'
sky2 eth1: addr 00:0e:0c:3b:d8:8a
kobject: 'sky2' (f74de280): kobject_uevent_env
kobject: 'sky2' (f74de280): fill_kobj_path: path = '/bus/pci/drivers/sky2'
sky2 eth1: enabling interface
sky2 eth1: disabling interface
kobject: 'eth1' (f74ccb64): kobject_uevent_env
kobject: 'eth1' (f74ccb64): fill_kobj_path: path = '/devices/pci0000:00/0000:00:03.0/0000:02:00.0/net/eth1'
kobject: 'net' (f7512200): kobject_cleanup

kobject: 'net' (f7512200): auto cleanup kobject_del
kobject: 'net' (f7512200): calling ktype release
kobject: (f7512200): dynamic_kobj_release
kobject: 'net': free name
kobject: 'eth1' (f74ccb64): kobject_cleanup
kobject: 'eth1' (f74ccb64): calling ktype release
kobject: 'eth1': free name
kobject: 'sky2' (f74de280): kobject_cleanup

kobject: 'sky2' (f74de280): auto cleanup 'remove' event
kobject: 'sky2' (f74de280): kobject_uevent_env
kobject: 'sky2' (f74de280): fill_kobj_path: path = '/bus/pci/drivers/sky2'
kobject: 'sky2' (f74de280): auto cleanup kobject_del
kobject: 'sky2' (f74de280): calling ktype release

kobject: 'sky2': free name
kobject: '<NULL>' (f886cb48): is not initialized, yet kobject_put() is being called.
------------[ cut here ]------------
WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
Modules linked in: e1000 [last unloaded: sky2]
Pid: 3188, comm: rmmod Tainted: G W 2.6.25-rc3-mm1 #88
[<c041855b>] warn_on_slowpath+0x40/0x66

[<c041c687>] irq_exit+0x50/0x67
[<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
[<c0403380>] apic_timer_interrupt+0x28/0x30
[<c0418e36>] vprintk+0x2b0/0x2df
[<c04118e8>] __update_rq_clock+0x1d/0x110
[<c0565f43>] schedule_timeout+0x13/0x86
[<c05657c2>] wait_for_common+0xd1/0x123
[<c0418e79>] printk+0x14/0x18
[<c04b3474>] kobject_put+0x29/0x3c
[<c0431e39>] free_module+0x2f/0x72
[<c0433a09>] sys_delete_module+0x19a/0x1b1
[<c040f866>] do_page_fault+0x1f6/0x4cc
[<c04028b2>] sysenter_past_esp+0x5f/0x85

=======================

But this happens _after_ the very first warning and I can't figure
out which modules causes one :( Do you need a full dmesg for that?

> Thanks,
> Kay
>
>

2008-03-05 15:19:20

by Jiri Slaby

[permalink] [raw]
Subject: Re: prctl(0x8) -> EINVAL [Was: 2.6.25-rc3-mm1]

On 03/05/2008 03:06 PM, Serge E. Hallyn wrote:
> From 4a66f19580489a3ac84f0a145e4585c09e65c88e Mon Sep 17 00:00:00 2001
> From: Serge E. Hallyn <[email protected]>
> Date: Wed, 5 Mar 2008 06:02:32 -0800
> Subject: [PATCH 1/1] capabilities: use cap_task_prctl when !CONFIG_SECURITY
>
> capabilities-implement-per-process-securebits.patch introduced
> cap_task_prctl() and moved the handling of capability-related
> prctl into it. So when !CONFIG_SECURITY, the default
> security_task_prctl() needs to call cap_task_prctl() the way
> other default hooks call capability helpers when they exist.
>
> This fixes a slew of userspace breakages when
> CONFIG_SECURITY=n.
>
> Signed-off-by: Serge E. Hallyn <[email protected]>

Tested-by: Jiri Slaby <[email protected]>

2008-03-05 16:31:14

by Valdis Klētnieks

[permalink] [raw]
Subject: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

On Tue, 04 Mar 2008 01:19:28 PST, Andrew Morton said:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/

x86_64, mostly 64-bit userspace, Dell Latitude D820, T7200 Core2 Duo...

So I gave CONFIG_PROFILE_LIKELY another try, and this time the thing actually
booted and got into userspace, but stuff started dying in rc.sysinit.

According to dmesg, they all died at the same place:

[ 4.841459] rename_device[686]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fff7ccfb958 error 14
[ 4.842384] rename_device[984]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fffb6fe9c68 error 14
[ 4.843298] rename_device[981]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fffc18504c8 error 14
[ 4.844184] rename_device[983]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fff512c8f48 error 14
[ 6.099486] rename_device[1513]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fff47e88ad8 error 14
[ 5.769289] rename_device[1516]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fffa317edd8 error 14
[ 7.457229] fsck.ext3[1576]: segfault at ffffffffff7009be ip ffffffffff7009be sp 7fff3be947f8 error 14

(Note that not everything died - some renames, an fsck, and maybe I missed
something - but a lot of other stuff worked (dmesg, grep, cat, uname that I
ran, and a lot of things that rc.sysinit invoked - so that may tell us
something...)

/proc/self/maps says that's near:

ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]

And my System.map says:

ffffffff80855a0c A __bss_stop
ffffffff80855a0c A _end
ffffffffff600000 T vgettimeofday
ffffffffff600100 t vread_tsc
ffffffffff600122 t vread_hpet
ffffffffff600140 D __vsyscall_gtod_data
ffffffffff600400 T vtime
ffffffffff600800 T vgetcpu
ffffffffff600870 D __vgetcpu_mode
ffffffffff600880 D __jiffies
ffffffffff600c00 T venosys_1
ffffffffff700000 A VDSO64_PRELINK
ffffffffff7005b0 A VDSO64_jiffies
ffffffffff7005b8 A VDSO64_vgetcpu_mode
ffffffffff7005c0 A VDSO64_vsyscall_gtod_data
<file ends there>

So we're in the same 4K as the VDSO64_* values, but some 0x4fe past the
gtod_data. Anybody got a hint as to what the heck it was doing?



Attachments:
(No filename) (226.00 B)

2008-03-05 16:41:12

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

On Wed, Mar 05, 2008 at 04:04:43PM +0300, Pavel Emelyanov wrote:
> With CONFIG_SYSFS not set got this on boot:
>
> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
> ------------[ cut here ]------------
> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
> Modules linked in: sky2 e1000
> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
> [<c041855b>] warn_on_slowpath+0x40/0x66
> [<c041c687>] irq_exit+0x50/0x67
> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
> [<c0403380>] apic_timer_interrupt+0x28/0x30
> [<c0418e36>] vprintk+0x2b0/0x2df
> [<c04118e8>] __update_rq_clock+0x1d/0x110
> [<c0565e43>] schedule_timeout+0x13/0x86
>
> [<c05656c2>] wait_for_common+0xd1/0x123
> [<c0418e79>] printk+0x14/0x18
> [<c04b34bf>] kobject_put+0x29/0x3c
> [<c0431e39>] free_module+0x2f/0x72
> [<c04328dd>] sys_init_module+0xa61/0x15d2
>
> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
> [<c0454f87>] vfs_read+0x6c/0x8b
> [<c0455323>] sys_read+0x3c/0x63
> [<c04028b2>] sysenter_past_esp+0x5f/0x85

Hm, but with CONFIG_SYSFS set this does not show up?

thanks,

greg k-h

2008-03-05 17:00:31

by Pavel Emelyanov

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

Greg KH wrote:
> On Wed, Mar 05, 2008 at 04:04:43PM +0300, Pavel Emelyanov wrote:
>> With CONFIG_SYSFS not set got this on boot:
>>
>> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
>> ------------[ cut here ]------------
>> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
>> Modules linked in: sky2 e1000
>> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
>> [<c041855b>] warn_on_slowpath+0x40/0x66
>> [<c041c687>] irq_exit+0x50/0x67
>> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
>> [<c0403380>] apic_timer_interrupt+0x28/0x30
>> [<c0418e36>] vprintk+0x2b0/0x2df
>> [<c04118e8>] __update_rq_clock+0x1d/0x110
>> [<c0565e43>] schedule_timeout+0x13/0x86
>>
>> [<c05656c2>] wait_for_common+0xd1/0x123
>> [<c0418e79>] printk+0x14/0x18
>> [<c04b34bf>] kobject_put+0x29/0x3c
>> [<c0431e39>] free_module+0x2f/0x72
>> [<c04328dd>] sys_init_module+0xa61/0x15d2
>>
>> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
>> [<c0454f87>] vfs_read+0x6c/0x8b
>> [<c0455323>] sys_read+0x3c/0x63
>> [<c04028b2>] sysenter_past_esp+0x5f/0x85
>
> Hm, but with CONFIG_SYSFS set this does not show up?

Yes, with CONFIG_SYSFS set everything is OK.

> thanks,
>
> greg k-h
>

2008-03-05 17:15:15

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1

On Wed, Mar 05, 2008 at 07:59:32PM +0300, Pavel Emelyanov wrote:
> Greg KH wrote:
> > On Wed, Mar 05, 2008 at 04:04:43PM +0300, Pavel Emelyanov wrote:
> >> With CONFIG_SYSFS not set got this on boot:
> >>
> >> kobject: '<NULL>' (f88774c8): is not initialized, yet kobject_put() is
> >> ------------[ cut here ]------------
> >> WARNING: at lib/kobject.c:652 kobject_put+0x29/0x3c()
> >> Modules linked in: sky2 e1000
> >> Pid: 1303, comm: modprobe Not tainted 2.6.25-rc3-mm1 #79
> >> [<c041855b>] warn_on_slowpath+0x40/0x66
> >> [<c041c687>] irq_exit+0x50/0x67
> >> [<c040cc70>] smp_apic_timer_interrupt+0x6e/0x7a
> >> [<c0403380>] apic_timer_interrupt+0x28/0x30
> >> [<c0418e36>] vprintk+0x2b0/0x2df
> >> [<c04118e8>] __update_rq_clock+0x1d/0x110
> >> [<c0565e43>] schedule_timeout+0x13/0x86
> >>
> >> [<c05656c2>] wait_for_common+0xd1/0x123
> >> [<c0418e79>] printk+0x14/0x18
> >> [<c04b34bf>] kobject_put+0x29/0x3c
> >> [<c0431e39>] free_module+0x2f/0x72
> >> [<c04328dd>] sys_init_module+0xa61/0x15d2
> >>
> >> [<c04ba863>] pci_bus_read_config_byte+0x0/0x58
> >> [<c0454f87>] vfs_read+0x6c/0x8b
> >> [<c0455323>] sys_read+0x3c/0x63
> >> [<c04028b2>] sysenter_past_esp+0x5f/0x85
> >
> > Hm, but with CONFIG_SYSFS set this does not show up?
>
> Yes, with CONFIG_SYSFS set everything is OK.

Thanks. Odds are we have some sysfs issue in the module core, that code
really needs to be refactored, I'll go work on it to see if we can try
to isolate all of that code into one file, which should help find these
kinds of things easier.

thanks,

greg k-h

2008-03-05 17:45:38

by Andi Kleen

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

[email protected] writes:
>
> So we're in the same 4K as the VDSO64_* values, but some 0x4fe past the
> gtod_data. Anybody got a hint as to what the heck it was doing?

Try this patch:

Remove unlikelies in vsyscall path

Remove unlikely in vsyscall path that conflict with unlikely profiling.
The unlikelies shouldn't be needed anyways because gcc predicts
condition leading to early return as unlikely by default and
for the loops it shouldn't make much difference

Signed-off-by: Andi Kleen <[email protected]>

Index: linux/arch/x86/kernel/vsyscall_64.c
===================================================================
--- linux.orig/arch/x86/kernel/vsyscall_64.c
+++ linux/arch/x86/kernel/vsyscall_64.c
@@ -128,7 +128,7 @@ static __always_inline void do_vgettimeo
seq = read_seqbegin(&__vsyscall_gtod_data.lock);

vread = __vsyscall_gtod_data.clock.vread;
- if (unlikely(!__vsyscall_gtod_data.sysctl_enabled || !vread)) {
+ if (!__vsyscall_gtod_data.sysctl_enabled || !vread) {
gettimeofday(tv,NULL);
return;
}
@@ -169,7 +169,7 @@ time_t __vsyscall(1) vtime(time_t *t)
{
struct timeval tv;
time_t result;
- if (unlikely(!__vsyscall_gtod_data.sysctl_enabled))
+ if (!__vsyscall_gtod_data.sysctl_enabled)
return time_syscall(t);

vgettimeofday(&tv, NULL);
Index: linux/arch/x86/vdso/vclock_gettime.c
===================================================================
--- linux.orig/arch/x86/vdso/vclock_gettime.c
+++ linux/arch/x86/vdso/vclock_gettime.c
@@ -48,7 +48,7 @@ static noinline int do_realtime(struct t
ts->tv_sec = gtod->wall_time_sec;
ts->tv_nsec = gtod->wall_time_nsec;
ns = vgetns();
- } while (unlikely(read_seqretry(&gtod->lock, seq)));
+ } while (read_seqretry(&gtod->lock, seq));
timespec_add_ns(ts, ns);
return 0;
}
@@ -77,7 +77,7 @@ static noinline int do_monotonic(struct
ns = gtod->wall_time_nsec + vgetns();
secs += gtod->wall_to_monotonic.tv_sec;
ns += gtod->wall_to_monotonic.tv_nsec;
- } while (unlikely(read_seqretry(&gtod->lock, seq)));
+ } while (read_seqretry(&gtod->lock, seq));
vset_normalized_timespec(ts, secs, ns);
return 0;
}
@@ -105,7 +105,7 @@ int __vdso_gettimeofday(struct timeval *
sizeof(*tv) != sizeof(struct timespec));
do_realtime((struct timespec *)tv);
tv->tv_usec /= 1000;
- if (unlikely(tz != NULL)) {
+ if (tz != NULL) {
/* This relies on gcc inlining the memcpy. We'll notice
if it ever fails to do so. */
memcpy(tz, &gtod->sys_tz, sizeof(struct timezone));

2008-03-05 18:03:21

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

On Wed, 05 Mar 2008 18:45:13 +0100 Andi Kleen <[email protected]> wrote:

> [email protected] writes:
> >
> > So we're in the same 4K as the VDSO64_* values, but some 0x4fe past the
> > gtod_data. Anybody got a hint as to what the heck it was doing?
>
> Try this patch:
>
> Remove unlikelies in vsyscall path
>
> Remove unlikely in vsyscall path that conflict with unlikely profiling.
> The unlikelies shouldn't be needed anyways because gcc predicts
> condition leading to early return as unlikely by default and
> for the loops it shouldn't make much difference
>
> --- linux.orig/arch/x86/kernel/vsyscall_64.c
> +++ linux/arch/x86/kernel/vsyscall_64.c
> ...
> --- linux.orig/arch/x86/vdso/vclock_gettime.c
> +++ linux/arch/x86/vdso/vclock_gettime.c

Yes, but both those files now have:

/*
* likely and unlikely explode when used in vdso in combination with
* profile-likely-unlikely-macros.patch
*/
#undef likely
#define likely(x) (x)
#undef unlikely
#define unlikely(x) (x)

at the top, so it'll be something else. Perhaps a `likely' snuck in via an
inline in a header file. It would be better to add a #define DONT_DO_THAT
at the top of arch/x86/kernel/vsyscall_64.c and
arch/x86/vdso/vclock_gettime.c, then use that to defeat likely-profiling.

arch/x86/kernel/vsyscall_64.c | 11 ++---------
arch/x86/vdso/vclock_gettime.c | 11 ++---------
include/linux/compiler.h | 3 ++-
3 files changed, 6 insertions(+), 19 deletions(-)

diff -puN arch/x86/kernel/vsyscall_64.c~profile-likely-unlikely-macros-fix arch/x86/kernel/vsyscall_64.c
--- a/arch/x86/kernel/vsyscall_64.c~profile-likely-unlikely-macros-fix
+++ a/arch/x86/kernel/vsyscall_64.c
@@ -17,6 +17,8 @@
* want per guest time just set the kernel.vsyscall64 sysctl to 0.
*/

+#define SUPPRESS_LIKELY_PROFILING
+
#include <linux/time.h>
#include <linux/init.h>
#include <linux/kernel.h>
@@ -46,15 +48,6 @@
#define __syscall_clobber "r11","cx","memory"

/*
- * likely and unlikely explode when used in vdso in combination with
- * profile-likely-unlikely-macros.patch
- */
-#undef likely
-#define likely(x) (x)
-#undef unlikely
-#define unlikely(x) (x)
-
-/*
* vsyscall_gtod_data contains data that is :
* - readonly from vsyscalls
* - written by timer interrupt or systcl (/proc/sys/kernel/vsyscall64)
diff -puN arch/x86/vdso/vclock_gettime.c~profile-likely-unlikely-macros-fix arch/x86/vdso/vclock_gettime.c
--- a/arch/x86/vdso/vclock_gettime.c~profile-likely-unlikely-macros-fix
+++ a/arch/x86/vdso/vclock_gettime.c
@@ -9,6 +9,8 @@
* Also alternative() doesn't work.
*/

+#define SUPPRESS_LIKELY_PROFILING
+
#include <linux/kernel.h>
#include <linux/posix-timers.h>
#include <linux/time.h>
@@ -23,15 +25,6 @@

#define gtod vdso_vsyscall_gtod_data

-/*
- * likely and unlikely explode when used in vdso in combination with
- * profile-likely-unlikely-macros.patch
- */
-#undef likely
-#define likely(x) (x)
-#undef unlikely
-#define unlikely(x) (x)
-
static long vdso_fallback_gettime(long clock, struct timespec *ts)
{
long ret;
diff -puN include/linux/compiler.h~profile-likely-unlikely-macros-fix include/linux/compiler.h
--- a/include/linux/compiler.h~profile-likely-unlikely-macros-fix
+++ a/include/linux/compiler.h
@@ -51,7 +51,8 @@ extern void __chk_io_ptr(const volatile
# include <linux/compiler-intel.h>
#endif

-#if defined(CONFIG_PROFILE_LIKELY) && !(defined(CONFIG_MODULE_UNLOAD) && defined(MODULE))
+#if defined(CONFIG_PROFILE_LIKELY) && !defined(SUPPRESS_LIKELY_PROFILING) && \
+ !(defined(CONFIG_MODULE_UNLOAD) && defined(MODULE))
struct likeliness {
const char *func;
char *file;
_

2008-03-05 18:21:40

by Andi Kleen

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

> Yes, but both those files now have:
>
> /*
> * likely and unlikely explode when used in vdso in combination with
> * profile-likely-unlikely-macros.patch
> */
> #undef likely
> #define likely(x) (x)
> #undef unlikely
> #define unlikely(x) (x)

>
> at the top, so it'll be something else. Perhaps a `likely' snuck in via an

I see.

> inline in a header file. It would be better to add a #define DONT_DO_THAT

I think you need to do it differently. Not undef/define, but set
some symbol that is checked by the unlikely profiler and it won't
enable itself with that symbol set. Then header files would be covered too.


> at the top of arch/x86/kernel/vsyscall_64.c and
> arch/x86/vdso/vclock_gettime.c, then use that to defeat likely-profiling.

Possible. The problem is that there are now vsyscall functions in
other files too, especially hpet_64.c and tsc_64.c

Perhaps this is something that should be just checked in modpost instead.
Any external references from the vsyscall section to another section
should be flag'ed as error (cc'ed Sam in case he wants to look at that)

-Andi

2008-03-05 21:31:16

by Badari Pulavarty

[permalink] [raw]
Subject: 2.6.25-rc3-mm1 ppc64 boot hang

On Tue, 2008-03-04 at 01:19 -0800, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>

Hi Andrew,

Not able to boot 2.6.25-rc3-mm1 my ppc64 box.
2.6.25-rc2-mm1 and 2.6.25-rc3 boots fine.

I applied slab.c fix also.

Any other known issues ? My config file attached.
Here are the messages on the console.

Thanks,
Badari

Linux/PowerPC load: root=/dev/sda3 selinux=0 elevator=cfq numa=debug
kernelcore=1024M
Finalizing device tree... using OF tree (promptr=00c39a50)
OF stdout device is: /vdevice/vty@30000000
Hypertas detected, assuming LPAR !
command line: root=/dev/sda3 selinux=0 elevator=cfq numa=debug
kernelcore=1024M
memory layout at init:
alloc_bottom : 00000000023d0000
alloc_top : 0000000008000000
alloc_top_hi : 0000000072000000
rmo_top : 0000000008000000
ram_top : 0000000072000000
Looking for displays
instantiating rtas at 0x00000000077ca000 ... done
0000000000000000 : boot cpu 0000000000000000
0000000000000002 : starting cpu hw idx 0000000000000002... done
copying OF device tree ...
Building dt strings...
Building dt structure...
Device tree strings 0x00000000023d1000 -> 0x00000000023d21cf
Device tree struct 0x00000000023d3000 -> 0x00000000023e0000
Calling quiesce ...
returning from prom_init


#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.25-rc3-mm1
# Wed Mar 5 10:34:39 2008
#
CONFIG_PPC64=y

#
# Processor support
#
# CONFIG_POWER4_ONLY is not set
CONFIG_POWER3=y
CONFIG_POWER4=y
# CONFIG_TUNE_CELL is not set
CONFIG_PPC_FPU=y
# CONFIG_ALTIVEC is not set
CONFIG_PPC_STD_MMU=y
CONFIG_PPC_MM_SLICES=y
CONFIG_VIRT_CPU_ACCOUNTING=y
CONFIG_SMP=y
CONFIG_NR_CPUS=32
CONFIG_64BIT=y
CONFIG_WORD_SIZE=64
CONFIG_PPC_MERGE=y
CONFIG_MMU=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_IRQ_PER_CPU=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_ARCH_HAS_ILOG2_U32=y
CONFIG_ARCH_HAS_ILOG2_U64=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_ARCH_NO_VIRT_TO_BUS=y
CONFIG_PPC=y
CONFIG_EARLY_PRINTK=y
CONFIG_COMPAT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_PPC_OF=y
CONFIG_OF=y
CONFIG_PPC_UDBG_16550=y
CONFIG_GENERIC_TBSYNC=y
CONFIG_AUDIT_ARCH=y
CONFIG_GENERIC_BUG=y
# CONFIG_DEFAULT_UIMAGE is not set
CONFIG_HIBERNATE_64=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
# CONFIG_PPC_DCR_NATIVE is not set
# CONFIG_PPC_DCR_MMIO is not set
# CONFIG_PPC_OF_PLATFORM_PCI is not set
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=15
CONFIG_CGROUPS=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_NS=y
# CONFIG_CPUSETS is not set
CONFIG_GROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_RT_GROUP_SCHED=y
CONFIG_USER_SCHED=y
# CONFIG_CGROUP_SCHED is not set
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
CONFIG_CGROUP_MEM_RES_CTLR=y
CONFIG_SYSFS_DEPRECATED=y
CONFIG_RELAY=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
# CONFIG_USER_NS is not set
CONFIG_PID_NS=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_SYSCTL_SYSCALL=y
CONFIG_SYSCTL_SYSCALL_CHECK=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_COMPAT_BRK=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
CONFIG_PROFILING=y
CONFIG_MARKERS=y
CONFIG_OPROFILE=y
CONFIG_HAVE_OPROFILE=y
CONFIG_KPROBES=y
CONFIG_KRETPROBES=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_KMOD is not set
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_BLK_DEV_IO_TRACE=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_BLOCK_COMPAT=y

#
# IO Schedulers
#
CONFIG_IOSCHED_CFQ=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_NOOP=y
CONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_AS is not set
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"
CONFIG_CLASSIC_RCU=y
# CONFIG_PREEMPT_RCU is not set

#
# Platform support
#
CONFIG_PPC_MULTIPLATFORM=y
# CONFIG_PPC_82xx is not set
# CONFIG_PPC_83xx is not set
# CONFIG_PPC_86xx is not set
CONFIG_PPC_PSERIES=y
# CONFIG_PPC_SPLPAR is not set
CONFIG_EEH=y
CONFIG_SCANLOG=y
# CONFIG_LPARCFG is not set
# CONFIG_PPC_ISERIES is not set
# CONFIG_PPC_MPC512x is not set
# CONFIG_PPC_MPC5121 is not set
CONFIG_PPC_PMAC=y
CONFIG_PPC_PMAC64=y
# CONFIG_PPC_MAPLE is not set
# CONFIG_PPC_PASEMI is not set
# CONFIG_PPC_CELLEB is not set
# CONFIG_PPC_PS3 is not set
# CONFIG_PPC_CELL is not set
# CONFIG_PPC_CELL_NATIVE is not set
# CONFIG_PPC_IBM_CELL_BLADE is not set
# CONFIG_PQ2ADS is not set
CONFIG_PPC_NATIVE=y
# CONFIG_UDBG_RTAS_CONSOLE is not set
CONFIG_XICS=y
# CONFIG_IPIC is not set
CONFIG_MPIC=y
# CONFIG_MPIC_WEIRD is not set
CONFIG_PPC_I8259=y
CONFIG_U3_DART=y
CONFIG_PPC_RTAS=y
CONFIG_RTAS_ERROR_LOGGING=y
CONFIG_RTAS_PROC=y
# CONFIG_RTAS_FLASH is not set
# CONFIG_MMIO_NVRAM is not set
CONFIG_MPIC_U3_HT_IRQS=y
CONFIG_IBMVIO=y
# CONFIG_IBMEBUS is not set
# CONFIG_PPC_MPC106 is not set
CONFIG_PPC_970_NAP=y
# CONFIG_PPC_INDIRECT_IO is not set
# CONFIG_GENERIC_IOMAP is not set
# CONFIG_CPU_FREQ is not set
# CONFIG_FSL_ULI1575 is not set

#
# Kernel options
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
# CONFIG_SCHED_HRTICK is not set
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_RCU_TRACE=y
CONFIG_BINFMT_ELF=y
CONFIG_COMPAT_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_FORCE_MAX_ZONEORDER=13
CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y
# CONFIG_IOMMU_VMERGE is not set
CONFIG_IOMMU_HELPER=y
CONFIG_HOTPLUG_CPU=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_HAS_WALK_MEMORY=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
CONFIG_IRQ_ALL_CPUS=y
CONFIG_NUMA=y
CONFIG_NODES_SHIFT=4
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_SELECT_MEMORY_MODEL=y
# CONFIG_FLATMEM_MANUAL is not set
# CONFIG_DISCONTIGMEM_MANUAL is not set
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_MEMORY_HOTPLUG=y
CONFIG_MEMORY_HOTPLUG_SPARSE=y
CONFIG_MEMORY_HOTREMOVE=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_MIGRATION=y
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_ARCH_MEMORY_PROBE=y
CONFIG_NODES_SPAN_OTHER_NODES=y
# CONFIG_PPC_HAS_HASH_64K is not set
# CONFIG_PPC_64K_PAGES is not set
# CONFIG_SCHED_SMT is not set
CONFIG_PROC_DEVICETREE=y
# CONFIG_CMDLINE_BOOL is not set
# CONFIG_PM is not set
CONFIG_SECCOMP=y
CONFIG_ISA_DMA_API=y

#
# Bus options
#
CONFIG_ZONE_DMA=y
CONFIG_GENERIC_ISA_DMA=y
# CONFIG_PPC_INDIRECT_PCI is not set
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_SYSCALL=y
# CONFIG_PCIEPORTBUS is not set
CONFIG_ARCH_SUPPORTS_MSI=y
# CONFIG_PCI_MSI is not set
CONFIG_PCI_LEGACY=y
# CONFIG_PCI_DEBUG is not set
# CONFIG_PCCARD is not set
CONFIG_HOTPLUG_PCI=y
# CONFIG_HOTPLUG_PCI_FAKE is not set
# CONFIG_HOTPLUG_PCI_CPCI is not set
# CONFIG_HOTPLUG_PCI_SHPC is not set
CONFIG_HOTPLUG_PCI_RPA=y
CONFIG_HOTPLUG_PCI_RPA_DLPAR=y
CONFIG_KERNEL_START=0xc000000000000000

#
# Networking
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
CONFIG_UNIX=y
CONFIG_XFRM=y
# CONFIG_XFRM_USER is not set
# CONFIG_XFRM_SUB_POLICY is not set
# CONFIG_XFRM_MIGRATE is not set
# CONFIG_XFRM_STATISTICS is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_PNP is not set
CONFIG_NET_IPIP=y
# CONFIG_NET_IPGRE is not set
# CONFIG_IP_MROUTE 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_XFRM_TUNNEL is not set
CONFIG_INET_TUNNEL=y
CONFIG_INET_XFRM_MODE_TRANSPORT=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=y
# CONFIG_INET_LRO is not set
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
# CONFIG_IPV6 is not set
# CONFIG_INET6_XFRM_TUNNEL is not set
# CONFIG_INET6_TUNNEL is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETFILTER is not set
# CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set
# CONFIG_TIPC 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_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_SCHED is not set

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_NET_TCPPROBE is not set
# CONFIG_HAMRADIO is not set
# CONFIG_CAN is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_AF_RXRPC is not set

#
# Wireless
#
# CONFIG_CFG80211 is not set
# CONFIG_WIRELESS_EXT is not set
# CONFIG_MAC80211 is not set
# CONFIG_IEEE80211 is not set
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
# CONFIG_MTD is not set
CONFIG_OF_DEVICE=y
# CONFIG_PARPORT is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_FD=y
# 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=y
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
CONFIG_BLK_DEV_NBD=y
# CONFIG_BLK_DEV_SX8 is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
# CONFIG_BLK_DEV_XIP is not set
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
CONFIG_MISC_DEVICES=y
# CONFIG_PHANTOM is not set
# CONFIG_EEPROM_93CX6 is not set
# CONFIG_SGI_IOC4 is not set
# CONFIG_TIFM_CORE is not set
# CONFIG_ENCLOSURE_SERVICES is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

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

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

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=m
# CONFIG_SCSI_ISCSI_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP 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_AIC94XX is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
# CONFIG_MEGARAID_SAS is not set
# CONFIG_SCSI_HPTIOP 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_IBMVSCSI is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_MVSAS is not set
# CONFIG_SCSI_STEX is not set
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
CONFIG_SCSI_IPR=y
CONFIG_SCSI_IPR_TRACE=y
CONFIG_SCSI_IPR_DUMP=y
# CONFIG_SCSI_QLOGIC_1280 is not set
CONFIG_SCSI_QLA_FC=m
# CONFIG_SCSI_QLA_ISCSI is not set
# CONFIG_SCSI_LPFC is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SRP is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
# CONFIG_SATA_AHCI is not set
# CONFIG_SATA_SVW is not set
# CONFIG_ATA_PIIX is not set
# CONFIG_SATA_MV is not set
# CONFIG_SATA_NV is not set
# CONFIG_PDC_ADMA is not set
# CONFIG_SATA_QSTOR is not set
# CONFIG_SATA_PROMISE is not set
# CONFIG_SATA_SX4 is not set
# CONFIG_SATA_SIL is not set
# CONFIG_SATA_SIL24 is not set
# CONFIG_SATA_SIS is not set
# CONFIG_SATA_ULI is not set
# CONFIG_SATA_VIA is not set
# CONFIG_SATA_VITESSE is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_PATA_ALI is not set
# CONFIG_PATA_AMD is not set
# CONFIG_PATA_ARTOP is not set
# CONFIG_PATA_ATIIXP is not set
# CONFIG_PATA_CMD640_PCI is not set
# CONFIG_PATA_CMD64X is not set
# CONFIG_PATA_CS5520 is not set
# CONFIG_PATA_CS5530 is not set
# CONFIG_PATA_CYPRESS is not set
# CONFIG_PATA_EFAR is not set
# CONFIG_ATA_GENERIC is not set
# CONFIG_PATA_HPT366 is not set
# CONFIG_PATA_HPT37X is not set
# CONFIG_PATA_HPT3X2N is not set
# CONFIG_PATA_HPT3X3 is not set
# CONFIG_PATA_IT821X is not set
# CONFIG_PATA_IT8213 is not set
# CONFIG_PATA_JMICRON is not set
# CONFIG_PATA_TRIFLEX is not set
# CONFIG_PATA_MARVELL is not set
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_OLDPIIX is not set
# CONFIG_PATA_NETCELL is not set
# CONFIG_PATA_NINJA32 is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_NS87415 is not set
# CONFIG_PATA_OPTI is not set
# CONFIG_PATA_OPTIDMA is not set
# CONFIG_PATA_PDC_OLD is not set
# CONFIG_PATA_RADISYS is not set
# CONFIG_PATA_RZ1000 is not set
# CONFIG_PATA_SC1200 is not set
# CONFIG_PATA_SERVERWORKS is not set
# CONFIG_PATA_PDC2027X is not set
# CONFIG_PATA_SIL680 is not set
# CONFIG_PATA_SIS is not set
# CONFIG_PATA_VIA is not set
# CONFIG_PATA_WINBOND is not set
# CONFIG_PATA_PLATFORM is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=y
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
# CONFIG_MD_RAID10 is not set
# CONFIG_MD_RAID456 is not set
# CONFIG_MD_MULTIPATH is not set
# CONFIG_MD_FAULTY is not set
# CONFIG_BLK_DEV_DM is not set
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#
# CONFIG_FIREWIRE is not set
# CONFIG_IEEE1394 is not set
# CONFIG_I2O is not set
CONFIG_MACINTOSH_DRIVERS=y
# CONFIG_ADB_PMU is not set
# CONFIG_PMAC_SMU is not set
# CONFIG_MAC_EMUMOUSEBTN is not set
# CONFIG_WINDFARM is not set
# CONFIG_PMAC_RACKMETER is not set
CONFIG_NETDEVICES=y
# CONFIG_NETDEVICES_MULTIQUEUE is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_VETH is not set
# CONFIG_ARCNET is not set
# CONFIG_PHYLIB is not set
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_CASSINI is not set
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=y
# CONFIG_TYPHOON is not set
# CONFIG_NET_TULIP is not set
# CONFIG_HP100 is not set
# CONFIG_IBMVETH is not set
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IBM_NEW_EMAC_RGMII is not set
# CONFIG_IBM_NEW_EMAC_TAH is not set
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
# CONFIG_PCNET32_NAPI is not set
# CONFIG_AMD8111_ETH is not set
# CONFIG_ADAPTEC_STARFIRE is not set
# CONFIG_B44 is not set
# CONFIG_FORCEDETH is not set
# CONFIG_EEPRO100 is not set
CONFIG_E100=y
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
# CONFIG_R6040 is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_VIA_RHINE is not set
# CONFIG_SC92031 is not set
CONFIG_NETDEV_1000=y
CONFIG_ACENIC=y
CONFIG_ACENIC_OMIT_TIGON_I=y
# CONFIG_DL2K is not set
CONFIG_E1000=y
# CONFIG_E1000_NAPI is not set
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
# CONFIG_E1000E is not set
# CONFIG_E1000E_ENABLED is not set
# CONFIG_IP1000 is not set
# CONFIG_IGB 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 is not set
# CONFIG_VIA_VELOCITY is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
# CONFIG_QLA3XXX is not set
# CONFIG_ATL1 is not set
CONFIG_NETDEV_10000=y
# CONFIG_CHELSIO_T1 is not set
# CONFIG_CHELSIO_T3 is not set
# CONFIG_IXGBE is not set
# CONFIG_IXGB is not set
# CONFIG_S2IO is not set
# CONFIG_MYRI10GE is not set
# CONFIG_NETXEN_NIC is not set
# CONFIG_NIU is not set
# CONFIG_PASEMI_MAC is not set
# CONFIG_MLX4_CORE is not set
# CONFIG_TEHUTI is not set
# CONFIG_BNX2X is not set
# CONFIG_TR is not set

#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_ISDN is not set
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y
# CONFIG_INPUT_FF_MEMLESS is not set
# CONFIG_INPUT_POLLDEV is not set

#
# 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_EVDEV is not set
# 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_KEYBOARD_STOWAWAY is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
# CONFIG_MOUSE_PS2_TOUCHKIT is not set
# CONFIG_MOUSE_PS2_ELANTECH is not set
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=y
# CONFIG_INPUT_ATI_REMOTE is not set
# CONFIG_INPUT_ATI_REMOTE2 is not set
# CONFIG_INPUT_KEYSPAN_REMOTE is not set
# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_YEALINK is not set
# CONFIG_INPUT_UINPUT is not set

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT 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_VT_HW_CONSOLE_BINDING is not set
CONFIG_DEVKMEM=y
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_NOZOMI is not set

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

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
# CONFIG_SERIAL_PMACZILOG is not set
# CONFIG_SERIAL_ICOM is not set
# CONFIG_SERIAL_JSM is not set
# CONFIG_SERIAL_OF_PLATFORM is not set
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
CONFIG_HVC_DRIVER=y
CONFIG_HVC_CONSOLE=y
# CONFIG_HVC_RTAS is not set
# CONFIG_HVCS is not set
# CONFIG_IPMI_HANDLER is not set
CONFIG_HW_RANDOM=m
# CONFIG_GEN_RTC is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
CONFIG_RAW_DRIVER=y
CONFIG_MAX_RAW_DEVS=256
# CONFIG_HANGCHECK_TIMER is not set
# CONFIG_TCG_TPM is not set
CONFIG_DEVPORT=y
# CONFIG_I2C is not set
# CONFIG_SPI is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
CONFIG_HWMON=y
# CONFIG_HWMON_VID is not set
# CONFIG_SENSORS_I5K_AMB is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_F71882FG is not set
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
# CONFIG_SENSORS_W83627HF is not set
# CONFIG_SENSORS_W83627EHF is not set
# CONFIG_HWMON_DEBUG_CHIP is not set
CONFIG_THERMAL=y
# CONFIG_WATCHDOG is not set

#
# Sonics Silicon Backplane
#
CONFIG_SSB_POSSIBLE=y
# CONFIG_SSB is not set

#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set
# CONFIG_DVB_CORE is not set
CONFIG_DAB=y

#
# Graphics support
#
# CONFIG_AGP is not set
# CONFIG_DRM is not set
# CONFIG_VGASTATE is not set
CONFIG_VIDEO_OUTPUT_CONTROL=m
CONFIG_FB=y
# CONFIG_FIRMWARE_EDID is not set
# CONFIG_FB_DDC is not set
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
CONFIG_FB_FOREIGN_ENDIAN=y
CONFIG_FB_BOTH_ENDIAN=y
# CONFIG_FB_BIG_ENDIAN is not set
# CONFIG_FB_LITTLE_ENDIAN is not set
# CONFIG_FB_SYS_FOPS is not set
CONFIG_FB_DEFERRED_IO=y
# CONFIG_FB_SVGALIB is not set
CONFIG_FB_MACMODES=y
# CONFIG_FB_BACKLIGHT is not set
# CONFIG_FB_MODE_HELPERS is not set
CONFIG_FB_TILEBLITTING=y

#
# Frame buffer hardware drivers
#
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
CONFIG_FB_OF=y
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
# CONFIG_FB_UVESA is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set
CONFIG_FB_MATROX=y
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
# CONFIG_FB_MATROX_G is not set
# CONFIG_FB_MATROX_I2C is not set
CONFIG_FB_MATROX_MULTIHEAD=y
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_S3 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_VT8623 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set

#
# Display device support
#
# CONFIG_DISPLAY_SUPPORT is not set

#
# Console display driver support
#
# CONFIG_VGA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y

#
# Sound
#
# CONFIG_SOUND is not set
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
# CONFIG_HIDRAW is not set
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
# CONFIG_USB is not set

#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
#
# CONFIG_USB_GADGET is not set
# CONFIG_MMC is not set
# CONFIG_MEMSTICK is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_INFINIBAND is not set
# CONFIG_EDAC is not set
# CONFIG_RTC_CLASS is not set
# CONFIG_DMADEVICES is not set
# CONFIG_UIO is not set

#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
# CONFIG_EXT3_FS_XATTR is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
# CONFIG_REISER4_FS is not set
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
# CONFIG_REISERFS_FS_XATTR is not set
CONFIG_JFS_FS=y
# CONFIG_JFS_POSIX_ACL is not set
# CONFIG_JFS_SECURITY is not set
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not set
# CONFIG_FS_POSIX_ACL is not set
CONFIG_XFS_FS=y
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_SECURITY is not set
# CONFIG_XFS_POSIX_ACL is not set
# CONFIG_XFS_RT is not set
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set
CONFIG_DNOTIFY=y
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
# CONFIG_QUOTA is not set
CONFIG_AUTOFS_FS=y
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set

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

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

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
# CONFIG_PROC_KCORE is not set
CONFIG_PROC_SYSCTL=y
CONFIG_SYSFS=y
# CONFIG_TMPFS is not set
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
# CONFIG_CONFIGFS_FS is not set

#
# Layered filesystems
#
CONFIG_UNION_FS=y
CONFIG_UNION_FS_XATTR=y
# CONFIG_UNION_FS_DEBUG is not set

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
CONFIG_CRAMFS=y
# CONFIG_VXFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
CONFIG_NFS_V4=y
# CONFIG_NFS_DIRECTIO is not set
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
# CONFIG_NFSD_V4 is not set
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
# CONFIG_SUNRPC_BIND34 is not set
CONFIG_RPCSEC_GSS_KRB5=y
# CONFIG_RPCSEC_GSS_SPKM3 is not set
# CONFIG_SMB_FS is not set
CONFIG_CIFS=y
# CONFIG_CIFS_STATS is not set
# CONFIG_CIFS_WEAK_PW_HASH is not set
# CONFIG_CIFS_XATTR is not set
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_EXPERIMENTAL is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set

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

#
# Library routines
#
CONFIG_BITREVERSE=y
# CONFIG_CRC_CCITT is not set
CONFIG_CRC16=m
# CONFIG_CRC_ITU_T is not set
CONFIG_CRC32=y
# CONFIG_CRC7 is not set
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_HAVE_LMB=y

#
# Kernel hacking
#
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
CONFIG_PAGE_OWNER=y
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_DETECT_SOFTLOCKUP=y
CONFIG_SCHED_DEBUG=y
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_WRITECOUNT is not set
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_PROFILE_LIKELY is not set
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_DEBUG_SYNCHRO_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_KPROBES_SANITY_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_LKDTM is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_SAMPLES is not set
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_HCALL_STATS is not set
# CONFIG_DEBUGGER is not set
# CONFIG_IRQSTACKS is not set
# CONFIG_VIRQ_DEBUG is not set
# CONFIG_BOOTX_TEXT is not set
# CONFIG_PPC_EARLY_DEBUG is not set

#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_BLKCIPHER=y
# CONFIG_CRYPTO_SEQIV is not set
CONFIG_CRYPTO_MANAGER=y
# CONFIG_CRYPTO_HMAC is not set
# CONFIG_CRYPTO_XCBC is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
# CONFIG_CRYPTO_SHA1 is not set
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_WP512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_GF128MUL is not set
CONFIG_CRYPTO_ECB=m
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=m
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_XTS is not set
# CONFIG_CRYPTO_CTR is not set
# CONFIG_CRYPTO_GCM is not set
# CONFIG_CRYPTO_CCM is not set
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not set
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_TWOFISH is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_AES is not set
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST6 is not set
# CONFIG_CRYPTO_TEA is not set
# CONFIG_CRYPTO_ARC4 is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_ANUBIS is not set
# CONFIG_CRYPTO_SEED is not set
# CONFIG_CRYPTO_SALSA20 is not set
# CONFIG_CRYPTO_DEFLATE is not set
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_CRC32C is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_TEST is not set
# CONFIG_CRYPTO_AUTHENC is not set
# CONFIG_CRYPTO_LZO is not set
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_DEV_HIFN_795X is not set
# CONFIG_PPC_CLOCK is not set

2008-03-05 21:53:55

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

On Wed, 05 Mar 2008 18:45:13 +0100, Andi Kleen said:
> [email protected] writes:
> >
> > So we're in the same 4K as the VDSO64_* values, but some 0x4fe past the
> > gtod_data. Anybody got a hint as to what the heck it was doing?
>
> Try this patch:
>
> Remove unlikelies in vsyscall path

Nope, sorry... same behavior. Apparently it's a (un)likely someplace
else...

I'm trying to figure out what's at 0x9be into the vdso, but not having
a lot of luck.


Attachments:
(No filename) (226.00 B)

2008-03-05 21:55:54

by Andi Kleen

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

On Wed, Mar 05, 2008 at 02:59:57PM -0500, [email protected] wrote:
> On Wed, 05 Mar 2008 18:45:13 +0100, Andi Kleen said:
> > [email protected] writes:
> > >
> > > So we're in the same 4K as the VDSO64_* values, but some 0x4fe past the
> > > gtod_data. Anybody got a hint as to what the heck it was doing?
> >
> > Try this patch:
> >
> > Remove unlikelies in vsyscall path
>
> Nope, sorry... same behavior. Apparently it's a (un)likely someplace
> else...
>
> I'm trying to figure out what's at 0x9be into the vdso, but not having
> a lot of luck.

You can do objdump -Sr on the vdso/vsyscall object files and see
if there are any external references to unlikely related functions. If yes
the problem is in that function

-Andi

2008-03-05 21:56:25

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 ppc64 boot hang

On Wed, 05 Mar 2008 13:34:14 -0800
Badari Pulavarty <[email protected]> wrote:

> On Tue, 2008-03-04 at 01:19 -0800, Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
> >
>
> Hi Andrew,
>
> Not able to boot 2.6.25-rc3-mm1 my ppc64 box.
> 2.6.25-rc2-mm1 and 2.6.25-rc3 boots fine.
>
> I applied slab.c fix also.
>
> Any other known issues ? My config file attached.
> Here are the messages on the console.

The semaphore consolidation code enables interrupts early in boot, when it
shouldn't. This tends to make powerpc blow up. Could be that this is what
you're hitting.

Matthew, is this ging to be fixed soon?

Thanks.

2008-03-05 22:27:19

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

On Wed, 05 Mar 2008 10:02:21 PST, Andrew Morton said:

> at the top, so it'll be something else. Perhaps a `likely' snuck in via an
> inline in a header file. It would be better to add a #define DONT_DO_THAT
> at the top of arch/x86/kernel/vsyscall_64.c and
> arch/x86/vdso/vclock_gettime.c, then use that to defeat likely-profiling.
>
> arch/x86/kernel/vsyscall_64.c | 11 ++---------
> arch/x86/vdso/vclock_gettime.c | 11 ++---------
> include/linux/compiler.h | 3 ++-
> 3 files changed, 6 insertions(+), 19 deletions(-)

Confirming that this patch works and my system goes multi-user cleanly.

Actual numbers after about 10 minutes of uptime:

% wc -l /proc/likely_prof
2635 /proc/likely_prof
% grep '^[^ ]' /proc/likely_prof
Likely Profiling Results
[+- ] Type | # True | # False | Function:Filename@Line
+unlikely | 1| 0 in_dev_get()@:include/linux/inetdevice.h@185
+unlikely | 513| 0 dst_input()@:include/net/dst.h@254
-likely | 0| 148 ip6_mc_input()@:net/ipv6/ip6_input.c@271
-likely | 0| 1 sock_error()@:include/net/sock.h@1211
-likely | 851| 1219 tcp_transmit_skb()@:net/ipv4/tcp_output.c@493
+unlikely | 1| 0 signal_pending()@:include/linux/sched.h@1927
-likely | 0| 1172946 audit_syscall_entry()@:kernel/auditsc.c@1522
+unlikely | 1172716| 0 syscall_trace_enter()@:arch/x86/kernel/ptrace.c@1556
-likely | 0| 1173020 audit_syscall_exit()@:kernel/auditsc.c@1551
+unlikely | 1172831| 0 syscall_trace_leave()@:arch/x86/kernel/ptrace.c@1573
-likely | 0| 1272 audit_alloc()@:kernel/auditsc.c@841
+unlikely | 3| 0 icmp_unreach()@:net/ipv4/icmp.c@773
+unlikely | 2| 1 nf_ct_attach()@:net/netfilter/core.c@230
-likely | 0| 2 dst_gc_task()@:net/core/dst.c@82
+unlikely | 143| 61 fput_light()@:include/linux/file.h@77
+unlikely | 892| 424 _read_unlock_irqrestore()@:kernel/spinlock.c@375
+unlikely | 28| 0 sched_move_task()@:kernel/sched.c@7835
+unlikely | 28| 0 sched_move_task()@:kernel/sched.c@7828
+unlikely | 108| 0 verify_export_symbols()@:kernel/module.c@1401
+unlikely | 313| 0 verify_export_symbols()@:kernel/module.c@1393
+unlikely | 14| 0 ll_front_merge_fn()@:block/blk-merge.c@347
-likely | 17| 1150 audit_free()@:kernel/auditsc.c@1428
-likely | 17| 1174290 audit_get_context()@:kernel/auditsc.c@711
+unlikely | 33| 0 inotify_find_update_watch()@:fs/inotify.c@591
+unlikely | 4360| 775 kill_pid_info()@:kernel/signal.c@1065
+unlikely | 7239| 2767 next_pidmap()@:kernel/pid.c@194
+unlikely | 42009| 33683 copy_pte_range()@:mm/memory.c@510
-likely | 0| 1 qh_completions()@:drivers/usb/host/ehci-q.c@368
+unlikely | 19934| 0 ll_back_merge_fn()@:block/blk-merge.c@309
-likely | 927| 2323 load_elf_binary()@:fs/binfmt_elf.c@896
+unlikely | 2435| 875 pmd_alloc()@:include/linux/mm.h@862
+unlikely | 13| 12 psmouse_interrupt()@:drivers/input/mouse/psmouse-base.c@296
+unlikely | 70| 25 psmouse_interrupt()@:drivers/input/mouse/psmouse-base.c@292
-likely | 20| 80 qh_completions()@:drivers/usb/host/ehci-q.c@415
-likely | 0| 30 qh_completions()@:drivers/usb/host/ehci-q.c@319
-likely | 5| 14 submit_async()@:drivers/usb/host/ehci-q.c@975
+unlikely | 19| 2 qh_append_tds()@:drivers/usb/host/ehci-q.c@876
-likely | 6| 15 atapi_drain_needed()@:drivers/ata/libata-scsi.c@846
+unlikely | 27395| 18153 add_timer_randomness()@:drivers/char/random.c@628
+unlikely | 34665| 19948 bio_phys_segments()@:fs/bio.c@226
-likely | 347| 678 clocksource_adjust()@:kernel/time/timekeeping.c@418
-likely | 1| 4 __ata_qc_from_tag()@:include/linux/libata.h@1319
-likely | 0| 15 __cancel_work_timer()@:kernel/workqueue.c@490
+unlikely | 15638| 1127 queue_delayed_work_on()@:kernel/workqueue.c@233
+unlikely | 2| 0 srcu_notifier_chain_register()@:kernel/notifier.c@419
+unlikely | 6502| 2429 queue_work()@:kernel/workqueue.c@171
+unlikely | 9| 2 blocking_notifier_chain_register()@:kernel/notifier.c@212
+unlikely | 13631| 0 pre_schedule_rt()@:kernel/sched_rt.c@961
+unlikely | 591400| 443725 __update_curr()@:kernel/sched_fair.c@313
+unlikely | 233625| 205658 __switch_to()@:arch/x86/kernel/process_64.c@656
+unlikely | 313057| 126225 __switch_to()@:arch/x86/kernel/process_64.c@641
+unlikely | 313053| 126225 __switch_to()@:arch/x86/kernel/process_64.c@637
+unlikely | 467383| 0 sched_info_switch()@:kernel/sched_stats.h@230
+unlikely | 188448| 13628 pick_next_task_rt()@:kernel/sched_rt.c@522
+unlikely | 240619| 0 sched_info_queued()@:kernel/sched_stats.h@188
-likely | 61| 644 ifind()@:fs/inode.c@798
+unlikely | 258562| 61703 scheduler_tick()@:kernel/sched.c@3756
-likely | 61220| 241529 acct_update_integrals()@:kernel/tsacct.c@120
+unlikely | 1189922| 902477 kfree()@:mm/slab.c@3785
+unlikely | 23| 0 __rmqueue_fallback()@:mm/page_alloc.c@812
+unlikely | 14376| 9655 rt_policy()@:kernel/sched.c@140


Attachments:
(No filename) (226.00 B)

2008-03-05 22:32:41

by Badari Pulavarty

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 ppc64 boot hang

On Wed, 2008-03-05 at 13:54 -0800, Andrew Morton wrote:
> On Wed, 05 Mar 2008 13:34:14 -0800
> Badari Pulavarty <[email protected]> wrote:
>
> > On Tue, 2008-03-04 at 01:19 -0800, Andrew Morton wrote:
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
> > >
> >
> > Hi Andrew,
> >
> > Not able to boot 2.6.25-rc3-mm1 my ppc64 box.
> > 2.6.25-rc2-mm1 and 2.6.25-rc3 boots fine.
> >
> > I applied slab.c fix also.
> >
> > Any other known issues ? My config file attached.
> > Here are the messages on the console.
>
> The semaphore consolidation code enables interrupts early in boot, when it
> shouldn't. This tends to make powerpc blow up. Could be that this is what
> you're hitting.
>
> Matthew, is this ging to be fixed soon?

Yes. I just backed out git-semaphore.patch and machine booted fine.

Thanks,
Badari

2008-03-05 23:19:07

by Stephen Rothwell

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 ppc64 boot hang

Hi Andrew,

On Wed, 5 Mar 2008 13:54:25 -0800 Andrew Morton <[email protected]> wrote:
>
> The semaphore consolidation code enables interrupts early in boot, when it
> shouldn't. This tends to make powerpc blow up. Could be that this is what
> you're hitting.
>
> Matthew, is this ging to be fixed soon?

There is a new version of these patches in the current linux-next tree ...

--
Cheers,
Stephen Rothwell [email protected]


Attachments:
(No filename) (461.00 B)
(No filename) (189.00 B)
Download all attachments

2008-03-05 23:50:38

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..

On Wed, 05 Mar 2008 17:26:25 -0500
[email protected] wrote:

> On Wed, 05 Mar 2008 10:02:21 PST, Andrew Morton said:
>
> > at the top, so it'll be something else. Perhaps a `likely' snuck in via an
> > inline in a header file. It would be better to add a #define DONT_DO_THAT
> > at the top of arch/x86/kernel/vsyscall_64.c and
> > arch/x86/vdso/vclock_gettime.c, then use that to defeat likely-profiling.
> >
> > arch/x86/kernel/vsyscall_64.c | 11 ++---------
> > arch/x86/vdso/vclock_gettime.c | 11 ++---------
> > include/linux/compiler.h | 3 ++-
> > 3 files changed, 6 insertions(+), 19 deletions(-)
>
> Confirming that this patch works and my system goes multi-user cleanly.

Thanks.

> Actual numbers after about 10 minutes of uptime:
>
> % wc -l /proc/likely_prof
> 2635 /proc/likely_prof
> % grep '^[^ ]' /proc/likely_prof
> Likely Profiling Results
> [+- ] Type | # True | # False | Function:Filename@Line
> +unlikely | 1| 0 in_dev_get()@:include/linux/inetdevice.h@185
> +unlikely | 513| 0 dst_input()@:include/net/dst.h@254
> -likely | 0| 148 ip6_mc_input()@:net/ipv6/ip6_input.c@271
> -likely | 0| 1 sock_error()@:include/net/sock.h@1211
> -likely | 851| 1219 tcp_transmit_skb()@:net/ipv4/tcp_output.c@493
> +unlikely | 1| 0 signal_pending()@:include/linux/sched.h@1927
> -likely | 0| 1172946 audit_syscall_entry()@:kernel/auditsc.c@1522
> +unlikely | 1172716| 0 syscall_trace_enter()@:arch/x86/kernel/ptrace.c@1556
> -likely | 0| 1173020 audit_syscall_exit()@:kernel/auditsc.c@1551
> +unlikely | 1172831| 0 syscall_trace_leave()@:arch/x86/kernel/ptrace.c@1573
> -likely | 0| 1272 audit_alloc()@:kernel/auditsc.c@841
> +unlikely | 3| 0 icmp_unreach()@:net/ipv4/icmp.c@773
> +unlikely | 2| 1 nf_ct_attach()@:net/netfilter/core.c@230
> -likely | 0| 2 dst_gc_task()@:net/core/dst.c@82
> +unlikely | 143| 61 fput_light()@:include/linux/file.h@77
> +unlikely | 892| 424 _read_unlock_irqrestore()@:kernel/spinlock.c@375
> +unlikely | 28| 0 sched_move_task()@:kernel/sched.c@7835
> +unlikely | 28| 0 sched_move_task()@:kernel/sched.c@7828
> +unlikely | 108| 0 verify_export_symbols()@:kernel/module.c@1401
> +unlikely | 313| 0 verify_export_symbols()@:kernel/module.c@1393
> +unlikely | 14| 0 ll_front_merge_fn()@:block/blk-merge.c@347
> -likely | 17| 1150 audit_free()@:kernel/auditsc.c@1428
> -likely | 17| 1174290 audit_get_context()@:kernel/auditsc.c@711
> +unlikely | 33| 0 inotify_find_update_watch()@:fs/inotify.c@591
> +unlikely | 4360| 775 kill_pid_info()@:kernel/signal.c@1065
> +unlikely | 7239| 2767 next_pidmap()@:kernel/pid.c@194
> +unlikely | 42009| 33683 copy_pte_range()@:mm/memory.c@510
> -likely | 0| 1 qh_completions()@:drivers/usb/host/ehci-q.c@368
> +unlikely | 19934| 0 ll_back_merge_fn()@:block/blk-merge.c@309
> -likely | 927| 2323 load_elf_binary()@:fs/binfmt_elf.c@896
> +unlikely | 2435| 875 pmd_alloc()@:include/linux/mm.h@862
> +unlikely | 13| 12 psmouse_interrupt()@:drivers/input/mouse/psmouse-base.c@296
> +unlikely | 70| 25 psmouse_interrupt()@:drivers/input/mouse/psmouse-base.c@292
> -likely | 20| 80 qh_completions()@:drivers/usb/host/ehci-q.c@415
> -likely | 0| 30 qh_completions()@:drivers/usb/host/ehci-q.c@319
> -likely | 5| 14 submit_async()@:drivers/usb/host/ehci-q.c@975
> +unlikely | 19| 2 qh_append_tds()@:drivers/usb/host/ehci-q.c@876
> -likely | 6| 15 atapi_drain_needed()@:drivers/ata/libata-scsi.c@846
> +unlikely | 27395| 18153 add_timer_randomness()@:drivers/char/random.c@628
> +unlikely | 34665| 19948 bio_phys_segments()@:fs/bio.c@226
> -likely | 347| 678 clocksource_adjust()@:kernel/time/timekeeping.c@418
> -likely | 1| 4 __ata_qc_from_tag()@:include/linux/libata.h@1319
> -likely | 0| 15 __cancel_work_timer()@:kernel/workqueue.c@490
> +unlikely | 15638| 1127 queue_delayed_work_on()@:kernel/workqueue.c@233
> +unlikely | 2| 0 srcu_notifier_chain_register()@:kernel/notifier.c@419
> +unlikely | 6502| 2429 queue_work()@:kernel/workqueue.c@171
> +unlikely | 9| 2 blocking_notifier_chain_register()@:kernel/notifier.c@212
> +unlikely | 13631| 0 pre_schedule_rt()@:kernel/sched_rt.c@961
> +unlikely | 591400| 443725 __update_curr()@:kernel/sched_fair.c@313
> +unlikely | 233625| 205658 __switch_to()@:arch/x86/kernel/process_64.c@656
> +unlikely | 313057| 126225 __switch_to()@:arch/x86/kernel/process_64.c@641
> +unlikely | 313053| 126225 __switch_to()@:arch/x86/kernel/process_64.c@637
> +unlikely | 467383| 0 sched_info_switch()@:kernel/sched_stats.h@230
> +unlikely | 188448| 13628 pick_next_task_rt()@:kernel/sched_rt.c@522
> +unlikely | 240619| 0 sched_info_queued()@:kernel/sched_stats.h@188
> -likely | 61| 644 ifind()@:fs/inode.c@798
> +unlikely | 258562| 61703 scheduler_tick()@:kernel/sched.c@3756
> -likely | 61220| 241529 acct_update_integrals()@:kernel/tsacct.c@120
> +unlikely | 1189922| 902477 kfree()@:mm/slab.c@3785
> +unlikely | 23| 0 __rmqueue_fallback()@:mm/page_alloc.c@812
> +unlikely | 14376| 9655 rt_policy()@:kernel/sched.c@140

These are all the ones which we got wrong on your setup, yes?

I wonder if assuming that current->audit_context is NULL is realistic
nowadays.

2008-03-06 00:04:53

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()


> Yes, we are - it's the semaphore rewrite which is doing this in
> start_kernel(). It's being discussed.
>
> Enabling interrupts too early on powerpc was discovered to be fatal on
> powerpc years ago. It looks like that remains the case.

Regarding these issues. I could make it non fatal and just WARN_ON,
provided that I have a way to differentiate legal vs. illegal calls
to local_irq_enable(). We already have that function mostly out of
line in C code due to our lazy irq disabling scheme, so the overhead of
testing some global kernel state would be minimum here.

However, I don't see anything around init/main.c:start_kernel() that I
can use. What do you reckon here we should do ? Add some kind of global
we set before calling local_irq_enable() ? Or make early_boot_irqs_on()
do that generically

It's currently defined as an empty inline without CONFIG_TRACE_IRQFLAGS
but we could make it set a flag instead.

I'm pretty sure other archs have similar problems, especially in the
embedded world where you are booted with random junk firmwares that may
leave devices, interrupt controllers etc... in random state, and
enabling incoming IRQs before the arch code properly initializes the
main interrupt controller can be fatal. I know at least of an ARM board
I worked on a while ago that had a similar issues.

On ppc32, unfortunately, our local_irq_enable/restore are nice inlines
that whack the appropriate MSR bits directly, thus adding a test for a
global flag would add some bloat/overhead that I'd like to avoid, at
least until we decide to also do lazy disabling on those, if ever...

Cheers,
Ben.

2008-03-06 00:46:23

by Andrew Morton

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()

On Thu, 06 Mar 2008 11:03:31 +1100
Benjamin Herrenschmidt <[email protected]> wrote:

>
> > Yes, we are - it's the semaphore rewrite which is doing this in
> > start_kernel(). It's being discussed.
> >
> > Enabling interrupts too early on powerpc was discovered to be fatal on
> > powerpc years ago. It looks like that remains the case.
>
> Regarding these issues. I could make it non fatal and just WARN_ON,
> provided that I have a way to differentiate legal vs. illegal calls
> to local_irq_enable().

And local_irq_restore() and various other things.

> We already have that function mostly out of
> line in C code due to our lazy irq disabling scheme, so the overhead of
> testing some global kernel state would be minimum here.
>
> However, I don't see anything around init/main.c:start_kernel() that I
> can use. What do you reckon here we should do ? Add some kind of global
> we set before calling local_irq_enable() ? Or make early_boot_irqs_on()
> do that generically
>
> It's currently defined as an empty inline without CONFIG_TRACE_IRQFLAGS
> but we could make it set a flag instead.
>
> I'm pretty sure other archs have similar problems, especially in the
> embedded world where you are booted with random junk firmwares that may
> leave devices, interrupt controllers etc... in random state, and
> enabling incoming IRQs before the arch code properly initializes the
> main interrupt controller can be fatal. I know at least of an ARM board
> I worked on a while ago that had a similar issues.
>
> On ppc32, unfortunately, our local_irq_enable/restore are nice inlines
> that whack the appropriate MSR bits directly, thus adding a test for a
> global flag would add some bloat/overhead that I'd like to avoid, at
> least until we decide to also do lazy disabling on those, if ever...

I'd have thought that the way to do this would be to add it to lockdep -
lockdep already has all the infrastructure and code sites to do this.

Set some special flag saying its-ok-to-enable-interrupts-now and test that
in lockdep.

akpm:/usr/src/25> grep LOCKDEP arch/powerpc/Kconfig
akpm:/usr/src/25>

losers ;)

Still, doing it for

akpm:/usr/src/25> grep -l LOCKDEP arch/*/Kconfig
arch/arm/Kconfig
arch/avr32/Kconfig
arch/mips/Kconfig
arch/s390/Kconfig
arch/sh/Kconfig
arch/sparc64/Kconfig
arch/um/Kconfig
arch/x86/Kconfig

should give pretty good coverage.

2008-03-06 00:54:38

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc ()


On Wed, 2008-03-05 at 16:44 -0800, Andrew Morton wrote:
> On Thu, 06 Mar 2008 11:03:31 +1100
> Benjamin Herrenschmidt <[email protected]> wrote:
>
> >
> > > Yes, we are - it's the semaphore rewrite which is doing this in
> > > start_kernel(). It's being discussed.
> > >
> > > Enabling interrupts too early on powerpc was discovered to be fatal on
> > > powerpc years ago. It looks like that remains the case.
> >
> > Regarding these issues. I could make it non fatal and just WARN_ON,
> > provided that I have a way to differentiate legal vs. illegal calls
> > to local_irq_enable().
>
> And local_irq_restore() and various other things.

Yes, on powerpc 64 bits, they all go down to one C function that does
the lazy enable/disable, so it would be easy to deal with. 32 bits
doesn't have it that simple tho.

> I'd have thought that the way to do this would be to add it to lockdep -
> lockdep already has all the infrastructure and code sites to do this.
>
> Set some special flag saying its-ok-to-enable-interrupts-now and test that
> in lockdep.

Ok.

> akpm:/usr/src/25> grep LOCKDEP arch/powerpc/Kconfig
> akpm:/usr/src/25>
>
> losers ;)

I have lockdep patches for powerpc 32 and 64 bits. They aren't upstream
yet as they need a bit more beating up and there's at least one machine
that doesn't seem to like them, so I'm working on just that. That's a
good idea to add the test to lockdep tho, I'll see what I can do.

> Still, doing it for
>
> akpm:/usr/src/25> grep -l LOCKDEP arch/*/Kconfig
> arch/arm/Kconfig
> arch/avr32/Kconfig
> arch/mips/Kconfig
> arch/s390/Kconfig
> arch/sh/Kconfig
> arch/sparc64/Kconfig
> arch/um/Kconfig
> arch/x86/Kconfig
>
> should give pretty good coverage.

Ben.

Subject: Re: 2.6.25-rc3-mm1 (IDE)


Hi,

On Tuesday 04 March 2008, Randy Dunlap wrote:
> On Tue, 4 Mar 2008 01:19:28 -0800 Andrew Morton wrote:
>
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>
> i386 allmodconfig gives me this:
>
> ERROR: "probe_4drives" [drivers/ide/ide-core.ko] undefined!

It was also reported by Andrew & Stephen but the thing is that it doesn't
happen here with IDE tree, also it is quite strange that only probe_4drives
causes error and other probe_* variables don't.

I think that it is caused by something else in -mm / linux-next...

Thanks,
Bart

2008-03-07 03:59:12

by Valdis Klētnieks

[permalink] [raw]
Subject: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Tue, 04 Mar 2008 01:19:28 PST, Andrew Morton said:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/

Dell Latitude D820, x86_64, Core2 Duo T7200

'shutdown -h' blows up at the very end. shutdown -r works OK. I caught this one
with netconsole. There's another, different, crash I've been seeing a bit
earlier in the shutdown -h as well, but I haven't been able to catch that one
yet...

[ 74.254402] CPU 1 is now offline
[ 74.255395] SMP alternatives: switching to UP code
[ 74.256373] BUG: unable to handle kernel paging request at ffffffff8020a023
[ 74.256373] IP: [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
[ 74.256373] PGD 203067 PUD 207063 PMD 7e4cc163 PTE 20a161
[ 74.256373] Oops: 0003 [1] PREEMPT SMP
[ 74.256373] last sysfs file: /sys/devices/virtual/block/dm-14/dev
[ 74.256373] CPU 0
[ 74.256373] Modules linked in: rtc sha256_generic aes_generic acpi_cpufreq tpm_tis arc4 ecb pcmcia iwl3945 iTCO_wdt ohci1394 firmware_class iTCO_vendor_support yenta_socket watchdog_core thermal rsrc_nonstatic mac80211 snd_hda_intel intel_agp watchdog_dev ieee1394 pcmcia_core processor button ac battery cfg80211
[ 74.256373] Pid: 1767, comm: halt Not tainted 2.6.25-rc3-mm1 #8
[ 74.256373] RIP: 0010:[<ffffffff80211872>] [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
[ 74.256373] RSP: 0018:ffff81007ac63d10 EFLAGS: 00010093
[ 74.256373] RAX: ffffffff80573190 RBX: ffff81007f83a8c0 RCX: ffffffff80563cec
[ 74.256373] RDX: ffffffff8020a023 RSI: ffffffff8078a0b8 RDI: ffffffff80783018
[ 74.256373] RBP: ffff81007ac63d28 R08: 0000000000000001 R09: ffffffff80563cec
[ 74.256373] R10: ffffffff80200000 R11: ffff81007ac63d1f R12: 0000000000000000
[ 74.256373] R13: 0000000000000001 R14: 0000000000000246 R15: ffff81007d156340
[ 74.256373] FS: 00007f2d0ab206f0(0000) GS:ffffffff8076e000(0000) knlGS:0000000000000000
[ 74.256373] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 74.256373] CR2: ffffffff8020a023 CR3: 000000007edf3000 CR4: 00000000000006e0
[ 74.256373] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 74.256373] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 74.256373] Process halt (pid: 1767, threadinfo ffff81007ac62000, task ffff81007db96300)
[ 74.256373] Stack: ffffffff8080df80 90ffffff8055ba3b ffff81007f83a8c0 ffff81007ac63d68
[ 74.256374] ffffffff80211a01 ffffffff807c6584 0000000000000001 ffffffff807c6584
[ 74.256374] 0000000000000001 0000000000000001 0000000000000001 ffff81007ac63d98
[ 74.256374] Call Trace:
[ 74.256374] [<ffffffff80211a01>] alternatives_smp_switch+0x17a/0x1b6
[ 74.256374] [<ffffffff80219dd3>] __cpu_die+0x58/0x87
[ 74.256374] [<ffffffff805498b2>] _cpu_down+0x1a4/0x28c
[ 74.256374] [<ffffffff80252e90>] disable_nonboot_cpus+0x60/0x108
[ 74.256374] [<ffffffff80241619>] kernel_power_off+0x21/0x3b
[ 74.256374] [<ffffffff80241863>] sys_reboot+0xf8/0x196
[ 74.256374] [<ffffffff8055b93f>] ? preempt_schedule+0x3c/0xaa
[ 74.256374] [<ffffffff8055b9a4>] ? preempt_schedule+0xa1/0xaa
[ 74.256374] [<ffffffff8023e7eb>] ? sys_kill+0xd8/0x1c1
[ 74.256374] [<ffffffff8055c112>] ? do_nanosleep+0x4b/0xd6
[ 74.256374] [<ffffffff8020c21b>] system_call_after_swapgs+0x7b/0x80
[ 74.256374]
[ 74.256374]
[ 74.256374] Code: 57 80 48 0f 42 d0 48 8b 42 08 4c 8d 5d f7 8a 00 41 b8 01 00 00 00 88 45 f7 eb 1b 48 8b 17 4c 39 d2 72 0f 4c 39 ca 77 0a 41 8a 03 <88> 02 44 89 c0 0f a2 48 83 c7 08 48 39 f7 72 e0 5a 59 5b c9 c3
[ 74.256374] RIP [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
[ 74.256374] RSP <ffff81007ac63d10>
[ 74.256374] CR2: ffffffff8020a023


Attachments:
(No filename) (226.00 B)

2008-03-07 06:16:34

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Thu, 06 Mar 2008 22:58:45 -0500 [email protected] wrote:

> On Tue, 04 Mar 2008 01:19:28 PST, Andrew Morton said:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>
> Dell Latitude D820, x86_64, Core2 Duo T7200
>
> 'shutdown -h' blows up at the very end. shutdown -r works OK. I caught this one
> with netconsole. There's another, different, crash I've been seeing a bit
> earlier in the shutdown -h as well, but I haven't been able to catch that one
> yet...
>
> [ 74.254402] CPU 1 is now offline
> [ 74.255395] SMP alternatives: switching to UP code
> [ 74.256373] BUG: unable to handle kernel paging request at ffffffff8020a023
> [ 74.256373] IP: [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
> [ 74.256373] PGD 203067 PUD 207063 PMD 7e4cc163 PTE 20a161
> [ 74.256373] Oops: 0003 [1] PREEMPT SMP
> [ 74.256373] last sysfs file: /sys/devices/virtual/block/dm-14/dev
> [ 74.256373] CPU 0
> [ 74.256373] Modules linked in: rtc sha256_generic aes_generic acpi_cpufreq tpm_tis arc4 ecb pcmcia iwl3945 iTCO_wdt ohci1394 firmware_class iTCO_vendor_support yenta_socket watchdog_core thermal rsrc_nonstatic mac80211 snd_hda_intel intel_agp watchdog_dev ieee1394 pcmcia_core processor button ac battery cfg80211
> [ 74.256373] Pid: 1767, comm: halt Not tainted 2.6.25-rc3-mm1 #8
> [ 74.256373] RIP: 0010:[<ffffffff80211872>] [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
> [ 74.256373] RSP: 0018:ffff81007ac63d10 EFLAGS: 00010093
> [ 74.256373] RAX: ffffffff80573190 RBX: ffff81007f83a8c0 RCX: ffffffff80563cec
> [ 74.256373] RDX: ffffffff8020a023 RSI: ffffffff8078a0b8 RDI: ffffffff80783018
> [ 74.256373] RBP: ffff81007ac63d28 R08: 0000000000000001 R09: ffffffff80563cec
> [ 74.256373] R10: ffffffff80200000 R11: ffff81007ac63d1f R12: 0000000000000000
> [ 74.256373] R13: 0000000000000001 R14: 0000000000000246 R15: ffff81007d156340
> [ 74.256373] FS: 00007f2d0ab206f0(0000) GS:ffffffff8076e000(0000) knlGS:0000000000000000
> [ 74.256373] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [ 74.256373] CR2: ffffffff8020a023 CR3: 000000007edf3000 CR4: 00000000000006e0
> [ 74.256373] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [ 74.256373] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [ 74.256373] Process halt (pid: 1767, threadinfo ffff81007ac62000, task ffff81007db96300)
> [ 74.256373] Stack: ffffffff8080df80 90ffffff8055ba3b ffff81007f83a8c0 ffff81007ac63d68
> [ 74.256374] ffffffff80211a01 ffffffff807c6584 0000000000000001 ffffffff807c6584
> [ 74.256374] 0000000000000001 0000000000000001 0000000000000001 ffff81007ac63d98
> [ 74.256374] Call Trace:
> [ 74.256374] [<ffffffff80211a01>] alternatives_smp_switch+0x17a/0x1b6
> [ 74.256374] [<ffffffff80219dd3>] __cpu_die+0x58/0x87
> [ 74.256374] [<ffffffff805498b2>] _cpu_down+0x1a4/0x28c
> [ 74.256374] [<ffffffff80252e90>] disable_nonboot_cpus+0x60/0x108
> [ 74.256374] [<ffffffff80241619>] kernel_power_off+0x21/0x3b
> [ 74.256374] [<ffffffff80241863>] sys_reboot+0xf8/0x196
> [ 74.256374] [<ffffffff8055b93f>] ? preempt_schedule+0x3c/0xaa
> [ 74.256374] [<ffffffff8055b9a4>] ? preempt_schedule+0xa1/0xaa
> [ 74.256374] [<ffffffff8023e7eb>] ? sys_kill+0xd8/0x1c1
> [ 74.256374] [<ffffffff8055c112>] ? do_nanosleep+0x4b/0xd6
> [ 74.256374] [<ffffffff8020c21b>] system_call_after_swapgs+0x7b/0x80
> [ 74.256374]
> [ 74.256374]
> [ 74.256374] Code: 57 80 48 0f 42 d0 48 8b 42 08 4c 8d 5d f7 8a 00 41 b8 01 00 00 00 88 45 f7 eb 1b 48 8b 17 4c 39 d2 72 0f 4c 39 ca 77 0a 41 8a 03 <88> 02 44 89 c0 0f a2 48 83 c7 08 48 39 f7 72 e0 5a 59 5b c9 c3
> [ 74.256374] RIP [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
> [ 74.256374] RSP <ffff81007ac63d10>
> [ 74.256374] CR2: ffffffff8020a023

Yes, I hit a similar one during halt on the t61p. But because of the
netconsole bustage I was only able to see (on the screen) oops #2 - oops #1
had scrolled off. oops #2 had a simlar trace and the EIP was in
text_poke().

I suppose one of us should bisect it.

2008-03-07 07:53:48

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Thu, 06 Mar 2008 22:16:02 PST, Andrew Morton said:

> > [ 74.254402] CPU 1 is now offline
> > [ 74.255395] SMP alternatives: switching to UP code
> > [ 74.256373] BUG: unable to handle kernel paging request at ffffffff8020a023
> > [ 74.256373] IP: [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
> > [ 74.256373] PGD 203067 PUD 207063 PMD 7e4cc163 PTE 20a161
> > [ 74.256373] Oops: 0003 [1] PREEMPT SMP
> > [ 74.256373] last sysfs file: /sys/devices/virtual/block/dm-14/dev
> > [ 74.256373] CPU 0
> > [ 74.256373] Modules linked in: rtc sha256_generic aes_generic acpi_cpufreq tpm_tis arc4 ecb pcmcia iwl3945 iTCO_wdt ohci1394 firmware_class iTCO_vendor_support yenta_socket watchdog_core thermal rsrc_nonstatic mac80211 snd_hda_intel intel_agp watchdog_dev ieee1394 pcmcia_core processor button ac battery cfg80211
> > [ 74.256373] Pid: 1767, comm: halt Not tainted 2.6.25-rc3-mm1 #8
> > [ 74.256373] RIP: 0010:[<ffffffff80211872>] [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
> > [ 74.256373] RSP: 0018:ffff81007ac63d10 EFLAGS: 00010093
> > [ 74.256373] RAX: ffffffff80573190 RBX: ffff81007f83a8c0 RCX: ffffffff80563cec
> > [ 74.256373] RDX: ffffffff8020a023 RSI: ffffffff8078a0b8 RDI: ffffffff80783018
> > [ 74.256373] RBP: ffff81007ac63d28 R08: 0000000000000001 R09: ffffffff80563cec
> > [ 74.256373] R10: ffffffff80200000 R11: ffff81007ac63d1f R12: 0000000000000000
> > [ 74.256373] R13: 0000000000000001 R14: 0000000000000246 R15: ffff81007d156340
> > [ 74.256373] FS: 00007f2d0ab206f0(0000) GS:ffffffff8076e000(0000) knlGS:0000000000000000
> > [ 74.256373] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> > [ 74.256373] CR2: ffffffff8020a023 CR3: 000000007edf3000 CR4: 00000000000006e0
> > [ 74.256373] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> > [ 74.256373] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> > [ 74.256373] Process halt (pid: 1767, threadinfo ffff81007ac62000, task ffff81007db96300)
> > [ 74.256373] Stack: ffffffff8080df80 90ffffff8055ba3b ffff81007f83a8c0 ffff81007ac63d68
> > [ 74.256374] ffffffff80211a01 ffffffff807c6584 0000000000000001 ffffffff807c6584
> > [ 74.256374] 0000000000000001 0000000000000001 0000000000000001 ffff81007ac63d98
> > [ 74.256374] Call Trace:
> > [ 74.256374] [<ffffffff80211a01>] alternatives_smp_switch+0x17a/0x1b6
> > [ 74.256374] [<ffffffff80219dd3>] __cpu_die+0x58/0x87
> > [ 74.256374] [<ffffffff805498b2>] _cpu_down+0x1a4/0x28c
> > [ 74.256374] [<ffffffff80252e90>] disable_nonboot_cpus+0x60/0x108
> > [ 74.256374] [<ffffffff80241619>] kernel_power_off+0x21/0x3b
> > [ 74.256374] [<ffffffff80241863>] sys_reboot+0xf8/0x196
> > [ 74.256374] [<ffffffff8055b93f>] ? preempt_schedule+0x3c/0xaa
> > [ 74.256374] [<ffffffff8055b9a4>] ? preempt_schedule+0xa1/0xaa
> > [ 74.256374] [<ffffffff8023e7eb>] ? sys_kill+0xd8/0x1c1
> > [ 74.256374] [<ffffffff8055c112>] ? do_nanosleep+0x4b/0xd6
> > [ 74.256374] [<ffffffff8020c21b>] system_call_after_swapgs+0x7b/0x80
> > [ 74.256374]
> > [ 74.256374]
> > [ 74.256374] Code: 57 80 48 0f 42 d0 48 8b 42 08 4c 8d 5d f7 8a 00 41 b8 01 00 00 00 88 45 f7 eb 1b 48 8b 17 4c 39 d2 72 0f 4c 39 ca 77 0a 41 8a 03 <88> 02 44 89 c0 0f a2 48 83 c7 08 48 39 f7 72 e0 5a 59 5b c9 c3
> > [ 74.256374] RIP [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
> > [ 74.256374] RSP <ffff81007ac63d10>
> > [ 74.256374] CR2: ffffffff8020a023
>
> Yes, I hit a similar one during halt on the t61p. But because of the
> netconsole bustage I was only able to see (on the screen) oops #2 - oops #1
> had scrolled off. oops #2 had a simlar trace and the EIP was in
> text_poke().

OK, I finally managed to catch the *other* failure I was seeing at shutdown,
and it appears to be a variant on the same theme, so readers may feel free to
ignore the rest of this note unless they care about the gory details...

Apparently, if I booted with 'ignore_loglevel' (which is my default when using
netconsole), I hit the above traceback and I'm dead in the water, no alt-sysrq,
need to hold down the power button for 5 seconds.

If I boot with 'quiet' instead, I get the below set of tracebacks, which caused
the original BUG to go scrolling off-screen and obfuscating that it's the same
failure. Adding to the confusion, if it failed in this mode, alt-sysrq still
worked just fine, so alt-sysrq-S-S-U-B got me a reboot.

Now that I know that at least *part* of the issue is the same, I can go
bisecting. Somebody *else* can ponder why ignore_loglevel/quiet causes the
big difference in behavior after the BUG, that part is beyond my ken...

[ 168.036824] BUG: unable to handle kernel paging request at ffffffff8020a023
[ 168.037300] IP: [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
[ 168.037745] PGD 203067 PUD 207063 PMD 7f989163 PTE 20a161
[ 168.037781] Oops: 0003 [1] PREEMPT SMP
[ 168.037781] last sysfs file: /sys/devices/platform/coretemp.1/temp1_input
[ 168.037781] CPU 0
[ 168.037781] Modules linked in: rtc irnet ppp_generic slhc irtty_sir sir_dev ircomm_tty ircomm irda crc_ccitt sha256_generic aes_generic acpi_cpufreq tpm_tis arc4 ecb iwl3945 pcmcia nvidia(P)(U) firmware_class mac80211 ohci1394 snd_hda_intel cfg80211 yenta_socket ieee1394 iTCO_wdt iTCO_vendor_support thermal rsrc_nonstatic ac processor watchdog_core battery watchdog_dev button pcmcia_core intel_agp [last unloaded: x_tables]
[ 168.037781] Pid: 3115, comm: halt Tainted: P 2.6.25-rc3-mm1 #8
[ 168.037781] RIP: 0010:[<ffffffff80211872>] [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
[ 168.037781] RSP: 0000:ffff81007dbebd10 EFLAGS: 00010093
[ 168.037781] RAX: ffffffff80573190 RBX: ffff81007f83a8c0 RCX: ffffffff80563cec
[ 168.037781] RDX: ffffffff8020a023 RSI: ffffffff8078a0b8 RDI: ffffffff80783018
[ 168.037781] RBP: ffff81007dbebd28 R08: 0000000000000001 R09: ffffffff80563cec
[ 168.037781] R10: ffffffff80200000 R11: ffff81007dbebd1f R12: 0000000000000000
[ 168.037781] R13: 0000000000000001 R14: 0000000000000246 R15: ffff810073200440
[ 168.037781] FS: 00007ffd6067a6f0(0000) GS:ffffffff8076e000(0000) knlGS:0000000000000000
[ 168.037781] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 168.037781] CR2: ffffffff8020a023 CR3: 000000007306e000 CR4: 00000000000006e0
[ 168.037781] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 168.037781] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 168.037781] Process halt (pid: 3115, threadinfo ffff81007dbea000, task ffff81007ef44440)
[ 168.037781] Stack: ffffffff8080df80 90ffffff8055ba3b ffff81007f83a8c0 ffff81007dbebd68
[ 168.037781] ffffffff80211a01 ffffffff807c6584 0000000000000001 ffffffff807c6584
[ 168.037781] 0000000000000001 0000000000000001 0000000000000001 ffff81007dbebd98
[ 168.037781] Call Trace:
[ 168.037781] [<ffffffff80211a01>] alternatives_smp_switch+0x17a/0x1b6
[ 168.037781] [<ffffffff80219dd3>] __cpu_die+0x58/0x87
[ 168.037781] [<ffffffff805498b2>] _cpu_down+0x1a4/0x28c
[ 168.037781] [<ffffffff80252e90>] disable_nonboot_cpus+0x60/0x108
[ 168.037781] [<ffffffff80241619>] kernel_power_off+0x21/0x3b
[ 168.037781] [<ffffffff80241863>] sys_reboot+0xf8/0x196
[ 168.037781] [<ffffffff80291233>] ? kfree+0x2b/0x1ac
[ 168.037781] [<ffffffff80265a44>] ? audit_syscall_entry+0x16e/0x1a2
[ 168.037781] [<ffffffff80213619>] ? syscall_trace_enter+0xa4/0xa9
[ 168.037781] [<ffffffff8020c32e>] ? tracesys+0x71/0xe1
[ 168.037781] [<ffffffff8020c399>] tracesys+0xdc/0xe1
[ 168.037781]
[ 168.037781]
[ 168.037781] Code: 57 80 48 0f 42 d0 48 8b 42 08 4c 8d 5d f7 8a 00 41 b8 01 00 00 00 88 45 f7 eb 1b 48 8b 17 4c 39 d2 72 0f 4c 39 ca 77 0a 41 8a 03 <88> 02 44 89 c0 0f a2 48 83 c7 08 48 39 f7 72 e0 5a 59 5b c9 c3
[ 168.037781] RIP [<ffffffff80211872>] alternatives_smp_unlock+0x66/0x7b
[ 168.037781] RSP <ffff81007dbebd10>
[ 168.037781] CR2: ffffffff8020a023
[ 168.037781] ---[ end trace 72339cb91f92973c ]---
[ 168.037781] note: halt[3115] exited with preempt_count 1
[ 168.038182] BUG: scheduling while atomic: halt/3115/0x00000002
[ 168.038789] Pid: 3115, comm: halt Tainted: P D 2.6.25-rc3-mm1 #8
[ 168.039791]
[ 168.039793] Call Trace:
[ 168.040795] [<ffffffff8055d761>] ? _spin_unlock_irqrestore+0x3a/0x45
[ 168.041796] [<ffffffff8022bc70>] __schedule_bug+0x5d/0x61
[ 168.042801] [<ffffffff8055ad42>] schedule+0x11a/0x9fd
[ 168.043801] [<ffffffff802e4dad>] ? release_sysfs_dirent+0x8c/0xac
[ 168.044797] [<ffffffff8055b9d5>] schedule_timeout+0x22/0xb4
[ 168.045797] [<ffffffff8037265e>] ? __list_add+0x62/0x9a
[ 168.046796] [<ffffffff8055ab53>] wait_for_common+0x109/0x152
[ 168.047816] [<ffffffff80228819>] ? default_wake_function+0x0/0xf
[ 168.048800] [<ffffffff8055ac26>] wait_for_completion+0x18/0x1a
[ 168.049798] [<ffffffff802428e2>] flush_cpu_workqueue+0x70/0x7c
[ 168.050793] [<ffffffff8024291c>] ? wq_barrier_func+0x0/0xf
[ 168.051794] [<ffffffff8024296e>] flush_workqueue+0x43/0x5d
[ 168.052794] [<ffffffff80242998>] flush_scheduled_work+0x10/0x12
[ 168.053795] [<ffffffff803bd0ce>] release_dev+0x529/0x6c6
[ 168.054799] [<ffffffff802894b5>] ? free_page_and_swap_cache+0x32/0x36
[ 168.055794] [<ffffffff80368bbe>] ? _atomic_dec_and_lock+0x5a/0x98
[ 168.056793] [<ffffffff80368bbe>] ? _atomic_dec_and_lock+0x5a/0x98
[ 168.057795] [<ffffffff803bd424>] tty_release+0x19/0x24
[ 168.058792] [<ffffffff8029630d>] __fput+0xc0/0x21d
[ 168.059793] [<ffffffff8029647e>] fput+0x14/0x16
[ 168.060796] [<ffffffff80292f7a>] filp_close+0x66/0x71
[ 168.061793] [<ffffffff802340a8>] put_files_struct+0x74/0xc3
[ 168.062793] [<ffffffff8023413e>] __exit_files+0x47/0x50
[ 168.063792] [<ffffffff80235c3b>] do_exit+0x39c/0x90b
[ 168.064792] [<ffffffff803ca25d>] ? do_unblank_screen+0x53/0x131
[ 168.065792] [<ffffffff8055e0ad>] oops_begin+0x0/0x90
[ 168.066791] [<ffffffff8020a023>] ? set_personality_64bit+0x14/0x32
[ 168.067794] [<ffffffff8055ff24>] do_page_fault+0x8b9/0x9ad
[ 168.068793] [<ffffffff8055d761>] ? _spin_unlock_irqrestore+0x3a/0x45
[ 168.069790] [<ffffffff80249e46>] ? up+0x42/0x47
[ 168.070790] [<ffffffff8055d761>] ? _spin_unlock_irqrestore+0x3a/0x45
[ 168.071790] [<ffffffff8023239e>] ? release_console_sem+0x1ae/0x1bb
[ 168.072792] [<ffffffff802329bb>] ? vprintk+0x377/0x3aa
[ 168.073791] [<ffffffff802329bb>] ? vprintk+0x377/0x3aa
[ 168.074792] [<ffffffff8055db19>] error_exit+0x0/0x51
[ 168.075795] [<ffffffff80563cec>] ? _etext+0x0/0x7b
[ 168.076790] [<ffffffff80563cec>] ? _etext+0x0/0x7b
[ 168.077787] [<ffffffff8020a023>] ? set_personality_64bit+0x14/0x32
[ 168.078790] [<ffffffff80211872>] ? alternatives_smp_unlock+0x66/0x7b
[ 168.079791] [<ffffffff80211a01>] ? alternatives_smp_switch+0x17a/0x1b6
[ 168.080791] [<ffffffff80219dd3>] ? __cpu_die+0x58/0x87
[ 168.082780] [<ffffffff805498b2>] ? _cpu_down+0x1a4/0x28c
[ 168.083792] [<ffffffff80252e90>] ? disable_nonboot_cpus+0x60/0x108
[ 168.084792] [<ffffffff80241619>] ? kernel_power_off+0x21/0x3b
[ 168.085787] [<ffffffff80241863>] ? sys_reboot+0xf8/0x196
[ 168.086789] [<ffffffff80291233>] ? kfree+0x2b/0x1ac
[ 168.087790] [<ffffffff80265a44>] ? audit_syscall_entry+0x16e/0x1a2
[ 168.088791] [<ffffffff80213619>] ? syscall_trace_enter+0xa4/0xa9
[ 168.089787] [<ffffffff8020c32e>] ? tracesys+0x71/0xe1
[ 168.090788] [<ffffffff8020c399>] ? tracesys+0xdc/0xe1
[ 168.091788]
[ 168.092814] BUG: scheduling while atomic: halt/3115/0x00000002
[ 168.093789] Pid: 3115, comm: halt Tainted: P D 2.6.25-rc3-mm1 #8
[ 168.094783]
[ 168.094785] Call Trace:
[ 168.095787] [<ffffffff8055d76a>] ? _spin_unlock_irqrestore+0x43/0x45
[ 168.096786] [<ffffffff80242721>] ? worker_thread+0xa9/0xee
[ 168.097786] [<ffffffff8022bc70>] __schedule_bug+0x5d/0x61
[ 168.098787] [<ffffffff8055ad42>] schedule+0x11a/0x9fd
[ 168.099790] [<ffffffff802e4dad>] ? release_sysfs_dirent+0x8c/0xac
[ 168.100792] [<ffffffff8055b9d5>] schedule_timeout+0x22/0xb4
[ 168.101787] [<ffffffff8037265e>] ? __list_add+0x62/0x9a
[ 168.102787] [<ffffffff8055ab53>] wait_for_common+0x109/0x152
[ 168.103786] [<ffffffff80228819>] ? default_wake_function+0x0/0xf
[ 168.104788] [<ffffffff8055ac26>] wait_for_completion+0x18/0x1a
[ 168.105784] [<ffffffff802428e2>] flush_cpu_workqueue+0x70/0x7c
[ 168.106785] [<ffffffff8024291c>] ? wq_barrier_func+0x0/0xf
[ 168.107786] [<ffffffff8024296e>] flush_workqueue+0x43/0x5d
[ 168.108785] [<ffffffff80242998>] flush_scheduled_work+0x10/0x12
[ 168.109788] [<ffffffff803bd0ce>] release_dev+0x529/0x6c6
[ 168.110787] [<ffffffff802894b5>] ? free_page_and_swap_cache+0x32/0x36
[ 168.111791] [<ffffffff80368bbe>] ? _atomic_dec_and_lock+0x5a/0x98
[ 168.112785] [<ffffffff80368bbe>] ? _atomic_dec_and_lock+0x5a/0x98
[ 168.113786] [<ffffffff803bd424>] tty_release+0x19/0x24
[ 168.114784] [<ffffffff8029630d>] __fput+0xc0/0x21d
[ 168.115784] [<ffffffff8029647e>] fput+0x14/0x16
[ 168.116783] [<ffffffff80292f7a>] filp_close+0x66/0x71
[ 168.117785] [<ffffffff802340a8>] put_files_struct+0x74/0xc3
[ 168.118788] [<ffffffff8023413e>] __exit_files+0x47/0x50
[ 168.119784] [<ffffffff80235c3b>] do_exit+0x39c/0x90b
[ 168.120783] [<ffffffff803ca25d>] ? do_unblank_screen+0x53/0x131
[ 168.121784] [<ffffffff8055e0ad>] oops_begin+0x0/0x90
[ 168.122782] [<ffffffff8020a023>] ? set_personality_64bit+0x14/0x32
[ 168.123782] [<ffffffff8055ff24>] do_page_fault+0x8b9/0x9ad
[ 168.124784] [<ffffffff8055d761>] ? _spin_unlock_irqrestore+0x3a/0x45
[ 168.126773] [<ffffffff80249e46>] ? up+0x42/0x47
[ 168.127781] [<ffffffff8055d761>] ? _spin_unlock_irqrestore+0x3a/0x45
[ 168.128785] [<ffffffff8023239e>] ? release_console_sem+0x1ae/0x1bb
[ 168.129783] [<ffffffff802329bb>] ? vprintk+0x377/0x3aa
[ 168.130783] [<ffffffff802329bb>] ? vprintk+0x377/0x3aa
[ 168.131783] [<ffffffff8055db19>] error_exit+0x0/0x51
[ 168.132818] [<ffffffff80563cec>] ? _etext+0x0/0x7b
[ 168.133810] [<ffffffff80563cec>] ? _etext+0x0/0x7b
[ 168.134813] [<ffffffff8020a023>] ? set_personality_64bit+0x14/0x32
[ 168.135807] [<ffffffff80211872>] ? alternatives_smp_unlock+0x66/0x7b
[ 168.136783] [<ffffffff80211a01>] ? alternatives_smp_switch+0x17a/0x1b6
[ 168.137785] [<ffffffff80219dd3>] ? __cpu_die+0x58/0x87
[ 168.138781] [<ffffffff805498b2>] ? _cpu_down+0x1a4/0x28c
[ 168.139784] [<ffffffff80252e90>] ? disable_nonboot_cpus+0x60/0x108
[ 168.140780] [<ffffffff80241619>] ? kernel_power_off+0x21/0x3b
[ 168.141779] [<ffffffff80241863>] ? sys_reboot+0xf8/0x196
[ 168.142781] [<ffffffff80291233>] ? kfree+0x2b/0x1ac
[ 168.143781] [<ffffffff80265a44>] ? audit_syscall_entry+0x16e/0x1a2
[ 168.144783] [<ffffffff80213619>] ? syscall_trace_enter+0xa4/0xa9
[ 168.145779] [<ffffffff8020c32e>] ? tracesys+0x71/0xe1
[ 168.146782] [<ffffffff8020c399>] ? tracesys+0xdc/0xe1
[ 168.147779]
[ 168.148798] halt used greatest stack depth: 3304 bytes left
[ 176.814710] SysRq : Emergency Sync
[ 176.815397] Emergency Sync complete
[ 177.804460] SysRq : Emergency Sync
[ 177.806194] Emergency Sync complete
[ 179.663923] SysRq : Emergency Remount R/O
[ 179.664927] Emergency Remount complete
[ 181.729629] SysRq : Emergency Sync
[ 181.730654] Emergency Sync complete
[ 184.781877] SysRq : Resetting

> I suppose one of us should bisect it.

I'll let you know what I find...


Attachments:
(No filename) (226.00 B)

2008-03-07 08:07:37

by Thomas Gleixner

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 7 Mar 2008, [email protected] wrote:
> On Thu, 06 Mar 2008 22:16:02 PST, Andrew Morton said:
> > > [ 74.254402] CPU 1 is now offline
> > > [ 74.255395] SMP alternatives: switching to UP code
> > > [ 74.256373] BUG: unable to handle kernel paging request at ffffffff8020a023

Can you decode ffffffff8020a023 via addr2line please ?

Thanks,
tglx

2008-03-07 08:23:33

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 07 Mar 2008 09:06:59 +0100, Thomas Gleixner said:
> On Fri, 7 Mar 2008, [email protected] wrote:
> > On Thu, 06 Mar 2008 22:16:02 PST, Andrew Morton said:
> > > > [ 74.254402] CPU 1 is now offline
> > > > [ 74.255395] SMP alternatives: switching to UP code
> > > > [ 74.256373] BUG: unable to handle kernel paging request at ffffffff8020a023
>
> Can you decode ffffffff8020a023 via addr2line please ?

It's been a long day, and I couldn't get addr2line to work, it kept saying '??:0'.

However, this is in my System.map:

ffffffff8020a000 t poll_idle
ffffffff8020a009 t do_nothing
ffffffff8020a00f T set_personality_64bit
ffffffff8020a041 T release_thread
ffffffff8020a07d T arch_randomize_brk

so set_personality_64bit+0x14 or so?


Attachments:
(No filename) (226.00 B)

2008-03-07 08:35:07

by Thomas Gleixner

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 7 Mar 2008, [email protected] wrote:

> On Fri, 07 Mar 2008 09:06:59 +0100, Thomas Gleixner said:
> > On Fri, 7 Mar 2008, [email protected] wrote:
> > > On Thu, 06 Mar 2008 22:16:02 PST, Andrew Morton said:
> > > > > [ 74.254402] CPU 1 is now offline
> > > > > [ 74.255395] SMP alternatives: switching to UP code
> > > > > [ 74.256373] BUG: unable to handle kernel paging request at ffffffff8020a023
> >
> > Can you decode ffffffff8020a023 via addr2line please ?
>
> It's been a long day, and I couldn't get addr2line to work, it kept saying '??:0'.
>
> However, this is in my System.map:
>
> ffffffff8020a000 t poll_idle
> ffffffff8020a009 t do_nothing
> ffffffff8020a00f T set_personality_64bit
> ffffffff8020a041 T release_thread
> ffffffff8020a07d T arch_randomize_brk
>
> so set_personality_64bit+0x14 or so?

Yeah. Sorry for making you do useless work. The meat is here:

> > [ 74.256373] PGD 203067 PUD 207063 PMD 7e4cc163 PTE 20a161

----------------------------------------------------------^^^^^^

The PTE has the RW bit cleared, so the fault is not a big surprise.

Thanks,
tglx

2008-03-07 19:31:46

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 07 Mar 2008 09:34:01 +0100, Thomas Gleixner said:

> Yeah. Sorry for making you do useless work. The meat is here:
>
> > > [ 74.256373] PGD 203067 PUD 207063 PMD 7e4cc163 PTE 20a161
>
> ----------------------------------------------------------^^^^^^
>
> The PTE has the RW bit cleared, so the fault is not a big surprise.

Probably not surprisingly, the quilt bisect says the problem is git-x86,patch.


Attachments:
(No filename) (226.00 B)

2008-03-09 16:29:06

by Andrew G. Morgan

[permalink] [raw]
Subject: Re: prctl(0x8) -> EINVAL [Was: 2.6.25-rc3-mm1]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Acked-by: Andrew G. Morgan <[email protected]>

Cheers

Andrew

Serge E. Hallyn wrote:
|
| This patch address the !CONFIG_SECURITY case, but not the case of
| using the dummy LSM. The default these days is to have capabilities
| compiled in no matter what, but it is still possible to have
| CONFIG_SECURITY=y and CONFIG_SECURITY_CAPABILITIES=n, in which
| case prctl(0x8) will return -EINVAL. Do we want dummy to call
| cap_prctl() as well, or are we ok with userspace getting -EINVAL
| given that there are in fact no capabilities at that point and
| the userspace code is clearly expecting them?
|
| thanks,
| -serge
|
|>From 4a66f19580489a3ac84f0a145e4585c09e65c88e Mon Sep 17 00:00:00 2001
| From: Serge E. Hallyn <[email protected]>
| Date: Wed, 5 Mar 2008 06:02:32 -0800
| Subject: [PATCH 1/1] capabilities: use cap_task_prctl when
!CONFIG_SECURITY
|
| capabilities-implement-per-process-securebits.patch introduced
| cap_task_prctl() and moved the handling of capability-related
| prctl into it. So when !CONFIG_SECURITY, the default
| security_task_prctl() needs to call cap_task_prctl() the way
| other default hooks call capability helpers when they exist.
|
| This fixes a slew of userspace breakages when
| CONFIG_SECURITY=n.
|
| Signed-off-by: Serge E. Hallyn <[email protected]>
| ---
| include/linux/security.h | 2 +-
| 1 files changed, 1 insertions(+), 1 deletions(-)
|
| diff --git a/include/linux/security.h b/include/linux/security.h
| index 83763b0..861d6da 100644
| --- a/include/linux/security.h
| +++ b/include/linux/security.h
| @@ -2228,7 +2228,7 @@ static inline int security_task_prctl (int
option, unsigned long arg2,
| unsigned long arg4,
| unsigned long arg5, long *rc_p)
| {
| - return 0;
| + return cap_task_prctl(option, arg2, arg3, arg3, arg5, rc_p);
| }
|
| static inline void security_task_reparent_to_init (struct task_struct *p)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFH1BA/mwytjiwfWMwRAkQ3AJ4h7rKORHnRvoQrPh/l1psZEwsRJACePk1T
AooB76FrfRd63O2kOpPvqNU=
=rxzU
-----END PGP SIGNATURE-----

2008-03-12 07:33:12

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Thu, 06 Mar 2008 22:58:45 -0500 [email protected] wrote:

> On Tue, 04 Mar 2008 01:19:28 PST, Andrew Morton said:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/2.6.25-rc3-mm1/
>
> Dell Latitude D820, x86_64, Core2 Duo T7200
>
> 'shutdown -h' blows up at the very end. shutdown -r works OK.

Did rc5-mm1 fix this?

2008-03-13 02:20:06

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Wed, 12 Mar 2008 00:32:27 PDT, Andrew Morton said:
> On Thu, 06 Mar 2008 22:58:45 -0500 [email protected] wrote:
>
> > On Tue, 04 Mar 2008 01:19:28 PST, Andrew Morton said:
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/
2.6.25-rc3-mm1/
> >
> > Dell Latitude D820, x86_64, Core2 Duo T7200
> >
> > 'shutdown -h' blows up at the very end. shutdown -r works OK.
>
> Did rc5-mm1 fix this?

Nope, still blows up with exactly the same traceback.

I may have to try again to figure out how to bisect the git-x86 tree - Ingo
send me a pointer to his git-x86 cheat sheet, I looked at it but I couldn't
figure out how to tell 'git bisect' that the starting good spot was "whatever
corresponded to the git-x86 patch in 24-rc8-mm1" and bad was "25-rc3-mm1". I
tried using the first commit ID listed in the patch, but that gave me this:

(looking at first few lines of the git-x86.patch in the 25-rc3-mm1 broken-out):

commit fa70e201463a7f3d86b995249e57a8e27b31b5f8
Author: Paolo Ciarrocchi <[email protected]>
Date: Sun Feb 24 11:57:22 2008 +0100

but then:

% git bisect bad fa70e201463a7f3d86b995249e57a8e27b31b5f8
fatal: Needed a single revision
Bad rev input: fa70e201463a7f3d86b995249e57a8e27b31b5f8

And I didn't see any release tags in the x86 git tree that I could specify
either.

(Once I get the good and bad markers set, it "should be easy" - I've managed
to git-bisect through Linus's git tree before, but that was always easy
because "bad" was HEAD and "good" had a nice v2.6.2mumble-rcN tag to specify...


Attachments:
(No filename) (226.00 B)

2008-03-13 02:33:23

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Wed, 12 Mar 2008 22:19:11 -0400 [email protected] wrote:

> On Wed, 12 Mar 2008 00:32:27 PDT, Andrew Morton said:
> > On Thu, 06 Mar 2008 22:58:45 -0500 [email protected] wrote:
> >
> > > On Tue, 04 Mar 2008 01:19:28 PST, Andrew Morton said:
> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc3/
> 2.6.25-rc3-mm1/
> > >
> > > Dell Latitude D820, x86_64, Core2 Duo T7200
> > >
> > > 'shutdown -h' blows up at the very end. shutdown -r works OK.
> >
> > Did rc5-mm1 fix this?
>
> Nope, still blows up with exactly the same traceback.

ah.

> I may have to try again to figure out how to bisect the git-x86 tree - Ingo
> send me a pointer to his git-x86 cheat sheet, I looked at it but I couldn't
> figure out how to tell 'git bisect' that the starting good spot was "whatever
> corresponded to the git-x86 patch in 24-rc8-mm1" and bad was "25-rc3-mm1". I
> tried using the first commit ID listed in the patch, but that gave me this:
>
> (looking at first few lines of the git-x86.patch in the 25-rc3-mm1 broken-out):
>
> commit fa70e201463a7f3d86b995249e57a8e27b31b5f8
> Author: Paolo Ciarrocchi <[email protected]>
> Date: Sun Feb 24 11:57:22 2008 +0100
>
> but then:
>
> % git bisect bad fa70e201463a7f3d86b995249e57a8e27b31b5f8
> fatal: Needed a single revision
> Bad rev input: fa70e201463a7f3d86b995249e57a8e27b31b5f8
>
> And I didn't see any release tags in the x86 git tree that I could specify
> either.
>
> (Once I get the good and bad markers set, it "should be easy" - I've managed
> to git-bisect through Linus's git tree before, but that was always easy
> because "bad" was HEAD and "good" had a nice v2.6.2mumble-rcN tag to specify...

Yes, it's all a bit mysterious. I just look in the changelog, which was
pull edout of the git diff via various means.

See how
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc5/2.6.25-rc5-mm1/broken-out
starts with 5813a19cba5735b629cdeb156863dab814759128 and ends with
816543f9bf2fb77ff52083216a4537eb4e3058ec. Use
5813a19cba5735b629cdeb156863dab814759128 as good and
816543f9bf2fb77ff52083216a4537eb4e3058ec as bad.

2008-03-13 03:57:36

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Wed, 12 Mar 2008 19:32:30 PDT, Andrew Morton said:

> Yes, it's all a bit mysterious. I just look in the changelog, which was
> pull edout of the git diff via various means.
>
> See how
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc5/2.6.25-rc5-mm1/broken-out
> starts with 5813a19cba5735b629cdeb156863dab814759128 and ends with
> 816543f9bf2fb77ff52083216a4537eb4e3058ec. Use
> 5813a19cba5735b629cdeb156863dab814759128 as good and
> 816543f9bf2fb77ff52083216a4537eb4e3058ec as bad.

I *hope* I'm mis-reading Ingo's directions when I cut-n-pasted them -
first I pulled down the two trees, tried to bisect, had it give me the
"need a single revision" error, then I checked out a tree - and got a
*different* funky opaque error message when I tried to bisect:

[/usr/src/valdis/x86.git] git-init-db
Initialized empty Git repository in .git/
[/usr/src/valdis/x86.git] git-remote add linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[/usr/src/valdis/x86.git] git-remote add x86 git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
[/usr/src/valdis/x86.git] git-remote update
Updating linus
warning: no common commits
(...)
Resolving deltas: 100% (598008/598008), done.
>From git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
* [new branch] master -> linus/master
remote: Counting objects: 105, done.
(...)
>From git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
* [new tag] v2.6.12 -> v2.6.12
* [new tag] v2.6.12-rc2 -> v2.6.12-rc2
(...)
* [new tag] v2.6.25-rc4 -> v2.6.25-rc4
* [new tag] v2.6.25-rc5 -> v2.6.25-rc5
Updating x86
remote: Counting objects: 2651, done.
(...)
Resolving deltas: 100% (1979/1979)
s: 100% (1979/1979), completed with 310 local objects.
>From git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86
* [new branch] base -> x86/base
* [new branch] for-akpm -> x86/for-akpm
* [new branch] for-linus -> x86/for-linus
* [new branch] latest -> x86/latest
* [new branch] master -> x86/master
* [new branch] origin -> x86/origin
* [new branch] testing -> x86/testing
[/usr/src/valdis/x86.git] git bisect start
[/usr/src/valdis/x86.git] git bisect good 5813a19cba5735b629cdeb156863dab814759128
fatal: Needed a single revision
Bad rev commit: ^{commit}
[/usr/src/valdis/x86.git] git branch list
fatal: Not a valid object name: 'master'.
[/usr/src/valdis/x86.git] git checkout -b x86-off x86/for-akpm
warning: You appear to be on a branch yet to be born.
warning: Forcing checkout of x86/for-akpm.
Checking out files: 25% (5948/23789)
Checking out files: 31% (7375/23789)
Checking out files: 37% (8809/23789)
Checking out files: 43% (10230/23789)
Checking out files: 48% (11466/23789)
Checking out files: 54% (12847/23789)
Checking out files: 58% (13811/23789)
Checking out files: 64% (15225/23789)
Checking out files: 69% (16415/23789)
Checking out files: 75% (17842/23789)
Checking out files: 81% (19032/23789)
Checking out files: 87% (20659/23789)
Checking out files: 92% (21886/23789)
Checking out files: 97% (23076/23789)
Checking out files: 100% (23789/23789), done.
Branch x86-off set up to track remote branch refs/remotes/x86/for-akpm.
Switched to a new branch "x86-off"
[/usr/src/valdis/x86.git] git bisect start
won't bisect on seeked tree

(Google tells me that last message is gone in git 1.5.4.4 - I'm still
on 1.5.4.3). Obviously I'm missing some important clue with working with
more than one remote tree....


Attachments:
(No filename) (226.00 B)

2008-03-13 04:27:30

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Wed, 12 Mar 2008 23:57:12 -0400 [email protected] wrote:

> On Wed, 12 Mar 2008 19:32:30 PDT, Andrew Morton said:
>
> > Yes, it's all a bit mysterious. I just look in the changelog, which was
> > pull edout of the git diff via various means.
> >
> > See how
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.25-rc5/2.6.25-rc5-mm1/broken-out
> > starts with 5813a19cba5735b629cdeb156863dab814759128 and ends with
> > 816543f9bf2fb77ff52083216a4537eb4e3058ec. Use
> > 5813a19cba5735b629cdeb156863dab814759128 as good and
> > 816543f9bf2fb77ff52083216a4537eb4e3058ec as bad.
>
> I *hope* I'm mis-reading Ingo's directions when I cut-n-pasted them -
> first I pulled down the two trees, tried to bisect, had it give me the
> "need a single revision" error, then I checked out a tree - and got a
> *different* funky opaque error message when I tried to bisect:

Try this:

echo "git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git#for-akpm" > .git/branches/git-foo
git-fetch git-foo
git-checkout git-foo
git-bisect start
git-bisect good 968f7910e8d10e5273977248f3d89193b32e8c20
git-bisect bad c28550f4f68a894a3c05141762f388b5a14f33e3

2008-03-14 18:51:33

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Wed, 12 Mar 2008 21:27:08 PDT, Andrew Morton said:

> Try this:
>
> echo "git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git#for-akpm" > .git/branches/git-foo
> git-fetch git-foo
> git-checkout git-foo
> git-bisect start
> git-bisect good 968f7910e8d10e5273977248f3d89193b32e8c20
> git-bisect bad c28550f4f68a894a3c05141762f388b5a14f33e3

Trying it against what I already pulled down:

[/usr/src/valdis/x86.git] echo "git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git#for-akpm" > .git/branches/git-foo
[/usr/src/valdis/x86.git] git-fetch git-foo
remote: Counting objects: 1642, done.
remote: Compressing objects: 100% (261/261), done.
remote: Total 1296 (delta 1090), reused 1238 (delta 1034)
Receiving objects: 100% (1296/1296), 197.24 KiB | 215 KiB/s, done.
Resolving deltas: 100% (1090/1090), completed with 218 local objects.
[/usr/src/valdis/x86.git] git-checkout git-foo
error: pathspec 'git-foo' did not match any file(s) known to git.
Did you forget to 'git add'?
[/usr/src/valdis/x86.git] git-bisect start
won't bisect on seeked tree
[/usr/src/valdis/x86.git] git-checkout -b git-foo git-foo
git checkout: updating paths is incompatible with switching branches/forcing
Did you intend to checkout 'git-foo' which can not be resolved as commit?

Trying again against a totally clean new directory:

[/usr/src/valdis] git --version
git version 1.5.4.3
[/usr/src/valdis] rm -rf x86.git
[/usr/src/valdis] mkdir x86.git
[/usr/src/valdis] cd x86.git
[/usr/src/valdis/x86.git] git-init-db
Initialized empty Git repository in .git/
[/usr/src/valdis/x86.git] git-remote add linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[/usr/src/valdis/x86.git] git-remote update
Updating linus
warning: no common commits
remote: Counting objects: 721254, done.
remote: Compressing objects: 100% (130309/130309), done.
remote: Total 721254 (delta 598318), reused 711930 (delta 589976)
Receiving objects: 100% (721254/721254), 175.04 MiB | 3535 KiB/s, done.
Resolving deltas: 100% (598318/598318), done.
>From git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
* [new branch] master -> linus/master
remote: Counting objects: 105, done.
remote: Compressing objects: 100% (105/105), done.
remote: Total 105 (delta 0), reused 102 (delta 0)
Receiving objects: 100% (105/105), 30.40 KiB, done.
>From git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
* [new tag] v2.6.12 -> v2.6.12
* [new tag] v2.6.12-rc2 -> v2.6.12-rc2
(...)
* [new tag] v2.6.25-rc3 -> v2.6.25-rc3
* [new tag] v2.6.25-rc4 -> v2.6.25-rc4
* [new tag] v2.6.25-rc5 -> v2.6.25-rc5
[/usr/src/valdis/x86.git] echo "git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git#for-akpm" > .git/branches/git-foo
[/usr/src/valdis/x86.git] git-fetch git-foo
remote: Counting objects: 1035, done.
remote: Compressing objects: 100% (171/171), done.
remote: Total 909 (delta 777), reused 868 (delta 738)
Receiving objects: 100% (909/909), 138.30 KiB, done.
Resolving deltas: 100% (777/777), completed with 117 local objects.
[/usr/src/valdis/x86.git] git-checkout git-foo
error: pathspec 'git-foo' did not match any file(s) known to git.
Did you forget to 'git add'?
[/usr/src/valdis/x86.git] git-bisect start
[/usr/src/valdis/x86.git] git-bisect good 968f7910e8d10e5273977248f3d89193b32e8c20
fatal: Needed a single revision
Bad rev commit: ^{commit}

Try a third time, pulling down linus and x86 trees:

[/usr/src/valdis] rm -rf x86.git
[/usr/src/valdis] mkdir x86.git
[/usr/src/valdis] cd x86.git
[/usr/src/valdis/x86.git] git-remote add x86 git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
fatal: Not a git repository at /usr/lib/perl5/vendor_perl/5.10.0/Git.pm line 197.
[/usr/src/valdis/x86.git] git-init-db
Initialized empty Git repository in .git/
[/usr/src/valdis/x86.git] git-remote add x86 git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
[/usr/src/valdis/x86.git] git-remote add x86 git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
remote x86 already exists.
[/usr/src/valdis/x86.git] git-remote add linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[/usr/src/valdis/x86.git] git-remote update
Updating linus
warning: no common commits
remote: Counting objects: 721254, done.
remote: Compressing objects: 100% (130309/130309), done.
remote: Total 721254 (delta 598318), reused 711930 (delta 589976)
Receiving objects: 100% (721254/721254), 175.04 MiB | 10032 KiB/s, done.
Resolving deltas: 100% (598318/598318), done.
>From git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
* [new branch] master -> linus/master
remote: Counting objects: 105, done.
remote: Compressing objects: 100% (105/105), done.
remote: Total 105 (delta 0), reused 102 (delta 0)
Receiving objects: 100% (105/105), 30.40 KiB, done.
>From git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
* [new tag] v2.6.12 -> v2.6.12
* [new tag] v2.6.12-rc2 -> v2.6.12-rc2
* [new tag] v2.6.12-rc3 -> v2.6.12-rc3
(...}
* [new tag] v2.6.25-rc3 -> v2.6.25-rc3
* [new tag] v2.6.25-rc4 -> v2.6.25-rc4
* [new tag] v2.6.25-rc5 -> v2.6.25-rc5
Updating x86
remote: Counting objects: 2651, done.
remote: Compressing objects: 100% (340/340), done.
remote: Total 2320 (delta 1978), reused 2320 (delta 1978)
Receiving objects: 100% (2320/2320), 408.43 KiB | 588 KiB/s, done.
Resolving deltas: 100% (1978/1978), completed with 310 local objects.
>From git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86
* [new branch] base -> x86/base
* [new branch] for-akpm -> x86/for-akpm
* [new branch] for-linus -> x86/for-linus
* [new branch] latest -> x86/latest
* [new branch] master -> x86/master
* [new branch] origin -> x86/origin
* [new branch] testing -> x86/testing
[/usr/src/valdis/x86.git] echo "git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git#for-akpm" > .git/branches/git-foo
[/usr/src/valdis/x86.git] git-fetch git-foo
[/usr/src/valdis/x86.git] git-checkout git-foo
error: pathspec 'git-foo' did not match any file(s) known to git.
Did you forget to 'git add'?
[/usr/src/valdis/x86.git] git-bisect start
[/usr/src/valdis/x86.git] git-bisect good 968f7910e8d10e5273977248f3d89193b32e8c20
fatal: Needed a single revision
Bad rev commit: ^{commit}

Obviously, I'm either a *total* git-idiot, or malevolent spirits have taken
up residence in my laptop and are conspiring to prevent me from troubleshooting
this problem... ;)


Attachments:
(No filename) (226.00 B)

2008-03-21 13:42:20

by Ingo Molnar

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time


* [email protected] <[email protected]> wrote:

> I may have to try again to figure out how to bisect the git-x86 tree -
> Ingo send me a pointer to his git-x86 cheat sheet, I looked at it but
> I couldn't figure out how to tell 'git bisect' that the starting good
> spot was "whatever corresponded to the git-x86 patch in 24-rc8-mm1"
> and bad was "25-rc3-mm1". I tried using the first commit ID listed in
> the patch, but that gave me this:

the best way to bisect the x86.git-only commits is to do:

git-bisect bad x86/latest
git-bisect good x86/base

the 'base' branch is the upstream tree that x86.git is based against.
This will minimize the number of bisection points as well, because
you'll only bisect x86.git patches.

[ and make sure you test x86/base first to establish that it's truly
'good' :-) ]

Ingo

2008-03-21 19:39:33

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 21 Mar 2008 14:41:28 BST, Ingo Molnar said:
>
> * [email protected] <[email protected]> wrote:
>
> > I may have to try again to figure out how to bisect the git-x86 tree -
> > Ingo send me a pointer to his git-x86 cheat sheet, I looked at it but
> > I couldn't figure out how to tell 'git bisect' that the starting good
> > spot was "whatever corresponded to the git-x86 patch in 24-rc8-mm1"
> > and bad was "25-rc3-mm1". I tried using the first commit ID listed in
> > the patch, but that gave me this:
>
> the best way to bisect the x86.git-only commits is to do:
>
> git-bisect bad x86/latest
> git-bisect good x86/base

OK, *that* got the bisect running. However, after a few bisections, things
are getting weird...

(Note - I haven't done a git pull or update for a week and a bit, so the tree is
as of 03/14 or so...)

'git bisect log' reports:

git-bisect start
# bad: [21a418440c44b6a2cdf38fea2533a5398d6fd939] Move mp_bus_id_to_node to numa.c
git-bisect bad 21a418440c44b6a2cdf38fea2533a5398d6fd939
# good: [dba92d3bc49c036056a48661d2d8fefe4c78375a] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
git-bisect good dba92d3bc49c036056a48661d2d8fefe4c78375a
# good: [53f0f2bc547fd13a70a6adb86592301ec83b9fc7] x86 mmiotrace: comment about user space ABI
git-bisect good 53f0f2bc547fd13a70a6adb86592301ec83b9fc7
# good: [53f0f2bc547fd13a70a6adb86592301ec83b9fc7] x86 mmiotrace: comment about user space ABI
git-bisect good 53f0f2bc547fd13a70a6adb86592301ec83b9fc7
# good: [53f0f2bc547fd13a70a6adb86592301ec83b9fc7] x86 mmiotrace: comment about user space ABI
git-bisect good 53f0f2bc547fd13a70a6adb86592301ec83b9fc7
# good: [2702dd1be087ac7307b731d884ee48db6e1cdff6] x86: create smpcommon.c
git-bisect good 2702dd1be087ac7307b731d884ee48db6e1cdff6
# good: [ad42b55d36238ebb9fa4d7a538ef691a76397c46] x86: add KERN_INFO to show_unhandled_signals printout
git-bisect good ad42b55d36238ebb9fa4d7a538ef691a76397c46
# good: [56b412e63863ea82a5720315076c7dbd1d9888cd] x86: change x86 to use generic find_next_bit
git-bisect good 56b412e63863ea82a5720315076c7dbd1d9888cd
# good: [42de918f25dc9a49fb9688e22c2a3f2b156cc1bf] x86: prevent unconditional writes to DebugCtl MSR
git-bisect good 42de918f25dc9a49fb9688e22c2a3f2b156cc1bf

At this point, 'git bisect visualize' shows 9 commits left to bisect through,
and all are dated 03/10 or later. However, since 25-rc3-mm1 had the problem,
it had to be something in-tree as of 03/05.

Is it possible that the problem code was in the git-x86 tree when Andrew
pulled for -rc3-mm1 and -rc5-mm1, but had been reverted by the time I grabbed
the tree, so the /x86/base' was in fact *good* by that point?


Attachments:
(No filename) (226.00 B)

2008-03-21 19:58:34

by Ingo Molnar

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time


* [email protected] <[email protected]> wrote:

> git-bisect good ad42b55d36238ebb9fa4d7a538ef691a76397c46
> # good: [56b412e63863ea82a5720315076c7dbd1d9888cd] x86: change x86 to use generic find_next_bit
> git-bisect good 56b412e63863ea82a5720315076c7dbd1d9888cd
> # good: [42de918f25dc9a49fb9688e22c2a3f2b156cc1bf] x86: prevent unconditional writes to DebugCtl MSR
> git-bisect good 42de918f25dc9a49fb9688e22c2a3f2b156cc1bf
>
> At this point, 'git bisect visualize' shows 9 commits left to bisect
> through, and all are dated 03/10 or later. However, since 25-rc3-mm1
> had the problem, it had to be something in-tree as of 03/05.
>
> Is it possible that the problem code was in the git-x86 tree when
> Andrew pulled for -rc3-mm1 and -rc5-mm1, but had been reverted by the
> time I grabbed the tree, so the /x86/base' was in fact *good* by that
> point?

no, we frequently regenerate the x86.git tree so the dates have little
relevance. If for any particular pull, x86/base is good and x86/latest
is bad, then the bug is somewhere in those 200-300 patches inbetween.
They are lined up linearly so should be perfectly bisectable.

Ingo

2008-03-21 20:06:21

by Valdis Klētnieks

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 21 Mar 2008 20:58:13 BST, Ingo Molnar said:

> no, we frequently regenerate the x86.git tree so the dates have little
> relevance. If for any particular pull, x86/base is good and x86/latest
> is bad, then the bug is somewhere in those 200-300 patches inbetween.
> They are lined up linearly so should be perfectly bisectable.

OK, off to go try the last few bisects then...



Attachments:
(No filename) (226.00 B)

2008-03-21 20:12:32

by Ingo Molnar

[permalink] [raw]
Subject: Re: 2.6.25-rc3-mm1 - BUG at system shutdown time


* [email protected] <[email protected]> wrote:

> On Fri, 21 Mar 2008 20:58:13 BST, Ingo Molnar said:
>
> > no, we frequently regenerate the x86.git tree so the dates have little
> > relevance. If for any particular pull, x86/base is good and x86/latest
> > is bad, then the bug is somewhere in those 200-300 patches inbetween.
> > They are lined up linearly so should be perfectly bisectable.
>
> OK, off to go try the last few bisects then...

well ... your git bisection log does look suspiciously 'good', so
something is wrong thee i think :-(

the chance to get 8 'good' bisection points in a row is 1:256. OTOH, the
freshest x86 patches are always at the 'end' of the queue - which are
also the ones most likely to break anything.

Are you sure the x86/base point is indeed 'good'? You can check it via:

git-checkout -b tmp x86/base

and build+boot it.

Ingo

2008-03-22 03:11:44

by Valdis Klētnieks

[permalink] [raw]
Subject: Hoo-fscking-ray - (was Re: 2.6.25-rc3-mm1 - BUG at system shutdown time

On Fri, 21 Mar 2008 21:12:11 BST, Ingo Molnar said:
>
> * [email protected] <[email protected]> wrote:
>
> > On Fri, 21 Mar 2008 20:58:13 BST, Ingo Molnar said:
> >
> > > no, we frequently regenerate the x86.git tree so the dates have little
> > > relevance. If for any particular pull, x86/base is good and x86/latest
> > > is bad, then the bug is somewhere in those 200-300 patches inbetween.
> > > They are lined up linearly so should be perfectly bisectable.
> >
> > OK, off to go try the last few bisects then...
>
> well ... your git bisection log does look suspiciously 'good', so
> something is wrong thee i think :-(
>
> the chance to get 8 'good' bisection points in a row is 1:256. OTOH, the
> freshest x86 patches are always at the 'end' of the queue - which are
> also the ones most likely to break anything.

On the other hand, this was broken in 25-rc3-mm1, so it's not a "fresh"
patch...

> Are you sure the x86/base point is indeed 'good'? You can check it via:
>
> git-checkout -b tmp x86/base
>
> and build+boot it.

Did that, and it's good (as in 'shutdown -h now' powers off rather than BUG and
hanging).

"You're at Witt's End" -- Adventure, c. 1978

OK.. so far I've got:

25-rc3-mm1 is bad
25-rc5-mm1 is bad, and bisected down to git-x86.patch
x86/base as pulled last week is good
bisected to within the last 9 entries of x86/latest is good.

So I can't seem to replicate it using the git-x86 tree, but bisecting -mm
implicates it. How very strange.

I even went and pulled Andrew's mmotm pile as of this afternoon, and got that
to built after having to heave only a dozen patches over the side and one or
two hand-fixes of patches - and *that* one is good too.

So I'm thinking that it was some "bump in the night" that was broken in the
x86 tree when Andrew pulled it for 25-rc5-mm1, but was fixed by the time I
pulled it a few days later to start git-bisecting it.

Given that -mmotm isn't showing the problem, I'm having a hard time coming
up with enthusiasm to keep chasing it. If I see it happen again in a -mm
or Linus kernel, I'll restart the chase then....



Attachments:
(No filename) (226.00 B)

2008-03-22 12:10:17

by Ingo Molnar

[permalink] [raw]
Subject: Re: Hoo-fscking-ray - (was Re: 2.6.25-rc3-mm1 - BUG at system shutdown time


* [email protected] <[email protected]> wrote:

> Given that -mmotm isn't showing the problem, I'm having a hard time
> coming up with enthusiasm to keep chasing it. If I see it happen
> again in a -mm or Linus kernel, I'll restart the chase then....

if it ever reappears then please check x86/latest first (without any
other -mm bits) and notify us.

Ingo