linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* 2.6.22-rc3-mm1
@ 2007-05-31  6:58 Andrew Morton
  2007-05-31 12:09 ` 2.6.22-rc3-mm1 Cornelia Huck
                   ` (25 more replies)
  0 siblings, 26 replies; 105+ messages in thread
From: Andrew Morton @ 2007-05-31  6:58 UTC (permalink / raw)
  To: linux-kernel


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

- Merged the convert-cpusets-to-container-infrastructure patches.  These
  will probably be dropped and redone.



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 majordomo@vger.kernel.org

- 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.



Changes since 2.6.22-rc2-mm1:


 origin.patch
 git-acpi.patch
 git-alsa.patch
 git-avr32.patch
 git-cifs.patch
 git-cpufreq.patch
 git-drm.patch
 git-dvb.patch
 git-gfs2-nmw.patch
 git-hid.patch
 git-ieee1394.patch
 git-input.patch
 git-kbuild.patch
 git-kvm.patch
 git-leds.patch
 git-libata-all.patch
 git-md-accel.patch
 git-mips.patch
 git-mmc.patch
 git-mtd.patch
 git-ubi.patch
 git-netdev-all.patch
 git-net.patch
 git-backlight.patch
 git-battery.patch
 git-ioat.patch
 git-ioat-vs-git-md-accel.patch
 git-nfs.patch
 git-nfs-server-cluster-locking-api.patch
 git-ocfs2.patch
 git-parisc.patch
 git-r8169.patch
 git-selinux.patch
 git-pciseg.patch
 git-s390.patch
 git-sh.patch
 git-scsi-misc.patch
 git-scsi-rc-fixes.patch
 git-scsi-target.patch
 git-unionfs.patch
 git-watchdog.patch
 git-wireless.patch
 git-ipwireless_cs.patch
 git-newsetup.patch
 git-xfs.patch
 git-cryptodev.patch
 git-xtensa.patch
 git-gccbug.patch

 git trees

-powerpc-fix.patch
-freezer-close-potential-race-between-refrigerator-and-thaw_tasks.patch
-freezer-fix-vfork-problem.patch
-freezer-take-kernel_execve-into-consideration.patch
-freezer-fix-kthread_create-vs-freezer-theoretical-race.patch
-freezer-fix-pf_nofreeze-vs-freezeable-race.patch
-freezer-move-frozen_process-to-kernel-power-processc.patch
-ignore-bogus-acpi-info-for-offline-cpus.patch
-slub-debug-fix-object-size-calculation.patch
-fuse-fix-mknod-of-regular-file.patch
-mpc52xx_psc_spi-fix-it-for-config_ppc_merge.patch
-spi-doc-update-describe-clock-mode-bits.patch
-nohz-rate-limit-the-local-softirq-pending-warning-output.patch
-genhd-expose-an-to-user-space.patch
-genhd-send-async-notification-on-media-change.patch
-capabilityh-warning-fix.patch
-remove-unused-header-file-arch-arm-mach-s3c2410-basth.patch
-avr32-ratelimit-segfault-reporting-rate.patch
-cifs-oops-fix.patch
-powerpc-fix-kconfig-select-warning-with-ucc_fast.patch
-8xx-mpc885ads-pcmcia-support-fix.patch
-gregkh-driver-howto-removing-duplicated-entry.patch
-drm-spinlock-initializer-cleanup.patch
-cinergyt2-fix-file-release-handler.patch
-saa7111-fix-picture-settings-cache-bug.patch
-jdelvare-i2c-i2c-legacy-drivers-shouldnt-issue-uevents.patch
-jdelvare-i2c-i2c-usb-tiny-fix-name-length.patch
-jdelvare-i2c-i2c-s3c2410-fix-build-warning.patch
-jdelvare-hwmon-hwmon-ds1621-swapped-limits.patch
-jdelvare-hwmon-hwmon-coretemp-add-more-safety-checks.patch
-jdelvare-hwmon-hwmon-w83627hf-quiet-when-no-chip.patch
-dave-broke-gfs2-26-nmwgit.patch
-use-menuconfig-objects-ii-kvm-virt.patch
-libata-acpi-add-infrastructure-for-drivers-to-use.patch
-pata_acpi-restore-driver-vs-libata-clean-up-sff-init-mess-fix.patch
-optional-led-trigger-for-libata.patch
-libata-add-support-for-ata_16-on-atapi.patch
-drivers-ata-add-sw-ncq-support-to-sata_nv-for-mcp51-mcp55-mcp61.patch
-drivers-ata-add-sw-ncq-support-to-sata_nv-for-mcp51-mcp55-mcp61-fix.patch
-drivers-ata-add-sw-ncq-support-to-sata_nv-for-mcp51-mcp55-mcp61-fix-tidy.patch
-cleanup-libata-hpa-support.patch
-cleanup-libata-hpa-support-fix.patch
-hpt3x2n-correct-revision-boundary.patch
-pata_sis-fix-and-clean-up-some-timing-setups.patch
-ide-aec62xx-kill-speedproc-method-wrapper.patch
-ide-warning-fixes.patch
-ide-add-seagate-stt20000a-to-dma-blacklist.patch
-git-md-accel-build-fix.patch
-sundance-change-phy-address-search-from-phy=1-to-phy=0.patch
-forcedeth-add-vitesse-phy.patch
-forcedeth-fix-power-management-support.patch
-forcedeth-fix-cpu-irq-mask.patch
-forcedeth-version-bump.patch
-use-mutex-instead-of-binary-semaphore-in-idt77252-driver.patch
-use-menuconfig-objects-dccp.patch
-use-menuconfig-objects-ipvs.patch
-use-menuconfig-objects-sctp.patch
-use-menuconfig-objects-tipc.patch
-use-menuconfig-objects-arcnet.patch
-use-menuconfig-objects-toeknring.patch
-af_rxrpc-af_rxrpc-depends-on-ipv4.patch
-af_rxrpc-make-call-state-names-available-if-config_proc_fs=n.patch
-xfrm_algo-warning-fixes.patch
-round_up-macro-cleanup-in-drivers-parisc.patch
-pci-quirks-disable-msi-on-rs400-200-and-rs480.patch
-drivers-scsi-advansysc-cleanups.patch
-remove-unnecessary-check-in-drivers-scsi-sgc.patch
-drivers-scsi-ncr5380c-replacing-yield-with-a.patch
-scsi-cover-up-bugs-fix-up-compiler-warnings-in-megaraid-driver.patch
-fdomainc-get-rid-of-unused-stuff.patch
-scsi-fix-config_scsi_wait_scan=m.patch
-scsi-use-irq_handler_t-where-appropriate.patch
-drivers-scsi-ipsc-remove-kernel-24-code.patch
-drivers-scsi-nsp32c-remove-kernel-24-code.patch
-aic94xx-asd_clear_nexus-should-fail-if-the-cleared-task-does-not-complete.patch
-scsi-megaraid_sas-intercepts-cmd-timeout-and-throttle-io.patch
-scsi-remove-__gfp_dma.patch
-ncr5380-warning-fixes.patch
-gregkh-usb-usb-fix-omninet-memory-leak-found-by-coverity.patch
-gregkh-usb-usb-remove-useless-check-in-mos7840-found-by-coverity.patch
-gregkh-usb-usb-storage-ignore-sitecom-wl-117-usb-wlan.patch
-gregkh-usb-usb-fix-more-ftdi-elan-u132-hcd-include-lossage.patch
-gregkh-usb-usb-handle-more-rndis_host-oddities.patch
-gregkh-usb-usb-remove-usb-docbook-warnings.patch
-gregkh-usb-usb-address-fixme-in-usbnet-wrt-drivers-claiming-multiple-interfaces.patch
-gregkh-usb-ehci-fix-problem-with-bios-handoff.patch
-gregkh-usb-usb-more-autosuspend-timer-stuff.patch
-gregkh-usb-usb-remove-unneeded-warn_on.patch
-gregkh-usb-usb-new-device-pid-for-ftdi_sio-driver.patch
-gregkh-usb-usb-set-the-correct-interrupt-interval-in-usb_bulk_msg.patch
-gregkh-usb-usb-fsl_usb2_udc-fix-umti_wide-support-and-a-compile-warning.patch
-gregkh-usb-usb-auerswald-fix-file-release-handler.patch
-gregkh-usb-usb-remove-duplicate-ids-from-option-card-driver.patch
-gregkh-usb-usb-deref-urb-after-usbmon-is-done-with-it.patch
-gregkh-usb-usb-remove-short-initial-timeout-for-device-descriptor-fetch.patch
-gregkh-usb-usb-don-t-try-to-kzalloc-0-bytes.patch
-gregkh-usb-usb-onetouch-switch-to-using-input_dev-devparent.patch
-gregkh-usb-usb-fix-debug-output-of-ark3116.patch
-gregkh-usb-usb-usblp-use-correct-dma-address-in-case-of-probe-error.patch
-gregkh-usb-usb-fix-usb-ohci-subvendor-for-toshiba-portege-4000.patch
-gregkh-usb-usb-make-the-autosuspend-workqueue-thread-freezable.patch
-gregkh-usb-usb-handle-errors-in-power-level-attribute.patch
-gregkh-usb-usb-fix-ratelimit-call-semantics.patch
-gregkh-usb-usb-fix-race-between-autosuspend-and-unregister-for-root-hubs.patch
-usb-core-hubc-loops-forever-on-resume-from-ram-due-to.patch
-watchdog-documentation.patch
-drivers-net-wireless-libertas-rxc-fix.patch
-arch-x86_64-vdso-vmac-needs-schedh.patch
-x86_64-build-and-use-gdt-on-copied-compressed-kernel.patch
-i386-efi-fix-proc-iomem-type-for-kexec-tools.patch
-bug-in-i386-mtrr-initialization.patch
-xfs-clean-up-shrinker-games.patch
-xfs-use-zero_user_page.patch
-prohibit-rcutorture-from-being-compiled-into-the-kernel.patch
-avoid-zero-size-allocation-in-cache_k8_northbridges.patch
-recalc_sigpending_tsk-fixes.patch
-optimize-compat_core_sys_select-by-a-using-stack-space-for-small-fd-sets.patch
-spi-potential-memleak-in-spidev_ioctl.patch
-fbdev-cleanup-of-sparc-fb-options.patch
-pm2fb-rdac_wr-barriers-clean-up.patch
-pm3fb-various-fixes.patch
-w100fb-fix-compile-warnings.patch
-ps3fb-use-fb_sys_-instead-of-fb_cfb_.patch
-imxfb-remove-ifdefs.patch
-imxfb-fix-memory-hole.patch
-missing-const-from-reiserfs-min_key-declaration.patch
-uselib-add-missing-mnt_noexec-check.patch
 x86_64-allocate-sparsemem-memmap-above-4g.patch
-x86_64-allocate-sparsemem-memmap-above-4g-fix.patch
-fuse-generic_write_checks-for-direct_io.patch
-fuse-delete-inode-on-drop.patch
-slub-debug-fix-check-for-super-sized-slabs-512k-64bit-256k.patch
-char-cyclades-fix-deadlock.patch
-simplify-cleanup_workqueue_thread.patch
-simplify-cleanup_workqueue_thread-fix.patch
-simplify-cleanup_workqueue_thread-fix2.patch
-misc-phantom-move-to-unlocked_ioctl.patch
-misc-misc-phantom-move-to-unlocked_ioctl-fix.patch
-misc-phantom-take-care-of-pci-posting.patch
-power-fix-sizeofpage_size-typo.patch
-update-dontdiff-file.patch
-signalfd-retrieve-multiple-signals-with-one-read-call.patch
-signalfd-retrieve-multiple-signals-with-one-read-call-tidy.patch
-i2o-destroy-event-queue-only-when-drv-event-is-set.patch
-i2o-fix-notifiers-when-max_drivers-is-configured.patch
-i2o-eliminate-a-peculiar-constraint-on-i2o_max_drivers.patch
-i386-x86-64-show-that-config_hotplug_cpu-is-required-for-suspend-on-smp.patch
-md-avoid-overflow-in-raid0-calculation-with-large-components.patch
-md-dont-write-more-than-is-required-of-the-last-page-of-a-bitmap.patch
-md-fix-bug-with-linear-hot-add-and-elsewhere.patch
-hisax-fix-error-checking-for-hisax_register.patch
-sch_htb-fix-event-cache-time-calculation.patch
-applesmc-sensors-patch-missing-from-2622-rc2.patch
-off-by-one-in-floppyc.patch
-ecryptfs-delay-writing-0s-after-llseek-until-write.patch
-doc-clocksources.patch
-ehci-fsl-fix-cache-coherency-problem-on-system-with-large-memory.patch
-prevent-going-idle-with-softirq-pending.patch
-i386-fix-early-usage-of-atomic_add_return-and.patch
-omap_uwire-spi_cpha-mode-bugfix.patch
-ads7846-spi_cpha-mode-bugfix.patch
-capifunc-warning-fixes.patch
-hardware-eicon-messagec-warning-fixes.patch
-delete-every-useless-reference-to-noret_type-in-the-tree.patch
-ext4-copy-i_flags-to-inode-flags-on-write.patch
-firestream-warnings.patch

 Merged into mainline or a subsystem tree

+slub-more-documentation.patch
+slub-more-documentation-fix.patch
+smpboot-cachesize-comparison-fix-in-smp_tune_scheduling.patch
+pci-quirks-fix-msi-disabling-on-rs400-200-and-rs480.patch
+ntfs_init_locked_inode-fix-array-indexing.patch
+m68k-runtime-patching-infrastructure.patch
+slub-fix-numa--sysfs-bootstrap-issue.patch
+afs-needs-schedh.patch
+m68k-discontinuous-memory-support.patch

 2.6.22 queue

+mm-fix-fault-vs-invalidate-race-for-linear-mappings-fix.patch

 Fix mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch

+lots-of-architectures-enable-arbitary-speed-tty-support.patch

 tty work

+remove-dell-optiplex-gx240-from-the-acpi-blacklist.patch

 ACPI fix

-use-menuconfig-objects-ii-sound.patch

 Dropped, being redone

-working-3d-dri-intel-agpko-resume-for-i815-chip-tidy.patch
-working-3d-dri-intel-agpko-resume-for-i815-chip-update.patch

 Folded into working-3d-dri-intel-agpko-resume-for-i815-chip.patch

+intel_agp-cleanup-intel-private-data.patch
+intel_agp-cleanup-intel-private-data-update.patch
+intel_agp-use-table-for-device-probe.patch
+intel_agp-use-table-for-device-probe-update.patch

 AGP stuff

+dm-add-missing-braces-in-driver-debug-code.patch

 DM fix

+ppc-remove-dead-code-for-preventing-pread-and-pwrite-calls.patch
+viotape-use-designated-initializers-for-fops-member.patch

 powerpc fixes

+gregkh-driver-driver-core-add-missing-kset-uevent.patch
+gregkh-driver-sysfs-make-sysfs_alloc_ino-static.patch
+gregkh-driver-sysfs-fix-parent-refcounting-during-rename-and-move.patch
+gregkh-driver-sysfs-reorganize-sysfs_new_indoe-and-sysfs_create.patch
+gregkh-driver-sysfs-use-iget_locked-instead-of-new_inode.patch
+gregkh-driver-sysfs-fix-root-sysfs_dirent-root-dentry-association.patch
+gregkh-driver-sysfs-move-s_active-functions-to-fs-sysfs-dirc.patch
+gregkh-driver-sysfs-slim-down-sysfs_dirent-s_active.patch
+gregkh-driver-sysfs-use-singly-linked-list-for-sysfs_dirent-tree.patch

 Driver tree updates

+jdelvare-i2c-i2c-mv64xxx-numbered-adapter.patch
+jdelvare-i2c-i2c-mpc-numbered-adapter.patch
+jdelvare-i2c-i2c-nforce2-add-smbus-block-transactions.patch

 I2C tree updates

+jdelvare-hwmon-hwmon-pc87360-to-platform-driver.patch
+jdelvare-hwmon-hwmon-use-platform_device_add_data.patch
+jdelvare-hwmon-hwmon-lm90-add-max6681-support.patch
+jdelvare-hwmon-hwmon-fault-file-name.patch
+jdelvare-hwmon-hwmon-it87-add-it8726f-support.patch
+jdelvare-hwmon-hwmon-w83627hf-pwm-freq-support.patch

 hwmon tree udpates

+hdaps-switch-to-using-input-polldev.patch
+applesmc-switch-to-using-input-polldev.patch
+ams-switch-to-using-input-polldev.patch

 Update some monitoring drivers for new input APIs

+ia64-arbitary-speed-tty-ioctl-support.patch

 tty work

+joydevc-automatic-re-calibration.patch
+drivers-input-mouse-kconfig-fix-typo.patch

 Inupt updates

+use-posix-bre-in-headers-install-target.patch

 kbuild fix

-git-leds-fixup.patch

 Unneeded

-libata-add-human-readable-error-value-decoding-v2.patch

 Folded into libata-add-human-readable-error-value-decoding.patch

+ide-aec62xx-kill-speedproc-method-wrapper-take-2.patch
+ide-ide_in_drive_list-accept-null-as-the-wildcard-for-firmware-revision.patch
+ide-mips-au1xxx_ide-h-use-null-as-firmware-revision-wildcard.patch
+ide-ide_in_drive_list-all-is-not-a-wildcard-anymore.patch

 IDE tree updates

-nommu-make-it-possible-for-romfs-to-use-mtd-devices-fix.patch

 Folded into nommu-make-it-possible-for-romfs-to-use-mtd-devices.patch

-use-mutex-instead-of-semaphore-in-the-mtd-st-m25pxx-driver-build-fix.patch

 Folded into use-mutex-instead-of-semaphore-in-the-mtd-st-m25pxx-driver.patch

+atari_pamsnetc-old-declaration-ritchie-style-fix.patch

 netdev fix

+wrong-timeout-value-in-sk_wait_data-v2-fix.patch
+atm-fix-warning.patch

 net stuff

+bluetooth-remove-the-redundant-non-seekable-llseek-method.patch

 Bluetooth fix

-sunrpc-rename-rpcb_getport_external-routine.patch
-sunrpc-rename-rpcb_getport-to-be-consistent-with-new-rpcb_getport_sync-name.patch
-nfs-remake-nfsroot_mount-as-a-permanent-part-of-nfs-client.patch
-nfs-clean-up-in-kernel-nfs-mount.patch
-nfs-improve-debugging-output-in-nfs-in-kernel-mount-client.patch
-nfs-new-infrastructure-for-nfs-client-in-kernel-mount-option-parsing.patch
-nfs-add-functions-to-parse-nfs-mount-options-to-fs-nfs-superc.patch
-nfs-implement-nfsv2-3-in-kernel-mount-option-parsing.patch
-nfs-add-functions-to-parse-nfs4-mount-options-to-fs-nfs-superc.patch
-nfs-move-nfs_copy_user_string.patch
-nfs-more-nfs4-in-kernel-mount-option-parsing-infrastructure.patch
-nfs-integrate-support-for-processing-nfs4-mount-options-in-fs-nfs-superc.patch

 Dropped, being redone

-serial-use-resource_size_t-for-port-io-addresses.patch
-serial-set-dtr-in-uart-for-kernel-serial-console.patch

 Dropped

+gregkh-pci-pci_bridge-device.patch

 PCI tree update

+allow-aer-to-build-for-config_acpi-=-n.patch

 AER fix

+git-scsi-misc-fixup.patch

 Fix rejects in git-scsi-misc.patch

+remove-dead-references-to-module_parm-macro.patch
+scsi-lpfc-lpfc_initc-remove-unused-variable.patch

 scsi updates

+block-device-elevator-use-list_for_each_entry-instead-of-list_for_each.patch

 elevator cleanup

+sparc32-build-fix.patch

 Fix sparc32 build

+gregkh-usb-usb-set-default-y-for-config_usb_device_class.patch
+gregkh-usb-usblp-don-t-let-suspend-to-kill-used.patch
+gregkh-usb-usb-usb-gadgets-avoid-le-16-32-_to_cpup.patch
+gregkh-usb-usb-unusual_dev-sync-up-some-reported-devices-from-ubuntu.patch
+gregkh-usb-usb-oti6858-usb-serial-driver.patch
+gregkh-usb-usbmon-add-class-for-binary-interface.patch
+gregkh-usb-usb-add-usb-persist-facility.patch
+gregkh-usb-usb-ehci-ohci-handover-changes.patch
+gregkh-usb-usb-add-reset_resume-device-quirk.patch
+gregkh-usb-usb-ehci-fix-handover-for-designated-full-speed-ports.patch
+gregkh-usb-usb-make-device-reset-stop-retrying-after-disconnect.patch
+gregkh-usb-usb-io_ti-digi-edgeport-update-for-new-devices.patch
+gregkh-usb-usb-patch-to-align-the-various-usb-timers-to-fire-at-the-same-time.patch
+gregkh-usb-usb-rts-cts-handshaking-support-dtr-fixes-for-mct-u232-serial-adapter.patch
+gregkh-usb-usb-usb-gadget-dead-config-cleanup.patch
+gregkh-usb-usb-add-usb_device_and_interface_info-for-device-matching.patch
+gregkh-usb-usb-hubc-loops-forever-on-resume-from-ram-due-to-bluetooth.patch
+gregkh-usb-usb-prevent-char-device-open-deregister-race.patch
+gregkh-usb-usb-rework-c-style-comments.patch
+gregkh-usb-usb-ftdi_sioc-allow-setting-latency-timer-on-ft232rl.patch
+gregkh-usb-usb-ehci-big-endian-data-structures-support.patch
+gregkh-usb-usb-set-config_usb_ehci_big_endian_mmio-_desc-in-usb-host-kconfig.patch
+gregkh-usb-usb-ehci_fsl-update-for-mpc831x-support.patch
+gregkh-usb-usb-use-function-attribute-__maybe_unused.patch
+gregkh-usb-usb-export-linux-usb_gadgetfs-as-linux-usb-gadgetfsh.patch
+gregkh-usb-usb-visor-driver-adapted-to-new-tty-buffering.patch
+gregkh-usb-usb-ti-serial-driver-sleeps-with-spinlock-held.patch
+gregkh-usb-usb-digi-acceleport-adapted-to-new-tty-buffering.patch
+gregkh-usb-usb-generic-usb-serial-to-new-buffering-scheme.patch
+gregkh-usb-pl2303c-patch.patch
+gregkh-usb-usb-usb-serial-gadget-sparse-fixes.patch
+gregkh-usb-usb-core-hubc-prevent-re-enumeration-on-hnp.patch
+gregkh-usb-usb-introduce-usb_anchor.patch
+gregkh-usb-usb-usb-skeleton-use-anchor-to-implement-flush.patch
+gregkh-usb-usb-whiteheat-driver-update.patch
+gregkh-usb-usb-digi_acceleport-further-buffer-clean-up.patch
+gregkh-usb-usb-ehci-safe-endianness-for-transfer-buffers-after-reset-in-case-of-hub-with-tt.patch

 USB tree updates

+make-usb-autosuspend-timer-1-sec-jiffy-aligned.patch
+drivers-block-ubc-use-list_for_each_entry.patch

 USB fixes

+use-list_for_each_entry-for-iteration-in-prism-54-driver.patch
+b44-ssb-fix-an-invalid-pointer-casting.patch

 Wireless fixes

+x86_64-mm-via-no-dac.patch
+x86_64-mm-bug-in-i386-mtrr-initialization.patch
+x86_64-mm-mtrr-sections.patch
+x86_64-mm-allocate-sparsemem-memmap-above-4g-on-x86_64.patch
+x86_64-mm-asm-ptrace_h-needs-linux-compiler_h.patch
+x86_64-mm-gcc-hot-cold.patch
+x86_64-mm-on-cpu-single.patch
+x86_64-mm-xen-add-an-mm-argument-to-alloc_pt.patch
+x86_64-mm-xen-add-a-hook-for-once-the-allocator-is-ready.patch
+x86_64-mm-xen-increase-irq-limit.patch
+x86_64-mm-xen-unstatic-leave_mm.patch
+x86_64-mm-xen-unstatic-smp_store_cpu_info.patch
+x86_64-mm-xen-make-siblingmap-functions-visible.patch
+x86_64-mm-xen-export-__supported_pte_mask.patch
+x86_64-mm-xen-core-xen-implementation.patch
-x86_64-mm-core-xen-implementation.patch
-x86_64-mm-xen-event-channels.patch
+x86_64-mm-xen-xen-event-channels.patch
+x86_64-mm-xen-add-pinned-page-flag.patch
-x86_64-mm-xen-fix-multicall-batching.patch
-x86_64-mm-xen-deal-with-negative-stolen-time.patch
+x86_64-mm-xen-hack-to-prevent-bad-segment-register-reload.patch
-x86_64-mm-xen-add-early-printk-support-via-hvc-console.patch
-x86_64-mm-xen-rename-xen-netif_-structures-to-xen_netif.patch
+revert-x86_64-mm-allocate-sparsemem-memmap-above-4g-on-x86_64.patch

 x86 tree updates

-mmconfig-x86_64-i386-insert-unclaimed-mmconfig-resources-fix.patch
-mmconfig-x86_64-i386-insert-unclaimed-mmconfig-resources-update.patch

 Folded into mmconfig-x86_64-i386-insert-unclaimed-mmconfig-resources.patch

+x86_64-pm_trace-support.patch
+make-alt-sysrq-p-display-the-debug-register-contents.patch
+i386-flush_tlb_kernel_range-add-reference-to-the-arguments.patch

 x86 things

+add-select-phylib-to-the-ucc_geth-kconfig-option.patch
+m68k-parenthesis-balance.patch
+msi-fix-the-ordering-of-msix-irqs.patch
+msi-mask-the-msix-vector-before-we-unmap-it.patch
+potential-parse-error-in-ifdef.patch
+potential-parse-error-in-ifdef-fix.patch
+potential-parse-error-in-ifdef-update.patch
+pci_ids-update-patch-for-intel-ich9m.patch
+x86-fix-oprofile-double-free-was-re-multiple-free.patch
+work-around-dell-e520-bios-reboot-bug.patch
+skeletonfb-fix-of-xxxfb_setup-ifdef.patch
+vt8623fb-arkfb-null-pointer-dereference-fix.patch
+cfag12864bfb-use-sys_-instead-of-cfb_-framebuffer-accessors.patch
+fbdev-move-declaration-of-fb_class-to-linux-fbh.patch
+misc-tifm_7xx1-replace-deprecated-irq-flag.patch
+add-a-trivial-patch-style-checker-v2.patch
+rtc-use-fallback-irq-if-pnp-tables-dont-provide-one.patch
+memory-hotplug-fix-unnecessary-calling-of-init_currenty_empty_zone.patch
+missing-include-linux-mmh-in-drivers-sbus-char-flashc.patch
+tty-fix-leakage-of-erestartsys-to-userland.patch
+isdn4linux-fix-maturity-label-v4.patch
+prism54-maintainers-update.patch
+aacraid-fix-shutdown-handler-to-also-disable-interrupts.patch
+atmel_spi-dma-address-bugfix.patch
+neofb-fix-pseudo_palette-array-overrun-in-neofb_setcolreg.patch
+ramfs-nommu-a-bug-in-ramfs_nommu_resize-function-passing-old-size-to-vmtruncate.patch
+h8300-trival-patches.patch
+vmscan-give-referenced-active-and-unmapped-pages-a-second-trip-around-the-lru.patch

 2.6.22 probable-queue

+rework-ptep_set_access_flags-and-fix-sun4c.patch
+unmap_vm_area-becomes-unmap_kernel_range-for-the-public.patch

 MM updates

-lazy-freeing-of-memory-through-madv_free.patch
-restore-madv_dontneed-to-its-original-linux-behaviour.patch

 Dropped

-add-__gfp_movable-for-callers-to-flag-allocations-from-high-memory-that-may-be-migrated-fix-alloc_zeroed_user_highpage-on-m68knommu.patch
-add-__gfp_movable-for-callers-to-flag-allocations-from-high-memory-that-may-be-migrated-mark-bio_alloc-allocations-correctly.patch
-add-__gfp_movable-for-callers-to-flag-allocations-from-high-memory-that-may-be-migrated-rename-gfp_high_movable-to-gfp_highuser_movable.patch
-add-__gfp_movable-for-callers-to-flag-allocations-from-high-memory-that-may-be-migrated-mark-page-cache-pages-as-__gfp_pagecache-instead-of-__gfp_movable.patch

 Folded into add-__gfp_movable-for-callers-to-flag-allocations-from-high-memory-that-may-be-migrated.patch

-move-free-pages-between-lists-on-steal-anti-fragmentation-switch-over-to-pfn_valid_within.patch

 Folded into move-free-pages-between-lists-on-steal.patch

-group-short-lived-and-reclaimable-kernel-allocations-use-slab_account_reclaim-to-determine-when-__gfp_reclaimable-should-be-used.patch
-group-short-lived-and-reclaimable-kernel-allocations-use-slab_account_reclaim-to-determine-when-__gfp_reclaimable-should-be-used-fix.patch
-group-short-lived-and-reclaimable-kernel-allocations-do-not-annotate-shmem-allocations-explicitly.patch
-group-short-lived-and-reclaimable-kernel-allocations-add-__gfp_temporary-to-identify-allocations-that-are-short-lived.patch

 Folded into group-short-lived-and-reclaimable-kernel-allocations.patch

-dont-group-high-order-atomic-allocations-remove-unused-parameter-to-allocflags_to_migratetype.patch

 Folded into dont-group-high-order-atomic-allocations.patch

+breakout-page_order-to-internalh-to-avoid-special-knowledge-of-the-buddy-allocator.patch

 Update the page mobility patches in -mm

+slub-change-error-reporting-format-to-follow-lockdep-loosely.patch
+slub-change-error-reporting-format-to-follow-lockdep-loosely-fix.patch

 Slub updates

+freezer-make-kernel-threads-nonfreezable-by-default.patch
+freezer-make-kernel-threads-nonfreezable-by-default-fix.patch
+freezer-make-kernel-threads-nonfreezable-by-default-fix-fix.patch

 Freezer fixes

+blackfin-enable-arbitary-speed-serial-setting.patch

 blackfin driver update

+h8300-enable-arbitary-speed-tty-port-setup.patch

 tty work

+arm26-enable-arbitary-speed-tty-ioctls-and-split.patch
+arm26-remove-broken-and-unused-macro.patch

 arm26 updates

+freezer-run-show_state-when-freezing-times-out.patch
+pm-do-not-require-dev-spew-to-get-pm_debug.patch
+swsusp-remove-incorrect-code-from-userc.patch
+swsusp-remove-code-duplication-between-diskc-and-userc.patch
+swsusp-introduce-restore-platform-operations.patch
+swsusp-fix-hibernation-code-ordering.patch
+hibernation-prepare-to-enter-the-low-power-state.patch
+freezer-avoid-freezing-kernel-threads-prematurely.patch
+freezer-use-__set_current_state-in-refrigerator.patch
+freezer-return-int-from-freeze_processes.patch
+freezer-remove-redundant-check-in-try_to_freeze_tasks.patch

 freezer/swsusp updates

+m32r-enable-arbitary-speed-tty-rate-setting.patch

 tty work

+etrax-enable-arbitary-speed-setting-on-tty-ports.patch
+cris-replace-old-style-member-inits-with-designated-inits.patch

 CRIS updates

+v850-enable-arbitary-speed-tty-ioctls.patch

 TTY work

-add-lzo1x-compression-support-to-the-kernel.patch
-add-lzo1x-compression-support-to-the-kernel-fix.patch
-add-lzo1x-compression-support-to-the-kernel-tidy.patch

 Dropped

-add-notime-boot-option.patch

 Dropped

+define-new-percpu-interface-for-shared-data.patch
+use-the-new-percpu-interface-for-shared-data.patch
+introduce-config_virt_to_bus.patch
+pie-randomization.patch
+remove-unused-tif_notify_resume-flag.patch
+rocketc-fix-unchecked-mutex_lock_interruptible.patch
+only-send-sigxfsz-when-exceeding-rlimits.patch
+rtc-ratelimit-lost-interrupts-message.patch
+reduce-cpusetc-write_lock_irq-to-read_lock.patch
+reduce-cpusetc-write_lock_irq-to-read_lock-fix.patch
+char-n_hdlc-allow-restartsys-retval-of-tty-write.patch
+afs-implement-file-locking.patch
+tty_io-use-kzalloc.patch
+remove-clockevents_releaserequest_device.patch
+kconfig-no-strange-misc-devices.patch
+afs-drop-explicit-extern.patch
+remove-useless-tolower-in-isofs.patch
+char-mxser_new-fix-sparse-warning.patch
+char-tty_ioctl-use-wait_event_interruptible_timeout.patch
+char-tty_ioctl-little-whitespace-cleanup.patch
+char-genrtc-use-wait_event_interruptible.patch
+char-n_r3964-use-wait_event_interruptible.patch
+char-ip2-use-msleep-for-sleeping.patch
+proc-environ-wrong-placing-of-ptrace_may_attach-check.patch
+udf-coding-style-conversion-lindent.patch
+udf-coding-style-conversion-lindent-fixups.patch
+ext2-fix-a-comment-when-ext2_release_file-is-called.patch
+mutex_unlock-later-in-seq_lseek.patch
+zs-move-to-the-serial-subsystem.patch
+fs-block_devc-use-list_for_each_entry.patch
+fault-injection-add-min-order-parameter-to-fail_page_alloc.patch
+fault-injection-fix-example-scripts-in-documentation.patch
+add-printktime-option-deprecate-time.patch
+fs-clarify-dummy-member-in-struct.patch
+dma-mapping-prevent-dma-dependent-code-from-linking-on.patch

 Misc

-ext4-extent-overlap-bugfix.patch
-ext4-persistent_allocation_1_ioctl_and_unitialized_extents.patch
-ext4-persistent_allocation_2_support_for_writing_to_unitialized_extent.patch
+ext4-ext4_remove_exported_symbles.patch
+ext4-ext4-fallocate-4-extent_overlap_bugfix.patch
+ext4-ext4-free-blocks-on-insert-extent-failure.patch
+ext4-ext4_extents_on_by_default.patch
+ext4-ext4-propagate_flags.patch
+ext4-ext4-extent-sanity-checks.patch
+ext4-ext4-fallocate-5-ext4_support.patch
+ext4-ext4-fallocate-6-uninit_write_support.patch
+ext4-ext4_expand_inode_extra_isize.patch
+ext4-ext4_expand_inode_isize_fix.patch
+ext4-jbd-stats-through-procfs.patch
+ext4-ext4_remove_subdirs_limit.patch

 ext4 tree updates

+spi-add-3wire-mode-flag-fix.patch
+spidev-compiler-warning-gone.patch

 SPI updates

-use-menuconfig-objects-ii-isdn.patch
+update-isdn-tree-to-use-pci_get_device.patch
+use-menuconfig-objects-isdn-config_isdn.patch
+use-menuconfig-objects-isdn-config_isdn_i4l.patch
+use-menuconfig-objects-isdn-config_isdn_drv_gigaset.patch
+use-menuconfig-objects-isdn-config_isdn_capi.patch
+use-menuconfig-objects-isdn-config_capi_avm.patch
+use-menuconfig-objects-isdn-config_capi_eicon.patch

 Update ISDN Kconfig changes

+ecryptfs-move-ecryptfs-docs-into-documentation-filesystems.patch

 ecryptfs update

+rtc-rs5c372-becomes-a-new-style-i2c-driver.patch

 rtc maintenance

-lguest-the-host-code-update-for-mm-simplify-boot_params.patch

 Dropped

+char-moxa-eliminate-busy-waiting.patch
+char-specialix-remove-busy-waiting.patch
+char-riscom8-eliminate-busy-loop.patch
+char-vt-use-kzalloc.patch
+char-vt-use-array_size.patch
+char-kconfig-mxser_new-remove-experimental-comment.patch

 char driver updates

+fbcon-cursor-blink-control.patch
+fbcon-use-struct-device-instead-of-struct-class_device.patch
+fbdev-move-arch-specific-bits-to-their-respective.patch
+fbdev-detect-primary-display-device.patch
+fbcon-allow-fbcon-to-use-the-primary-display-driver.patch
+fbcon-allow-fbcon-to-use-the-primary-display-driver-fix.patch
+fbcon-allow-fbcon-to-use-the-primary-display-driver-fix-2.patch

 fbdev things

+fs-introduce-vfs_path_lookup.patch
+sunrpc-use-vfs_path_lookup.patch
+nfsctl-use-vfs_path_lookup.patch
+fs-mark-link_path_walk-static.patch
+fs-remove-path_walk-export.patch

 VFS updates

+cfs-scheduler-v14-rc2-mm1.patch

 CFS update

+mm-swap-prefetch-increase-aggressiveness-and-tunability.patch

 swap prefetch update

+kernel-doc-add-tools-doc-in-makefile.patch
+kernel-doc-fix-unnamed-struct-union-warning.patch
+kernel-doc-strip-c99-comments.patch
+kernel-doc-fix-leading-dot-in-man-mode-output.patch
+kernel-doc-fix-leading-dot-in-man-mode-output-fix.patch

 kernel-doc stuff

+coredump-masking-bound-suid_dumpable-sysctl.patch
+coredump-masking-reimplementation-of-dumpable-using-two-flags.patch
+coredump-masking-reimplementation-of-dumpable-using-two-flags-fix.patch
+coredump-masking-add-an-interface-for-core-dump-filter.patch
+coredump-masking-elf-enable-core-dump-filtering.patch
+coredump-masking-elf-fdpic-remove-an-unused-argument.patch
+coredump-masking-elf-fdpic-enable-core-dump-filtering.patch
+coredump-masking-documentation-for-proc-pid-coredump_filter.patch

 Filtering for waht the core dumper will dump

+containersv10-basic-container-framework.patch
+containersv10-basic-container-framework-fix.patch
+containersv10-example-cpu-accounting-subsystem.patch
+containersv10-example-cpu-accounting-subsystem-fix.patch
+containersv10-add-tasks-file-interface.patch
+containersv10-add-tasks-file-interface-fix.patch
+containersv10-add-fork-exit-hooks.patch
+containersv10-add-fork-exit-hooks-fix.patch
+containersv10-add-container_clone-interface.patch
+containersv10-add-container_clone-interface-fix.patch
+containersv10-add-procfs-interface.patch
+containersv10-add-procfs-interface-fix.patch
+containersv10-make-cpusets-a-client-of-containers.patch
+containersv10-share-css_group-arrays-between-tasks-with-same-container-memberships.patch
+containersv10-share-css_group-arrays-between-tasks-with-same-container-memberships-fix.patch
+containersv10-simple-debug-info-subsystem.patch
+containersv10-simple-debug-info-subsystem-fix.patch
+containersv10-simple-debug-info-subsystem-fix-2.patch
+containersv10-support-for-automatic-userspace-release-agents.patch

 Containers core

+lockdep-sanitise-config_prove_locking.patch
+lockdep-reduce-the-ifdeffery.patch
+lockstat-core-infrastructure.patch
+lockstat-core-infrastructure-fix.patch
+lockstat-core-infrastructure-fix-fix.patch
+lockstat-human-readability-tweaks.patch
+lockstat-hook-into-spinlock_t-rwlock_t-rwsem-and-mutex.patch

 lockstat-via-lockdep

-reiser4-use-lzo-library-functions.patch

 Dropped

+update-page-order-at-an-appropriate-time-when-tracking-page_owner.patch

 Update page-owner-tracking for updates to Mel's stuff

-vdso-print-fatal-signals-fix.patch

 Dropped


All 993 patches:

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



^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
@ 2007-05-31 12:09 ` Cornelia Huck
  2007-05-31 12:15   ` 2.6.22-rc3-mm1 Matthew Wilcox
  2007-05-31 15:29 ` 2.6.22-rc3-mm1 Michal Piotrowski
                   ` (24 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Cornelia Huck @ 2007-05-31 12:09 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, SCSI development list, James Bottomley, Dan Williams

On Wed, 30 May 2007 23:58:23 -0700,
Andrew Morton <akpm@linux-foundation.org> wrote:

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

With 

> +dma-mapping-prevent-dma-dependent-code-from-linking-on.patch

scsi fails to build on !HAS_DMA architectures:

drivers/built-in.o(.text+0x20af6): In function `scsi_dma_map':
: undefined reference to `dma_map_sg'
drivers/built-in.o(.text+0x20b5c): In function `scsi_dma_unmap':
: undefined reference to `dma_unmap_sg'

I split those functions out into a new file. Builds on s390 and i386.



scsi: Don't build scsi_dma_{map,unmap} for !HAS_DMA

Move scsi_dma_{map,unmap} into scsi_lib_dma.c which is only build
if HAS_DMA is set.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>

---
 drivers/scsi/Kconfig        |    5 ++++
 drivers/scsi/Makefile       |    6 ++---
 drivers/scsi/scsi_lib.c     |   38 ---------------------------------
 drivers/scsi/scsi_lib_dma.c |   50 ++++++++++++++++++++++++++++++++++++++++++++
 include/scsi/scsi_cmnd.h    |    2 +
 5 files changed, 60 insertions(+), 41 deletions(-)

--- linux-2.6.orig/drivers/scsi/Kconfig
+++ linux-2.6/drivers/scsi/Kconfig
@@ -10,6 +10,7 @@ config RAID_ATTRS
 config SCSI
 	tristate "SCSI device support"
 	depends on BLOCK
+	select SCSI_DMA if HAS_DMA
 	---help---
 	  If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
 	  any other SCSI device under Linux, say Y and make sure that you know
@@ -29,6 +30,10 @@ config SCSI
 	  However, do not compile this as a module if your root file system
 	  (the one containing the directory /) is located on a SCSI device.
 
+config SCSI_DMA
+	bool
+	default n
+
 config SCSI_TGT
 	tristate "SCSI target support"
 	depends on SCSI && EXPERIMENTAL
--- linux-2.6.orig/drivers/scsi/Makefile
+++ linux-2.6/drivers/scsi/Makefile
@@ -145,9 +145,9 @@ obj-$(CONFIG_SCSI_DEBUG)	+= scsi_debug.o
 obj-$(CONFIG_SCSI_WAIT_SCAN)	+= scsi_wait_scan.o
 
 scsi_mod-y			+= scsi.o hosts.o scsi_ioctl.o constants.o \
-				   scsicam.o scsi_error.o scsi_lib.o \
-				   scsi_scan.o scsi_sysfs.o \
-				   scsi_devinfo.o
+				   scsicam.o scsi_error.o scsi_lib.o
+scsi_mod-$(CONFIG_SCSI_DMA)	+= scsi_lib_dma.o
+scsi_mod-y			+= scsi_scan.o scsi_sysfs.o scsi_devinfo.o
 scsi_mod-$(CONFIG_SCSI_NETLINK)	+= scsi_netlink.o
 scsi_mod-$(CONFIG_SYSCTL)	+= scsi_sysctl.o
 scsi_mod-$(CONFIG_SCSI_PROC_FS)	+= scsi_proc.o
--- linux-2.6.orig/drivers/scsi/scsi_lib.c
+++ linux-2.6/drivers/scsi/scsi_lib.c
@@ -2290,41 +2290,3 @@ void scsi_kunmap_atomic_sg(void *virt)
 	kunmap_atomic(virt, KM_BIO_SRC_IRQ);
 }
 EXPORT_SYMBOL(scsi_kunmap_atomic_sg);
-
-/**
- * scsi_dma_map - perform DMA mapping against command's sg lists
- * @cmd:	scsi command
- *
- * Returns the number of sg lists actually used, zero if the sg lists
- * is NULL, or -ENOMEM if the mapping failed.
- */
-int scsi_dma_map(struct scsi_cmnd *cmd)
-{
-	int nseg = 0;
-
-	if (scsi_sg_count(cmd)) {
-		struct device *dev = cmd->device->host->shost_gendev.parent;
-
-		nseg = dma_map_sg(dev, scsi_sglist(cmd), scsi_sg_count(cmd),
-				  cmd->sc_data_direction);
-		if (unlikely(!nseg))
-			return -ENOMEM;
-	}
-	return nseg;
-}
-EXPORT_SYMBOL(scsi_dma_map);
-
-/**
- * scsi_dma_unmap - unmap command's sg lists mapped by scsi_dma_map
- * @cmd:	scsi command
- */
-void scsi_dma_unmap(struct scsi_cmnd *cmd)
-{
-	if (scsi_sg_count(cmd)) {
-		struct device *dev = cmd->device->host->shost_gendev.parent;
-
-		dma_unmap_sg(dev, scsi_sglist(cmd), scsi_sg_count(cmd),
-			     cmd->sc_data_direction);
-	}
-}
-EXPORT_SYMBOL(scsi_dma_unmap);
--- linux-2.6.orig/include/scsi/scsi_cmnd.h
+++ linux-2.6/include/scsi/scsi_cmnd.h
@@ -135,8 +135,10 @@ extern void scsi_kunmap_atomic_sg(void *
 extern struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd *, gfp_t);
 extern void scsi_free_sgtable(struct scatterlist *, int);
 
+#ifdef CONFIG_SCSI_DMA
 extern int scsi_dma_map(struct scsi_cmnd *cmd);
 extern void scsi_dma_unmap(struct scsi_cmnd *cmd);
+#endif
 
 #define scsi_sg_count(cmd) ((cmd)->use_sg)
 #define scsi_sglist(cmd) ((struct scatterlist *)(cmd)->request_buffer)
--- /dev/null
+++ linux-2.6/drivers/scsi/scsi_lib_dma.c
@@ -0,0 +1,50 @@
+/*
+ * SCSI library functions depending on DMA
+ */
+
+#include <linux/blkdev.h>
+#include <linux/device.h>
+#include <linux/kernel.h>
+
+#include <scsi/scsi.h>
+#include <scsi/scsi_cmnd.h>
+#include <scsi/scsi_device.h>
+#include <scsi/scsi_host.h>
+
+/**
+ * scsi_dma_map - perform DMA mapping against command's sg lists
+ * @cmd:	scsi command
+ *
+ * Returns the number of sg lists actually used, zero if the sg lists
+ * is NULL, or -ENOMEM if the mapping failed.
+ */
+int scsi_dma_map(struct scsi_cmnd *cmd)
+{
+	int nseg = 0;
+
+	if (scsi_sg_count(cmd)) {
+		struct device *dev = cmd->device->host->shost_gendev.parent;
+
+		nseg = dma_map_sg(dev, scsi_sglist(cmd), scsi_sg_count(cmd),
+				  cmd->sc_data_direction);
+		if (unlikely(!nseg))
+			return -ENOMEM;
+	}
+	return nseg;
+}
+EXPORT_SYMBOL(scsi_dma_map);
+
+/**
+ * scsi_dma_unmap - unmap command's sg lists mapped by scsi_dma_map
+ * @cmd:	scsi command
+ */
+void scsi_dma_unmap(struct scsi_cmnd *cmd)
+{
+	if (scsi_sg_count(cmd)) {
+		struct device *dev = cmd->device->host->shost_gendev.parent;
+
+		dma_unmap_sg(dev, scsi_sglist(cmd), scsi_sg_count(cmd),
+			     cmd->sc_data_direction);
+	}
+}
+EXPORT_SYMBOL(scsi_dma_unmap);

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 12:09 ` 2.6.22-rc3-mm1 Cornelia Huck
@ 2007-05-31 12:15   ` Matthew Wilcox
  2007-05-31 12:20     ` 2.6.22-rc3-mm1 Cornelia Huck
  0 siblings, 1 reply; 105+ messages in thread
From: Matthew Wilcox @ 2007-05-31 12:15 UTC (permalink / raw)
  To: Cornelia Huck
  Cc: Andrew Morton, linux-kernel, SCSI development list,
	James Bottomley, Dan Williams

On Thu, May 31, 2007 at 02:09:22PM +0200, Cornelia Huck wrote:
> I split those functions out into a new file. Builds on s390 and i386.

Why not just put #ifdef CONFIG_HAS_DMA / #endif around the pair of
functions?  I don't see the need to add a new Kconfig symbol and a new
file for this.


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 12:15   ` 2.6.22-rc3-mm1 Matthew Wilcox
@ 2007-05-31 12:20     ` Cornelia Huck
  2007-05-31 12:35       ` 2.6.22-rc3-mm1 Jeff Garzik
  0 siblings, 1 reply; 105+ messages in thread
From: Cornelia Huck @ 2007-05-31 12:20 UTC (permalink / raw)
  To: Matthew Wilcox
  Cc: Andrew Morton, linux-kernel, SCSI development list,
	James Bottomley, Dan Williams

On Thu, 31 May 2007 06:15:57 -0600,
Matthew Wilcox <matthew@wil.cx> wrote:

> On Thu, May 31, 2007 at 02:09:22PM +0200, Cornelia Huck wrote:
> > I split those functions out into a new file. Builds on s390 and i386.
> 
> Why not just put #ifdef CONFIG_HAS_DMA / #endif around the pair of
> functions?  I don't see the need to add a new Kconfig symbol and a new
> file for this.

I prefer a new file over #ifdefs in c files. (New dma-dependent stuff
would also have a place where it could go to.)

But I'll do whatever ends up as consensus :)

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 12:20     ` 2.6.22-rc3-mm1 Cornelia Huck
@ 2007-05-31 12:35       ` Jeff Garzik
  2007-05-31 15:11         ` 2.6.22-rc3-mm1 Cornelia Huck
  2007-05-31 15:13         ` 2.6.22-rc3-mm1 Christoph Hellwig
  0 siblings, 2 replies; 105+ messages in thread
From: Jeff Garzik @ 2007-05-31 12:35 UTC (permalink / raw)
  To: Cornelia Huck
  Cc: Matthew Wilcox, Andrew Morton, linux-kernel,
	SCSI development list, James Bottomley, Dan Williams

Cornelia Huck wrote:
> On Thu, 31 May 2007 06:15:57 -0600,
> Matthew Wilcox <matthew@wil.cx> wrote:
> 
>> On Thu, May 31, 2007 at 02:09:22PM +0200, Cornelia Huck wrote:
>>> I split those functions out into a new file. Builds on s390 and i386.
>> Why not just put #ifdef CONFIG_HAS_DMA / #endif around the pair of
>> functions?  I don't see the need to add a new Kconfig symbol and a new
>> file for this.
> 
> I prefer a new file over #ifdefs in c files. (New dma-dependent stuff
> would also have a place where it could go to.)
> 
> But I'll do whatever ends up as consensus :)

50 lines isn't much need for a new file.

	Jeff




^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 12:35       ` 2.6.22-rc3-mm1 Jeff Garzik
@ 2007-05-31 15:11         ` Cornelia Huck
  2007-05-31 15:13         ` 2.6.22-rc3-mm1 Christoph Hellwig
  1 sibling, 0 replies; 105+ messages in thread
From: Cornelia Huck @ 2007-05-31 15:11 UTC (permalink / raw)
  To: Jeff Garzik
  Cc: Matthew Wilcox, Andrew Morton, linux-kernel,
	SCSI development list, James Bottomley, Dan Williams

On Thu, 31 May 2007 08:35:13 -0400,
Jeff Garzik <jeff@garzik.org> wrote:

> Cornelia Huck wrote:
> > On Thu, 31 May 2007 06:15:57 -0600,
> > Matthew Wilcox <matthew@wil.cx> wrote:
> > 
> >> On Thu, May 31, 2007 at 02:09:22PM +0200, Cornelia Huck wrote:
> >>> I split those functions out into a new file. Builds on s390 and i386.
> >> Why not just put #ifdef CONFIG_HAS_DMA / #endif around the pair of
> >> functions?  I don't see the need to add a new Kconfig symbol and a new
> >> file for this.
> > 
> > I prefer a new file over #ifdefs in c files. (New dma-dependent stuff
> > would also have a place where it could go to.)
> > 
> > But I'll do whatever ends up as consensus :)
> 
> 50 lines isn't much need for a new file.

OK, so here's an alternative patch:


scsi: Don't build scsi_dma_{map,unmap} for !HAS_DMA

Use #ifdef CONFIG_HAS_DMA for the two dma-dependent functions.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>

---
 drivers/scsi/scsi_lib.c  |    2 ++
 include/scsi/scsi_cmnd.h |    2 ++
 2 files changed, 4 insertions(+)

--- linux-2.6.orig/drivers/scsi/scsi_lib.c
+++ linux-2.6/drivers/scsi/scsi_lib.c
@@ -2291,6 +2291,7 @@ void scsi_kunmap_atomic_sg(void *virt)
 }
 EXPORT_SYMBOL(scsi_kunmap_atomic_sg);
 
+#ifdef CONFIG_HAS_DMA
 /**
  * scsi_dma_map - perform DMA mapping against command's sg lists
  * @cmd:	scsi command
@@ -2328,3 +2329,4 @@ void scsi_dma_unmap(struct scsi_cmnd *cm
 	}
 }
 EXPORT_SYMBOL(scsi_dma_unmap);
+#endif
--- linux-2.6.orig/include/scsi/scsi_cmnd.h
+++ linux-2.6/include/scsi/scsi_cmnd.h
@@ -135,8 +135,10 @@ extern void scsi_kunmap_atomic_sg(void *
 extern struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd *, gfp_t);
 extern void scsi_free_sgtable(struct scatterlist *, int);
 
+#ifdef CONFIG_HAS_DMA
 extern int scsi_dma_map(struct scsi_cmnd *cmd);
 extern void scsi_dma_unmap(struct scsi_cmnd *cmd);
+#endif
 
 #define scsi_sg_count(cmd) ((cmd)->use_sg)
 #define scsi_sglist(cmd) ((struct scatterlist *)(cmd)->request_buffer)

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 12:35       ` 2.6.22-rc3-mm1 Jeff Garzik
  2007-05-31 15:11         ` 2.6.22-rc3-mm1 Cornelia Huck
@ 2007-05-31 15:13         ` Christoph Hellwig
  2007-05-31 22:10           ` 2.6.22-rc3-mm1 Andrew Morton
  1 sibling, 1 reply; 105+ messages in thread
From: Christoph Hellwig @ 2007-05-31 15:13 UTC (permalink / raw)
  To: Jeff Garzik
  Cc: Cornelia Huck, Matthew Wilcox, Andrew Morton, linux-kernel,
	SCSI development list, James Bottomley, Dan Williams

On Thu, May 31, 2007 at 08:35:13AM -0400, Jeff Garzik wrote:
> Cornelia Huck wrote:
> >On Thu, 31 May 2007 06:15:57 -0600,
> >Matthew Wilcox <matthew@wil.cx> wrote:
> >
> >>On Thu, May 31, 2007 at 02:09:22PM +0200, Cornelia Huck wrote:
> >>>I split those functions out into a new file. Builds on s390 and i386.
> >>Why not just put #ifdef CONFIG_HAS_DMA / #endif around the pair of
> >>functions?  I don't see the need to add a new Kconfig symbol and a new
> >>file for this.
> >
> >I prefer a new file over #ifdefs in c files. (New dma-dependent stuff
> >would also have a place where it could go to.)
> >
> >But I'll do whatever ends up as consensus :)
> 
> 50 lines isn't much need for a new file.

The scsi core shouldn't know anything about dma mappings, so a separate
file is a good idea just to keep the separation clean.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
  2007-05-31 12:09 ` 2.6.22-rc3-mm1 Cornelia Huck
@ 2007-05-31 15:29 ` Michal Piotrowski
  2007-05-31 19:58   ` 2.6.22-rc3-mm1 Rafael J. Wysocki
  2007-05-31 17:53 ` 2.6.22-rc3-mm1 Michal Piotrowski
                   ` (23 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Michal Piotrowski @ 2007-05-31 15:29 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Rafael J. Wysocki, Pavel Machek, linux-pm

Hi,

Andrew Morton napisał(a):
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> 

FYI suspend to disk doesn't work anymore on my box, system hangs after "Suspending console(s)" message.

[  186.297753] Shrinking memory...  \b-\b\\b|\b/\b-\b\\b|\bdone (113064 pages freed)
[  187.841914] Freed 452256 kbytes in 1.54 seconds (293.67 MB/s)
[  187.847730] Suspending console(s)

http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/console.log
http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/mm-config

Regards,
Michal


-- 
"Najbardziej brakowało mi twojego milczenia."
-- Andrzej Sapkowski "Coś więcej"

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
  2007-05-31 12:09 ` 2.6.22-rc3-mm1 Cornelia Huck
  2007-05-31 15:29 ` 2.6.22-rc3-mm1 Michal Piotrowski
@ 2007-05-31 17:53 ` Michal Piotrowski
  2007-05-31 18:08   ` 2.6.22-rc3-mm1 Michal Piotrowski
  2007-05-31 18:31   ` 2.6.22-rc3-mm1 Andrew Morton
  2007-05-31 20:43 ` 2.6.22-rc3-mm1 Mariusz Kozlowski
                   ` (22 subsequent siblings)
  25 siblings, 2 replies; 105+ messages in thread
From: Michal Piotrowski @ 2007-05-31 17:53 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Rafael J. Wysocki, Satoru Takeuchi

Andrew Morton napisał(a):
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> 

CPU hotplug test triggered this

[ 4972.038008] CPU 1 is now offline
[ 4972.041411] lockdep: not fixing up alternatives.
[ 4972.051553] 
[ 4972.051555] =================================
[ 4972.057562] [ INFO: inconsistent lock state ]
[ 4972.062056] 2.6.22-rc3-mm1 #10
[ 4972.065184] ---------------------------------
[ 4972.069663] inconsistent {in-hardirq-W} -> {hardirq-on-W} usage.
[ 4972.075758] sh/702 [HC0[0]:SC0[0]:HE1:SE1] takes:
[ 4972.080554]  (&n->list_lock){++..}, at: [<c0181288>] add_partial+0xe/0x27

l *0xc0181288
0xc0181288 is in add_partial (/home/devel/linux-mm/mm/slub.c:1193).
1188    }
1189
1190    static void add_partial(struct kmem_cache_node *n, struct page *page)
1191    {
1192            spin_lock(&n->list_lock);
1193            n->nr_partial++;
1194            list_add(&page->lru, &n->partial);
1195            spin_unlock(&n->list_lock);
1196    }
1197


[ 4972.087650] {in-hardirq-W} state was registered at:
[ 4972.092656]   [<c0143bfe>] mark_lock+0x82/0x557
[ 4972.097323]   [<c0144c5f>] __lock_acquire+0x476/0xd36
[ 4972.102562]   [<c01455bd>] lock_acquire+0x9e/0xb8
[ 4972.107342]   [<c0348993>] _spin_lock+0x38/0x62
[ 4972.111993]   [<c0181d29>] deactivate_slab+0xb9/0x179
[ 4972.117300]   [<c0181e56>] flush_slab+0x6d/0x72
[ 4972.122063]   [<c0181e8c>] __flush_cpu_slab+0x31/0x36
[ 4972.127335]   [<c0181ea5>] flush_cpu_slab+0x14/0x17
[ 4972.132401]   [<c0113d6f>] smp_call_function_interrupt+0x3a/0x56
[ 4972.138607]   [<c0104c73>] call_function_interrupt+0x33/0x38
[ 4972.144503]   [<c0102b59>] default_idle+0x50/0x69
[ 4972.149421]   [<c01023eb>] cpu_idle+0xb3/0xf8
[ 4972.153889]   [<c03454fa>] rest_init+0x56/0x58
[ 4972.158402]   [<c04f39c7>] start_kernel+0x351/0x359
[ 4972.163450]   [<ffffffff>] 0xffffffff
[ 4972.167221] irq event stamp: 2451
[ 4972.170695] hardirqs last  enabled at (2451): [<c0104228>] restore_nocheck+0x12/0x15
[ 4972.178699] hardirqs last disabled at (2449): [<c012b4e9>] __do_softirq+0x93/0xe5
[ 4972.186393] softirqs last  enabled at (2450): [<c012b535>] __do_softirq+0xdf/0xe5
[ 4972.194216] softirqs last disabled at (2443): [<c0106d39>] do_softirq+0x68/0x11f

l *0xc0104228
0xc0104228 is at include2/asm/bitops.h:246.
241     static int test_bit(int nr, const volatile void * addr);
242     #endif
243
244     static __always_inline int constant_test_bit(int nr, const volatile unsigned long *addr)
245     {
246             return ((1UL << (nr & 31)) & (addr[nr >> 5])) != 0;
247     }
248
249     static inline int variable_test_bit(int nr, const volatile unsigned long * addr)
250     {

l *0xc012b4e9
0xc012b4e9 is in __do_softirq (/home/devel/linux-mm/kernel/softirq.c:241).
236                     pending >>= 1;
237             } while (pending);
238
239             local_irq_disable();
240
241             pending = local_softirq_pending();
242             if (pending && --max_restart)
243                     goto restart;
244
245             if (pending)

l *0xc012b535
0xc012b535 is in __do_softirq (/home/devel/linux-mm/kernel/softirq.c:252).
247
248             trace_softirq_exit();
249
250             account_system_vtime(current);
251             _local_bh_enable();
252     }
253
254     #ifndef __ARCH_HAS_DO_SOFTIRQ
255
256     asmlinkage void do_softirq(void)

l *0xc0106d39
0xc0106d39 is in do_softirq (/home/devel/linux-mm/arch/i386/kernel/irq.c:222).
217                     irqctx->tinfo.previous_esp = current_stack_pointer;
218
219                     /* build the stack frame on the softirq stack */
220                     isp = (u32*) ((char*)irqctx + sizeof(*irqctx));
221
222                     asm volatile(
223                             "       xchgl   %%ebx,%%esp     \n"
224                             "       call    __do_softirq    \n"
225                             "       movl    %%ebx,%%esp     \n"
226                             : "=b"(isp)


[ 4972.201901] 
[ 4972.201902] other info that might help us debug this:
[ 4972.208669] 4 locks held by sh/702:
[ 4972.212265]  #0:  (cpu_add_remove_lock){--..}, at: [<c0347499>] mutex_lock+0x1c/0x1f
[ 4972.220304]  #1:  (sched_hotcpu_mutex){--..}, at: [<c0347499>] mutex_lock+0x1c/0x1f
[ 4972.228273]  #2:  (workqueue_mutex){--..}, at: [<c0347499>] mutex_lock+0x1c/0x1f
[ 4972.235821]  #3:  (slub_lock){----}, at: [<c01836d6>] slab_cpuup_callback+0x26/0x5b

l *0xc0347499
0xc0347499 is in mutex_lock (/home/devel/linux-mm/kernel/mutex.c:92).
87              /*
88               * The locking fastpath is the 1->0 transition from
89               * 'unlocked' into 'locked' state.
90               */
91              __mutex_fastpath_lock(&lock->count, __mutex_lock_slowpath);
92      }
93
94      EXPORT_SYMBOL(mutex_lock);
95
96      static void fastcall noinline __sched

l *0xc01836d6
0xc01836d6 is in slab_cpuup_callback (/home/devel/linux-mm/mm/slub.c:2656).
2651    static void for_all_slabs(void (*func)(struct kmem_cache *, int), int cpu)
2652    {
2653            struct list_head *h;
2654
2655            down_read(&slub_lock);
2656            list_for_each(h, &slab_caches) {
2657                    struct kmem_cache *s =
2658                            container_of(h, struct kmem_cache, list);
2659
2660                    func(s, cpu);


[ 4972.243670] 
[ 4972.243670] stack backtrace:
[ 4972.248166]  [<c0105281>] dump_trace+0x63/0x1eb
[ 4972.252755]  [<c0105423>] show_trace_log_lvl+0x1a/0x2f
[ 4972.257969]  [<c0106061>] show_trace+0x12/0x14
[ 4972.262463]  [<c0106079>] dump_stack+0x16/0x18
[ 4972.266974]  [<c0142ff8>] print_usage_bug+0x140/0x14a
[ 4972.272109]  [<c0143e1a>] mark_lock+0x29e/0x557
[ 4972.276708]  [<c0144cda>] __lock_acquire+0x4f1/0xd36
[ 4972.281740]  [<c01455bd>] lock_acquire+0x9e/0xb8
[ 4972.286416]  [<c0348993>] _spin_lock+0x38/0x62
[ 4972.290936]  [<c0181288>] add_partial+0xe/0x27
[ 4972.295458]  [<c0181cd7>] deactivate_slab+0x67/0x179
[ 4972.300497]  [<c0181e56>] flush_slab+0x6d/0x72
[ 4972.305018]  [<c0181e8c>] __flush_cpu_slab+0x31/0x36
[ 4972.310049]  [<c01836e8>] slab_cpuup_callback+0x38/0x5b
[ 4972.315348]  [<c01325d2>] notifier_call_chain+0x2b/0x4a
[ 4972.320637]  [<c013261e>] __raw_notifier_call_chain+0x19/0x1e
[ 4972.326473]  [<c013263d>] raw_notifier_call_chain+0x1a/0x1c
[ 4972.332117]  [<c014bb62>] _cpu_down+0x19c/0x25a
[ 4972.336724]  [<c014bc48>] cpu_down+0x28/0x3a
[ 4972.341063]  [<c027f800>] store_online+0x27/0x5a
[ 4972.345757]  [<c027c854>] sysdev_store+0x20/0x25
[ 4972.350443]  [<c01c2739>] sysfs_write_file+0xc5/0xfd
[ 4972.355482]  [<c0187243>] vfs_write+0xd1/0x15a
[ 4972.360004]  [<c0187873>] sys_write+0x3d/0x72
[ 4972.364411]  [<c01041e0>] syscall_call+0x7/0xb
[ 4972.368924]  [<b7ff0410>] 0xb7ff0410
[ 4972.372562]  =======================
[ 4975.412963] lockdep: not fixing up alternatives.

Suspects:
add-suspend-related-notifications-for-cpu-hotplug-statistics.patch
cpu-hotplug-fix-ksoftirqd-termination-on-cpu-hotplug-with-naughty-realtime-process.patch
cpu-hotplug-fix-ksoftirqd-termination-on-cpu-hotplug-with-naughty-realtime-process-fix.patch

http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/console2.log
http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/mm-config

Regards,
Michal

-- 
"Najbardziej brakowało mi twojego milczenia."
-- Andrzej Sapkowski "Coś więcej"

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 17:53 ` 2.6.22-rc3-mm1 Michal Piotrowski
@ 2007-05-31 18:08   ` Michal Piotrowski
  2007-05-31 18:31   ` 2.6.22-rc3-mm1 Andrew Morton
  1 sibling, 0 replies; 105+ messages in thread
From: Michal Piotrowski @ 2007-05-31 18:08 UTC (permalink / raw)
  To: Michal Piotrowski
  Cc: Andrew Morton, linux-kernel, Rafael J. Wysocki, Satoru Takeuchi

Michal Piotrowski napisał(a):
> Andrew Morton napisał(a):
>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
>>
> 
> CPU hotplug test triggered this
> 
> [ 4972.038008] CPU 1 is now offline
> [ 4972.041411] lockdep: not fixing up alternatives.
> [ 4972.051553] 
> [ 4972.051555] =================================
> [ 4972.057562] [ INFO: inconsistent lock state ]
> [ 4972.062056] 2.6.22-rc3-mm1 #10
> [ 4972.065184] ---------------------------------
[..]
> [ 4972.372562]  =======================
> [ 4975.412963] lockdep: not fixing up alternatives.
> 
> Suspects:
> add-suspend-related-notifications-for-cpu-hotplug-statistics.patch

not guilty

> cpu-hotplug-fix-ksoftirqd-termination-on-cpu-hotplug-with-naughty-realtime-process.patch

not guilty

> cpu-hotplug-fix-ksoftirqd-termination-on-cpu-hotplug-with-naughty-realtime-process-fix.patch

not guilty

Regards,
Michal

-- 
"Najbardziej brakowało mi twojego milczenia."
-- Andrzej Sapkowski "Coś więcej"

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 17:53 ` 2.6.22-rc3-mm1 Michal Piotrowski
  2007-05-31 18:08   ` 2.6.22-rc3-mm1 Michal Piotrowski
@ 2007-05-31 18:31   ` Andrew Morton
  2007-05-31 18:41     ` 2.6.22-rc3-mm1 Christoph Lameter
  1 sibling, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-05-31 18:31 UTC (permalink / raw)
  To: Michal Piotrowski
  Cc: linux-kernel, Rafael J. Wysocki, Satoru Takeuchi, Christoph Lameter

On Thu, 31 May 2007 19:53:07 +0200
Michal Piotrowski <michal.k.k.piotrowski@gmail.com> wrote:

> Andrew Morton napisa__(a):
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> > 
> 
> CPU hotplug test triggered this
> 
> [ 4972.038008] CPU 1 is now offline
> [ 4972.041411] lockdep: not fixing up alternatives.
> [ 4972.051553] 
> [ 4972.051555] =================================
> [ 4972.057562] [ INFO: inconsistent lock state ]
> [ 4972.062056] 2.6.22-rc3-mm1 #10
> [ 4972.065184] ---------------------------------
> [ 4972.069663] inconsistent {in-hardirq-W} -> {hardirq-on-W} usage.
> [ 4972.075758] sh/702 [HC0[0]:SC0[0]:HE1:SE1] takes:
> [ 4972.080554]  (&n->list_lock){++..}, at: [<c0181288>] add_partial+0xe/0x27
> 
> l *0xc0181288
> 0xc0181288 is in add_partial (/home/devel/linux-mm/mm/slub.c:1193).
> 1188    }
> 1189
> 1190    static void add_partial(struct kmem_cache_node *n, struct page *page)
> 1191    {
> 1192            spin_lock(&n->list_lock);
> 1193            n->nr_partial++;
> 1194            list_add(&page->lru, &n->partial);
> 1195            spin_unlock(&n->list_lock);
> 1196    }
> 1197
> 
> 
> [ 4972.087650] {in-hardirq-W} state was registered at:
> [ 4972.092656]   [<c0143bfe>] mark_lock+0x82/0x557
> [ 4972.097323]   [<c0144c5f>] __lock_acquire+0x476/0xd36
> [ 4972.102562]   [<c01455bd>] lock_acquire+0x9e/0xb8
> [ 4972.107342]   [<c0348993>] _spin_lock+0x38/0x62
> [ 4972.111993]   [<c0181d29>] deactivate_slab+0xb9/0x179
> [ 4972.117300]   [<c0181e56>] flush_slab+0x6d/0x72
> [ 4972.122063]   [<c0181e8c>] __flush_cpu_slab+0x31/0x36
> [ 4972.127335]   [<c0181ea5>] flush_cpu_slab+0x14/0x17
> [ 4972.132401]   [<c0113d6f>] smp_call_function_interrupt+0x3a/0x56
> [ 4972.138607]   [<c0104c73>] call_function_interrupt+0x33/0x38
> [ 4972.144503]   [<c0102b59>] default_idle+0x50/0x69
> [ 4972.149421]   [<c01023eb>] cpu_idle+0xb3/0xf8
> [ 4972.153889]   [<c03454fa>] rest_init+0x56/0x58
> [ 4972.158402]   [<c04f39c7>] start_kernel+0x351/0x359
> [ 4972.163450]   [<ffffffff>] 0xffffffff
> [ 4972.167221] irq event stamp: 2451

Yep, that's a bug in slub.  We take that lock in the IPI handler.  If a CPU
is currently holding that lock and then takes the IPI and enters
add_partial(), it'll deadlock.

> [ 4972.243670] 
> [ 4972.243670] stack backtrace:
> [ 4972.248166]  [<c0105281>] dump_trace+0x63/0x1eb
> [ 4972.252755]  [<c0105423>] show_trace_log_lvl+0x1a/0x2f
> [ 4972.257969]  [<c0106061>] show_trace+0x12/0x14
> [ 4972.262463]  [<c0106079>] dump_stack+0x16/0x18
> [ 4972.266974]  [<c0142ff8>] print_usage_bug+0x140/0x14a
> [ 4972.272109]  [<c0143e1a>] mark_lock+0x29e/0x557
> [ 4972.276708]  [<c0144cda>] __lock_acquire+0x4f1/0xd36
> [ 4972.281740]  [<c01455bd>] lock_acquire+0x9e/0xb8
> [ 4972.286416]  [<c0348993>] _spin_lock+0x38/0x62
> [ 4972.290936]  [<c0181288>] add_partial+0xe/0x27
> [ 4972.295458]  [<c0181cd7>] deactivate_slab+0x67/0x179
> [ 4972.300497]  [<c0181e56>] flush_slab+0x6d/0x72
> [ 4972.305018]  [<c0181e8c>] __flush_cpu_slab+0x31/0x36
> [ 4972.310049]  [<c01836e8>] slab_cpuup_callback+0x38/0x5b
> [ 4972.315348]  [<c01325d2>] notifier_call_chain+0x2b/0x4a
> [ 4972.320637]  [<c013261e>] __raw_notifier_call_chain+0x19/0x1e
> [ 4972.326473]  [<c013263d>] raw_notifier_call_chain+0x1a/0x1c
> [ 4972.332117]  [<c014bb62>] _cpu_down+0x19c/0x25a
> [ 4972.336724]  [<c014bc48>] cpu_down+0x28/0x3a
> [ 4972.341063]  [<c027f800>] store_online+0x27/0x5a
> [ 4972.345757]  [<c027c854>] sysdev_store+0x20/0x25
> [ 4972.350443]  [<c01c2739>] sysfs_write_file+0xc5/0xfd
> [ 4972.355482]  [<c0187243>] vfs_write+0xd1/0x15a
> [ 4972.360004]  [<c0187873>] sys_write+0x3d/0x72
> [ 4972.364411]  [<c01041e0>] syscall_call+0x7/0xb
> [ 4972.368924]  [<b7ff0410>] 0xb7ff0410
> [ 4972.372562]  =======================
> [ 4975.412963] lockdep: not fixing up alternatives.

Perhaps a suitable fix would be local_irq_disable() in flush_slab().

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 18:31   ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-05-31 18:41     ` Christoph Lameter
  2007-05-31 18:53       ` 2.6.22-rc3-mm1 Andrew Morton
  0 siblings, 1 reply; 105+ messages in thread
From: Christoph Lameter @ 2007-05-31 18:41 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Piotrowski, linux-kernel, Rafael J. Wysocki, Satoru Takeuchi

On Thu, 31 May 2007, Andrew Morton wrote:

> > l *0xc0181288
> > 0xc0181288 is in add_partial (/home/devel/linux-mm/mm/slub.c:1193).
> > 1188    }
> > 1189
> > 1190    static void add_partial(struct kmem_cache_node *n, struct page *page)
> > 1191    {
> > 1192            spin_lock(&n->list_lock);
> > 1193            n->nr_partial++;
> > 1194            list_add(&page->lru, &n->partial);
> > 1195            spin_unlock(&n->list_lock);
> > 1196    }
> > 1197

add_partial runs with interrupts disabled. The interrupts are disabled 
when we enter SLUB via allocator or free functions.

> > [ 4972.087650] {in-hardirq-W} state was registered at:
> > [ 4972.092656]   [<c0143bfe>] mark_lock+0x82/0x557
> > [ 4972.097323]   [<c0144c5f>] __lock_acquire+0x476/0xd36
> > [ 4972.102562]   [<c01455bd>] lock_acquire+0x9e/0xb8
> > [ 4972.107342]   [<c0348993>] _spin_lock+0x38/0x62
> > [ 4972.111993]   [<c0181d29>] deactivate_slab+0xb9/0x179
> > [ 4972.117300]   [<c0181e56>] flush_slab+0x6d/0x72
> > [ 4972.122063]   [<c0181e8c>] __flush_cpu_slab+0x31/0x36
> > [ 4972.127335]   [<c0181ea5>] flush_cpu_slab+0x14/0x17
> > [ 4972.132401]   [<c0113d6f>] smp_call_function_interrupt+0x3a/0x56
> > [ 4972.138607]   [<c0104c73>] call_function_interrupt+0x33/0x38
> > [ 4972.144503]   [<c0102b59>] default_idle+0x50/0x69
> > [ 4972.149421]   [<c01023eb>] cpu_idle+0xb3/0xf8
> > [ 4972.153889]   [<c03454fa>] rest_init+0x56/0x58
> > [ 4972.158402]   [<c04f39c7>] start_kernel+0x351/0x359
> > [ 4972.163450]   [<ffffffff>] 0xffffffff
> > [ 4972.167221] irq event stamp: 2451
> 
> Yep, that's a bug in slub.  We take that lock in the IPI handler.  If a CPU
> is currently holding that lock and then takes the IPI and enters
> add_partial(), it'll deadlock.

A cpu cannot enter an IPI handler while interrupts are disabled. That 
needs to be always the case when the list_lock is held.

> Perhaps a suitable fix would be local_irq_disable() in flush_slab().

As far as I can tell: Interrupts are always disabled when flush_slab is 
run. 

Sometimes we use spin_lock_irqsave for the list_lock and at other times 
spin_lock if interrupts are already disabled. Is that the problem?


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 18:41     ` 2.6.22-rc3-mm1 Christoph Lameter
@ 2007-05-31 18:53       ` Andrew Morton
  2007-05-31 18:57         ` 2.6.22-rc3-mm1 Christoph Lameter
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-05-31 18:53 UTC (permalink / raw)
  To: Christoph Lameter
  Cc: Michal Piotrowski, linux-kernel, Rafael J. Wysocki, Satoru Takeuchi

On Thu, 31 May 2007 11:41:22 -0700 (PDT)
Christoph Lameter <clameter@sgi.com> wrote:

> > Perhaps a suitable fix would be local_irq_disable() in flush_slab().
> 
> As far as I can tell: Interrupts are always disabled when flush_slab is 
> run. 
> 
> Sometimes we use spin_lock_irqsave for the list_lock and at other times 
> spin_lock if interrupts are already disabled. Is that the problem?

Nope, the problem is in the part of my email which you deleted ;)

[ 4972.243670] 
[ 4972.243670] stack backtrace:
[ 4972.248166]  [<c0105281>] dump_trace+0x63/0x1eb
[ 4972.252755]  [<c0105423>] show_trace_log_lvl+0x1a/0x2f
[ 4972.257969]  [<c0106061>] show_trace+0x12/0x14
[ 4972.262463]  [<c0106079>] dump_stack+0x16/0x18
[ 4972.266974]  [<c0142ff8>] print_usage_bug+0x140/0x14a
[ 4972.272109]  [<c0143e1a>] mark_lock+0x29e/0x557
[ 4972.276708]  [<c0144cda>] __lock_acquire+0x4f1/0xd36
[ 4972.281740]  [<c01455bd>] lock_acquire+0x9e/0xb8
[ 4972.286416]  [<c0348993>] _spin_lock+0x38/0x62
[ 4972.290936]  [<c0181288>] add_partial+0xe/0x27
[ 4972.295458]  [<c0181cd7>] deactivate_slab+0x67/0x179
[ 4972.300497]  [<c0181e56>] flush_slab+0x6d/0x72
[ 4972.305018]  [<c0181e8c>] __flush_cpu_slab+0x31/0x36
[ 4972.310049]  [<c01836e8>] slab_cpuup_callback+0x38/0x5b
[ 4972.315348]  [<c01325d2>] notifier_call_chain+0x2b/0x4a
[ 4972.320637]  [<c013261e>] __raw_notifier_call_chain+0x19/0x1e
[ 4972.326473]  [<c013263d>] raw_notifier_call_chain+0x1a/0x1c
[ 4972.332117]  [<c014bb62>] _cpu_down+0x19c/0x25a
[ 4972.336724]  [<c014bc48>] cpu_down+0x28/0x3a
[ 4972.341063]  [<c027f800>] store_online+0x27/0x5a
[ 4972.345757]  [<c027c854>] sysdev_store+0x20/0x25
[ 4972.350443]  [<c01c2739>] sysfs_write_file+0xc5/0xfd
[ 4972.355482]  [<c0187243>] vfs_write+0xd1/0x15a
[ 4972.360004]  [<c0187873>] sys_write+0x3d/0x72
[ 4972.364411]  [<c01041e0>] syscall_call+0x7/0xb
[ 4972.368924]  [<b7ff0410>] 0xb7ff0410
[ 4972.372562]  =======================
[ 4975.412963] lockdep: not fixing up alternatives.

we're not disbling local irqs on the cpu hotplug path.

Could do local_irq_disable() in slab_cpuup_callback(), I guess.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 18:53       ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-05-31 18:57         ` Christoph Lameter
  0 siblings, 0 replies; 105+ messages in thread
From: Christoph Lameter @ 2007-05-31 18:57 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Piotrowski, linux-kernel, Rafael J. Wysocki, Satoru Takeuchi

On Thu, 31 May 2007, Andrew Morton wrote:

> we're not disbling local irqs on the cpu hotplug path.
> 
> Could do local_irq_disable() in slab_cpuup_callback(), I guess.

Ahh I see.


SLUB: Fix locking for hotplug callbacks.

Hotplug callbacks seem to be performed with interrupts enabled. Slub requires
interrupts to be disabled for flushing caches.

Signed-off-by: Christoph Lameter <clameter@sgi.com>

Index: slub/mm/slub.c
===================================================================
--- slub.orig/mm/slub.c	2007-05-31 11:49:48.000000000 -0700
+++ slub/mm/slub.c	2007-05-31 11:54:09.000000000 -0700
@@ -2663,6 +2663,19 @@ static void for_all_slabs(void (*func)(s
 }
 
 /*
+ * Version of __flush_cpu_slab for the case that interrupts
+ * are enabled.
+ */
+static void cpu_slab_flush(struct kmem_cache *s, int cpu)
+{
+	unsigned long flags;
+
+	local_irq_save(flags);
+	__flush_cpu_slab(s, cpu);
+	local_irq_restore(flags);
+}
+
+/*
  * Use the cpu notifier to insure that the cpu slabs are flushed when
  * necessary.
  */
@@ -2676,7 +2689,7 @@ static int __cpuinit slab_cpuup_callback
 	case CPU_UP_CANCELED_FROZEN:
 	case CPU_DEAD:
 	case CPU_DEAD_FROZEN:
-		for_all_slabs(__flush_cpu_slab, cpu);
+		for_all_slabs(cpu_slab_flush, cpu);
 		break;
 	default:
 		break;
 

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 15:29 ` 2.6.22-rc3-mm1 Michal Piotrowski
@ 2007-05-31 19:58   ` Rafael J. Wysocki
  2007-05-31 21:30     ` [PATCH -mm] Freezer: migration_thread should not be freezable (was: Re: [linux-pm] Re: 2.6.22-rc3-mm1) Rafael J. Wysocki
       [not found]     ` <6bffcb0e0705311425q2e00cc69j5006d95c3f0df158@mail.gmail.com>
  0 siblings, 2 replies; 105+ messages in thread
From: Rafael J. Wysocki @ 2007-05-31 19:58 UTC (permalink / raw)
  To: Michal Piotrowski; +Cc: Andrew Morton, linux-kernel, Pavel Machek, linux-pm

On Thursday, 31 May 2007 17:29, Michal Piotrowski wrote:
> Hi,
> 
> Andrew Morton napisał(a):
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> > 
> 
> FYI suspend to disk doesn't work anymore on my box, system hangs after "Suspending console(s)" message.
> 
> [  186.297753] Shrinking memory...  \b-\b\\b|\b/\b-\b\\b|\bdone (113064 pages freed)
> [  187.841914] Freed 452256 kbytes in 1.54 seconds (293.67 MB/s)
> [  187.847730] Suspending console(s)
> 
> http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/console.log
> http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/mm-config

Hmm, that might be a couple of things, actually.

To see if the patches directly related to hibernation/suspend cause this, can
you please test 2.6.22-rc3 with the patch series at

http://www.sisk.pl/kernel/hibernation_and_suspend/2.6.22-rc3/patches/

applied?

Greetings,
Rafael

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (2 preceding siblings ...)
  2007-05-31 17:53 ` 2.6.22-rc3-mm1 Michal Piotrowski
@ 2007-05-31 20:43 ` Mariusz Kozlowski
  2007-05-31 21:19   ` 2.6.22-rc3-mm1 Andrew Morton
  2007-05-31 22:05 ` 2.6.22-rc3-mm1 - works-for-me and a meta-question Valdis.Kletnieks
                   ` (21 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Mariusz Kozlowski @ 2007-05-31 20:43 UTC (permalink / raw)
  To: Andrew Morton, linuxppc-dev, paulus, Arnd Bergmann; +Cc: linux-kernel

Hello

	This is from iMac G3. The spufs_mem_mmap_fault() code looks bad
in arch/powerpc/platforms/cell/spufs/file.c but somehow I'm unable to find
the patch to blame hmm.

arch/powerpc/platforms/cell/spufs/file.c: In function 'spufs_mem_mmap_fault':
arch/powerpc/platforms/cell/spufs/file.c:122: error: 'address' undeclared (first use in this function)
arch/powerpc/platforms/cell/spufs/file.c:122: error: (Each undeclared identifier is reported only once
arch/powerpc/platforms/cell/spufs/file.c:122: error: for each function it appears in.)
arch/powerpc/platforms/cell/spufs/file.c:141: error: expected ';' before 'if'
arch/powerpc/platforms/cell/spufs/file.c:122: warning: unused variable 'addr0'
make[3]: *** [arch/powerpc/platforms/cell/spufs/file.o] Blad 1
make[2]: *** [arch/powerpc/platforms/cell/spufs] Blad 2
make[1]: *** [arch/powerpc/platforms/cell] Blad 2

Regards,

	Mariusz

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 20:43 ` 2.6.22-rc3-mm1 Mariusz Kozlowski
@ 2007-05-31 21:19   ` Andrew Morton
  2007-06-01 20:50     ` 2.6.22-rc3-mm1 Mariusz Kozlowski
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-05-31 21:19 UTC (permalink / raw)
  To: Mariusz Kozlowski
  Cc: linuxppc-dev, paulus, Arnd Bergmann, linux-kernel, Nick Piggin

On Thu, 31 May 2007 22:43:18 +0200
Mariusz Kozlowski <m.kozlowski@tuxland.pl> wrote:

> Hello
> 
> 	This is from iMac G3. The spufs_mem_mmap_fault() code looks bad
> in arch/powerpc/platforms/cell/spufs/file.c but somehow I'm unable to find
> the patch to blame hmm.
> 
> arch/powerpc/platforms/cell/spufs/file.c: In function 'spufs_mem_mmap_fault':
> arch/powerpc/platforms/cell/spufs/file.c:122: error: 'address' undeclared (first use in this function)
> arch/powerpc/platforms/cell/spufs/file.c:122: error: (Each undeclared identifier is reported only once
> arch/powerpc/platforms/cell/spufs/file.c:122: error: for each function it appears in.)
> arch/powerpc/platforms/cell/spufs/file.c:141: error: expected ';' before 'if'
> arch/powerpc/platforms/cell/spufs/file.c:122: warning: unused variable 'addr0'
> make[3]: *** [arch/powerpc/platforms/cell/spufs/file.o] Blad 1
> make[2]: *** [arch/powerpc/platforms/cell/spufs] Blad 2
> make[1]: *** [arch/powerpc/platforms/cell] Blad 2
> 

Yeah, that's the fix-fault-vs-invalidate-race patches, or my poor attempt
to fix them when spufs changed.  I suppose I'll have a poke at it next time
I get the powerpc machine fired up.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* [PATCH -mm] Freezer: migration_thread should not be freezable (was: Re: [linux-pm] Re: 2.6.22-rc3-mm1)
  2007-05-31 19:58   ` 2.6.22-rc3-mm1 Rafael J. Wysocki
@ 2007-05-31 21:30     ` Rafael J. Wysocki
       [not found]     ` <6bffcb0e0705311425q2e00cc69j5006d95c3f0df158@mail.gmail.com>
  1 sibling, 0 replies; 105+ messages in thread
From: Rafael J. Wysocki @ 2007-05-31 21:30 UTC (permalink / raw)
  To: Michal Piotrowski, Andrew Morton; +Cc: linux-pm, linux-kernel, Pavel Machek

On Thursday, 31 May 2007 21:58, Rafael J. Wysocki wrote:
> On Thursday, 31 May 2007 17:29, Michal Piotrowski wrote:
> > Hi,
> > 
> > Andrew Morton napisał(a):
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> > > 
> > 
> > FYI suspend to disk doesn't work anymore on my box, system hangs after "Suspending console(s)" message.
> > 
> > [  186.297753] Shrinking memory...  \b-\b\\b|\b/\b-\b\\b|\bdone (113064 pages freed)
> > [  187.841914] Freed 452256 kbytes in 1.54 seconds (293.67 MB/s)
> > [  187.847730] Suspending console(s)
> > 
> > http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/console.log
> > http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/mm-config
> 
> Hmm, that might be a couple of things, actually.
> 
> To see if the patches directly related to hibernation/suspend cause this, can
> you please test 2.6.22-rc3 with the patch series at
> 
> http://www.sisk.pl/kernel/hibernation_and_suspend/2.6.22-rc3/patches/
> 
> applied?

Ahem, I broke it. :-(

Andrew, the following fix is needed on top of
freezer-make-kernel-threads-nonfreezable-by-default.patch

---
From: Rafael J. Wysocki <rjw@sisk.pl>

migration_thread should not be freezable, or it will break hibernation and
suspend on SMP.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
---
 kernel/sched.c |    3 ---
 1 file changed, 3 deletions(-)

Index: linux-2.6.22-rc3/kernel/sched.c
===================================================================
--- linux-2.6.22-rc3.orig/kernel/sched.c
+++ linux-2.6.22-rc3/kernel/sched.c
@@ -5157,13 +5157,10 @@ static int migration_thread(void *data)
 	BUG_ON(rq->migration_thread != current);
 
 	set_current_state(TASK_INTERRUPTIBLE);
-	set_freezable();
 	while (!kthread_should_stop()) {
 		struct migration_req *req;
 		struct list_head *head;
 
-		try_to_freeze();
-
 		spin_lock_irq(&rq->lock);
 
 		if (cpu_is_offline(cpu)) {

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
       [not found]     ` <6bffcb0e0705311425q2e00cc69j5006d95c3f0df158@mail.gmail.com>
@ 2007-05-31 21:34       ` Rafael J. Wysocki
  0 siblings, 0 replies; 105+ messages in thread
From: Rafael J. Wysocki @ 2007-05-31 21:34 UTC (permalink / raw)
  To: Michal Piotrowski; +Cc: Andrew Morton, linux-kernel, Pavel Machek, linux-pm

On Thursday, 31 May 2007 23:25, Michal Piotrowski wrote:
> On 31/05/07, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> > On Thursday, 31 May 2007 17:29, Michal Piotrowski wrote:
> > > Hi,
> > >
> > > Andrew Morton napisał(a):
> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> > > >
> > >
> > > FYI suspend to disk doesn't work anymore on my box, system hangs after "Suspending console(s)" message.
> > >
> > > [  186.297753] Shrinking memory...  \b-\b\\b|\b/\b-\b\\b|\bdone (113064 pages freed)
> > > [  187.841914] Freed 452256 kbytes in 1.54 seconds (293.67 MB/s)
> > > [  187.847730] Suspending console(s)
> > >
> > > http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/console.log
> > > http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.22-rc3-mm1/mm-config
> >
> > Hmm, that might be a couple of things, actually.
> >
> > To see if the patches directly related to hibernation/suspend cause this, can
> > you please test 2.6.22-rc3 with the patch series at
> >
> > http://www.sisk.pl/kernel/hibernation_and_suspend/2.6.22-rc3/patches/
> >
> > applied?
> 
> Ok, bug is in suspend tree.

Yup.  Please see the message I've just sent (with a fix).

Rafael

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - works-for-me and a meta-question...
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (3 preceding siblings ...)
  2007-05-31 20:43 ` 2.6.22-rc3-mm1 Mariusz Kozlowski
@ 2007-05-31 22:05 ` Valdis.Kletnieks
  2007-05-31 22:16   ` Andrew Morton
       [not found]   ` <6bffcb0e0705311527ge774f48s8014f5108556f651@mail.gmail.com>
  2007-05-31 23:13 ` 2.6.22-rc3-mm1 - page_mkwrite() breakage Mark Fasheh
                   ` (20 subsequent siblings)
  25 siblings, 2 replies; 105+ messages in thread
From: Valdis.Kletnieks @ 2007-05-31 22:05 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 309 bytes --]

On Wed, 30 May 2007 23:58:23 PDT, Andrew Morton said:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/

Builds, boots, seems to be behaving on my laptop (Dell D820, X86_64).

Meta-question: Is there a useful address/mailbox/webpage to toss *working*
reports at?  




[-- Attachment #2: Type: application/pgp-signature, Size: 226 bytes --]

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 15:13         ` 2.6.22-rc3-mm1 Christoph Hellwig
@ 2007-05-31 22:10           ` Andrew Morton
  2007-06-01  7:09             ` 2.6.22-rc3-mm1 Cornelia Huck
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-05-31 22:10 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Jeff Garzik, Cornelia Huck, Matthew Wilcox, linux-kernel,
	SCSI development list, James Bottomley, Dan Williams

On Thu, 31 May 2007 16:13:38 +0100
Christoph Hellwig <hch@infradead.org> wrote:

> On Thu, May 31, 2007 at 08:35:13AM -0400, Jeff Garzik wrote:
> > Cornelia Huck wrote:
> > >On Thu, 31 May 2007 06:15:57 -0600,
> > >Matthew Wilcox <matthew@wil.cx> wrote:
> > >
> > >>On Thu, May 31, 2007 at 02:09:22PM +0200, Cornelia Huck wrote:
> > >>>I split those functions out into a new file. Builds on s390 and i386.
> > >>Why not just put #ifdef CONFIG_HAS_DMA / #endif around the pair of
> > >>functions?  I don't see the need to add a new Kconfig symbol and a new
> > >>file for this.
> > >
> > >I prefer a new file over #ifdefs in c files. (New dma-dependent stuff
> > >would also have a place where it could go to.)
> > >
> > >But I'll do whatever ends up as consensus :)
> > 
> > 50 lines isn't much need for a new file.
> 
> The scsi core shouldn't know anything about dma mappings, so a separate
> file is a good idea just to keep the separation clean.

ok, let's go this way.

Cornelia, afaict your patch has no actual delendency upon Dan's
dma-mapping-prevent-dma-dependent-code-from-linking-on.patch, correct?  If
so, I can merge it via James and then merge Dan's patch once James has
merged.

If there is a dependency then I guess I merge both into a single diff and
merge it all in one hit.

btw, this:

diff -puN include/scsi/scsi_cmnd.h~scsi-dont-build-scsi_dma_mapunmap-for-has_dma include/scsi/scsi_cmnd.h
--- a/include/scsi/scsi_cmnd.h~scsi-dont-build-scsi_dma_mapunmap-for-has_dma
+++ a/include/scsi/scsi_cmnd.h
@@ -135,8 +135,10 @@ extern void scsi_kunmap_atomic_sg(void *
 extern struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd *, gfp_t);
 extern void scsi_free_sgtable(struct scatterlist *, int);
 
+#ifdef CONFIG_SCSI_DMA
 extern int scsi_dma_map(struct scsi_cmnd *cmd);
 extern void scsi_dma_unmap(struct scsi_cmnd *cmd);
+#endif
 
 #define scsi_sg_count(cmd) ((cmd)->use_sg)
 #define scsi_sglist(cmd) ((struct scatterlist *)(cmd)->request_buffer)

We don't really need the ifdefs here.  If someone incorrectly calls these
functions then they'll get a link-time failure anyway.  The downside of
removing these ifdefs is that they won't get a compile-time warning, but I
tend to think that this small cost is worth it.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - works-for-me and a meta-question...
  2007-05-31 22:05 ` 2.6.22-rc3-mm1 - works-for-me and a meta-question Valdis.Kletnieks
@ 2007-05-31 22:16   ` Andrew Morton
       [not found]   ` <6bffcb0e0705311527ge774f48s8014f5108556f651@mail.gmail.com>
  1 sibling, 0 replies; 105+ messages in thread
From: Andrew Morton @ 2007-05-31 22:16 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: linux-kernel

On Thu, 31 May 2007 18:05:04 -0400
Valdis.Kletnieks@vt.edu wrote:

> On Wed, 30 May 2007 23:58:23 PDT, Andrew Morton said:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> 
> Builds, boots, seems to be behaving on my laptop (Dell D820, X86_64).

cool, thanks.

> Meta-question: Is there a useful address/mailbox/webpage to toss *working*
> reports at?  

ooh, don't know.  Nobody's ever had a -mm kernel which worked before ;)

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (4 preceding siblings ...)
  2007-05-31 22:05 ` 2.6.22-rc3-mm1 - works-for-me and a meta-question Valdis.Kletnieks
@ 2007-05-31 23:13 ` Mark Fasheh
  2007-06-01  1:01   ` Nick Piggin
  2007-06-01  2:01 ` 2.6.22-rc3-mm1 Arnaldo Carvalho de Melo
                   ` (19 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Mark Fasheh @ 2007-05-31 23:13 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Nick Piggin

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>  git-ocfs2.patch

Andrew, thanks for getting that back in there.


mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch broke ocfs2 shared
writable mmap. We hang on a page lock because ->page_mkwrite() is
being called with the page already locked:

+	/*
+	 * For consistency in subsequent calls, make the nopage_page always
+	 * locked.
+	 */
+	if (unlikely(!(vma->vm_flags & VM_CAN_INVALIDATE)))
+		lock_page(nopage_page);

It wasn't previously being called with the page lock held, intentionally.
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - works-for-me and a meta-question...
       [not found]   ` <6bffcb0e0705311527ge774f48s8014f5108556f651@mail.gmail.com>
@ 2007-05-31 23:21     ` andrea
  0 siblings, 0 replies; 105+ messages in thread
From: andrea @ 2007-05-31 23:21 UTC (permalink / raw)
  To: Michal Piotrowski; +Cc: Valdis.Kletnieks, Andrew Morton, linux-kernel

Hi,

On Fri, Jun 01, 2007 at 12:27:02AM +0200, Michal Piotrowski wrote:
> On 01/06/07, Valdis.Kletnieks@vt.edu <Valdis.Kletnieks@vt.edu> wrote:
> >On Wed, 30 May 2007 23:58:23 PDT, Andrew Morton said:
> >> 
> >ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> >
> >Builds, boots, seems to be behaving on my laptop (Dell D820, X86_64).
> >
> >Meta-question: Is there a useful address/mailbox/webpage to toss *working*
> >reports at?
> >
> 
> There was a klive
> http://klive.cpushare.com/
> 
> Actually it doesn't work. Andrea, what is happening with klive?

Don't worry, everything is going fine at klive.cpushare.com. You only
clicked it at the wrong time ;). (by the time I read your message it
was back up already) Uptime has generally been very good...

KLive current problem is that 512M of shm for the db, isn't enough to
get good performance with the current data size anymore.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-05-31 23:13 ` 2.6.22-rc3-mm1 - page_mkwrite() breakage Mark Fasheh
@ 2007-06-01  1:01   ` Nick Piggin
  2007-06-01  1:24     ` Mark Fasheh
  0 siblings, 1 reply; 105+ messages in thread
From: Nick Piggin @ 2007-06-01  1:01 UTC (permalink / raw)
  To: Mark Fasheh; +Cc: Andrew Morton, linux-kernel

On Thu, May 31, 2007 at 04:13:54PM -0700, Mark Fasheh wrote:
> On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
> >  git-ocfs2.patch
> 
> Andrew, thanks for getting that back in there.
> 
> 
> mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch broke ocfs2 shared
> writable mmap. We hang on a page lock because ->page_mkwrite() is
> being called with the page already locked:
> 
> +	/*
> +	 * For consistency in subsequent calls, make the nopage_page always
> +	 * locked.
> +	 */
> +	if (unlikely(!(vma->vm_flags & VM_CAN_INVALIDATE)))
> +		lock_page(nopage_page);
> 
> It wasn't previously being called with the page lock held, intentionally.

Ah, I didn't realise you were using that yet. I expect ocfs2 is using
VM_CAN_INVALIDATE there anyway.

Hmm, this becomes easier to deal with after page_mkwrite is merged with
->fault. But for now, can we just lock the page at the do_wp_page site
as well, and change the API? All users I have seen want the page locked
there anyway...


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01  1:01   ` Nick Piggin
@ 2007-06-01  1:24     ` Mark Fasheh
  2007-06-01  1:34       ` Nick Piggin
  0 siblings, 1 reply; 105+ messages in thread
From: Mark Fasheh @ 2007-06-01  1:24 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

On Fri, Jun 01, 2007 at 03:01:29AM +0200, Nick Piggin wrote:
> Ah, I didn't realise you were using that yet. I expect ocfs2 is using
> VM_CAN_INVALIDATE there anyway.
> 
> Hmm, this becomes easier to deal with after page_mkwrite is merged with
> ->fault. But for now, can we just lock the page at the do_wp_page site
> as well, and change the API? All users I have seen want the page locked
> there anyway...

Unfortunately that doesn't work for ocfs2 for exactly the same reasons page
lock doesn't work during a write either - there's a cluster lock inversion
and we might have to zero adjacent pages for an allocating write.

What's involved in merging it with ->fault?

Here's a nasty idea... Would it be valid for ->page_mkwrite to unlock the
page, so long as it's returned in a locked state? Though, do we even need
the page lock that early? It seemed to me that you were adding it for
consistency reasons (I could be wrong though).
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01  1:24     ` Mark Fasheh
@ 2007-06-01  1:34       ` Nick Piggin
  2007-06-01  1:45         ` Mark Fasheh
  0 siblings, 1 reply; 105+ messages in thread
From: Nick Piggin @ 2007-06-01  1:34 UTC (permalink / raw)
  To: Mark Fasheh; +Cc: Andrew Morton, linux-kernel

On Thu, May 31, 2007 at 06:24:40PM -0700, Mark Fasheh wrote:
> On Fri, Jun 01, 2007 at 03:01:29AM +0200, Nick Piggin wrote:
> > Ah, I didn't realise you were using that yet. I expect ocfs2 is using
> > VM_CAN_INVALIDATE there anyway.
> > 
> > Hmm, this becomes easier to deal with after page_mkwrite is merged with
> > ->fault. But for now, can we just lock the page at the do_wp_page site
> > as well, and change the API? All users I have seen want the page locked
> > there anyway...
> 
> Unfortunately that doesn't work for ocfs2 for exactly the same reasons page
> lock doesn't work during a write either - there's a cluster lock inversion
> and we might have to zero adjacent pages for an allocating write.

I guess you could just fail the page_mkwrite and have it try again? ..
that would require changing it not to always go SIGBUS though.


> What's involved in merging it with ->fault?

Just I have't sent the patch (because at the time there were no
page_mkwrite users to look at).

It is nicer too, because the nopage path only has  to call into
the filesystem once, to return the page (the filesystem can check
whether it is for write, and do the page_mkwrite thing at that
time). do_wp_page obviously still involves the extra call, and
that will be with a flag telling the fs that it isn't a "nopage"
fault, but a write fault on an existing page.

 
> Here's a nasty idea... Would it be valid for ->page_mkwrite to unlock the
> page, so long as it's returned in a locked state? Though, do we even need
> the page lock that early? It seemed to me that you were adding it for
> consistency reasons (I could be wrong though).

You could do that, but you'd have to probably check that it is
within i_size after you relock it, I think... yeah, that might
be the best thing for ocfs to do for now.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01  1:34       ` Nick Piggin
@ 2007-06-01  1:45         ` Mark Fasheh
  2007-06-01  1:53           ` Nick Piggin
  0 siblings, 1 reply; 105+ messages in thread
From: Mark Fasheh @ 2007-06-01  1:45 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

On Fri, Jun 01, 2007 at 03:34:02AM +0200, Nick Piggin wrote:
> > Here's a nasty idea... Would it be valid for ->page_mkwrite to unlock the
> > page, so long as it's returned in a locked state? Though, do we even need
> > the page lock that early? It seemed to me that you were adding it for
> > consistency reasons (I could be wrong though).
> 
> You could do that, but you'd have to probably check that it is
> within i_size after you relock it, I think... yeah, that might
> be the best thing for ocfs to do for now.

Well, ocfs2 already does i_size checks in page_mkwrite, so we're covered
with respect to truncate races.

I'm still not clear though - what was the reason for adding the page locking
there in the 1st place?
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01  1:45         ` Mark Fasheh
@ 2007-06-01  1:53           ` Nick Piggin
  2007-06-01  5:20             ` Mark Fasheh
  0 siblings, 1 reply; 105+ messages in thread
From: Nick Piggin @ 2007-06-01  1:53 UTC (permalink / raw)
  To: Mark Fasheh; +Cc: Andrew Morton, linux-kernel

On Thu, May 31, 2007 at 06:45:17PM -0700, Mark Fasheh wrote:
> On Fri, Jun 01, 2007 at 03:34:02AM +0200, Nick Piggin wrote:
> > > Here's a nasty idea... Would it be valid for ->page_mkwrite to unlock the
> > > page, so long as it's returned in a locked state? Though, do we even need
> > > the page lock that early? It seemed to me that you were adding it for
> > > consistency reasons (I could be wrong though).
> > 
> > You could do that, but you'd have to probably check that it is
> > within i_size after you relock it, I think... yeah, that might
> > be the best thing for ocfs to do for now.
> 
> Well, ocfs2 already does i_size checks in page_mkwrite, so we're covered
> with respect to truncate races.
> 
> I'm still not clear though - what was the reason for adding the page locking
> there in the 1st place?

Yeah, its to cover page invalidation races. There is a description in
an earlier patch's changelog.


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (5 preceding siblings ...)
  2007-05-31 23:13 ` 2.6.22-rc3-mm1 - page_mkwrite() breakage Mark Fasheh
@ 2007-06-01  2:01 ` Arnaldo Carvalho de Melo
  2007-06-01  2:12   ` 2.6.22-rc3-mm1 Andrew Morton
  2007-06-01  3:52 ` 2.6.22-rc3-mm1 Michael Ellerman
                   ` (18 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Arnaldo Carvalho de Melo @ 2007-06-01  2:01 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
>
> - Merged the convert-cpusets-to-container-infrastructure patches.  These
>   will probably be dropped and redone.
>
>
>
>   
<BIG SNIP>
>  x86 things
>
> +add-select-phylib-to-the-ucc_geth-kconfig-option.patch
> +m68k-parenthesis-balance.patch
> +msi-fix-the-ordering-of-msix-irqs.patch
> +msi-mask-the-msix-vector-before-we-unmap-it.patch
> +potential-parse-error-in-ifdef.patch
> +potential-parse-error-in-ifdef-fix.patch
> +potential-parse-error-in-ifdef-update.patch
> +pci_ids-update-patch-for-intel-ich9m.patch
> +x86-fix-oprofile-double-free-was-re-multiple-free.patch
>   
http://lkml.org/lkml/2007/5/30/565 fixes the above patch :-)

<BIG SNIP>

- Arnaldo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01  2:01 ` 2.6.22-rc3-mm1 Arnaldo Carvalho de Melo
@ 2007-06-01  2:12   ` Andrew Morton
  2007-06-01  2:24     ` 2.6.22-rc3-mm1 Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-01  2:12 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo; +Cc: linux-kernel

On Thu, 31 May 2007 23:01:15 -0300 Arnaldo Carvalho de Melo <acme@redhat.com> wrote:

> Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> >
> > - Merged the convert-cpusets-to-container-infrastructure patches.  These
> >   will probably be dropped and redone.
> >
> >
> >
> >   
> <BIG SNIP>
> >  x86 things
> >
> > +add-select-phylib-to-the-ucc_geth-kconfig-option.patch
> > +m68k-parenthesis-balance.patch
> > +msi-fix-the-ordering-of-msix-irqs.patch
> > +msi-mask-the-msix-vector-before-we-unmap-it.patch
> > +potential-parse-error-in-ifdef.patch
> > +potential-parse-error-in-ifdef-fix.patch
> > +potential-parse-error-in-ifdef-update.patch
> > +pci_ids-update-patch-for-intel-ich9m.patch
> > +x86-fix-oprofile-double-free-was-re-multiple-free.patch
> >   
> http://lkml.org/lkml/2007/5/30/565 fixes the above patch :-)
> 

I don't know what you mean.  The code is already using
for_each_possible_cpu() and
x86-fix-oprofile-double-free-was-re-multiple-free.patch doesn't change
that.


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01  2:12   ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-06-01  2:24     ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 105+ messages in thread
From: Arnaldo Carvalho de Melo @ 2007-06-01  2:24 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> On Thu, 31 May 2007 23:01:15 -0300 Arnaldo Carvalho de Melo <acme@redhat.com> wrote:
>
>   
>> Andrew Morton wrote:
>>     
>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
>>>
>>> - Merged the convert-cpusets-to-container-infrastructure patches.  These
>>>   will probably be dropped and redone.
>>>
>>>
>>>
>>>   
>>>       
>> <BIG SNIP>
>>     
>>>  x86 things
>>>
>>> +add-select-phylib-to-the-ucc_geth-kconfig-option.patch
>>> +m68k-parenthesis-balance.patch
>>> +msi-fix-the-ordering-of-msix-irqs.patch
>>> +msi-mask-the-msix-vector-before-we-unmap-it.patch
>>> +potential-parse-error-in-ifdef.patch
>>> +potential-parse-error-in-ifdef-fix.patch
>>> +potential-parse-error-in-ifdef-update.patch
>>> +pci_ids-update-patch-for-intel-ich9m.patch
>>> +x86-fix-oprofile-double-free-was-re-multiple-free.patch
>>>   
>>>       
>> http://lkml.org/lkml/2007/5/30/565 fixes the above patch :-)
>>
>>     
>
> I don't know what you mean.  The code is already using
> for_each_possible_cpu() and
> x86-fix-oprofile-double-free-was-re-multiple-free.patch doesn't change
> that.
>
>   
Yes, the code, i.e. nmi_setup already uses for_each_possible_cpu(), that 
is not the problem. The problem is allocate_msr doing a 
for_each_online_cpu(), i.e. not allocating for each_possible_cpu. Chris 
tested and acked the patch: http://lkml.org/lkml/2007/5/31/36

- Arnaldo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (6 preceding siblings ...)
  2007-06-01  2:01 ` 2.6.22-rc3-mm1 Arnaldo Carvalho de Melo
@ 2007-06-01  3:52 ` Michael Ellerman
  2007-06-01  5:55   ` 2.6.22-rc3-mm1 Eric W. Biederman
  2007-06-01 16:42 ` 2.6.22-rc3-mm1: IA64 make allnoconfig broken Mel Gorman
                   ` (17 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Michael Ellerman @ 2007-06-01  3:52 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, ebiederm

On 5/31/07, Andrew Morton <akpm@linux-foundation.org> wrote:
>
...
> +msi-fix-the-ordering-of-msix-irqs.patch
> +msi-mask-the-msix-vector-before-we-unmap-it.patch
...
>  2.6.22 probable-queue

I think these two should be in the 2.6.22 definite-queue, unless Eric disagrees.

cheers

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01  1:53           ` Nick Piggin
@ 2007-06-01  5:20             ` Mark Fasheh
  2007-06-01 22:01               ` Mark Fasheh
  0 siblings, 1 reply; 105+ messages in thread
From: Mark Fasheh @ 2007-06-01  5:20 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

On Fri, Jun 01, 2007 at 03:53:49AM +0200, Nick Piggin wrote:
> On Thu, May 31, 2007 at 06:45:17PM -0700, Mark Fasheh wrote:
> > On Fri, Jun 01, 2007 at 03:34:02AM +0200, Nick Piggin wrote:
> > > > Here's a nasty idea... Would it be valid for ->page_mkwrite to unlock the
> > > > page, so long as it's returned in a locked state? Though, do we even need
> > > > the page lock that early? It seemed to me that you were adding it for
> > > > consistency reasons (I could be wrong though).
> > > 
> > > You could do that, but you'd have to probably check that it is
> > > within i_size after you relock it, I think... yeah, that might
> > > be the best thing for ocfs to do for now.

Ok. So how about the attached patch? It's a bit different than discussed,
but I think it's much cleaner because it preserves the current behavior of
the callback and keeps that bit of page locking inside core code. Not tested
as of yet, but I can run it tommorrow.
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com

From: Mark Fasheh <mark.fasheh@oracle.com>

[PATCH] Release page lock before calling ->page_mkwrite

__do_fault() was calling ->page_mkwrite() with the page lock held, which
violates the locking rules for that callback. Release and retake the page
lock around the callback to avoid deadlocking file systems which manually
take it.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
---
 mm/memory.c |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/mm/memory.c b/mm/memory.c
index 7221618..491cc27 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2378,11 +2378,14 @@ static int __do_fault(struct mm_struct *
 			 * address space wants to know that the page is about
 			 * to become writable
 			 */
-			if (vma->vm_ops->page_mkwrite &&
-			    vma->vm_ops->page_mkwrite(vma, page) < 0) {
-				fdata.type = VM_FAULT_SIGBUS;
-				anon = 1; /* no anon but release faulted_page */
-				goto out;
+			if (vma->vm_ops->page_mkwrite) {
+				unlock_page(page);
+				if (vma->vm_ops->page_mkwrite(vma, page) < 0) {
+					fdata.type = VM_FAULT_SIGBUS;
+					anon = 1; /* no anon but release faulted_page */
+					goto out_unlocked;
+				}
+				lock_page(page);
 			}
 		}
 
@@ -2434,6 +2437,7 @@ static int __do_fault(struct mm_struct *
 
 out:
 	unlock_page(faulted_page);
+out_unlocked:
 	if (anon)
 		page_cache_release(faulted_page);
 	else if (dirty_page) {
-- 
1.4.2.3


^ permalink raw reply related	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01  3:52 ` 2.6.22-rc3-mm1 Michael Ellerman
@ 2007-06-01  5:55   ` Eric W. Biederman
  0 siblings, 0 replies; 105+ messages in thread
From: Eric W. Biederman @ 2007-06-01  5:55 UTC (permalink / raw)
  To: Michael Ellerman; +Cc: Andrew Morton, linux-kernel

"Michael Ellerman" <michael@ellerman.id.au> writes:

> On 5/31/07, Andrew Morton <akpm@linux-foundation.org> wrote:
>>
> ...
>> +msi-fix-the-ordering-of-msix-irqs.patch
>> +msi-mask-the-msix-vector-before-we-unmap-it.patch
> ...
>>  2.6.22 probable-queue
>
> I think these two should be in the 2.6.22 definite-queue, unless Eric disagrees.

They are simple bug fixes for regression in 2.6.22 so I don't see a reason
to delay them.

Eric

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 22:10           ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-06-01  7:09             ` Cornelia Huck
  0 siblings, 0 replies; 105+ messages in thread
From: Cornelia Huck @ 2007-06-01  7:09 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Christoph Hellwig, Jeff Garzik, Matthew Wilcox, linux-kernel,
	SCSI development list, James Bottomley, Dan Williams

On Thu, 31 May 2007 15:10:05 -0700,
Andrew Morton <akpm@linux-foundation.org> wrote:

> Cornelia, afaict your patch has no actual delendency upon Dan's
> dma-mapping-prevent-dma-dependent-code-from-linking-on.patch, correct?  If
> so, I can merge it via James and then merge Dan's patch once James has
> merged.

AFAICS there's no dependency in that direction.

> diff -puN include/scsi/scsi_cmnd.h~scsi-dont-build-scsi_dma_mapunmap-for-has_dma include/scsi/scsi_cmnd.h
> --- a/include/scsi/scsi_cmnd.h~scsi-dont-build-scsi_dma_mapunmap-for-has_dma
> +++ a/include/scsi/scsi_cmnd.h
> @@ -135,8 +135,10 @@ extern void scsi_kunmap_atomic_sg(void *
>  extern struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd *, gfp_t);
>  extern void scsi_free_sgtable(struct scatterlist *, int);
> 
> +#ifdef CONFIG_SCSI_DMA
>  extern int scsi_dma_map(struct scsi_cmnd *cmd);
>  extern void scsi_dma_unmap(struct scsi_cmnd *cmd);
> +#endif
> 
>  #define scsi_sg_count(cmd) ((cmd)->use_sg)
>  #define scsi_sglist(cmd) ((struct scatterlist *)(cmd)->request_buffer)
> 
> We don't really need the ifdefs here.  If someone incorrectly calls these
> functions then they'll get a link-time failure anyway.  The downside of
> removing these ifdefs is that they won't get a compile-time warning, but I
> tend to think that this small cost is worth it.

OK, fine with me.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* 2.6.22-rc3-mm1: IA64 make allnoconfig broken
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (7 preceding siblings ...)
  2007-06-01  3:52 ` 2.6.22-rc3-mm1 Michael Ellerman
@ 2007-06-01 16:42 ` Mel Gorman
  2007-06-01 17:00   ` Andrew Morton
  2007-06-02 13:57 ` 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n Adrian Bunk
                   ` (16 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Mel Gorman @ 2007-06-01 16:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: benh, linux-kernel

On (30/05/07 23:58), Andrew Morton didst pronounce:
> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> 
> - Merged the convert-cpusets-to-container-infrastructure patches.  These
>   will probably be dropped and redone.
> 

Came across this while automating allnoconfig, allmodconfig
and defconfig build tests. I haven't checked to make 100% sure but
rework-ptep_set_access_flags-and-fix-sun4c.patch is the most likely candidate
based on the error - patch author cc'd.

Test result
===========
Machine name: elm3b10
Architecture: ia64
Build args:   kernel 2.6.22-rc3-mm1 
Result:       Failed

Standard build:          Completed successfully
make allnoconfig build:  Failed and terminated the run
06/01/07-08:10:54 building kernel - make -j4 vmlinux.gz
  CHK     include/linux/version.h
  UPD     include/linux/version.h
  CHK     include/linux/utsrelease.h
  UPD     include/linux/utsrelease.h
  SYMLINK include/asm -> include/asm-ia64
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  CC      arch/ia64/kernel/asm-offsets.s
  CC      scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/file2alias.o
  GEN     include/asm-ia64/asm-offsets.h
  CALL    scripts/checksyscalls.sh
<stdin>:1380:2: warning: #warning syscall revokeat not implemented
<stdin>:1384:2: warning: #warning syscall frevoke not implemented
<stdin>:1392:2: warning: #warning syscall sched_yield_to not implemented
  HOSTCC  scripts/mod/modpost.o
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/mod/sumversion.o
  HOSTCC  scripts/conmakehash
  HOSTLD  scripts/mod/modpost
  CC      init/main.o
  LD      usr/built-in.o
  CHK     include/linux/compile.h
  UPD     include/linux/compile.h
  CC      arch/ia64/kernel/acpi.o
  CC      init/do_mounts.o
  AS      arch/ia64/kernel/entry.o
  CC      arch/ia64/kernel/efi.o
  CC      init/noinitramfs.o
  CC      init/calibrate.o
  CC      init/version.o
  LD      init/mounts.o
  LD      init/built-in.o
  AS      arch/ia64/kernel/efi_stub.o
  CC      arch/ia64/mm/init.o
  LDS     arch/ia64/kernel/gate.lds
  AS      arch/ia64/kernel/gate.o
  AS      arch/ia64/kernel/fsys.o
  CC      arch/ia64/kernel/ia64_ksyms.o
  CC      arch/ia64/kernel/irq.o
  CC      arch/ia64/mm/fault.o
  CC      arch/ia64/kernel/irq_ia64.o
  CC      arch/ia64/mm/tlb.o
  CC      arch/ia64/kernel/irq_lsapic.o
  CC      arch/ia64/mm/extable.o
  AS      arch/ia64/kernel/ivt.o
  CC      arch/ia64/kernel/machvec.o
  CC      arch/ia64/mm/ioremap.o
  AS      arch/ia64/kernel/pal.o
  CC      arch/ia64/kernel/patch.o
  CC      arch/ia64/kernel/process.o
  CC      arch/ia64/mm/numa.o
  CC      arch/ia64/mm/discontig.o
  CC      arch/ia64/kernel/perfmon.o
  LD      arch/ia64/mm/built-in.o
  CC      arch/ia64/kernel/ptrace.o
  CC      arch/ia64/dig/setup.o
  CC      arch/ia64/dig/machvec.o
  LD      arch/ia64/dig/built-in.o
  CC      arch/ia64/kernel/sal.o
  CC      kernel/sched.o
  CC      arch/ia64/kernel/salinfo.o
  CC      arch/ia64/kernel/semaphore.o
  CC      arch/ia64/kernel/setup.o
  CC      arch/ia64/kernel/signal.o
{standard input}: Assembler messages:
{standard input}:12494: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12494: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12494: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12494: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12494: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12494: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12494: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12494: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12494: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12494: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12495: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12495: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12493: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12494: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12495: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12495: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12495: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12495: Warning: This is the location of the conflicting usage
{standard input}:12496: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:12496: Warning: Only the first path encountering the conflict is reported
{standard input}:12495: Warning: This is the location of the conflicting usage
  CC      kernel/fork.o
  CC      arch/ia64/kernel/sys_ia64.o
  CC      arch/ia64/kernel/time.o
  CC      arch/ia64/kernel/traps.o
{standard input}: Assembler messages:
{standard input}:3480: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3480: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3480: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3480: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3480: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3480: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3480: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3480: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3480: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3480: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3481: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3481: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3479: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3480: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3481: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3481: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3481: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3481: Warning: This is the location of the conflicting usage
{standard input}:3482: Warning: Use of 'mov' may violate WAW dependency 'RR#' (impliedf)
{standard input}:3482: Warning: Only the first path encountering the conflict is reported
{standard input}:3481: Warning: This is the location of the conflicting usage
  CC      kernel/exec_domain.o
  CC      kernel/panic.o
  CC      arch/ia64/kernel/unaligned.o
  CC      kernel/printk.o
  CC      arch/ia64/kernel/unwind.o
  CC      kernel/profile.o
  CC      kernel/exit.o
  CC      arch/ia64/kernel/mca.o
  CC      kernel/itimer.o
  CC      kernel/time.o
  CC      kernel/softirq.o
  AS      arch/ia64/kernel/mca_asm.o
  CC      arch/ia64/kernel/topology.o
  CC      kernel/resource.o
  CC      arch/ia64/kernel/brl_emu.o
  CC      kernel/sysctl.o
  CC      arch/ia64/kernel/acpi-ext.o
  CC      arch/ia64/kernel/iosapic.o
  CC      arch/ia64/kernel/numa.o
  CC      kernel/capability.o
  GATE arch/ia64/kernel/gate-syms.o
  AS      arch/ia64/kernel/head.o
  CC      arch/ia64/kernel/init_task.o
  CC      kernel/ptrace.o
  LDS     arch/ia64/kernel/vmlinux.lds
  GATE arch/ia64/kernel/gate.so
  AS      arch/ia64/kernel/gate-data.o
  LD      arch/ia64/kernel/built-in.o
  CC      kernel/timer.o
  CC      mm/bootmem.o
  CC      kernel/user.o
  CC      mm/filemap.o
  CC      kernel/signal.o
  CC      mm/mempool.o
  CC      kernel/sys.o
  CC      mm/oom_kill.o
  CC      mm/fadvise.o
  CC      mm/page_alloc.o
  CC      kernel/kmod.o
  CC      kernel/workqueue.o
  CC      kernel/pid.o
  CC      kernel/rcupdate.o
  CC      kernel/extable.o
  CC      mm/page-writeback.o
  CC      kernel/params.o
  CC      kernel/posix-timers.o
  CC      mm/pdflush.o
  CC      mm/readahead.o
  CC      kernel/kthread.o
  CC      mm/swap.o
  CC      kernel/wait.o
  CC      kernel/kfifo.o
  CC      mm/truncate.o
  CC      kernel/sys_ni.o
  CC      kernel/posix-cpu-timers.o
  CC      mm/vmscan.o
  CC      kernel/mutex.o
  CC      kernel/hrtimer.o
{standard input}: Assembler messages:
{standard input}:2603: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' (impliedf), specific resource number is 14
{standard input}:2603: Warning: Only the first path encountering the conflict is reported
{standard input}:2602: Warning: This is the location of the conflicting usage
  CC      mm/prio_tree.o
  CC      mm/util.o
  CC      kernel/rwsem.o
  CC      kernel/latency.o
  CC      mm/mmzone.o
  CC      kernel/nsproxy.o
  CC      mm/vmstat.o
  CC      kernel/srcu.o
  CC      mm/backing-dev.o
  CC      kernel/die_notifier.o
  CC      mm/fremap.o
  CC      kernel/irq/handle.o
  CC      mm/highmem.o
  CC      kernel/irq/manage.o
  CC      mm/madvise.o
  CC      kernel/irq/spurious.o
  CC      mm/memory.o
  CC      kernel/irq/resend.o
mm/memory.c: In function `do_wp_page':
mm/memory.c:1700: error: parse error before "__changed"
mm/memory.c:1700: error: parse error before ')' token
mm/memory.c:1704: error: parse error before "ret"
mm/memory.c:1639: warning: unused variable `new_page'
mm/memory.c:1641: warning: unused variable `ret'
mm/memory.c:1689: error: label `unlock' used but not defined
mm/memory.c:1677: error: label `unwritable_page' used but not defined
mm/memory.c:1646: error: label `gotten' used but not defined
mm/memory.c: At top level:
mm/memory.c:1713: error: parse error before "while"
mm/memory.c:1725: warning: type defaults to `int' in declaration of `cow_user_page'
mm/memory.c:1725: warning: parameter names (without types) in function declaration
mm/memory.c:1725: error: conflicting types for `cow_user_page'
mm/memory.c:1590: error: previous declaration of `cow_user_page'
mm/memory.c:1725: warning: data definition has no type or storage class
mm/memory.c:1726: error: parse error before '}' token
mm/memory.c:1731: warning: type defaults to `int' in declaration of `page_table'
mm/memory.c:1731: error: braced-group within expression allowed only inside a function
mm/memory.c:1731: error: `pmd' undeclared here (not in a function)
mm/memory.c:1731: warning: data definition has no type or storage class
mm/memory.c:1731: error: parse error before '&' token
mm/memory.c:1731: error: braced-group within expression allowed only inside a function
mm/memory.c:1731: error: `pmd' undeclared here (not in a function)
mm/memory.c:1731: error: parse error before ';' token
mm/memory.c:1731: error: `address' undeclared here (not in a function)
mm/memory.c:1731: error: parse error before ')' token
mm/memory.c:1731: error: parse error before '&' token
mm/memory.c:1731: warning: type defaults to `int' in declaration of `__pte'
mm/memory.c:1731: error: conflicting types for `__pte'
mm/memory.c:1731: error: previous declaration of `__pte'
mm/memory.c:1731: warning: data definition has no type or storage class
mm/memory.c:1731: error: parse error before '}' token
mm/memory.c:1737: error: parse error before '->' token
mm/memory.c:1742: warning: type defaults to `int' in declaration of `entry'
mm/memory.c:1742: error: braced-group within expression allowed only inside a function
mm/memory.c:1742: error: parse error before ')' token
mm/memory.c:1742: error: `__pg' undeclared here (not in a function)
mm/memory.c:1742: error: initializer element is not constant
mm/memory.c:1742: error: parse error before "unsigned"
mm/memory.c:1742: warning: type defaults to `int' in declaration of `__pte'
mm/memory.c:1742: warning: data definition has no type or storage class
mm/memory.c:1742: error: parse error before '}' token
mm/memory.c:1743: warning: type defaults to `int' in declaration of `entry'
mm/memory.c:1743: error: redefinition of `entry'
mm/memory.c:1742: error: `entry' previously defined here
mm/memory.c:1743: error: request for member `pte' in something not a structure or union
mm/memory.c:1743: error: `vma' undeclared here (not in a function)
mm/memory.c:1743: error: incompatible types in initialization
mm/memory.c:1743: error: initializer element is not constant
mm/memory.c:1743: warning: data definition has no type or storage class
mm/memory.c:1744: warning: type defaults to `int' in declaration of `lazy_mmu_prot_update'
mm/memory.c:1744: warning: parameter names (without types) in function declaration
mm/memory.c:1744: error: conflicting types for `lazy_mmu_prot_update'
include/asm/pgtable.h:510: error: previous declaration of `lazy_mmu_prot_update'
mm/memory.c:1744: warning: data definition has no type or storage class
mm/memory.c:1751: error: parse error before '{' token
mm/memory.c:1751: warning: type defaults to `int' in declaration of `__pte'
mm/memory.c:1751: error: `vma' undeclared here (not in a function)
mm/memory.c:1751: error: `address' undeclared here (not in a function)
mm/memory.c:1751: warning: passing arg 3 of `ptep_get_and_clear' makes pointer from integer without a cast
mm/memory.c:1751: error: incompatible types in initialization
mm/memory.c:1751: error: initializer element is not constant
mm/memory.c:1751: warning: data definition has no type or storage class
mm/memory.c:1751: warning: type defaults to `int' in declaration of `flush_tlb_page'
mm/memory.c:1751: warning: parameter names (without types) in function declaration
mm/memory.c:1751: error: conflicting types for `flush_tlb_page'
include/asm/tlbflush.h:75: error: previous declaration of `flush_tlb_page'
mm/memory.c:1751: warning: data definition has no type or storage class
mm/memory.c:1751: warning: type defaults to `int' in declaration of `__pte'
mm/memory.c:1751: warning: data definition has no type or storage class
mm/memory.c:1751: error: parse error before '}' token
mm/memory.c:1752: error: parse error before '=' token
mm/memory.c:1754: warning: type defaults to `int' in declaration of `lru_cache_add_active'
mm/memory.c:1754: warning: parameter names (without types) in function declaration
mm/memory.c:1754: error: conflicting types for `lru_cache_add_active'
include/linux/swap.h:182: error: previous declaration of `lru_cache_add_active'
mm/memory.c:1754: warning: data definition has no type or storage class
mm/memory.c:1755: warning: type defaults to `int' in declaration of `page_add_new_anon_rmap'
mm/memory.c:1755: warning: parameter names (without types) in function declaration
mm/memory.c:1755: error: conflicting types for `page_add_new_anon_rmap'
include/linux/rmap.h:73: error: previous declaration of `page_add_new_anon_rmap'
mm/memory.c:1755: warning: data definition has no type or storage class
mm/memory.c:1758: warning: type defaults to `int' in declaration of `new_page'
mm/memory.c:1758: error: `old_page' undeclared here (not in a function)
mm/memory.c:1758: warning: data definition has no type or storage class
mm/memory.c:1759: error: parse error before '|=' token
mm/memory.c:1777: warning: type defaults to `int' in declaration of `set_page_dirty_balance'
mm/memory.c:1777: warning: parameter names (without types) in function declaration
mm/memory.c:1777: error: conflicting types for `set_page_dirty_balance'
include/linux/writeback.h:130: error: previous declaration of `set_page_dirty_balance'
mm/memory.c:1777: warning: data definition has no type or storage class
mm/memory.c:1778: warning: type defaults to `int' in declaration of `put_page'
mm/memory.c:1778: warning: parameter names (without types) in function declaration
mm/memory.c:1778: error: conflicting types for `put_page'
include/linux/mm.h:334: error: previous declaration of `put_page'
mm/memory.c:1778: warning: data definition has no type or storage class
mm/memory.c:1779: error: parse error before '}' token
mm/memory.c: In function `handle_pte_fault':
mm/memory.c:2544: error: parse error before "__changed"
mm/memory.c:2544: error: parse error before ')' token
mm/memory.c:2547: error: parse error before "else"
mm/memory.c:2536: error: label `unlock' used but not defined
mm/memory.c: At top level:
mm/memory.c:2557: error: parse error before ':' token
{standard input}: Assembler messages:
{standard input}:88: Error: symbol `entry' is already defined
make[1]: *** [mm/memory.o] Error 1
make: *** [mm] Error 2
make: *** Waiting for unfinished jobs....
  CC      kernel/power/main.o
  CC      kernel/irq/chip.o
  CC      kernel/power/process.o
  CC      kernel/irq/devres.o
  CC      kernel/power/console.o
  CC      kernel/irq/autoprobe.o
  LD      kernel/power/built-in.o
  CC      kernel/irq/proc.o
  CC      kernel/time/timekeeping.o
  LD      kernel/irq/built-in.o
  CC      kernel/time/ntp.o
  CC      kernel/futex.o
  CC      kernel/time/clocksource.o
  CC      kernel/time/jiffies.o
  CC      kernel/time/timer_list.o
  LD      kernel/time/built-in.o
  CC      kernel/rtmutex.o
  CC      kernel/kallsyms.o
  CC      kernel/ksysfs.o
  CC      kernel/utsname_sysctl.o
  LD      kernel/built-in.o
06/01/07-08:11:46 Build the kernel. Failed rc = 2
06/01/07-08:11:46 apack-bench-build_configs: Building kernel... Failed rc = 1
Failed and terminated the run
06/01/07-08:11:46 command complete: (1) rc=126 (TEST ABORT)
 Fatal error, aborting autorun

-- 
Mel Gorman
Part-time Phd Student                          Linux Technology Center
University of Limerick                         IBM Dublin Software Lab

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: IA64 make allnoconfig broken
  2007-06-01 16:42 ` 2.6.22-rc3-mm1: IA64 make allnoconfig broken Mel Gorman
@ 2007-06-01 17:00   ` Andrew Morton
  2007-06-01 18:50     ` Mel Gorman
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-01 17:00 UTC (permalink / raw)
  To: Mel Gorman; +Cc: benh, linux-kernel

On Fri, 1 Jun 2007 17:42:04 +0100 mel@skynet.ie (Mel Gorman) wrote:

> mm/memory.c: In function `do_wp_page':
> mm/memory.c:1700: error: parse error before "__changed"
> mm/memory.c:1700: error: parse error before ')' token
> mm/memory.c:1704: error: parse error before "ret"

this?

--- a/include/asm-ia64/pgtable.h~rework-ptep_set_access_flags-and-fix-sun4c-fix
+++ a/include/asm-ia64/pgtable.h
@@ -546,7 +546,7 @@ extern void lazy_mmu_prot_update (pte_t 
 # define ptep_set_access_flags(__vma, __addr, __ptep, __entry, __safely_writable) \
 ({										\
 	int __changed = !pte_same(*(__ptep), __entry);				\
-	if (__changed) {							\
+	if (__changed)							\
 		ptep_establish(__vma, __addr, __ptep, __entry)			\
 	__changed;								\
 })


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: IA64 make allnoconfig broken
  2007-06-01 17:00   ` Andrew Morton
@ 2007-06-01 18:50     ` Mel Gorman
  2007-06-01 20:55       ` [PATCH] Fix problem with IA64 make allnoconfig Mel Gorman
  0 siblings, 1 reply; 105+ messages in thread
From: Mel Gorman @ 2007-06-01 18:50 UTC (permalink / raw)
  To: Andrew Morton; +Cc: benh, linux-kernel

On (01/06/07 10:00), Andrew Morton didst pronounce:
> On Fri, 1 Jun 2007 17:42:04 +0100 mel@skynet.ie (Mel Gorman) wrote:
> 
> > mm/memory.c: In function `do_wp_page':
> > mm/memory.c:1700: error: parse error before "__changed"
> > mm/memory.c:1700: error: parse error before ')' token
> > mm/memory.c:1704: error: parse error before "ret"
> 
> this?
> 
> --- a/include/asm-ia64/pgtable.h~rework-ptep_set_access_flags-and-fix-sun4c-fix
> +++ a/include/asm-ia64/pgtable.h
> @@ -546,7 +546,7 @@ extern void lazy_mmu_prot_update (pte_t 
>  # define ptep_set_access_flags(__vma, __addr, __ptep, __entry, __safely_writable) \
>  ({										\
>  	int __changed = !pte_same(*(__ptep), __entry);				\
> -	if (__changed) {							\
> +	if (__changed)							\
>  		ptep_establish(__vma, __addr, __ptep, __entry)			\
>  	__changed;								\
>  })

Fails with

mm/memory.c: In function `do_wp_page':
mm/memory.c:1700: error: parse error before "__changed"
mm/memory.c: In function `handle_pte_fault':
mm/memory.c:2544: error: parse error before "__changed"

Am currently testing the following;

diff -rup -X /usr/src/patchset-0.6/bin//dontdiff linux-2.6.22-rc3-mm1-clean/include/asm-ia64/pgtable.h linux-2.6.22-rc3-mm1-ia64fix/include/asm-ia64/pgtable.h
--- linux-2.6.22-rc3-mm1-clean/include/asm-ia64/pgtable.h	2007-06-01 09:24:39.000000000 +0100
+++ linux-2.6.22-rc3-mm1-ia64fix/include/asm-ia64/pgtable.h	2007-06-01 19:44:48.000000000 +0100
@@ -546,8 +546,8 @@ extern void lazy_mmu_prot_update (pte_t 
 # define ptep_set_access_flags(__vma, __addr, __ptep, __entry, __safely_writable) \
 ({										\
 	int __changed = !pte_same(*(__ptep), __entry);				\
-	if (__changed) {							\
-		ptep_establish(__vma, __addr, __ptep, __entry)			\
+	if (__changed)							\
+		ptep_establish(__vma, __addr, __ptep, __entry);			\
 	__changed;								\
 })
 #endif

-- 
-- 
Mel Gorman
Part-time Phd Student                          Linux Technology Center
University of Limerick                         IBM Dublin Software Lab

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31 21:19   ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-06-01 20:50     ` Mariusz Kozlowski
  2007-06-01 21:02       ` 2.6.22-rc3-mm1 Andrew Morton
  0 siblings, 1 reply; 105+ messages in thread
From: Mariusz Kozlowski @ 2007-06-01 20:50 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linuxppc-dev, paulus, Arnd Bergmann, linux-kernel, Nick Piggin

> > 	This is from iMac G3. The spufs_mem_mmap_fault() code looks bad
> > in arch/powerpc/platforms/cell/spufs/file.c but somehow I'm unable to find
> > the patch to blame hmm.
> > 
> > arch/powerpc/platforms/cell/spufs/file.c: In function 'spufs_mem_mmap_fault':
> > arch/powerpc/platforms/cell/spufs/file.c:122: error: 'address' undeclared (first use in this function)
> > arch/powerpc/platforms/cell/spufs/file.c:122: error: (Each undeclared identifier is reported only once
> > arch/powerpc/platforms/cell/spufs/file.c:122: error: for each function it appears in.)
> > arch/powerpc/platforms/cell/spufs/file.c:141: error: expected ';' before 'if'
> > arch/powerpc/platforms/cell/spufs/file.c:122: warning: unused variable 'addr0'
> > make[3]: *** [arch/powerpc/platforms/cell/spufs/file.o] Blad 1
> > make[2]: *** [arch/powerpc/platforms/cell/spufs] Blad 2
> > make[1]: *** [arch/powerpc/platforms/cell] Blad 2
> > 
> 
> Yeah, that's the fix-fault-vs-invalidate-race patches, or my poor attempt
> to fix them when spufs changed.  I suppose I'll have a poke at it next time
> I get the powerpc machine fired up.

I #if 0'ed that piece of code inside spufs_mem_mmap_fault() and run make again.
This is 'make allmodconfig && make' result:

ERROR: ".ps3av_set_hdr" [drivers/ps3/ps3av_cmd.ko] undefined!
ERROR: ".ps3av_do_pkt" [drivers/ps3/ps3av_cmd.ko] undefined!
ERROR: ".ps3_vuart_write" [drivers/ps3/ps3av_cmd.ko] undefined!
ERROR: ".ps3_vuart_read" [drivers/ps3/ps3av_cmd.ko] undefined!
ERROR: ".ps3av_cmd_fin" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_av_video_disable_sig" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_set_video_mode" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_video_get_monitor_info" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_audio_active" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_set_audio_mode" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_set_av_audio_param" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_vuart_read" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_av_get_hw_conf" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_av_video_mute" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_av_tv_mute" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_audio_mode" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_av_hdmi_mode" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_set_av_video_cs" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_vuart_write" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_audio_mute" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_avb_param" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_init" [drivers/ps3/ps3av.ko] undefined!
ERROR: ".ps3av_cmd_av_audio_mute" [drivers/ps3/ps3av.ko] undefined!
ERROR: "pmu_batteries" [drivers/power/pmu_battery.ko] undefined!
ERROR: "pmu_battery_count" [drivers/power/pmu_battery.ko] undefined!
ERROR: "pmu_power_flags" [drivers/power/pmu_battery.ko] undefined!
ERROR: "irq_map" [drivers/net/pasemi_mac.ko] undefined!
ERROR: "pmu_batteries" [drivers/macintosh/apm_emu.ko] undefined!
ERROR: "pmu_battery_count" [drivers/macintosh/apm_emu.ko] undefined!
ERROR: "pmu_power_flags" [drivers/macintosh/apm_emu.ko] undefined!
ERROR: ".cpufreq_set_policy" [arch/powerpc/platforms/cell/cbe_cpufreq.ko] undefined!
make[1]: *** [__modpost] Blad 1
make: *** [modules] Blad 2

Regards,

	Mariusz

^ permalink raw reply	[flat|nested] 105+ messages in thread

* [PATCH] Fix problem with IA64 make allnoconfig
  2007-06-01 18:50     ` Mel Gorman
@ 2007-06-01 20:55       ` Mel Gorman
  0 siblings, 0 replies; 105+ messages in thread
From: Mel Gorman @ 2007-06-01 20:55 UTC (permalink / raw)
  To: Andrew Morton; +Cc: benh, linux-kernel

IA64 fails to build with allnoconfig due to an error in the !CONFIG_SMP
case. Ths following patch fixes it and should be considered a fix to
rework-ptep_set_access_flags-and-fix-sun4c.patch.

allmodconfig and defconfig tests are still running.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>
---
 pgtable.h |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff -rup -X /usr/src/patchset-0.6/bin//dontdiff linux-2.6.22-rc3-mm1-clean/include/asm-ia64/pgtable.h linux-2.6.22-rc3-mm1-ia64fix/include/asm-ia64/pgtable.h
--- linux-2.6.22-rc3-mm1-clean/include/asm-ia64/pgtable.h	2007-06-01 09:24:39.000000000 +0100
+++ linux-2.6.22-rc3-mm1-ia64fix/include/asm-ia64/pgtable.h	2007-06-01 19:44:48.000000000 +0100
@@ -546,8 +546,8 @@ extern void lazy_mmu_prot_update (pte_t 
 # define ptep_set_access_flags(__vma, __addr, __ptep, __entry, __safely_writable) \
 ({										\
 	int __changed = !pte_same(*(__ptep), __entry);				\
-	if (__changed) {							\
-		ptep_establish(__vma, __addr, __ptep, __entry)			\
+	if (__changed)							\
+		ptep_establish(__vma, __addr, __ptep, __entry);			\
 	__changed;								\
 })
 #endif

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01 20:50     ` 2.6.22-rc3-mm1 Mariusz Kozlowski
@ 2007-06-01 21:02       ` Andrew Morton
  2007-06-01 21:21         ` 2.6.22-rc3-mm1 Mariusz Kozlowski
                           ` (2 more replies)
  0 siblings, 3 replies; 105+ messages in thread
From: Andrew Morton @ 2007-06-01 21:02 UTC (permalink / raw)
  To: Mariusz Kozlowski
  Cc: linuxppc-dev, paulus, Arnd Bergmann, linux-kernel, Nick Piggin

On Fri, 1 Jun 2007 22:50:58 +0200
Mariusz Kozlowski <m.kozlowski@tuxland.pl> wrote:

> > > 	This is from iMac G3. The spufs_mem_mmap_fault() code looks bad
> > > in arch/powerpc/platforms/cell/spufs/file.c but somehow I'm unable to find
> > > the patch to blame hmm.
> > > 
> > > arch/powerpc/platforms/cell/spufs/file.c: In function 'spufs_mem_mmap_fault':
> > > arch/powerpc/platforms/cell/spufs/file.c:122: error: 'address' undeclared (first use in this function)
> > > arch/powerpc/platforms/cell/spufs/file.c:122: error: (Each undeclared identifier is reported only once
> > > arch/powerpc/platforms/cell/spufs/file.c:122: error: for each function it appears in.)
> > > arch/powerpc/platforms/cell/spufs/file.c:141: error: expected ';' before 'if'
> > > arch/powerpc/platforms/cell/spufs/file.c:122: warning: unused variable 'addr0'
> > > make[3]: *** [arch/powerpc/platforms/cell/spufs/file.o] Blad 1
> > > make[2]: *** [arch/powerpc/platforms/cell/spufs] Blad 2
> > > make[1]: *** [arch/powerpc/platforms/cell] Blad 2
> > > 
> > 
> > Yeah, that's the fix-fault-vs-invalidate-race patches, or my poor attempt
> > to fix them when spufs changed.  I suppose I'll have a poke at it next time
> > I get the powerpc machine fired up.
> 
> I #if 0'ed that piece of code inside spufs_mem_mmap_fault() and run make again.
> This is 'make allmodconfig && make' result:
> 
> ERROR: ".ps3av_set_hdr" [drivers/ps3/ps3av_cmd.ko] undefined!
> ERROR: ".ps3av_do_pkt" [drivers/ps3/ps3av_cmd.ko] undefined!
> ERROR: ".ps3_vuart_write" [drivers/ps3/ps3av_cmd.ko] undefined!
> ERROR: ".ps3_vuart_read" [drivers/ps3/ps3av_cmd.ko] undefined!
> ERROR: ".ps3av_cmd_fin" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_av_video_disable_sig" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_set_video_mode" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_video_get_monitor_info" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_audio_active" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_set_audio_mode" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_set_av_audio_param" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_vuart_read" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_av_get_hw_conf" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_av_video_mute" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_av_tv_mute" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_audio_mode" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_av_hdmi_mode" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_set_av_video_cs" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_vuart_write" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_audio_mute" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_avb_param" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_init" [drivers/ps3/ps3av.ko] undefined!
> ERROR: ".ps3av_cmd_av_audio_mute" [drivers/ps3/ps3av.ko] undefined!
> ERROR: "pmu_batteries" [drivers/power/pmu_battery.ko] undefined!
> ERROR: "pmu_battery_count" [drivers/power/pmu_battery.ko] undefined!
> ERROR: "pmu_power_flags" [drivers/power/pmu_battery.ko] undefined!
> ERROR: "irq_map" [drivers/net/pasemi_mac.ko] undefined!
> ERROR: "pmu_batteries" [drivers/macintosh/apm_emu.ko] undefined!
> ERROR: "pmu_battery_count" [drivers/macintosh/apm_emu.ko] undefined!
> ERROR: "pmu_power_flags" [drivers/macintosh/apm_emu.ko] undefined!
> ERROR: ".cpufreq_set_policy" [arch/powerpc/platforms/cell/cbe_cpufreq.ko] undefined!
> make[1]: *** [__modpost] Blad 1
> make: *** [modules] Blad 2
> 

Yeah, allmodconfig tends to fall over in a heap on a lot of the
less-lavishly-maintained architectures.  If any of these are specific to
-mm then I guess we should fix them up, prevent the kernel from actually
going backwards.




^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01 21:02       ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-06-01 21:21         ` Mariusz Kozlowski
  2007-06-01 23:30         ` 2.6.22-rc3-mm1 Benjamin Herrenschmidt
  2007-06-02  8:40         ` 2.6.22-rc3-mm1 Segher Boessenkool
  2 siblings, 0 replies; 105+ messages in thread
From: Mariusz Kozlowski @ 2007-06-01 21:21 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linuxppc-dev, paulus, Arnd Bergmann, linux-kernel, Nick Piggin

> > > > 	This is from iMac G3. The spufs_mem_mmap_fault() code looks bad
> > > > in arch/powerpc/platforms/cell/spufs/file.c but somehow I'm unable to find
> > > > the patch to blame hmm.
> > > > 
> > > > arch/powerpc/platforms/cell/spufs/file.c: In function 'spufs_mem_mmap_fault':
> > > > arch/powerpc/platforms/cell/spufs/file.c:122: error: 'address' undeclared (first use in this function)
> > > > arch/powerpc/platforms/cell/spufs/file.c:122: error: (Each undeclared identifier is reported only once
> > > > arch/powerpc/platforms/cell/spufs/file.c:122: error: for each function it appears in.)
> > > > arch/powerpc/platforms/cell/spufs/file.c:141: error: expected ';' before 'if'
> > > > arch/powerpc/platforms/cell/spufs/file.c:122: warning: unused variable 'addr0'
> > > > make[3]: *** [arch/powerpc/platforms/cell/spufs/file.o] Blad 1
> > > > make[2]: *** [arch/powerpc/platforms/cell/spufs] Blad 2
> > > > make[1]: *** [arch/powerpc/platforms/cell] Blad 2
> > > > 
> > > 
> > > Yeah, that's the fix-fault-vs-invalidate-race patches, or my poor attempt
> > > to fix them when spufs changed.  I suppose I'll have a poke at it next time
> > > I get the powerpc machine fired up.
> > 
> > I #if 0'ed that piece of code inside spufs_mem_mmap_fault() and run make again.
> > This is 'make allmodconfig && make' result:
> > 
> > ERROR: ".ps3av_set_hdr" [drivers/ps3/ps3av_cmd.ko] undefined!
> > ERROR: ".ps3av_do_pkt" [drivers/ps3/ps3av_cmd.ko] undefined!
> > ERROR: ".ps3_vuart_write" [drivers/ps3/ps3av_cmd.ko] undefined!
> > ERROR: ".ps3_vuart_read" [drivers/ps3/ps3av_cmd.ko] undefined!
> > ERROR: ".ps3av_cmd_fin" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_av_video_disable_sig" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_set_video_mode" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_video_get_monitor_info" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_audio_active" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_set_audio_mode" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_set_av_audio_param" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_vuart_read" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_av_get_hw_conf" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_av_video_mute" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_av_tv_mute" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_audio_mode" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_av_hdmi_mode" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_set_av_video_cs" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_vuart_write" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_audio_mute" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_avb_param" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_init" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: ".ps3av_cmd_av_audio_mute" [drivers/ps3/ps3av.ko] undefined!
> > ERROR: "pmu_batteries" [drivers/power/pmu_battery.ko] undefined!
> > ERROR: "pmu_battery_count" [drivers/power/pmu_battery.ko] undefined!
> > ERROR: "pmu_power_flags" [drivers/power/pmu_battery.ko] undefined!
> > ERROR: "irq_map" [drivers/net/pasemi_mac.ko] undefined!
> > ERROR: "pmu_batteries" [drivers/macintosh/apm_emu.ko] undefined!
> > ERROR: "pmu_battery_count" [drivers/macintosh/apm_emu.ko] undefined!
> > ERROR: "pmu_power_flags" [drivers/macintosh/apm_emu.ko] undefined!
> > ERROR: ".cpufreq_set_policy" [arch/powerpc/platforms/cell/cbe_cpufreq.ko] undefined!
> > make[1]: *** [__modpost] Blad 1
> > make: *** [modules] Blad 2
> > 
> 
> Yeah, allmodconfig tends to fall over in a heap on a lot of the
> less-lavishly-maintained architectures.  If any of these are specific to
> -mm then I guess we should fix them up, prevent the kernel from actually
> going backwards.

I recall compiling earlier versions of -mm on this iMac just fine a few months ago.
Now it looks like a bunch of new warnings appeared and if fails to compile for various
reasons in different places. I'm thinking of running -mm in next few days so maybe
something interesting will come up :-)

BTW. This is 'make allnoconfig && make' result:

  MODPOST vmlinux
ln: accessing `arch/powerpc/boot/zImage': No such file or directory
make[1]: *** [arch/powerpc/boot/zImage] Error 1
make: *** [zImage] Error 2

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01  5:20             ` Mark Fasheh
@ 2007-06-01 22:01               ` Mark Fasheh
  2007-06-01 22:25                 ` Andrew Morton
  0 siblings, 1 reply; 105+ messages in thread
From: Mark Fasheh @ 2007-06-01 22:01 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

On Thu, May 31, 2007 at 10:20:39PM -0700, Mark Fasheh wrote:
> Ok. So how about the attached patch? It's a bit different than discussed,
> but I think it's much cleaner because it preserves the current behavior of
> the callback and keeps that bit of page locking inside core code. Not tested
> as of yet, but I can run it tommorrow.

Ok - this patch seems to check out fine in testing - no more deadlocking.

Andrew, if this is ok with you I'd really like to see that fix in -mm. Ocfs2
shared write mmap will instantly deadlock without it.

>From reading Nick's description of the problem in
mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch I think we're
pretty safe (as I noted before) because Ocfs2 re-checks the mapping under
lock to protect against trucate races. That's been an "unwritten"
requirement of page_mkwrite() anyway.

Speaking of requirements, attached is my sad attempt at documenting the API.
I know it might be merged into ->fault at some point, but we really ought to
have _something_ in the meantime.
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com


From: Mark Fasheh <mark.fasheh@oracle.com>

[PATCH] Document ->page_mkwrite() locking

There seems to be very little documentation about this callback in general.
The locking in particular is a bit tricky, so it's worth having this in
writing.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>

---

 Documentation/filesystems/Locking |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

2320eadfa34199c779638edbdbb6c491df09c49b
diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking
index 970c8ec..91ec4b4 100644
--- a/Documentation/filesystems/Locking
+++ b/Documentation/filesystems/Locking
@@ -512,13 +512,22 @@ prototypes:
 	void (*close)(struct vm_area_struct*);
 	struct page *(*fault)(struct vm_area_struct*, struct fault_data *);
 	struct page *(*nopage)(struct vm_area_struct*, unsigned long, int *);
+	int (*page_mkwrite)(struct vm_area_struct *, struct page *);
 
 locking rules:
-		BKL	mmap_sem
+		BKL	mmap_sem	PageLocked(page)
 open:		no	yes
 close:		no	yes
 fault:		no	yes
 nopage:		no	yes
+page_mkwrite:	no	yes		no
+
+	->page_mkwrite() is called when a previously read-only page is
+about to become writeable. The file system is responsible for
+protecting against truncate races. Once appropriate action has been
+taking to lock out truncate, the page range should be verified to be
+within i_size. The page mapping should also be checked that it is not
+NULL.
 
 ================================================================================
 			Dubious stuff
-- 
1.3.3


^ permalink raw reply related	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01 22:01               ` Mark Fasheh
@ 2007-06-01 22:25                 ` Andrew Morton
  2007-06-01 22:33                   ` Mark Fasheh
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-01 22:25 UTC (permalink / raw)
  To: Mark Fasheh; +Cc: Nick Piggin, linux-kernel

On Fri, 1 Jun 2007 15:01:18 -0700
Mark Fasheh <mark.fasheh@oracle.com> wrote:

> On Thu, May 31, 2007 at 10:20:39PM -0700, Mark Fasheh wrote:
> > Ok. So how about the attached patch? It's a bit different than discussed,
> > but I think it's much cleaner because it preserves the current behavior of
> > the callback and keeps that bit of page locking inside core code. Not tested
> > as of yet, but I can run it tommorrow.
> 
> Ok - this patch seems to check out fine in testing - no more deadlocking.
> 
> Andrew, if this is ok with you I'd really like to see that fix in -mm. Ocfs2
> shared write mmap will instantly deadlock without it.

ug, OK.  I get a ginormous reject when merging ocfs2 on Nick's stuff which
I've been largely ignoring thus far.

Perhaps I need to go back to staging Nick's stuff after the git trees.  I'll
take a look.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01 22:25                 ` Andrew Morton
@ 2007-06-01 22:33                   ` Mark Fasheh
  2007-06-01 22:47                     ` Andrew Morton
  0 siblings, 1 reply; 105+ messages in thread
From: Mark Fasheh @ 2007-06-01 22:33 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Nick Piggin, linux-kernel

On Fri, Jun 01, 2007 at 03:25:37PM -0700, Andrew Morton wrote:
> > Andrew, if this is ok with you I'd really like to see that fix in -mm. Ocfs2
> > shared write mmap will instantly deadlock without it.
> 
> ug, OK.  I get a ginormous reject when merging ocfs2 on Nick's stuff which
> I've been largely ignoring thus far.

Huh, I'm a bit confused... I created this patch on top of 2.6.22-rc3-mm1
which most certainly contains a merge of git-ocfs2.patch and the series
which at least contains
mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch.

So, which of Nick's patches are we talking about here?

Btw, I know you tend to handle rejects yourself, but if it's a major PITA
I'd be happy to help out. Boy, I'm hoping I didn't just ask for a load of
trouble there :)
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01 22:33                   ` Mark Fasheh
@ 2007-06-01 22:47                     ` Andrew Morton
  2007-06-01 22:53                       ` Mark Fasheh
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-01 22:47 UTC (permalink / raw)
  To: Mark Fasheh; +Cc: Nick Piggin, linux-kernel

On Fri, 1 Jun 2007 15:33:02 -0700
Mark Fasheh <mark.fasheh@oracle.com> wrote:

> On Fri, Jun 01, 2007 at 03:25:37PM -0700, Andrew Morton wrote:
> > > Andrew, if this is ok with you I'd really like to see that fix in -mm. Ocfs2
> > > shared write mmap will instantly deadlock without it.
> > 
> > ug, OK.  I get a ginormous reject when merging ocfs2 on Nick's stuff which
> > I've been largely ignoring thus far.
> 
> Huh, I'm a bit confused... I created this patch on top of 2.6.22-rc3-mm1
> which most certainly contains a merge of git-ocfs2.patch and the series
> which at least contains
> mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch.

Right.  I did a lot of tricksy work for rc3-mm1 to merge git-ocfs2 on top
of Nick's stuff.  Then I repulled your tree and lost it all.  This is
because I was dumb and I fixed rc3-mm1's git-ocfs.patch rather than doing a
separate fix-rejects-in-git-ocfs2.patch.

This is all unique-to-akpm stuff which you don't need to worry about ;)

> So, which of Nick's patches are we talking about here?
> 
> Btw, I know you tend to handle rejects yourself, but if it's a major PITA
> I'd be happy to help out. Boy, I'm hoping I didn't just ask for a load of
> trouble there :)

Is OK - I'll move Nick's patches back to behind the git trees and it'll all come
good.


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - page_mkwrite() breakage
  2007-06-01 22:47                     ` Andrew Morton
@ 2007-06-01 22:53                       ` Mark Fasheh
  0 siblings, 0 replies; 105+ messages in thread
From: Mark Fasheh @ 2007-06-01 22:53 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Nick Piggin, linux-kernel

On Fri, Jun 01, 2007 at 03:47:35PM -0700, Andrew Morton wrote:
> Right.  I did a lot of tricksy work for rc3-mm1 to merge git-ocfs2 on top
> of Nick's stuff.  Then I repulled your tree and lost it all.  This is
> because I was dumb and I fixed rc3-mm1's git-ocfs.patch rather than doing a
> separate fix-rejects-in-git-ocfs2.patch.
> 
> This is all unique-to-akpm stuff which you don't need to worry about ;)

Ok, I am no longer concerned! :)


> > So, which of Nick's patches are we talking about here?
> > 
> > Btw, I know you tend to handle rejects yourself, but if it's a major PITA
> > I'd be happy to help out. Boy, I'm hoping I didn't just ask for a load of
> > trouble there :)
> 
> Is OK - I'll move Nick's patches back to behind the git trees and it'll all come
> good.

Phew ok. Once again, thanks for all the work you do getting the ocfs2 git
patches into -mm.
	--Mark

--
Mark Fasheh
Senior Software Developer, Oracle
mark.fasheh@oracle.com

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01 21:02       ` 2.6.22-rc3-mm1 Andrew Morton
  2007-06-01 21:21         ` 2.6.22-rc3-mm1 Mariusz Kozlowski
@ 2007-06-01 23:30         ` Benjamin Herrenschmidt
  2007-06-02  8:40         ` 2.6.22-rc3-mm1 Segher Boessenkool
  2 siblings, 0 replies; 105+ messages in thread
From: Benjamin Herrenschmidt @ 2007-06-01 23:30 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Mariusz Kozlowski, linuxppc-dev, paulus, Arnd Bergmann,
	Nick Piggin, linux-kernel

On Fri, 2007-06-01 at 14:02 -0700, Andrew Morton wrote:
> 
> 
> Yeah, allmodconfig tends to fall over in a heap on a lot of the
> less-lavishly-maintained architectures.  If any of these are specific
> to
> -mm then I guess we should fix them up, prevent the kernel from
> actually
> going backwards.

Some of the later seems to be related to the lack of CONFIG_PM .. it's
not much a lavish maintainership issue than the fact that nobody every
builds the powermac drivers without CONFIG_PM :-) I'll look into fixing
some of these.

As for the ps3 bits, it's a known problem, the ps3 support is still very
much a work in progress.

Cheers,
Ben.



^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-01 21:02       ` 2.6.22-rc3-mm1 Andrew Morton
  2007-06-01 21:21         ` 2.6.22-rc3-mm1 Mariusz Kozlowski
  2007-06-01 23:30         ` 2.6.22-rc3-mm1 Benjamin Herrenschmidt
@ 2007-06-02  8:40         ` Segher Boessenkool
  2 siblings, 0 replies; 105+ messages in thread
From: Segher Boessenkool @ 2007-06-02  8:40 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Nick Piggin, linux-kernel, paulus, linuxppc-dev,
	Mariusz Kozlowski, Arnd Bergmann

> Yeah, allmodconfig tends to fall over in a heap on a lot of the
> less-lavishly-maintained architectures.

To be fair, almost all of the powerpc allmodconfig build
problems are caused by x86-only drivers (and most of those
I doubt still work on x86, even).


Segher


^ permalink raw reply	[flat|nested] 105+ messages in thread

* 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (8 preceding siblings ...)
  2007-06-01 16:42 ` 2.6.22-rc3-mm1: IA64 make allnoconfig broken Mel Gorman
@ 2007-06-02 13:57 ` Adrian Bunk
  2007-06-28 23:36   ` Adrian Bunk
  2007-06-02 17:06 ` [-mm patch] fix XEN_BLKDEV_FRONTEND Makefile entry Adrian Bunk
                   ` (15 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-02 13:57 UTC (permalink / raw)
  To: Andrew Morton, Jeremy Fitzhardinge
  Cc: linux-kernel, Ian Pratt, Christian Limpach, Chris Wright, Andi Kleen

I'm getting the following compile error in 2.6.22-rc3-mm1 with 
CONFIG_X86_CMPXCHG=n (with -Werror-implicit-function-declaration - 
otherwise it would be a link error):

<--  snip  -->

...
  CC      drivers/xen/grant-table.o
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc3-mm1/drivers/xen/grant-table.c: In function ‘gnttab_end_foreign_access_ref’:
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc3-mm1/drivers/xen/grant-table.c:203: error: implicit declaration of function ‘sync_cmpxchg’
make[3]: *** [drivers/xen/grant-table.o] Error 1

<--  snip  -->

Adding a dependency of XEN on X86_CMPXCHG should not be a problem and 
not prevent any reasonable real-life usage.

But what worries me is that a seemingly architecture independent 
driver uses a function only available in some configurations.

cu
Adrian

-- 

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


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] fix XEN_BLKDEV_FRONTEND Makefile entry
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (9 preceding siblings ...)
  2007-06-02 13:57 ` 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n Adrian Bunk
@ 2007-06-02 17:06 ` Adrian Bunk
  2007-06-02 17:14 ` 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful Adrian Bunk
                   ` (14 subsequent siblings)
  25 siblings, 0 replies; 105+ messages in thread
From: Adrian Bunk @ 2007-06-02 17:06 UTC (permalink / raw)
  To: Andrew Morton, jeremy, chrisw; +Cc: linux-kernel, xen-devel

CONFIG_XEN_BLKDEV_FRONTEND shouldn't silently prevent the compilation of 
most other block drivers.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---
--- linux-2.6.22-rc3-mm1/drivers/block/Makefile.old	2007-06-02 18:21:12.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/block/Makefile	2007-06-02 18:21:53.000000000 +0200
@@ -28,7 +28,7 @@
 obj-$(CONFIG_VIODASD)		+= viodasd.o
 obj-$(CONFIG_BLK_DEV_SX8)	+= sx8.o
 obj-$(CONFIG_BLK_DEV_UB)	+= ub.o
-obj-$(CONFIG_XEN_BLKDEV_FRONTEND) := xen-blkfront.o
+obj-$(CONFIG_XEN_BLKDEV_FRONTEND) += xen-blkfront.o
 obj-$(CONFIG_XILINX_SYSACE)	+= xsysace.o
 obj-$(CONFIG_LGUEST_GUEST)	+= lguest_blk.o
 


^ permalink raw reply	[flat|nested] 105+ messages in thread

* 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (10 preceding siblings ...)
  2007-06-02 17:06 ` [-mm patch] fix XEN_BLKDEV_FRONTEND Makefile entry Adrian Bunk
@ 2007-06-02 17:14 ` Adrian Bunk
  2007-06-04 21:22   ` Andrew Morton
  2007-06-02 19:09 ` [-mm patch] the ASYNC_* options shouldn't be user visible Adrian Bunk
                   ` (13 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-02 17:14 UTC (permalink / raw)
  To: Andrew Morton, Martin Peschke; +Cc: linux-kernel

statistics-infrastructure-make-printk_clock-a-generic-kernel-wide-nsec-resolution.patch 
shows why __attribute__((weak)) is harmful because you don't see if a 
required non-weak implemtation is missing:

In this case, the weak printk_clock() was renamed to timestamp_clock(), 
but the ARM and i386 implementations weren't renamed...

cu
Adrian

-- 

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


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] the ASYNC_* options shouldn't be user visible
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (11 preceding siblings ...)
  2007-06-02 17:14 ` 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful Adrian Bunk
@ 2007-06-02 19:09 ` Adrian Bunk
  2007-06-04 16:19   ` Williams, Dan J
  2007-06-03 20:54 ` [-mm patch] make drivers/firmware/dmi-id.c:dmi_id_init() static Adrian Bunk
                   ` (12 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-02 19:09 UTC (permalink / raw)
  To: Andrew Morton, Dan Williams; +Cc: linux-kernel

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc2-mm1:
>...
>  git-md-accel.patch
>...
>  git trees
>...


The ASYNC_* options are for internal helper code and should therefore 
not be user visible.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

BTW: Please move the async_tx directory under drivers/ or lib/

 async_tx/Kconfig |   28 ++++++++--------------------
 1 file changed, 8 insertions(+), 20 deletions(-)

--- linux-2.6.22-rc3-mm1/async_tx/Kconfig.old	2007-06-02 19:30:32.000000000 +0200
+++ linux-2.6.22-rc3-mm1/async_tx/Kconfig	2007-06-02 19:31:20.000000000 +0200
@@ -1,27 +1,15 @@
-menuconfig ASYNC_CORE
-	tristate "Asynchronous Bulk Memory Transfers/Transforms"
-	default n
-	---help---
-	  This enables the async_tx interface layer for dma (offload) engines.
-	  Subsystems coded to this api will use offload engines for bulk memory
-	  operations (e.g. memcpy, memset, xor...).  When an offload engine is not
-	  available the interface will implicitly fall back to a software
-	  implementation of the operation.
-
-	  If unsure, say N
-
-if ASYNC_CORE
+config ASYNC_CORE
+	tristate
 
 config ASYNC_MEMCPY
-	default m
-	tristate "async_memcpy support"
+	tristate
+	select ASYNC_CORE
 
 config ASYNC_XOR
-	default m
-	tristate "async_xor support"
+	tristate
+	select ASYNC_CORE
 
 config ASYNC_MEMSET
-	default m
-	tristate "async_memset support"
+	tristate
+	select ASYNC_CORE
 
-endif


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] make drivers/firmware/dmi-id.c:dmi_id_init() static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (12 preceding siblings ...)
  2007-06-02 19:09 ` [-mm patch] the ASYNC_* options shouldn't be user visible Adrian Bunk
@ 2007-06-03 20:54 ` Adrian Bunk
  2007-06-08  4:38   ` Greg KH
  2007-06-03 20:54 ` [-mm patch] drivers/i2c/chips/ds1682.c: make code static Adrian Bunk
                   ` (11 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-03 20:54 UTC (permalink / raw)
  To: Andrew Morton, Lennart Poettering; +Cc: linux-kernel, Greg KH

This patch makes the needlessly global dmi_id_init() static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---
--- linux-2.6.22-rc3-mm1/drivers/firmware/dmi-id.c.old	2007-06-03 22:17:10.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/firmware/dmi-id.c	2007-06-03 22:17:24.000000000 +0200
@@ -161,7 +161,7 @@
 
 extern int dmi_available;
 
-int __init dmi_id_init(void)
+static int __init dmi_id_init(void)
 {
 	int ret, i;
 


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] drivers/i2c/chips/ds1682.c: make code static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (13 preceding siblings ...)
  2007-06-03 20:54 ` [-mm patch] make drivers/firmware/dmi-id.c:dmi_id_init() static Adrian Bunk
@ 2007-06-03 20:54 ` Adrian Bunk
  2007-06-04  8:15   ` Jean Delvare
  2007-06-03 20:54 ` [-mm patch] make xpad_play_effect() static Adrian Bunk
                   ` (10 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-03 20:54 UTC (permalink / raw)
  To: Andrew Morton, khali, Grant Likely; +Cc: linux-kernel, i2c

This patch makes some needlessly global code static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

 drivers/i2c/chips/ds1682.c |   12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

--- linux-2.6.22-rc3-mm1/drivers/i2c/chips/ds1682.c.old	2007-06-03 22:18:53.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/i2c/chips/ds1682.c	2007-06-03 22:21:07.000000000 +0200
@@ -121,12 +121,12 @@
 /*
  * Simple register attributes
  */
-SENSOR_DEVICE_ATTR_2(elapsed_time, S_IRUGO | S_IWUSR, ds1682_show, ds1682_store,
-		     4, DS1682_REG_ELAPSED);
-SENSOR_DEVICE_ATTR_2(alarm_time, S_IRUGO | S_IWUSR, ds1682_show, ds1682_store,
-		     4, DS1682_REG_ALARM);
-SENSOR_DEVICE_ATTR_2(event_count, S_IRUGO | S_IWUSR, ds1682_show, ds1682_store,
-		     2, DS1682_REG_EVT_CNTR);
+static SENSOR_DEVICE_ATTR_2(elapsed_time, S_IRUGO | S_IWUSR, ds1682_show,
+			    ds1682_store, 4, DS1682_REG_ELAPSED);
+static SENSOR_DEVICE_ATTR_2(alarm_time, S_IRUGO | S_IWUSR, ds1682_show,
+			    ds1682_store, 4, DS1682_REG_ALARM);
+static SENSOR_DEVICE_ATTR_2(event_count, S_IRUGO | S_IWUSR, ds1682_show,
+			    ds1682_store, 2, DS1682_REG_EVT_CNTR);
 
 static const struct attribute_group ds1682_group = {
 	.attrs = (struct attribute *[]) {


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] make xpad_play_effect() static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (14 preceding siblings ...)
  2007-06-03 20:54 ` [-mm patch] drivers/i2c/chips/ds1682.c: make code static Adrian Bunk
@ 2007-06-03 20:54 ` Adrian Bunk
  2007-06-03 20:54 ` [-mm patch] fix the tea5761 tuner support Adrian Bunk
                   ` (9 subsequent siblings)
  25 siblings, 0 replies; 105+ messages in thread
From: Adrian Bunk @ 2007-06-03 20:54 UTC (permalink / raw)
  To: Andrew Morton, Jan Kratochvil, dmitry.torokhov
  Cc: linux-kernel, linux-joystick

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc2-mm1:
>...
>  git-input.patch
>...
>  git trees
>...

This patch makes the needlessly global xpad_play_effect() static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---
--- linux-2.6.22-rc3-mm1/drivers/input/joystick/xpad.c.old	2007-06-03 22:24:23.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/input/joystick/xpad.c	2007-06-03 22:24:39.000000000 +0200
@@ -376,7 +376,8 @@
 		   __FUNCTION__, retval);
 }
 
-int xpad_play_effect(struct input_dev *dev, void *data, struct ff_effect *effect)
+static int xpad_play_effect(struct input_dev *dev, void *data,
+			    struct ff_effect *effect)
 {
 	struct usb_xpad *xpad = input_get_drvdata(dev);
 


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] fix the tea5761 tuner support
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (15 preceding siblings ...)
  2007-06-03 20:54 ` [-mm patch] make xpad_play_effect() static Adrian Bunk
@ 2007-06-03 20:54 ` Adrian Bunk
  2007-06-04 18:00 ` 2.6.22-rc3-mm1 - pppd hanging in netdev_run_todo while holding mutex Valdis.Kletnieks
                   ` (8 subsequent siblings)
  25 siblings, 0 replies; 105+ messages in thread
From: Adrian Bunk @ 2007-06-03 20:54 UTC (permalink / raw)
  To: Andrew Morton, Mauro Carvalho Chehab; +Cc: linux-kernel, v4l-dvb-maintainer

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc2-mm1:
>...
>  git-dvb.patch
>...
>  git trees
>...

Due to a typo the tea5761 tuner support was dead code.

This patch also fixes a bug in the no longer dead code:
A void function can't return anything.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

 drivers/media/video/tuner-core.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- linux-2.6.22-rc3-mm1/drivers/media/video/tuner-core.c.old	2007-06-03 22:29:37.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/media/video/tuner-core.c	2007-06-03 22:35:54.000000000 +0200
@@ -25,7 +25,7 @@
 
 /* standard i2c insmod options */
 static unsigned short normal_i2c[] = {
-#ifdef CONFIG_TUNER_5761
+#ifdef CONFIG_TUNER_TEA5761
 	0x10,
 #endif
 	0x42, 0x43, 0x4a, 0x4b,			/* tda8290 */
@@ -192,12 +192,12 @@ static void set_type(struct i2c_client *
 		}
 		t->mode_mask = T_RADIO;
 		break;
-#ifdef CONFIG_TUNER_5761
+#ifdef CONFIG_TUNER_TEA5761
 	case TUNER_TEA5761:
 		if (tea5761_tuner_init(c) == EINVAL) {
 			t->type = TUNER_ABSENT;
 			t->mode_mask = T_UNINITIALIZED;
-			return -ENODEV;
+			return;
 		}
 		t->mode_mask = T_RADIO;
 		break;
@@ -473,7 +473,7 @@ static int tuner_attach(struct i2c_adapt
 	/* autodetection code based on the i2c addr */
 	if (!no_autodetect) {
 		switch (addr) {
-#ifdef CONFIG_TUNER_5761
+#ifdef CONFIG_TUNER_TEA5761
 		case 0x10:
 			if (tea5761_autodetection(&t->i2c) != EINVAL) {
 				t->type = TUNER_TEA5761;

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] drivers/i2c/chips/ds1682.c: make code static
  2007-06-03 20:54 ` [-mm patch] drivers/i2c/chips/ds1682.c: make code static Adrian Bunk
@ 2007-06-04  8:15   ` Jean Delvare
  0 siblings, 0 replies; 105+ messages in thread
From: Jean Delvare @ 2007-06-04  8:15 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Grant Likely, linux-kernel, i2c

Hi Adrian,

On Sun, 3 Jun 2007 22:54:17 +0200, Adrian Bunk wrote:
> This patch makes some needlessly global code static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 
> ---
> 
>  drivers/i2c/chips/ds1682.c |   12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> --- linux-2.6.22-rc3-mm1/drivers/i2c/chips/ds1682.c.old	2007-06-03 22:18:53.000000000 +0200
> +++ linux-2.6.22-rc3-mm1/drivers/i2c/chips/ds1682.c	2007-06-03 22:21:07.000000000 +0200
> @@ -121,12 +121,12 @@
>  /*
>   * Simple register attributes
>   */
> -SENSOR_DEVICE_ATTR_2(elapsed_time, S_IRUGO | S_IWUSR, ds1682_show, ds1682_store,
> -		     4, DS1682_REG_ELAPSED);
> -SENSOR_DEVICE_ATTR_2(alarm_time, S_IRUGO | S_IWUSR, ds1682_show, ds1682_store,
> -		     4, DS1682_REG_ALARM);
> -SENSOR_DEVICE_ATTR_2(event_count, S_IRUGO | S_IWUSR, ds1682_show, ds1682_store,
> -		     2, DS1682_REG_EVT_CNTR);
> +static SENSOR_DEVICE_ATTR_2(elapsed_time, S_IRUGO | S_IWUSR, ds1682_show,
> +			    ds1682_store, 4, DS1682_REG_ELAPSED);
> +static SENSOR_DEVICE_ATTR_2(alarm_time, S_IRUGO | S_IWUSR, ds1682_show,
> +			    ds1682_store, 4, DS1682_REG_ALARM);
> +static SENSOR_DEVICE_ATTR_2(event_count, S_IRUGO | S_IWUSR, ds1682_show,
> +			    ds1682_store, 2, DS1682_REG_EVT_CNTR);
>  
>  static const struct attribute_group ds1682_group = {
>  	.attrs = (struct attribute *[]) {

Good catch. I've folded this fix into i2c-ds1628-new-driver.patch,
thanks for reporting.

-- 
Jean Delvare

^ permalink raw reply	[flat|nested] 105+ messages in thread

* RE: [-mm patch] the ASYNC_* options shouldn't be user visible
  2007-06-02 19:09 ` [-mm patch] the ASYNC_* options shouldn't be user visible Adrian Bunk
@ 2007-06-04 16:19   ` Williams, Dan J
  0 siblings, 0 replies; 105+ messages in thread
From: Williams, Dan J @ 2007-06-04 16:19 UTC (permalink / raw)
  To: Adrian Bunk, Andrew Morton; +Cc: linux-kernel, Herbert Xu

> From: Adrian Bunk [mailto:bunk@stusta.de]
> >...
> > Changes since 2.6.22-rc2-mm1:
> >...
> >  git-md-accel.patch
> >...
> >  git trees
> >...
> 
> 
> The ASYNC_* options are for internal helper code and should therefore
> not be user visible.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 
> ---
> 
> BTW: Please move the async_tx directory under drivers/ or lib/
> 
Yes, I was feeling somewhat exposed with the options in the top level
config, but at least it got a few more eyes on the code.  I will fold in
your patch and move async_tx under lib/ for now, but at some point I
would like to investigate the potential synergies with crypto/.

Thanks,
Dan

^ permalink raw reply	[flat|nested] 105+ messages in thread

* 2.6.22-rc3-mm1 - pppd hanging in netdev_run_todo while holding mutex
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (16 preceding siblings ...)
  2007-06-03 20:54 ` [-mm patch] fix the tea5761 tuner support Adrian Bunk
@ 2007-06-04 18:00 ` Valdis.Kletnieks
  2007-06-06  6:14   ` Andrew Morton
  2007-06-04 22:12 ` [-mm patch] e1000: #if 0 two functions Adrian Bunk
                   ` (7 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Valdis.Kletnieks @ 2007-06-04 18:00 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, netdev

[-- Attachment #1: Type: text/plain, Size: 4943 bytes --]

On Wed, 30 May 2007 23:58:23 PDT, Andrew Morton said:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/

Under 22-rc2-mm1, if my VPN connection got reset, ppp0 just quietly went away.

Under 22-rc3-mm1, it seems to end up wedged and waiting for references to
go away:

Jun  4 09:23:01 turing-police kernel: [90089.270707] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8
Jun  4 09:23:11 turing-police kernel: [90099.396121] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8
Jun  4 09:23:21 turing-police kernel: [90109.520574] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8
Jun  4 09:23:32 turing-police kernel: [90119.653129] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8

'echo t > /proc/sysrq_trigger' shows pppd hung up here:

Jun  4 10:52:57 turing-police kernel: [95478.047892] pppd          D 0000000105ad3830  4968  3815      1 (NOTLB)
Jun  4 10:52:57 turing-police kernel: [95478.047902]  ffff810008d5fd78 0000000000000086 0000000000000000 ffff810003490000
Jun  4 10:52:57 turing-police kernel: [95478.047911]  ffff810008d5fd28 ffff810008d4a040 ffff810003461820 ffff810008d4a2b0
Jun  4 10:52:57 turing-police kernel: [95478.047920]  0000000105ad3733 0000000000000202 00000000000000ff ffffffff80239795
Jun  4 10:52:57 turing-police kernel: [95478.047928] Call Trace:
Jun  4 10:52:57 turing-police kernel: [95478.047936]  [<ffffffff805207a2>] schedule_timeout+0x8d/0xb4
Jun  4 10:52:57 turing-police kernel: [95478.047945]  [<ffffffff805207e2>] schedule_timeout_uninterruptible+0x19/0x1b
Jun  4 10:52:57 turing-police kernel: [95478.047954]  [<ffffffff802397bb>] msleep+0x14/0x1e
Jun  4 10:52:57 turing-police kernel: [95478.047963]  [<ffffffff8048aa4e>] netdev_run_todo+0x12f/0x234 
Jun  4 10:52:57 turing-police kernel: [95478.047972]  [<ffffffff8049166f>] rtnl_unlock+0x35/0x37
Jun  4 10:52:57 turing-police kernel: [95478.047981]  [<ffffffff804894a9>] unregister_netdev+0x1e/0x23
Jun  4 10:52:57 turing-police kernel: [95478.047994]  [<ffffffff88a5f2c2>] :ppp_generic:ppp_shutdown_interface+0x67/0xbb
Jun  4 10:52:57 turing-police kernel: [95478.048018]  [<ffffffff88a5f5b8>] :ppp_generic:ppp_release+0x33/0x65
Jun  4 10:52:57 turing-police kernel: [95478.048028]  [<ffffffff8028d54a>] __fput+0xac/0x176
Jun  4 10:52:57 turing-police kernel: [95478.048036]  [<ffffffff8028d628>] fput+0x14/0x16
Jun  4 10:52:57 turing-police kernel: [95478.048045]  [<ffffffff8028a9c6>] filp_close+0x66/0x71
Jun  4 10:52:57 turing-police kernel: [95478.048054]  [<ffffffff8028bd54>] sys_close+0x98/0xd7
Jun  4 10:52:57 turing-police kernel: [95478.048062]  [<ffffffff8020a03c>] tracesys+0xdc/0xe1
Jun  4 10:52:57 turing-police kernel: [95478.048073]  [<00002b45cd2429a0>]

Which in itself wouldn't be so bad, except that it's holding a mutex and
lots of other stuff gets wedged up waiting for it (here's 1 of 6 processes
that was wedged this morning):

Jun  4 10:52:58 turing-police kernel: [95478.051129] ifconfig      D ffff810005e19820  5800  9787  20510 (NOTLB)
Jun  4 10:52:58 turing-police kernel: [95478.051141]  ffff81000868fd08 0000000000000082 ffff81000868fec8 0000000000000246
Jun  4 10:52:58 turing-police kernel: [95478.051150]  0000000100000101 ffff810005e19820 ffff810003fe0820 ffff810005e19a90
Jun  4 10:52:58 turing-police kernel: [95478.051159]  000000000a3f26c0 0000000000000006 ffff81000868ff28 ffffffff8028aacc
Jun  4 10:52:58 turing-police kernel: [95478.051167] Call Trace:
Jun  4 10:52:58 turing-police kernel: [95478.051176]  [<ffffffff80520bc4>] __mutex_lock_slowpath+0x74/0xb6
Jun  4 10:52:58 turing-police kernel: [95478.051185]  [<ffffffff805209f3>] mutex_lock+0xe/0x10
Jun  4 10:52:58 turing-police kernel: [95478.051193]  [<ffffffff8048a938>] netdev_run_todo+0x19/0x234
Jun  4 10:52:58 turing-police kernel: [95478.051202]  [<ffffffff8049166f>] rtnl_unlock+0x35/0x37
Jun  4 10:52:58 turing-police kernel: [95478.051210]  [<ffffffff8048a3f2>] dev_ioctl+0x3e3/0x483
Jun  4 10:52:58 turing-police kernel: [95478.051218]  [<ffffffff8047df30>] sock_ioctl+0x1ef/0x1fc
Jun  4 10:52:58 turing-police kernel: [95478.051227]  [<ffffffff802989be>] do_ioctl+0x2a/0x77
Jun  4 10:52:58 turing-police kernel: [95478.051235]  [<ffffffff80298c52>] vfs_ioctl+0x247/0x264
Jun  4 10:52:58 turing-police kernel: [95478.051243]  [<ffffffff80298cce>] sys_ioctl+0x5f/0x85
Jun  4 10:52:58 turing-police kernel: [95478.051252]  [<ffffffff8020a03c>] tracesys+0xdc/0xe1

(And of course, you can't shutdown cleanly, because /etc/init.d/network tries
to down other interfaces on the way out, and....)

I'd bisect this, except I don't have a better way to replicate it than "wait for
our VPN box to reset the connection after 24 hours of connect" - basically means
I get 2 tries per weekend..)

An hour or so of digging through the -rc3-mm1 broken-out/ didn't find any
obvious-to-me culprits.  Any ideas/suggestions?

[-- Attachment #2: Type: application/pgp-signature, Size: 226 bytes --]

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful
  2007-06-02 17:14 ` 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful Adrian Bunk
@ 2007-06-04 21:22   ` Andrew Morton
  2007-06-04 23:52     ` Martin Peschke
  0 siblings, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-04 21:22 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Martin Peschke, linux-kernel

On Sat, 2 Jun 2007 19:14:25 +0200
Adrian Bunk <bunk@stusta.de> wrote:

> statistics-infrastructure-make-printk_clock-a-generic-kernel-wide-nsec-resolution.patch 
> shows why __attribute__((weak)) is harmful because you don't see if a 
> required non-weak implemtation is missing:
> 
> In this case, the weak printk_clock() was renamed to timestamp_clock(), 
> but the ARM and i386 implementations weren't renamed...
> 

printk_clock() is sched_clock() in disguise, and I'm not sure that making
sched_clock() more widely available in this fashion is something that we
want to do anyway.

Anyway, the statistics patches have just celebrated their first birthday
and I don't see that they're getting sufficient momentum or interest to
ever get into mainline so I think I'll drop them, sorry.


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] e1000: #if 0 two functions
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (17 preceding siblings ...)
  2007-06-04 18:00 ` 2.6.22-rc3-mm1 - pppd hanging in netdev_run_todo while holding mutex Valdis.Kletnieks
@ 2007-06-04 22:12 ` Adrian Bunk
  2007-06-04 22:13 ` [-mm patch] drivers/mmc/core/core.{h,c}: cleanups Adrian Bunk
                   ` (6 subsequent siblings)
  25 siblings, 0 replies; 105+ messages in thread
From: Adrian Bunk @ 2007-06-04 22:12 UTC (permalink / raw)
  To: Andrew Morton, Peter Oruba, Stephen Hemminger, cramerj,
	john.ronciak, jesse.brandeburg, jeffrey.t.kirsher,
	auke-jan.h.kok, jgarzik
  Cc: linux-kernel, e1000-devel, netdev

e1000_{read,write}_pci_cfg() are no longer used.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

 drivers/net/e1000/e1000_hw.h   |    2 --
 drivers/net/e1000/e1000_main.c |    4 ++++
 2 files changed, 4 insertions(+), 2 deletions(-)

--- linux-2.6.22-rc3-mm1/drivers/net/e1000/e1000_hw.h.old	2007-06-04 22:03:05.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/net/e1000/e1000_hw.h	2007-06-04 22:03:14.000000000 +0200
@@ -421,8 +421,6 @@ void e1000_tbi_adjust_stats(struct e1000
 void e1000_get_bus_info(struct e1000_hw *hw);
 void e1000_pci_set_mwi(struct e1000_hw *hw);
 void e1000_pci_clear_mwi(struct e1000_hw *hw);
-void e1000_read_pci_cfg(struct e1000_hw *hw, uint32_t reg, uint16_t * value);
-void e1000_write_pci_cfg(struct e1000_hw *hw, uint32_t reg, uint16_t * value);
 int32_t e1000_read_pcie_cap_reg(struct e1000_hw *hw, uint32_t reg, uint16_t *value);
 void e1000_pcix_set_mmrbc(struct e1000_hw *hw, int mmrbc);
 int e1000_pcix_get_mmrbc(struct e1000_hw *hw);
--- linux-2.6.22-rc3-mm1/drivers/net/e1000/e1000_main.c.old	2007-06-04 22:03:24.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/net/e1000/e1000_main.c	2007-06-04 22:03:40.000000000 +0200
@@ -4888,6 +4888,8 @@ e1000_pci_clear_mwi(struct e1000_hw *hw)
 	pci_clear_mwi(adapter->pdev);
 }
 
+#if 0
+
 void
 e1000_read_pci_cfg(struct e1000_hw *hw, uint32_t reg, uint16_t *value)
 {
@@ -4904,6 +4906,8 @@ e1000_write_pci_cfg(struct e1000_hw *hw,
 	pci_write_config_word(adapter->pdev, reg, *value);
 }
 
+#endif  /*  0  */
+
 int
 e1000_pcix_get_mmrbc(struct e1000_hw *hw)
 {


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] drivers/mmc/core/core.{h,c}: cleanups
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (18 preceding siblings ...)
  2007-06-04 22:12 ` [-mm patch] e1000: #if 0 two functions Adrian Bunk
@ 2007-06-04 22:13 ` Adrian Bunk
  2007-06-06 18:36   ` Pierre Ossman
  2007-06-05  9:11 ` 2.6.22-rc3-mm1 Ingo Molnar
                   ` (5 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-04 22:13 UTC (permalink / raw)
  To: Andrew Morton, drzeus-mmc; +Cc: linux-kernel

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc2-mm1:
>...
>  git-mmc.patch
>...
>  git trees
>...

This patch contains the following cleanups:
- make the following needlessly global functions static:
  - core.c: mmc_schedule_delayed_work()
  - core.c: mmc_flush_scheduled_work()
- removes the prototope of the following non-existing function:
  - core.h: mmc_schedule_work()
- proper prototypes for three functions from core.c in core.h
 
Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

 drivers/mmc/core/core.c |   37 +++++++++++++++++++------------------
 drivers/mmc/core/core.h |    6 +++---
 drivers/mmc/core/host.c |    4 ----
 3 files changed, 22 insertions(+), 25 deletions(-)

--- linux-2.6.22-rc3-mm1/drivers/mmc/core/core.h.old	2007-06-04 21:53:42.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/mmc/core/core.h	2007-06-04 23:19:44.000000000 +0200
@@ -64,9 +64,9 @@ static inline void mmc_delay(unsigned in
 	}
 }
 
-int mmc_schedule_work(struct work_struct *work);
-int mmc_schedule_delayed_work(struct delayed_work *work, unsigned long delay);
-void mmc_flush_scheduled_work(void);
+void mmc_rescan(struct work_struct *work);
+void mmc_start_host(struct mmc_host *host);
+void mmc_stop_host(struct mmc_host *host);
 
 #endif
 
--- linux-2.6.22-rc3-mm1/drivers/mmc/core/core.c.old	2007-06-04 21:54:46.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/mmc/core/core.c	2007-06-04 21:57:38.000000000 +0200
@@ -37,6 +37,25 @@
 extern int mmc_attach_mmc(struct mmc_host *host, u32 ocr);
 extern int mmc_attach_sd(struct mmc_host *host, u32 ocr);
 
+static struct workqueue_struct *workqueue;
+
+/*
+ * Internal function. Schedule delayed work in the MMC work queue.
+ */
+static int mmc_schedule_delayed_work(struct delayed_work *work,
+				     unsigned long delay)
+{
+	return queue_delayed_work(workqueue, work, delay);
+}
+
+/*
+ * Internal function. Flush all scheduled work from the MMC work queue.
+ */
+static void mmc_flush_scheduled_work(void)
+{
+	flush_workqueue(workqueue);
+}
+
 /**
  *	mmc_request_done - finish processing an MMC request
  *	@host: MMC host which completed request
@@ -640,24 +659,6 @@ EXPORT_SYMBOL(mmc_resume_host);
 
 #endif
 
-static struct workqueue_struct *workqueue;
-
-/*
- * Internal function. Schedule delayed work in the MMC work queue.
- */
-int mmc_schedule_delayed_work(struct delayed_work *work, unsigned long delay)
-{
-	return queue_delayed_work(workqueue, work, delay);
-}
-
-/*
- * Internal function. Flush all scheduled work from the MMC work queue.
- */
-void mmc_flush_scheduled_work(void)
-{
-	flush_workqueue(workqueue);
-}
-
 static int __init mmc_init(void)
 {
 	int ret;
--- linux-2.6.22-rc3-mm1/drivers/mmc/core/host.c.old	2007-06-04 23:18:35.000000000 +0200
+++ linux-2.6.22-rc3-mm1/drivers/mmc/core/host.c	2007-06-04 23:19:25.000000000 +0200
@@ -23,10 +23,6 @@
 
 #define cls_dev_to_mmc_host(d)	container_of(d, struct mmc_host, class_dev)
 
-extern void mmc_rescan(struct work_struct *work);
-extern void mmc_start_host(struct mmc_host *host);
-extern void mmc_stop_host(struct mmc_host *host);
-
 static void mmc_host_classdev_release(struct device *dev)
 {
 	struct mmc_host *host = cls_dev_to_mmc_host(dev);


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful
  2007-06-04 21:22   ` Andrew Morton
@ 2007-06-04 23:52     ` Martin Peschke
  2007-06-05  3:59       ` Russell King
  0 siblings, 1 reply; 105+ messages in thread
From: Martin Peschke @ 2007-06-04 23:52 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Adrian Bunk, linux-kernel

Andrew Morton wrote:
> On Sat, 2 Jun 2007 19:14:25 +0200
> Adrian Bunk <bunk@stusta.de> wrote:
> 
>> statistics-infrastructure-make-printk_clock-a-generic-kernel-wide-nsec-resolution.patch 
>> shows why __attribute__((weak)) is harmful because you don't see if a 
>> required non-weak implemtation is missing:
>>
>> In this case, the weak printk_clock() was renamed to timestamp_clock(), 
>> but the ARM and i386 implementations weren't renamed...
>>
> 
> printk_clock() is sched_clock() in disguise, and I'm not sure that making
> sched_clock() more widely available in this fashion is something that we
> want to do anyway.
> 
> Anyway, the statistics patches have just celebrated their first birthday
> and I don't see that they're getting sufficient momentum or interest to
> ever get into mainline so I think I'll drop them, sorry.

Andrew,
the lock contention statistics, which have been added to -mm recently, duplicate 
code that we have in the statistics patches. I think I can slim the lock 
tracking patches further down considerably (similar to my attempt at 
timerstats). I have a working prototype that is getting some polishing brushes. 
Would you like to wait how this goes?

As to timestamp_clock(): its useful for statistics, but still a minor feature. 
It would be unfortuante if that was the stumbling block for my patches. Am I 
right that the fix for the issue pointed at by Adrian is to rename those two 
occurrences of printk_clock()? Do you want me to submit a patch?


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful
  2007-06-04 23:52     ` Martin Peschke
@ 2007-06-05  3:59       ` Russell King
  0 siblings, 0 replies; 105+ messages in thread
From: Russell King @ 2007-06-05  3:59 UTC (permalink / raw)
  To: Martin Peschke; +Cc: Andrew Morton, Adrian Bunk, linux-kernel

On Tue, Jun 05, 2007 at 01:52:38AM +0200, Martin Peschke wrote:
> Andrew Morton wrote:
> >On Sat, 2 Jun 2007 19:14:25 +0200
> >Adrian Bunk <bunk@stusta.de> wrote:
> >
> >>statistics-infrastructure-make-printk_clock-a-generic-kernel-wide-nsec-resolution.patch 
> >>shows why __attribute__((weak)) is harmful because you don't see if a 
> >>required non-weak implemtation is missing:
> >>
> >>In this case, the weak printk_clock() was renamed to timestamp_clock(), 
> >>but the ARM and i386 implementations weren't renamed...
> >>
> >
> >printk_clock() is sched_clock() in disguise, and I'm not sure that making
> >sched_clock() more widely available in this fashion is something that we
> >want to do anyway.

Note that sched_clock() can not be used early on ARM; it might want to
access MMIO which is not accessible until later in setup_arch().  This
is why ARM's printk_clock() divorces itself from sched_clock().

> As to timestamp_clock(): its useful for statistics, but still a minor 
> feature. It would be unfortuante if that was the stumbling block for my 
> patches. Am I right that the fix for the issue pointed at by Adrian is to 
> rename those two occurrences of printk_clock()? Do you want me to submit a 
> patch?

If it's ends up being based upon sched_clock() instead of printk_clock()
on ARM then it'll break stuff horribly (== non-bootable kernels.)

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (19 preceding siblings ...)
  2007-06-04 22:13 ` [-mm patch] drivers/mmc/core/core.{h,c}: cleanups Adrian Bunk
@ 2007-06-05  9:11 ` Ingo Molnar
  2007-06-05  9:18   ` 2.6.22-rc3-mm1 Ingo Molnar
  2007-06-05  9:24   ` 2.6.22-rc3-mm1 Andrew Morton
  2007-06-05 15:16 ` 2.6.22-rc3-mm1 Rusty Russell
                   ` (4 subsequent siblings)
  25 siblings, 2 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:11 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


hm, mm1 hangs during bootup on one of my boxes:

 Calling initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44()
 initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44() returned 0.
 initcall 0xc0628d39 ran for 0 msecs: 
 pci_mmcfg_late_insert_resources+0x0/0x44()
 Calling initcall 0xc062abd1: tcp_congestion_default+0x0/0xf()
 initcall 0xc062abd1: tcp_congestion_default+0x0/0xf() returned 0.
 initcall 0xc062abd1 ran for 0 msecs: tcp_congestion_default+0x0/0xf()

it usually hangs in different places. Full bootlog below. Same kernel 
bzImage boots fine on another box.

the NMI watchdog warning is a bit weird:

 Calling initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8()
 Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
 CPU#1: NMI appears to be stuck (0->0)!
 initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8() returned -1.
 initcall 0xc0613e4f ran for 27 msecs: check_nmi_watchdog+0x0/0x1a8()

i'll test it in a minute with that turned off.

	Ingo

------------>
Linux version 2.6.22-rc3-mm1-v16-rc2 (mingo@dione) (gcc version 4.0.2) #9 SMP Tue Jun 5 10:48:06 CEST 2007
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
 BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
 BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
 BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
using polling idle threads.
127MB HIGHMEM available.
896MB LOWMEM available.
found SMP MP-table at 000f5680
Entering add_active_range(0, 0, 262128) 0 entries of 256 used
sizeof(struct page) = 32
Zone PFN ranges:
  DMA             0 ->     4096
  Normal       4096 ->   229376
  HighMem    229376 ->   262128
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 ->   262128
On node 0 totalpages: 262128
Node 0 memmap at 0xc1000000 size 8388608 first pfn 0xc1000000
  DMA zone: 32 pages used for memmap
  DMA zone: 0 pages reserved
  DMA zone: 4064 pages, LIFO batch:0
  Normal zone: 1760 pages used for memmap
  Normal zone: 223520 pages, LIFO batch:31
  HighMem zone: 255 pages used for memmap
  HighMem zone: 32497 pages, LIFO batch:7
  Movable zone: 0 pages used for memmap
DMI 2.3 present.
ACPI: RSDP 000F76F0, 0014 (r0 Nvidia)
ACPI: RSDT 3FFF3040, 0034 (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
ACPI: FACP 3FFF30C0, 0074 (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
ACPI: DSDT 3FFF3180, 6264 (r1 NVIDIA AWRDACPI     1000 MSFT  100000E)
ACPI: FACS 3FFF0000, 0040
ACPI: SRAT 3FFF9500, 00A0 (r1 AMD    HAMMER          1 AMD         1)
ACPI: MCFG 3FFF9600, 003C (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
ACPI: APIC 3FFF9440, 007C (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
ACPI: PM-Timer IO Port: 0x4008
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Processor #0 15:3 APIC version 16
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
Processor #1 15:3 APIC version 16
ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: BIOS IRQ0 pin2 override ignored.
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
ACPI: IRQ9 used by override.
ACPI: IRQ14 used by override.
ACPI: IRQ15 used by override.
Enabling APIC mode:  Flat.  Using 1 I/O APICs
Using ACPI (MADT) for SMP configuration information
Allocating PCI resources starting at 50000000 (gap: 40000000:a0000000)
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260081
Kernel command line: root=/dev/sda1 console=tty earlyprintk=serial,ttyS0,115200,keep 3 debug idle=poll profile=0 initcall_debug maxcpus=2 selinux=1 enforcing=0 apic=verbose ignore_loglevel nmi_watchdog=2
kernel profiling enabled (shift: 0)
debug: ignoring loglevel setting.
mapped APIC to ffffd000 (fee00000)
mapped IOAPIC to ffffc000 (fec00000)
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Initializing CPU#0
CPU 0 irqstacks, hard=c065b000 soft=c0663000
PID hash table entries: 4096 (order: 12, 16384 bytes)
Detected 2160.234 MHz processor.
spurious 8259A interrupt: IRQ7.
Console: colour VGA+ 80x25
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 1018420k/1048512k available (3370k kernel code, 29424k reserved, 1735k data, 332k init, 131008k highmem)
virtual kernel memory layout:
    fixmap  : 0xfff4e000 - 0xfffff000   ( 708 kB)
    pkmap   : 0xff800000 - 0xffc00000   (4096 kB)
    vmalloc : 0xf8800000 - 0xff7fe000   ( 111 MB)
    lowmem  : 0xc0000000 - 0xf8000000   ( 896 MB)
      .init : 0xc0603000 - 0xc0656000   ( 332 kB)
      .data : 0xc044aafa - 0xc05fc91c   (1735 kB)
      .text : 0xc0100000 - 0xc044aafa   (3370 kB)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay using timer specific routine.. 4321.76 BogoMIPS (lpj=2160883)
Security Framework v1.0.0 initialized
SELinux:  Initializing.
SELinux:  Starting in permissive mode
selinux_register_security:  Registering secondary module capability
Capability LSM initialized as secondary
Mount-cache hash table entries: 512
CPU: After generic identify, caps: 178bfbff e3d3fbff 00000000 00000000 00000001 00000000 00000003
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU 0(2) -> Core 0
CPU: After all inits, caps: 178bfbff e3d3fbff 00000000 00000410 00000001 00000000 00000003
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
Compat vDSO mapped to ffffe000.
Checking 'hlt' instruction... OK.
Freeing SMP alternatives: 16k freed
ACPI: Core revision 20070126
Parsing all Control Methods:
Table [DSDT](id 0001) - 980 Objects with 86 Devices 310 Methods 37 Regions
 tbxface-0587 [02] tb_load_namespace     : ACPI Tables successfully acquired
evxfevnt-0091 [02] enable                : Transition to ACPI mode successful
CPU0: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
enabled ExtINT on CPU#0
Booting processor 1/1 eip 2000
CPU 1 irqstacks, hard=c065c000 soft=c0664000
Initializing CPU#1
masked ExtINT on CPU#1
Calibrating delay using timer specific routine.. 4319.79 BogoMIPS (lpj=2159898)
CPU: After generic identify, caps: 178bfbff e3d3fbff 00000000 00000000 00000001 00000000 00000003
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU 1(2) -> Core 1
CPU: After all inits, caps: 178bfbff e3d3fbff 00000000 00000410 00000001 00000000 00000003
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#1.
CPU1: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
Total of 2 processors activated (8641.56 BogoMIPS).
ENABLING IO-APIC IRQs
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=0x31 apic1=0 pin1=0 apic2=-1 pin2=-1
Using local APIC timer interrupts.
calibrating APIC timer ...
... lapic delta = 1349919
... PM timer delta = 357899
... PM timer result ok
..... delta 1349919
..... mult: 57987393
..... calibration result: 215987
..... CPU clock speed is 2159.0869 MHz.
..... host bus clock speed is 215.0987 MHz.
Brought up 2 CPUs
Calling initcall 0xc0626528: init_cpufreq_transition_notifier_list+0x0/0x11()
initcall 0xc0626528: init_cpufreq_transition_notifier_list+0x0/0x11() returned 0.
initcall 0xc0626528 ran for 0 msecs: init_cpufreq_transition_notifier_list+0x0/0x11()
Calling initcall 0xc060ab73: cpufreq_tsc+0x0/0x11()
initcall 0xc060ab73: cpufreq_tsc+0x0/0x11() returned 0.
initcall 0xc060ab73 ran for 0 msecs: cpufreq_tsc+0x0/0x11()
Calling initcall 0xc060acd9: init_sched_clock+0x0/0x42()
initcall 0xc060acd9: init_sched_clock+0x0/0x42() returned 0.
initcall 0xc060acd9 ran for 0 msecs: init_sched_clock+0x0/0x42()
Calling initcall 0xc061092f: reboot_init+0x0/0x11()
initcall 0xc061092f: reboot_init+0x0/0x11() returned 0.
initcall 0xc061092f ran for 0 msecs: reboot_init+0x0/0x11()
Calling initcall 0xc061617a: print_banner+0x0/0xd()
Booting paravirtualized kernel on bare hardware
initcall 0xc061617a: print_banner+0x0/0xd() returned 0.
initcall 0xc061617a ran for 3 msecs: print_banner+0x0/0xd()
Calling initcall 0xc0617e97: sysctl_init+0x0/0x13()
initcall 0xc0617e97: sysctl_init+0x0/0x13() returned 0.
initcall 0xc0617e97 ran for 0 msecs: sysctl_init+0x0/0x13()
Calling initcall 0xc061893b: init_jiffies_clocksource+0x0/0xf()
initcall 0xc061893b: init_jiffies_clocksource+0x0/0xf() returned 0.
initcall 0xc061893b ran for 0 msecs: init_jiffies_clocksource+0x0/0xf()
Calling initcall 0xc0618c0a: pm_init+0x0/0x22()
initcall 0xc0618c0a: pm_init+0x0/0x22() returned 0.
initcall 0xc0618c0a ran for 0 msecs: pm_init+0x0/0x22()
Calling initcall 0xc0618edb: ksysfs_init+0x0/0x22()
initcall 0xc0618edb: ksysfs_init+0x0/0x22() returned 0.
initcall 0xc0618edb ran for 0 msecs: ksysfs_init+0x0/0x22()
Calling initcall 0xc061b418: filelock_init+0x0/0x37()
initcall 0xc061b418: filelock_init+0x0/0x37() returned 0.
initcall 0xc061b418 ran for 0 msecs: filelock_init+0x0/0x37()
Calling initcall 0xc061be98: init_misc_binfmt+0x0/0x33()
initcall 0xc061be98: init_misc_binfmt+0x0/0x33() returned 0.
initcall 0xc061be98 ran for 0 msecs: init_misc_binfmt+0x0/0x33()
Calling initcall 0xc061becb: init_script_binfmt+0x0/0xf()
initcall 0xc061becb: init_script_binfmt+0x0/0xf() returned 0.
initcall 0xc061becb ran for 0 msecs: init_script_binfmt+0x0/0xf()
Calling initcall 0xc061beda: init_elf_binfmt+0x0/0xf()
initcall 0xc061beda: init_elf_binfmt+0x0/0xf() returned 0.
initcall 0xc061beda ran for 0 msecs: init_elf_binfmt+0x0/0xf()
Calling initcall 0xc061cb95: securityfs_init+0x0/0x3d()
initcall 0xc061cb95: securityfs_init+0x0/0x3d() returned 0.
initcall 0xc061cb95 ran for 0 msecs: securityfs_init+0x0/0x3d()
Calling initcall 0xc061d505: random32_init+0x0/0x42()
initcall 0xc061d505: random32_init+0x0/0x42() returned 0.
initcall 0xc061d505 ran for 0 msecs: random32_init+0x0/0x42()
Calling initcall 0xc0626539: cpufreq_core_init+0x0/0x56()
initcall 0xc0626539: cpufreq_core_init+0x0/0x56() returned 0.
initcall 0xc0626539 ran for 0 msecs: cpufreq_core_init+0x0/0x56()
Calling initcall 0xc0629899: sock_init+0x0/0x5f()
initcall 0xc0629899: sock_init+0x0/0x5f() returned 0.
initcall 0xc0629899 ran for 0 msecs: sock_init+0x0/0x5f()
Calling initcall 0xc0629f72: netpoll_init+0x0/0x2f()
initcall 0xc0629f72: netpoll_init+0x0/0x2f() returned 0.
initcall 0xc0629f72 ran for 0 msecs: netpoll_init+0x0/0x2f()
Calling initcall 0xc062a21a: netlink_proto_init+0x0/0x12a()
NET: Registered protocol family 16
initcall 0xc062a21a: netlink_proto_init+0x0/0x12a() returned 0.
initcall 0xc062a21a ran for 2 msecs: netlink_proto_init+0x0/0x12a()
Calling initcall 0xc061d42d: kobject_uevent_init+0x0/0x45()
initcall 0xc061d42d: kobject_uevent_init+0x0/0x45() returned 0.
initcall 0xc061d42d ran for 0 msecs: kobject_uevent_init+0x0/0x45()
Calling initcall 0xc061d5e5: pcibus_class_init+0x0/0xf()
initcall 0xc061d5e5: pcibus_class_init+0x0/0xf() returned 0.
initcall 0xc061d5e5 ran for 0 msecs: pcibus_class_init+0x0/0xf()
Calling initcall 0xc061db0a: pci_driver_init+0x0/0xf()
initcall 0xc061db0a: pci_driver_init+0x0/0xf() returned 0.
initcall 0xc061db0a ran for 0 msecs: pci_driver_init+0x0/0xf()
Calling initcall 0xc061e0fb: backlight_class_init+0x0/0xf()
initcall 0xc061e0fb: backlight_class_init+0x0/0xf() returned 0.
initcall 0xc061e0fb ran for 0 msecs: backlight_class_init+0x0/0xf()
Calling initcall 0xc0620f16: tty_class_init+0x0/0x23()
initcall 0xc0620f16: tty_class_init+0x0/0x23() returned 0.
initcall 0xc0620f16 ran for 0 msecs: tty_class_init+0x0/0x23()
Calling initcall 0xc0621598: vtconsole_class_init+0x0/0xb5()
initcall 0xc0621598: vtconsole_class_init+0x0/0xb5() returned 0.
initcall 0xc0621598 ran for 0 msecs: vtconsole_class_init+0x0/0xb5()
Calling initcall 0xc0625fb2: lgend_pushf+0x0/0x163()
initcall 0xc0625fb2: lgend_pushf+0x0/0x163() returned 0.
initcall 0xc0625fb2 ran for 0 msecs: lgend_pushf+0x0/0x163()
Calling initcall 0xc060aaf7: init_pit_clocksource+0x0/0x65()
initcall 0xc060aaf7: init_pit_clocksource+0x0/0x65() returned 0.
initcall 0xc060aaf7 ran for 0 msecs: init_pit_clocksource+0x0/0x65()
Calling initcall 0xc060e115: mtrr_if_init+0x0/0x57()
initcall 0xc060e115: mtrr_if_init+0x0/0x57() returned 0.
initcall 0xc060e115 ran for 0 msecs: mtrr_if_init+0x0/0x57()
Calling initcall 0xc061081f: ffh_cstate_init+0x0/0x2c()
initcall 0xc061081f: ffh_cstate_init+0x0/0x2c() returned -1.
initcall 0xc061081f ran for 0 msecs: ffh_cstate_init+0x0/0x2c()
initcall at 0xc061081f: ffh_cstate_init+0x0/0x2c(): returned with error code -1
Calling initcall 0xc061dc50: acpi_pci_init+0x0/0x3f()
ACPI: bus type pci registered
initcall 0xc061dc50: acpi_pci_init+0x0/0x3f() returned 0.
initcall 0xc061dc50 ran for 2 msecs: acpi_pci_init+0x0/0x3f()
Calling initcall 0xc061f747: init_acpi_device_notify+0x0/0x45()
initcall 0xc061f747: init_acpi_device_notify+0x0/0x45() returned 0.
initcall 0xc061f747 ran for 0 msecs: init_acpi_device_notify+0x0/0x45()
Calling initcall 0xc0626c8e: dmi_id_init+0x0/0x26c()
initcall 0xc0626c8e: dmi_id_init+0x0/0x26c() returned 0.
initcall 0xc0626c8e ran for 0 msecs: dmi_id_init+0x0/0x26c()
Calling initcall 0xc06282e7: pci_access_init+0x0/0x41()
PCI: Using MMCONFIG
PCI: No mmconfig possible on device 00:18
initcall 0xc06282e7: pci_access_init+0x0/0x41() returned 0.
initcall 0xc06282e7 ran for 4 msecs: pci_access_init+0x0/0x41()
Calling initcall 0xc060a617: request_standard_resources+0x0/0x300()
Setting up standard PCI resources
initcall 0xc060a617: request_standard_resources+0x0/0x300() returned 0.
initcall 0xc060a617 ran for 5 msecs: request_standard_resources+0x0/0x300()
Calling initcall 0xc060a934: topology_init+0x0/0x2f()
initcall 0xc060a934: topology_init+0x0/0x2f() returned 0.
initcall 0xc060a934 ran for 0 msecs: topology_init+0x0/0x2f()
Calling initcall 0xc060de9d: mtrr_init_finialize+0x0/0x2c()
initcall 0xc060de9d: mtrr_init_finialize+0x0/0x2c() returned 0.
initcall 0xc060de9d ran for 0 msecs: mtrr_init_finialize+0x0/0x2c()
Calling initcall 0xc0618386: param_sysfs_init+0x0/0x17f()
initcall 0xc0618386: param_sysfs_init+0x0/0x17f() returned 0.
initcall 0xc0618386 ran for 1 msecs: param_sysfs_init+0x0/0x17f()
Calling initcall 0xc0140499: pm_sysrq_init+0x0/0x17()
initcall 0xc0140499: pm_sysrq_init+0x0/0x17() returned 0.
initcall 0xc0140499 ran for 0 msecs: pm_sysrq_init+0x0/0x17()
Calling initcall 0xc061ba84: init_bio+0x0/0xc7()
initcall 0xc061ba84: init_bio+0x0/0xc7() returned 0.
initcall 0xc061ba84 ran for 0 msecs: init_bio+0x0/0xc7()
Calling initcall 0xc061d1b4: genhd_device_init+0x0/0x50()
initcall 0xc061d1b4: genhd_device_init+0x0/0x50() returned 0.
initcall 0xc061d1b4 ran for 0 msecs: genhd_device_init+0x0/0x50()
Calling initcall 0xc061dc8f: fbmem_init+0x0/0x87()
initcall 0xc061dc8f: fbmem_init+0x0/0x87() returned 0.
initcall 0xc061dc8f ran for 0 msecs: fbmem_init+0x0/0x87()
Calling initcall 0xc061f54d: acpi_init+0x0/0x1fa()
evgpeblk-0956 [04] ev_create_gpe_block   : GPE 00 to 1F [_GPE] 4 regs on int 0x9
evgpeblk-0956 [04] ev_create_gpe_block   : GPE 20 to 5F [_GPE] 8 regs on int 0x9
evgpeblk-1052 [03] ev_initialize_gpe_bloc: Found 7 Wake, Enabled 0 Runtime GPEs in this block
evgpeblk-1052 [03] ev_initialize_gpe_bloc: Found 0 Wake, Enabled 0 Runtime GPEs in this block
Completing Region/Field/Buffer/Package initialization:.....................................................................................................................................................
Initialized 37/37 Regions 9/9 Fields 35/35 Buffers 68/77 Packages (989 nodes)
Initializing Device/Processor/Thermal objects by executing _INI methods:...
Executed 3 _INI methods requiring 1 _STA executions (examined 91 objects)
ACPI: Interpreter enabled
ACPI: Using IOAPIC for interrupt routing
initcall 0xc061f54d: acpi_init+0x0/0x1fa() returned 0.
initcall 0xc061f54d ran for 76 msecs: acpi_init+0x0/0x1fa()
Calling initcall 0xc061f78c: acpi_scan_init+0x0/0xfc()
initcall 0xc061f78c: acpi_scan_init+0x0/0xfc() returned 0.
initcall 0xc061f78c ran for 13 msecs: acpi_scan_init+0x0/0xfc()
Calling initcall 0xc061f94b: acpi_ec_init+0x0/0x55()
initcall 0xc061f94b: acpi_ec_init+0x0/0x55() returned 0.
initcall 0xc061f94b ran for 0 msecs: acpi_ec_init+0x0/0x55()
Calling initcall 0xc061fa45: acpi_pci_root_init+0x0/0x25()
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Transparent bridge - 0000:00:09.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.HUB0._PRT]
initcall 0xc061fa45: acpi_pci_root_init+0x0/0x25() returned 0.
initcall 0xc061fa45 ran for 96 msecs: acpi_pci_root_init+0x0/0x25()
Calling initcall 0xc061fb3e: acpi_pci_link_init+0x0/0x43()
ACPI: PCI Interrupt Link [LNK1] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNK2] (IRQs 3 4 5 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNK3] (IRQs 3 4 *5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNK4] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNK5] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUBA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUBB] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LMAC] (IRQs 3 4 5 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LACI] (IRQs *3 4 5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LMCI] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LSMB] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUB2] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LIDE] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LSID] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LFID] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LPCA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [APC1] (IRQs 16) *0, disabled.
ACPI: PCI Interrupt Link [APC2] (IRQs 17) *0
ACPI: PCI Interrupt Link [APC3] (IRQs 18) *0
ACPI: PCI Interrupt Link [APC4] (IRQs 19) *0, disabled.
ACPI: PCI Interrupt Link [APC5] (IRQs *16), disabled.
ACPI: PCI Interrupt Link [APCF] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCG] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCH] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCJ] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCK] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCS] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCL] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCZ] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APSI] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APSJ] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCP] (IRQs 20 21 22 23) *0, disabled.
initcall 0xc061fb3e: acpi_pci_link_init+0x0/0x43() returned 0.
initcall 0xc061fb3e ran for 117 msecs: acpi_pci_link_init+0x0/0x43()
Calling initcall 0xc061fc18: acpi_power_init+0x0/0x69()
initcall 0xc061fc18: acpi_power_init+0x0/0x69() returned 0.
initcall 0xc061fc18 ran for 0 msecs: acpi_power_init+0x0/0x69()
Calling initcall 0xc06206ff: acpi_system_init+0x0/0xad()
initcall 0xc06206ff: acpi_system_init+0x0/0xad() returned 0.
initcall 0xc06206ff ran for 0 msecs: acpi_system_init+0x0/0xad()
Calling initcall 0xc06207ac: acpi_event_init+0x0/0x38()
initcall 0xc06207ac: acpi_event_init+0x0/0x38() returned 0.
initcall 0xc06207ac ran for 0 msecs: acpi_event_init+0x0/0x38()
Calling initcall 0xc06207e4: acpi_debug_init+0x0/0x99()
initcall 0xc06207e4: acpi_debug_init+0x0/0x99() returned 0.
initcall 0xc06207e4 ran for 0 msecs: acpi_debug_init+0x0/0x99()
Calling initcall 0xc062087d: acpi_cm_sbs_init+0x0/0x7()
initcall 0xc062087d: acpi_cm_sbs_init+0x0/0x7() returned 0.
initcall 0xc062087d ran for 0 msecs: acpi_cm_sbs_init+0x0/0x7()
Calling initcall 0xc0620884: pnp_init+0x0/0x1c()
Linux Plug and Play Support v0.97 (c) Adam Belay
initcall 0xc0620884: pnp_init+0x0/0x1c() returned 0.
initcall 0xc0620884 ran for 0 msecs: pnp_init+0x0/0x1c()
Calling initcall 0xc0620a56: pnpacpi_init+0x0/0x87()
pnp: PnP ACPI init
ACPI: bus type pnp registered
Clocksource tsc unstable (delta = 164410318 ns)
pnp: PnP ACPI: found 16 devices
ACPI: ACPI bus type pnp unregistered
initcall 0xc0620a56: pnpacpi_init+0x0/0x87() returned 0.
initcall 0xc0620a56 ran for 14 msecs: pnpacpi_init+0x0/0x87()
Calling initcall 0xc0621311: misc_init+0x0/0x79()
initcall 0xc0621311: misc_init+0x0/0x79() returned 0.
initcall 0xc0621311 ran for 0 msecs: misc_init+0x0/0x79()
Calling initcall 0xc0623b60: init_scsi+0x0/0x8f()
SCSI subsystem initialized
initcall 0xc0623b60: init_scsi+0x0/0x8f() returned 0.
initcall 0xc0623b60 ran for 1 msecs: init_scsi+0x0/0x8f()
Calling initcall 0xc0624368: ata_init+0x0/0x6c()
libata version 2.21 loaded.
initcall 0xc0624368: ata_init+0x0/0x6c() returned 0.
initcall 0xc0624368 ran for 0 msecs: ata_init+0x0/0x6c()
Calling initcall 0xc06250e2: usb_init+0x0/0x106()
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
initcall 0xc06250e2: usb_init+0x0/0x106() returned 0.
initcall 0xc06250e2 ran for 5 msecs: usb_init+0x0/0x106()
Calling initcall 0xc0625533: serio_init+0x0/0x8d()
initcall 0xc0625533: serio_init+0x0/0x8d() returned 0.
initcall 0xc0625533 ran for 0 msecs: serio_init+0x0/0x8d()
Calling initcall 0xc062590d: input_init+0x0/0x101()
initcall 0xc062590d: input_init+0x0/0x101() returned 0.
initcall 0xc062590d ran for 0 msecs: input_init+0x0/0x101()
Calling initcall 0xc0625b7a: hwmon_init+0x0/0x34()
initcall 0xc0625b7a: hwmon_init+0x0/0x34() returned 0.
initcall 0xc0625b7a ran for 0 msecs: hwmon_init+0x0/0x34()
Calling initcall 0xc0627ffb: ac97_bus_init+0x0/0xf()
initcall 0xc0627ffb: ac97_bus_init+0x0/0xf() returned 0.
initcall 0xc0627ffb ran for 0 msecs: ac97_bus_init+0x0/0xf()
Calling initcall 0xc0628e25: pci_acpi_init+0x0/0x9b()
PCI: Using ACPI for IRQ routing
PCI: If a device doesn't work, try "pci=routeirq".  If it helps, post a report
number of MP IRQ sources: 16.
number of IO-APIC #2 registers: 24.
testing the IO APIC.......................
IO APIC #2......
.... register #00: 00000000
.......    : physical APIC id: 00
.......    : Delivery Type: 0
.......    : LTS          : 0
.... register #01: 00170011
.......     : max redirection entries: 0017
.......     : PRQ implemented: 0
.......     : IO APIC version: 0011
.... register #02: 00000000
.......     : arbitration: 00
.... IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 003 03  0    0    0   0   0    1    1    31
 01 003 03  1    0    0   0   0    1    1    39
 02 003 03  0    0    0   0   0    1    1    41
 03 003 03  1    0    0   0   0    1    1    49
 04 003 03  1    0    0   0   0    1    1    51
 05 003 03  1    0    0   0   0    1    1    59
 06 003 03  1    0    0   0   0    1    1    61
 07 003 03  1    0    0   0   0    1    1    69
 08 003 03  1    0    0   0   0    1    1    71
 09 003 03  0    1    0   0   0    1    1    79
 0a 003 03  1    0    0   0   0    1    1    81
 0b 003 03  1    0    0   0   0    1    1    89
 0c 003 03  1    0    0   0   0    1    1    91
 0d 003 03  1    0    0   0   0    1    1    99
 0e 003 03  0    0    0   0   0    1    1    A1
 0f 003 03  0    0    0   0   0    1    1    A9
 10 000 00  1    0    0   0   0    0    0    00
 11 000 00  1    0    0   0   0    0    0    00
 12 000 00  1    0    0   0   0    0    0    00
 13 000 00  1    0    0   0   0    0    0    00
 14 000 00  1    0    0   0   0    0    0    00
 15 000 00  1    0    0   0   0    0    0    00
 16 000 00  1    0    0   0   0    0    0    00
 17 000 00  1    0    0   0   0    0    0    00
IRQ to pin mappings:
IRQ0 -> 0:0
IRQ1 -> 0:1
IRQ2 -> 0:2
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ5 -> 0:5
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ10 -> 0:10
IRQ11 -> 0:11
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ15 -> 0:15
.................................... done.
initcall 0xc0628e25: pci_acpi_init+0x0/0x9b() returned 0.
initcall 0xc0628e25 ran for 82 msecs: pci_acpi_init+0x0/0x9b()
Calling initcall 0xc0628ec0: pci_legacy_init+0x0/0x105()
initcall 0xc0628ec0: pci_legacy_init+0x0/0x105() returned 0.
initcall 0xc0628ec0 ran for 0 msecs: pci_legacy_init+0x0/0x105()
Calling initcall 0xc06293cb: pcibios_irq_init+0x0/0x452()
initcall 0xc06293cb: pcibios_irq_init+0x0/0x452() returned 0.
initcall 0xc06293cb ran for 0 msecs: pcibios_irq_init+0x0/0x452()
Calling initcall 0xc062981d: pcibios_init+0x0/0x7c()
initcall 0xc062981d: pcibios_init+0x0/0x7c() returned 0.
initcall 0xc062981d ran for 0 msecs: pcibios_init+0x0/0x7c()
Calling initcall 0xc062994e: proto_init+0x0/0x2e()
initcall 0xc062994e: proto_init+0x0/0x2e() returned 0.
initcall 0xc062994e ran for 0 msecs: proto_init+0x0/0x2e()
Calling initcall 0xc0629a9e: net_dev_init+0x0/0x1d9()
initcall 0xc0629a9e: net_dev_init+0x0/0x1d9() returned 0.
initcall 0xc0629a9e ran for 0 msecs: net_dev_init+0x0/0x1d9()
Calling initcall 0xc0629ca8: neigh_init+0x0/0x7a()
initcall 0xc0629ca8: neigh_init+0x0/0x7a() returned 0.
initcall 0xc0629ca8 ran for 0 msecs: neigh_init+0x0/0x7a()
Calling initcall 0xc0629fa1: fib_rules_init+0x0/0x55()
initcall 0xc0629fa1: fib_rules_init+0x0/0x55() returned 0.
initcall 0xc0629fa1 ran for 0 msecs: fib_rules_init+0x0/0x55()
Calling initcall 0xc062a0f2: pktsched_init+0x0/0xc9()
initcall 0xc062a0f2: pktsched_init+0x0/0xc9() returned 0.
initcall 0xc062a0f2 ran for 0 msecs: pktsched_init+0x0/0xc9()
Calling initcall 0xc062a1ca: tc_filter_init+0x0/0x50()
initcall 0xc062a1ca: tc_filter_init+0x0/0x50() returned 0.
initcall 0xc062a1ca ran for 0 msecs: tc_filter_init+0x0/0x50()
Calling initcall 0xc062a344: genl_init+0x0/0xa7()
initcall 0xc062a344: genl_init+0x0/0xa7() returned 0.
initcall 0xc062a344 ran for 0 msecs: genl_init+0x0/0xa7()
Calling initcall 0xc062b82a: wireless_nlevent_init+0x0/0x2f()
initcall 0xc062b82a: wireless_nlevent_init+0x0/0x2f() returned 0.
initcall 0xc062b82a ran for 0 msecs: wireless_nlevent_init+0x0/0x2f()
Calling initcall 0xc061885a: clocksource_done_booting+0x0/0x11()
initcall 0xc061885a: clocksource_done_booting+0x0/0x11() returned 0.
initcall 0xc061885a ran for 0 msecs: clocksource_done_booting+0x0/0x11()
Calling initcall 0xc061b3a2: init_pipe_fs+0x0/0x3f()
initcall 0xc061b3a2: init_pipe_fs+0x0/0x3f() returned 0.
initcall 0xc061b3a2 ran for 0 msecs: init_pipe_fs+0x0/0x3f()
Calling initcall 0xc061bd1a: eventpoll_init+0x0/0x96()
initcall 0xc061bd1a: eventpoll_init+0x0/0x96() returned 0.
initcall 0xc061bd1a ran for 0 msecs: eventpoll_init+0x0/0x96()
Calling initcall 0xc061bdb0: anon_inode_init+0x0/0xe8()
initcall 0xc061bdb0: anon_inode_init+0x0/0xe8() returned 0.
initcall 0xc061bdb0 ran for 0 msecs: anon_inode_init+0x0/0xe8()
Calling initcall 0xc0620960: pnp_system_init+0x0/0xf()
pnp: 00:01: ioport range 0x4000-0x407f has been reserved
pnp: 00:01: ioport range 0x4080-0x40ff has been reserved
pnp: 00:01: ioport range 0x4400-0x447f has been reserved
pnp: 00:01: ioport range 0x4480-0x44ff has been reserved
pnp: 00:01: ioport range 0x4800-0x487f has been reserved
pnp: 00:01: ioport range 0x4880-0x48ff has been reserved
pnp: 00:0e: iomem range 0xe0000000-0xefffffff could not be reserved
pnp: 00:0f: iomem range 0xf0000-0xf3fff could not be reserved
pnp: 00:0f: iomem range 0xf4000-0xf7fff could not be reserved
pnp: 00:0f: iomem range 0xf8000-0xfbfff could not be reserved
pnp: 00:0f: iomem range 0xfc000-0xfffff could not be reserved
initcall 0xc0620960: pnp_system_init+0x0/0xf() returned 0.
initcall 0xc0620960 ran for 10 msecs: pnp_system_init+0x0/0xf()
Calling initcall 0xc0620e36: chr_dev_init+0x0/0x86()
initcall 0xc0620e36: chr_dev_init+0x0/0x86() returned 0.
initcall 0xc0620e36 ran for 0 msecs: chr_dev_init+0x0/0x86()
Calling initcall 0xc0622b1e: firmware_class_init+0x0/0x66()
initcall 0xc0622b1e: firmware_class_init+0x0/0x66() returned 0.
initcall 0xc0622b1e ran for 0 msecs: firmware_class_init+0x0/0x66()
Calling initcall 0xc062660c: cpufreq_gov_performance_init+0x0/0xf()
initcall 0xc062660c: cpufreq_gov_performance_init+0x0/0xf() returned 0.
initcall 0xc062660c ran for 0 msecs: cpufreq_gov_performance_init+0x0/0xf()
Calling initcall 0xc062661b: cpufreq_gov_userspace_init+0x0/0x1b()
initcall 0xc062661b: cpufreq_gov_userspace_init+0x0/0x1b() returned 0.
initcall 0xc062661b ran for 0 msecs: cpufreq_gov_userspace_init+0x0/0x1b()
Calling initcall 0xc0626f0e: init_acpi_pm_clocksource+0x0/0x173()
initcall 0xc0626f0e<6>Time: acpi_pm clocksource has been installed.
Switched to high resolution mode on CPU 0
Switched to high resolution mode on CPU 1
: init_acpi_pm_clocksource+0x0/0x173() returned 0.
initcall 0xc0626f0e ran for 28 msecs: init_acpi_pm_clocksource+0x0/0x173()
Calling initcall 0xc0628064: pcibios_assign_resources+0x0/0x92()
PCI: Bridge: 0000:00:09.0
  IO window: c000-cfff
  MEM window: da000000-da0fffff
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0b.0
  IO window: disabled.
  MEM window: disabled.
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0c.0
  IO window: disabled.
  MEM window: disabled.
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0d.0
  IO window: disabled.
  MEM window: disabled.
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0e.0
  IO window: b000-bfff
  MEM window: d8000000-d9ffffff
  PREFETCH window: d0000000-d7ffffff
PCI: Setting latency timer of device 0000:00:09.0 to 64
PCI: Setting latency timer of device 0000:00:0b.0 to 64
PCI: Setting latency timer of device 0000:00:0c.0 to 64
PCI: Setting latency timer of device 0000:00:0d.0 to 64
PCI: Setting latency timer of device 0000:00:0e.0 to 64
initcall 0xc0628064: pcibios_assign_resources+0x0/0x92() returned 0.
initcall 0xc0628064 ran for 69 msecs: pcibios_assign_resources+0x0/0x92()
Calling initcall 0xc062ae68: inet_init+0x0/0x2d6()
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 131072 (order: 8, 1572864 bytes)
TCP bind hash table entries: 65536 (order: 7, 524288 bytes)
TCP: Hash tables configured (established 131072 bind 65536)
TCP reno registered
initcall 0xc062ae68: inet_init+0x0/0x2d6() returned 0.
initcall 0xc062ae68 ran for 39 msecs: inet_init+0x0/0x2d6()
Calling initcall 0xc0608f76: populate_rootfs+0x0/0xe4()
initcall 0xc0608f76: populate_rootfs+0x0/0xe4() returned 0.
initcall 0xc0608f76 ran for 0 msecs: populate_rootfs+0x0/0xe4()
Calling initcall 0xc0609a6f: i8259A_init_sysfs+0x0/0x1d()
initcall 0xc0609a6f: i8259A_init_sysfs+0x0/0x1d() returned 0.
initcall 0xc0609a6f ran for 0 msecs: i8259A_init_sysfs+0x0/0x1d()
Calling initcall 0xc0609b4f: sbf_init+0x0/0xd2()
initcall 0xc0609b4f: sbf_init+0x0/0xd2() returned 0.
initcall 0xc0609b4f ran for 0 msecs: sbf_init+0x0/0xd2()
Calling initcall 0xc060a917: i8237A_init_sysfs+0x0/0x1d()
initcall 0xc060a917: i8237A_init_sysfs+0x0/0x1d() returned 0.
initcall 0xc060a917 ran for 0 msecs: i8237A_init_sysfs+0x0/0x1d()
Calling initcall 0xc060dce5: cache_sysfs_init+0x0/0x43()
initcall 0xc060dce5: cache_sysfs_init+0x0/0x43() returned 0.
initcall 0xc060dce5 ran for 0 msecs: cache_sysfs_init+0x0/0x43()
Calling initcall 0xc060de25: thermal_throttle_init_device+0x0/0x78()
initcall 0xc060de25: thermal_throttle_init_device+0x0/0x78() returned 0.
initcall 0xc060de25 ran for 0 msecs: thermal_throttle_init_device+0x0/0x78()
Calling initcall 0xc060f4cf: longrun_init+0x0/0x28()
initcall 0xc060f4cf: longrun_init+0x0/0x28() returned -19.
initcall 0xc060f4cf ran for 0 msecs: longrun_init+0x0/0x28()
Calling initcall 0xc060f80c: speedstep_init+0x0/0x1bf()
initcall 0xc060f80c: speedstep_init+0x0/0x1bf() returned -19.
initcall 0xc060f80c ran for 0 msecs: speedstep_init+0x0/0x1bf()
Calling initcall 0xc0610e97: apm_init+0x0/0x3bd()
apm: BIOS not found.
initcall 0xc0610e97: apm_init+0x0/0x3bd() returned -19.
initcall 0xc0610e97 ran for 1 msecs: apm_init+0x0/0x3bd()
Calling initcall 0xc06132d4: init_lapic_sysfs+0x0/0x28()
initcall 0xc06132d4: init_lapic_sysfs+0x0/0x28() returned 0.
initcall 0xc06132d4 ran for 0 msecs: init_lapic_sysfs+0x0/0x28()
Calling initcall 0xc06142cc: ioapic_init_sysfs+0x0/0xb6()
initcall 0xc06142cc: ioapic_init_sysfs+0x0/0xb6() returned 0.
initcall 0xc06142cc ran for 0 msecs: ioapic_init_sysfs+0x0/0xb6()
Calling initcall 0xc0615b98: serial8250_x86_com_init+0x0/0x26()
initcall 0xc0615b98: serial8250_x86_com_init+0x0/0x26() returned -19.
initcall 0xc0615b98 ran for 0 msecs: serial8250_x86_com_init+0x0/0x26()
Calling initcall 0xc0615ed7: hpet_register_sysfs+0x0/0x49()
initcall 0xc0615ed7: hpet_register_sysfs+0x0/0x49() returned 0.
initcall 0xc0615ed7 ran for 0 msecs: hpet_register_sysfs+0x0/0x49()
Calling initcall 0xc0616187: add_pcspkr+0x0/0x35()
initcall 0xc0616187: add_pcspkr+0x0/0x35() returned 0.
initcall 0xc0616187 ran for 0 msecs: add_pcspkr+0x0/0x35()
Calling initcall 0xc0616c5f: init_sched_debug_procfs+0x0/0x2a()
initcall 0xc0616c5f: init_sched_debug_procfs+0x0/0x2a() returned 0.
initcall 0xc0616c5f ran for 0 msecs: init_sched_debug_procfs+0x0/0x2a()
Calling initcall 0xc0617b2e: create_proc_profile+0x0/0x16c()
initcall 0xc0617b2e: create_proc_profile+0x0/0x16c() returned 0.
initcall 0xc0617b2e ran for 0 msecs: create_proc_profile+0x0/0x16c()
Calling initcall 0xc0617da4: ioresources_init+0x0/0x39()
initcall 0xc0617da4: ioresources_init+0x0/0x39() returned 0.
initcall 0xc0617da4 ran for 0 msecs: ioresources_init+0x0/0x39()
Calling initcall 0xc061802b: uid_cache_init+0x0/0x8c()
initcall 0xc061802b: uid_cache_init+0x0/0x8c() returned 0.
initcall 0xc061802b ran for 0 msecs: uid_cache_init+0x0/0x8c()
Calling initcall 0xc0618505: init_posix_timers+0x0/0x85()
initcall 0xc0618505: init_posix_timers+0x0/0x85() returned 0.
initcall 0xc0618505 ran for 0 msecs: init_posix_timers+0x0/0x85()
Calling initcall 0xc061858a: init_posix_cpu_timers+0x0/0x51()
initcall 0xc061858a: init_posix_cpu_timers+0x0/0x51() returned 0.
initcall 0xc061858a ran for 0 msecs: init_posix_cpu_timers+0x0/0x51()
Calling initcall 0xc06186cc: latency_init+0x0/0x20()
initcall 0xc06186cc: latency_init+0x0/0x20() returned 0.
initcall 0xc06186cc ran for 0 msecs: latency_init+0x0/0x20()
Calling initcall 0xc06186ec: timekeeping_init_device+0x0/0x1d()
initcall 0xc06186ec: timekeeping_init_device+0x0/0x1d() returned 0.
initcall 0xc06186ec ran for 0 msecs: timekeeping_init_device+0x0/0x1d()
Calling initcall 0xc061886b: init_clocksource_sysfs+0x0/0x43()
initcall 0xc061886b: init_clocksource_sysfs+0x0/0x43() returned 0.
initcall 0xc061886b ran for 0 msecs: init_clocksource_sysfs+0x0/0x43()
Calling initcall 0xc061894a: init_timer_list_procfs+0x0/0x2a()
initcall 0xc061894a: init_timer_list_procfs+0x0/0x2a() returned 0.
initcall 0xc061894a ran for 0 msecs: init_timer_list_procfs+0x0/0x2a()
Calling initcall 0xc06189e9: init+0x0/0x74()
initcall 0xc06189e9: init+0x0/0x74() returned 0.
initcall 0xc06189e9 ran for 0 msecs: init+0x0/0x74()
Calling initcall 0xc0618a5d: proc_dma_init+0x0/0x20()
initcall 0xc0618a5d: proc_dma_init+0x0/0x20() returned 0.
initcall 0xc0618a5d ran for 0 msecs: proc_dma_init+0x0/0x20()
Calling initcall 0xc013c40c: percpu_modinit+0x0/0x66()
initcall 0xc013c40c: percpu_modinit+0x0/0x66() returned 0.
initcall 0xc013c40c ran for 0 msecs: percpu_modinit+0x0/0x66()
Calling initcall 0xc0618be7: kallsyms_init+0x0/0x23()
initcall 0xc0618be7: kallsyms_init+0x0/0x23() returned 0.
initcall 0xc0618be7 ran for 0 msecs: kallsyms_init+0x0/0x23()
Calling initcall 0xc0618c2c: crash_notes_memory_init+0x0/0x38()
initcall 0xc0618c2c: crash_notes_memory_init+0x0/0x38() returned 0.
initcall 0xc0618c2c ran for 0 msecs: crash_notes_memory_init+0x0/0x38()
Calling initcall 0xc0618c64: ikconfig_init+0x0/0x3b()
initcall 0xc0618c64: ikconfig_init+0x0/0x3b() returned 0.
initcall 0xc0618c64 ran for 0 msecs: ikconfig_init+0x0/0x3b()
Calling initcall 0xc0618d11: audit_init+0x0/0x10b()
audit: initializing netlink socket (disabled)
audit(1181035938.234:1): initialized
initcall 0xc0618d11: audit_init+0x0/0x10b() returned 0.
initcall 0xc0618d11 ran for 7 msecs: audit_init+0x0/0x10b()
Calling initcall 0xc0618e91: init_kprobes+0x0/0x4a()
initcall 0xc0618e91: init_kprobes+0x0/0x4a() returned 0.
initcall 0xc0618e91 ran for 0 msecs: init_kprobes+0x0/0x4a()
Calling initcall 0xc0619076: relay_init+0x0/0x7()
initcall 0xc0619076: relay_init+0x0/0x7() returned 0.
initcall 0xc0619076 ran for 0 msecs: relay_init+0x0/0x7()
Calling initcall 0xc061907d: utsname_sysctl_init+0x0/0x11()
initcall 0xc061907d: utsname_sysctl_init+0x0/0x11() returned 0.
initcall 0xc061907d ran for 0 msecs: utsname_sysctl_init+0x0/0x11()
Calling initcall 0xc061a5ca: init_per_zone_pages_min+0x0/0x3c()
initcall 0xc061a5ca: init_per_zone_pages_min+0x0/0x3c() returned 0.
initcall 0xc061a5ca ran for 0 msecs: init_per_zone_pages_min+0x0/0x3c()
Calling initcall 0xc061a8a0: pdflush_init+0x0/0x16()
initcall 0xc061a8a0: pdflush_init+0x0/0x16() returned 0.
initcall 0xc061a8a0 ran for 0 msecs: pdflush_init+0x0/0x16()
Calling initcall 0xc061a8d5: kswapd_init+0x0/0x1c()
initcall 0xc061a8d5: kswapd_init+0x0/0x1c() returned 0.
initcall 0xc061a8d5 ran for 0 msecs: kswapd_init+0x0/0x1c()
Calling initcall 0xc061a8f1: setup_vmstat+0x0/0x3e()
initcall 0xc061a8f1: setup_vmstat+0x0/0x3e() returned 0.
initcall 0xc061a8f1 ran for 0 msecs: setup_vmstat+0x0/0x3e()
Calling initcall 0xc061aa51: init_emergency_pool+0x0/0x62()
highmem bounce pool size: 64 pages
initcall 0xc061aa51: init_emergency_pool+0x0/0x62() returned 0.
initcall 0xc061aa51 ran for 2 msecs: init_emergency_pool+0x0/0x62()
Calling initcall 0xc061aab3: procswaps_init+0x0/0x20()
initcall 0xc061aab3: procswaps_init+0x0/0x20() returned 0.
initcall 0xc061aab3 ran for 0 msecs: procswaps_init+0x0/0x20()
Calling initcall 0xc061aad3: kprefetchd_init+0x0/0x3f()
initcall 0xc061aad3: kprefetchd_init+0x0/0x3f() returned 0.
initcall 0xc061aad3 ran for 0 msecs: kprefetchd_init+0x0/0x3f()
Calling initcall 0xc061ab8f: hugetlb_init+0x0/0x59()
Total HugeTLB memory allocated, 0
initcall 0xc061ab8f: hugetlb_init+0x0/0x59() returned 0.
initcall 0xc061ab8f ran for 2 msecs: hugetlb_init+0x0/0x59()
Calling initcall 0xc061ac1e: init_tmpfs+0x0/0xbf()
initcall 0xc061ac1e: init_tmpfs+0x0/0xbf() returned 0.
initcall 0xc061ac1e ran for 0 msecs: init_tmpfs+0x0/0xbf()
Calling initcall 0xc061acf1: cpucache_init+0x0/0x2f()
initcall 0xc061acf1: cpucache_init+0x0/0x2f() returned 0.
initcall 0xc061acf1 ran for 0 msecs: cpucache_init+0x0/0x2f()
Calling initcall 0xc061b3e1: fasync_init+0x0/0x37()
initcall 0xc061b3e1: fasync_init+0x0/0x37() returned 0.
initcall 0xc061b3e1 ran for 0 msecs: fasync_init+0x0/0x37()
Calling initcall 0xc061b9b4: aio_setup+0x0/0x7d()
initcall 0xc061b9b4: aio_setup+0x0/0x7d() returned 0.
initcall 0xc061b9b4 ran for 0 msecs: aio_setup+0x0/0x7d()
Calling initcall 0xc061bc46: inotify_setup+0x0/0x11()
initcall 0xc061bc46: inotify_setup+0x0/0x11() returned 0.
initcall 0xc061bc46 ran for 0 msecs: inotify_setup+0x0/0x11()
Calling initcall 0xc061bc57: inotify_user_setup+0x0/0xc3()
initcall 0xc061bc57: inotify_user_setup+0x0/0xc3() returned 0.
initcall 0xc061bc57 ran for 0 msecs: inotify_user_setup+0x0/0xc3()
Calling initcall 0xc061bee9: init_mbcache+0x0/0x11()
initcall 0xc061bee9: init_mbcache+0x0/0x11() returned 0.
initcall 0xc061bee9 ran for 0 msecs: init_mbcache+0x0/0x11()
Calling initcall 0xc061befa: dquot_init+0x0/0xed()
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
initcall 0xc061befa: dquot_init+0x0/0xed() returned 0.
initcall 0xc061befa ran for 7 msecs: dquot_init+0x0/0xed()
Calling initcall 0xc061bfe7: init_v2_quota_format+0x0/0xf()
initcall 0xc061bfe7: init_v2_quota_format+0x0/0xf() returned 0.
initcall 0xc061bfe7 ran for 0 msecs: init_v2_quota_format+0x0/0xf()
Calling initcall 0xc061bff6: dnotify_init+0x0/0x37()
initcall 0xc061bff6: dnotify_init+0x0/0x37() returned 0.
initcall 0xc061bff6 ran for 0 msecs: dnotify_init+0x0/0x37()
Calling initcall 0xc061c40a: init_devpts_fs+0x0/0x30()
initcall 0xc061c40a: init_devpts_fs+0x0/0x30() returned 0.
initcall 0xc061c40a ran for 0 msecs: init_devpts_fs+0x0/0x30()
Calling initcall 0xc061c43a: init_ext3_fs+0x0/0x6e()
initcall 0xc061c43a: init_ext3_fs+0x0/0x6e() returned 0.
initcall 0xc061c43a ran for 0 msecs: init_ext3_fs+0x0/0x6e()
Calling initcall 0xc061c568: journal_init+0x0/0xd8()
initcall 0xc061c568: journal_init+0x0/0xd8() returned 0.
initcall 0xc061c568 ran for 0 msecs: journal_init+0x0/0xd8()
Calling initcall 0xc061c640: init_ext2_fs+0x0/0x6e()
initcall 0xc061c640: init_ext2_fs+0x0/0x6e() returned 0.
initcall 0xc061c640 ran for 0 msecs: init_ext2_fs+0x0/0x6e()
Calling initcall 0xc061c6e2: init_ramfs_fs+0x0/0xf()
initcall 0xc061c6e2: init_ramfs_fs+0x0/0xf() returned 0.
initcall 0xc061c6e2 ran for 0 msecs: init_ramfs_fs+0x0/0xf()
Calling initcall 0xc061c700: init_hugetlbfs_fs+0x0/0x7d()
initcall 0xc061c700: init_hugetlbfs_fs+0x0/0x7d() returned 0.
initcall 0xc061c700 ran for 0 msecs: init_hugetlbfs_fs+0x0/0x7d()
Calling initcall 0xc061c77d: init_iso9660_fs+0x0/0x70()
initcall 0xc061c77d: init_iso9660_fs+0x0/0x70() returned 0.
initcall 0xc061c77d ran for 0 msecs: init_iso9660_fs+0x0/0x70()
Calling initcall 0xc061c84e: init_nls_cp437+0x0/0xf()
initcall 0xc061c84e: init_nls_cp437+0x0/0xf() returned 0.
initcall 0xc061c84e ran for 0 msecs: init_nls_cp437+0x0/0xf()
Calling initcall 0xc061c85d: init_nls_ascii+0x0/0xf()
initcall 0xc061c85d: init_nls_ascii+0x0/0xf() returned 0.
initcall 0xc061c85d ran for 0 msecs: init_nls_ascii+0x0/0xf()
Calling initcall 0xc061c86c: ipc_init+0x0/0x16()
initcall 0xc061c86c: ipc_init+0x0/0x16() returned 0.
initcall 0xc061c86c ran for 0 msecs: ipc_init+0x0/0x16()
Calling initcall 0xc061ca8d: ipc_sysctl_init+0x0/0x11()
initcall 0xc061ca8d: ipc_sysctl_init+0x0/0x11() returned 0.
initcall 0xc061ca8d ran for 0 msecs: ipc_sysctl_init+0x0/0x11()
Calling initcall 0xc061ca9e: init_mqueue_fs+0x0/0xb8()
initcall 0xc061ca9e: init_mqueue_fs+0x0/0xb8() returned 0.
initcall 0xc061ca9e ran for 0 msecs: init_mqueue_fs+0x0/0xb8()
Calling initcall 0xc061cc9e: selinux_nf_ip_init+0x0/0x57()
SELinux:  Registering netfilter hooks
initcall 0xc061cc9e: selinux_nf_ip_init+0x0/0x57() returned 0.
initcall 0xc061cc9e ran for 3 msecs: selinux_nf_ip_init+0x0/0x57()
Calling initcall 0xc061ce18: init_sel_fs+0x0/0x52()
initcall 0xc061ce18: init_sel_fs+0x0/0x52() returned 0.
initcall 0xc061ce18 ran for 0 msecs: init_sel_fs+0x0/0x52()
Calling initcall 0xc061ce6a: selnl_init+0x0/0x4d()
initcall 0xc061ce6a: selnl_init+0x0/0x4d() returned 0.
initcall 0xc061ce6a ran for 0 msecs: selnl_init+0x0/0x4d()
Calling initcall 0xc061ceb7: sel_netif_init+0x0/0x6d()
initcall 0xc061ceb7: sel_netif_init+0x0/0x6d() returned 0.
initcall 0xc061ceb7 ran for 0 msecs: sel_netif_init+0x0/0x6d()
Calling initcall 0xc061cf24: aurule_init+0x0/0x46()
initcall 0xc061cf24: aurule_init+0x0/0x46() returned 0.
initcall 0xc061cf24 ran for 0 msecs: aurule_init+0x0/0x46()
Calling initcall 0xc061cfec: crypto_algapi_init+0x0/0xc()
initcall 0xc061cfec: crypto_algapi_init+0x0/0xc() returned 0.
initcall 0xc061cfec ran for 0 msecs: crypto_algapi_init+0x0/0xc()
Calling initcall 0xc061d016: cryptomgr_init+0x0/0xf()
initcall 0xc061d016: cryptomgr_init+0x0/0xf() returned 0.
initcall 0xc061d016 ran for 0 msecs: cryptomgr_init+0x0/0xf()
Calling initcall 0xc061d025: hmac_module_init+0x0/0xf()
initcall 0xc061d025: hmac_module_init+0x0/0xf() returned 0.
initcall 0xc061d025 ran for 0 msecs: hmac_module_init+0x0/0xf()
Calling initcall 0xc061d034: init+0x0/0xf()
initcall 0xc061d034: init+0x0/0xf() returned 0.
initcall 0xc061d034 ran for 0 msecs: init+0x0/0xf()
Calling initcall 0xc061d043: init+0x0/0xf()
initcall 0xc061d043: init+0x0/0xf() returned 0.
initcall 0xc061d043 ran for 0 msecs: init+0x0/0xf()
Calling initcall 0xc061d344: noop_init+0x0/0xf()
io scheduler noop registered
initcall 0xc061d344: noop_init+0x0/0xf() returned 0.
initcall 0xc061d344 ran for 2 msecs: noop_init+0x0/0xf()
Calling initcall 0xc061d353: as_init+0x0/0xf()
io scheduler anticipatory registered (default)
initcall 0xc061d353: as_init+0x0/0xf() returned 0.
initcall 0xc061d353 ran for 3 msecs: as_init+0x0/0xf()
Calling initcall 0xc061d362: deadline_init+0x0/0xf()
io scheduler deadline registered
initcall 0xc061d362: deadline_init+0x0/0xf() returned 0.
initcall 0xc061d362 ran for 2 msecs: deadline_init+0x0/0xf()
Calling initcall 0xc061d371: cfq_init+0x0/0xbc()
io scheduler cfq registered
initcall 0xc061d371: cfq_init+0x0/0xbc() returned 0.
initcall 0xc061d371 ran for 2 msecs: cfq_init+0x0/0xbc()
Calling initcall 0xc061d596: audit_classes_init+0x0/0x4f()
initcall 0xc061d596: audit_classes_init+0x0/0x4f() returned 0.
initcall 0xc061d596 ran for 0 msecs: audit_classes_init+0x0/0x4f()
Calling initcall 0xc01fb182: pci_init+0x0/0x2c()
PCI: Linking AER extended capability on 0000:00:0b.0
PCI: Linking AER extended capability on 0000:00:0c.0
PCI: Linking AER extended capability on 0000:00:0d.0
PCI: Linking AER extended capability on 0000:00:0e.0
Boot video device is 0000:01:00.0
initcall 0xc01fb182: pci_init+0x0/0x2c() returned 0.
initcall 0xc01fb182 ran for 32 msecs: pci_init+0x0/0x2c()
Calling initcall 0xc061db4e: pci_proc_init+0x0/0x5f()
initcall 0xc061db4e: pci_proc_init+0x0/0x5f() returned 0.
initcall 0xc061db4e ran for 0 msecs: pci_proc_init+0x0/0x5f()
Calling initcall 0xc061dbad: pci_hotplug_init+0x0/0x57()
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
initcall 0xc061dbad: pci_hotplug_init+0x0/0x57() returned 0.
initcall 0xc061dbad ran for 4 msecs: pci_hotplug_init+0x0/0x57()
Calling initcall 0xc061ddab: fb_console_init+0x0/0x10b()
initcall 0xc061ddab: fb_console_init+0x0/0x10b() returned 0.
initcall 0xc061ddab ran for 0 msecs: fb_console_init+0x0/0x10b()
Calling initcall 0xc061e7c0: vesafb_init+0x0/0x271()
initcall 0xc061e7c0: vesafb_init+0x0/0x271() returned 0.
initcall 0xc061e7c0 ran for 0 msecs: vesafb_init+0x0/0x271()
Calling initcall 0xc061ee85: acpi_reserve_resources+0x0/0xc8()
initcall 0xc061ee85: acpi_reserve_resources+0x0/0xc8() returned 0.
initcall 0xc061ee85 ran for 0 msecs: acpi_reserve_resources+0x0/0xc8()
Calling initcall 0xc061f9f4: acpi_fan_init+0x0/0x51()
ACPI: Fan [FAN] (on)
initcall 0xc061f9f4: acpi_fan_init+0x0/0x51() returned 0.
initcall 0xc061f9f4 ran for 1 msecs: acpi_fan_init+0x0/0x51()
Calling initcall 0xc061fb0b: irqrouter_init_sysfs+0x0/0x33()
initcall 0xc061fb0b: irqrouter_init_sysfs+0x0/0x33() returned 0.
initcall 0xc061fb0b ran for 0 msecs: irqrouter_init_sysfs+0x0/0x33()
Calling initcall 0xc061fc81: acpi_processor_init+0x0/0xa4()
initcall 0xc061fc81: acpi_processor_init+0x0/0xa4() returned 0.
initcall 0xc061fc81 ran for 0 msecs: acpi_processor_init+0x0/0xa4()
Calling initcall 0xc0620669: acpi_container_init+0x0/0x45()
initcall 0xc0620669: acpi_container_init+0x0/0x45() returned 0.
initcall 0xc0620669 ran for 5 msecs: acpi_container_init+0x0/0x45()
Calling initcall 0xc06206ae: acpi_thermal_init+0x0/0x51()
ACPI: Thermal Zone [THRM] (40 C)
initcall 0xc06206ae: acpi_thermal_init+0x0/0x51() returned 0.
initcall 0xc06206ae ran for 3 msecs: acpi_thermal_init+0x0/0x51()
Calling initcall 0xc0620eca: rand_initialize+0x0/0x25()
initcall 0xc0620eca: rand_initialize+0x0/0x25() returned 0.
initcall 0xc0620eca ran for 0 msecs: rand_initialize+0x0/0x25()
Calling initcall 0xc0620f39: tty_init+0x0/0x1c9()
initcall 0xc0620f39: tty_init+0x0/0x1c9() returned 0.
initcall 0xc0620f39 ran for 2 msecs: tty_init+0x0/0x1c9()
Calling initcall 0xc0621102: pty_init+0x0/0x20f()
initcall 0xc0621102: pty_init+0x0/0x20f() returned 0.
initcall 0xc0621102 ran for 0 msecs: pty_init+0x0/0x20f()
Calling initcall 0xc06218be: hvc_lguest_init+0x0/0xf()
initcall 0xc06218be: hvc_lguest_init+0x0/0xf() returned 0.
initcall 0xc06218be ran for 0 msecs: hvc_lguest_init+0x0/0xf()
Calling initcall 0xc06218fe: hvc_init+0x0/0xe2()
initcall 0xc06218fe: hvc_init+0x0/0xe2() returned 0.
initcall 0xc06218fe ran for 0 msecs: hvc_init+0x0/0xe2()
Calling initcall 0xc06219e0: raw_init+0x0/0xc9()
initcall 0xc06219e0: raw_init+0x0/0xc9() returned 0.
initcall 0xc06219e0 ran for 0 msecs: raw_init+0x0/0xc9()
Calling initcall 0xc0621aa9: rtc_init+0x0/0x1bf()
Real Time Clock Driver v1.12ac
initcall 0xc0621aa9: rtc_init+0x0/0x1bf() returned 0.
initcall 0xc0621aa9 ran for 2 msecs: rtc_init+0x0/0x1bf()
Calling initcall 0xc0621c68: agp_init+0x0/0x2f()
Linux agpgart interface v0.102 (c) Dave Jones
initcall 0xc0621c68: agp_init+0x0/0x2f() returned 0.
initcall 0xc0621c68 ran for 3 msecs: agp_init+0x0/0x2f()
Calling initcall 0xc0621cfb: agp_ali_init+0x0/0x24()
initcall 0xc0621cfb: agp_ali_init+0x0/0x24() returned 0.
initcall 0xc0621cfb ran for 0 msecs: agp_ali_init+0x0/0x24()
Calling initcall 0xc0621d1f: agp_ati_init+0x0/0x24()
initcall 0xc0621d1f: agp_ati_init+0x0/0x24() returned 0.
initcall 0xc0621d1f ran for 0 msecs: agp_ati_init+0x0/0x24()
Calling initcall 0xc0621d43: agp_amdk7_init+0x0/0x24()
initcall 0xc0621d43: agp_amdk7_init+0x0/0x24() returned 0.
initcall 0xc0621d43 ran for 0 msecs: agp_amdk7_init+0x0/0x24()
Calling initcall 0xc0621d67: agp_amd64_init+0x0/0xa7()
initcall 0xc0621d67: agp_amd64_init+0x0/0xa7() returned 0.
initcall 0xc0621d67 ran for 0 msecs: agp_amd64_init+0x0/0xa7()
Calling initcall 0xc0621e0e: agp_efficeon_init+0x0/0x39()
initcall 0xc0621e0e: agp_efficeon_init+0x0/0x39() returned 0.
initcall 0xc0621e0e ran for 0 msecs: agp_efficeon_init+0x0/0x39()
Calling initcall 0xc0621e47: agp_intel_init+0x0/0x31()
agpgart: suspend/resume problematic: resume with 3D/DRI active may lockup X.Org
on some chipset/BIOS combos (see DEBUG_AGP_PM in intel-agp.c)
initcall 0xc0621e47: agp_intel_init+0x0/0x31() returned 0.
initcall 0xc0621e47 ran for 11 msecs: agp_intel_init+0x0/0x31()
Calling initcall 0xc0621e78: agp_nvidia_init+0x0/0x24()
initcall 0xc0621e78: agp_nvidia_init+0x0/0x24() returned 0.
initcall 0xc0621e78 ran for 0 msecs: agp_nvidia_init+0x0/0x24()
Calling initcall 0xc0621e9c: agp_sis_init+0x0/0x24()
initcall 0xc0621e9c: agp_sis_init+0x0/0x24() returned 0.
initcall 0xc0621e9c ran for 0 msecs: agp_sis_init+0x0/0x24()
Calling initcall 0xc0621ec0: agp_serverworks_init+0x0/0x24()
initcall 0xc0621ec0: agp_serverworks_init+0x0/0x24() returned 0.
initcall 0xc0621ec0 ran for 0 msecs: agp_serverworks_init+0x0/0x24()
Calling initcall 0xc0621ee4: agp_via_init+0x0/0x24()
initcall 0xc0621ee4: agp_via_init+0x0/0x24() returned 0.
initcall 0xc0621ee4 ran for 0 msecs: agp_via_init+0x0/0x24()
Calling initcall 0xc0621f08: drm_core_init+0x0/0x12d()
[drm] Initialized drm 1.1.0 20060810
initcall 0xc0621f08: drm_core_init+0x0/0x12d() returned 0.
initcall 0xc0621f08 ran for 3 msecs: drm_core_init+0x0/0x12d()
Calling initcall 0xc0622035: i810_init+0x0/0x19()
initcall 0xc0622035: i810_init+0x0/0x19() returned 0.
initcall 0xc0622035 ran for 0 msecs: i810_init+0x0/0x19()
Calling initcall 0xc062204e: i915_init+0x0/0x19()
initcall 0xc062204e: i915_init+0x0/0x19() returned 0.
initcall 0xc062204e ran for 0 msecs: i915_init+0x0/0x19()
Calling initcall 0xc06223e9: serial8250_init+0x0/0x103()
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
initcall 0xc06223e9: serial8250_init+0x0/0x103() returned 0.
initcall 0xc06223e9 ran for 6 msecs: serial8250_init+0x0/0x103()
Calling initcall 0xc06224ec: serial8250_pci_init+0x0/0x16()
initcall 0xc06224ec: serial8250_pci_init+0x0/0x16() returned 0.
initcall 0xc06224ec ran for 0 msecs: serial8250_pci_init+0x0/0x16()
Calling initcall 0xc0622aeb: isa_bus_init+0x0/0x33()
initcall 0xc0622aeb: isa_bus_init+0x0/0x33() returned 0.
initcall 0xc0622aeb ran for 0 msecs: isa_bus_init+0x0/0x33()
Calling initcall 0xc0622b84: topology_sysfs_init+0x0/0x48()
initcall 0xc0622b84: topology_sysfs_init+0x0/0x48() returned 0.
initcall 0xc0622b84 ran for 0 msecs: topology_sysfs_init+0x0/0x48()
Calling initcall 0xc0622bcc: rd_init+0x0/0x18d()
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
initcall 0xc0622bcc: rd_init+0x0/0x18d() returned 0.
initcall 0xc0622bcc ran for 6 msecs: rd_init+0x0/0x18d()
Calling initcall 0xc062326a: cpqarray_init+0x0/0x23a()
Compaq SMART2 Driver (v 2.6.0)
initcall 0xc062326a: cpqarray_init+0x0/0x23a() returned 0.
initcall 0xc062326a ran for 2 msecs: cpqarray_init+0x0/0x23a()
Calling initcall 0xc06237b2: pkt_init+0x0/0x159()
initcall 0xc06237b2: pkt_init+0x0/0x159() returned 0.
initcall 0xc06237b2 ran for 0 msecs: pkt_init+0x0/0x159()
Calling initcall 0xc062390b: lguestblk_init+0x0/0xf()
initcall 0xc062390b: lguestblk_init+0x0/0xf() returned 0.
initcall 0xc062390b ran for 0 msecs: lguestblk_init+0x0/0xf()
Calling initcall 0xc062391a: e1000_init_module+0x0/0x80()
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
initcall 0xc062391a: e1000_init_module+0x0/0x80() returned 0.
initcall 0xc062391a ran for 8 msecs: e1000_init_module+0x0/0x80()
Calling initcall 0xc062399a: e100_init_module+0x0/0x5a()
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation
initcall 0xc062399a: e100_init_module+0x0/0x5a() returned 0.
initcall 0xc062399a ran for 8 msecs: e100_init_module+0x0/0x5a()
Calling initcall 0xc06239f4: tg3_init+0x0/0x16()
initcall 0xc06239f4: tg3_init+0x0/0x16() returned 0.
initcall 0xc06239f4 ran for 0 msecs: tg3_init+0x0/0x16()
Calling initcall 0xc0623a0a: skge_init_module+0x0/0x16()
initcall 0xc0623a0a: skge_init_module+0x0/0x16() returned 0.
initcall 0xc0623a0a ran for 0 msecs: skge_init_module+0x0/0x16()
Calling initcall 0xc0623a61: net_olddevs_init+0x0/0x89()
initcall 0xc0623a61: net_olddevs_init+0x0/0x89() returned 0.
initcall 0xc0623a61 ran for 0 msecs: net_olddevs_init+0x0/0x89()
Calling initcall 0xc0623aea: loopback_init+0x0/0xf()
initcall 0xc0623aea: loopback_init+0x0/0xf() returned 0.
initcall 0xc0623aea ran for 0 msecs: loopback_init+0x0/0xf()
Calling initcall 0xc0623af9: init_nic+0x0/0x2c()
forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.60.
ACPI: PCI Interrupt Link [APCH] enabled at IRQ 23
ACPI: PCI Interrupt 0000:00:0a.0[A] -> Link [APCH] -> GSI 23 (level, low) -> IRQ 16
PCI: Setting latency timer of device 0000:00:0a.0 to 64
forcedeth: using HIGHDMA
eth0: forcedeth.c: subsystem: 01043:8141 bound to 0000:00:0a.0
initcall 0xc0623af9: init_nic+0x0/0x2c() returned 0.
initcall 0xc0623af9 ran for 518 msecs: init_nic+0x0/0x2c()
Calling initcall 0xc0623b25: rtl8139_init_module+0x0/0x16()
8139too Fast Ethernet driver 0.9.28
ACPI: PCI Interrupt Link [APC2] enabled at IRQ 17
ACPI: PCI Interrupt 0000:05:07.0[A] -> Link [APC2] -> GSI 17 (level, low) -> IRQ 17
eth1: RealTek RTL8139 at 0xf881c000, 00:c0:df:03:68:5d, IRQ 17
eth1:  Identified 8139 chip type 'RTL-8139B'
initcall 0xc0623b25: rtl8139_init_module+0x0/0x16() returned 0.
initcall 0xc0623b25 ran for 23 msecs: rtl8139_init_module+0x0/0x16()
Calling initcall 0xc0623b3b: rtl8169_init_module+0x0/0x16()
initcall 0xc0623b3b: rtl8169_init_module+0x0/0x16() returned 0.
initcall 0xc0623b3b ran for 0 msecs: rtl8169_init_module+0x0/0x16()
Calling initcall 0xc02bbeb3: init_netconsole+0x0/0x67()
netconsole: not configured, aborting
initcall 0xc02bbeb3: init_netconsole+0x0/0x67() returned 0.
initcall 0xc02bbeb3 ran for 3 msecs: init_netconsole+0x0/0x67()
Calling initcall 0xc0623b51: lguestnet_init+0x0/0xf()
initcall 0xc0623b51: lguestnet_init+0x0/0xf() returned 0.
initcall 0xc0623b51 ran for 0 msecs: lguestnet_init+0x0/0xf()
Calling initcall 0xc0623dbb: spi_transport_init+0x0/0x27()
initcall 0xc0623dbb: spi_transport_init+0x0/0x27() returned 0.
initcall 0xc0623dbb ran for 0 msecs: spi_transport_init+0x0/0x27()
Calling initcall 0xc0623de2: sas_transport_init+0x0/0x9f()
initcall 0xc0623de2: sas_transport_init+0x0/0x9f() returned 0.
initcall 0xc0623de2 ran for 0 msecs: sas_transport_init+0x0/0x9f()
Calling initcall 0xc0623e81: sas_class_init+0x0/0x3d()
initcall 0xc0623e81: sas_class_init+0x0/0x3d() returned 0.
initcall 0xc0623e81 ran for 0 msecs: sas_class_init+0x0/0x3d()
Calling initcall 0xc0623ebe: ahc_linux_init+0x0/0x5c()
initcall 0xc0623ebe: ahc_linux_init+0x0/0x5c() returned 0.
initcall 0xc0623ebe ran for 0 msecs: ahc_linux_init+0x0/0x5c()
Calling initcall 0xc0623f1a: ahd_linux_init+0x0/0x6e()
initcall 0xc0623f1a: ahd_linux_init+0x0/0x6e() returned 0.
initcall 0xc0623f1a ran for 0 msecs: ahd_linux_init+0x0/0x6e()
Calling initcall 0xc0623f88: aic94xx_init+0x0/0x12e()
aic94xx: Adaptec aic94xx SAS/SATA driver version 1.0.3 loaded
initcall 0xc0623f88: aic94xx_init+0x0/0x12e() returned 0.
initcall 0xc0623f88 ran for 5 msecs: aic94xx_init+0x0/0x12e()
Calling initcall 0xc06240b6: init_sd+0x0/0xd6()
initcall 0xc06240b6: init_sd+0x0/0xd6() returned 0.
initcall 0xc06240b6 ran for 0 msecs: init_sd+0x0/0xd6()
Calling initcall 0xc062418c: init_sr+0x0/0x22()
initcall 0xc062418c: init_sr+0x0/0x22() returned 0.
initcall 0xc062418c ran for 0 msecs: init_sr+0x0/0x22()
Calling initcall 0xc06241ae: init_sg+0x0/0x12a()
initcall 0xc06241ae: init_sg+0x0/0x12a() returned 0.
initcall 0xc06241ae ran for 0 msecs: init_sg+0x0/0x12a()
Calling initcall 0xc06242d8: init_ch_module+0x0/0x90()
SCSI Media Changer driver v0.25 
initcall 0xc06242d8: init_ch_module+0x0/0x90() returned 0.
initcall 0xc06242d8 ran for 2 msecs: init_ch_module+0x0/0x90()
Calling initcall 0xc06243d4: ahci_init+0x0/0x16()
initcall 0xc06243d4: ahci_init+0x0/0x16() returned 0.
initcall 0xc06243d4 ran for 0 msecs: ahci_init+0x0/0x16()
Calling initcall 0xc06243ea: k2_sata_init+0x0/0x16()
initcall 0xc06243ea: k2_sata_init+0x0/0x16() returned 0.
initcall 0xc06243ea ran for 0 msecs: k2_sata_init+0x0/0x16()
Calling initcall 0xc0624400: piix_init+0x0/0x27()
initcall 0xc0624400: piix_init+0x0/0x27() returned 0.
initcall 0xc0624400 ran for 0 msecs: piix_init+0x0/0x27()
Calling initcall 0xc0624427: pdc_ata_init+0x0/0x16()
initcall 0xc0624427: pdc_ata_init+0x0/0x16() returned 0.
initcall 0xc0624427 ran for 0 msecs: pdc_ata_init+0x0/0x16()
Calling initcall 0xc062443d: qs_ata_init+0x0/0x16()
initcall 0xc062443d: qs_ata_init+0x0/0x16() returned 0.
initcall 0xc062443d ran for 0 msecs: qs_ata_init+0x0/0x16()
Calling initcall 0xc0624453: sil_init+0x0/0x16()
initcall 0xc0624453: sil_init+0x0/0x16() returned 0.
initcall 0xc0624453 ran for 0 msecs: sil_init+0x0/0x16()
Calling initcall 0xc0624469: sil24_init+0x0/0x16()
initcall 0xc0624469: sil24_init+0x0/0x16() returned 0.
initcall 0xc0624469 ran for 0 msecs: sil24_init+0x0/0x16()
Calling initcall 0xc062447f: svia_init+0x0/0x16()
initcall 0xc062447f: svia_init+0x0/0x16() returned 0.
initcall 0xc062447f ran for 0 msecs: svia_init+0x0/0x16()
Calling initcall 0xc0624495: vsc_sata_init+0x0/0x16()
initcall 0xc0624495: vsc_sata_init+0x0/0x16() returned 0.
initcall 0xc0624495 ran for 0 msecs: vsc_sata_init+0x0/0x16()
Calling initcall 0xc06244ab: sis_init+0x0/0x16()
initcall 0xc06244ab: sis_init+0x0/0x16() returned 0.
initcall 0xc06244ab ran for 0 msecs: sis_init+0x0/0x16()
Calling initcall 0xc06244c1: pdc_sata_init+0x0/0x16()
initcall 0xc06244c1: pdc_sata_init+0x0/0x16() returned 0.
initcall 0xc06244c1 ran for 0 msecs: pdc_sata_init+0x0/0x16()
Calling initcall 0xc06244d7: nv_init+0x0/0x16()
initcall 0xc06244d7: nv_init+0x0/0x16() returned 0.
initcall 0xc06244d7 ran for 0 msecs: nv_init+0x0/0x16()
Calling initcall 0xc06244ed: uli_init+0x0/0x16()
initcall 0xc06244ed: uli_init+0x0/0x16() returned 0.
initcall 0xc06244ed ran for 0 msecs: uli_init+0x0/0x16()
Calling initcall 0xc0624503: mv_init+0x0/0x16()
initcall 0xc0624503: mv_init+0x0/0x16() returned 0.
initcall 0xc0624503 ran for 0 msecs: mv_init+0x0/0x16()
Calling initcall 0xc0624519: adma_ata_init+0x0/0x16()
initcall 0xc0624519: adma_ata_init+0x0/0x16() returned 0.
initcall 0xc0624519 ran for 0 msecs: adma_ata_init+0x0/0x16()
Calling initcall 0xc062452f: ali_init+0x0/0x16()
initcall 0xc062452f: ali_init+0x0/0x16() returned 0.
initcall 0xc062452f ran for 0 msecs: ali_init+0x0/0x16()
Calling initcall 0xc0624545: amd_init+0x0/0x16()
pata_amd 0000:00:06.0: version 0.3.8
PCI: Setting latency timer of device 0000:00:06.0 to 64
scsi0 : pata_amd
scsi1 : pata_amd
ata1: PATA max UDMA/133 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001f000 irq 14
ata2: PATA max UDMA/133 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001f008 irq 15
ata1.00: ata_hpa_resize 1: sectors = 78177792, hpa_sectors = 78177792
ata1.00: ATA-5: MAXTOR 6L040J2, AR1.0500, max UDMA/133
ata1.00: 78177792 sectors, multi 1: LBA 
ata1.01: ata_hpa_resize 1: sectors = 156301488, hpa_sectors = 156301488
ata1.01: ATA-6: ST380011A, 3.06, max UDMA/100
ata1.01: 156301488 sectors, multi 1: LBA48 
ata1.00: ata_hpa_resize 1: sectors = 78177792, hpa_sectors = 78177792
ata1.00: configured for UDMA/133
ata1.01: ata_hpa_resize 1: sectors = 156301488, hpa_sectors = 156301488
ata1.01: configured for UDMA/100
ATA: abnormal status 0x38 on port 0x00010177
scsi 0:0:0:0: Direct-Access     ATA      MAXTOR 6L040J2   AR1. PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 78177792 512-byte hardware sectors (40027 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 78177792 512-byte hardware sectors (40027 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sda: sda1 sda2 sda3 sda4 < sda5 >
sd 0:0:0:0: [sda] Attached SCSI disk
sd 0:0:0:0: Attached scsi generic sg0 type 0
scsi 0:0:1:0: Direct-Access     ATA      ST380011A        3.06 PQ: 0 ANSI: 5
sd 0:0:1:0: [sdb] 156301488 512-byte hardware sectors (80026 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:1:0: [sdb] 156301488 512-byte hardware sectors (80026 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sdb: sdb1 sdb2 sdb3 < sdb5 >
sd 0:0:1:0: [sdb] Attached SCSI disk
sd 0:0:1:0: Attached scsi generic sg1 type 0
initcall 0xc0624545: amd_init+0x0/0x16() returned 0.
initcall 0xc0624545 ran for 662 msecs: amd_init+0x0/0x16()
Calling initcall 0xc062455b: artop_init+0x0/0x16()
initcall 0xc062455b: artop_init+0x0/0x16() returned 0.
initcall 0xc062455b ran for 0 msecs: artop_init+0x0/0x16()
Calling initcall 0xc0624571: atiixp_init+0x0/0x16()
initcall 0xc0624571: atiixp_init+0x0/0x16() returned 0.
initcall 0xc0624571 ran for 0 msecs: atiixp_init+0x0/0x16()
Calling initcall 0xc0624587: cmd64x_init+0x0/0x16()
initcall 0xc0624587: cmd64x_init+0x0/0x16() returned 0.
initcall 0xc0624587 ran for 0 msecs: cmd64x_init+0x0/0x16()
Calling initcall 0xc062459d: cs5520_init+0x0/0x16()
initcall 0xc062459d: cs5520_init+0x0/0x16() returned 0.
initcall 0xc062459d ran for 0 msecs: cs5520_init+0x0/0x16()
Calling initcall 0xc06245b3: cs5530_init+0x0/0x16()
initcall 0xc06245b3: cs5530_init+0x0/0x16() returned 0.
initcall 0xc06245b3 ran for 0 msecs: cs5530_init+0x0/0x16()
Calling initcall 0xc06245c9: cs5535_init+0x0/0x16()
initcall 0xc06245c9: cs5535_init+0x0/0x16() returned 0.
initcall 0xc06245c9 ran for 0 msecs: cs5535_init+0x0/0x16()
Calling initcall 0xc06245df: cy82c693_init+0x0/0x16()
initcall 0xc06245df: cy82c693_init+0x0/0x16() returned 0.
initcall 0xc06245df ran for 0 msecs: cy82c693_init+0x0/0x16()
Calling initcall 0xc06245f5: efar_init+0x0/0x16()
initcall 0xc06245f5: efar_init+0x0/0x16() returned 0.
initcall 0xc06245f5 ran for 0 msecs: efar_init+0x0/0x16()
Calling initcall 0xc062460b: hpt36x_init+0x0/0x16()
initcall 0xc062460b: hpt36x_init+0x0/0x16() returned 0.
initcall 0xc062460b ran for 0 msecs: hpt36x_init+0x0/0x16()
Calling initcall 0xc0624621: hpt37x_init+0x0/0x16()
initcall 0xc0624621: hpt37x_init+0x0/0x16() returned 0.
initcall 0xc0624621 ran for 0 msecs: hpt37x_init+0x0/0x16()
Calling initcall 0xc0624637: hpt3x2n_init+0x0/0x16()
initcall 0xc0624637: hpt3x2n_init+0x0/0x16() returned 0.
initcall 0xc0624637 ran for 0 msecs: hpt3x2n_init+0x0/0x16()
Calling initcall 0xc062464d: hpt3x3_init+0x0/0x16()
initcall 0xc062464d: hpt3x3_init+0x0/0x16() returned 0.
initcall 0xc062464d ran for 0 msecs: hpt3x3_init+0x0/0x16()
Calling initcall 0xc0624663: it821x_init+0x0/0x16()
initcall 0xc0624663: it821x_init+0x0/0x16() returned 0.
initcall 0xc0624663 ran for 0 msecs: it821x_init+0x0/0x16()
Calling initcall 0xc0624679: jmicron_init+0x0/0x16()
initcall 0xc0624679: jmicron_init+0x0/0x16() returned 0.
initcall 0xc0624679 ran for 0 msecs: jmicron_init+0x0/0x16()
Calling initcall 0xc062468f: netcell_init+0x0/0x16()
initcall 0xc062468f: netcell_init+0x0/0x16() returned 0.
initcall 0xc062468f ran for 0 msecs: netcell_init+0x0/0x16()
Calling initcall 0xc06246a5: ns87410_init+0x0/0x16()
initcall 0xc06246a5: ns87410_init+0x0/0x16() returned 0.
initcall 0xc06246a5 ran for 0 msecs: ns87410_init+0x0/0x16()
Calling initcall 0xc06246bb: opti_init+0x0/0x16()
initcall 0xc06246bb: opti_init+0x0/0x16() returned 0.
initcall 0xc06246bb ran for 0 msecs: opti_init+0x0/0x16()
Calling initcall 0xc06246d1: optidma_init+0x0/0x16()
initcall 0xc06246d1: optidma_init+0x0/0x16() returned 0.
initcall 0xc06246d1 ran for 0 msecs: optidma_init+0x0/0x16()
Calling initcall 0xc06246e7: marvell_init+0x0/0x16()
initcall 0xc06246e7: marvell_init+0x0/0x16() returned 0.
initcall 0xc06246e7 ran for 0 msecs: marvell_init+0x0/0x16()
Calling initcall 0xc06246fd: mpiix_init+0x0/0x16()
initcall 0xc06246fd: mpiix_init+0x0/0x16() returned 0.
initcall 0xc06246fd ran for 0 msecs: mpiix_init+0x0/0x16()
Calling initcall 0xc0624713: oldpiix_init+0x0/0x16()
initcall 0xc0624713: oldpiix_init+0x0/0x16() returned 0.
initcall 0xc0624713 ran for 0 msecs: oldpiix_init+0x0/0x16()
Calling initcall 0xc0624729: pdc2027x_init+0x0/0x16()
initcall 0xc0624729: pdc2027x_init+0x0/0x16() returned 0.
initcall 0xc0624729 ran for 0 msecs: pdc2027x_init+0x0/0x16()
Calling initcall 0xc062473f: pdc202xx_init+0x0/0x16()
initcall 0xc062473f: pdc202xx_init+0x0/0x16() returned 0.
initcall 0xc062473f ran for 0 msecs: pdc202xx_init+0x0/0x16()
Calling initcall 0xc06248d3: qdi_init+0x0/0x233()
initcall 0xc06248d3: qdi_init+0x0/0x233() returned -19.
initcall 0xc06248d3 ran for 0 msecs: qdi_init+0x0/0x233()
Calling initcall 0xc0624b06: radisys_init+0x0/0x16()
initcall 0xc0624b06: radisys_init+0x0/0x16() returned 0.
initcall 0xc0624b06 ran for 0 msecs: radisys_init+0x0/0x16()
Calling initcall 0xc0624b1c: rz1000_init+0x0/0x16()
initcall 0xc0624b1c: rz1000_init+0x0/0x16() returned 0.
initcall 0xc0624b1c ran for 0 msecs: rz1000_init+0x0/0x16()
Calling initcall 0xc0624b32: sc1200_init+0x0/0x16()
initcall 0xc0624b32: sc1200_init+0x0/0x16() returned 0.
initcall 0xc0624b32 ran for 0 msecs: sc1200_init+0x0/0x16()
Calling initcall 0xc0624b48: serverworks_init+0x0/0x16()
initcall 0xc0624b48: serverworks_init+0x0/0x16() returned 0.
initcall 0xc0624b48 ran for 0 msecs: serverworks_init+0x0/0x16()
Calling initcall 0xc0624b5e: sil680_init+0x0/0x16()
initcall 0xc0624b5e: sil680_init+0x0/0x16() returned 0.
initcall 0xc0624b5e ran for 0 msecs: sil680_init+0x0/0x16()
Calling initcall 0xc0624b74: via_init+0x0/0x16()
initcall 0xc0624b74: via_init+0x0/0x16() returned 0.
initcall 0xc0624b74 ran for 0 msecs: via_init+0x0/0x16()
Calling initcall 0xc0624b8a: sl82c105_init+0x0/0x16()
initcall 0xc0624b8a: sl82c105_init+0x0/0x16() returned 0.
initcall 0xc0624b8a ran for 0 msecs: sl82c105_init+0x0/0x16()
Calling initcall 0xc0624ba0: winbond_init+0x0/0x27b()
initcall 0xc0624ba0: winbond_init+0x0/0x27b() returned -19.
initcall 0xc0624ba0 ran for 0 msecs: winbond_init+0x0/0x27b()
Calling initcall 0xc0624e1b: sis_init+0x0/0x16()
initcall 0xc0624e1b: sis_init+0x0/0x16() returned 0.
initcall 0xc0624e1b ran for 0 msecs: sis_init+0x0/0x16()
Calling initcall 0xc0624e31: triflex_init+0x0/0x16()
initcall 0xc0624e31: triflex_init+0x0/0x16() returned 0.
initcall 0xc0624e31 ran for 0 msecs: triflex_init+0x0/0x16()
Calling initcall 0xc0624e47: ata_generic_init+0x0/0x16()
initcall 0xc0624e47: ata_generic_init+0x0/0x16() returned 0.
initcall 0xc0624e47 ran for 0 msecs: ata_generic_init+0x0/0x16()
Calling initcall 0xc0624e5d: fusion_init+0x0/0xdd()
Fusion MPT base driver 3.04.04
Copyright (c) 1999-2007 LSI Logic Corporation
initcall 0xc0624e5d: fusion_init+0x0/0xdd() returned 0.
initcall 0xc0624e5d ran for 6 msecs: fusion_init+0x0/0xdd()
Calling initcall 0xc0624f3a: mptspi_init+0x0/0xab()
Fusion MPT SPI Host driver 3.04.04
initcall 0xc0624f3a: mptspi_init+0x0/0xab() returned 0.
initcall 0xc0624f3a ran for 3 msecs: mptspi_init+0x0/0xab()
Calling initcall 0xc0624fe5: mptctl_init+0x0/0xf1()
Fusion MPT misc device (ioctl) driver 3.04.04
mptctl: Registered with Fusion MPT base driver
mptctl: /dev/mptctl @ (major,minor=10,220)
initcall 0xc0624fe5: mptctl_init+0x0/0xf1() returned 0.
initcall 0xc0624fe5 ran for 11 msecs: mptctl_init+0x0/0xf1()
Calling initcall 0xc06250d6: cdrom_init+0x0/0xc()
initcall 0xc06250d6: cdrom_init+0x0/0xc() returned 0.
initcall 0xc06250d6 ran for 0 msecs: cdrom_init+0x0/0xc()
Calling initcall 0xc06252b3: mon_init+0x0/0xe2()
usbmon: debugfs is not available
initcall 0xc06252b3: mon_init+0x0/0xe2() returned -19.
initcall 0xc06252b3 ran for 2 msecs: mon_init+0x0/0xe2()
Calling initcall 0xc0625440: ehci_hcd_init+0x0/0x16()
ACPI: PCI Interrupt Link [APCL] enabled at IRQ 22
ACPI: PCI Interrupt 0000:00:02.1[B] -> Link [APCL] -> GSI 22 (level, low) -> IRQ 18
PCI: Setting latency timer of device 0000:00:02.1 to 64
ehci_hcd 0000:00:02.1: EHCI Host Controller
ehci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:02.1: debug port 1
PCI: cache line size of 64 is not supported by device 0000:00:02.1
ehci_hcd 0000:00:02.1: irq 18, io mem 0xfeb00000
ehci_hcd 0000:00:02.1: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: new device found, idVendor=0000, idProduct=0000
usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: EHCI Host Controller
usb usb1: Manufacturer: Linux 2.6.22-rc3-mm1-v16-rc2 ehci_hcd
usb usb1: SerialNumber: 0000:00:02.1
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 10 ports detected
initcall 0xc0625440: ehci_hcd_init+0x0/0x16() returned 0.
initcall 0xc0625440 ran for 171 msecs: ehci_hcd_init+0x0/0x16()
Calling initcall 0xc0625456: ohci_hcd_mod_init+0x0/0x3e()
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
ACPI: PCI Interrupt Link [APCF] enabled at IRQ 21
ACPI: PCI Interrupt 0000:00:02.0[A] -> Link [APCF] -> GSI 21 (level, low) -> IRQ 19
PCI: Setting latency timer of device 0000:00:02.0 to 64
ohci_hcd 0000:00:02.0: OHCI Host Controller
ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:02.0: irq 19, io mem 0xda102000
usb usb2: new device found, idVendor=0000, idProduct=0000
usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: OHCI Host Controller
usb usb2: Manufacturer: Linux 2.6.22-rc3-mm1-v16-rc2 ohci_hcd
usb usb2: SerialNumber: 0000:00:02.0
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 10 ports detected
initcall 0xc0625456: ohci_hcd_mod_init+0x0/0x3e() returned 0.
initcall 0xc0625456 ran for 212 msecs: ohci_hcd_mod_init+0x0/0x3e()
Calling initcall 0xc0625494: uhci_hcd_init+0x0/0x9f()
USB Universal Host Controller Interface driver v3.0
initcall 0xc0625494: uhci_hcd_init+0x0/0x9f() returned 0.
initcall 0xc0625494 ran for 4 msecs: uhci_hcd_init+0x0/0x9f()
Calling initcall 0xc06255c0: i8042_init+0x0/0x321()
PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
initcall 0xc06255c0: i8042_init+0x0/0x321() returned 0.
initcall 0xc06255c0 ran for 15 msecs: i8042_init+0x0/0x321()
Calling initcall 0xc06258e1: serport_init+0x0/0x2c()
initcall 0xc06258e1: serport_init+0x0/0x2c() returned 0.
initcall 0xc06258e1 ran for 0 msecs: serport_init+0x0/0x2c()
Calling initcall 0xc0625a0e: mousedev_init+0x0/0x52()
mice: PS/2 mouse device common for all mice
initcall 0xc0625a0e: mousedev_init+0x0/0x52() returned 0.
initcall 0xc0625a0e ran for 3 msecs: mousedev_init+0x0/0x52()
Calling initcall 0xc0625a60: evdev_init+0x0/0xf()
initcall 0xc0625a60: evdev_init+0x0/0xf() returned 0.
initcall 0xc0625a60 ran for 0 msecs: evdev_init+0x0/0xf()
Calling initcall 0xc0625a6f: atkbd_init+0x0/0x16()
initcall 0xc0625a6f: atkbd_init+0x0/0x16() returned 0.
initcall 0xc0625a6f ran for 0 msecs: atkbd_init+0x0/0x16()
Calling initcall 0xc0625a85: psmouse_init+0x0/0x59()
input: AT Translated Set 2 keyboard as /class/input/input0
initcall 0xc0625a85: psmouse_init+0x0/0x59() returned 0.
initcall 0xc0625a85 ran for 15 msecs: psmouse_init+0x0/0x59()
Calling initcall 0xc0625bae: md_init+0x0/0xd8()
initcall 0xc0625bae: md_init+0x0/0xd8() returned 0.
initcall 0xc0625bae ran for 0 msecs: md_init+0x0/0xd8()
Calling initcall 0xc0626115: init+0x0/0x331()
lguest: mapped switcher at ffc00000
initcall 0xc0626115: init+0x0/0x331() returned 0.
initcall 0xc0626115 ran for 3 msecs: init+0x0/0x331()
Calling initcall 0xc062658f: cpufreq_stats_init+0x0/0x7d()
initcall 0xc062658f: cpufreq_stats_init+0x0/0x7d() returned 0.
initcall 0xc062658f ran for 0 msecs: cpufreq_stats_init+0x0/0x7d()
Calling initcall 0xc0627081: hid_init+0x0/0x7()
initcall 0xc0627081: hid_init+0x0/0x7() returned 0.
initcall 0xc0627081 ran for 0 msecs: hid_init+0x0/0x7()
Calling initcall 0xc0627088: hid_init+0x0/0x5f()
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
initcall 0xc0627088: hid_init+0x0/0x5f() returned 0.
initcall 0xc0627088 ran for 12 msecs: hid_init+0x0/0x5f()
Calling initcall 0xc06270fd: init_soundcore+0x0/0x4d()
initcall 0xc06270fd: init_soundcore+0x0/0x4d() returned 0.
initcall 0xc06270fd ran for 0 msecs: init_soundcore+0x0/0x4d()
Calling initcall 0xc0627186: alsa_sound_init+0x0/0x7e()
Advanced Linux Sound Architecture Driver Version 1.0.14rc4 (Wed May 16 09:45:46 2007 UTC).
initcall 0xc0627186: alsa_sound_init+0x0/0x7e() returned 0.
initcall 0xc0627186 ran for 7 msecs: alsa_sound_init+0x0/0x7e()
Calling initcall 0xc062735e: alsa_hwdep_init+0x0/0x46()
initcall 0xc062735e: alsa_hwdep_init+0x0/0x46() returned 0.
initcall 0xc062735e ran for 0 msecs: alsa_hwdep_init+0x0/0x46()
Calling initcall 0xc06273a4: alsa_timer_init+0x0/0x140()
initcall 0xc06273a4: alsa_timer_init+0x0/0x140() returned 0.
initcall 0xc06273a4 ran for 0 msecs: alsa_timer_init+0x0/0x140()
Calling initcall 0xc06274e4: rtctimer_init+0x0/0xef()
initcall 0xc06274e4: rtctimer_init+0x0/0xef() returned 0.
initcall 0xc06274e4 ran for 0 msecs: rtctimer_init+0x0/0xef()
Calling initcall 0xc06275d3: alsa_pcm_init+0x0/0x4d()
initcall 0xc06275d3: alsa_pcm_init+0x0/0x4d() returned 0.
initcall 0xc06275d3 ran for 0 msecs: alsa_pcm_init+0x0/0x4d()
Calling initcall 0xc0627620: snd_mem_init+0x0/0x2f()
initcall 0xc0627620: snd_mem_init+0x0/0x2f() returned 0.
initcall 0xc0627620 ran for 0 msecs: snd_mem_init+0x0/0x2f()
Calling initcall 0xc062764f: alsa_rawmidi_init+0x0/0x7a()
initcall 0xc062764f: alsa_rawmidi_init+0x0/0x7a() returned 0.
initcall 0xc062764f ran for 0 msecs: alsa_rawmidi_init+0x0/0x7a()
Calling initcall 0xc06276c9: alsa_mixer_oss_init+0x0/0x30()
initcall 0xc06276c9: alsa_mixer_oss_init+0x0/0x30() returned 0.
initcall 0xc06276c9 ran for 0 msecs: alsa_mixer_oss_init+0x0/0x30()
Calling initcall 0xc06276f9: alsa_pcm_oss_init+0x0/0x84()
initcall 0xc06276f9: alsa_pcm_oss_init+0x0/0x84() returned 0.
initcall 0xc06276f9 ran for 0 msecs: alsa_pcm_oss_init+0x0/0x84()
Calling initcall 0xc062777d: alsa_seq_oss_init+0x0/0x152()
initcall 0xc062777d: alsa_seq_oss_init+0x0/0x152() returned 0.
initcall 0xc062777d ran for 0 msecs: alsa_seq_oss_init+0x0/0x152()
Calling initcall 0xc0627ac8: alsa_seq_init+0x0/0x37()
initcall 0xc0627ac8: alsa_seq_init+0x0/0x37() returned 0.
initcall 0xc0627ac8 ran for 0 msecs: alsa_seq_init+0x0/0x37()
Calling initcall 0xc0627d1a: alsa_seq_device_init+0x0/0x4e()
initcall 0xc0627d1a: alsa_seq_device_init+0x0/0x4e() returned 0.
initcall 0xc0627d1a ran for 0 msecs: alsa_seq_device_init+0x0/0x4e()
Calling initcall 0xc0627d68: alsa_seq_midi_event_init+0x0/0x7()
initcall 0xc0627d68: alsa_seq_midi_event_init+0x0/0x7() returned 0.
initcall 0xc0627d68 ran for 0 msecs: alsa_seq_midi_event_init+0x0/0x7()
Calling initcall 0xc0627eab: alsa_seq_dummy_init+0x0/0xaa()
initcall 0xc0627eab: alsa_seq_dummy_init+0x0/0xaa() returned 0.
initcall 0xc0627eab ran for 0 msecs: alsa_seq_dummy_init+0x0/0xaa()
Calling initcall 0xc0627f55: alsa_seq_midi_init+0x0/0x28()
initcall 0xc0627f55: alsa_seq_midi_init+0x0/0x28() returned 0.
initcall 0xc0627f55 ran for 0 msecs: alsa_seq_midi_init+0x0/0x28()
Calling initcall 0xc0627f7d: alsa_seq_midi_emul_init+0x0/0x7()
initcall 0xc0627f7d: alsa_seq_midi_emul_init+0x0/0x7() returned 0.
initcall 0xc0627f7d ran for 0 msecs: alsa_seq_midi_emul_init+0x0/0x7()
Calling initcall 0xc0627f84: alsa_virmidi_init+0x0/0x7()
initcall 0xc0627f84: alsa_virmidi_init+0x0/0x7() returned 0.
initcall 0xc0627f84 ran for 0 msecs: alsa_virmidi_init+0x0/0x7()
Calling initcall 0xc0627f8b: alsa_ac97_init+0x0/0x7()
initcall 0xc0627f8b: alsa_ac97_init+0x0/0x7() returned 0.
initcall 0xc0627f8b ran for 0 msecs: alsa_ac97_init+0x0/0x7()
Calling initcall 0xc0627f92: alsa_card_emu10k1_init+0x0/0x16()
initcall 0xc0627f92: alsa_card_emu10k1_init+0x0/0x16() returned 0.
initcall 0xc0627f92 ran for 0 msecs: alsa_card_emu10k1_init+0x0/0x16()
Calling initcall 0xc0627fa8: alsa_emu10k1_synth_init+0x0/0x19()
initcall 0xc0627fa8: alsa_emu10k1_synth_init+0x0/0x19() returned 0.
initcall 0xc0627fa8 ran for 0 msecs: alsa_emu10k1_synth_init+0x0/0x19()
Calling initcall 0xc0627fc1: alsa_card_emu10k1x_init+0x0/0x16()
initcall 0xc0627fc1: alsa_card_emu10k1x_init+0x0/0x16() returned 0.
initcall 0xc0627fc1 ran for 0 msecs: alsa_card_emu10k1x_init+0x0/0x16()
Calling initcall 0xc0627fd7: alsa_card_azx_init+0x0/0x16()
initcall 0xc0627fd7: alsa_card_azx_init+0x0/0x16() returned 0.
initcall 0xc0627fd7 ran for 0 msecs: alsa_card_azx_init+0x0/0x16()
Calling initcall 0xc0627fed: alsa_util_mem_init+0x0/0x7()
initcall 0xc0627fed: alsa_util_mem_init+0x0/0x7() returned 0.
initcall 0xc0627fed ran for 0 msecs: alsa_util_mem_init+0x0/0x7()
Calling initcall 0xc0627ff4: alsa_emux_init+0x0/0x7()
initcall 0xc0627ff4: alsa_emux_init+0x0/0x7() returned 0.
initcall 0xc0627ff4 ran for 0 msecs: alsa_emux_init+0x0/0x7()
Calling initcall 0xc062800a: alsa_sound_last_init+0x0/0x5a()
ALSA device list:
  No soundcards found.
initcall 0xc062800a: alsa_sound_last_init+0x0/0x5a() returned 0.
initcall 0xc062800a ran for 3 msecs: alsa_sound_last_init+0x0/0x5a()
Calling initcall 0xc0629e1c: flow_cache_init+0x0/0x156()
initcall 0xc0629e1c: flow_cache_init+0x0/0x156() returned 0.
initcall 0xc0629e1c ran for 0 msecs: flow_cache_init+0x0/0x156()
Calling initcall 0xc0629ff6: llc_init+0x0/0x68()
initcall 0xc0629ff6: llc_init+0x0/0x68() returned 0.
initcall 0xc0629ff6 ran for 0 msecs: llc_init+0x0/0x68()
Calling initcall 0xc062a05e: snap_init+0x0/0x2c()
initcall 0xc062a05e: snap_init+0x0/0x2c() returned 0.
initcall 0xc062a05e ran for 0 msecs: snap_init+0x0/0x2c()
Calling initcall 0xc062a08a: rif_init+0x0/0x68()
initcall 0xc062a08a: rif_init+0x0/0x68() returned 0.
initcall 0xc062a08a ran for 0 msecs: rif_init+0x0/0x68()
Calling initcall 0xc062a1bb: blackhole_module_init+0x0/0xf()
initcall 0xc062a1bb: blackhole_module_init+0x0/0xf() returned 0.
initcall 0xc062a1bb ran for 0 msecs: blackhole_module_init+0x0/0xf()
Calling initcall 0xc062b3e8: init_syncookies+0x0/0x16()
initcall 0xc062b3e8: init_syncookies+0x0/0x16() returned 0.
initcall 0xc062b3e8 ran for 0 msecs: init_syncookies+0x0/0x16()
Calling initcall 0xc062b3fe: xfrm4_beet_init+0x0/0x14()
initcall 0xc062b3fe: xfrm4_beet_init+0x0/0x14() returned 0.
initcall 0xc062b3fe ran for 0 msecs: xfrm4_beet_init+0x0/0x14()
Calling initcall 0xc062b412: xfrm4_transport_init+0x0/0x14()
initcall 0xc062b412: xfrm4_transport_init+0x0/0x14() returned 0.
initcall 0xc062b412 ran for 0 msecs: xfrm4_transport_init+0x0/0x14()
Calling initcall 0xc062b426: xfrm4_tunnel_init+0x0/0x14()
initcall 0xc062b426: xfrm4_tunnel_init+0x0/0x14() returned 0.
initcall 0xc062b426 ran for 0 msecs: xfrm4_tunnel_init+0x0/0x14()
Calling initcall 0xc04326d8: ipv4_netfilter_init+0x0/0xf()
initcall 0xc04326d8: ipv4_netfilter_init+0x0/0xf() returned 0.
initcall 0xc04326d8 ran for 0 msecs: ipv4_netfilter_init+0x0/0xf()
Calling initcall 0xc062b43a: inet_diag_init+0x0/0x60()
initcall 0xc062b43a: inet_diag_init+0x0/0x60() returned 0.
initcall 0xc062b43a ran for 0 msecs: inet_diag_init+0x0/0x60()
Calling initcall 0xc062b49a: tcp_diag_init+0x0/0xf()
initcall 0xc062b49a: tcp_diag_init+0x0/0xf() returned 0.
initcall 0xc062b49a ran for 0 msecs: tcp_diag_init+0x0/0xf()
Calling initcall 0xc062b4a9: cubictcp_register+0x0/0x93()
TCP cubic registered
initcall 0xc062b4a9: cubictcp_register+0x0/0x93() returned 0.
initcall 0xc062b4a9 ran for 1 msecs: cubictcp_register+0x0/0x93()
Calling initcall 0xc062b6fa: xfrm_user_init+0x0/0x52()
Initializing XFRM netlink socket
initcall 0xc062b6fa: xfrm_user_init+0x0/0x52() returned 0.
initcall 0xc062b6fa ran for 2 msecs: xfrm_user_init+0x0/0x52()
Calling initcall 0xc062b74c: af_unix_init+0x0/0x64()
NET: Registered protocol family 1
initcall 0xc062b74c: af_unix_init+0x0/0x64() returned 0.
initcall 0xc062b74c ran for 2 msecs: af_unix_init+0x0/0x64()
Calling initcall 0xc062b7b0: packet_init+0x0/0x4c()
NET: Registered protocol family 17
initcall 0xc062b7b0: packet_init+0x0/0x4c() returned 0.
initcall 0xc062b7b0 ran for 2 msecs: packet_init+0x0/0x4c()
Calling initcall 0xc060e4e4: powernow_init+0x0/0x114()
initcall 0xc060e4e4: powernow_init+0x0/0x114() returned -19.
initcall 0xc060e4e4 ran for 0 msecs: powernow_init+0x0/0x114()
Calling initcall 0xc060ea62: longhaul_init+0x0/0x6b()
initcall 0xc060ea62: longhaul_init+0x0/0x6b() returned -19.
initcall 0xc060ea62 ran for 0 msecs: longhaul_init+0x0/0x6b()
Calling initcall 0xc060f9cb: acpi_cpufreq_init+0x0/0x8f()
initcall 0xc060f9cb: acpi_cpufreq_init+0x0/0x8f() returned -19.
initcall 0xc060f9cb ran for 0 msecs: acpi_cpufreq_init+0x0/0x8f()
Calling initcall 0xc060fa5a: centrino_init+0x0/0x9e()
initcall 0xc060fa5a: centrino_init+0x0/0x9e() returned -19.
initcall 0xc060fa5a ran for 0 msecs: centrino_init+0x0/0x9e()
Calling initcall 0xc061401e: init_lapic_nmi_sysfs+0x0/0x33()
initcall 0xc061401e: init_lapic_nmi_sysfs+0x0/0x33() returned 0.
initcall 0xc061401e ran for 0 msecs: init_lapic_nmi_sysfs+0x0/0x33()
Calling initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8()
Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
CPU#1: NMI appears to be stuck (0->0)!
initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8() returned -1.
initcall 0xc0613e4f ran for 27 msecs: check_nmi_watchdog+0x0/0x1a8()
initcall at 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8(): returned with error code -1
Calling initcall 0xc06142b2: io_apic_bug_finalize+0x0/0x1a()
initcall 0xc06142b2: io_apic_bug_finalize+0x0/0x1a() returned 0.
initcall 0xc06142b2 ran for 0 msecs: io_apic_bug_finalize+0x0/0x1a()
Calling initcall 0xc0616b8f: print_ipi_mode+0x0/0x2d()
Using IPI Shortcut mode
initcall 0xc0616b8f: print_ipi_mode+0x0/0x2d() returned 0.
initcall 0xc0616b8f ran for 2 msecs: print_ipi_mode+0x0/0x2d()
Calling initcall 0xc061bbc1: revokefs_init+0x0/0x85()
initcall 0xc061bbc1: revokefs_init+0x0/0x85() returned 0.
initcall 0xc061bbc1 ran for 0 msecs: revokefs_init+0x0/0x85()
Calling initcall 0xc061d547: random32_reseed+0x0/0x4f()
initcall 0xc061d547: random32_reseed+0x0/0x4f() returned 0.
initcall 0xc061d547 ran for 0 msecs: random32_reseed+0x0/0x4f()
Calling initcall 0xc061db19: pci_sysfs_init+0x0/0x35()
initcall 0xc061db19: pci_sysfs_init+0x0/0x35() returned 0.
initcall 0xc061db19 ran for 0 msecs: pci_sysfs_init+0x0/0x35()
Calling initcall 0xc023c4ad: acpi_poweroff_init+0x0/0x4f()
initcall 0xc023c4ad: acpi_poweroff_init+0x0/0x4f() returned 0.
initcall 0xc023c4ad ran for 0 msecs: acpi_poweroff_init+0x0/0x4f()
Calling initcall 0xc0620ebc: seqgen_init+0x0/0xe()
initcall 0xc0620ebc: seqgen_init+0x0/0xe() returned 0.
initcall 0xc0620ebc ran for 0 msecs: seqgen_init+0x0/0xe()
Calling initcall 0xc0622600: early_uart_console_switch+0x0/0x7d()
initcall 0xc0622600: early_uart_console_switch+0x0/0x7d() returned 0.
initcall 0xc0622600 ran for 0 msecs: early_uart_console_switch+0x0/0x7d()
Calling initcall 0xc02c2847: scsi_complete_async_scans+0x0/0xe2()
initcall 0xc02c2847: scsi_complete_async_scans+0x0/0xe2() returned 0.
initcall 0xc02c2847 ran for 0 msecs: scsi_complete_async_scans+0x0/0xe2()
Calling initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44()
initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44() returned 0.
initcall 0xc0628d39 ran for 0 msecs: pci_mmcfg_late_insert_resources+0x0/0x44()
Calling initcall 0xc062abd1: tcp_congestion_default+0x0/0xf()
initcall 0xc062abd1: tcp_congestion_default+0x0/0xf() returned 0.
initcall 0xc062abd1 ran for 0 msecs: tcp_congestion_default+0x0/0xf()

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:11 ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:18   ` Ingo Molnar
  2007-06-05  9:24   ` 2.6.22-rc3-mm1 Andrew Morton
  1 sibling, 0 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:18 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


* Ingo Molnar <mingo@elte.hu> wrote:

> the NMI watchdog warning is a bit weird:
> 
>  Calling initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8()
>  Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
>  CPU#1: NMI appears to be stuck (0->0)!
>  initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8() returned -1.
>  initcall 0xc0613e4f ran for 27 msecs: check_nmi_watchdog+0x0/0x1a8()
> 
> i'll test it in a minute with that turned off.

yeah, with nmi_watchdog=0 it works fine. nmi_watchdog=2 always worked on 
this box so this is some new regression.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:11 ` 2.6.22-rc3-mm1 Ingo Molnar
  2007-06-05  9:18   ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:24   ` Andrew Morton
  2007-06-05  9:33     ` 2.6.22-rc3-mm1 Ingo Molnar
  1 sibling, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-05  9:24 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: linux-kernel

On Tue, 5 Jun 2007 11:11:51 +0200 Ingo Molnar <mingo@elte.hu> wrote:

> hm, mm1 hangs during bootup on one of my boxes:
> 
>  Calling initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44()
>  initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44() returned 0.
>  initcall 0xc0628d39 ran for 0 msecs: 
>  pci_mmcfg_late_insert_resources+0x0/0x44()
>  Calling initcall 0xc062abd1: tcp_congestion_default+0x0/0xf()
>  initcall 0xc062abd1: tcp_congestion_default+0x0/0xf() returned 0.
>  initcall 0xc062abd1 ran for 0 msecs: tcp_congestion_default+0x0/0xf()
> 
> it usually hangs in different places.

In my experience that means that it wedged in a timer tick.  Often the first
one.


> Full bootlog below. Same kernel 
> bzImage boots fine on another box.
> 
> the NMI watchdog warning is a bit weird:
> 
>  Calling initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8()
>  Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
>  CPU#1: NMI appears to be stuck (0->0)!
>  initcall 0xc0613e4f: check_nmi_watchdog+0x0/0x1a8() returned -1.
>  initcall 0xc0613e4f ran for 27 msecs: check_nmi_watchdog+0x0/0x1a8()
> 
> i'll test it in a minute with that turned off.
> 

hm.  I haven't seen any similar reports.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:24   ` 2.6.22-rc3-mm1 Andrew Morton
@ 2007-06-05  9:33     ` Ingo Molnar
  2007-06-05  9:39       ` 2.6.22-rc3-mm1 Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:33 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


* Andrew Morton <akpm@linux-foundation.org> wrote:

> On Tue, 5 Jun 2007 11:11:51 +0200 Ingo Molnar <mingo@elte.hu> wrote:
> 
> > hm, mm1 hangs during bootup on one of my boxes:
> > 
> >  Calling initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44()
> >  initcall 0xc0628d39: pci_mmcfg_late_insert_resources+0x0/0x44() returned 0.
> >  initcall 0xc0628d39 ran for 0 msecs: 
> >  pci_mmcfg_late_insert_resources+0x0/0x44()
> >  Calling initcall 0xc062abd1: tcp_congestion_default+0x0/0xf()
> >  initcall 0xc062abd1: tcp_congestion_default+0x0/0xf() returned 0.
> >  initcall 0xc062abd1 ran for 0 msecs: tcp_congestion_default+0x0/0xf()
> > 
> > it usually hangs in different places.
> 
> In my experience that means that it wedged in a timer tick.  Often the 
> first one.

yeah. I tried !hres and !dynticks too and that doesnt make any 
difference to the end result - so my guess is on the NMI watchdog 
re-programming thing on K8 CPUs (running the 32-bit kernel), which is 
done in every NMI tick. check_watchdog() for some reason thought there's 
no NMI, and later on an NMI still arrived? Something like that.

vanilla kernel works fine.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:33     ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:39       ` Ingo Molnar
  2007-06-05  9:42         ` 2.6.22-rc3-mm1 Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:39 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


* Ingo Molnar <mingo@elte.hu> wrote:

> yeah. I tried !hres and !dynticks too and that doesnt make any 
> difference to the end result - so my guess is on the NMI watchdog 
> re-programming thing on K8 CPUs (running the 32-bit kernel), which is 
> done in every NMI tick. check_watchdog() for some reason thought 
> there's no NMI, and later on an NMI still arrived? Something like 
> that.

i have put an early_printk() into the NMI handler but it never triggers.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:39       ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:42         ` Ingo Molnar
  2007-06-05  9:45           ` 2.6.22-rc3-mm1 Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


* Ingo Molnar <mingo@elte.hu> wrote:

> i have put an early_printk() into the NMI handler but it never 
> triggers.

commenting out check_nmi_watchdog() produces a booting kernel too. So 
it's a side-effect of check_nmi_watchdog(). Problem is, nothing in nmi.c 
changed in -mm1 AFAICS.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:42         ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:45           ` Ingo Molnar
  2007-06-05  9:50             ` 2.6.22-rc3-mm1 Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:45 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


* Ingo Molnar <mingo@elte.hu> wrote:

> commenting out check_nmi_watchdog() produces a booting kernel too. So 
> it's a side-effect of check_nmi_watchdog(). Problem is, nothing in 
> nmi.c changed in -mm1 AFAICS.

ah, plain -rc3 hangs too. So it's one of these commits i guess:

commit 1eeb66a1bb973534dc3d064920a5ca683823372e
commit 09198e68501a7e34737cd9264d266f42429abcdc
commit bbba11c35baaad3f70f32e185a2c1d40d7901fe9
commit bf8696ed6dfa561198b4736deaf11ab68dcc4845

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-06-05  9:45           ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:50             ` Ingo Molnar
  2007-06-05  9:56               ` 2.6.22-rc3 nmi watchdog hang Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:50 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


* Ingo Molnar <mingo@elte.hu> wrote:

> 
> * Ingo Molnar <mingo@elte.hu> wrote:
> 
> > commenting out check_nmi_watchdog() produces a booting kernel too. So 
> > it's a side-effect of check_nmi_watchdog(). Problem is, nothing in 
> > nmi.c changed in -mm1 AFAICS.
> 
> ah, plain -rc3 hangs too. So it's one of these commits i guess:
> 
> commit 1eeb66a1bb973534dc3d064920a5ca683823372e
> commit 09198e68501a7e34737cd9264d266f42429abcdc
> commit bbba11c35baaad3f70f32e185a2c1d40d7901fe9
> commit bf8696ed6dfa561198b4736deaf11ab68dcc4845

oh, damn. The resulting kernel after having undone these doesnt even 
build ...

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3 nmi watchdog hang
  2007-06-05  9:50             ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05  9:56               ` Ingo Molnar
  2007-06-10 18:10                 ` Björn Steinbrink
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-05  9:56 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Andi Kleen, Linus Torvalds


* Ingo Molnar <mingo@elte.hu> wrote:

> > ah, plain -rc3 hangs too. So it's one of these commits i guess:
> > 
> > commit 1eeb66a1bb973534dc3d064920a5ca683823372e
> > commit 09198e68501a7e34737cd9264d266f42429abcdc
> > commit bbba11c35baaad3f70f32e185a2c1d40d7901fe9
> > commit bf8696ed6dfa561198b4736deaf11ab68dcc4845
> 
> oh, damn. The resulting kernel after having undone these doesnt even 
> build ...

Andi/Linus Cc:-ed - these NMI watchdog changes came over the x86_64 
tree. I suspect this patch:

 commit 09198e68501a7e34737cd9264d266f42429abcdc
 Author: Andi Kleen <ak@suse.de>
 Date:   Wed May 2 19:27:20 2007 +0200

     [PATCH] i386: Clean up NMI watchdog code

Andi - just boot with nmi_watchdog=2 on a dual-core Athlon64 CPU.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (20 preceding siblings ...)
  2007-06-05  9:11 ` 2.6.22-rc3-mm1 Ingo Molnar
@ 2007-06-05 15:16 ` Rusty Russell
  2007-06-05 21:50 ` [-mm patch] kernel/power/disk.c: make code static Adrian Bunk
                   ` (3 subsequent siblings)
  25 siblings, 0 replies; 105+ messages in thread
From: Rusty Russell @ 2007-06-05 15:16 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, jgarzik

On Wed, 2007-05-30 at 23:58 -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/

drivers/built-in.o: In function `ahci_port_start':
/home/rusty/linux-2.6.22-rc3-mm1/drivers/ata/ahci.c:1631: undefined reference to `ahci_port_resume'

Presumably because:
# CONFIG_PM is not set

Cheers,
Rusty.



^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] kernel/power/disk.c: make code static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (21 preceding siblings ...)
  2007-06-05 15:16 ` 2.6.22-rc3-mm1 Rusty Russell
@ 2007-06-05 21:50 ` Adrian Bunk
  2007-06-05 22:10   ` Rafael J. Wysocki
  2007-06-05 21:50 ` [-mm patch] kernel/sched{,_fair}.c: " Adrian Bunk
                   ` (2 subsequent siblings)
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-05 21:50 UTC (permalink / raw)
  To: Andrew Morton, Rafael J. Wysocki, pavel; +Cc: linux-kernel, linux-pm

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc2-mm1:
>...
> +swsusp-remove-code-duplication-between-diskc-and-userc.patch
>...
>  freezer/swsusp updates
>...

This patch makes needlessly global code static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

 kernel/power/disk.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- linux-2.6.22-rc3-mm1/kernel/power/disk.c.old	2007-06-05 22:12:07.000000000 +0200
+++ linux-2.6.22-rc3-mm1/kernel/power/disk.c	2007-06-05 22:13:37.000000000 +0200
@@ -45,7 +45,7 @@
 
 static int hibernation_mode = HIBERNATION_SHUTDOWN;
 
-struct hibernation_ops *hibernation_ops;
+static struct hibernation_ops *hibernation_ops;
 
 /**
  * hibernation_set_ops - set the global hibernate operations
@@ -231,7 +231,7 @@
  *	to power off or reboot.
  */
 
-void power_down(void)
+static void power_down(void)
 {
 	switch (hibernation_mode) {
 	case HIBERNATION_TEST:


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] kernel/sched{,_fair}.c: make code static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (22 preceding siblings ...)
  2007-06-05 21:50 ` [-mm patch] kernel/power/disk.c: make code static Adrian Bunk
@ 2007-06-05 21:50 ` Adrian Bunk
  2007-06-06  6:54   ` Andrew Morton
  2007-06-06  7:02   ` Ingo Molnar
  2007-06-05 21:51 ` [-mm patch] kernel/lockdep_proc.c: make 2 functions static Adrian Bunk
  2007-06-05 21:51 ` [-mm patch] fs/proc/base.c: make a struct static Adrian Bunk
  25 siblings, 2 replies; 105+ messages in thread
From: Adrian Bunk @ 2007-06-05 21:50 UTC (permalink / raw)
  To: Andrew Morton, Ingo Molnar; +Cc: linux-kernel

This patch makes some needlessly global code static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

BTW: Please don't #include C files in sched.c

 kernel/sched.c      |    2 +-
 kernel/sched_fair.c |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

--- linux-2.6.22-rc3-mm1/kernel/sched_fair.c.old	2007-06-05 22:18:18.000000000 +0200
+++ linux-2.6.22-rc3-mm1/kernel/sched_fair.c	2007-06-05 22:29:00.000000000 +0200
@@ -134,7 +134,7 @@
 	return curr->load_weight * (s64)(granularity / NICE_0_LOAD);
 }
 
-unsigned long get_rq_load(struct rq *rq)
+static unsigned long get_rq_load(struct rq *rq)
 {
 	unsigned long load = rq->cpu_load[CPU_LOAD_IDX_MAX-1] + 1;
 
@@ -384,7 +384,7 @@
 	p->exec_start = 0;
 }
 
-long div64_s(s64 divident, unsigned long divisor)
+static long div64_s(s64 divident, unsigned long divisor)
 {
 	u64 tmp;
 
--- linux-2.6.22-rc3-mm1/kernel/sched.c.old	2007-06-05 22:29:19.000000000 +0200
+++ linux-2.6.22-rc3-mm1/kernel/sched.c	2007-06-05 22:29:38.000000000 +0200
@@ -564,7 +564,7 @@
  * if you go up 1 level, it's -10% CPU usage, if you go down 1 level
  * it's +10% CPU usage.
  */
-const int prio_to_weight[40] = {
+static const int prio_to_weight[40] = {
 /* -20 */ 88818, 71054, 56843, 45475, 36380, 29104, 23283, 18626, 14901, 11921,
 /* -10 */  9537,  7629,  6103,  4883,  3906,  3125,  2500,  2000,  1600,  1280,
 /*   0 */  NICE_0_LOAD /* 1024 */,


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] kernel/lockdep_proc.c: make 2 functions static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (23 preceding siblings ...)
  2007-06-05 21:50 ` [-mm patch] kernel/sched{,_fair}.c: " Adrian Bunk
@ 2007-06-05 21:51 ` Adrian Bunk
  2007-06-05 22:34   ` Peter Zijlstra
  2007-06-05 21:51 ` [-mm patch] fs/proc/base.c: make a struct static Adrian Bunk
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-05 21:51 UTC (permalink / raw)
  To: Andrew Morton, Peter Zijlstra, Ingo Molnar; +Cc: linux-kernel

On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc2-mm1:
>...
> +lockstat-human-readability-tweaks.patch
>...
>  lockstat-via-lockdep
>...

This patch makes two needlessly global functions static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

 kernel/lockdep_proc.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--- linux-2.6.22-rc3-mm1/kernel/lockdep_proc.c.old	2007-06-05 22:07:30.000000000 +0200
+++ linux-2.6.22-rc3-mm1/kernel/lockdep_proc.c	2007-06-05 22:07:57.000000000 +0200
@@ -364,7 +364,7 @@
 /*
  * sort on absolute number of contentions
  */
-int lock_stat_cmp(const void *l, const void *r)
+static int lock_stat_cmp(const void *l, const void *r)
 {
 	const struct lock_stat_data *dl = l, *dr = r;
 	unsigned long nl, nr;
@@ -567,8 +567,8 @@
 	return res;
 }
 
-ssize_t lock_stat_write(struct file *file, const char __user *buf,
-		size_t count, loff_t *ppos)
+static ssize_t lock_stat_write(struct file *file, const char __user *buf,
+			       size_t count, loff_t *ppos)
 {
 	struct lock_class *class;
 	char c;


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [-mm patch] fs/proc/base.c: make a struct static
  2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
                   ` (24 preceding siblings ...)
  2007-06-05 21:51 ` [-mm patch] kernel/lockdep_proc.c: make 2 functions static Adrian Bunk
@ 2007-06-05 21:51 ` Adrian Bunk
  2007-06-06  7:32   ` Ingo Molnar
  25 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-05 21:51 UTC (permalink / raw)
  To: Andrew Morton, Ingo Molnar; +Cc: linux-kernel

This patch makes the needlessly global struct proc_pid_sched_operations 
static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---
--- linux-2.6.22-rc3-mm1/fs/proc/base.c.old	2007-06-05 22:01:08.000000000 +0200
+++ linux-2.6.22-rc3-mm1/fs/proc/base.c	2007-06-05 22:41:57.000000000 +0200
@@ -952,7 +952,7 @@
 	return ret;
 }
 
-const struct file_operations proc_pid_sched_operations = {
+static const struct file_operations proc_pid_sched_operations = {
 	.open		= sched_open,
 	.read		= seq_read,
 	.write		= sched_write,

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] kernel/power/disk.c: make code static
  2007-06-05 21:50 ` [-mm patch] kernel/power/disk.c: make code static Adrian Bunk
@ 2007-06-05 22:10   ` Rafael J. Wysocki
  0 siblings, 0 replies; 105+ messages in thread
From: Rafael J. Wysocki @ 2007-06-05 22:10 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, pavel, linux-kernel, linux-pm

On Tuesday, 5 June 2007 23:50, Adrian Bunk wrote:
> On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
> >...
> > Changes since 2.6.22-rc2-mm1:
> >...
> > +swsusp-remove-code-duplication-between-diskc-and-userc.patch
> >...
> >  freezer/swsusp updates
> >...
> 
> This patch makes needlessly global code static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

ACK

Rafael


> ---
> 
>  kernel/power/disk.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> --- linux-2.6.22-rc3-mm1/kernel/power/disk.c.old	2007-06-05 22:12:07.000000000 +0200
> +++ linux-2.6.22-rc3-mm1/kernel/power/disk.c	2007-06-05 22:13:37.000000000 +0200
> @@ -45,7 +45,7 @@
>  
>  static int hibernation_mode = HIBERNATION_SHUTDOWN;
>  
> -struct hibernation_ops *hibernation_ops;
> +static struct hibernation_ops *hibernation_ops;
>  
>  /**
>   * hibernation_set_ops - set the global hibernate operations
> @@ -231,7 +231,7 @@
>   *	to power off or reboot.
>   */
>  
> -void power_down(void)
> +static void power_down(void)
>  {
>  	switch (hibernation_mode) {
>  	case HIBERNATION_TEST:
> 
> 
> 

-- 
"Premature optimization is the root of all evil." - Donald Knuth

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] kernel/lockdep_proc.c: make 2 functions static
  2007-06-05 21:51 ` [-mm patch] kernel/lockdep_proc.c: make 2 functions static Adrian Bunk
@ 2007-06-05 22:34   ` Peter Zijlstra
  0 siblings, 0 replies; 105+ messages in thread
From: Peter Zijlstra @ 2007-06-05 22:34 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Ingo Molnar, linux-kernel

On Tue, 2007-06-05 at 23:51 +0200, Adrian Bunk wrote:
> On Wed, May 30, 2007 at 11:58:23PM -0700, Andrew Morton wrote:
> >...
> > Changes since 2.6.22-rc2-mm1:
> >...
> > +lockstat-human-readability-tweaks.patch
> >...
> >  lockstat-via-lockdep
> >...
> 
> This patch makes two needlessly global functions static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>



^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1 - pppd hanging in netdev_run_todo while holding mutex
  2007-06-04 18:00 ` 2.6.22-rc3-mm1 - pppd hanging in netdev_run_todo while holding mutex Valdis.Kletnieks
@ 2007-06-06  6:14   ` Andrew Morton
  0 siblings, 0 replies; 105+ messages in thread
From: Andrew Morton @ 2007-06-06  6:14 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: linux-kernel, netdev

On Mon, 04 Jun 2007 14:00:56 -0400 Valdis.Kletnieks@vt.edu wrote:

> On Wed, 30 May 2007 23:58:23 PDT, Andrew Morton said:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc3/2.6.22-rc3-mm1/
> 
> Under 22-rc2-mm1, if my VPN connection got reset, ppp0 just quietly went away.
> 
> Under 22-rc3-mm1, it seems to end up wedged and waiting for references to
> go away:
> 
> Jun  4 09:23:01 turing-police kernel: [90089.270707] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8
> Jun  4 09:23:11 turing-police kernel: [90099.396121] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8
> Jun  4 09:23:21 turing-police kernel: [90109.520574] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8
> Jun  4 09:23:32 turing-police kernel: [90119.653129] unregister_netdevice: waiting for ppp0 to become free. Usage count = 8

Interesting refcount.

> 'echo t > /proc/sysrq_trigger' shows pppd hung up here:
> 
> Jun  4 10:52:57 turing-police kernel: [95478.047892] pppd          D 0000000105ad3830  4968  3815      1 (NOTLB)
> Jun  4 10:52:57 turing-police kernel: [95478.047902]  ffff810008d5fd78 0000000000000086 0000000000000000 ffff810003490000
> Jun  4 10:52:57 turing-police kernel: [95478.047911]  ffff810008d5fd28 ffff810008d4a040 ffff810003461820 ffff810008d4a2b0
> Jun  4 10:52:57 turing-police kernel: [95478.047920]  0000000105ad3733 0000000000000202 00000000000000ff ffffffff80239795
> Jun  4 10:52:57 turing-police kernel: [95478.047928] Call Trace:
> Jun  4 10:52:57 turing-police kernel: [95478.047936]  [<ffffffff805207a2>] schedule_timeout+0x8d/0xb4
> Jun  4 10:52:57 turing-police kernel: [95478.047945]  [<ffffffff805207e2>] schedule_timeout_uninterruptible+0x19/0x1b
> Jun  4 10:52:57 turing-police kernel: [95478.047954]  [<ffffffff802397bb>] msleep+0x14/0x1e
> Jun  4 10:52:57 turing-police kernel: [95478.047963]  [<ffffffff8048aa4e>] netdev_run_todo+0x12f/0x234 
> Jun  4 10:52:57 turing-police kernel: [95478.047972]  [<ffffffff8049166f>] rtnl_unlock+0x35/0x37
> Jun  4 10:52:57 turing-police kernel: [95478.047981]  [<ffffffff804894a9>] unregister_netdev+0x1e/0x23
> Jun  4 10:52:57 turing-police kernel: [95478.047994]  [<ffffffff88a5f2c2>] :ppp_generic:ppp_shutdown_interface+0x67/0xbb
> Jun  4 10:52:57 turing-police kernel: [95478.048018]  [<ffffffff88a5f5b8>] :ppp_generic:ppp_release+0x33/0x65
> Jun  4 10:52:57 turing-police kernel: [95478.048028]  [<ffffffff8028d54a>] __fput+0xac/0x176
> Jun  4 10:52:57 turing-police kernel: [95478.048036]  [<ffffffff8028d628>] fput+0x14/0x16
> Jun  4 10:52:57 turing-police kernel: [95478.048045]  [<ffffffff8028a9c6>] filp_close+0x66/0x71
> Jun  4 10:52:57 turing-police kernel: [95478.048054]  [<ffffffff8028bd54>] sys_close+0x98/0xd7
> Jun  4 10:52:57 turing-police kernel: [95478.048062]  [<ffffffff8020a03c>] tracesys+0xdc/0xe1
> Jun  4 10:52:57 turing-police kernel: [95478.048073]  [<00002b45cd2429a0>]

I don't know what could have caused this, sorry.  If it's still there in next -mm
(which is still 100000 compile fixes away) it'd be good if you could bisect it.
Suspects would be git-net.patch, get-netdev-all.patch and gregkh-driver-*.patch

Thanks.

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] kernel/sched{,_fair}.c: make code static
  2007-06-05 21:50 ` [-mm patch] kernel/sched{,_fair}.c: " Adrian Bunk
@ 2007-06-06  6:54   ` Andrew Morton
  2007-06-06  7:30     ` Ingo Molnar
  2007-06-06  7:02   ` Ingo Molnar
  1 sibling, 1 reply; 105+ messages in thread
From: Andrew Morton @ 2007-06-06  6:54 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Ingo Molnar, linux-kernel

On Tue, 5 Jun 2007 23:50:56 +0200 Adrian Bunk <bunk@stusta.de> wrote:

> This patch makes some needlessly global code static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 
> ---
> 
> BTW: Please don't #include C files in sched.c

Yeah.

> -long div64_s(s64 divident, unsigned long divisor)
> +static long div64_s(s64 divident, unsigned long divisor)

"divident" does appear to be a word, but I suspect "dividend" was intended.

Why is this function lurking in the CPU scheduler rather than in
lib/somewhere.c?

Doesn't an unsigned divide give the same result as a signed one?

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] kernel/sched{,_fair}.c: make code static
  2007-06-05 21:50 ` [-mm patch] kernel/sched{,_fair}.c: " Adrian Bunk
  2007-06-06  6:54   ` Andrew Morton
@ 2007-06-06  7:02   ` Ingo Molnar
  1 sibling, 0 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-06  7:02 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, linux-kernel


* Adrian Bunk <bunk@stusta.de> wrote:

> This patch makes some needlessly global code static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

thanks, applied.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] kernel/sched{,_fair}.c: make code static
  2007-06-06  6:54   ` Andrew Morton
@ 2007-06-06  7:30     ` Ingo Molnar
  2007-06-06 12:31       ` Adrian Bunk
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-06  7:30 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Adrian Bunk, linux-kernel


* Andrew Morton <akpm@linux-foundation.org> wrote:

> > Signed-off-by: Adrian Bunk <bunk@stusta.de>
> > 
> > ---
> > 
> > BTW: Please don't #include C files in sched.c
> 
> Yeah.

In this case it's not that bad. It makes the source quite a bit cleaner 
and avoids having to create artificial interfaces, global functions, 
etc. between the .o's.

> > -long div64_s(s64 divident, unsigned long divisor)
> > +static long div64_s(s64 divident, unsigned long divisor)
> 
> "divident" does appear to be a word, but I suspect "dividend" was 
> intended.

yeah indeed - fixed.

> Why is this function lurking in the CPU scheduler rather than in 
> lib/somewhere.c?
> 
> Doesn't an unsigned divide give the same result as a signed one?

no! 0xfffffff0 / 2 is 0x7fffffff when the division is unsigned, and 
7ffffff8 (== -8) when signed. On x86 the silicon only offers us unsigned 
64-bit division, so we first have to make '+16' out of -16, then divide 
by 2, and turn the +4 into -4. (On x86_64 there's no such problem, 
there's an idiv and a div 64-bit instruction as well, and gcc picks the 
right one depending on the type of the variable.)

i think Roman has recently done a nice cleanup patch that introduces 
this? I'll change CFS to use that interface once it's upstream.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] fs/proc/base.c: make a struct static
  2007-06-05 21:51 ` [-mm patch] fs/proc/base.c: make a struct static Adrian Bunk
@ 2007-06-06  7:32   ` Ingo Molnar
  0 siblings, 0 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-06  7:32 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, linux-kernel


* Adrian Bunk <bunk@stusta.de> wrote:

> This patch makes the needlessly global struct proc_pid_sched_operations 
> static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

thanks.

Acked-by: Ingo Molnar <mingo@elte.hu>

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] kernel/sched{,_fair}.c: make code static
  2007-06-06  7:30     ` Ingo Molnar
@ 2007-06-06 12:31       ` Adrian Bunk
  0 siblings, 0 replies; 105+ messages in thread
From: Adrian Bunk @ 2007-06-06 12:31 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Andrew Morton, linux-kernel

On Wed, Jun 06, 2007 at 09:30:23AM +0200, Ingo Molnar wrote:
> 
> * Andrew Morton <akpm@linux-foundation.org> wrote:
> 
> > > Signed-off-by: Adrian Bunk <bunk@stusta.de>
> > > 
> > > ---
> > > 
> > > BTW: Please don't #include C files in sched.c
> > 
> > Yeah.
> 
> In this case it's not that bad. It makes the source quite a bit cleaner 
> and avoids having to create artificial interfaces, global functions, 
> etc. between the .o's.
>...

The idiom used in the kernel for such code is "global code and compile 
the files separately". The expected inclusion for a C file into the 
kernel is through the Makefile, and everything else is surprising when 
looking through the code.

"artificial interfaces" is not a problem since these are completely 
private interfaces you can change at any time.

> 	Ingo

cu
Adrian

-- 

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


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] drivers/mmc/core/core.{h,c}: cleanups
  2007-06-04 22:13 ` [-mm patch] drivers/mmc/core/core.{h,c}: cleanups Adrian Bunk
@ 2007-06-06 18:36   ` Pierre Ossman
  0 siblings, 0 replies; 105+ messages in thread
From: Pierre Ossman @ 2007-06-06 18:36 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, linux-kernel

Adrian Bunk wrote:
> 
> This patch contains the following cleanups:
> - make the following needlessly global functions static:
>   - core.c: mmc_schedule_delayed_work()
>   - core.c: mmc_flush_scheduled_work()
> - removes the prototope of the following non-existing function:
>   - core.h: mmc_schedule_work()
> - proper prototypes for three functions from core.c in core.h
>  
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 

Thanks, applied.

-- 
     -- Pierre Ossman

  Linux kernel, MMC maintainer        http://www.kernel.org
  PulseAudio, core developer          http://pulseaudio.org
  rdesktop, core developer          http://www.rdesktop.org

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [-mm patch] make drivers/firmware/dmi-id.c:dmi_id_init() static
  2007-06-03 20:54 ` [-mm patch] make drivers/firmware/dmi-id.c:dmi_id_init() static Adrian Bunk
@ 2007-06-08  4:38   ` Greg KH
  0 siblings, 0 replies; 105+ messages in thread
From: Greg KH @ 2007-06-08  4:38 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Lennart Poettering, linux-kernel, Greg KH

On Sun, Jun 03, 2007 at 10:54:04PM +0200, Adrian Bunk wrote:
> This patch makes the needlessly global dmi_id_init() static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

Thanks, I've merged this with the original.

greg k-h

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3 nmi watchdog hang
  2007-06-05  9:56               ` 2.6.22-rc3 nmi watchdog hang Ingo Molnar
@ 2007-06-10 18:10                 ` Björn Steinbrink
  2007-06-18 12:11                   ` Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Björn Steinbrink @ 2007-06-10 18:10 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Andrew Morton, linux-kernel, Andi Kleen, Linus Torvalds

On 2007.06.05 11:56:00 +0200, Ingo Molnar wrote:
> 
> * Ingo Molnar <mingo@elte.hu> wrote:
> 
> > > ah, plain -rc3 hangs too. So it's one of these commits i guess:
> > > 
> > > commit 1eeb66a1bb973534dc3d064920a5ca683823372e
> > > commit 09198e68501a7e34737cd9264d266f42429abcdc
> > > commit bbba11c35baaad3f70f32e185a2c1d40d7901fe9
> > > commit bf8696ed6dfa561198b4736deaf11ab68dcc4845
> > 
> > oh, damn. The resulting kernel after having undone these doesnt even 
> > build ...
> 
> Andi/Linus Cc:-ed - these NMI watchdog changes came over the x86_64 
> tree. I suspect this patch:
> 
>  commit 09198e68501a7e34737cd9264d266f42429abcdc
>  Author: Andi Kleen <ak@suse.de>
>  Date:   Wed May 2 19:27:20 2007 +0200
> 
>      [PATCH] i386: Clean up NMI watchdog code
> 
> Andi - just boot with nmi_watchdog=2 on a dual-core Athlon64 CPU.

I still fail to reproduce this, could you send me your config?

Thanks,
Björn

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3 nmi watchdog hang
  2007-06-10 18:10                 ` Björn Steinbrink
@ 2007-06-18 12:11                   ` Ingo Molnar
  2007-06-18 14:31                     ` Björn Steinbrink
  2007-06-25  6:18                     ` Ingo Molnar
  0 siblings, 2 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-18 12:11 UTC (permalink / raw)
  To: Björn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds

[-- Attachment #1: Type: text/plain, Size: 475 bytes --]


* Björn Steinbrink <B.Steinbrink@gmx.de> wrote:

> >      [PATCH] i386: Clean up NMI watchdog code
> > 
> > Andi - just boot with nmi_watchdog=2 on a dual-core Athlon64 CPU.
> 
> I still fail to reproduce this, could you send me your config?

attached below. nmi_watchdog=2 still hangs as of -rc5, using the 32-bit 
kernel (at various places during bootup - a typical place is somewhere 
after cfq_init()). Changing it to nmi_watchdog=0 makes the kernel boot 
again.

	Ingo

[-- Attachment #2: config --]
[-- Type: text/plain, Size: 55514 bytes --]

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.22-rc5-cfs-v17
# Mon Jun 18 14:06:22 2007
#
CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_ZONE_DMA32=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_SEMAPHORE_SLEEPERS=y
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_CMPXCHG=y
CONFIG_EARLY_PRINTK=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_DMI=y
CONFIG_AUDIT_ARCH=y
CONFIG_GENERIC_BUG=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

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

#
# General setup
#
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not set
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
# CONFIG_TASK_XACCT is not set
# CONFIG_UTS_NS is not set
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
# CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=20
CONFIG_CPUSETS=y
CONFIG_SYSFS_DEPRECATED=y
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_KALLSYMS_EXTRA_PASS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=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_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0

#
# Loadable module support
#
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

#
# Block layer
#
CONFIG_BLOCK=y
CONFIG_BLK_DEV_IO_TRACE=y

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

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_VSMP is not set
# CONFIG_MK8 is not set
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
CONFIG_GENERIC_CPU=y
CONFIG_X86_L1_CACHE_BYTES=128
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_X86_INTERNODE_CACHE_BYTES=128
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
CONFIG_MICROCODE=m
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_X86_HT=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_MTRR=y
CONFIG_SMP=y
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_PREEMPT_BKL=y
CONFIG_NUMA=y
CONFIG_K8_NUMA=y
CONFIG_NODES_SHIFT=6
CONFIG_X86_64_ACPI_NUMA=y
# CONFIG_NUMA_EMU is not set
CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y
CONFIG_ARCH_SPARSEMEM_ENABLE=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

#
# Memory hotplug is currently incompatible with Software Suspend
#
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_MIGRATION=y
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y
CONFIG_NR_CPUS=255
CONFIG_HOTPLUG_CPU=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_HPET_TIMER=y
# CONFIG_HPET_EMULATE_RTC is not set
CONFIG_IOMMU=y
CONFIG_CALGARY_IOMMU=y
CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
CONFIG_SWIOTLB=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_INTEL=y
CONFIG_X86_MCE_AMD=y
CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_START=0x200000
# CONFIG_SECCOMP is not set
CONFIG_CC_STACKPROTECTOR=y
CONFIG_CC_STACKPROTECTOR_ALL=y
# 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_K8_NB=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_ISA_DMA_API=y
CONFIG_GENERIC_PENDING_IRQ=y

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

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
# CONFIG_ACPI_SLEEP_PROC_SLEEP is not set
CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_DOCK=y
# CONFIG_ACPI_BAY is not set
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_NUMA=y
CONFIG_ACPI_ASUS=y
CONFIG_ACPI_TOSHIBA=y
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_SBS=m

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_DEBUG=y
CONFIG_CPU_FREQ_STAT=m
CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m

#
# CPUFreq processor drivers
#
CONFIG_X86_POWERNOW_K8=y
CONFIG_X86_POWERNOW_K8_ACPI=y
CONFIG_X86_SPEEDSTEP_CENTRINO=y
CONFIG_X86_ACPI_CPUFREQ=y

#
# shared options
#
# CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set
# CONFIG_X86_SPEEDSTEP_LIB is not set

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI_PCIE=m
# CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE is not set
CONFIG_PCIEAER=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
CONFIG_HT_IRQ=y

#
# PCCARD (PCMCIA/CardBus) support
#
CONFIG_PCCARD=y
# CONFIG_PCMCIA_DEBUG is not set
CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
CONFIG_PCMCIA_IOCTL=y
CONFIG_CARDBUS=y

#
# PC-card bridges
#
CONFIG_YENTA=y
CONFIG_YENTA_O2=y
CONFIG_YENTA_RICOH=y
CONFIG_YENTA_TI=y
CONFIG_YENTA_ENE_TUNE=y
CONFIG_YENTA_TOSHIBA=y
CONFIG_PD6729=m
CONFIG_I82092=m
CONFIG_PCCARD_NONSTATIC=y
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_FAKE=m
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=y
# CONFIG_HOTPLUG_PCI_CPCI is not set
CONFIG_HOTPLUG_PCI_SHPC=m

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

#
# Networking
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
# CONFIG_XFRM_SUB_POLICY is not set
# CONFIG_XFRM_MIGRATE is not set
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE 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=y
CONFIG_IP_ROUTE_MULTIPATH=y
# CONFIG_IP_ROUTE_MULTIPATH_CACHED is not set
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not set
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=m
CONFIG_INET_ESP=m
CONFIG_INET_IPCOMP=m
CONFIG_INET_XFRM_TUNNEL=m
CONFIG_INET_TUNNEL=m
CONFIG_INET_XFRM_MODE_TRANSPORT=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=y
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_IP_VS=m
# CONFIG_IP_VS_DEBUG is not set
CONFIG_IP_VS_TAB_BITS=12

#
# IPVS transport protocol load balancing support
#
CONFIG_IP_VS_PROTO_TCP=y
CONFIG_IP_VS_PROTO_UDP=y
CONFIG_IP_VS_PROTO_ESP=y
CONFIG_IP_VS_PROTO_AH=y

#
# IPVS scheduler
#
CONFIG_IP_VS_RR=m
CONFIG_IP_VS_WRR=m
CONFIG_IP_VS_LC=m
CONFIG_IP_VS_WLC=m
CONFIG_IP_VS_LBLC=m
CONFIG_IP_VS_LBLCR=m
CONFIG_IP_VS_DH=m
CONFIG_IP_VS_SH=m
CONFIG_IP_VS_SED=m
CONFIG_IP_VS_NQ=m

#
# IPVS application helper
#
CONFIG_IP_VS_FTP=m
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
# CONFIG_IPV6_ROUTER_PREF is not set
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
CONFIG_INET6_IPCOMP=m
# CONFIG_IPV6_MIP6 is not set
CONFIG_INET6_XFRM_TUNNEL=m
CONFIG_INET6_TUNNEL=m
CONFIG_INET6_XFRM_MODE_TRANSPORT=m
CONFIG_INET6_XFRM_MODE_TUNNEL=m
CONFIG_INET6_XFRM_MODE_BEET=m
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
CONFIG_IPV6_SIT=m
CONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_MULTIPLE_TABLES is not set
# CONFIG_NETLABEL is not set
CONFIG_NETWORK_SECMARK=y
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_BRIDGE_NETFILTER=y

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=m
CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
# CONFIG_NF_CONNTRACK_ENABLED is not set
# CONFIG_NF_CONNTRACK is not set
# CONFIG_NETFILTER_XTABLES is not set

#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_QUEUE=m
# CONFIG_IP_NF_IPTABLES is not set
# CONFIG_IP_NF_ARPTABLES is not set

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

#
# Bridge: Netfilter Configuration
#
CONFIG_BRIDGE_NF_EBTABLES=m
CONFIG_BRIDGE_EBT_BROUTE=m
CONFIG_BRIDGE_EBT_T_FILTER=m
CONFIG_BRIDGE_EBT_T_NAT=m
CONFIG_BRIDGE_EBT_802_3=m
CONFIG_BRIDGE_EBT_AMONG=m
CONFIG_BRIDGE_EBT_ARP=m
CONFIG_BRIDGE_EBT_IP=m
CONFIG_BRIDGE_EBT_LIMIT=m
CONFIG_BRIDGE_EBT_MARK=m
CONFIG_BRIDGE_EBT_PKTTYPE=m
CONFIG_BRIDGE_EBT_STP=m
CONFIG_BRIDGE_EBT_VLAN=m
CONFIG_BRIDGE_EBT_ARPREPLY=m
CONFIG_BRIDGE_EBT_DNAT=m
CONFIG_BRIDGE_EBT_MARK_T=m
CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_ULOG=m
# CONFIG_IP_DCCP is not set
CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set
# CONFIG_SCTP_DBG_OBJCNT is not set
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
# CONFIG_TIPC is not set
CONFIG_ATM=m
CONFIG_ATM_CLIP=m
# CONFIG_ATM_CLIP_NO_ICMP is not set
CONFIG_ATM_LANE=m
# CONFIG_ATM_MPOA is not set
CONFIG_ATM_BR2684=m
# CONFIG_ATM_BR2684_IPFILTER is not set
CONFIG_BRIDGE=m
CONFIG_VLAN_8021Q=m
# CONFIG_DECNET is not set
CONFIG_LLC=y
# 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

#
# QoS and/or fair queueing
#
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_FIFO=y

#
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_NETEM=m
CONFIG_NET_SCH_INGRESS=m

#
# Classification
#
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=m
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
CONFIG_CLS_U32_PERF=y
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_EMATCH=y
CONFIG_NET_EMATCH_STACK=32
CONFIG_NET_EMATCH_CMP=m
CONFIG_NET_EMATCH_NBYTE=m
CONFIG_NET_EMATCH_U32=m
CONFIG_NET_EMATCH_META=m
CONFIG_NET_EMATCH_TEXT=m
# CONFIG_NET_CLS_ACT is not set
CONFIG_NET_CLS_POLICE=y
CONFIG_NET_CLS_IND=y
CONFIG_NET_ESTIMATOR=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_NET_TCPPROBE is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
CONFIG_BT=m
CONFIG_BT_L2CAP=m
CONFIG_BT_SCO=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
CONFIG_BT_BNEP=m
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_CMTP=m
CONFIG_BT_HIDP=m

#
# Bluetooth device drivers
#
CONFIG_BT_HCIUSB=m
CONFIG_BT_HCIUSB_SCO=y
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_H4=y
CONFIG_BT_HCIUART_BCSP=y
CONFIG_BT_HCIBCM203X=m
CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBFUSB=m
# CONFIG_BT_HCIDTL1 is not set
# CONFIG_BT_HCIBT3C is not set
# CONFIG_BT_HCIBLUECARD is not set
# CONFIG_BT_HCIBTUART is not set
CONFIG_BT_HCIVHCI=m
# CONFIG_AF_RXRPC is not set
CONFIG_FIB_RULES=y

#
# Wireless
#
# CONFIG_CFG80211 is not set
CONFIG_WIRELESS_EXT=y
# CONFIG_MAC80211 is not set
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
# CONFIG_IEEE80211_SOFTMAC is not set
# CONFIG_RFKILL is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
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

#
# Connector - unified userspace <-> kernelspace linker
#
# CONFIG_CONNECTOR is not set
CONFIG_MTD=m
# CONFIG_MTD_DEBUG is not set
CONFIG_MTD_CONCAT=m
CONFIG_MTD_PARTITIONS=y
CONFIG_MTD_REDBOOT_PARTS=m
CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set

#
# User Modules And Translation Layers
#
CONFIG_MTD_CHAR=m
CONFIG_MTD_BLKDEVS=m
CONFIG_MTD_BLOCK=m
CONFIG_MTD_BLOCK_RO=m
CONFIG_FTL=m
CONFIG_NFTL=m
CONFIG_NFTL_RW=y
# CONFIG_INFTL is not set
# CONFIG_RFD_FTL is not set
# CONFIG_SSFDC is not set

#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=m
CONFIG_MTD_JEDECPROBE=m
CONFIG_MTD_GEN_PROBE=m
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
# CONFIG_MTD_CFI_I4 is not set
# CONFIG_MTD_CFI_I8 is not set
CONFIG_MTD_CFI_INTELEXT=m
CONFIG_MTD_CFI_AMDSTD=m
CONFIG_MTD_CFI_STAA=m
CONFIG_MTD_CFI_UTIL=m
CONFIG_MTD_RAM=m
CONFIG_MTD_ROM=m
CONFIG_MTD_ABSENT=m

#
# Mapping drivers for chip access
#
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
# CONFIG_MTD_PHYSMAP is not set
# CONFIG_MTD_PNC2000 is not set
CONFIG_MTD_SC520CDP=m
CONFIG_MTD_NETSC520=m
CONFIG_MTD_TS5500=m
# CONFIG_MTD_AMD76XROM is not set
# CONFIG_MTD_ICHXROM is not set
# CONFIG_MTD_ESB2ROM is not set
# CONFIG_MTD_CK804XROM is not set
# CONFIG_MTD_SCB2_FLASH is not set
# CONFIG_MTD_NETtel is not set
# CONFIG_MTD_DILNETPC is not set
# CONFIG_MTD_L440GX is not set
CONFIG_MTD_PLATRAM=m

#
# Self-contained MTD device drivers
#
# CONFIG_MTD_PMC551 is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not set
CONFIG_MTD_MTDRAM=m
CONFIG_MTDRAM_TOTAL_SIZE=4096
CONFIG_MTDRAM_ERASE_SIZE=128
CONFIG_MTD_BLOCK2MTD=m

#
# Disk-On-Chip Device Drivers
#
# CONFIG_MTD_DOC2000 is not set
# CONFIG_MTD_DOC2001 is not set
# CONFIG_MTD_DOC2001PLUS is not set
CONFIG_MTD_NAND=m
# CONFIG_MTD_NAND_VERIFY_WRITE is not set
# CONFIG_MTD_NAND_ECC_SMC is not set
# CONFIG_MTD_NAND_MUSEUM_IDS is not set
CONFIG_MTD_NAND_IDS=m
# CONFIG_MTD_NAND_DISKONCHIP is not set
# CONFIG_MTD_NAND_CAFE is not set
# CONFIG_MTD_NAND_NANDSIM is not set
# CONFIG_MTD_NAND_PLATFORM is not set
# CONFIG_MTD_ONENAND is not set

#
# UBI - Unsorted block images
#
# CONFIG_MTD_UBI is not set

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

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

#
# Protocols
#
CONFIG_PNPACPI=y

#
# Block devices
#
CONFIG_BLK_DEV_FD=m
# CONFIG_PARIDE is not set
CONFIG_BLK_CPQ_DA=y
CONFIG_BLK_CPQ_CISS_DA=m
CONFIG_CISS_SCSI_TAPE=y
CONFIG_BLK_DEV_DAC960=m
# CONFIG_BLK_DEV_UMEM is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=16384
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
CONFIG_CDROM_PKTCDVD=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
# CONFIG_CDROM_PKTCDVD_WCACHE is not set
# CONFIG_ATA_OVER_ETH is not set

#
# Misc devices
#
CONFIG_IBM_ASM=m
# CONFIG_PHANTOM is not set
# CONFIG_SGI_IOC4 is not set
# CONFIG_TIFM_CORE is not set
# CONFIG_MSI_LAPTOP is not set
# CONFIG_SONY_LAPTOP is not set
# CONFIG_THINKPAD_ACPI is not set
# CONFIG_BLINK is not set
# CONFIG_IDE is not set

#
# SCSI device support
#
CONFIG_RAID_ATTRS=m
CONFIG_SCSI=y
CONFIG_SCSI_TGT=m
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=m
# 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=y

#
# 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=y
CONFIG_SCSI_FC_ATTRS=m
CONFIG_SCSI_ISCSI_ATTRS=m
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set

#
# SCSI low-level drivers
#
CONFIG_ISCSI_TCP=m
CONFIG_BLK_DEV_3W_XXXX_RAID=m
CONFIG_SCSI_3W_9XXX=m
CONFIG_SCSI_ACARD=m
CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=4
CONFIG_AIC7XXX_RESET_DELAY_MS=1000
# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
CONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
CONFIG_SCSI_AIC7XXX_OLD=m
CONFIG_SCSI_AIC79XX=y
CONFIG_AIC79XX_CMDS_PER_DEVICE=4
CONFIG_AIC79XX_RESET_DELAY_MS=1000
# CONFIG_AIC79XX_DEBUG_ENABLE is not set
CONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
CONFIG_SCSI_AIC94XX=y
# CONFIG_AIC94XX_DEBUG is not set
CONFIG_SCSI_ARCMSR=m
CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=m
CONFIG_MEGARAID_MAILBOX=m
CONFIG_MEGARAID_LEGACY=m
CONFIG_MEGARAID_SAS=m
CONFIG_SCSI_HPTIOP=m
CONFIG_SCSI_BUSLOGIC=m
# CONFIG_SCSI_OMIT_FLASHPOINT is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
CONFIG_SCSI_FUTURE_DOMAIN=m
CONFIG_SCSI_GDTH=m
CONFIG_SCSI_IPS=m
CONFIG_SCSI_INITIO=m
CONFIG_SCSI_INIA100=m
CONFIG_SCSI_PPA=m
CONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_EPP16 is not set
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
CONFIG_SCSI_STEX=m
CONFIG_SCSI_SYM53C8XX_2=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
# CONFIG_SCSI_IPR is not set
CONFIG_SCSI_QLOGIC_1280=m
CONFIG_SCSI_QLA_FC=m
CONFIG_SCSI_QLA_ISCSI=m
CONFIG_SCSI_LPFC=m
CONFIG_SCSI_DC395x=m
CONFIG_SCSI_DC390T=m
# CONFIG_SCSI_DEBUG is not set
CONFIG_SCSI_SRP=m

#
# PCMCIA SCSI adapter support
#
# CONFIG_PCMCIA_FDOMAIN is not set
# CONFIG_PCMCIA_QLOGIC is not set
# CONFIG_PCMCIA_SYM53C500 is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_AHCI=y
CONFIG_SATA_SVW=y
CONFIG_ATA_PIIX=y
CONFIG_SATA_MV=y
CONFIG_SATA_NV=y
CONFIG_PDC_ADMA=y
CONFIG_SATA_QSTOR=y
CONFIG_SATA_PROMISE=y
CONFIG_SATA_SX4=y
CONFIG_SATA_SIL=y
CONFIG_SATA_SIL24=y
CONFIG_SATA_SIS=y
CONFIG_SATA_ULI=y
CONFIG_SATA_VIA=y
CONFIG_SATA_VITESSE=y
# CONFIG_SATA_INIC162X is not set
CONFIG_PATA_ALI=y
CONFIG_PATA_AMD=y
CONFIG_PATA_ARTOP=y
CONFIG_PATA_ATIIXP=y
# CONFIG_PATA_CMD640_PCI is not set
CONFIG_PATA_CMD64X=y
CONFIG_PATA_CS5520=y
CONFIG_PATA_CS5530=y
CONFIG_PATA_CYPRESS=y
CONFIG_PATA_EFAR=y
CONFIG_ATA_GENERIC=y
CONFIG_PATA_HPT366=y
CONFIG_PATA_HPT37X=y
CONFIG_PATA_HPT3X2N=y
CONFIG_PATA_HPT3X3=y
CONFIG_PATA_IT821X=y
# CONFIG_PATA_IT8213 is not set
CONFIG_PATA_JMICRON=y
CONFIG_PATA_TRIFLEX=y
CONFIG_PATA_MARVELL=y
CONFIG_PATA_MPIIX=y
CONFIG_PATA_OLDPIIX=y
CONFIG_PATA_NETCELL=y
CONFIG_PATA_NS87410=y
CONFIG_PATA_OPTI=y
CONFIG_PATA_OPTIDMA=y
# CONFIG_PATA_PCMCIA is not set
CONFIG_PATA_PDC_OLD=y
CONFIG_PATA_RADISYS=y
CONFIG_PATA_RZ1000=y
CONFIG_PATA_SC1200=y
CONFIG_PATA_SERVERWORKS=y
CONFIG_PATA_PDC2027X=y
CONFIG_PATA_SIL680=y
CONFIG_PATA_SIS=y
CONFIG_PATA_VIA=y
CONFIG_PATA_WINBOND=y

#
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=m
CONFIG_MD_RAID1=m
CONFIG_MD_RAID10=m
# CONFIG_MD_RAID456 is not set
CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m
CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set
CONFIG_DM_CRYPT=m
CONFIG_DM_SNAPSHOT=m
CONFIG_DM_MIRROR=m
CONFIG_DM_ZERO=m
CONFIG_DM_MULTIPATH=m
CONFIG_DM_MULTIPATH_EMC=m
# CONFIG_DM_DELAY is not set

#
# Fusion MPT device support
#
CONFIG_FUSION=y
CONFIG_FUSION_SPI=y
CONFIG_FUSION_FC=m
CONFIG_FUSION_SAS=m
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=y
CONFIG_FUSION_LAN=m

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

#
# I2O device support
#
CONFIG_I2O=m
CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
CONFIG_I2O_EXT_ADAPTEC=y
CONFIG_I2O_EXT_ADAPTEC_DMA64=y
CONFIG_I2O_CONFIG=m
CONFIG_I2O_CONFIG_OLD_IOCTL=y
CONFIG_I2O_BUS=m
CONFIG_I2O_BLOCK=m
CONFIG_I2O_SCSI=m
CONFIG_I2O_PROC=m
CONFIG_MACINTOSH_DRIVERS=y
# CONFIG_MAC_EMUMOUSEBTN is not set

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

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

#
# Tulip family network device support
#
CONFIG_NET_TULIP=y
CONFIG_DE2104X=m
CONFIG_TULIP=m
# CONFIG_TULIP_MWI is not set
CONFIG_TULIP_MMIO=y
# CONFIG_TULIP_NAPI is not set
CONFIG_DE4X5=m
CONFIG_WINBOND_840=m
CONFIG_DM9102=m
# CONFIG_ULI526X is not set
# CONFIG_PCMCIA_XIRCOM is not set
CONFIG_HP100=m
CONFIG_NET_PCI=y
CONFIG_PCNET32=m
# CONFIG_PCNET32_NAPI is not set
CONFIG_AMD8111_ETH=m
CONFIG_AMD8111E_NAPI=y
CONFIG_ADAPTEC_STARFIRE=m
CONFIG_ADAPTEC_STARFIRE_NAPI=y
CONFIG_B44=m
CONFIG_FORCEDETH=y
CONFIG_FORCEDETH_NAPI=y
# CONFIG_DGRS is not set
CONFIG_EEPRO100=m
CONFIG_E100=y
CONFIG_FEALNX=m
CONFIG_NATSEMI=m
CONFIG_NE2K_PCI=m
CONFIG_8139CP=m
CONFIG_8139TOO=y
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
CONFIG_8139TOO_8129=y
# CONFIG_8139_OLD_RX_RESET is not set
CONFIG_SIS900=m
CONFIG_EPIC100=m
# CONFIG_SUNDANCE is not set
CONFIG_VIA_RHINE=y
CONFIG_VIA_RHINE_MMIO=y
# CONFIG_VIA_RHINE_NAPI is not set
# CONFIG_SC92031 is not set
CONFIG_NET_POCKET=y
# CONFIG_ATP is not set
# CONFIG_DE600 is not set
# CONFIG_DE620 is not set
CONFIG_NETDEV_1000=y
CONFIG_ACENIC=m
# CONFIG_ACENIC_OMIT_TIGON_I is not set
CONFIG_DL2K=m
CONFIG_E1000=y
CONFIG_E1000_NAPI=y
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
CONFIG_NS83820=m
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
CONFIG_R8169=y
CONFIG_R8169_NAPI=y
CONFIG_R8169_VLAN=y
# CONFIG_SIS190 is not set
CONFIG_SKGE=y
# CONFIG_SKY2 is not set
CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=y
CONFIG_BNX2=m
# 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_IXGB=m
CONFIG_IXGB_NAPI=y
CONFIG_S2IO=m
CONFIG_S2IO_NAPI=y
# CONFIG_MYRI10GE is not set
# CONFIG_NETXEN_NIC is not set
# CONFIG_MLX4_CORE is not set
CONFIG_TR=y
CONFIG_IBMOL=m
CONFIG_3C359=m
CONFIG_TMS380TR=m
CONFIG_TMSPCI=m
CONFIG_ABYSS=m

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

#
# USB Network Adapters
#
CONFIG_USB_CATC=m
CONFIG_USB_KAWETH=m
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_USBNET_MII=m
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_CDCETHER=m
# CONFIG_USB_NET_DM9601 is not set
CONFIG_USB_NET_GL620A=m
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
# CONFIG_USB_NET_MCS7830 is not set
CONFIG_USB_NET_RNDIS_HOST=m
CONFIG_USB_NET_CDC_SUBSET=m
CONFIG_USB_ALI_M5632=y
CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
CONFIG_USB_EPSON2888=y
# CONFIG_USB_KC2190 is not set
CONFIG_USB_NET_ZAURUS=m
# CONFIG_NET_PCMCIA is not set
# CONFIG_WAN is not set
CONFIG_ATM_DRIVERS=y
# CONFIG_ATM_DUMMY is not set
CONFIG_ATM_TCP=m
CONFIG_ATM_LANAI=m
CONFIG_ATM_ENI=m
# CONFIG_ATM_ENI_DEBUG is not set
# CONFIG_ATM_ENI_TUNE_BURST is not set
CONFIG_ATM_FIRESTREAM=m
# CONFIG_ATM_ZATM is not set
CONFIG_ATM_IDT77252=m
# CONFIG_ATM_IDT77252_DEBUG is not set
# CONFIG_ATM_IDT77252_RCV_ALL is not set
CONFIG_ATM_IDT77252_USE_SUNI=y
CONFIG_ATM_AMBASSADOR=m
# CONFIG_ATM_AMBASSADOR_DEBUG is not set
CONFIG_ATM_HORIZON=m
# CONFIG_ATM_HORIZON_DEBUG is not set
CONFIG_ATM_FORE200E_MAYBE=m
# CONFIG_ATM_FORE200E_PCA is not set
CONFIG_ATM_HE=m
# CONFIG_ATM_HE_USE_SUNI is not set
CONFIG_FDDI=y
# CONFIG_DEFXX is not set
# CONFIG_SKFP is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
CONFIG_PPP_MULTILINK=y
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
# CONFIG_PPP_BSDCOMP is not set
# CONFIG_PPP_MPPE is not set
CONFIG_PPPOE=m
CONFIG_PPPOATM=m
# CONFIG_SLIP is not set
CONFIG_SLHC=m
CONFIG_NET_FC=y
# CONFIG_SHAPER is not set
CONFIG_NETCONSOLE=y
CONFIG_NETPOLL=y
# CONFIG_NETPOLL_TRAP is not set
CONFIG_NET_POLL_CONTROLLER=y

#
# ISDN subsystem
#
CONFIG_ISDN=m

#
# Old ISDN4Linux
#
CONFIG_ISDN_I4L=m
CONFIG_ISDN_PPP=y
CONFIG_ISDN_PPP_VJ=y
CONFIG_ISDN_MPP=y
CONFIG_IPPP_FILTER=y
# CONFIG_ISDN_PPP_BSDCOMP is not set
CONFIG_ISDN_AUDIO=y
CONFIG_ISDN_TTY_FAX=y

#
# ISDN feature submodules
#
CONFIG_ISDN_DIVERSION=m

#
# ISDN4Linux hardware drivers
#

#
# Passive cards
#
CONFIG_ISDN_DRV_HISAX=m

#
# D-channel protocol features
#
CONFIG_HISAX_EURO=y
CONFIG_DE_AOC=y
CONFIG_HISAX_NO_SENDCOMPLETE=y
CONFIG_HISAX_NO_LLC=y
CONFIG_HISAX_NO_KEYPAD=y
CONFIG_HISAX_1TR6=y
CONFIG_HISAX_NI1=y
CONFIG_HISAX_MAX_CARDS=8

#
# HiSax supported cards
#
CONFIG_HISAX_16_3=y
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_S0BOX=y
CONFIG_HISAX_FRITZPCI=y
CONFIG_HISAX_AVM_A1_PCMCIA=y
CONFIG_HISAX_ELSA=y
CONFIG_HISAX_DIEHLDIVA=y
CONFIG_HISAX_SEDLBAUER=y
CONFIG_HISAX_NETJET=y
CONFIG_HISAX_NETJET_U=y
CONFIG_HISAX_NICCY=y
CONFIG_HISAX_BKM_A4T=y
CONFIG_HISAX_SCT_QUADRO=y
CONFIG_HISAX_GAZEL=y
CONFIG_HISAX_HFC_PCI=y
CONFIG_HISAX_W6692=y
CONFIG_HISAX_HFC_SX=y
CONFIG_HISAX_ENTERNOW_PCI=y
# CONFIG_HISAX_DEBUG is not set

#
# HiSax PCMCIA card service modules
#
# CONFIG_HISAX_SEDLBAUER_CS is not set
# CONFIG_HISAX_ELSA_CS is not set
# CONFIG_HISAX_AVM_A1_CS is not set
# CONFIG_HISAX_TELES_CS is not set

#
# HiSax sub driver modules
#
CONFIG_HISAX_ST5481=m
CONFIG_HISAX_HFCUSB=m
CONFIG_HISAX_HFC4S8S=m
CONFIG_HISAX_FRITZ_PCIPNP=m
CONFIG_HISAX_HDLC=y

#
# Active cards
#

#
# Siemens Gigaset
#
# CONFIG_ISDN_DRV_GIGASET is not set

#
# CAPI subsystem
#
CONFIG_ISDN_CAPI=m
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_CAPI_TRACE=y
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_CAPI_CAPI20=m
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_ISDN_CAPI_CAPIFS=m
CONFIG_ISDN_CAPI_CAPIDRV=m

#
# CAPI hardware drivers
#

#
# Active AVM cards
#
CONFIG_CAPI_AVM=y
CONFIG_ISDN_DRV_AVMB1_B1PCI=m
CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
# CONFIG_ISDN_DRV_AVMB1_AVM_CS is not set
CONFIG_ISDN_DRV_AVMB1_T1PCI=m
CONFIG_ISDN_DRV_AVMB1_C4=m

#
# Active Eicon DIVA Server cards
#
CONFIG_CAPI_EICON=y
CONFIG_ISDN_DIVAS=m
CONFIG_ISDN_DIVAS_BRIPCI=y
CONFIG_ISDN_DIVAS_PRIPCI=y
CONFIG_ISDN_DIVAS_DIVACAPI=m
CONFIG_ISDN_DIVAS_USERIDI=m
CONFIG_ISDN_DIVAS_MAINT=m

#
# Telephony Support
#
# CONFIG_PHONE is not set

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

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_JOYDEV=m
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=y
# 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_SERIAL=m
# CONFIG_MOUSE_APPLETOUCH is not set
CONFIG_MOUSE_VSXXXAA=m
CONFIG_INPUT_JOYSTICK=y
# CONFIG_JOYSTICK_ANALOG is not set
# CONFIG_JOYSTICK_A3D is not set
# CONFIG_JOYSTICK_ADI is not set
# CONFIG_JOYSTICK_COBRA is not set
# CONFIG_JOYSTICK_GF2K is not set
# CONFIG_JOYSTICK_GRIP is not set
# CONFIG_JOYSTICK_GRIP_MP is not set
# CONFIG_JOYSTICK_GUILLEMOT is not set
# CONFIG_JOYSTICK_INTERACT is not set
# CONFIG_JOYSTICK_SIDEWINDER is not set
# CONFIG_JOYSTICK_TMDC is not set
# CONFIG_JOYSTICK_IFORCE is not set
# CONFIG_JOYSTICK_WARRIOR is not set
# CONFIG_JOYSTICK_MAGELLAN is not set
# CONFIG_JOYSTICK_SPACEORB is not set
# CONFIG_JOYSTICK_SPACEBALL is not set
# CONFIG_JOYSTICK_STINGER is not set
CONFIG_JOYSTICK_TWIDJOY=m
# CONFIG_JOYSTICK_DB9 is not set
# CONFIG_JOYSTICK_GAMECON is not set
# CONFIG_JOYSTICK_TURBOGRAFX is not set
CONFIG_JOYSTICK_JOYDUMP=m
# CONFIG_JOYSTICK_XPAD is not set
# CONFIG_INPUT_TABLET is not set
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_TOUCHSCREEN_ELO=m
CONFIG_TOUCHSCREEN_MTOUCH=m
CONFIG_TOUCHSCREEN_MK712=m
# CONFIG_TOUCHSCREEN_PENMOUNT is not set
# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
# CONFIG_TOUCHSCREEN_UCB1400 is not set
# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=m
# CONFIG_INPUT_ATLAS_BTNS is not set
# 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=m

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
# CONFIG_SERIO_PCIPS2 is not set
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
CONFIG_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m
CONFIG_GAMEPORT_EMU10K1=m
CONFIG_GAMEPORT_FM801=m

#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_VT_HW_CONSOLE_BINDING is not set
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_MOXA_SMARTIO_NEW is not set
# CONFIG_ISI is not set
CONFIG_SYNCLINK=m
CONFIG_SYNCLINKMP=m
# CONFIG_SYNCLINK_GT is not set
CONFIG_N_HDLC=m
# CONFIG_SPECIALIX is not set
# CONFIG_SX is not set
# CONFIG_RIO is not set
CONFIG_STALDRV=y

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_PNP=y
# CONFIG_SERIAL_8250_CS is not set
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
# CONFIG_SERIAL_8250_MANY_PORTS is not set
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
# CONFIG_SERIAL_JSM is not set
CONFIG_UNIX98_PTYS=y
# CONFIG_LEGACY_PTYS is not set
CONFIG_PRINTER=m
CONFIG_LP_CONSOLE=y
CONFIG_PPDEV=m
# CONFIG_TIPAR is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set
CONFIG_WATCHDOG=y
# CONFIG_WATCHDOG_NOWAYOUT is not set

#
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
CONFIG_ACQUIRE_WDT=m
CONFIG_ADVANTECH_WDT=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_SC520_WDT=m
CONFIG_EUROTECH_WDT=m
CONFIG_IB700_WDT=m
CONFIG_IBMASR=m
CONFIG_WAFER_WDT=m
CONFIG_I6300ESB_WDT=m
# CONFIG_ITCO_WDT is not set
CONFIG_SC1200_WDT=m
# CONFIG_PC87413_WDT is not set
# CONFIG_60XX_WDT is not set
CONFIG_SBC8360_WDT=m
CONFIG_CPU5_WDT=m
# CONFIG_SMSC37B787_WDT is not set
CONFIG_W83627HF_WDT=m
# CONFIG_W83697HF_WDT is not set
CONFIG_W83877F_WDT=m
CONFIG_W83977F_WDT=m
CONFIG_MACHZ_WDT=m
# CONFIG_SBC_EPX_C3_WATCHDOG is not set

#
# PCI-based Watchdog Cards
#
CONFIG_PCIPCWATCHDOG=m
CONFIG_WDTPCI=m
CONFIG_WDT_501_PCI=y

#
# USB-based Watchdog Cards
#
CONFIG_USBPCWATCHDOG=m
CONFIG_HW_RANDOM=m
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_GEODE=m
CONFIG_NVRAM=m
CONFIG_RTC=y
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=y
CONFIG_AGP_SIS=y
CONFIG_AGP_VIA=y
CONFIG_DRM=y
# CONFIG_DRM_TDFX is not set
CONFIG_DRM_R128=m
CONFIG_DRM_RADEON=y
CONFIG_DRM_I810=y
# CONFIG_DRM_I830 is not set
CONFIG_DRM_I915=y
CONFIG_DRM_MGA=m
# CONFIG_DRM_SIS is not set
CONFIG_DRM_VIA=m
CONFIG_DRM_SAVAGE=m

#
# PCMCIA character devices
#
# CONFIG_SYNCLINK_CS is not set
# CONFIG_CARDMAN_4000 is not set
# CONFIG_CARDMAN_4040 is not set
# CONFIG_MWAVE is not set
# CONFIG_PC8736x_GPIO is not set
CONFIG_RAW_DRIVER=y
CONFIG_MAX_RAW_DEVS=8192
CONFIG_HPET=y
# CONFIG_HPET_RTC_IRQ is not set
CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=m

#
# TPM devices
#
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
CONFIG_I2C=m
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_CHARDEV=m

#
# I2C Algorithms
#
CONFIG_I2C_ALGOBIT=m
CONFIG_I2C_ALGOPCF=m
CONFIG_I2C_ALGOPCA=m

#
# I2C Hardware Bus support
#
CONFIG_I2C_ALI1535=m
CONFIG_I2C_ALI1563=m
CONFIG_I2C_ALI15X3=m
CONFIG_I2C_AMD756=m
CONFIG_I2C_AMD756_S4882=m
CONFIG_I2C_AMD8111=m
CONFIG_I2C_I801=m
CONFIG_I2C_I810=m
CONFIG_I2C_PIIX4=m
CONFIG_I2C_ISA=m
CONFIG_I2C_NFORCE2=m
# CONFIG_I2C_OCORES is not set
# CONFIG_I2C_PARPORT is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
CONFIG_I2C_PROSAVAGE=m
CONFIG_I2C_SAVAGE4=m
# CONFIG_I2C_SIMTEC is not set
CONFIG_I2C_SIS5595=m
CONFIG_I2C_SIS630=m
CONFIG_I2C_SIS96X=m
CONFIG_I2C_STUB=m
# CONFIG_I2C_TINY_USB is not set
CONFIG_I2C_VIA=m
CONFIG_I2C_VIAPRO=m
CONFIG_I2C_VOODOO3=m

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

#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set

#
# Dallas's 1-wire bus
#
# CONFIG_W1 is not set
CONFIG_HWMON=y
CONFIG_HWMON_VID=m
# CONFIG_SENSORS_ABITUGURU is not set
# CONFIG_SENSORS_AD7418 is not set
CONFIG_SENSORS_ADM1021=m
CONFIG_SENSORS_ADM1025=m
CONFIG_SENSORS_ADM1026=m
# CONFIG_SENSORS_ADM1029 is not set
CONFIG_SENSORS_ADM1031=m
CONFIG_SENSORS_ADM9240=m
# CONFIG_SENSORS_K8TEMP is not set
CONFIG_SENSORS_ASB100=m
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_DS1621=m
# CONFIG_SENSORS_F71805F is not set
CONFIG_SENSORS_FSCHER=m
CONFIG_SENSORS_FSCPOS=m
CONFIG_SENSORS_GL518SM=m
CONFIG_SENSORS_GL520SM=m
# CONFIG_SENSORS_CORETEMP is not set
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_LM63=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM77=m
CONFIG_SENSORS_LM78=m
CONFIG_SENSORS_LM80=m
CONFIG_SENSORS_LM83=m
CONFIG_SENSORS_LM85=m
CONFIG_SENSORS_LM87=m
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_LM92=m
CONFIG_SENSORS_MAX1619=m
# CONFIG_SENSORS_MAX6650 is not set
CONFIG_SENSORS_PC87360=m
# CONFIG_SENSORS_PC87427 is not set
CONFIG_SENSORS_SIS5595=m
CONFIG_SENSORS_SMSC47M1=m
# CONFIG_SENSORS_SMSC47M192 is not set
CONFIG_SENSORS_SMSC47B397=m
CONFIG_SENSORS_VIA686A=m
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
CONFIG_SENSORS_W83781D=m
# CONFIG_SENSORS_W83791D is not set
CONFIG_SENSORS_W83792D=m
# CONFIG_SENSORS_W83793 is not set
CONFIG_SENSORS_W83L785TS=m
CONFIG_SENSORS_W83627HF=m
CONFIG_SENSORS_W83627EHF=m
# CONFIG_SENSORS_HDAPS is not set
# CONFIG_SENSORS_APPLESMC is not set
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set

#
# Multimedia devices
#
CONFIG_VIDEO_DEV=m
CONFIG_VIDEO_V4L1=y
CONFIG_VIDEO_V4L1_COMPAT=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
# CONFIG_VIDEO_VIVI is not set
# CONFIG_VIDEO_BT848 is not set
# CONFIG_VIDEO_BWQCAM is not set
# CONFIG_VIDEO_CQCAM is not set
# CONFIG_VIDEO_W9966 is not set
# CONFIG_VIDEO_CPIA is not set
# CONFIG_VIDEO_CPIA2 is not set
# CONFIG_VIDEO_SAA5246A is not set
# CONFIG_VIDEO_SAA5249 is not set
# CONFIG_TUNER_3036 is not set
# CONFIG_VIDEO_STRADIS is not set
# CONFIG_VIDEO_ZORAN is not set
# CONFIG_VIDEO_SAA7134 is not set
# CONFIG_VIDEO_MXB is not set
# CONFIG_VIDEO_DPC is not set
# CONFIG_VIDEO_HEXIUM_ORION is not set
# CONFIG_VIDEO_HEXIUM_GEMINI is not set
# CONFIG_VIDEO_CX88 is not set
# CONFIG_VIDEO_IVTV is not set
# CONFIG_VIDEO_CAFE_CCIC is not set
CONFIG_V4L_USB_DRIVERS=y
# CONFIG_VIDEO_PVRUSB2 is not set
# CONFIG_VIDEO_EM28XX is not set
# CONFIG_VIDEO_USBVISION is not set
CONFIG_VIDEO_USBVIDEO=m
CONFIG_USB_VICAM=m
CONFIG_USB_IBMCAM=m
CONFIG_USB_KONICAWC=m
# CONFIG_USB_QUICKCAM_MESSENGER is not set
# CONFIG_USB_ET61X251 is not set
CONFIG_VIDEO_OVCAMCHIP=m
CONFIG_USB_W9968CF=m
CONFIG_USB_OV511=m
CONFIG_USB_SE401=m
CONFIG_USB_SN9C102=m
CONFIG_USB_STV680=m
# CONFIG_USB_ZC0301 is not set
CONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
# CONFIG_USB_ZR364XX is not set
CONFIG_RADIO_ADAPTERS=y
# CONFIG_RADIO_GEMTEK_PCI is not set
# CONFIG_RADIO_MAXIRADIO is not set
# CONFIG_RADIO_MAESTRO is not set
CONFIG_USB_DSBR=m
# CONFIG_DVB_CORE is not set
CONFIG_DAB=y
CONFIG_USB_DABUSB=m

#
# Graphics support
#
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_LCD_CLASS_DEVICE=m
# CONFIG_BACKLIGHT_PROGEAR is not set

#
# Display device support
#
# CONFIG_DISPLAY_SUPPORT is not set
CONFIG_VGASTATE=m
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=m
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_SYS_FILLRECT=m
CONFIG_FB_SYS_COPYAREA=m
CONFIG_FB_SYS_IMAGEBLIT=m
CONFIG_FB_SYS_FOPS=m
CONFIG_FB_DEFERRED_IO=y
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set

#
# Frame buffer hardware drivers
#
CONFIG_FB_CIRRUS=m
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
CONFIG_FB_ARC=m
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
CONFIG_FB_VGA16=m
CONFIG_FB_VESA=y
# CONFIG_FB_HECUBA is not set
# CONFIG_FB_HGA is not set
CONFIG_FB_S1D13XXX=m
CONFIG_FB_NVIDIA=m
CONFIG_FB_NVIDIA_I2C=y
# CONFIG_FB_NVIDIA_DEBUG is not set
CONFIG_FB_NVIDIA_BACKLIGHT=y
CONFIG_FB_RIVA=m
# CONFIG_FB_RIVA_I2C is not set
# CONFIG_FB_RIVA_DEBUG is not set
CONFIG_FB_RIVA_BACKLIGHT=y
# CONFIG_FB_LE80578 is not set
CONFIG_FB_INTEL=m
# CONFIG_FB_INTEL_DEBUG is not set
CONFIG_FB_INTEL_I2C=y
# CONFIG_FB_MATROX is not set
# 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=m
CONFIG_FB_SAVAGE_I2C=y
CONFIG_FB_SAVAGE_ACCEL=y
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
CONFIG_FB_KYRO=m
# 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_GEODE is not set
# CONFIG_FB_VIRTUAL is not set

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

#
# Sound
#
CONFIG_SOUND=y

#
# Advanced Linux Sound Architecture
#
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
CONFIG_SND_HWDEP=y
CONFIG_SND_RAWMIDI=y
CONFIG_SND_SEQUENCER=y
CONFIG_SND_SEQ_DUMMY=y
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=y
CONFIG_SND_PCM_OSS=y
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=y
CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
# CONFIG_SND_DYNAMIC_MINORS is not set
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set

#
# Generic devices
#
CONFIG_SND_MPU401_UART=y
CONFIG_SND_OPL3_LIB=m
CONFIG_SND_VX_LIB=m
CONFIG_SND_AC97_CODEC=y
CONFIG_SND_DUMMY=m
# CONFIG_SND_VIRMIDI is not set
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_MTS64 is not set
# CONFIG_SND_SERIAL_U16550 is not set
CONFIG_SND_MPU401=y
# CONFIG_SND_PORTMAN2X4 is not set

#
# PCI devices
#
CONFIG_SND_AD1889=m
# CONFIG_SND_ALS300 is not set
CONFIG_SND_ALS4000=m
CONFIG_SND_ALI5451=m
CONFIG_SND_ATIIXP=m
CONFIG_SND_ATIIXP_MODEM=m
CONFIG_SND_AU8810=m
CONFIG_SND_AU8820=m
CONFIG_SND_AU8830=m
CONFIG_SND_AZT3328=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
CONFIG_SND_CA0106=m
CONFIG_SND_CMIPCI=m
CONFIG_SND_CS4281=m
CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_DARLA20 is not set
# CONFIG_SND_GINA20 is not set
# CONFIG_SND_LAYLA20 is not set
# CONFIG_SND_DARLA24 is not set
# CONFIG_SND_GINA24 is not set
# CONFIG_SND_LAYLA24 is not set
# CONFIG_SND_MONA is not set
# CONFIG_SND_MIA is not set
# CONFIG_SND_ECHO3G is not set
# CONFIG_SND_INDIGO is not set
# CONFIG_SND_INDIGOIO is not set
# CONFIG_SND_INDIGODJ is not set
CONFIG_SND_EMU10K1=y
CONFIG_SND_EMU10K1X=y
CONFIG_SND_ENS1370=m
CONFIG_SND_ENS1371=m
CONFIG_SND_ES1938=m
CONFIG_SND_ES1968=m
CONFIG_SND_FM801=m
# CONFIG_SND_FM801_TEA575X_BOOL is not set
CONFIG_SND_HDA_INTEL=y
CONFIG_SND_HDSP=m
CONFIG_SND_HDSPM=m
CONFIG_SND_ICE1712=m
CONFIG_SND_ICE1724=m
CONFIG_SND_INTEL8X0=y
# CONFIG_SND_INTEL8X0M is not set
CONFIG_SND_KORG1212=m
CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL=y
CONFIG_SND_MAESTRO3=m
CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL=y
# CONFIG_SND_MIXART is not set
CONFIG_SND_NM256=m
# CONFIG_SND_PCXHR is not set
# CONFIG_SND_RIPTIDE is not set
CONFIG_SND_RME32=m
CONFIG_SND_RME96=m
CONFIG_SND_RME9652=m
CONFIG_SND_SONICVIBES=m
CONFIG_SND_TRIDENT=m
CONFIG_SND_VIA82XX=y
CONFIG_SND_VIA82XX_MODEM=m
CONFIG_SND_VX222=m
CONFIG_SND_YMFPCI=m
CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL=y
CONFIG_SND_AC97_POWER_SAVE=y

#
# USB devices
#
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_USB_USX2Y=m
# CONFIG_SND_USB_CAIAQ is not set

#
# PCMCIA devices
#
# CONFIG_SND_VXPOCKET is not set
# CONFIG_SND_PDAUDIOCF is not set

#
# System on Chip audio support
#
# CONFIG_SND_SOC is not set

#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not set
CONFIG_AC97_BUS=y

#
# HID Devices
#
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set

#
# USB Input Devices
#
CONFIG_USB_HID=y
# CONFIG_USB_HIDINPUT_POWERBOOK is not set
CONFIG_HID_FF=y
CONFIG_HID_PID=y
CONFIG_LOGITECH_FF=y
# CONFIG_PANTHERLORD_FF is not set
CONFIG_THRUSTMASTER_FF=y
# CONFIG_ZEROPLUS_FF is not set
CONFIG_USB_HIDDEV=y

#
# USB support
#
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

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

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_SPLIT_ISO=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set
# CONFIG_USB_ISP116X_HCD is not set
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_UHCI_HCD=y
# CONFIG_USB_SL811_HCD is not set

#
# USB Device Class drivers
#
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m

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

#
# may also be needed; see USB_STORAGE Help for more information
#
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_DPCM=y
CONFIG_USB_STORAGE_USBAT=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
# CONFIG_USB_STORAGE_ALAUDA is not set
# CONFIG_USB_STORAGE_KARMA is not set
# CONFIG_USB_LIBUSUAL is not set

#
# USB Imaging devices
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
CONFIG_USB_MON=y

#
# USB port drivers
#
CONFIG_USB_USS720=m

#
# USB Serial Converter support
#
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
# CONFIG_USB_SERIAL_AIRCABLE is not set
CONFIG_USB_SERIAL_AIRPRIME=m
# CONFIG_USB_SERIAL_ARK3116 is not set
CONFIG_USB_SERIAL_BELKIN=m
# CONFIG_USB_SERIAL_WHITEHEAT is not set
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
CONFIG_USB_SERIAL_CP2101=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
# CONFIG_USB_SERIAL_FUNSOFT is not set
CONFIG_USB_SERIAL_VISOR=m
CONFIG_USB_SERIAL_IPAQ=m
CONFIG_USB_SERIAL_IR=m
CONFIG_USB_SERIAL_EDGEPORT=m
CONFIG_USB_SERIAL_EDGEPORT_TI=m
CONFIG_USB_SERIAL_GARMIN=m
CONFIG_USB_SERIAL_IPW=m
CONFIG_USB_SERIAL_KEYSPAN_PDA=m
CONFIG_USB_SERIAL_KEYSPAN=m
CONFIG_USB_SERIAL_KEYSPAN_MPR=y
CONFIG_USB_SERIAL_KEYSPAN_USA28=y
CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
CONFIG_USB_SERIAL_KEYSPAN_USA19=y
CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
CONFIG_USB_SERIAL_KLSI=m
CONFIG_USB_SERIAL_KOBIL_SCT=m
CONFIG_USB_SERIAL_MCT_U232=m
# CONFIG_USB_SERIAL_MOS7720 is not set
# CONFIG_USB_SERIAL_MOS7840 is not set
# CONFIG_USB_SERIAL_NAVMAN is not set
CONFIG_USB_SERIAL_PL2303=m
CONFIG_USB_SERIAL_HP4X=m
CONFIG_USB_SERIAL_SAFE=m
CONFIG_USB_SERIAL_SAFE_PADDED=y
# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
CONFIG_USB_SERIAL_TI=m
CONFIG_USB_SERIAL_CYBERJACK=m
CONFIG_USB_SERIAL_XIRCOM=m
# CONFIG_USB_SERIAL_OPTION is not set
CONFIG_USB_SERIAL_OMNINET=m
# CONFIG_USB_SERIAL_DEBUG is not set
CONFIG_USB_EZUSB=y

#
# USB Miscellaneous drivers
#
CONFIG_USB_EMI62=m
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_ADUTUX is not set
CONFIG_USB_AUERSWALD=m
CONFIG_USB_RIO500=m
CONFIG_USB_LEGOTOWER=m
CONFIG_USB_LCD=m
# CONFIG_USB_BERRY_CHARGE is not set
CONFIG_USB_LED=m
# 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_SISUSBVGA is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set
# CONFIG_USB_IOWARRIOR is not set
CONFIG_USB_TEST=m

#
# USB DSL modem support
#
CONFIG_USB_ATM=m
CONFIG_USB_SPEEDTOUCH=m
CONFIG_USB_CXACRU=m
# CONFIG_USB_UEAGLEATM is not set
CONFIG_USB_XUSBATM=m

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
# CONFIG_MMC is not set

#
# LED devices
#
# CONFIG_NEW_LEDS is not set

#
# LED drivers
#

#
# LED Triggers
#

#
# InfiniBand support
#
# CONFIG_INFINIBAND is not set

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

#
# Real Time Clock
#
# CONFIG_RTC_CLASS is not set

#
# DMA Engine support
#
# CONFIG_DMA_ENGINE is not set

#
# DMA Clients
#

#
# DMA Devices
#

#
# Auxiliary Display support
#
# CONFIG_KS0108 is not set

#
# Virtualization
#
# CONFIG_KVM is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
# CONFIG_DELL_RBU is not set
# CONFIG_DCDBAS 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 is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
# CONFIG_EXT4DEV_FS is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
CONFIG_REISERFS_PROC_INFO=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_SECURITY=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_RT=y
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
CONFIG_QFMT_V2=y
CONFIG_QUOTACTL=y
CONFIG_DNOTIFY=y
# CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=m
# CONFIG_FUSE_FS is not set

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

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=m
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
# CONFIG_NTFS_FS is not set

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

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_ECRYPT_FS is not set
CONFIG_HFS_FS=m
CONFIG_HFSPLUS_FS=m
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
CONFIG_JFFS2_FS=m
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
# CONFIG_JFFS2_SUMMARY is not set
# CONFIG_JFFS2_FS_XATTR is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
CONFIG_CRAMFS=m
CONFIG_VXFS_FS=m
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

#
# Network File Systems
#
CONFIG_NFS_FS=m
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
CONFIG_NFS_V4=y
CONFIG_NFS_DIRECTIO=y
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
# CONFIG_SUNRPC_BIND34 is not set
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_RPCSEC_GSS_SPKM3=m
CONFIG_SMB_FS=m
# CONFIG_SMB_NLS_DEFAULT is not set
CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
# CONFIG_CIFS_WEAK_PW_HASH is not set
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y
# 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
# CONFIG_9P_FS is not set

#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
CONFIG_OSF_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_ATARI_PARTITION is not set
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
CONFIG_MINIX_SUBPARTITION=y
CONFIG_SOLARIS_X86_PARTITION=y
CONFIG_UNIXWARE_DISKLABEL=y
# CONFIG_LDM_PARTITION is not set
CONFIG_SGI_PARTITION=y
# CONFIG_ULTRIX_PARTITION is not set
CONFIG_SUN_PARTITION=y
# CONFIG_KARMA_PARTITION is not set
CONFIG_EFI_PARTITION=y
# CONFIG_SYSV68_PARTITION is not set

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

#
# Distributed Lock Manager
#
# CONFIG_DLM is not set

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

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
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_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_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 is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_LIST is not set
# CONFIG_FRAME_POINTER is not set
# CONFIG_FORCED_INLINING is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_LKDTM is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_DEBUG_RODATA=y
# CONFIG_IOMMU_DEBUG is not set
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set

#
# Security options
#
CONFIG_KEYS=y
CONFIG_KEYS_DEBUG_PROC_KEYS=y
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set
CONFIG_SECURITY_CAPABILITIES=m
# CONFIG_SECURITY_ROOTPLUG is not set
CONFIG_SECURITY_SELINUX=y
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
CONFIG_SECURITY_SELINUX_DISABLE=y
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_SECURITY_SELINUX_AVC_STATS=y
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
# CONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT is not set
# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set

#
# Cryptographic options
#
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=y
CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_WP512=y
CONFIG_CRYPTO_TGR192=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_LRW=y
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not set
CONFIG_CRYPTO_BLOWFISH=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_TWOFISH_COMMON=y
CONFIG_CRYPTO_TWOFISH_X86_64=y
CONFIG_CRYPTO_SERPENT=y
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_AES_X86_64=y
CONFIG_CRYPTO_CAST5=y
CONFIG_CRYPTO_CAST6=y
CONFIG_CRYPTO_TEA=y
CONFIG_CRYPTO_ARC4=y
CONFIG_CRYPTO_KHAZAD=y
CONFIG_CRYPTO_ANUBIS=y
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_CRC32C=y
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_TEST is not set

#
# Hardware crypto devices
#

#
# Library routines
#
CONFIG_BITREVERSE=y
CONFIG_CRC_CCITT=y
CONFIG_CRC16=y
# CONFIG_CRC_ITU_T is not set
CONFIG_CRC32=y
CONFIG_LIBCRC32C=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
CONFIG_PLIST=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3 nmi watchdog hang
  2007-06-18 12:11                   ` Ingo Molnar
@ 2007-06-18 14:31                     ` Björn Steinbrink
  2007-06-25  6:18                     ` Ingo Molnar
  1 sibling, 0 replies; 105+ messages in thread
From: Björn Steinbrink @ 2007-06-18 14:31 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Andrew Morton, linux-kernel, Andi Kleen, Linus Torvalds

On 2007.06.18 14:11:22 +0200, Ingo Molnar wrote:
> 
> * Björn Steinbrink <B.Steinbrink@gmx.de> wrote:
> 
> > >      [PATCH] i386: Clean up NMI watchdog code
> > > 
> > > Andi - just boot with nmi_watchdog=2 on a dual-core Athlon64 CPU.
> > 
> > I still fail to reproduce this, could you send me your config?
> 
> attached below. nmi_watchdog=2 still hangs as of -rc5, using the 32-bit 
> kernel (at various places during bootup - a typical place is somewhere 
> after cfq_init()). Changing it to nmi_watchdog=0 makes the kernel boot 
> again.

Still no hang here. Just to make sure that I didn't mess the test up,
here's what I did:

Get pristine 2.6.22-rc5 kernel sources.
Put your config in place as .config
Run: make ARCH=i386 CFLAGS_KERNEL="-m32" AFLAGS_KERNEL="-m32"
Install the kernel.
Reboot, pass "nmi_watchdog=2" as kernel parameter.

As your config is for a 64bit kernel, several config items had to be set
manually. In one run, I accepted the default values, in the second run,
I tried to adjust those items to match your 64bit config as good as I
could.

Anything wrong with that?

Björn

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3 nmi watchdog hang
  2007-06-18 12:11                   ` Ingo Molnar
  2007-06-18 14:31                     ` Björn Steinbrink
@ 2007-06-25  6:18                     ` Ingo Molnar
  2007-06-25  6:59                       ` Ingo Molnar
  1 sibling, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-25  6:18 UTC (permalink / raw)
  To: Bj?rn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds


* Ingo Molnar <mingo@elte.hu> wrote:

> attached below. nmi_watchdog=2 still hangs as of -rc5, using the 
> 32-bit kernel (at various places during bootup - a typical place is 
> somewhere after cfq_init()). Changing it to nmi_watchdog=0 makes the 
> kernel boot again.

FYI, latest -git _still_ hangs with the NMI watchdog with 
nmi_watchdog=2, at the same place:

 Calling initcall 0xc06cc620: check_nmi_watchdog+0x0/0x1f0()
 Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
 CPU#1: NMI appears to be stuck (0->0)!
 initcall 0xc06cc620: check_nmi_watchdog+0x0/0x1f0() returned -1.
 initcall 0xc06cc620 ran for 27 msecs: check_nmi_watchdog+0x0/0x1f0()
 initcall at 0xc06cc620: check_nmi_watchdog+0x0/0x1f0(): returned with 
 error code -1
 Calling initcall 0xc06ccbb0: io_apic_bug_finalize+0x0/0x20()
 initcall 0xc06ccbb0: io_apic_bug_finalize+0x0/0x20() returned 0.
 initcall 0xc06ccbb0 ran for 0 msecs: io_apic_bug_finalize+0x0/0x20()
 Calling initcall 0xc06ccd00: balanced_irq_init+0x0/0x1e0()
 Starting balanced_irq
 [hard hang]

full bootlog attached below.

	Ingo

-------------------------------->
Linux version 2.6.22-rc5-cfs-v19 (mingo@dione) (gcc version 4.0.2) #7 SMP Mon Jun 25 08:09:25 CEST 2007
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
 BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
 BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
 BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
127MB HIGHMEM available.
896MB LOWMEM available.
found SMP MP-table at 000f5680
Entering add_active_range(0, 0, 262128) 0 entries of 256 used
Zone PFN ranges:
  DMA             0 ->     4096
  Normal       4096 ->   229376
  HighMem    229376 ->   262128
early_node_map[1] active PFN ranges
    0:        0 ->   262128
On node 0 totalpages: 262128
  DMA zone: 32 pages used for memmap
  DMA zone: 0 pages reserved
  DMA zone: 4064 pages, LIFO batch:0
  Normal zone: 1760 pages used for memmap
  Normal zone: 223520 pages, LIFO batch:31
  HighMem zone: 255 pages used for memmap
  HighMem zone: 32497 pages, LIFO batch:7
DMI 2.3 present.
ACPI: RSDP 000F76F0, 0014 (r0 Nvidia)
ACPI: RSDT 3FFF3040, 0034 (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
ACPI: FACP 3FFF30C0, 0074 (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
ACPI: DSDT 3FFF3180, 6264 (r1 NVIDIA AWRDACPI     1000 MSFT  100000E)
ACPI: FACS 3FFF0000, 0040
ACPI: SRAT 3FFF9500, 00A0 (r1 AMD    HAMMER          1 AMD         1)
ACPI: MCFG 3FFF9600, 003C (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
ACPI: APIC 3FFF9440, 007C (r1 Nvidia AWRDACPI 42302E31 AWRD        0)
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
ACPI: PM-Timer IO Port: 0x4008
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Processor #0 15:3 APIC version 16
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
Processor #1 15:3 APIC version 16
ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: BIOS IRQ0 pin2 override ignored.
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
ACPI: IRQ9 used by override.
ACPI: IRQ14 used by override.
ACPI: IRQ15 used by override.
Enabling APIC mode:  Flat.  Using 1 I/O APICs
Using ACPI (MADT) for SMP configuration information
Allocating PCI resources starting at 50000000 (gap: 40000000:a0000000)
Built 1 zonelists.  Total pages: 260081
Kernel command line: root=/dev/hda1 console=tty 3 debug profile=0 initcall_debug maxcpus=2 selinux=1 enforcing=0 apic=verbose ignore_loglevel nmi_watchdog=2 sysrq_always_enabled earlyprintk=serial,ttyS0,115200,keep
kernel profiling enabled (shift: 0)
debug: ignoring loglevel setting.
debug: sysrq always enabled.
mapped APIC to ffffd000 (fee00000)
mapped IOAPIC to ffffc000 (fec00000)
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Initializing CPU#0
PID hash table entries: 4096 (order: 12, 16384 bytes)
Detected 2160.217 MHz processor.
spurious 8259A interrupt: IRQ7.
Console: colour VGA+ 80x25
num_possible_cpus(): 2
CPU#0: allocated 33554432 bytes trace buffer.
CPU#0: allocated 33554432 bytes max-trace buffer.
CPU#1: allocated 33554432 bytes trace buffer.
CPU#1: allocated 33554432 bytes max-trace buffer.
allocated 67108864 bytes out-trace buffer.
tracer: a total of 201326592 bytes allocated.
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 818000k/1048512k available (4339k kernel code, 229872k reserved, 1516k data, 408k init, 131008k highmem)
virtual kernel memory layout:
    fixmap  : 0xfff4d000 - 0xfffff000   ( 712 kB)
    pkmap   : 0xff800000 - 0xffc00000   (4096 kB)
    vmalloc : 0xf8800000 - 0xff7fe000   ( 111 MB)
    lowmem  : 0xc0000000 - 0xf8000000   ( 896 MB)
      .init : 0xc06bf000 - 0xc0725000   ( 408 kB)
      .data : 0xc053cc70 - 0xc06b7f54   (1516 kB)
      .text : 0xc0100000 - 0xc053cc70   (4339 kB)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay using timer specific routine.. 4321.76 BogoMIPS (lpj=2160884)
Security Framework v1.0.0 initialized
SELinux:  Initializing.
SELinux:  Starting in permissive mode
Mount-cache hash table entries: 512
CPU: After generic identify, caps: 178bfbff e3d3fbff 00000000 00000000 00000001 00000000 00000003
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU 0(2) -> Core 0
CPU: After all inits, caps: 178bfbff e3d3fbff 00000000 00000410 00000001 00000000 00000003
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
Compat vDSO mapped to ffffe000.
Checking 'hlt' instruction... OK.
SMP alternatives: switching to UP code
ACPI: Core revision 20070126
CPU0: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
enabled ExtINT on CPU#0
SMP alternatives: switching to SMP code
Booting processor 1/1 eip 3000
Initializing CPU#1
masked ExtINT on CPU#1
Calibrating delay using timer specific routine.. 4319.79 BogoMIPS (lpj=2159895)
CPU: After generic identify, caps: 178bfbff e3d3fbff 00000000 00000000 00000001 00000000 00000003
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU 1(2) -> Core 1
CPU: After all inits, caps: 178bfbff e3d3fbff 00000000 00000410 00000001 00000000 00000003
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#1.
CPU1: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
Total of 2 processors activated (8641.55 BogoMIPS).
ENABLING IO-APIC IRQs
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=0x31 apic1=0 pin1=0 apic2=-1 pin2=-1
Using local APIC timer interrupts.
calibrating APIC timer ...
... lapic delta = 1349919
... PM timer delta = 357900
... PM timer result ok
..... delta 1349919
..... mult: 57987393
..... calibration result: 215987
..... CPU clock speed is 2159.0871 MHz.
..... host bus clock speed is 215.0987 MHz.
Brought up 2 CPUs
Calling initcall 0xc06e0bd0: init_cpufreq_transition_notifier_list+0x0/0x20()
initcall 0xc06e0bd0: init_cpufreq_transition_notifier_list+0x0/0x20() returned 0.
initcall 0xc06e0bd0 ran for 0 msecs: init_cpufreq_transition_notifier_list+0x0/0x20()
Calling initcall 0xc06c80a0: cpufreq_tsc+0x0/0x20()
initcall 0xc06c80a0: cpufreq_tsc+0x0/0x20() returned 0.
initcall 0xc06c80a0 ran for 0 msecs: cpufreq_tsc+0x0/0x20()
Calling initcall 0xc06c9cb0: acpisleep_dmi_init+0x0/0x20()
initcall 0xc06c9cb0: acpisleep_dmi_init+0x0/0x20() returned 0.
initcall 0xc06c9cb0 ran for 0 msecs: acpisleep_dmi_init+0x0/0x20()
Calling initcall 0xc06c9ec0: reboot_init+0x0/0x20()
initcall 0xc06c9ec0: reboot_init+0x0/0x20() returned 0.
initcall 0xc06c9ec0 ran for 0 msecs: reboot_init+0x0/0x20()
Calling initcall 0xc06cf100: print_banner+0x0/0x10()
Booting paravirtualized kernel on bare hardware
initcall 0xc06cf100: print_banner+0x0/0x10() returned 0.
initcall 0xc06cf100 ran for 0 msecs: print_banner+0x0/0x10()
Calling initcall 0xc06d0d30: sysctl_init+0x0/0x20()
initcall 0xc06d0d30: sysctl_init+0x0/0x20() returned 0.
initcall 0xc06d0d30 ran for 0 msecs: sysctl_init+0x0/0x20()
Calling initcall 0xc06d1760: init_jiffies_clocksource+0x0/0x10()
initcall 0xc06d1760: init_jiffies_clocksource+0x0/0x10() returned 0.
initcall 0xc06d1760 ran for 0 msecs: init_jiffies_clocksource+0x0/0x10()
Calling initcall 0xc06d1880: pm_init+0x0/0x30()
initcall 0xc06d1880: pm_init+0x0/0x30() returned 0.
initcall 0xc06d1880 ran for 0 msecs: pm_init+0x0/0x30()
Calling initcall 0xc06d18b0: pm_disk_init+0x0/0x20()
initcall 0xc06d18b0: pm_disk_init+0x0/0x20() returned 0.
initcall 0xc06d18b0 ran for 0 msecs: pm_disk_init+0x0/0x20()
Calling initcall 0xc0157690: swsusp_header_init+0x0/0x30()
initcall 0xc0157690: swsusp_header_init+0x0/0x30() returned 0.
initcall 0xc0157690 ran for 0 msecs: swsusp_header_init+0x0/0x30()
Calling initcall 0xc06d1e50: ksysfs_init+0x0/0x30()
initcall 0xc06d1e50: ksysfs_init+0x0/0x30() returned 0.
initcall 0xc06d1e50 ran for 0 msecs: ksysfs_init+0x0/0x30()
Calling initcall 0xc06d4480: filelock_init+0x0/0x40()
initcall 0xc06d4480: filelock_init+0x0/0x40() returned 0.
initcall 0xc06d4480 ran for 0 msecs: filelock_init+0x0/0x40()
Calling initcall 0xc06d4ff0: init_misc_binfmt+0x0/0x40()
initcall 0xc06d4ff0: init_misc_binfmt+0x0/0x40() returned 0.
initcall 0xc06d4ff0 ran for 0 msecs: init_misc_binfmt+0x0/0x40()
Calling initcall 0xc06d5030: init_script_binfmt+0x0/0x10()
initcall 0xc06d5030: init_script_binfmt+0x0/0x10() returned 0.
initcall 0xc06d5030 ran for 0 msecs: init_script_binfmt+0x0/0x10()
Calling initcall 0xc06d5040: init_elf_binfmt+0x0/0x10()
initcall 0xc06d5040: init_elf_binfmt+0x0/0x10() returned 0.
initcall 0xc06d5040 ran for 0 msecs: init_elf_binfmt+0x0/0x10()
Calling initcall 0xc06d6070: securityfs_init+0x0/0x50()
initcall 0xc06d6070: securityfs_init+0x0/0x50() returned 0.
initcall 0xc06d6070 ran for 0 msecs: securityfs_init+0x0/0x50()
Calling initcall 0xc06d6b00: random32_init+0x0/0x70()
initcall 0xc06d6b00: random32_init+0x0/0x70() returned 0.
initcall 0xc06d6b00 ran for 0 msecs: random32_init+0x0/0x70()
Calling initcall 0xc06e0bf0: cpufreq_core_init+0x0/0x80()
initcall 0xc06e0bf0: cpufreq_core_init+0x0/0x80() returned 0.
initcall 0xc06e0bf0 ran for 0 msecs: cpufreq_core_init+0x0/0x80()
Calling initcall 0xc06e43f0: sock_init+0x0/0x60()
initcall 0xc06e43f0: sock_init+0x0/0x60() returned 0.
initcall 0xc06e43f0 ran for 0 msecs: sock_init+0x0/0x60()
Calling initcall 0xc06e4bb0: netpoll_init+0x0/0x30()
initcall 0xc06e4bb0: netpoll_init+0x0/0x30() returned 0.
initcall 0xc06e4bb0 ran for 0 msecs: netpoll_init+0x0/0x30()
Calling initcall 0xc06e4eb0: netlink_proto_init+0x0/0x150()
NET: Registered protocol family 16
initcall 0xc06e4eb0: netlink_proto_init+0x0/0x150() returned 0.
initcall 0xc06e4eb0 ran for 0 msecs: netlink_proto_init+0x0/0x150()
Calling initcall 0xc06d69f0: kobject_uevent_init+0x0/0x50()
initcall 0xc06d69f0: kobject_uevent_init+0x0/0x50() returned 0.
initcall 0xc06d69f0 ran for 0 msecs: kobject_uevent_init+0x0/0x50()
Calling initcall 0xc06d6c30: pcibus_class_init+0x0/0x10()
initcall 0xc06d6c30: pcibus_class_init+0x0/0x10() returned 0.
initcall 0xc06d6c30 ran for 0 msecs: pcibus_class_init+0x0/0x10()
Calling initcall 0xc06d7270: pci_driver_init+0x0/0x10()
initcall 0xc06d7270: pci_driver_init+0x0/0x10() returned 0.
initcall 0xc06d7270 ran for 0 msecs: pci_driver_init+0x0/0x10()
Calling initcall 0xc06d7af0: backlight_class_init+0x0/0x10()
initcall 0xc06d7af0: backlight_class_init+0x0/0x10() returned 0.
initcall 0xc06d7af0 ran for 0 msecs: backlight_class_init+0x0/0x10()
Calling initcall 0xc06da0e0: tty_class_init+0x0/0x30()
initcall 0xc06da0e0: tty_class_init+0x0/0x30() returned 0.
initcall 0xc06da0e0 ran for 0 msecs: tty_class_init+0x0/0x30()
Calling initcall 0xc06da7f0: vtconsole_class_init+0x0/0xd0()
initcall 0xc06da7f0: vtconsole_class_init+0x0/0xd0() returned 0.
initcall 0xc06da7f0 ran for 0 msecs: vtconsole_class_init+0x0/0xd0()
Calling initcall 0xc06e0530: eisa_init+0x0/0x30()
EISA bus registered
initcall 0xc06e0530: eisa_init+0x0/0x30() returned 0.
initcall 0xc06e0530 ran for 0 msecs: eisa_init+0x0/0x30()
Calling initcall 0xc06c7ff0: init_pit_clocksource+0x0/0x90()
initcall 0xc06c7ff0: init_pit_clocksource+0x0/0x90() returned 0.
initcall 0xc06c7ff0 ran for 0 msecs: init_pit_clocksource+0x0/0x90()
Calling initcall 0xc06c8b00: mtrr_if_init+0x0/0x60()
initcall 0xc06c8b00: mtrr_if_init+0x0/0x60() returned 0.
initcall 0xc06c8b00 ran for 0 msecs: mtrr_if_init+0x0/0x60()
Calling initcall 0xc06c9d90: ffh_cstate_init+0x0/0x30()
initcall 0xc06c9d90: ffh_cstate_init+0x0/0x30() returned -1.
initcall 0xc06c9d90 ran for 0 msecs: ffh_cstate_init+0x0/0x30()
initcall at 0xc06c9d90: ffh_cstate_init+0x0/0x30(): returned with error code -1
Calling initcall 0xc06d7550: acpi_pci_init+0x0/0x50()
ACPI: bus type pci registered
initcall 0xc06d7550: acpi_pci_init+0x0/0x50() returned 0.
initcall 0xc06d7550 ran for 0 msecs: acpi_pci_init+0x0/0x50()
Calling initcall 0xc06d930b: init_acpi_device_notify+0x0/0x45()
initcall 0xc06d930b: init_acpi_device_notify+0x0/0x45() returned 0.
initcall 0xc06d930b ran for 0 msecs: init_acpi_device_notify+0x0/0x45()
Calling initcall 0xc06e2b70: pci_access_init+0x0/0x50()
PCI: Using MMCONFIG
PCI: No mmconfig possible on device 00:18
initcall 0xc06e2b70: pci_access_init+0x0/0x50() returned 0.
initcall 0xc06e2b70 ran for 1 msecs: pci_access_init+0x0/0x50()
Calling initcall 0xc06c7960: request_standard_resources+0x0/0x3b0()
Setting up standard PCI resources
initcall 0xc06c7960: request_standard_resources+0x0/0x3b0() returned 0.
initcall 0xc06c7960 ran for 3 msecs: request_standard_resources+0x0/0x3b0()
Calling initcall 0xc06c7d40: topology_init+0x0/0x60()
initcall 0xc06c7d40: topology_init+0x0/0x60() returned 0.
initcall 0xc06c7d40 ran for 0 msecs: topology_init+0x0/0x60()
Calling initcall 0xc06c8800: mtrr_init_finialize+0x0/0x40()
initcall 0xc06c8800: mtrr_init_finialize+0x0/0x40() returned 0.
initcall 0xc06c8800 ran for 0 msecs: mtrr_init_finialize+0x0/0x40()
Calling initcall 0xc06c9ee0: mca_init+0x0/0x340()
initcall 0xc06c9ee0: mca_init+0x0/0x340() returned -19.
initcall 0xc06c9ee0 ran for 0 msecs: mca_init+0x0/0x340()
Calling initcall 0xc06d1110: param_sysfs_init+0x0/0x1e0()
initcall 0xc06d1110: param_sysfs_init+0x0/0x1e0() returned 0.
initcall 0xc06d1110 ran for 1 msecs: param_sysfs_init+0x0/0x1e0()
Calling initcall 0xc0158930: pm_sysrq_init+0x0/0x20()
initcall 0xc0158930: pm_sysrq_init+0x0/0x20() returned 0.
initcall 0xc0158930 ran for 0 msecs: pm_sysrq_init+0x0/0x20()
Calling initcall 0xc06d4c30: init_bio+0x0/0xd0()
initcall 0xc06d4c30: init_bio+0x0/0xd0() returned 0.
initcall 0xc06d4c30 ran for 0 msecs: init_bio+0x0/0xd0()
Calling initcall 0xc06d6720: genhd_device_init+0x0/0x60()
initcall 0xc06d6720: genhd_device_init+0x0/0x60() returned 0.
initcall 0xc06d6720 ran for 0 msecs: genhd_device_init+0x0/0x60()
Calling initcall 0xc06d75a0: fbmem_init+0x0/0xa0()
initcall 0xc06d75a0: fbmem_init+0x0/0xa0() returned 0.
initcall 0xc06d75a0 ran for 0 msecs: fbmem_init+0x0/0xa0()
Calling initcall 0xc06d910c: acpi_init+0x0/0x1ff()
ACPI: Interpreter enabled
ACPI: (supports S0 S1 S3 S4 S5)
ACPI: Using IOAPIC for interrupt routing
initcall 0xc06d910c: acpi_init+0x0/0x1ff() returned 0.
initcall 0xc06d910c ran for 9 msecs: acpi_init+0x0/0x1ff()
Calling initcall 0xc06d9350: acpi_scan_init+0x0/0xfc()
initcall 0xc06d9350: acpi_scan_init+0x0/0xfc() returned 0.
initcall 0xc06d9350 ran for 9 msecs: acpi_scan_init+0x0/0xfc()
Calling initcall 0xc06d94d4: acpi_ec_init+0x0/0x55()
initcall 0xc06d94d4: acpi_ec_init+0x0/0x55() returned 0.
initcall 0xc06d94d4 ran for 0 msecs: acpi_ec_init+0x0/0x55()
Calling initcall 0xc06d957c: acpi_pci_root_init+0x0/0x25()
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Probing PCI hardware (bus 00)
PCI: Transparent bridge - 0000:00:09.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.HUB0._PRT]
initcall 0xc06d957c: acpi_pci_root_init+0x0/0x25() returned 0.
initcall 0xc06d957c ran for 55 msecs: acpi_pci_root_init+0x0/0x25()
Calling initcall 0xc06d9675: acpi_pci_link_init+0x0/0x43()
ACPI: PCI Interrupt Link [LNK1] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNK2] (IRQs 3 4 5 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNK3] (IRQs 3 4 *5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNK4] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNK5] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUBA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUBB] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LMAC] (IRQs 3 4 5 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LACI] (IRQs *3 4 5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LMCI] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LSMB] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUB2] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LIDE] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LSID] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LFID] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LPCA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [APC1] (IRQs 16) *0, disabled.
ACPI: PCI Interrupt Link [APC2] (IRQs 17) *0
ACPI: PCI Interrupt Link [APC3] (IRQs 18) *0
ACPI: PCI Interrupt Link [APC4] (IRQs 19) *0, disabled.
ACPI: PCI Interrupt Link [APC5] (IRQs *16), disabled.
ACPI: PCI Interrupt Link [APCF] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCG] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCH] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCJ] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCK] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCS] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCL] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCZ] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APSI] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APSJ] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCP] (IRQs 20 21 22 23) *0, disabled.
initcall 0xc06d9675: acpi_pci_link_init+0x0/0x43() returned 0.
initcall 0xc06d9675 ran for 119 msecs: acpi_pci_link_init+0x0/0x43()
Calling initcall 0xc06d974f: acpi_power_init+0x0/0x69()
initcall 0xc06d974f: acpi_power_init+0x0/0x69() returned 0.
initcall 0xc06d974f ran for 0 msecs: acpi_power_init+0x0/0x69()
Calling initcall 0xc06d97b8: acpi_system_init+0x0/0xad()
initcall 0xc06d97b8: acpi_system_init+0x0/0xad() returned 0.
initcall 0xc06d97b8 ran for 0 msecs: acpi_system_init+0x0/0xad()
Calling initcall 0xc06d9865: acpi_event_init+0x0/0x38()
initcall 0xc06d9865: acpi_event_init+0x0/0x38() returned 0.
initcall 0xc06d9865 ran for 0 msecs: acpi_event_init+0x0/0x38()
Calling initcall 0xc06d989d: acpi_cm_sbs_init+0x0/0x13()
initcall 0xc06d989d: acpi_cm_sbs_init+0x0/0x13() returned 0.
initcall 0xc06d989d ran for 0 msecs: acpi_cm_sbs_init+0x0/0x13()
Calling initcall 0xc06d98b0: pnp_init+0x0/0x20()
Linux Plug and Play Support v0.97 (c) Adam Belay
initcall 0xc06d98b0: pnp_init+0x0/0x20() returned 0.
initcall 0xc06d98b0 ran for 0 msecs: pnp_init+0x0/0x20()
Calling initcall 0xc06d9b40: pnpacpi_init+0x0/0x90()
pnp: PnP ACPI init
ACPI: bus type pnp registered
pnp: PnP ACPI: found 16 devices
ACPI: ACPI bus type pnp unregistered
initcall 0xc06d9b40: pnpacpi_init+0x0/0x90() returned 0.
initcall 0xc06d9b40 ran for 8 msecs: pnpacpi_init+0x0/0x90()
Calling initcall 0xc06da520: misc_init+0x0/0x80()
initcall 0xc06da520: misc_init+0x0/0x80() returned 0.
initcall 0xc06da520 ran for 0 msecs: misc_init+0x0/0x80()
Calling initcall 0xc06dd9e0: init_scsi+0x0/0xb0()
SCSI subsystem initialized
initcall 0xc06dd9e0: init_scsi+0x0/0xb0() returned 0.
initcall 0xc06dd9e0 ran for 0 msecs: init_scsi+0x0/0xb0()
Calling initcall 0xc06de2f0: ata_init+0x0/0x80()
libata version 2.21 loaded.
initcall 0xc06de2f0: ata_init+0x0/0x80() returned 0.
initcall 0xc06de2f0 ran for 0 msecs: ata_init+0x0/0x80()
Calling initcall 0xc06df270: init_pcmcia_cs+0x0/0x40()
initcall 0xc06df270: init_pcmcia_cs+0x0/0x40() returned 0.
initcall 0xc06df270 ran for 0 msecs: init_pcmcia_cs+0x0/0x40()
Calling initcall 0xc06df3f0: usb_init+0x0/0x110()
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
initcall 0xc06df3f0: usb_init+0x0/0x110() returned 0.
initcall 0xc06df3f0 ran for 2 msecs: usb_init+0x0/0x110()
Calling initcall 0xc06df900: serio_init+0x0/0xb0()
initcall 0xc06df900: serio_init+0x0/0xb0() returned 0.
initcall 0xc06df900 ran for 0 msecs: serio_init+0x0/0xb0()
Calling initcall 0xc06dfdf0: input_init+0x0/0x120()
initcall 0xc06dfdf0: input_init+0x0/0x120() returned 0.
initcall 0xc06dfdf0 ran for 0 msecs: input_init+0x0/0x120()
Calling initcall 0xc06e0130: hwmon_init+0x0/0x40()
initcall 0xc06e0130: hwmon_init+0x0/0x40() returned 0.
initcall 0xc06e0130 ran for 0 msecs: hwmon_init+0x0/0x40()
Calling initcall 0xc06e27d0: ac97_bus_init+0x0/0x10()
initcall 0xc06e27d0: ac97_bus_init+0x0/0x10() returned 0.
initcall 0xc06e27d0 ran for 0 msecs: ac97_bus_init+0x0/0x10()
Calling initcall 0xc06e3770: pci_acpi_init+0x0/0xb0()
PCI: Using ACPI for IRQ routing
PCI: If a device doesn't work, try "pci=routeirq".  If it helps, post a report
number of MP IRQ sources: 16.
number of IO-APIC #2 registers: 24.
testing the IO APIC.......................
IO APIC #2......
.... register #00: 00000000
.......    : physical APIC id: 00
.......    : Delivery Type: 0
.......    : LTS          : 0
.... register #01: 00170011
.......     : max redirection entries: 0017
.......     : PRQ implemented: 0
.......     : IO APIC version: 0011
.... register #02: 00000000
.......     : arbitration: 00
.... IRQ redirection table:
 NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:   
 00 003 03  0    0    0   0   0    1    1    31
 01 003 03  1    0    0   0   0    1    1    39
 02 003 03  0    0    0   0   0    1    1    41
 03 003 03  1    0    0   0   0    1    1    49
 04 003 03  1    0    0   0   0    1    1    51
 05 003 03  1    0    0   0   0    1    1    59
 06 003 03  1    0    0   0   0    1    1    61
 07 003 03  1    0    0   0   0    1    1    69
 08 003 03  1    0    0   0   0    1    1    71
 09 003 03  0    1    0   0   0    1    1    79
 0a 003 03  1    0    0   0   0    1    1    81
 0b 003 03  1    0    0   0   0    1    1    89
 0c 003 03  1    0    0   0   0    1    1    91
 0d 003 03  1    0    0   0   0    1    1    99
 0e 003 03  0    0    0   0   0    1    1    A1
 0f 003 03  0    0    0   0   0    1    1    A9
 10 000 00  1    0    0   0   0    0    0    00
 11 000 00  1    0    0   0   0    0    0    00
 12 000 00  1    0    0   0   0    0    0    00
 13 000 00  1    0    0   0   0    0    0    00
 14 000 00  1    0    0   0   0    0    0    00
 15 000 00  1    0    0   0   0    0    0    00
 16 000 00  1    0    0   0   0    0    0    00
 17 000 00  1    0    0   0   0    0    0    00
IRQ to pin mappings:
IRQ0 -> 0:0
IRQ1 -> 0:1
IRQ2 -> 0:2
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ5 -> 0:5
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ10 -> 0:10
IRQ11 -> 0:11
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ15 -> 0:15
.................................... done.
initcall 0xc06e3770: pci_acpi_init+0x0/0xb0() returned 0.
initcall 0xc06e3770 ran for 82 msecs: pci_acpi_init+0x0/0xb0()
Calling initcall 0xc06e3820: pci_legacy_init+0x0/0x120()
initcall 0xc06e3820: pci_legacy_init+0x0/0x120() returned 0.
initcall 0xc06e3820 ran for 0 msecs: pci_legacy_init+0x0/0x120()
Calling initcall 0xc06e3e50: pcibios_irq_init+0x0/0x510()
initcall 0xc06e3e50: pcibios_irq_init+0x0/0x510() returned 0.
initcall 0xc06e3e50 ran for 0 msecs: pcibios_irq_init+0x0/0x510()
Calling initcall 0xc06e4360: pcibios_init+0x0/0x90()
initcall 0xc06e4360: pcibios_init+0x0/0x90() returned 0.
initcall 0xc06e4360 ran for 0 msecs: pcibios_init+0x0/0x90()
Calling initcall 0xc06e44b0: proto_init+0x0/0x30()
initcall 0xc06e44b0: proto_init+0x0/0x30() returned 0.
initcall 0xc06e44b0 ran for 0 msecs: proto_init+0x0/0x30()
Calling initcall 0xc06e4620: net_dev_init+0x0/0x220()
initcall 0xc06e4620: net_dev_init+0x0/0x220() returned 0.
initcall 0xc06e4620 ran for 0 msecs: net_dev_init+0x0/0x220()
Calling initcall 0xc06e4880: neigh_init+0x0/0x80()
initcall 0xc06e4880: neigh_init+0x0/0x80() returned 0.
initcall 0xc06e4880 ran for 0 msecs: neigh_init+0x0/0x80()
Calling initcall 0xc06e4be0: fib_rules_init+0x0/0x60()
initcall 0xc06e4be0: fib_rules_init+0x0/0x60() returned 0.
initcall 0xc06e4be0 ran for 0 msecs: fib_rules_init+0x0/0x60()
Calling initcall 0xc06e4d70: pktsched_init+0x0/0xd0()
initcall 0xc06e4d70: pktsched_init+0x0/0xd0() returned 0.
initcall 0xc06e4d70 ran for 0 msecs: pktsched_init+0x0/0xd0()
Calling initcall 0xc06e4e50: tc_filter_init+0x0/0x60()
initcall 0xc06e4e50: tc_filter_init+0x0/0x60() returned 0.
initcall 0xc06e4e50 ran for 0 msecs: tc_filter_init+0x0/0x60()
Calling initcall 0xc06e5000: genl_init+0x0/0xb0()
initcall 0xc06e5000: genl_init+0x0/0xb0() returned 0.
initcall 0xc06e5000 ran for 0 msecs: genl_init+0x0/0xb0()
Calling initcall 0xc06e72b0: wireless_nlevent_init+0x0/0x2c()
initcall 0xc06e72b0: wireless_nlevent_init+0x0/0x2c() returned 0.
initcall 0xc06e72b0 ran for 0 msecs: wireless_nlevent_init+0x0/0x2c()
Calling initcall 0xc06d1630: clocksource_done_booting+0x0/0x20()
initcall 0xc06d1630: clocksource_done_booting+0x0/0x20() returned 0.
initcall 0xc06d1630 ran for 0 msecs: clocksource_done_booting+0x0/0x20()
Calling initcall 0xc06d43f0: init_pipe_fs+0x0/0x50()
initcall 0xc06d43f0: init_pipe_fs+0x0/0x50() returned 0.
initcall 0xc06d43f0 ran for 0 msecs: init_pipe_fs+0x0/0x50()
Calling initcall 0xc06d4e60: eventpoll_init+0x0/0x90()
initcall 0xc06d4e60: eventpoll_init+0x0/0x90() returned 0.
initcall 0xc06d4e60 ran for 0 msecs: eventpoll_init+0x0/0x90()
Calling initcall 0xc06d4ef0: anon_inode_init+0x0/0x100()
initcall 0xc06d4ef0: anon_inode_init+0x0/0x100() returned 0.
initcall 0xc06d4ef0 ran for 0 msecs: anon_inode_init+0x0/0x100()
Calling initcall 0xc06d9a10: pnp_system_init+0x0/0x10()
pnp: 00:01: ioport range 0x4000-0x407f has been reserved
pnp: 00:01: ioport range 0x4080-0x40ff has been reserved
pnp: 00:01: ioport range 0x4400-0x447f has been reserved
pnp: 00:01: ioport range 0x4480-0x44ff has been reserved
pnp: 00:01: ioport range 0x4800-0x487f has been reserved
pnp: 00:01: ioport range 0x4880-0x48ff has been reserved
pnp: 00:0e: iomem range 0xe0000000-0xefffffff could not be reserved
pnp: 00:0f: iomem range 0xf0000-0xf3fff could not be reserved
pnp: 00:0f: iomem range 0xf4000-0xf7fff could not be reserved
pnp: 00:0f: iomem range 0xf8000-0xfbfff could not be reserved
pnp: 00:0f: iomem range 0xfc000-0xfffff could not be reserved
initcall 0xc06d9a10: pnp_system_init+0x0/0x10() returned 0.
initcall 0xc06d9a10 ran for 10 msecs: pnp_system_init+0x0/0x10()
Calling initcall 0xc06d9fe0: chr_dev_init+0x0/0x90()
initcall 0xc06d9fe0: chr_dev_init+0x0/0x90() returned 0.
initcall 0xc06d9fe0 ran for 0 msecs: chr_dev_init+0x0/0x90()
Calling initcall 0xc06dc6a0: firmware_class_init+0x0/0x70()
initcall 0xc06dc6a0: firmware_class_init+0x0/0x70() returned 0.
initcall 0xc06dc6a0 ran for 0 msecs: firmware_class_init+0x0/0x70()
Calling initcall 0xc06df2b0: init_pcmcia_bus+0x0/0x90()
initcall 0xc06df2b0: init_pcmcia_bus+0x0/0x90() returned 0.
initcall 0xc06df2b0 ran for 0 msecs: init_pcmcia_bus+0x0/0x90()
Calling initcall 0xc06e0c70: cpufreq_gov_userspace_init+0x0/0x20()
initcall 0xc06e0c70: cpufreq_gov_userspace_init+0x0/0x20() returned 0.
initcall 0xc06e0c70 ran for 0 msecs: cpufreq_gov_userspace_init+0x0/0x20()
Calling initcall 0xc06e1260: init_acpi_pm_clocksource+0x0/0x1d0()
initcall 0xc06e1260<6>Time: acpi_pm clocksource has been installed.
Switched to high resolution mode on CPU 0
Switched to high resolution mode on CPU 1
: init_acpi_pm_clocksource+0x0/0x1d0() returned 0.
initcall 0xc06e1260 ran for 28 msecs: init_acpi_pm_clocksource+0x0/0x1d0()
Calling initcall 0xc06e2850: pcibios_assign_resources+0x0/0xb0()
PCI: Bridge: 0000:00:09.0
  IO window: c000-cfff
  MEM window: da000000-da0fffff
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0b.0
  IO window: disabled.
  MEM window: disabled.
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0c.0
  IO window: disabled.
  MEM window: disabled.
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0d.0
  IO window: disabled.
  MEM window: disabled.
  PREFETCH window: disabled.
PCI: Bridge: 0000:00:0e.0
  IO window: b000-bfff
  MEM window: d8000000-d9ffffff
  PREFETCH window: d0000000-d7ffffff
PCI: Setting latency timer of device 0000:00:09.0 to 64
PCI: Setting latency timer of device 0000:00:0b.0 to 64
PCI: Setting latency timer of device 0000:00:0c.0 to 64
PCI: Setting latency timer of device 0000:00:0d.0 to 64
PCI: Setting latency timer of device 0000:00:0e.0 to 64
initcall 0xc06e2850: pcibios_assign_resources+0x0/0xb0() returned 0.
initcall 0xc06e2850 ran for 69 msecs: pcibios_assign_resources+0x0/0xb0()
Calling initcall 0xc06e5c20: inet_init+0x0/0x310()
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 131072 (order: 8, 1572864 bytes)
TCP bind hash table entries: 65536 (order: 7, 524288 bytes)
TCP: Hash tables configured (established 131072 bind 65536)
TCP reno registered
initcall 0xc06e5c20: inet_init+0x0/0x310() returned 0.
initcall 0xc06e5c20 ran for 41 msecs: inet_init+0x0/0x310()
Calling initcall 0xc06c58a0: populate_rootfs+0x0/0x100()
initcall 0xc06c58a0: populate_rootfs+0x0/0x100() returned 0.
initcall 0xc06c58a0 ran for 0 msecs: populate_rootfs+0x0/0x100()
Calling initcall 0xc06c6a80: i8259A_init_sysfs+0x0/0x30()
initcall 0xc06c6a80: i8259A_init_sysfs+0x0/0x30() returned 0.
initcall 0xc06c6a80 ran for 0 msecs: i8259A_init_sysfs+0x0/0x30()
Calling initcall 0xc06c6bc0: sbf_init+0x0/0xf0()
initcall 0xc06c6bc0: sbf_init+0x0/0xf0() returned 0.
initcall 0xc06c6bc0 ran for 0 msecs: sbf_init+0x0/0xf0()
Calling initcall 0xc06c7d10: i8237A_init_sysfs+0x0/0x30()
initcall 0xc06c7d10: i8237A_init_sysfs+0x0/0x30() returned 0.
initcall 0xc06c7d10 ran for 0 msecs: i8237A_init_sysfs+0x0/0x30()
Calling initcall 0xc010eed0: cache_sysfs_init+0x0/0x80()
initcall 0xc010eed0: cache_sysfs_init+0x0/0x80() returned 0.
initcall 0xc010eed0 ran for 0 msecs: cache_sysfs_init+0x0/0x80()
Calling initcall 0xc06c86f0: thermal_throttle_init_device+0x0/0xc0()
initcall 0xc06c86f0: thermal_throttle_init_device+0x0/0xc0() returned 0.
initcall 0xc06c86f0 ran for 0 msecs: thermal_throttle_init_device+0x0/0xc0()
Calling initcall 0xc06c87b0: init_nonfatal_mce_checker+0x0/0x50()
Machine check exception polling timer started.
initcall 0xc06c87b0: init_nonfatal_mce_checker+0x0/0x50() returned 0.
initcall 0xc06c87b0 ran for 3 msecs: init_nonfatal_mce_checker+0x0/0x50()
Calling initcall 0xc06cb880: init_lapic_sysfs+0x0/0x30()
initcall 0xc06cb880: init_lapic_sysfs+0x0/0x30() returned 0.
initcall 0xc06cb880 ran for 0 msecs: init_lapic_sysfs+0x0/0x30()
Calling initcall 0xc06ccc30: ioapic_init_sysfs+0x0/0xd0()
initcall 0xc06ccc30: ioapic_init_sysfs+0x0/0xd0() returned 0.
initcall 0xc06ccc30 ran for 0 msecs: ioapic_init_sysfs+0x0/0xd0()
Calling initcall 0xc06ce940: serial8250_x86_com_init+0x0/0x30()
initcall 0xc06ce940: serial8250_x86_com_init+0x0/0x30() returned -19.
initcall 0xc06ce940 ran for 0 msecs: serial8250_x86_com_init+0x0/0x30()
Calling initcall 0xc06ced90: hpet_register_sysfs+0x0/0x50()
initcall 0xc06ced90: hpet_register_sysfs+0x0/0x50() returned 0.
initcall 0xc06ced90 ran for 0 msecs: hpet_register_sysfs+0x0/0x50()
Calling initcall 0xc06cf110: add_pcspkr+0x0/0x60()
initcall 0xc06cf110: add_pcspkr+0x0/0x60() returned 0.
initcall 0xc06cf110 ran for 0 msecs: add_pcspkr+0x0/0x60()
Calling initcall 0xc06cfe00: init_sched_debug_procfs+0x0/0x30()
initcall 0xc06cfe00: init_sched_debug_procfs+0x0/0x30() returned 0.
initcall 0xc06cfe00 ran for 0 msecs: init_sched_debug_procfs+0x0/0x30()
Calling initcall 0xc06d09e0: create_proc_profile+0x0/0x1b0()
initcall 0xc06d09e0: create_proc_profile+0x0/0x1b0() returned 0.
initcall 0xc06d09e0 ran for 0 msecs: create_proc_profile+0x0/0x1b0()
Calling initcall 0xc06d0c10: ioresources_init+0x0/0x40()
initcall 0xc06d0c10: ioresources_init+0x0/0x40() returned 0.
initcall 0xc06d0c10 ran for 0 msecs: ioresources_init+0x0/0x40()
Calling initcall 0xc06d0da0: uid_cache_init+0x0/0xa0()
initcall 0xc06d0da0: uid_cache_init+0x0/0xa0() returned 0.
initcall 0xc06d0da0 ran for 0 msecs: uid_cache_init+0x0/0xa0()
Calling initcall 0xc06d12f0: init_posix_timers+0x0/0x80()
initcall 0xc06d12f0: init_posix_timers+0x0/0x80() returned 0.
initcall 0xc06d12f0 ran for 0 msecs: init_posix_timers+0x0/0x80()
Calling initcall 0xc06d1370: init_posix_cpu_timers+0x0/0x60()
initcall 0xc06d1370: init_posix_cpu_timers+0x0/0x60() returned 0.
initcall 0xc06d1370 ran for 0 msecs: init_posix_cpu_timers+0x0/0x60()
Calling initcall 0xc06d1490: latency_init+0x0/0x20()
initcall 0xc06d1490: latency_init+0x0/0x20() returned 0.
initcall 0xc06d1490 ran for 0 msecs: latency_init+0x0/0x20()
Calling initcall 0xc06d14b0: timekeeping_init_device+0x0/0x30()
initcall 0xc06d14b0: timekeeping_init_device+0x0/0x30() returned 0.
initcall 0xc06d14b0 ran for 0 msecs: timekeeping_init_device+0x0/0x30()
Calling initcall 0xc06d1650: init_clocksource_sysfs+0x0/0x50()
initcall 0xc06d1650: init_clocksource_sysfs+0x0/0x50() returned 0.
initcall 0xc06d1650 ran for 0 msecs: init_clocksource_sysfs+0x0/0x50()
Calling initcall 0xc06d1770: init_timer_list_procfs+0x0/0x30()
initcall 0xc06d1770: init_timer_list_procfs+0x0/0x30() returned 0.
initcall 0xc06d1770 ran for 0 msecs: init_timer_list_procfs+0x0/0x30()
Calling initcall 0xc06d17b0: init+0x0/0x80()
initcall 0xc06d17b0: init+0x0/0x80() returned 0.
initcall 0xc06d17b0 ran for 0 msecs: init+0x0/0x80()
Calling initcall 0xc06d1830: proc_dma_init+0x0/0x20()
initcall 0xc06d1830: proc_dma_init+0x0/0x20() returned 0.
initcall 0xc06d1830 ran for 0 msecs: proc_dma_init+0x0/0x20()
Calling initcall 0xc014ffe0: percpu_modinit+0x0/0x70()
initcall 0xc014ffe0: percpu_modinit+0x0/0x70() returned 0.
initcall 0xc014ffe0 ran for 0 msecs: percpu_modinit+0x0/0x70()
Calling initcall 0xc06d1850: kallsyms_init+0x0/0x30()
initcall 0xc06d1850: kallsyms_init+0x0/0x30() returned 0.
initcall 0xc06d1850 ran for 0 msecs: kallsyms_init+0x0/0x30()
Calling initcall 0xc06d1a20: snapshot_device_init+0x0/0x10()
initcall 0xc06d1a20: snapshot_device_init+0x0/0x10() returned 0.
initcall 0xc06d1a20 ran for 0 msecs: snapshot_device_init+0x0/0x10()
Calling initcall 0xc06d1a30: ikconfig_init+0x0/0x40()
initcall 0xc06d1a30: ikconfig_init+0x0/0x40() returned 0.
initcall 0xc06d1a30 ran for 0 msecs: ikconfig_init+0x0/0x40()
Calling initcall 0xc06d1cc0: audit_init+0x0/0x110()
audit: initializing netlink socket (disabled)
audit(1182753703.820:1): initialized
initcall 0xc06d1cc0: audit_init+0x0/0x110() returned 0.
initcall 0xc06d1cc0 ran for 7 msecs: audit_init+0x0/0x110()
Calling initcall 0xc06d1ee0: utsname_sysctl_init+0x0/0x20()
initcall 0xc06d1ee0: utsname_sysctl_init+0x0/0x20() returned 0.
initcall 0xc06d1ee0 ran for 0 msecs: utsname_sysctl_init+0x0/0x20()
Calling initcall 0xc06d3180: init_per_zone_pages_min+0x0/0x50()
initcall 0xc06d3180: init_per_zone_pages_min+0x0/0x50() returned 0.
initcall 0xc06d3180 ran for 0 msecs: init_per_zone_pages_min+0x0/0x50()
Calling initcall 0xc06d3b20: pdflush_init+0x0/0x20()
initcall 0xc06d3b20: pdflush_init+0x0/0x20() returned 0.
initcall 0xc06d3b20 ran for 0 msecs: pdflush_init+0x0/0x20()
Calling initcall 0xc06d3b70: kswapd_init+0x0/0x30()
initcall 0xc06d3b70: kswapd_init+0x0/0x30() returned 0.
initcall 0xc06d3b70 ran for 0 msecs: kswapd_init+0x0/0x30()
Calling initcall 0xc06d3ba0: setup_vmstat+0x0/0x70()
initcall 0xc06d3ba0: setup_vmstat+0x0/0x70() returned 0.
initcall 0xc06d3ba0 ran for 0 msecs: setup_vmstat+0x0/0x70()
Calling initcall 0xc06d3d00: init_emergency_pool+0x0/0x70()
highmem bounce pool size: 64 pages
initcall 0xc06d3d00: init_emergency_pool+0x0/0x70() returned 0.
initcall 0xc06d3d00 ran for 2 msecs: init_emergency_pool+0x0/0x70()
Calling initcall 0xc06d3d70: procswaps_init+0x0/0x20()
initcall 0xc06d3d70: procswaps_init+0x0/0x20() returned 0.
initcall 0xc06d3d70 ran for 0 msecs: procswaps_init+0x0/0x20()
Calling initcall 0xc06d3d90: hugetlb_init+0x0/0x70()
Total HugeTLB memory allocated, 0
initcall 0xc06d3d90: hugetlb_init+0x0/0x70() returned 0.
initcall 0xc06d3d90 ran for 2 msecs: hugetlb_init+0x0/0x70()
Calling initcall 0xc06d3e40: init_tmpfs+0x0/0xd0()
initcall 0xc06d3e40: init_tmpfs+0x0/0xd0() returned 0.
initcall 0xc06d3e40 ran for 0 msecs: init_tmpfs+0x0/0xd0()
Calling initcall 0xc06d3f30: cpucache_init+0x0/0x60()
initcall 0xc06d3f30: cpucache_init+0x0/0x60() returned 0.
initcall 0xc06d3f30 ran for 0 msecs: cpucache_init+0x0/0x60()
Calling initcall 0xc06d4440: fasync_init+0x0/0x40()
initcall 0xc06d4440: fasync_init+0x0/0x40() returned 0.
initcall 0xc06d4440 ran for 0 msecs: fasync_init+0x0/0x40()
Calling initcall 0xc06d4b50: aio_setup+0x0/0x80()
initcall 0xc06d4b50: aio_setup+0x0/0x80() returned 0.
initcall 0xc06d4b50 ran for 0 msecs: aio_setup+0x0/0x80()
Calling initcall 0xc06d4d80: inotify_setup+0x0/0x10()
initcall 0xc06d4d80: inotify_setup+0x0/0x10() returned 0.
initcall 0xc06d4d80 ran for 0 msecs: inotify_setup+0x0/0x10()
Calling initcall 0xc06d4d90: inotify_user_setup+0x0/0xd0()
initcall 0xc06d4d90: inotify_user_setup+0x0/0xd0() returned 0.
initcall 0xc06d4d90 ran for 0 msecs: inotify_user_setup+0x0/0xd0()
Calling initcall 0xc06d5050: init_mbcache+0x0/0x20()
initcall 0xc06d5050: init_mbcache+0x0/0x20() returned 0.
initcall 0xc06d5050 ran for 0 msecs: init_mbcache+0x0/0x20()
Calling initcall 0xc06d5070: dquot_init+0x0/0x110()
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
initcall 0xc06d5070: dquot_init+0x0/0x110() returned 0.
initcall 0xc06d5070 ran for 7 msecs: dquot_init+0x0/0x110()
Calling initcall 0xc06d5180: init_v2_quota_format+0x0/0x10()
initcall 0xc06d5180: init_v2_quota_format+0x0/0x10() returned 0.
initcall 0xc06d5180 ran for 0 msecs: init_v2_quota_format+0x0/0x10()
Calling initcall 0xc06d5190: dnotify_init+0x0/0x40()
initcall 0xc06d5190: dnotify_init+0x0/0x40() returned 0.
initcall 0xc06d5190 ran for 0 msecs: dnotify_init+0x0/0x40()
Calling initcall 0xc06d55d0: init_devpts_fs+0x0/0x40()
initcall 0xc06d55d0: init_devpts_fs+0x0/0x40() returned 0.
initcall 0xc06d55d0 ran for 0 msecs: init_devpts_fs+0x0/0x40()
Calling initcall 0xc06d5610: init_ext3_fs+0x0/0x80()
initcall 0xc06d5610: init_ext3_fs+0x0/0x80() returned 0.
initcall 0xc06d5610 ran for 0 msecs: init_ext3_fs+0x0/0x80()
Calling initcall 0xc06d5760: journal_init+0x0/0xe0()
initcall 0xc06d5760: journal_init+0x0/0xe0() returned 0.
initcall 0xc06d5760 ran for 0 msecs: journal_init+0x0/0xe0()
Calling initcall 0xc06d5840: init_ext2_fs+0x0/0x80()
initcall 0xc06d5840: init_ext2_fs+0x0/0x80() returned 0.
initcall 0xc06d5840 ran for 0 msecs: init_ext2_fs+0x0/0x80()
Calling initcall 0xc06d5900: init_ramfs_fs+0x0/0x10()
initcall 0xc06d5900: init_ramfs_fs+0x0/0x10() returned 0.
initcall 0xc06d5900 ran for 0 msecs: init_ramfs_fs+0x0/0x10()
Calling initcall 0xc06d5920: init_hugetlbfs_fs+0x0/0xa0()
initcall 0xc06d5920: init_hugetlbfs_fs+0x0/0xa0() returned 0.
initcall 0xc06d5920 ran for 0 msecs: init_hugetlbfs_fs+0x0/0xa0()
Calling initcall 0xc06d59c0: init_iso9660_fs+0x0/0x70()
initcall 0xc06d59c0: init_iso9660_fs+0x0/0x70() returned 0.
initcall 0xc06d59c0 ran for 0 msecs: init_iso9660_fs+0x0/0x70()
Calling initcall 0xc06d5aa0: init_nls_cp437+0x0/0x10()
initcall 0xc06d5aa0: init_nls_cp437+0x0/0x10() returned 0.
initcall 0xc06d5aa0 ran for 0 msecs: init_nls_cp437+0x0/0x10()
Calling initcall 0xc06d5ab0: init_nls_ascii+0x0/0x10()
initcall 0xc06d5ab0: init_nls_ascii+0x0/0x10() returned 0.
initcall 0xc06d5ab0 ran for 0 msecs: init_nls_ascii+0x0/0x10()
Calling initcall 0xc06d5ac0: init_udf_fs+0x0/0x70()
initcall 0xc06d5ac0: init_udf_fs+0x0/0x70() returned 0.
initcall 0xc06d5ac0 ran for 0 msecs: init_udf_fs+0x0/0x70()
Calling initcall 0xc06d5b30: ipc_init+0x0/0x20()
initcall 0xc06d5b30: ipc_init+0x0/0x20() returned 0.
initcall 0xc06d5b30 ran for 0 msecs: ipc_init+0x0/0x20()
Calling initcall 0xc06d5da0: ipc_sysctl_init+0x0/0x20()
initcall 0xc06d5da0: ipc_sysctl_init+0x0/0x20() returned 0.
initcall 0xc06d5da0 ran for 0 msecs: ipc_sysctl_init+0x0/0x20()
Calling initcall 0xc06d5dc0: init_mqueue_fs+0x0/0xd0()
initcall 0xc06d5dc0: init_mqueue_fs+0x0/0xd0() returned 0.
initcall 0xc06d5dc0 ran for 0 msecs: init_mqueue_fs+0x0/0xd0()
Calling initcall 0xc06d5fe0: key_proc_init+0x0/0x30()
initcall 0xc06d5fe0: key_proc_init+0x0/0x30() returned 0.
initcall 0xc06d5fe0 ran for 0 msecs: key_proc_init+0x0/0x30()
Calling initcall 0xc06d61b0: selinux_nf_ip_init+0x0/0x60()
SELinux:  Registering netfilter hooks
initcall 0xc06d61b0: selinux_nf_ip_init+0x0/0x60() returned 0.
initcall 0xc06d61b0 ran for 3 msecs: selinux_nf_ip_init+0x0/0x60()
Calling initcall 0xc06d6380: init_sel_fs+0x0/0x60()
initcall 0xc06d6380: init_sel_fs+0x0/0x60() returned 0.
initcall 0xc06d6380 ran for 0 msecs: init_sel_fs+0x0/0x60()
Calling initcall 0xc06d63e0: selnl_init+0x0/0x50()
initcall 0xc06d63e0: selnl_init+0x0/0x50() returned 0.
initcall 0xc06d63e0 ran for 0 msecs: selnl_init+0x0/0x50()
Calling initcall 0xc06d6430: sel_netif_init+0x0/0x80()
initcall 0xc06d6430: sel_netif_init+0x0/0x80() returned 0.
initcall 0xc06d6430 ran for 0 msecs: sel_netif_init+0x0/0x80()
Calling initcall 0xc06d64b0: aurule_init+0x0/0x50()
initcall 0xc06d64b0: aurule_init+0x0/0x50() returned 0.
initcall 0xc06d64b0 ran for 0 msecs: aurule_init+0x0/0x50()
Calling initcall 0xc06d6500: crypto_algapi_init+0x0/0x10()
initcall 0xc06d6500: crypto_algapi_init+0x0/0x10() returned 0.
initcall 0xc06d6500 ran for 0 msecs: crypto_algapi_init+0x0/0x10()
Calling initcall 0xc06d6530: cryptomgr_init+0x0/0x10()
initcall 0xc06d6530: cryptomgr_init+0x0/0x10() returned 0.
initcall 0xc06d6530 ran for 0 msecs: cryptomgr_init+0x0/0x10()
Calling initcall 0xc06d6540: hmac_module_init+0x0/0x10()
initcall 0xc06d6540: hmac_module_init+0x0/0x10() returned 0.
initcall 0xc06d6540 ran for 0 msecs: hmac_module_init+0x0/0x10()
Calling initcall 0xc06d6550: init+0x0/0x10()
initcall 0xc06d6550: init+0x0/0x10() returned 0.
initcall 0xc06d6550 ran for 0 msecs: init+0x0/0x10()
Calling initcall 0xc06d6560: crypto_cbc_module_init+0x0/0x10()
initcall 0xc06d6560: crypto_cbc_module_init+0x0/0x10() returned 0.
initcall 0xc06d6560 ran for 0 msecs: crypto_cbc_module_init+0x0/0x10()
Calling initcall 0xc06d6910: noop_init+0x0/0x10()
io scheduler noop registered
initcall 0xc06d6910: noop_init+0x0/0x10() returned 0.
initcall 0xc06d6910 ran for 2 msecs: noop_init+0x0/0x10()
Calling initcall 0xc06d6920: cfq_init+0x0/0xd0()
io scheduler cfq registered (default)
initcall 0xc06d6920: cfq_init+0x0/0xd0() returned 0.
initcall 0xc06d6920 ran for 3 msecs: cfq_init+0x0/0xd0()
Calling initcall 0xc06d6be0: audit_classes_init+0x0/0x50()
initcall 0xc06d6be0: audit_classes_init+0x0/0x50() returned 0.
initcall 0xc06d6be0 ran for 0 msecs: audit_classes_init+0x0/0x50()
Calling initcall 0xc0244690: pci_init+0x0/0x30()
PCI: Linking AER extended capability on 0000:00:0b.0
PCI: Linking AER extended capability on 0000:00:0c.0
PCI: Linking AER extended capability on 0000:00:0d.0
PCI: Linking AER extended capability on 0000:00:0e.0
Boot video device is 0000:01:00.0
initcall 0xc0244690: pci_init+0x0/0x30() returned 0.
initcall 0xc0244690 ran for 32 msecs: pci_init+0x0/0x30()
Calling initcall 0xc06d72d0: pci_proc_init+0x0/0x70()
initcall 0xc06d72d0: pci_proc_init+0x0/0x70() returned 0.
initcall 0xc06d72d0 ran for 0 msecs: pci_proc_init+0x0/0x70()
Calling initcall 0xc06d7340: pcie_portdrv_init+0x0/0x60()
PCI: Setting latency timer of device 0000:00:0b.0 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0b.0:pcie00]
Allocate Port Service[0000:00:0b.0:pcie03]
PCI: Setting latency timer of device 0000:00:0c.0 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0c.0:pcie00]
Allocate Port Service[0000:00:0c.0:pcie03]
PCI: Setting latency timer of device 0000:00:0d.0 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0d.0:pcie00]
Allocate Port Service[0000:00:0d.0:pcie03]
PCI: Setting latency timer of device 0000:00:0e.0 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0e.0:pcie00]
Allocate Port Service[0000:00:0e.0:pcie03]
initcall 0xc06d7340: pcie_portdrv_init+0x0/0x60() returned 0.
initcall 0xc06d7340 ran for 62 msecs: pcie_portdrv_init+0x0/0x60()
Calling initcall 0xc06d73a0: aer_service_init+0x0/0x10()
initcall 0xc06d73a0: aer_service_init+0x0/0x10() returned 0.
initcall 0xc06d73a0 ran for 0 msecs: aer_service_init+0x0/0x10()
Calling initcall 0xc06d73b0: pci_hotplug_init+0x0/0xa0()
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
initcall 0xc06d73b0: pci_hotplug_init+0x0/0xa0() returned 0.
initcall 0xc06d73b0 ran for 4 msecs: pci_hotplug_init+0x0/0xa0()
Calling initcall 0xc06d7460: shpcd_init+0x0/0x70()
shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
initcall 0xc06d7460: shpcd_init+0x0/0x70() returned 0.
initcall 0xc06d7460 ran for 5 msecs: shpcd_init+0x0/0x70()
Calling initcall 0xc06d7700: fb_console_init+0x0/0x140()
initcall 0xc06d7700: fb_console_init+0x0/0x140() returned 0.
initcall 0xc06d7700 ran for 0 msecs: fb_console_init+0x0/0x140()
Calling initcall 0xc06d8250: vesafb_init+0x0/0x2b2()
initcall 0xc06d8250: vesafb_init+0x0/0x2b2() returned 0.
initcall 0xc06d8250 ran for 0 msecs: vesafb_init+0x0/0x2b2()
Calling initcall 0xc06d88dc: acpi_reserve_resources+0x0/0xc8()
initcall 0xc06d88dc: acpi_reserve_resources+0x0/0xc8() returned 0.
initcall 0xc06d88dc ran for 0 msecs: acpi_reserve_resources+0x0/0xc8()
Calling initcall 0xc06d9642: irqrouter_init_sysfs+0x0/0x33()
initcall 0xc06d9642: irqrouter_init_sysfs+0x0/0x33() returned 0.
initcall 0xc06d9642 ran for 0 msecs: irqrouter_init_sysfs+0x0/0x33()
Calling initcall 0xc06da080: rand_initialize+0x0/0x30()
initcall 0xc06da080: rand_initialize+0x0/0x30() returned 0.
initcall 0xc06da080 ran for 0 msecs: rand_initialize+0x0/0x30()
Calling initcall 0xc06da110: tty_init+0x0/0x1f0()
initcall 0xc06da110: tty_init+0x0/0x1f0() returned 0.
initcall 0xc06da110 ran for 2 msecs: tty_init+0x0/0x1f0()
Calling initcall 0xc06da300: pty_init+0x0/0x220()
initcall 0xc06da300: pty_init+0x0/0x220() returned 0.
initcall 0xc06da300 ran for 0 msecs: pty_init+0x0/0x220()
Calling initcall 0xc06dab50: raw_init+0x0/0xe0()
initcall 0xc06dab50: raw_init+0x0/0xe0() returned 0.
initcall 0xc06dab50 ran for 0 msecs: raw_init+0x0/0xe0()
Calling initcall 0xc06dac30: rtc_init+0x0/0x1c0()
Real Time Clock Driver v1.12ac
initcall 0xc06dac30: rtc_init+0x0/0x1c0() returned 0.
initcall 0xc06dac30 ran for 2 msecs: rtc_init+0x0/0x1c0()
Calling initcall 0xc06dadf0: hpet_init+0x0/0x60()
initcall 0xc06dadf0: hpet_init+0x0/0x60() returned 0.
initcall 0xc06dadf0 ran for 0 msecs: hpet_init+0x0/0x60()
Calling initcall 0xc06dae50: agp_init+0x0/0x40()
Linux agpgart interface v0.102 (c) Dave Jones
initcall 0xc06dae50: agp_init+0x0/0x40() returned 0.
initcall 0xc06dae50 ran for 3 msecs: agp_init+0x0/0x40()
Calling initcall 0xc06daf00: agp_ali_init+0x0/0x30()
initcall 0xc06daf00: agp_ali_init+0x0/0x30() returned 0.
initcall 0xc06daf00 ran for 0 msecs: agp_ali_init+0x0/0x30()
Calling initcall 0xc06daf30: agp_ati_init+0x0/0x30()
initcall 0xc06daf30: agp_ati_init+0x0/0x30() returned 0.
initcall 0xc06daf30 ran for 0 msecs: agp_ati_init+0x0/0x30()
Calling initcall 0xc06daf60: agp_amdk7_init+0x0/0x30()
initcall 0xc06daf60: agp_amdk7_init+0x0/0x30() returned 0.
initcall 0xc06daf60 ran for 0 msecs: agp_amdk7_init+0x0/0x30()
Calling initcall 0xc06daf90: agp_amd64_init+0x0/0xd0()
initcall 0xc06daf90: agp_amd64_init+0x0/0xd0() returned 0.
initcall 0xc06daf90 ran for 0 msecs: agp_amd64_init+0x0/0xd0()
Calling initcall 0xc06db060: agp_efficeon_init+0x0/0x40()
initcall 0xc06db060: agp_efficeon_init+0x0/0x40() returned 0.
initcall 0xc06db060 ran for 0 msecs: agp_efficeon_init+0x0/0x40()
Calling initcall 0xc06db0a0: agp_intel_init+0x0/0x30()
initcall 0xc06db0a0: agp_intel_init+0x0/0x30() returned 0.
initcall 0xc06db0a0 ran for 0 msecs: agp_intel_init+0x0/0x30()
Calling initcall 0xc06db0d0: agp_nvidia_init+0x0/0x30()
initcall 0xc06db0d0: agp_nvidia_init+0x0/0x30() returned 0.
initcall 0xc06db0d0 ran for 0 msecs: agp_nvidia_init+0x0/0x30()
Calling initcall 0xc06db100: agp_sis_init+0x0/0x30()
initcall 0xc06db100: agp_sis_init+0x0/0x30() returned 0.
initcall 0xc06db100 ran for 0 msecs: agp_sis_init+0x0/0x30()
Calling initcall 0xc06db130: agp_serverworks_init+0x0/0x30()
initcall 0xc06db130: agp_serverworks_init+0x0/0x30() returned 0.
initcall 0xc06db130 ran for 0 msecs: agp_serverworks_init+0x0/0x30()
Calling initcall 0xc06db160: agp_via_init+0x0/0x30()
initcall 0xc06db160: agp_via_init+0x0/0x30() returned 0.
initcall 0xc06db160 ran for 0 msecs: agp_via_init+0x0/0x30()
Calling initcall 0xc06db190: drm_core_init+0x0/0x140()
[drm] Initialized drm 1.1.0 20060810
initcall 0xc06db190: drm_core_init+0x0/0x140() returned 0.
initcall 0xc06db190 ran for 3 msecs: drm_core_init+0x0/0x140()
Calling initcall 0xc06db2d0: radeon_init+0x0/0x20()
ACPI: PCI Interrupt Link [APC3] enabled at IRQ 18
ACPI: PCI Interrupt 0000:01:00.0[A] -> Link [APC3] -> GSI 18 (level, low) -> IRQ 16
[drm] Initialized radeon 1.27.0 20060524 on minor 0
initcall 0xc06db2d0: radeon_init+0x0/0x20() returned 0.
initcall 0xc06db2d0 ran for 15 msecs: radeon_init+0x0/0x20()
Calling initcall 0xc06db2f0: i810_init+0x0/0x20()
initcall 0xc06db2f0: i810_init+0x0/0x20() returned 0.
initcall 0xc06db2f0 ran for 0 msecs: i810_init+0x0/0x20()
Calling initcall 0xc06db310: i915_init+0x0/0x20()
initcall 0xc06db310: i915_init+0x0/0x20() returned 0.
initcall 0xc06db310 ran for 0 msecs: i915_init+0x0/0x20()
Calling initcall 0xc06db850: serial8250_init+0x0/0x130()
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
initcall 0xc06db850: serial8250_init+0x0/0x130() returned 0.
initcall 0xc06db850 ran for 6 msecs: serial8250_init+0x0/0x130()
Calling initcall 0xc06db980: serial8250_pnp_init+0x0/0x10()
00:08: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
initcall 0xc06db980: serial8250_pnp_init+0x0/0x10() returned 0.
initcall 0xc06db980 ran for 4 msecs: serial8250_pnp_init+0x0/0x10()
Calling initcall 0xc06db990: serial8250_pci_init+0x0/0x20()
initcall 0xc06db990: serial8250_pci_init+0x0/0x20() returned 0.
initcall 0xc06db990 ran for 0 msecs: serial8250_pci_init+0x0/0x20()
Calling initcall 0xc06dbf40: parport_default_proc_register+0x0/0x20()
initcall 0xc06dbf40: parport_default_proc_register+0x0/0x20() returned 0.
initcall 0xc06dbf40 ran for 0 msecs: parport_default_proc_register+0x0/0x20()
Calling initcall 0xc06dc340: parport_pc_init+0x0/0x1d0()
parport_pc 00:09: reported by Plug and Play ACPI
parport0: PC-style at 0x378 (0x778), irq 7 [PCSPP,TRISTATE]
initcall 0xc06dc340: parport_pc_init+0x0/0x1d0() returned 0.
initcall 0xc06dc340 ran for 87 msecs: parport_pc_init+0x0/0x1d0()
Calling initcall 0xc06dc660: isa_bus_init+0x0/0x40()
initcall 0xc06dc660: isa_bus_init+0x0/0x40() returned 0.
initcall 0xc06dc660 ran for 0 msecs: isa_bus_init+0x0/0x40()
Calling initcall 0xc02e2fa0: topology_sysfs_init+0x0/0x50()
initcall 0xc02e2fa0: topology_sysfs_init+0x0/0x50() returned 0.
initcall 0xc02e2fa0 ran for 0 msecs: topology_sysfs_init+0x0/0x50()
Calling initcall 0xc06dc710: rd_init+0x0/0x1e0()
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
initcall 0xc06dc710: rd_init+0x0/0x1e0() returned 0.
initcall 0xc06dc710 ran for 6 msecs: rd_init+0x0/0x1e0()
Calling initcall 0xc06dceb0: cpqarray_init+0x0/0x2b0()
Compaq SMART2 Driver (v 2.6.0)
initcall 0xc06dceb0: cpqarray_init+0x0/0x2b0() returned 0.
initcall 0xc06dceb0 ran for 2 msecs: cpqarray_init+0x0/0x2b0()
Calling initcall 0xc06dd510: pkt_init+0x0/0x170()
initcall 0xc06dd510: pkt_init+0x0/0x170() returned 0.
initcall 0xc06dd510 ran for 0 msecs: pkt_init+0x0/0x170()
Calling initcall 0xc06dd680: e1000_init_module+0x0/0x90()
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
initcall 0xc06dd680: e1000_init_module+0x0/0x90() returned 0.
initcall 0xc06dd680 ran for 8 msecs: e1000_init_module+0x0/0x90()
Calling initcall 0xc06dd710: e100_init_module+0x0/0x60()
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation
initcall 0xc06dd710: e100_init_module+0x0/0x60() returned 0.
initcall 0xc06dd710 ran for 8 msecs: e100_init_module+0x0/0x60()
Calling initcall 0xc06dd770: tg3_init+0x0/0x20()
initcall 0xc06dd770: tg3_init+0x0/0x20() returned 0.
initcall 0xc06dd770 ran for 0 msecs: tg3_init+0x0/0x20()
Calling initcall 0xc06dd790: skge_init_module+0x0/0x20()
initcall 0xc06dd790: skge_init_module+0x0/0x20() returned 0.
initcall 0xc06dd790 ran for 0 msecs: skge_init_module+0x0/0x20()
Calling initcall 0xc06dd7b0: rhine_init+0x0/0x90()
initcall 0xc06dd7b0: rhine_init+0x0/0x90() returned 0.
initcall 0xc06dd7b0 ran for 0 msecs: rhine_init+0x0/0x90()
Calling initcall 0xc06dd8c0: net_olddevs_init+0x0/0xa0()
initcall 0xc06dd8c0: net_olddevs_init+0x0/0xa0() returned 0.
initcall 0xc06dd8c0 ran for 0 msecs: net_olddevs_init+0x0/0xa0()
Calling initcall 0xc06dd960: loopback_init+0x0/0x10()
initcall 0xc06dd960: loopback_init+0x0/0x10() returned 0.
initcall 0xc06dd960 ran for 0 msecs: loopback_init+0x0/0x10()
Calling initcall 0xc06dd970: init_nic+0x0/0x30()
forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.60.
ACPI: PCI Interrupt Link [APCH] enabled at IRQ 23
ACPI: PCI Interrupt 0000:00:0a.0[A] -> Link [APCH] -> GSI 23 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:00:0a.0 to 64
forcedeth: using HIGHDMA
eth0: forcedeth.c: subsystem: 01043:8141 bound to 0000:00:0a.0
initcall 0xc06dd970: init_nic+0x0/0x30() returned 0.
initcall 0xc06dd970 ran for 518 msecs: init_nic+0x0/0x30()
Calling initcall 0xc06dd9a0: rtl8139_init_module+0x0/0x20()
8139too Fast Ethernet driver 0.9.28
ACPI: PCI Interrupt Link [APC2] enabled at IRQ 17
ACPI: PCI Interrupt 0000:05:07.0[A] -> Link [APC2] -> GSI 17 (level, low) -> IRQ 18
eth1: RealTek RTL8139 at 0xf8820000, 00:c0:df:03:68:5d, IRQ 18
eth1:  Identified 8139 chip type 'RTL-8139B'
initcall 0xc06dd9a0: rtl8139_init_module+0x0/0x20() returned 0.
initcall 0xc06dd9a0 ran for 23 msecs: rtl8139_init_module+0x0/0x20()
Calling initcall 0xc06dd9c0: rtl8169_init_module+0x0/0x20()
initcall 0xc06dd9c0: rtl8169_init_module+0x0/0x20() returned 0.
initcall 0xc06dd9c0 ran for 0 msecs: rtl8169_init_module+0x0/0x20()
Calling initcall 0xc032a130: init_netconsole+0x0/0x80()
netconsole: not configured, aborting
initcall 0xc032a130: init_netconsole+0x0/0x80() returned 0.
initcall 0xc032a130 ran for 3 msecs: init_netconsole+0x0/0x80()
Calling initcall 0xc06ddcc0: spi_transport_init+0x0/0x30()
initcall 0xc06ddcc0: spi_transport_init+0x0/0x30() returned 0.
initcall 0xc06ddcc0 ran for 0 msecs: spi_transport_init+0x0/0x30()
Calling initcall 0xc06ddcf0: sas_transport_init+0x0/0xb0()
initcall 0xc06ddcf0: sas_transport_init+0x0/0xb0() returned 0.
initcall 0xc06ddcf0 ran for 0 msecs: sas_transport_init+0x0/0xb0()
Calling initcall 0xc06ddda0: sas_class_init+0x0/0x40()
initcall 0xc06ddda0: sas_class_init+0x0/0x40() returned 0.
initcall 0xc06ddda0 ran for 0 msecs: sas_class_init+0x0/0x40()
Calling initcall 0xc06ddde0: ahc_linux_init+0x0/0x70()
initcall 0xc06ddde0: ahc_linux_init+0x0/0x70() returned 0.
initcall 0xc06ddde0 ran for 0 msecs: ahc_linux_init+0x0/0x70()
Calling initcall 0xc06dde50: ahd_linux_init+0x0/0x80()
initcall 0xc06dde50: ahd_linux_init+0x0/0x80() returned 0.
initcall 0xc06dde50 ran for 0 msecs: ahd_linux_init+0x0/0x80()
Calling initcall 0xc06dded0: aic94xx_init+0x0/0x150()
aic94xx: Adaptec aic94xx SAS/SATA driver version 1.0.3 loaded
initcall 0xc06dded0: aic94xx_init+0x0/0x150() returned 0.
initcall 0xc06dded0 ran for 5 msecs: aic94xx_init+0x0/0x150()
Calling initcall 0xc06de020: init_sd+0x0/0xc0()
initcall 0xc06de020: init_sd+0x0/0xc0() returned 0.
initcall 0xc06de020 ran for 0 msecs: init_sd+0x0/0xc0()
Calling initcall 0xc06de0e0: init_sr+0x0/0x30()
initcall 0xc06de0e0: init_sr+0x0/0x30() returned 0.
initcall 0xc06de0e0 ran for 0 msecs: init_sr+0x0/0x30()
Calling initcall 0xc06de110: init_sg+0x0/0x140()
initcall 0xc06de110: init_sg+0x0/0x140() returned 0.
initcall 0xc06de110 ran for 0 msecs: init_sg+0x0/0x140()
Calling initcall 0xc06de250: init_ch_module+0x0/0xa0()
SCSI Media Changer driver v0.25 
initcall 0xc06de250: init_ch_module+0x0/0xa0() returned 0.
initcall 0xc06de250 ran for 2 msecs: init_ch_module+0x0/0xa0()
Calling initcall 0xc06de370: ahci_init+0x0/0x20()
initcall 0xc06de370: ahci_init+0x0/0x20() returned 0.
initcall 0xc06de370 ran for 0 msecs: ahci_init+0x0/0x20()
Calling initcall 0xc06de390: k2_sata_init+0x0/0x20()
initcall 0xc06de390: k2_sata_init+0x0/0x20() returned 0.
initcall 0xc06de390 ran for 0 msecs: k2_sata_init+0x0/0x20()
Calling initcall 0xc06de3b0: piix_init+0x0/0x30()
initcall 0xc06de3b0: piix_init+0x0/0x30() returned 0.
initcall 0xc06de3b0 ran for 0 msecs: piix_init+0x0/0x30()
Calling initcall 0xc06de3e0: pdc_ata_init+0x0/0x20()
initcall 0xc06de3e0: pdc_ata_init+0x0/0x20() returned 0.
initcall 0xc06de3e0 ran for 0 msecs: pdc_ata_init+0x0/0x20()
Calling initcall 0xc06de400: qs_ata_init+0x0/0x20()
initcall 0xc06de400: qs_ata_init+0x0/0x20() returned 0.
initcall 0xc06de400 ran for 0 msecs: qs_ata_init+0x0/0x20()
Calling initcall 0xc06de420: sil_init+0x0/0x20()
initcall 0xc06de420: sil_init+0x0/0x20() returned 0.
initcall 0xc06de420 ran for 0 msecs: sil_init+0x0/0x20()
Calling initcall 0xc06de440: sil24_init+0x0/0x20()
initcall 0xc06de440: sil24_init+0x0/0x20() returned 0.
initcall 0xc06de440 ran for 0 msecs: sil24_init+0x0/0x20()
Calling initcall 0xc06de460: svia_init+0x0/0x20()
initcall 0xc06de460: svia_init+0x0/0x20() returned 0.
initcall 0xc06de460 ran for 0 msecs: svia_init+0x0/0x20()
Calling initcall 0xc06de480: vsc_sata_init+0x0/0x20()
initcall 0xc06de480: vsc_sata_init+0x0/0x20() returned 0.
initcall 0xc06de480 ran for 0 msecs: vsc_sata_init+0x0/0x20()
Calling initcall 0xc06de4a0: sis_init+0x0/0x20()
initcall 0xc06de4a0: sis_init+0x0/0x20() returned 0.
initcall 0xc06de4a0 ran for 0 msecs: sis_init+0x0/0x20()
Calling initcall 0xc06de4c0: pdc_sata_init+0x0/0x20()
initcall 0xc06de4c0: pdc_sata_init+0x0/0x20() returned 0.
initcall 0xc06de4c0 ran for 0 msecs: pdc_sata_init+0x0/0x20()
Calling initcall 0xc06de4e0: nv_init+0x0/0x20()
initcall 0xc06de4e0: nv_init+0x0/0x20() returned 0.
initcall 0xc06de4e0 ran for 0 msecs: nv_init+0x0/0x20()
Calling initcall 0xc06de500: uli_init+0x0/0x20()
initcall 0xc06de500: uli_init+0x0/0x20() returned 0.
initcall 0xc06de500 ran for 0 msecs: uli_init+0x0/0x20()
Calling initcall 0xc06de520: mv_init+0x0/0x20()
initcall 0xc06de520: mv_init+0x0/0x20() returned 0.
initcall 0xc06de520 ran for 0 msecs: mv_init+0x0/0x20()
Calling initcall 0xc06de540: adma_ata_init+0x0/0x20()
initcall 0xc06de540: adma_ata_init+0x0/0x20() returned 0.
initcall 0xc06de540 ran for 0 msecs: adma_ata_init+0x0/0x20()
Calling initcall 0xc06de560: ali_init+0x0/0x20()
initcall 0xc06de560: ali_init+0x0/0x20() returned 0.
initcall 0xc06de560 ran for 0 msecs: ali_init+0x0/0x20()
Calling initcall 0xc06de580: amd_init+0x0/0x20()
pata_amd 0000:00:06.0: version 0.3.8
PCI: Setting latency timer of device 0000:00:06.0 to 64
scsi0 : pata_amd
scsi1 : pata_amd
ata1: PATA max UDMA/133 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001f000 irq 14
ata2: PATA max UDMA/133 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001f008 irq 15
ata1.00: ata_hpa_resize 1: sectors = 78177792, hpa_sectors = 78177792
ata1.00: ATA-5: MAXTOR 6L040J2, AR1.0500, max UDMA/133
ata1.00: 78177792 sectors, multi 1: LBA 
ata1.01: ata_hpa_resize 1: sectors = 156301488, hpa_sectors = 156301488
ata1.01: ATA-6: ST380011A, 3.06, max UDMA/100
ata1.01: 156301488 sectors, multi 1: LBA48 
ata1.00: ata_hpa_resize 1: sectors = 78177792, hpa_sectors = 78177792
ata1.00: configured for UDMA/133
ata1.01: ata_hpa_resize 1: sectors = 156301488, hpa_sectors = 156301488
ata1.01: configured for UDMA/100
ATA: abnormal status 0x38 on port 0x00010177
scsi 0:0:0:0: Direct-Access     ATA      MAXTOR 6L040J2   AR1. PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 78177792 512-byte hardware sectors (40027 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 78177792 512-byte hardware sectors (40027 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sda: sda1 sda2 sda3 sda4 < sda5 >
sd 0:0:0:0: [sda] Attached SCSI disk
sd 0:0:0:0: Attached scsi generic sg0 type 0
scsi 0:0:1:0: Direct-Access     ATA      ST380011A        3.06 PQ: 0 ANSI: 5
sd 0:0:1:0: [sdb] 156301488 512-byte hardware sectors (80026 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:1:0: [sdb] 156301488 512-byte hardware sectors (80026 MB)
sd 0:0:1:0: [sdb] Write Protect is off
sd 0:0:1:0: [sdb] Mode Sense: 00 3a 00 00
sd 0:0:1:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
 sdb: sdb1 sdb2 sdb3 < sdb5 >
sd 0:0:1:0: [sdb] Attached SCSI disk
sd 0:0:1:0: Attached scsi generic sg1 type 0
initcall 0xc06de580: amd_init+0x0/0x20() returned 0.
initcall 0xc06de580 ran for 625 msecs: amd_init+0x0/0x20()
Calling initcall 0xc06de5a0: artop_init+0x0/0x20()
initcall 0xc06de5a0: artop_init+0x0/0x20() returned 0.
initcall 0xc06de5a0 ran for 0 msecs: artop_init+0x0/0x20()
Calling initcall 0xc06de5c0: atiixp_init+0x0/0x20()
initcall 0xc06de5c0: atiixp_init+0x0/0x20() returned 0.
initcall 0xc06de5c0 ran for 0 msecs: atiixp_init+0x0/0x20()
Calling initcall 0xc06de5e0: cmd64x_init+0x0/0x20()
initcall 0xc06de5e0: cmd64x_init+0x0/0x20() returned 0.
initcall 0xc06de5e0 ran for 0 msecs: cmd64x_init+0x0/0x20()
Calling initcall 0xc06de600: cs5520_init+0x0/0x20()
initcall 0xc06de600: cs5520_init+0x0/0x20() returned 0.
initcall 0xc06de600 ran for 0 msecs: cs5520_init+0x0/0x20()
Calling initcall 0xc06de620: cs5530_init+0x0/0x20()
initcall 0xc06de620: cs5530_init+0x0/0x20() returned 0.
initcall 0xc06de620 ran for 0 msecs: cs5530_init+0x0/0x20()
Calling initcall 0xc06de640: cs5535_init+0x0/0x20()
initcall 0xc06de640: cs5535_init+0x0/0x20() returned 0.
initcall 0xc06de640 ran for 0 msecs: cs5535_init+0x0/0x20()
Calling initcall 0xc06de660: cy82c693_init+0x0/0x20()
initcall 0xc06de660: cy82c693_init+0x0/0x20() returned 0.
initcall 0xc06de660 ran for 0 msecs: cy82c693_init+0x0/0x20()
Calling initcall 0xc06de680: efar_init+0x0/0x20()
initcall 0xc06de680: efar_init+0x0/0x20() returned 0.
initcall 0xc06de680 ran for 0 msecs: efar_init+0x0/0x20()
Calling initcall 0xc06de6a0: hpt36x_init+0x0/0x20()
initcall 0xc06de6a0: hpt36x_init+0x0/0x20() returned 0.
initcall 0xc06de6a0 ran for 0 msecs: hpt36x_init+0x0/0x20()
Calling initcall 0xc06de6c0: hpt37x_init+0x0/0x20()
initcall 0xc06de6c0: hpt37x_init+0x0/0x20() returned 0.
initcall 0xc06de6c0 ran for 0 msecs: hpt37x_init+0x0/0x20()
Calling initcall 0xc06de6e0: hpt3x2n_init+0x0/0x20()
initcall 0xc06de6e0: hpt3x2n_init+0x0/0x20() returned 0.
initcall 0xc06de6e0 ran for 0 msecs: hpt3x2n_init+0x0/0x20()
Calling initcall 0xc06de700: hpt3x3_init+0x0/0x20()
initcall 0xc06de700: hpt3x3_init+0x0/0x20() returned 0.
initcall 0xc06de700 ran for 0 msecs: hpt3x3_init+0x0/0x20()
Calling initcall 0xc06de720: it821x_init+0x0/0x20()
initcall 0xc06de720: it821x_init+0x0/0x20() returned 0.
initcall 0xc06de720 ran for 0 msecs: it821x_init+0x0/0x20()
Calling initcall 0xc06de740: jmicron_init+0x0/0x20()
initcall 0xc06de740: jmicron_init+0x0/0x20() returned 0.
initcall 0xc06de740 ran for 0 msecs: jmicron_init+0x0/0x20()
Calling initcall 0xc06de760: netcell_init+0x0/0x20()
initcall 0xc06de760: netcell_init+0x0/0x20() returned 0.
initcall 0xc06de760 ran for 0 msecs: netcell_init+0x0/0x20()
Calling initcall 0xc06de780: ns87410_init+0x0/0x20()
initcall 0xc06de780: ns87410_init+0x0/0x20() returned 0.
initcall 0xc06de780 ran for 0 msecs: ns87410_init+0x0/0x20()
Calling initcall 0xc06de7a0: opti_init+0x0/0x20()
initcall 0xc06de7a0: opti_init+0x0/0x20() returned 0.
initcall 0xc06de7a0 ran for 0 msecs: opti_init+0x0/0x20()
Calling initcall 0xc06de7c0: optidma_init+0x0/0x20()
initcall 0xc06de7c0: optidma_init+0x0/0x20() returned 0.
initcall 0xc06de7c0 ran for 0 msecs: optidma_init+0x0/0x20()
Calling initcall 0xc06de7e0: marvell_init+0x0/0x20()
initcall 0xc06de7e0: marvell_init+0x0/0x20() returned 0.
initcall 0xc06de7e0 ran for 0 msecs: marvell_init+0x0/0x20()
Calling initcall 0xc06de800: mpiix_init+0x0/0x20()
initcall 0xc06de800: mpiix_init+0x0/0x20() returned 0.
initcall 0xc06de800 ran for 0 msecs: mpiix_init+0x0/0x20()
Calling initcall 0xc06de820: oldpiix_init+0x0/0x20()
initcall 0xc06de820: oldpiix_init+0x0/0x20() returned 0.
initcall 0xc06de820 ran for 0 msecs: oldpiix_init+0x0/0x20()
Calling initcall 0xc06de840: pdc2027x_init+0x0/0x20()
initcall 0xc06de840: pdc2027x_init+0x0/0x20() returned 0.
initcall 0xc06de840 ran for 0 msecs: pdc2027x_init+0x0/0x20()
Calling initcall 0xc06de860: pdc202xx_init+0x0/0x20()
initcall 0xc06de860: pdc202xx_init+0x0/0x20() returned 0.
initcall 0xc06de860 ran for 0 msecs: pdc202xx_init+0x0/0x20()
Calling initcall 0xc06dea10: qdi_init+0x0/0x220()
initcall 0xc06dea10: qdi_init+0x0/0x220() returned -19.
initcall 0xc06dea10 ran for 0 msecs: qdi_init+0x0/0x220()
Calling initcall 0xc06dec30: radisys_init+0x0/0x20()
initcall 0xc06dec30: radisys_init+0x0/0x20() returned 0.
initcall 0xc06dec30 ran for 0 msecs: radisys_init+0x0/0x20()
Calling initcall 0xc06dec50: rz1000_init+0x0/0x20()
initcall 0xc06dec50: rz1000_init+0x0/0x20() returned 0.
initcall 0xc06dec50 ran for 0 msecs: rz1000_init+0x0/0x20()
Calling initcall 0xc06dec70: sc1200_init+0x0/0x20()
initcall 0xc06dec70: sc1200_init+0x0/0x20() returned 0.
initcall 0xc06dec70 ran for 0 msecs: sc1200_init+0x0/0x20()
Calling initcall 0xc06dec90: serverworks_init+0x0/0x20()
initcall 0xc06dec90: serverworks_init+0x0/0x20() returned 0.
initcall 0xc06dec90 ran for 0 msecs: serverworks_init+0x0/0x20()
Calling initcall 0xc06decb0: sil680_init+0x0/0x20()
initcall 0xc06decb0: sil680_init+0x0/0x20() returned 0.
initcall 0xc06decb0 ran for 0 msecs: sil680_init+0x0/0x20()
Calling initcall 0xc06decd0: via_init+0x0/0x20()
initcall 0xc06decd0: via_init+0x0/0x20() returned 0.
initcall 0xc06decd0 ran for 0 msecs: via_init+0x0/0x20()
Calling initcall 0xc06decf0: sl82c105_init+0x0/0x20()
initcall 0xc06decf0: sl82c105_init+0x0/0x20() returned 0.
initcall 0xc06decf0 ran for 0 msecs: sl82c105_init+0x0/0x20()
Calling initcall 0xc06ded10: winbond_init+0x0/0x260()
initcall 0xc06ded10: winbond_init+0x0/0x260() returned -19.
initcall 0xc06ded10 ran for 0 msecs: winbond_init+0x0/0x260()
Calling initcall 0xc06def70: sis_init+0x0/0x20()
initcall 0xc06def70: sis_init+0x0/0x20() returned 0.
initcall 0xc06def70 ran for 0 msecs: sis_init+0x0/0x20()
Calling initcall 0xc06def90: triflex_init+0x0/0x20()
initcall 0xc06def90: triflex_init+0x0/0x20() returned 0.
initcall 0xc06def90 ran for 0 msecs: triflex_init+0x0/0x20()
Calling initcall 0xc06defb0: ata_generic_init+0x0/0x20()
initcall 0xc06defb0: ata_generic_init+0x0/0x20() returned 0.
initcall 0xc06defb0 ran for 0 msecs: ata_generic_init+0x0/0x20()
Calling initcall 0xc06defd0: fusion_init+0x0/0xe0()
Fusion MPT base driver 3.04.04
Copyright (c) 1999-2007 LSI Logic Corporation
initcall 0xc06defd0: fusion_init+0x0/0xe0() returned 0.
initcall 0xc06defd0 ran for 6 msecs: fusion_init+0x0/0xe0()
Calling initcall 0xc06df0b0: mptspi_init+0x0/0xb0()
Fusion MPT SPI Host driver 3.04.04
initcall 0xc06df0b0: mptspi_init+0x0/0xb0() returned 0.
initcall 0xc06df0b0 ran for 3 msecs: mptspi_init+0x0/0xb0()
Calling initcall 0xc06df160: mptctl_init+0x0/0x100()
Fusion MPT misc device (ioctl) driver 3.04.04
mptctl: Registered with Fusion MPT base driver
mptctl: /dev/mptctl @ (major,minor=10,220)
initcall 0xc06df160: mptctl_init+0x0/0x100() returned 0.
initcall 0xc06df160 ran for 11 msecs: mptctl_init+0x0/0x100()
Calling initcall 0xc06df260: cdrom_init+0x0/0x10()
initcall 0xc06df260: cdrom_init+0x0/0x10() returned 0.
initcall 0xc06df260 ran for 0 msecs: cdrom_init+0x0/0x10()
Calling initcall 0xc06df3c0: nonstatic_sysfs_init+0x0/0x10()
initcall 0xc06df3c0: nonstatic_sysfs_init+0x0/0x10() returned 0.
initcall 0xc06df3c0 ran for 0 msecs: nonstatic_sysfs_init+0x0/0x10()
Calling initcall 0xc06df3d0: yenta_socket_init+0x0/0x20()
initcall 0xc06df3d0: yenta_socket_init+0x0/0x20() returned 0.
initcall 0xc06df3d0 ran for 0 msecs: yenta_socket_init+0x0/0x20()
Calling initcall 0xc06df650: mon_init+0x0/0xf0()
usbmon: debugfs is not available
initcall 0xc06df650: mon_init+0x0/0xf0() returned -19.
initcall 0xc06df650 ran for 2 msecs: mon_init+0x0/0xf0()
Calling initcall 0xc06df7e0: ehci_hcd_init+0x0/0x20()
ACPI: PCI Interrupt Link [APCL] enabled at IRQ 22
ACPI: PCI Interrupt 0000:00:02.1[B] -> Link [APCL] -> GSI 22 (level, low) -> IRQ 19
PCI: Setting latency timer of device 0000:00:02.1 to 64
ehci_hcd 0000:00:02.1: EHCI Host Controller
ehci_hcd 0000:00:02.1: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:02.1: debug port 1
PCI: cache line size of 64 is not supported by device 0000:00:02.1
ehci_hcd 0000:00:02.1: irq 19, io mem 0xfeb00000
ehci_hcd 0000:00:02.1: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 10 ports detected
initcall 0xc06df7e0: ehci_hcd_init+0x0/0x20() returned 0.
initcall 0xc06df7e0 ran for 149 msecs: ehci_hcd_init+0x0/0x20()
Calling initcall 0xc06df800: ohci_hcd_mod_init+0x0/0x50()
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
ACPI: PCI Interrupt Link [APCF] enabled at IRQ 21
ACPI: PCI Interrupt 0000:00:02.0[A] -> Link [APCF] -> GSI 21 (level, low) -> IRQ 20
PCI: Setting latency timer of device 0000:00:02.0 to 64
ohci_hcd 0000:00:02.0: OHCI Host Controller
ohci_hcd 0000:00:02.0: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:02.0: irq 20, io mem 0xda102000
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 10 ports detected
initcall 0xc06df800: ohci_hcd_mod_init+0x0/0x50() returned 0.
initcall 0xc06df800 ran for 190 msecs: ohci_hcd_mod_init+0x0/0x50()
Calling initcall 0xc06df850: uhci_hcd_init+0x0/0xb0()
USB Universal Host Controller Interface driver v3.0
initcall 0xc06df850: uhci_hcd_init+0x0/0xb0() returned 0.
initcall 0xc06df850 ran for 4 msecs: uhci_hcd_init+0x0/0xb0()
Calling initcall 0xc06df9b0: i8042_init+0x0/0x410()
PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
initcall 0xc06df9b0: i8042_init+0x0/0x410() returned 0.
initcall 0xc06df9b0 ran for 15 msecs: i8042_init+0x0/0x410()
Calling initcall 0xc06dfdc0: serport_init+0x0/0x30()
initcall 0xc06dfdc0: serport_init+0x0/0x30() returned 0.
initcall 0xc06dfdc0 ran for 0 msecs: serport_init+0x0/0x30()
Calling initcall 0xc06dff10: mousedev_init+0x0/0xd0()
mice: PS/2 mouse device common for all mice
initcall 0xc06dff10: mousedev_init+0x0/0xd0() returned 0.
initcall 0xc06dff10 ran for 3 msecs: mousedev_init+0x0/0xd0()
Calling initcall 0xc06dffe0: evdev_init+0x0/0x10()
initcall 0xc06dffe0: evdev_init+0x0/0x10() returned 0.
initcall 0xc06dffe0 ran for 0 msecs: evdev_init+0x0/0x10()
Calling initcall 0xc06dfff0: atkbd_init+0x0/0x20()
initcall 0xc06dfff0: atkbd_init+0x0/0x20() returned 0.
initcall 0xc06dfff0 ran for 0 msecs: atkbd_init+0x0/0x20()
Calling initcall 0xc06e0010: psmouse_init+0x0/0x60()
input: AT Translated Set 2 keyboard as /class/input/input0
initcall 0xc06e0010: psmouse_init+0x0/0x60() returned 0.
initcall 0xc06e0010 ran for 17 msecs: psmouse_init+0x0/0x60()
Calling initcall 0xc06e0170: md_init+0x0/0xe0()
initcall 0xc06e0170: md_init+0x0/0xe0() returned 0.
initcall 0xc06e0170 ran for 0 msecs: md_init+0x0/0xe0()
Calling initcall 0xc06e0b50: pci_eisa_init_module+0x0/0x20()
initcall 0xc06e0b50: pci_eisa_init_module+0x0/0x20() returned 0.
initcall 0xc06e0b50 ran for 0 msecs: pci_eisa_init_module+0x0/0x20()
Calling initcall 0xc06e0b70: virtual_eisa_root_init+0x0/0x60()
EISA: Probing bus 0 at eisa.0
Cannot allocate resource for EISA slot 4
EISA: Detected 0 cards.
initcall 0xc06e0b70: virtual_eisa_root_init+0x0/0x60() returned 0.
initcall 0xc06e0b70 ran for 8 msecs: virtual_eisa_root_init+0x0/0x60()
Calling initcall 0xc06e1430: hid_init+0x0/0x80()
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
initcall 0xc06e1430: hid_init+0x0/0x80() returned 0.
initcall 0xc06e1430 ran for 12 msecs: hid_init+0x0/0x80()
Calling initcall 0xc06e14d0: init_soundcore+0x0/0x60()
initcall 0xc06e14d0: init_soundcore+0x0/0x60() returned 0.
initcall 0xc06e14d0 ran for 0 msecs: init_soundcore+0x0/0x60()
Calling initcall 0xc06e1580: alsa_sound_init+0x0/0x80()
Advanced Linux Sound Architecture Driver Version 1.0.14 (Thu May 31 09:03:25 2007 UTC).
initcall 0xc06e1580: alsa_sound_init+0x0/0x80() returned 0.
initcall 0xc06e1580 ran for 7 msecs: alsa_sound_init+0x0/0x80()
Calling initcall 0xc06e1780: alsa_hwdep_init+0x0/0x60()
initcall 0xc06e1780: alsa_hwdep_init+0x0/0x60() returned 0.
initcall 0xc06e1780 ran for 0 msecs: alsa_hwdep_init+0x0/0x60()
Calling initcall 0xc06e17e0: alsa_timer_init+0x0/0x170()
initcall 0xc06e17e0: alsa_timer_init+0x0/0x170() returned 0.
initcall 0xc06e17e0 ran for 0 msecs: alsa_timer_init+0x0/0x170()
Calling initcall 0xc06e1950: rtctimer_init+0x0/0x100()
initcall 0xc06e1950: rtctimer_init+0x0/0x100() returned 0.
initcall 0xc06e1950 ran for 0 msecs: rtctimer_init+0x0/0x100()
Calling initcall 0xc06e1a50: alsa_pcm_init+0x0/0x60()
initcall 0xc06e1a50: alsa_pcm_init+0x0/0x60() returned 0.
initcall 0xc06e1a50 ran for 0 msecs: alsa_pcm_init+0x0/0x60()
Calling initcall 0xc06e1ab0: snd_mem_init+0x0/0x30()
initcall 0xc06e1ab0: snd_mem_init+0x0/0x30() returned 0.
initcall 0xc06e1ab0 ran for 0 msecs: snd_mem_init+0x0/0x30()
Calling initcall 0xc06e1ae0: alsa_rawmidi_init+0x0/0xa0()
initcall 0xc06e1ae0: alsa_rawmidi_init+0x0/0xa0() returned 0.
initcall 0xc06e1ae0 ran for 0 msecs: alsa_rawmidi_init+0x0/0xa0()
Calling initcall 0xc06e1b80: alsa_mixer_oss_init+0x0/0x40()
initcall 0xc06e1b80: alsa_mixer_oss_init+0x0/0x40() returned 0.
initcall 0xc06e1b80 ran for 0 msecs: alsa_mixer_oss_init+0x0/0x40()
Calling initcall 0xc06e1bc0: alsa_pcm_oss_init+0x0/0xb0()
initcall 0xc06e1bc0: alsa_pcm_oss_init+0x0/0xb0() returned 0.
initcall 0xc06e1bc0 ran for 0 msecs: alsa_pcm_oss_init+0x0/0xb0()
Calling initcall 0xc06e1c70: alsa_seq_oss_init+0x0/0x1a0()
initcall 0xc06e1c70: alsa_seq_oss_init+0x0/0x1a0() returned 0.
initcall 0xc06e1c70 ran for 0 msecs: alsa_seq_oss_init+0x0/0x1a0()
Calling initcall 0xc06e2000: alsa_seq_init+0x0/0x60()
initcall 0xc06e2000: alsa_seq_init+0x0/0x60() returned 0.
initcall 0xc06e2000 ran for 0 msecs: alsa_seq_init+0x0/0x60()
Calling initcall 0xc06e22e0: alsa_seq_device_init+0x0/0x60()
initcall 0xc06e22e0: alsa_seq_device_init+0x0/0x60() returned 0.
initcall 0xc06e22e0 ran for 0 msecs: alsa_seq_device_init+0x0/0x60()
Calling initcall 0xc06e2340: alsa_seq_midi_event_init+0x0/0x10()
initcall 0xc06e2340: alsa_seq_midi_event_init+0x0/0x10() returned 0.
initcall 0xc06e2340 ran for 0 msecs: alsa_seq_midi_event_init+0x0/0x10()
Calling initcall 0xc06e24c0: alsa_seq_dummy_init+0x0/0xd0()
initcall 0xc06e24c0: alsa_seq_dummy_init+0x0/0xd0() returned 0.
initcall 0xc06e24c0 ran for 0 msecs: alsa_seq_dummy_init+0x0/0xd0()
Calling initcall 0xc06e2590: alsa_seq_midi_init+0x0/0x40()
initcall 0xc06e2590: alsa_seq_midi_init+0x0/0x40() returned 0.
initcall 0xc06e2590 ran for 0 msecs: alsa_seq_midi_init+0x0/0x40()
Calling initcall 0xc06e25d0: alsa_seq_midi_emul_init+0x0/0x10()
initcall 0xc06e25d0: alsa_seq_midi_emul_init+0x0/0x10() returned 0.
initcall 0xc06e25d0 ran for 0 msecs: alsa_seq_midi_emul_init+0x0/0x10()
Calling initcall 0xc06e25e0: alsa_virmidi_init+0x0/0x10()
initcall 0xc06e25e0: alsa_virmidi_init+0x0/0x10() returned 0.
initcall 0xc06e25e0 ran for 0 msecs: alsa_virmidi_init+0x0/0x10()
Calling initcall 0xc06e25f0: alsa_mpu401_uart_init+0x0/0x10()
initcall 0xc06e25f0: alsa_mpu401_uart_init+0x0/0x10() returned 0.
initcall 0xc06e25f0 ran for 0 msecs: alsa_mpu401_uart_init+0x0/0x10()
Calling initcall 0xc06e2600: alsa_card_mpu401_init+0x0/0xe0()
input: ImPS/2 Generic Wheel Mouse as /class/input/input1
initcall 0xc06e2600: alsa_card_mpu401_init+0x0/0xe0() returned 0.
initcall 0xc06e2600 ran for 458 msecs: alsa_card_mpu401_init+0x0/0xe0()
Calling initcall 0xc06e26e0: alsa_card_intel8x0_init+0x0/0x20()
ACPI: PCI Interrupt Link [APCJ] enabled at IRQ 20
ACPI: PCI Interrupt 0000:00:04.0[A] -> Link [APCJ] -> GSI 20 (level, low) -> IRQ 21
PCI: Setting latency timer of device 0000:00:04.0 to 64
intel8x0_measure_ac97_clock: measured 50764 usecs
intel8x0: clocking to 46859
initcall 0xc06e26e0: alsa_card_intel8x0_init+0x0/0x20() returned 0.
initcall 0xc06e26e0 ran for 321 msecs: alsa_card_intel8x0_init+0x0/0x20()
Calling initcall 0xc06e2700: alsa_card_via82xx_init+0x0/0x20()
initcall 0xc06e2700: alsa_card_via82xx_init+0x0/0x20() returned 0.
initcall 0xc06e2700 ran for 0 msecs: alsa_card_via82xx_init+0x0/0x20()
Calling initcall 0xc06e2720: alsa_ac97_init+0x0/0x10()
initcall 0xc06e2720: alsa_ac97_init+0x0/0x10() returned 0.
initcall 0xc06e2720 ran for 0 msecs: alsa_ac97_init+0x0/0x10()
Calling initcall 0xc06e2730: alsa_card_emu10k1_init+0x0/0x20()
initcall 0xc06e2730: alsa_card_emu10k1_init+0x0/0x20() returned 0.
initcall 0xc06e2730 ran for 0 msecs: alsa_card_emu10k1_init+0x0/0x20()
Calling initcall 0xc06e2750: alsa_emu10k1_synth_init+0x0/0x20()
initcall 0xc06e2750: alsa_emu10k1_synth_init+0x0/0x20() returned 0.
initcall 0xc06e2750 ran for 0 msecs: alsa_emu10k1_synth_init+0x0/0x20()
Calling initcall 0xc06e2770: alsa_card_emu10k1x_init+0x0/0x20()
initcall 0xc06e2770: alsa_card_emu10k1x_init+0x0/0x20() returned 0.
initcall 0xc06e2770 ran for 0 msecs: alsa_card_emu10k1x_init+0x0/0x20()
Calling initcall 0xc06e2790: alsa_card_azx_init+0x0/0x20()
initcall 0xc06e2790: alsa_card_azx_init+0x0/0x20() returned 0.
initcall 0xc06e2790 ran for 0 msecs: alsa_card_azx_init+0x0/0x20()
Calling initcall 0xc06e27b0: alsa_util_mem_init+0x0/0x10()
initcall 0xc06e27b0: alsa_util_mem_init+0x0/0x10() returned 0.
initcall 0xc06e27b0 ran for 0 msecs: alsa_util_mem_init+0x0/0x10()
Calling initcall 0xc06e27c0: alsa_emux_init+0x0/0x10()
initcall 0xc06e27c0: alsa_emux_init+0x0/0x10() returned 0.
initcall 0xc06e27c0 ran for 0 msecs: alsa_emux_init+0x0/0x10()
Calling initcall 0xc06e27e0: alsa_sound_last_init+0x0/0x70()
ALSA device list:
  #0: NVidia CK804 with ALC850 at irq 21
  #1: MPU-401 UART at 0x330, irq 10
initcall 0xc06e27e0: alsa_sound_last_init+0x0/0x70() returned 0.
initcall 0xc06e27e0 ran for 8 msecs: alsa_sound_last_init+0x0/0x70()
Calling initcall 0xc06e4a10: flow_cache_init+0x0/0x1a0()
initcall 0xc06e4a10: flow_cache_init+0x0/0x1a0() returned 0.
initcall 0xc06e4a10 ran for 0 msecs: flow_cache_init+0x0/0x1a0()
Calling initcall 0xc06e4c40: llc_init+0x0/0x80()
initcall 0xc06e4c40: llc_init+0x0/0x80() returned 0.
initcall 0xc06e4c40 ran for 0 msecs: llc_init+0x0/0x80()
Calling initcall 0xc06e4cc0: snap_init+0x0/0x40()
initcall 0xc06e4cc0: snap_init+0x0/0x40() returned 0.
initcall 0xc06e4cc0 ran for 0 msecs: snap_init+0x0/0x40()
Calling initcall 0xc06e4d00: rif_init+0x0/0x70()
initcall 0xc06e4d00: rif_init+0x0/0x70() returned 0.
initcall 0xc06e4d00 ran for 0 msecs: rif_init+0x0/0x70()
Calling initcall 0xc06e4e40: blackhole_module_init+0x0/0x10()
initcall 0xc06e4e40: blackhole_module_init+0x0/0x10() returned 0.
initcall 0xc06e4e40 ran for 0 msecs: blackhole_module_init+0x0/0x10()
Calling initcall 0xc06e6210: init_syncookies+0x0/0x20()
initcall 0xc06e6210: init_syncookies+0x0/0x20() returned 0.
initcall 0xc06e6210 ran for 0 msecs: init_syncookies+0x0/0x20()
Calling initcall 0xc06e6230: xfrm4_beet_init+0x0/0x20()
initcall 0xc06e6230: xfrm4_beet_init+0x0/0x20() returned 0.
initcall 0xc06e6230 ran for 0 msecs: xfrm4_beet_init+0x0/0x20()
Calling initcall 0xc06e6250: xfrm4_transport_init+0x0/0x20()
initcall 0xc06e6250: xfrm4_transport_init+0x0/0x20() returned 0.
initcall 0xc06e6250 ran for 0 msecs: xfrm4_transport_init+0x0/0x20()
Calling initcall 0xc06e6270: xfrm4_tunnel_init+0x0/0x20()
initcall 0xc06e6270: xfrm4_tunnel_init+0x0/0x20() returned 0.
initcall 0xc06e6270 ran for 0 msecs: xfrm4_tunnel_init+0x0/0x20()
Calling initcall 0xc04f9b30: ipv4_netfilter_init+0x0/0x10()
initcall 0xc04f9b30: ipv4_netfilter_init+0x0/0x10() returned 0.
initcall 0xc04f9b30 ran for 0 msecs: ipv4_netfilter_init+0x0/0x10()
Calling initcall 0xc06e6290: inet_diag_init+0x0/0x70()
initcall 0xc06e6290: inet_diag_init+0x0/0x70() returned 0.
initcall 0xc06e6290 ran for 0 msecs: inet_diag_init+0x0/0x70()
Calling initcall 0xc06e6300: tcp_diag_init+0x0/0x10()
initcall 0xc06e6300: tcp_diag_init+0x0/0x10() returned 0.
initcall 0xc06e6300 ran for 0 msecs: tcp_diag_init+0x0/0x10()
Calling initcall 0xc06e6310: cubictcp_register+0x0/0xb0()
TCP cubic registered
initcall 0xc06e6310: cubictcp_register+0x0/0xb0() returned 0.
initcall 0xc06e6310 ran for 1 msecs: cubictcp_register+0x0/0xb0()
Calling initcall 0xc06e65b0: xfrm_user_init+0x0/0x60()
Initializing XFRM netlink socket
initcall 0xc06e65b0: xfrm_user_init+0x0/0x60() returned 0.
initcall 0xc06e65b0 ran for 2 msecs: xfrm_user_init+0x0/0x60()
Calling initcall 0xc06e6610: af_unix_init+0x0/0x80()
NET: Registered protocol family 1
initcall 0xc06e6610: af_unix_init+0x0/0x80() returned 0.
initcall 0xc06e6610 ran for 2 msecs: af_unix_init+0x0/0x80()
Calling initcall 0xc06e6690: inet6_init+0x0/0x2c0()
NET: Registered protocol family 10
lo: Disabled Privacy Extensions
initcall 0xc06e6690: inet6_init+0x0/0x2c0() returned 0.
initcall 0xc06e6690 ran for 5 msecs: inet6_init+0x0/0x2c0()
Calling initcall 0xc06e7220: packet_init+0x0/0x60()
NET: Registered protocol family 17
initcall 0xc06e7220: packet_init+0x0/0x60() returned 0.
initcall 0xc06e7220 ran for 2 msecs: packet_init+0x0/0x60()
Calling initcall 0xc06cc840: init_lapic_nmi_sysfs+0x0/0x40()
initcall 0xc06cc840: init_lapic_nmi_sysfs+0x0/0x40() returned 0.
initcall 0xc06cc840 ran for 0 msecs: init_lapic_nmi_sysfs+0x0/0x40()
Calling initcall 0xc06cc620: check_nmi_watchdog+0x0/0x1f0()
Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
CPU#1: NMI appears to be stuck (0->0)!
initcall 0xc06cc620: check_nmi_watchdog+0x0/0x1f0() returned -1.
initcall 0xc06cc620 ran for 27 msecs: check_nmi_watchdog+0x0/0x1f0()
initcall at 0xc06cc620: check_nmi_watchdog+0x0/0x1f0(): returned with error code -1
Calling initcall 0xc06ccbb0: io_apic_bug_finalize+0x0/0x20()
initcall 0xc06ccbb0: io_apic_bug_finalize+0x0/0x20() returned 0.
initcall 0xc06ccbb0 ran for 0 msecs: io_apic_bug_finalize+0x0/0x20()
Calling initcall 0xc06ccd00: balanced_irq_init+0x0/0x1e0()
Starting balanced_irq

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3 nmi watchdog hang
  2007-06-25  6:18                     ` Ingo Molnar
@ 2007-06-25  6:59                       ` Ingo Molnar
  2007-06-25  8:05                         ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Ingo Molnar
  0 siblings, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-25  6:59 UTC (permalink / raw)
  To: Bj?rn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds


hm, restoring nmi.c to the v2.6.21 state does not fix the nmi_watchdog=2 
hang. I'll do a bisection run.

	Ingo


^ permalink raw reply	[flat|nested] 105+ messages in thread

* [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25  6:59                       ` Ingo Molnar
@ 2007-06-25  8:05                         ` Ingo Molnar
  2007-06-25  8:26                           ` Ingo Molnar
  2007-06-25 12:40                           ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Jeremy Fitzhardinge
  0 siblings, 2 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-25  8:05 UTC (permalink / raw)
  To: Bj?rn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds
  Cc: Jeremy Fitzhardinge, Rusty Russell


* Ingo Molnar <mingo@elte.hu> wrote:

> hm, restoring nmi.c to the v2.6.21 state does not fix the 
> nmi_watchdog=2 hang. I'll do a bisection run.

and after spending an hour on 15 bisection steps:

 git-bisect start
 git-bisect good d1be341dba5521506d9e6dccfd66179080705bea
 git-bisect bad a06381fec77bf88ec6c5eb6324457cb04e9ffd69
 git-bisect bad 794543a236074f49a8af89ef08ef6a753e4777e5
 git-bisect good 24a77daf3d80bddcece044e6dc3675e427eef3f3
 git-bisect bad ea62ccd00fd0b6720b033adfc9984f31130ce195
 git-bisect good 7e20ef030dde0e52dd5a57220ee82fa9facbea4e
 git-bisect bad f19cccf366a07e05703c90038704a3a5ffcb0607
 git-bisect good 0d08e0d3a97cce22ebf80b54785e00d9b94e1add
 git-bisect bad 856f44ff4af6e57fdc39a8b2bec498c88438bd27
 git-bisect bad f8822f42019eceed19cc6c0f985a489e17796ed8
 git-bisect good 1c3d99c11c47c8a1a9ed6a46555dbf6520683c52
 git-bisect good b239fb2501117bf3aeb4dd6926edd855be92333d
 git-bisect good 98de032b681d8a7532d44dfc66aa5c0c1c755a9d
 git-bisect good 42c24fa22e86365055fc931d833f26165e687c19

the winner is ...

 f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
 commit f8822f42019eceed19cc6c0f985a489e17796ed8
 Author: Jeremy Fitzhardinge <jeremy@goop.org>
 Date:   Wed May 2 19:27:14 2007 +0200

    [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to make them patchable

... our wonderful paravirt subsystem, honed to eternal perfection by the 
testing-machine x86_64 tree.

reverting -git-curr's paravirt.c, paravirt.h, smp.c and tlbflush.h to 
before the bad commit makes the NMI watchdog work again. Patch against 
-rc6 is below.

	Ingo

------------------------>
Subject: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
From: Ingo Molnar <mingo@elte.hu>

nmi_watchdog=2 hangs on i386:

 Calling initcall 0xc06cc620: check_nmi_watchdog+0x0/0x1f0()
 Testing NMI watchdog ... CPU#0: NMI appears to be stuck (0->0)!
 CPU#1: NMI appears to be stuck (0->0)!
 initcall 0xc06cc620: check_nmi_watchdog+0x0/0x1f0() returned -1.
 initcall 0xc06cc620 ran for 27 msecs: check_nmi_watchdog+0x0/0x1f0()
 initcall at 0xc06cc620: check_nmi_watchdog+0x0/0x1f0(): returned with
 error code -1
 Calling initcall 0xc06ccbb0: io_apic_bug_finalize+0x0/0x20()
 initcall 0xc06ccbb0: io_apic_bug_finalize+0x0/0x20() returned 0.
 initcall 0xc06ccbb0 ran for 0 msecs: io_apic_bug_finalize+0x0/0x20()
 Calling initcall 0xc06ccd00: balanced_irq_init+0x0/0x1e0()
 Starting balanced_irq
 [hard hang]

bisected it down to:

 git-bisect start
 git-bisect good d1be341dba5521506d9e6dccfd66179080705bea
 git-bisect bad a06381fec77bf88ec6c5eb6324457cb04e9ffd69
 git-bisect bad 794543a236074f49a8af89ef08ef6a753e4777e5
 git-bisect good 24a77daf3d80bddcece044e6dc3675e427eef3f3
 git-bisect bad ea62ccd00fd0b6720b033adfc9984f31130ce195
 git-bisect good 7e20ef030dde0e52dd5a57220ee82fa9facbea4e
 git-bisect bad f19cccf366a07e05703c90038704a3a5ffcb0607
 git-bisect good 0d08e0d3a97cce22ebf80b54785e00d9b94e1add
 git-bisect bad 856f44ff4af6e57fdc39a8b2bec498c88438bd27
 git-bisect bad f8822f42019eceed19cc6c0f985a489e17796ed8
 git-bisect good 1c3d99c11c47c8a1a9ed6a46555dbf6520683c52
 git-bisect good b239fb2501117bf3aeb4dd6926edd855be92333d
 git-bisect good 98de032b681d8a7532d44dfc66aa5c0c1c755a9d
 git-bisect good 42c24fa22e86365055fc931d833f26165e687c19

 f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
 commit f8822f42019eceed19cc6c0f985a489e17796ed8
 Author: Jeremy Fitzhardinge <jeremy@goop.org>
 Date:   Wed May 2 19:27:14 2007 +0200

    [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to make them patchable

this patch reverts the code back to the last known booting version.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
 arch/i386/kernel/paravirt.c |  174 ++--------
 arch/i386/kernel/smp.c      |   93 +++--
 include/asm-i386/paravirt.h |  718 +++++++++-----------------------------------
 include/asm-i386/tlbflush.h |   21 -
 4 files changed, 245 insertions(+), 761 deletions(-)

Index: linux-2.6-git/arch/i386/kernel/paravirt.c
===================================================================
--- linux-2.6-git.orig/arch/i386/kernel/paravirt.c
+++ linux-2.6-git/arch/i386/kernel/paravirt.c
@@ -19,7 +19,7 @@
 #include <linux/module.h>
 #include <linux/efi.h>
 #include <linux/bcd.h>
-#include <linux/highmem.h>
+#include <linux/start_kernel.h>
 
 #include <asm/bug.h>
 #include <asm/paravirt.h>
@@ -54,142 +54,40 @@ char *memory_setup(void)
 #define DEF_NATIVE(name, code)					\
 	extern const char start_##name[], end_##name[];		\
 	asm("start_" #name ": " code "; end_" #name ":")
-
-DEF_NATIVE(irq_disable, "cli");
-DEF_NATIVE(irq_enable, "sti");
-DEF_NATIVE(restore_fl, "push %eax; popf");
-DEF_NATIVE(save_fl, "pushf; pop %eax");
+DEF_NATIVE(cli, "cli");
+DEF_NATIVE(sti, "sti");
+DEF_NATIVE(popf, "push %eax; popf");
+DEF_NATIVE(pushf, "pushf; pop %eax");
 DEF_NATIVE(iret, "iret");
-DEF_NATIVE(irq_enable_sysexit, "sti; sysexit");
-DEF_NATIVE(read_cr2, "mov %cr2, %eax");
-DEF_NATIVE(write_cr3, "mov %eax, %cr3");
-DEF_NATIVE(read_cr3, "mov %cr3, %eax");
-DEF_NATIVE(clts, "clts");
-DEF_NATIVE(read_tsc, "rdtsc");
-
-DEF_NATIVE(ud2a, "ud2a");
-
-static unsigned native_patch(u8 type, u16 clobbers, void *insns, unsigned len)
-{
-	const unsigned char *start, *end;
-	unsigned ret;
-
-	switch(type) {
-#define SITE(x)	case PARAVIRT_PATCH(x):	start = start_##x; end = end_##x; goto patch_site
-		SITE(irq_disable);
-		SITE(irq_enable);
-		SITE(restore_fl);
-		SITE(save_fl);
-		SITE(iret);
-		SITE(irq_enable_sysexit);
-		SITE(read_cr2);
-		SITE(read_cr3);
-		SITE(write_cr3);
-		SITE(clts);
-		SITE(read_tsc);
-#undef SITE
-
-	patch_site:
-		ret = paravirt_patch_insns(insns, len, start, end);
-		break;
-
-	case PARAVIRT_PATCH(make_pgd):
-	case PARAVIRT_PATCH(make_pte):
-	case PARAVIRT_PATCH(pgd_val):
-	case PARAVIRT_PATCH(pte_val):
-#ifdef CONFIG_X86_PAE
-	case PARAVIRT_PATCH(make_pmd):
-	case PARAVIRT_PATCH(pmd_val):
-#endif
-		/* These functions end up returning exactly what
-		   they're passed, in the same registers. */
-		ret = paravirt_patch_nop();
-		break;
-
-	default:
-		ret = paravirt_patch_default(type, clobbers, insns, len);
-		break;
-	}
-
-	return ret;
-}
+DEF_NATIVE(sti_sysexit, "sti; sysexit");
 
-unsigned paravirt_patch_nop(void)
+static const struct native_insns
 {
-	return 0;
-}
-
-unsigned paravirt_patch_ignore(unsigned len)
-{
-	return len;
-}
-
-unsigned paravirt_patch_call(void *target, u16 tgt_clobbers,
-			     void *site, u16 site_clobbers,
-			     unsigned len)
-{
-	unsigned char *call = site;
-	unsigned long delta = (unsigned long)target - (unsigned long)(call+5);
-
-	if (tgt_clobbers & ~site_clobbers)
-		return len;	/* target would clobber too much for this site */
-	if (len < 5)
-		return len;	/* call too long for patch site */
-
-	*call++ = 0xe8;		/* call */
-	*(unsigned long *)call = delta;
-
-	return 5;
-}
+	const char *start, *end;
+} native_insns[] = {
+	[PARAVIRT_PATCH(irq_disable)] = { start_cli, end_cli },
+	[PARAVIRT_PATCH(irq_enable)] = { start_sti, end_sti },
+	[PARAVIRT_PATCH(restore_fl)] = { start_popf, end_popf },
+	[PARAVIRT_PATCH(save_fl)] = { start_pushf, end_pushf },
+	[PARAVIRT_PATCH(iret)] = { start_iret, end_iret },
+	[PARAVIRT_PATCH(irq_enable_sysexit)] = { start_sti_sysexit, end_sti_sysexit },
+};
 
-unsigned paravirt_patch_jmp(void *target, void *site, unsigned len)
+static unsigned native_patch(u8 type, u16 clobbers, void *insns, unsigned len)
 {
-	unsigned char *jmp = site;
-	unsigned long delta = (unsigned long)target - (unsigned long)(jmp+5);
-
-	if (len < 5)
-		return len;	/* call too long for patch site */
-
-	*jmp++ = 0xe9;		/* jmp */
-	*(unsigned long *)jmp = delta;
+	unsigned int insn_len;
 
-	return 5;
-}
+	/* Don't touch it if we don't have a replacement */
+	if (type >= ARRAY_SIZE(native_insns) || !native_insns[type].start)
+		return len;
 
-unsigned paravirt_patch_default(u8 type, u16 clobbers, void *site, unsigned len)
-{
-	void *opfunc = *((void **)&paravirt_ops + type);
-	unsigned ret;
+	insn_len = native_insns[type].end - native_insns[type].start;
 
-	if (opfunc == NULL)
-		/* If there's no function, patch it with a ud2a (BUG) */
-		ret = paravirt_patch_insns(site, len, start_ud2a, end_ud2a);
-	else if (opfunc == paravirt_nop)
-		/* If the operation is a nop, then nop the callsite */
-		ret = paravirt_patch_nop();
-	else if (type == PARAVIRT_PATCH(iret) ||
-		 type == PARAVIRT_PATCH(irq_enable_sysexit))
-		/* If operation requires a jmp, then jmp */
-		ret = paravirt_patch_jmp(opfunc, site, len);
-	else
-		/* Otherwise call the function; assume target could
-		   clobber any caller-save reg */
-		ret = paravirt_patch_call(opfunc, CLBR_ANY,
-					  site, clobbers, len);
-
-	return ret;
-}
-
-unsigned paravirt_patch_insns(void *site, unsigned len,
-			      const char *start, const char *end)
-{
-	unsigned insn_len = end - start;
-
-	if (insn_len > len || start == NULL)
-		insn_len = len;
-	else
-		memcpy(site, start, insn_len);
+	/* Similarly if we can't fit replacement. */
+	if (len < insn_len)
+		return len;
 
+	memcpy(insns, native_insns[type].start, insn_len);
 	return insn_len;
 }
 
@@ -212,7 +110,7 @@ static void native_flush_tlb_global(void
 	__native_flush_tlb_global();
 }
 
-static void native_flush_tlb_single(unsigned long addr)
+static void native_flush_tlb_single(u32 addr)
 {
 	__native_flush_tlb_single(addr);
 }
@@ -291,7 +189,6 @@ struct paravirt_ops paravirt_ops = {
 	.apic_read = native_apic_read,
 	.setup_boot_clock = setup_boot_APIC_clock,
 	.setup_secondary_clock = setup_secondary_APIC_clock,
-	.startup_ipi_hook = paravirt_nop,
 #endif
 	.set_lazy_mode = paravirt_nop,
 
@@ -301,7 +198,8 @@ struct paravirt_ops paravirt_ops = {
 	.flush_tlb_user = native_flush_tlb,
 	.flush_tlb_kernel = native_flush_tlb_global,
 	.flush_tlb_single = native_flush_tlb_single,
-	.flush_tlb_others = native_flush_tlb_others,
+
+	.map_pt_hook = paravirt_nop,
 
 	.alloc_pt = paravirt_nop,
 	.alloc_pd = paravirt_nop,
@@ -315,9 +213,7 @@ struct paravirt_ops paravirt_ops = {
 	.pte_update = paravirt_nop,
 	.pte_update_defer = paravirt_nop,
 
-#ifdef CONFIG_HIGHPTE
-	.kmap_atomic_pte = kmap_atomic,
-#endif
+	.ptep_get_and_clear = native_ptep_get_and_clear,
 
 #ifdef CONFIG_X86_PAE
 	.set_pte_atomic = native_set_pte_atomic,
@@ -342,6 +238,14 @@ struct paravirt_ops paravirt_ops = {
 	.dup_mmap = paravirt_nop,
 	.exit_mmap = paravirt_nop,
 	.activate_mm = paravirt_nop,
+
+	.startup_ipi_hook = paravirt_nop,
 };
 
-EXPORT_SYMBOL(paravirt_ops);
+/*
+ * NOTE: CONFIG_PARAVIRT is experimental and the paravirt_ops
+ * semantics are subject to change. Hence we only do this
+ * internal-only export of this, until it gets sorted out and
+ * all lowlevel CPU ops used by modules are separately exported.
+ */
+EXPORT_SYMBOL_GPL(paravirt_ops);
Index: linux-2.6-git/arch/i386/kernel/smp.c
===================================================================
--- linux-2.6-git.orig/arch/i386/kernel/smp.c
+++ linux-2.6-git/arch/i386/kernel/smp.c
@@ -13,6 +13,7 @@
 #include <linux/mm.h>
 #include <linux/delay.h>
 #include <linux/spinlock.h>
+#include <linux/smp_lock.h>
 #include <linux/kernel_stat.h>
 #include <linux/mc146818rtc.h>
 #include <linux/cache.h>
@@ -164,20 +165,20 @@ void fastcall send_IPI_self(int vector)
 }
 
 /*
- * This is used to send an IPI with no shorthand notation (the destination is
- * specified in bits 56 to 63 of the ICR).
+ * This is only used on smaller machines.
  */
-static inline void __send_IPI_dest_field(unsigned long mask, int vector)
+void send_IPI_mask_bitmask(cpumask_t cpumask, int vector)
 {
+	unsigned long mask = cpus_addr(cpumask)[0];
 	unsigned long cfg;
+	unsigned long flags;
 
+	local_irq_save(flags);
+	WARN_ON(mask & ~cpus_addr(cpu_online_map)[0]);
 	/*
 	 * Wait for idle.
 	 */
-	if (unlikely(vector == NMI_VECTOR))
-		safe_apic_wait_icr_idle();
-	else
-		apic_wait_icr_idle();
+	apic_wait_icr_idle();
 		
 	/*
 	 * prepare target chip field
@@ -194,25 +195,13 @@ static inline void __send_IPI_dest_field
 	 * Send the IPI. The write to APIC_ICR fires this off.
 	 */
 	apic_write_around(APIC_ICR, cfg);
-}
 
-/*
- * This is only used on smaller machines.
- */
-void send_IPI_mask_bitmask(cpumask_t cpumask, int vector)
-{
-	unsigned long mask = cpus_addr(cpumask)[0];
-	unsigned long flags;
-
-	local_irq_save(flags);
-	WARN_ON(mask & ~cpus_addr(cpu_online_map)[0]);
-	__send_IPI_dest_field(mask, vector);
 	local_irq_restore(flags);
 }
 
 void send_IPI_mask_sequence(cpumask_t mask, int vector)
 {
-	unsigned long flags;
+	unsigned long cfg, flags;
 	unsigned int query_cpu;
 
 	/*
@@ -222,10 +211,30 @@ void send_IPI_mask_sequence(cpumask_t ma
 	 */ 
 
 	local_irq_save(flags);
+
 	for (query_cpu = 0; query_cpu < NR_CPUS; ++query_cpu) {
 		if (cpu_isset(query_cpu, mask)) {
-			__send_IPI_dest_field(cpu_to_logical_apicid(query_cpu),
-					      vector);
+		
+			/*
+			 * Wait for idle.
+			 */
+			apic_wait_icr_idle();
+		
+			/*
+			 * prepare target chip field
+			 */
+			cfg = __prepare_ICR2(cpu_to_logical_apicid(query_cpu));
+			apic_write_around(APIC_ICR2, cfg);
+		
+			/*
+			 * program the ICR 
+			 */
+			cfg = __prepare_ICR(0, vector);
+			
+			/*
+			 * Send the IPI. The write to APIC_ICR fires this off.
+			 */
+			apic_write_around(APIC_ICR, cfg);
 		}
 	}
 	local_irq_restore(flags);
@@ -247,6 +256,7 @@ static cpumask_t flush_cpumask;
 static struct mm_struct * flush_mm;
 static unsigned long flush_va;
 static DEFINE_SPINLOCK(tlbstate_lock);
+#define FLUSH_ALL	0xffffffff
 
 /*
  * We cannot call mmdrop() because we are in interrupt context, 
@@ -328,7 +338,7 @@ fastcall void smp_invalidate_interrupt(s
 		 
 	if (flush_mm == per_cpu(cpu_tlbstate, cpu).active_mm) {
 		if (per_cpu(cpu_tlbstate, cpu).state == TLBSTATE_OK) {
-			if (flush_va == TLB_FLUSH_ALL)
+			if (flush_va == FLUSH_ALL)
 				local_flush_tlb();
 			else
 				__flush_tlb_one(flush_va);
@@ -343,11 +353,9 @@ out:
 	put_cpu_no_resched();
 }
 
-void native_flush_tlb_others(const cpumask_t *cpumaskp, struct mm_struct *mm,
-			     unsigned long va)
+static void flush_tlb_others(cpumask_t cpumask, struct mm_struct *mm,
+						unsigned long va)
 {
-	cpumask_t cpumask = *cpumaskp;
-
 	/*
 	 * A couple of (to be removed) sanity checks:
 	 *
@@ -358,12 +366,10 @@ void native_flush_tlb_others(const cpuma
 	BUG_ON(cpu_isset(smp_processor_id(), cpumask));
 	BUG_ON(!mm);
 
-#ifdef CONFIG_HOTPLUG_CPU
 	/* If a CPU which we ran on has gone down, OK. */
 	cpus_and(cpumask, cpumask, cpu_online_map);
-	if (unlikely(cpus_empty(cpumask)))
+	if (cpus_empty(cpumask))
 		return;
-#endif
 
 	/*
 	 * i'm not happy about this global shared spinlock in the
@@ -374,7 +380,17 @@ void native_flush_tlb_others(const cpuma
 	
 	flush_mm = mm;
 	flush_va = va;
-	cpus_or(flush_cpumask, cpumask, flush_cpumask);
+#if NR_CPUS <= BITS_PER_LONG
+	atomic_set_mask(cpumask, &flush_cpumask);
+#else
+	{
+		int k;
+		unsigned long *flush_mask = (unsigned long *)&flush_cpumask;
+		unsigned long *cpu_mask = (unsigned long *)&cpumask;
+		for (k = 0; k < BITS_TO_LONGS(NR_CPUS); ++k)
+			atomic_set_mask(cpu_mask[k], &flush_mask[k]);
+	}
+#endif
 	/*
 	 * We have to send the IPI only to
 	 * CPUs affected.
@@ -401,7 +417,7 @@ void flush_tlb_current_task(void)
 
 	local_flush_tlb();
 	if (!cpus_empty(cpu_mask))
-		flush_tlb_others(cpu_mask, mm, TLB_FLUSH_ALL);
+		flush_tlb_others(cpu_mask, mm, FLUSH_ALL);
 	preempt_enable();
 }
 
@@ -420,7 +436,7 @@ void flush_tlb_mm (struct mm_struct * mm
 			leave_mm(smp_processor_id());
 	}
 	if (!cpus_empty(cpu_mask))
-		flush_tlb_others(cpu_mask, mm, TLB_FLUSH_ALL);
+		flush_tlb_others(cpu_mask, mm, FLUSH_ALL);
 
 	preempt_enable();
 }
@@ -467,7 +483,7 @@ void flush_tlb_all(void)
  * it goes straight through and wastes no time serializing
  * anything. Worst case is that we lose a reschedule ...
  */
-static void native_smp_send_reschedule(int cpu)
+void native_smp_send_reschedule(int cpu)
 {
 	WARN_ON(cpu_is_offline(cpu));
 	send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR);
@@ -546,10 +562,9 @@ static void __smp_call_function(void (*f
  * You must not call this function with disabled interrupts or from a
  * hardware interrupt handler or from a bottom half handler.
  */
-static int
-native_smp_call_function_mask(cpumask_t mask,
-			      void (*func)(void *), void *info,
-			      int wait)
+int native_smp_call_function_mask(cpumask_t mask,
+				  void (*func)(void *), void *info,
+				  int wait)
 {
 	struct call_data_struct data;
 	cpumask_t allbutself;
@@ -617,7 +632,7 @@ static void stop_this_cpu (void * dummy)
  * this function calls the 'stop' function on all other CPUs in the system.
  */
 
-static void native_smp_send_stop(void)
+void native_smp_send_stop(void)
 {
 	/* Don't deadlock on the call lock in panic */
 	int nolock = !spin_trylock(&call_lock);
Index: linux-2.6-git/include/asm-i386/paravirt.h
===================================================================
--- linux-2.6-git.orig/include/asm-i386/paravirt.h
+++ linux-2.6-git/include/asm-i386/paravirt.h
@@ -15,24 +15,12 @@
 
 #ifndef __ASSEMBLY__
 #include <linux/types.h>
-#include <linux/cpumask.h>
-#include <asm/kmap_types.h>
 
-struct page;
 struct thread_struct;
 struct Xgt_desc_struct;
 struct tss_struct;
 struct mm_struct;
 struct desc_struct;
-
-/* Lazy mode for batching updates / context switch */
-enum paravirt_lazy_mode {
-	PARAVIRT_LAZY_NONE = 0,
-	PARAVIRT_LAZY_MMU = 1,
-	PARAVIRT_LAZY_CPU = 2,
-	PARAVIRT_LAZY_FLUSH = 3,
-};
-
 struct paravirt_ops
 {
 	unsigned int kernel_rpl;
@@ -49,33 +37,22 @@ struct paravirt_ops
 	 */
 	unsigned (*patch)(u8 type, u16 clobber, void *firstinsn, unsigned len);
 
-	/* Basic arch-specific setup */
 	void (*arch_setup)(void);
 	char *(*memory_setup)(void);
 	void (*init_IRQ)(void);
-	void (*time_init)(void);
 
-	/*
-	 * Called before/after init_mm pagetable setup. setup_start
-	 * may reset %cr3, and may pre-install parts of the pagetable;
-	 * pagetable setup is expected to preserve any existing
-	 * mapping.
-	 */
 	void (*pagetable_setup_start)(pgd_t *pgd_base);
 	void (*pagetable_setup_done)(pgd_t *pgd_base);
 
-	/* Print a banner to identify the environment */
 	void (*banner)(void);
 
-	/* Set and set time of day */
 	unsigned long (*get_wallclock)(void);
 	int (*set_wallclock)(unsigned long);
+	void (*time_init)(void);
 
-	/* cpuid emulation, mostly so that caps bits can be disabled */
 	void (*cpuid)(unsigned int *eax, unsigned int *ebx,
 		      unsigned int *ecx, unsigned int *edx);
 
-	/* hooks for various privileged instructions */
 	unsigned long (*get_debugreg)(int regno);
 	void (*set_debugreg)(int regno, unsigned long value);
 
@@ -94,23 +71,15 @@ struct paravirt_ops
 	unsigned long (*read_cr4)(void);
 	void (*write_cr4)(unsigned long);
 
-	/*
-	 * Get/set interrupt state.  save_fl and restore_fl are only
-	 * expected to use X86_EFLAGS_IF; all other bits
-	 * returned from save_fl are undefined, and may be ignored by
-	 * restore_fl.
-	 */
 	unsigned long (*save_fl)(void);
 	void (*restore_fl)(unsigned long);
 	void (*irq_disable)(void);
 	void (*irq_enable)(void);
 	void (*safe_halt)(void);
 	void (*halt)(void);
-
 	void (*wbinvd)(void);
 
-	/* MSR, PMC and TSR operations.
-	   err = 0/-EFAULT.  wrmsr returns 0/-EFAULT. */
+	/* err = 0/-EFAULT.  wrmsr returns 0/-EFAULT. */
 	u64 (*read_msr)(unsigned int msr, int *err);
 	int (*write_msr)(unsigned int msr, u64 val);
 
@@ -119,7 +88,6 @@ struct paravirt_ops
  	u64 (*get_scheduled_cycles)(void);
 	unsigned long (*get_cpu_khz)(void);
 
-	/* Segment descriptor handling */
 	void (*load_tr_desc)(void);
 	void (*load_gdt)(const struct Xgt_desc_struct *);
 	void (*load_idt)(const struct Xgt_desc_struct *);
@@ -137,12 +105,9 @@ struct paravirt_ops
 	void (*load_esp0)(struct tss_struct *tss, struct thread_struct *t);
 
 	void (*set_iopl_mask)(unsigned mask);
+
 	void (*io_delay)(void);
 
-	/*
-	 * Hooks for intercepting the creation/use/destruction of an
-	 * mm_struct.
-	 */
 	void (*activate_mm)(struct mm_struct *prev,
 			    struct mm_struct *next);
 	void (*dup_mmap)(struct mm_struct *oldmm,
@@ -150,47 +115,32 @@ struct paravirt_ops
 	void (*exit_mmap)(struct mm_struct *mm);
 
 #ifdef CONFIG_X86_LOCAL_APIC
-	/*
-	 * Direct APIC operations, principally for VMI.  Ideally
-	 * these shouldn't be in this interface.
-	 */
 	void (*apic_write)(unsigned long reg, unsigned long v);
 	void (*apic_write_atomic)(unsigned long reg, unsigned long v);
 	unsigned long (*apic_read)(unsigned long reg);
 	void (*setup_boot_clock)(void);
 	void (*setup_secondary_clock)(void);
-
-	void (*startup_ipi_hook)(int phys_apicid,
-				 unsigned long start_eip,
-				 unsigned long start_esp);
 #endif
 
-	/* TLB operations */
 	void (*flush_tlb_user)(void);
 	void (*flush_tlb_kernel)(void);
-	void (*flush_tlb_single)(unsigned long addr);
-	void (*flush_tlb_others)(const cpumask_t *cpus, struct mm_struct *mm,
-				 unsigned long va);
+	void (*flush_tlb_single)(u32 addr);
+
+	void (*map_pt_hook)(int type, pte_t *va, u32 pfn);
 
-	/* Hooks for allocating/releasing pagetable pages */
 	void (*alloc_pt)(u32 pfn);
 	void (*alloc_pd)(u32 pfn);
 	void (*alloc_pd_clone)(u32 pfn, u32 clonepfn, u32 start, u32 count);
 	void (*release_pt)(u32 pfn);
 	void (*release_pd)(u32 pfn);
 
-	/* Pagetable manipulation functions */
 	void (*set_pte)(pte_t *ptep, pte_t pteval);
-	void (*set_pte_at)(struct mm_struct *mm, unsigned long addr,
-			   pte_t *ptep, pte_t pteval);
+	void (*set_pte_at)(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pteval);
 	void (*set_pmd)(pmd_t *pmdp, pmd_t pmdval);
 	void (*pte_update)(struct mm_struct *mm, unsigned long addr, pte_t *ptep);
-	void (*pte_update_defer)(struct mm_struct *mm,
-				 unsigned long addr, pte_t *ptep);
+	void (*pte_update_defer)(struct mm_struct *mm, unsigned long addr, pte_t *ptep);
 
-#ifdef CONFIG_HIGHPTE
-	void *(*kmap_atomic_pte)(struct page *page, enum km_type type);
-#endif
+ 	pte_t (*ptep_get_and_clear)(pte_t *ptep);
 
 #ifdef CONFIG_X86_PAE
 	void (*set_pte_atomic)(pte_t *ptep, pte_t pteval);
@@ -214,14 +164,20 @@ struct paravirt_ops
 	pgd_t (*make_pgd)(unsigned long pgd);
 #endif
 
-	/* Set deferred update mode, used for batching operations. */
-	void (*set_lazy_mode)(enum paravirt_lazy_mode mode);
+	void (*set_lazy_mode)(int mode);
 
 	/* These two are jmp to, not actually called. */
 	void (*irq_enable_sysexit)(void);
 	void (*iret)(void);
+
+	void (*startup_ipi_hook)(int phys_apicid, unsigned long start_eip, unsigned long start_esp);
 };
 
+/* Mark a paravirt probe function. */
+#define paravirt_probe(fn)						\
+ static asmlinkage void (*__paravirtprobe_##fn)(void) __attribute_used__ \
+		__attribute__((__section__(".paravirtprobe"))) = fn
+
 extern struct paravirt_ops paravirt_ops;
 
 #define PARAVIRT_PATCH(x)					\
@@ -232,10 +188,8 @@ extern struct paravirt_ops paravirt_ops;
 #define paravirt_clobber(clobber)		\
 	[paravirt_clobber] "i" (clobber)
 
-/*
- * Generate some code, and mark it as patchable by the
- * apply_paravirt() alternate instruction patcher.
- */
+#define PARAVIRT_CALL	"call *paravirt_ops+%c[paravirt_typenum]*4;"
+
 #define _paravirt_alt(insn_string, type, clobber)	\
 	"771:\n\t" insn_string "\n" "772:\n"		\
 	".pushsection .parainstructions,\"a\"\n"	\
@@ -245,181 +199,26 @@ extern struct paravirt_ops paravirt_ops;
 	"  .short " clobber "\n"			\
 	".popsection\n"
 
-/* Generate patchable code, with the default asm parameters. */
-#define paravirt_alt(insn_string)					\
+#define paravirt_alt(insn_string)				\
 	_paravirt_alt(insn_string, "%c[paravirt_typenum]", "%c[paravirt_clobber]")
 
-unsigned paravirt_patch_nop(void);
-unsigned paravirt_patch_ignore(unsigned len);
-unsigned paravirt_patch_call(void *target, u16 tgt_clobbers,
-			     void *site, u16 site_clobbers,
-			     unsigned len);
-unsigned paravirt_patch_jmp(void *target, void *site, unsigned len);
-unsigned paravirt_patch_default(u8 type, u16 clobbers, void *site, unsigned len);
-
-unsigned paravirt_patch_insns(void *site, unsigned len,
-			      const char *start, const char *end);
-
-
-/*
- * This generates an indirect call based on the operation type number.
- * The type number, computed in PARAVIRT_PATCH, is derived from the
- * offset into the paravirt_ops structure, and can therefore be freely
- * converted back into a structure offset.
- */
-#define PARAVIRT_CALL	"call *(paravirt_ops+%c[paravirt_typenum]*4);"
-
-/*
- * These macros are intended to wrap calls into a paravirt_ops
- * operation, so that they can be later identified and patched at
- * runtime.
- *
- * Normally, a call to a pv_op function is a simple indirect call:
- * (paravirt_ops.operations)(args...).
- *
- * Unfortunately, this is a relatively slow operation for modern CPUs,
- * because it cannot necessarily determine what the destination
- * address is.  In this case, the address is a runtime constant, so at
- * the very least we can patch the call to e a simple direct call, or
- * ideally, patch an inline implementation into the callsite.  (Direct
- * calls are essentially free, because the call and return addresses
- * are completely predictable.)
- *
- * These macros rely on the standard gcc "regparm(3)" calling
- * convention, in which the first three arguments are placed in %eax,
- * %edx, %ecx (in that order), and the remaining arguments are placed
- * on the stack.  All caller-save registers (eax,edx,ecx) are expected
- * to be modified (either clobbered or used for return values).
- *
- * The call instruction itself is marked by placing its start address
- * and size into the .parainstructions section, so that
- * apply_paravirt() in arch/i386/kernel/alternative.c can do the
- * appropriate patching under the control of the backend paravirt_ops
- * implementation.
- *
- * Unfortunately there's no way to get gcc to generate the args setup
- * for the call, and then allow the call itself to be generated by an
- * inline asm.  Because of this, we must do the complete arg setup and
- * return value handling from within these macros.  This is fairly
- * cumbersome.
- *
- * There are 5 sets of PVOP_* macros for dealing with 0-4 arguments.
- * It could be extended to more arguments, but there would be little
- * to be gained from that.  For each number of arguments, there are
- * the two VCALL and CALL variants for void and non-void functions.
- *
- * When there is a return value, the invoker of the macro must specify
- * the return type.  The macro then uses sizeof() on that type to
- * determine whether its a 32 or 64 bit value, and places the return
- * in the right register(s) (just %eax for 32-bit, and %edx:%eax for
- * 64-bit).
- *
- * 64-bit arguments are passed as a pair of adjacent 32-bit arguments
- * in low,high order.
- *
- * Small structures are passed and returned in registers.  The macro
- * calling convention can't directly deal with this, so the wrapper
- * functions must do this.
- *
- * These PVOP_* macros are only defined within this header.  This
- * means that all uses must be wrapped in inline functions.  This also
- * makes sure the incoming and outgoing types are always correct.
- */
-#define __PVOP_CALL(rettype, op, pre, post, ...)			\
-	({								\
-		rettype __ret;						\
-		unsigned long __eax, __edx, __ecx;			\
-		if (sizeof(rettype) > sizeof(unsigned long)) {		\
-			asm volatile(pre				\
-				     paravirt_alt(PARAVIRT_CALL)	\
-				     post				\
-				     : "=a" (__eax), "=d" (__edx),	\
-				       "=c" (__ecx)			\
-				     : paravirt_type(op),		\
-				       paravirt_clobber(CLBR_ANY),	\
-				       ##__VA_ARGS__			\
-				     : "memory", "cc");			\
-			__ret = (rettype)((((u64)__edx) << 32) | __eax); \
-		} else {						\
-			asm volatile(pre				\
-				     paravirt_alt(PARAVIRT_CALL)	\
-				     post				\
-				     : "=a" (__eax), "=d" (__edx),	\
-				       "=c" (__ecx)			\
-				     : paravirt_type(op),		\
-				       paravirt_clobber(CLBR_ANY),	\
-				       ##__VA_ARGS__			\
-				     : "memory", "cc");			\
-			__ret = (rettype)__eax;				\
-		}							\
-		__ret;							\
-	})
-#define __PVOP_VCALL(op, pre, post, ...)				\
-	({								\
-		unsigned long __eax, __edx, __ecx;			\
-		asm volatile(pre					\
-			     paravirt_alt(PARAVIRT_CALL)		\
-			     post					\
-			     : "=a" (__eax), "=d" (__edx), "=c" (__ecx) \
-			     : paravirt_type(op),			\
-			       paravirt_clobber(CLBR_ANY),		\
-			       ##__VA_ARGS__				\
-			     : "memory", "cc");				\
-	})
-
-#define PVOP_CALL0(rettype, op)						\
-	__PVOP_CALL(rettype, op, "", "")
-#define PVOP_VCALL0(op)							\
-	__PVOP_VCALL(op, "", "")
-
-#define PVOP_CALL1(rettype, op, arg1)					\
-	__PVOP_CALL(rettype, op, "", "", "0" ((u32)(arg1)))
-#define PVOP_VCALL1(op, arg1)						\
-	__PVOP_VCALL(op, "", "", "0" ((u32)(arg1)))
-
-#define PVOP_CALL2(rettype, op, arg1, arg2)				\
-	__PVOP_CALL(rettype, op, "", "", "0" ((u32)(arg1)), "1" ((u32)(arg2)))
-#define PVOP_VCALL2(op, arg1, arg2)					\
-	__PVOP_VCALL(op, "", "", "0" ((u32)(arg1)), "1" ((u32)(arg2)))
-
-#define PVOP_CALL3(rettype, op, arg1, arg2, arg3)			\
-	__PVOP_CALL(rettype, op, "", "", "0" ((u32)(arg1)),		\
-		    "1"((u32)(arg2)), "2"((u32)(arg3)))
-#define PVOP_VCALL3(op, arg1, arg2, arg3)				\
-	__PVOP_VCALL(op, "", "", "0" ((u32)(arg1)), "1"((u32)(arg2)),	\
-		     "2"((u32)(arg3)))
-
-#define PVOP_CALL4(rettype, op, arg1, arg2, arg3, arg4)			\
-	__PVOP_CALL(rettype, op,					\
-		    "push %[_arg4];", "lea 4(%%esp),%%esp;",		\
-		    "0" ((u32)(arg1)), "1" ((u32)(arg2)),		\
-		    "2" ((u32)(arg3)), [_arg4] "mr" ((u32)(arg4)))
-#define PVOP_VCALL4(op, arg1, arg2, arg3, arg4)				\
-	__PVOP_VCALL(op,						\
-		    "push %[_arg4];", "lea 4(%%esp),%%esp;",		\
-		    "0" ((u32)(arg1)), "1" ((u32)(arg2)),		\
-		    "2" ((u32)(arg3)), [_arg4] "mr" ((u32)(arg4)))
-
-static inline int paravirt_enabled(void)
-{
-	return paravirt_ops.paravirt_enabled;
-}
+#define paravirt_enabled() (paravirt_ops.paravirt_enabled)
 
 static inline void load_esp0(struct tss_struct *tss,
 			     struct thread_struct *thread)
 {
-	PVOP_VCALL2(load_esp0, tss, thread);
+	paravirt_ops.load_esp0(tss, thread);
 }
 
 #define ARCH_SETUP			paravirt_ops.arch_setup();
 static inline unsigned long get_wallclock(void)
 {
-	return PVOP_CALL0(unsigned long, get_wallclock);
+	return paravirt_ops.get_wallclock();
 }
 
 static inline int set_wallclock(unsigned long nowtime)
 {
-	return PVOP_CALL1(int, set_wallclock, nowtime);
+	return paravirt_ops.set_wallclock(nowtime);
 }
 
 static inline void (*choose_time_init(void))(void)
@@ -431,203 +230,127 @@ static inline void (*choose_time_init(vo
 static inline void __cpuid(unsigned int *eax, unsigned int *ebx,
 			   unsigned int *ecx, unsigned int *edx)
 {
-	PVOP_VCALL4(cpuid, eax, ebx, ecx, edx);
+	paravirt_ops.cpuid(eax, ebx, ecx, edx);
 }
 
 /*
  * These special macros can be used to get or set a debugging register
  */
-static inline unsigned long paravirt_get_debugreg(int reg)
-{
-	return PVOP_CALL1(unsigned long, get_debugreg, reg);
-}
-#define get_debugreg(var, reg) var = paravirt_get_debugreg(reg)
-static inline void set_debugreg(unsigned long val, int reg)
-{
-	PVOP_VCALL2(set_debugreg, reg, val);
-}
+#define get_debugreg(var, reg) var = paravirt_ops.get_debugreg(reg)
+#define set_debugreg(val, reg) paravirt_ops.set_debugreg(reg, val)
 
-static inline void clts(void)
-{
-	PVOP_VCALL0(clts);
-}
-
-static inline unsigned long read_cr0(void)
-{
-	return PVOP_CALL0(unsigned long, read_cr0);
-}
-
-static inline void write_cr0(unsigned long x)
-{
-	PVOP_VCALL1(write_cr0, x);
-}
-
-static inline unsigned long read_cr2(void)
-{
-	return PVOP_CALL0(unsigned long, read_cr2);
-}
+#define clts() paravirt_ops.clts()
 
-static inline void write_cr2(unsigned long x)
-{
-	PVOP_VCALL1(write_cr2, x);
-}
+#define read_cr0() paravirt_ops.read_cr0()
+#define write_cr0(x) paravirt_ops.write_cr0(x)
 
-static inline unsigned long read_cr3(void)
-{
-	return PVOP_CALL0(unsigned long, read_cr3);
-}
+#define read_cr2() paravirt_ops.read_cr2()
+#define write_cr2(x) paravirt_ops.write_cr2(x)
 
-static inline void write_cr3(unsigned long x)
-{
-	PVOP_VCALL1(write_cr3, x);
-}
+#define read_cr3() paravirt_ops.read_cr3()
+#define write_cr3(x) paravirt_ops.write_cr3(x)
 
-static inline unsigned long read_cr4(void)
-{
-	return PVOP_CALL0(unsigned long, read_cr4);
-}
-static inline unsigned long read_cr4_safe(void)
-{
-	return PVOP_CALL0(unsigned long, read_cr4_safe);
-}
+#define read_cr4() paravirt_ops.read_cr4()
+#define read_cr4_safe(x) paravirt_ops.read_cr4_safe()
+#define write_cr4(x) paravirt_ops.write_cr4(x)
 
-static inline void write_cr4(unsigned long x)
-{
-	PVOP_VCALL1(write_cr4, x);
-}
+#define raw_ptep_get_and_clear(xp)	(paravirt_ops.ptep_get_and_clear(xp))
 
 static inline void raw_safe_halt(void)
 {
-	PVOP_VCALL0(safe_halt);
+	paravirt_ops.safe_halt();
 }
 
 static inline void halt(void)
 {
-	PVOP_VCALL0(safe_halt);
-}
-
-static inline void wbinvd(void)
-{
-	PVOP_VCALL0(wbinvd);
+	paravirt_ops.safe_halt();
 }
+#define wbinvd() paravirt_ops.wbinvd()
 
 #define get_kernel_rpl()  (paravirt_ops.kernel_rpl)
 
-static inline u64 paravirt_read_msr(unsigned msr, int *err)
-{
-	return PVOP_CALL2(u64, read_msr, msr, err);
-}
-static inline int paravirt_write_msr(unsigned msr, unsigned low, unsigned high)
-{
-	return PVOP_CALL3(int, write_msr, msr, low, high);
-}
-
 /* These should all do BUG_ON(_err), but our headers are too tangled. */
-#define rdmsr(msr,val1,val2) do {		\
-	int _err;				\
-	u64 _l = paravirt_read_msr(msr, &_err);	\
-	val1 = (u32)_l;				\
-	val2 = _l >> 32;			\
+#define rdmsr(msr,val1,val2) do {				\
+	int _err;						\
+	u64 _l = paravirt_ops.read_msr(msr,&_err);		\
+	val1 = (u32)_l;						\
+	val2 = _l >> 32;					\
 } while(0)
 
-#define wrmsr(msr,val1,val2) do {		\
-	paravirt_write_msr(msr, val1, val2);	\
+#define wrmsr(msr,val1,val2) do {				\
+	u64 _l = ((u64)(val2) << 32) | (val1);			\
+	paravirt_ops.write_msr((msr), _l);			\
 } while(0)
 
-#define rdmsrl(msr,val) do {			\
-	int _err;				\
-	val = paravirt_read_msr(msr, &_err);	\
+#define rdmsrl(msr,val) do {					\
+	int _err;						\
+	val = paravirt_ops.read_msr((msr),&_err);		\
 } while(0)
 
-#define wrmsrl(msr,val)		((void)paravirt_write_msr(msr, val, 0))
-#define wrmsr_safe(msr,a,b)	paravirt_write_msr(msr, a, b)
+#define wrmsrl(msr,val) (paravirt_ops.write_msr((msr),(val)))
+#define wrmsr_safe(msr,a,b) ({					\
+	u64 _l = ((u64)(b) << 32) | (a);			\
+	paravirt_ops.write_msr((msr),_l);			\
+})
 
 /* rdmsr with exception handling */
-#define rdmsr_safe(msr,a,b) ({			\
-	int _err;				\
-	u64 _l = paravirt_read_msr(msr, &_err);	\
-	(*a) = (u32)_l;				\
-	(*b) = _l >> 32;			\
+#define rdmsr_safe(msr,a,b) ({					\
+	int _err;						\
+	u64 _l = paravirt_ops.read_msr(msr,&_err);		\
+	(*a) = (u32)_l;						\
+	(*b) = _l >> 32;					\
 	_err; })
 
+#define rdtsc(low,high) do {					\
+	u64 _l = paravirt_ops.read_tsc();			\
+	low = (u32)_l;						\
+	high = _l >> 32;					\
+} while(0)
 
-static inline u64 paravirt_read_tsc(void)
-{
-	return PVOP_CALL0(u64, read_tsc);
-}
-
-#define rdtscl(low) do {			\
-	u64 _l = paravirt_read_tsc();		\
-	low = (int)_l;				\
+#define rdtscl(low) do {					\
+	u64 _l = paravirt_ops.read_tsc();			\
+	low = (int)_l;						\
 } while(0)
 
-#define rdtscll(val) (val = paravirt_read_tsc())
+#define rdtscll(val) (val = paravirt_ops.read_tsc())
 
 #define get_scheduled_cycles(val) (val = paravirt_ops.get_scheduled_cycles())
 #define calculate_cpu_khz() (paravirt_ops.get_cpu_khz())
 
 #define write_tsc(val1,val2) wrmsr(0x10, val1, val2)
 
-static inline unsigned long long paravirt_read_pmc(int counter)
-{
-	return PVOP_CALL1(u64, read_pmc, counter);
-}
-
-#define rdpmc(counter,low,high) do {		\
-	u64 _l = paravirt_read_pmc(counter);	\
-	low = (u32)_l;				\
-	high = _l >> 32;			\
+#define rdpmc(counter,low,high) do {				\
+	u64 _l = paravirt_ops.read_pmc();			\
+	low = (u32)_l;						\
+	high = _l >> 32;					\
 } while(0)
 
-static inline void load_TR_desc(void)
-{
-	PVOP_VCALL0(load_tr_desc);
-}
-static inline void load_gdt(const struct Xgt_desc_struct *dtr)
-{
-	PVOP_VCALL1(load_gdt, dtr);
-}
-static inline void load_idt(const struct Xgt_desc_struct *dtr)
-{
-	PVOP_VCALL1(load_idt, dtr);
-}
-static inline void set_ldt(const void *addr, unsigned entries)
-{
-	PVOP_VCALL2(set_ldt, addr, entries);
-}
-static inline void store_gdt(struct Xgt_desc_struct *dtr)
-{
-	PVOP_VCALL1(store_gdt, dtr);
-}
-static inline void store_idt(struct Xgt_desc_struct *dtr)
-{
-	PVOP_VCALL1(store_idt, dtr);
-}
-static inline unsigned long paravirt_store_tr(void)
-{
-	return PVOP_CALL0(unsigned long, store_tr);
-}
-#define store_tr(tr)	((tr) = paravirt_store_tr())
-static inline void load_TLS(struct thread_struct *t, unsigned cpu)
-{
-	PVOP_VCALL2(load_tls, t, cpu);
-}
-static inline void write_ldt_entry(void *dt, int entry, u32 low, u32 high)
-{
-	PVOP_VCALL4(write_ldt_entry, dt, entry, low, high);
-}
-static inline void write_gdt_entry(void *dt, int entry, u32 low, u32 high)
-{
-	PVOP_VCALL4(write_gdt_entry, dt, entry, low, high);
-}
-static inline void write_idt_entry(void *dt, int entry, u32 low, u32 high)
-{
-	PVOP_VCALL4(write_idt_entry, dt, entry, low, high);
-}
-static inline void set_iopl_mask(unsigned mask)
-{
-	PVOP_VCALL1(set_iopl_mask, mask);
-}
+#define load_TR_desc() (paravirt_ops.load_tr_desc())
+#define load_gdt(dtr) (paravirt_ops.load_gdt(dtr))
+#define load_idt(dtr) (paravirt_ops.load_idt(dtr))
+#define set_ldt(addr, entries) (paravirt_ops.set_ldt((addr), (entries)))
+#define store_gdt(dtr) (paravirt_ops.store_gdt(dtr))
+#define store_idt(dtr) (paravirt_ops.store_idt(dtr))
+#define store_tr(tr) ((tr) = paravirt_ops.store_tr())
+#define load_TLS(t,cpu) (paravirt_ops.load_tls((t),(cpu)))
+#define write_ldt_entry(dt, entry, low, high)				\
+	(paravirt_ops.write_ldt_entry((dt), (entry), (low), (high)))
+#define write_gdt_entry(dt, entry, low, high)				\
+	(paravirt_ops.write_gdt_entry((dt), (entry), (low), (high)))
+#define write_idt_entry(dt, entry, low, high)				\
+	(paravirt_ops.write_idt_entry((dt), (entry), (low), (high)))
+#define set_iopl_mask(mask) (paravirt_ops.set_iopl_mask(mask))
+
+#define __pte(x)	paravirt_ops.make_pte(x)
+#define __pgd(x)	paravirt_ops.make_pgd(x)
+
+#define pte_val(x)	paravirt_ops.pte_val(x)
+#define pgd_val(x)	paravirt_ops.pgd_val(x)
+
+#ifdef CONFIG_X86_PAE
+#define __pmd(x)	paravirt_ops.make_pmd(x)
+#define pmd_val(x)	paravirt_ops.pmd_val(x)
+#endif
 
 /* The paravirtualized I/O functions */
 static inline void slow_down_io(void) {
@@ -645,27 +368,27 @@ static inline void slow_down_io(void) {
  */
 static inline void apic_write(unsigned long reg, unsigned long v)
 {
-	PVOP_VCALL2(apic_write, reg, v);
+	paravirt_ops.apic_write(reg,v);
 }
 
 static inline void apic_write_atomic(unsigned long reg, unsigned long v)
 {
-	PVOP_VCALL2(apic_write_atomic, reg, v);
+	paravirt_ops.apic_write_atomic(reg,v);
 }
 
 static inline unsigned long apic_read(unsigned long reg)
 {
-	return PVOP_CALL1(unsigned long, apic_read, reg);
+	return paravirt_ops.apic_read(reg);
 }
 
 static inline void setup_boot_clock(void)
 {
-	PVOP_VCALL0(setup_boot_clock);
+	paravirt_ops.setup_boot_clock();
 }
 
 static inline void setup_secondary_clock(void)
 {
-	PVOP_VCALL0(setup_secondary_clock);
+	paravirt_ops.setup_secondary_clock();
 }
 #endif
 
@@ -685,239 +408,109 @@ static inline void paravirt_pagetable_se
 static inline void startup_ipi_hook(int phys_apicid, unsigned long start_eip,
 				    unsigned long start_esp)
 {
-	PVOP_VCALL3(startup_ipi_hook, phys_apicid, start_eip, start_esp);
+	return paravirt_ops.startup_ipi_hook(phys_apicid, start_eip, start_esp);
 }
 #endif
 
 static inline void paravirt_activate_mm(struct mm_struct *prev,
 					struct mm_struct *next)
 {
-	PVOP_VCALL2(activate_mm, prev, next);
+	paravirt_ops.activate_mm(prev, next);
 }
 
 static inline void arch_dup_mmap(struct mm_struct *oldmm,
 				 struct mm_struct *mm)
 {
-	PVOP_VCALL2(dup_mmap, oldmm, mm);
+	paravirt_ops.dup_mmap(oldmm, mm);
 }
 
 static inline void arch_exit_mmap(struct mm_struct *mm)
 {
-	PVOP_VCALL1(exit_mmap, mm);
+	paravirt_ops.exit_mmap(mm);
 }
 
-static inline void __flush_tlb(void)
-{
-	PVOP_VCALL0(flush_tlb_user);
-}
-static inline void __flush_tlb_global(void)
-{
-	PVOP_VCALL0(flush_tlb_kernel);
-}
-static inline void __flush_tlb_single(unsigned long addr)
-{
-	PVOP_VCALL1(flush_tlb_single, addr);
-}
-
-static inline void flush_tlb_others(cpumask_t cpumask, struct mm_struct *mm,
-				    unsigned long va)
-{
-	PVOP_VCALL3(flush_tlb_others, &cpumask, mm, va);
-}
+#define __flush_tlb() paravirt_ops.flush_tlb_user()
+#define __flush_tlb_global() paravirt_ops.flush_tlb_kernel()
+#define __flush_tlb_single(addr) paravirt_ops.flush_tlb_single(addr)
 
-static inline void paravirt_alloc_pt(unsigned pfn)
-{
-	PVOP_VCALL1(alloc_pt, pfn);
-}
-static inline void paravirt_release_pt(unsigned pfn)
-{
-	PVOP_VCALL1(release_pt, pfn);
-}
+#define paravirt_map_pt_hook(type, va, pfn) paravirt_ops.map_pt_hook(type, va, pfn)
 
-static inline void paravirt_alloc_pd(unsigned pfn)
-{
-	PVOP_VCALL1(alloc_pd, pfn);
-}
+#define paravirt_alloc_pt(pfn) paravirt_ops.alloc_pt(pfn)
+#define paravirt_release_pt(pfn) paravirt_ops.release_pt(pfn)
 
-static inline void paravirt_alloc_pd_clone(unsigned pfn, unsigned clonepfn,
-					   unsigned start, unsigned count)
-{
-	PVOP_VCALL4(alloc_pd_clone, pfn, clonepfn, start, count);
-}
-static inline void paravirt_release_pd(unsigned pfn)
-{
-	PVOP_VCALL1(release_pd, pfn);
-}
-
-#ifdef CONFIG_HIGHPTE
-static inline void *kmap_atomic_pte(struct page *page, enum km_type type)
-{
-	unsigned long ret;
-	ret = PVOP_CALL2(unsigned long, kmap_atomic_pte, page, type);
-	return (void *)ret;
-}
-#endif
-
-static inline void pte_update(struct mm_struct *mm, unsigned long addr,
-			      pte_t *ptep)
-{
-	PVOP_VCALL3(pte_update, mm, addr, ptep);
-}
-
-static inline void pte_update_defer(struct mm_struct *mm, unsigned long addr,
-				    pte_t *ptep)
-{
-	PVOP_VCALL3(pte_update_defer, mm, addr, ptep);
-}
-
-#ifdef CONFIG_X86_PAE
-static inline pte_t __pte(unsigned long long val)
-{
-	unsigned long long ret = PVOP_CALL2(unsigned long long, make_pte,
-					    val, val >> 32);
-	return (pte_t) { ret, ret >> 32 };
-}
-
-static inline pmd_t __pmd(unsigned long long val)
-{
-	return (pmd_t) { PVOP_CALL2(unsigned long long, make_pmd, val, val >> 32) };
-}
-
-static inline pgd_t __pgd(unsigned long long val)
-{
-	return (pgd_t) { PVOP_CALL2(unsigned long long, make_pgd, val, val >> 32) };
-}
-
-static inline unsigned long long pte_val(pte_t x)
-{
-	return PVOP_CALL2(unsigned long long, pte_val, x.pte_low, x.pte_high);
-}
-
-static inline unsigned long long pmd_val(pmd_t x)
-{
-	return PVOP_CALL2(unsigned long long, pmd_val, x.pmd, x.pmd >> 32);
-}
-
-static inline unsigned long long pgd_val(pgd_t x)
-{
-	return PVOP_CALL2(unsigned long long, pgd_val, x.pgd, x.pgd >> 32);
-}
+#define paravirt_alloc_pd(pfn) paravirt_ops.alloc_pd(pfn)
+#define paravirt_alloc_pd_clone(pfn, clonepfn, start, count) \
+	paravirt_ops.alloc_pd_clone(pfn, clonepfn, start, count)
+#define paravirt_release_pd(pfn) paravirt_ops.release_pd(pfn)
 
 static inline void set_pte(pte_t *ptep, pte_t pteval)
 {
-	PVOP_VCALL3(set_pte, ptep, pteval.pte_low, pteval.pte_high);
+	paravirt_ops.set_pte(ptep, pteval);
 }
 
 static inline void set_pte_at(struct mm_struct *mm, unsigned long addr,
 			      pte_t *ptep, pte_t pteval)
 {
-	/* 5 arg words */
 	paravirt_ops.set_pte_at(mm, addr, ptep, pteval);
 }
 
-static inline void set_pte_atomic(pte_t *ptep, pte_t pteval)
-{
-	PVOP_VCALL3(set_pte_atomic, ptep, pteval.pte_low, pteval.pte_high);
-}
-
-static inline void set_pte_present(struct mm_struct *mm, unsigned long addr,
-				   pte_t *ptep, pte_t pte)
-{
-	/* 5 arg words */
-	paravirt_ops.set_pte_present(mm, addr, ptep, pte);
-}
-
 static inline void set_pmd(pmd_t *pmdp, pmd_t pmdval)
 {
-	PVOP_VCALL3(set_pmd, pmdp, pmdval.pmd, pmdval.pmd >> 32);
+	paravirt_ops.set_pmd(pmdp, pmdval);
 }
 
-static inline void set_pud(pud_t *pudp, pud_t pudval)
+static inline void pte_update(struct mm_struct *mm, u32 addr, pte_t *ptep)
 {
-	PVOP_VCALL3(set_pud, pudp, pudval.pgd.pgd, pudval.pgd.pgd >> 32);
+	paravirt_ops.pte_update(mm, addr, ptep);
 }
 
-static inline void pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep)
+static inline void pte_update_defer(struct mm_struct *mm, u32 addr, pte_t *ptep)
 {
-	PVOP_VCALL3(pte_clear, mm, addr, ptep);
+	paravirt_ops.pte_update_defer(mm, addr, ptep);
 }
 
-static inline void pmd_clear(pmd_t *pmdp)
-{
-	PVOP_VCALL1(pmd_clear, pmdp);
-}
-
-#else  /* !CONFIG_X86_PAE */
-
-static inline pte_t __pte(unsigned long val)
-{
-	return (pte_t) { PVOP_CALL1(unsigned long, make_pte, val) };
-}
-
-static inline pgd_t __pgd(unsigned long val)
+#ifdef CONFIG_X86_PAE
+static inline void set_pte_atomic(pte_t *ptep, pte_t pteval)
 {
-	return (pgd_t) { PVOP_CALL1(unsigned long, make_pgd, val) };
+	paravirt_ops.set_pte_atomic(ptep, pteval);
 }
 
-static inline unsigned long pte_val(pte_t x)
+static inline void set_pte_present(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pte)
 {
-	return PVOP_CALL1(unsigned long, pte_val, x.pte_low);
+	paravirt_ops.set_pte_present(mm, addr, ptep, pte);
 }
 
-static inline unsigned long pgd_val(pgd_t x)
+static inline void set_pud(pud_t *pudp, pud_t pudval)
 {
-	return PVOP_CALL1(unsigned long, pgd_val, x.pgd);
+	paravirt_ops.set_pud(pudp, pudval);
 }
 
-static inline void set_pte(pte_t *ptep, pte_t pteval)
+static inline void pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep)
 {
-	PVOP_VCALL2(set_pte, ptep, pteval.pte_low);
+	paravirt_ops.pte_clear(mm, addr, ptep);
 }
 
-static inline void set_pte_at(struct mm_struct *mm, unsigned long addr,
-			      pte_t *ptep, pte_t pteval)
+static inline void pmd_clear(pmd_t *pmdp)
 {
-	PVOP_VCALL4(set_pte_at, mm, addr, ptep, pteval.pte_low);
+	paravirt_ops.pmd_clear(pmdp);
 }
+#endif
 
-static inline void set_pmd(pmd_t *pmdp, pmd_t pmdval)
-{
-	PVOP_VCALL2(set_pmd, pmdp, pmdval.pud.pgd.pgd);
-}
-#endif	/* CONFIG_X86_PAE */
+/* Lazy mode for batching updates / context switch */
+#define PARAVIRT_LAZY_NONE 0
+#define PARAVIRT_LAZY_MMU  1
+#define PARAVIRT_LAZY_CPU  2
+#define PARAVIRT_LAZY_FLUSH 3
 
 #define  __HAVE_ARCH_ENTER_LAZY_CPU_MODE
-static inline void arch_enter_lazy_cpu_mode(void)
-{
-	PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_CPU);
-}
-
-static inline void arch_leave_lazy_cpu_mode(void)
-{
-	PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_NONE);
-}
-
-static inline void arch_flush_lazy_cpu_mode(void)
-{
-	PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_FLUSH);
-}
-
+#define arch_enter_lazy_cpu_mode() paravirt_ops.set_lazy_mode(PARAVIRT_LAZY_CPU)
+#define arch_leave_lazy_cpu_mode() paravirt_ops.set_lazy_mode(PARAVIRT_LAZY_NONE)
+#define arch_flush_lazy_cpu_mode() paravirt_ops.set_lazy_mode(PARAVIRT_LAZY_FLUSH)
 
 #define  __HAVE_ARCH_ENTER_LAZY_MMU_MODE
-static inline void arch_enter_lazy_mmu_mode(void)
-{
-	PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_MMU);
-}
-
-static inline void arch_leave_lazy_mmu_mode(void)
-{
-	PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_NONE);
-}
-
-static inline void arch_flush_lazy_mmu_mode(void)
-{
-	PVOP_VCALL1(set_lazy_mode, PARAVIRT_LAZY_FLUSH);
-}
+#define arch_enter_lazy_mmu_mode() paravirt_ops.set_lazy_mode(PARAVIRT_LAZY_MMU)
+#define arch_leave_lazy_mmu_mode() paravirt_ops.set_lazy_mode(PARAVIRT_LAZY_NONE)
+#define arch_flush_lazy_mmu_mode() paravirt_ops.set_lazy_mode(PARAVIRT_LAZY_FLUSH)
 
 void _paravirt_nop(void);
 #define paravirt_nop	((void *)_paravirt_nop)
@@ -1009,20 +602,7 @@ static inline unsigned long __raw_local_
 	[paravirt_sti_type] "i" (PARAVIRT_PATCH(irq_enable)),		\
 	paravirt_clobber(CLBR_EAX)
 
-/* Make sure as little as possible of this mess escapes. */
 #undef PARAVIRT_CALL
-#undef __PVOP_CALL
-#undef __PVOP_VCALL
-#undef PVOP_VCALL0
-#undef PVOP_CALL0
-#undef PVOP_VCALL1
-#undef PVOP_CALL1
-#undef PVOP_VCALL2
-#undef PVOP_CALL2
-#undef PVOP_VCALL3
-#undef PVOP_CALL3
-#undef PVOP_VCALL4
-#undef PVOP_CALL4
 
 #else  /* __ASSEMBLY__ */
 
Index: linux-2.6-git/include/asm-i386/tlbflush.h
===================================================================
--- linux-2.6-git.orig/include/asm-i386/tlbflush.h
+++ linux-2.6-git/include/asm-i386/tlbflush.h
@@ -79,19 +79,15 @@
  *  - flush_tlb_range(vma, start, end) flushes a range of pages
  *  - flush_tlb_kernel_range(start, end) flushes a range of kernel pages
  *  - flush_tlb_pgtables(mm, start, end) flushes a range of page tables
- *  - flush_tlb_others(cpumask, mm, va) flushes a TLBs on other cpus
  *
  * ..but the i386 has somewhat limited tlb flushing capabilities,
  * and page-granular flushes are available only on i486 and up.
  */
 
-#define TLB_FLUSH_ALL	0xffffffff
-
+#define TLB_FLUSH_ALL  0xffffffff
 
 #ifndef CONFIG_SMP
 
-#include <linux/sched.h>
-
 #define flush_tlb() __flush_tlb()
 #define flush_tlb_all() __flush_tlb_all()
 #define local_flush_tlb() __flush_tlb()
@@ -116,12 +112,7 @@ static inline void flush_tlb_range(struc
 		__flush_tlb();
 }
 
-static inline void native_flush_tlb_others(const cpumask_t *cpumask,
-					   struct mm_struct *mm, unsigned long va)
-{
-}
-
-#else  /* SMP */
+#else
 
 #include <asm/smp.h>
 
@@ -140,9 +131,6 @@ static inline void flush_tlb_range(struc
 	flush_tlb_mm(vma->vm_mm);
 }
 
-void native_flush_tlb_others(const cpumask_t *cpumask, struct mm_struct *mm,
-			     unsigned long va);
-
 #define TLBSTATE_OK	1
 #define TLBSTATE_LAZY	2
 
@@ -153,11 +141,8 @@ struct tlb_state
 	char __cacheline_padding[L1_CACHE_BYTES-8];
 };
 DECLARE_PER_CPU(struct tlb_state, cpu_tlbstate);
-#endif	/* SMP */
 
-#ifndef CONFIG_PARAVIRT
-#define flush_tlb_others(mask, mm, va)		\
-	native_flush_tlb_others(&mask, mm, va)
+
 #endif
 
 #define flush_tlb_kernel_range(start, end) flush_tlb_all()

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25  8:05                         ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Ingo Molnar
@ 2007-06-25  8:26                           ` Ingo Molnar
  2007-06-25 12:45                             ` Björn Steinbrink
  2007-06-25 12:40                           ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Jeremy Fitzhardinge
  1 sibling, 1 reply; 105+ messages in thread
From: Ingo Molnar @ 2007-06-25  8:26 UTC (permalink / raw)
  To: Bj?rn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds
  Cc: Jeremy Fitzhardinge, Rusty Russell


* Ingo Molnar <mingo@elte.hu> wrote:

> the winner is ...
> 
>  f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
>  commit f8822f42019eceed19cc6c0f985a489e17796ed8
>  Author: Jeremy Fitzhardinge <jeremy@goop.org>
>  Date:   Wed May 2 19:27:14 2007 +0200
> 
>     [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to make them patchable

and of course i'm happy to test any patch that is simpler than the 
brutal revert i sent.

	Ingo

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25  8:05                         ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Ingo Molnar
  2007-06-25  8:26                           ` Ingo Molnar
@ 2007-06-25 12:40                           ` Jeremy Fitzhardinge
  2007-06-25 13:13                             ` Björn Steinbrink
  1 sibling, 1 reply; 105+ messages in thread
From: Jeremy Fitzhardinge @ 2007-06-25 12:40 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Bj?rn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds, Rusty Russell

Ingo Molnar wrote:
> * Ingo Molnar <mingo@elte.hu> wrote:
>
>   
>> hm, restoring nmi.c to the v2.6.21 state does not fix the 
>> nmi_watchdog=2 hang. I'll do a bisection run.
>>     
>
> and after spending an hour on 15 bisection steps:
>
>  git-bisect start
>  git-bisect good d1be341dba5521506d9e6dccfd66179080705bea
>  git-bisect bad a06381fec77bf88ec6c5eb6324457cb04e9ffd69
>  git-bisect bad 794543a236074f49a8af89ef08ef6a753e4777e5
>  git-bisect good 24a77daf3d80bddcece044e6dc3675e427eef3f3
>  git-bisect bad ea62ccd00fd0b6720b033adfc9984f31130ce195
>  git-bisect good 7e20ef030dde0e52dd5a57220ee82fa9facbea4e
>  git-bisect bad f19cccf366a07e05703c90038704a3a5ffcb0607
>  git-bisect good 0d08e0d3a97cce22ebf80b54785e00d9b94e1add
>  git-bisect bad 856f44ff4af6e57fdc39a8b2bec498c88438bd27
>  git-bisect bad f8822f42019eceed19cc6c0f985a489e17796ed8
>  git-bisect good 1c3d99c11c47c8a1a9ed6a46555dbf6520683c52
>  git-bisect good b239fb2501117bf3aeb4dd6926edd855be92333d
>  git-bisect good 98de032b681d8a7532d44dfc66aa5c0c1c755a9d
>  git-bisect good 42c24fa22e86365055fc931d833f26165e687c19
>
> the winner is ...
>
>  f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
>  commit f8822f42019eceed19cc6c0f985a489e17796ed8
>  Author: Jeremy Fitzhardinge <jeremy@goop.org>
>  Date:   Wed May 2 19:27:14 2007 +0200
>
>     [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to make them patchable
>
> ... our wonderful paravirt subsystem, honed to eternal perfection by the 
> testing-machine x86_64 tree.
>
> reverting -git-curr's paravirt.c, paravirt.h, smp.c and tlbflush.h to 
> before the bad commit makes the NMI watchdog work again. Patch against 
> -rc6 is below.
>   

Er, wow.  I've been running with this stuff for months without a 
problem.   Do you have CONFIG_PARAVIRT enabled?  Do you still get the 
hang if you boot with "noreplace-paravirt" to disable the patching? 

Your revert patch seems to take out quite a lot of stuff, some unrelated 
to the paravirt_ops.  Where did that come from?

I presume there's one bad callsite in here which is used by the nmi path 
more or less exclusively.  Is the bug simply that it hangs if you boot 
with nmi_watchdog=2?  ie, no other details?

> @@ -222,10 +211,30 @@ void send_IPI_mask_sequence(cpumask_t ma
>  	 */ 
>  
>  	local_irq_save(flags);
> +
>  	for (query_cpu = 0; query_cpu < NR_CPUS; ++query_cpu) {
>  		if (cpu_isset(query_cpu, mask)) {
> -			__send_IPI_dest_field(cpu_to_logical_apicid(query_cpu),
> -					      vector);
> +		
> +			/*
> +			 * Wait for idle.
> +			 */
> +			apic_wait_icr_idle();
> +		
> +			/*
> +			 * prepare target chip field
> +			 */
> +			cfg = __prepare_ICR2(cpu_to_logical_apicid(query_cpu));
> +			apic_write_around(APIC_ICR2, cfg);
> +		
> +			/*
> +			 * program the ICR 
> +			 */
> +			cfg = __prepare_ICR(0, vector);
> +			
> +			/*
> +			 * Send the IPI. The write to APIC_ICR fires this off.
> +			 */
> +			apic_write_around(APIC_ICR, cfg);
>  		}
>  	}
>  	local_irq_restore(flags);
>   

What's this?  This isn't paravirt_ops related, is it?

    J

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25  8:26                           ` Ingo Molnar
@ 2007-06-25 12:45                             ` Björn Steinbrink
  2007-06-25 12:49                               ` Jeremy Fitzhardinge
  2007-06-25 18:50                               ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang, take #2 Ingo Molnar
  0 siblings, 2 replies; 105+ messages in thread
From: Björn Steinbrink @ 2007-06-25 12:45 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Andrew Morton, linux-kernel, Andi Kleen, Linus Torvalds,
	Jeremy Fitzhardinge, Rusty Russell

On 2007.06.25 10:26:52 +0200, Ingo Molnar wrote:
> 
> * Ingo Molnar <mingo@elte.hu> wrote:
> 
> > the winner is ...
> > 
> >  f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
> >  commit f8822f42019eceed19cc6c0f985a489e17796ed8
> >  Author: Jeremy Fitzhardinge <jeremy@goop.org>
> >  Date:   Wed May 2 19:27:14 2007 +0200
> > 
> >     [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to make them patchable
> 
> and of course i'm happy to test any patch that is simpler than the 
> brutal revert i sent.

wrmsrl() looks broken, dropping the upper 32bits of the value to be
written. Does this help?

Björn
---
diff --git a/include/asm-i386/paravirt.h b/include/asm-i386/paravirt.h
index d7a0512..7f846a7 100644
--- a/include/asm-i386/paravirt.h
+++ b/include/asm-i386/paravirt.h
@@ -539,7 +539,7 @@ static inline int paravirt_write_msr(unsigned msr, unsigned low, unsigned high)
 	val = paravirt_read_msr(msr, &_err);	\
 } while(0)
 
-#define wrmsrl(msr,val)		((void)paravirt_write_msr(msr, val, 0))
+#define wrmsrl(msr,val)		wrmsr(msr, (u32)((u64)(val)), ((u64)(val))>>32)
 #define wrmsr_safe(msr,a,b)	paravirt_write_msr(msr, a, b)
 
 /* rdmsr with exception handling */

^ permalink raw reply related	[flat|nested] 105+ messages in thread

* Re: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25 12:45                             ` Björn Steinbrink
@ 2007-06-25 12:49                               ` Jeremy Fitzhardinge
  2007-06-25 13:06                                 ` Björn Steinbrink
  2007-06-25 18:50                               ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang, take #2 Ingo Molnar
  1 sibling, 1 reply; 105+ messages in thread
From: Jeremy Fitzhardinge @ 2007-06-25 12:49 UTC (permalink / raw)
  To: Björn Steinbrink, Ingo Molnar, Andrew Morton, linux-kernel,
	Andi Kleen, Linus Torvalds, Jeremy Fitzhardinge, Rusty Russell

Björn Steinbrink wrote:
> On 2007.06.25 10:26:52 +0200, Ingo Molnar wrote:
>   
>> * Ingo Molnar <mingo@elte.hu> wrote:
>>
>>     
>>> the winner is ...
>>>
>>>  f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
>>>  commit f8822f42019eceed19cc6c0f985a489e17796ed8
>>>  Author: Jeremy Fitzhardinge <jeremy@goop.org>
>>>  Date:   Wed May 2 19:27:14 2007 +0200
>>>
>>>     [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to make them patchable
>>>       
>> and of course i'm happy to test any patch that is simpler than the 
>> brutal revert i sent.
>>     
>
> wrmsrl() looks broken, dropping the upper 32bits of the value to be
> written. Does this help?
>   

Crap.  That's embarrassing.  Does it help, because it seems likely?  
(Esp since Ingo didn't even have CONFIG_PARAVIRT enabled, so most of his 
revert would have been dead code anyway.)

    J

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25 12:49                               ` Jeremy Fitzhardinge
@ 2007-06-25 13:06                                 ` Björn Steinbrink
  0 siblings, 0 replies; 105+ messages in thread
From: Björn Steinbrink @ 2007-06-25 13:06 UTC (permalink / raw)
  To: Jeremy Fitzhardinge
  Cc: Ingo Molnar, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds, Rusty Russell

On 2007.06.25 08:49:05 -0400, Jeremy Fitzhardinge wrote:
> Björn Steinbrink wrote:
> >On 2007.06.25 10:26:52 +0200, Ingo Molnar wrote:
> >  
> >>* Ingo Molnar <mingo@elte.hu> wrote:
> >>
> >>    
> >>>the winner is ...
> >>>
> >>> f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
> >>> commit f8822f42019eceed19cc6c0f985a489e17796ed8
> >>> Author: Jeremy Fitzhardinge <jeremy@goop.org>
> >>> Date:   Wed May 2 19:27:14 2007 +0200
> >>>
> >>>    [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to 
> >>>    make them patchable
> >>>      
> >>and of course i'm happy to test any patch that is simpler than the 
> >>brutal revert i sent.
> >>    
> >
> >wrmsrl() looks broken, dropping the upper 32bits of the value to be
> >written. Does this help?
> >  
> 
> Crap.  That's embarrassing.  Does it help, because it seems likely?  
> (Esp since Ingo didn't even have CONFIG_PARAVIRT enabled, so most of his 
> revert would have been dead code anyway.)

He has. The config Ingo sent was for x86_64, which (AFAICT) doesn't have
CONFIG_PARAVIRT, so the config was unfortunately useless. But his
bootlog tells us:

Booting paravirtualized kernel on bare hardware

Björn

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang
  2007-06-25 12:40                           ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Jeremy Fitzhardinge
@ 2007-06-25 13:13                             ` Björn Steinbrink
  0 siblings, 0 replies; 105+ messages in thread
From: Björn Steinbrink @ 2007-06-25 13:13 UTC (permalink / raw)
  To: Jeremy Fitzhardinge
  Cc: Ingo Molnar, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds, Rusty Russell

On 2007.06.25 08:40:35 -0400, Jeremy Fitzhardinge wrote:
> Ingo Molnar wrote:
> >* Ingo Molnar <mingo@elte.hu> wrote:
> >
> >  
> >>hm, restoring nmi.c to the v2.6.21 state does not fix the 
> >>nmi_watchdog=2 hang. I'll do a bisection run.
> >>    
> >
> >and after spending an hour on 15 bisection steps:
> >
> > git-bisect start
> > git-bisect good d1be341dba5521506d9e6dccfd66179080705bea
> > git-bisect bad a06381fec77bf88ec6c5eb6324457cb04e9ffd69
> > git-bisect bad 794543a236074f49a8af89ef08ef6a753e4777e5
> > git-bisect good 24a77daf3d80bddcece044e6dc3675e427eef3f3
> > git-bisect bad ea62ccd00fd0b6720b033adfc9984f31130ce195
> > git-bisect good 7e20ef030dde0e52dd5a57220ee82fa9facbea4e
> > git-bisect bad f19cccf366a07e05703c90038704a3a5ffcb0607
> > git-bisect good 0d08e0d3a97cce22ebf80b54785e00d9b94e1add
> > git-bisect bad 856f44ff4af6e57fdc39a8b2bec498c88438bd27
> > git-bisect bad f8822f42019eceed19cc6c0f985a489e17796ed8
> > git-bisect good 1c3d99c11c47c8a1a9ed6a46555dbf6520683c52
> > git-bisect good b239fb2501117bf3aeb4dd6926edd855be92333d
> > git-bisect good 98de032b681d8a7532d44dfc66aa5c0c1c755a9d
> > git-bisect good 42c24fa22e86365055fc931d833f26165e687c19
> >
> >the winner is ...
> >
> > f8822f42019eceed19cc6c0f985a489e17796ed8 is first bad commit
> > commit f8822f42019eceed19cc6c0f985a489e17796ed8
> > Author: Jeremy Fitzhardinge <jeremy@goop.org>
> > Date:   Wed May 2 19:27:14 2007 +0200
> >
> >    [PATCH] i386: PARAVIRT: Consistently wrap paravirt ops callsites to 
> >    make them patchable
> >
> >... our wonderful paravirt subsystem, honed to eternal perfection by the 
> >testing-machine x86_64 tree.
> >
> >reverting -git-curr's paravirt.c, paravirt.h, smp.c and tlbflush.h to 
> >before the bad commit makes the NMI watchdog work again. Patch against 
> >-rc6 is below.
> >  
> 
> Er, wow.  I've been running with this stuff for months without a 
> problem.   Do you have CONFIG_PARAVIRT enabled?  Do you still get the 
> hang if you boot with "noreplace-paravirt" to disable the patching? 

Are you running on AMD hardware? As Intel performance counters are only
32 bits wide, the wrmsrl bug should be a non-issue at least for the NMI
watchdog on Intel hardware. AMD uses 48bit wide performance counters,
which are probably less happy ;-)

Björn

^ permalink raw reply	[flat|nested] 105+ messages in thread

* [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang, take #2
  2007-06-25 12:45                             ` Björn Steinbrink
  2007-06-25 12:49                               ` Jeremy Fitzhardinge
@ 2007-06-25 18:50                               ` Ingo Molnar
  1 sibling, 0 replies; 105+ messages in thread
From: Ingo Molnar @ 2007-06-25 18:50 UTC (permalink / raw)
  To: Björn Steinbrink, Andrew Morton, linux-kernel, Andi Kleen,
	Linus Torvalds, Jeremy Fitzhardinge, Rusty Russell


* Björn Steinbrink <B.Steinbrink@gmx.de> wrote:

> > and of course i'm happy to test any patch that is simpler than the 
> > brutal revert i sent.
> 
> wrmsrl() looks broken, dropping the upper 32bits of the value to be 
> written. Does this help?

this did the trick, rc6 plus your fix and the NMI watchdog works again! 
Thanks! I suspect other code (oprofile?) broke due to this too.

below is a tidied up patch for upstream application. Must-have for 
2.6.22.

	Ingo

----------------->
From: Björn Steinbrink <B.Steinbrink@gmx.de>
Subject: [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang, take #2

wrmsrl() is broken, dropping the upper 32bits of the value to be
written. This broke the NMI watchdog on AMD hardware. (and it
probably broke other code too.)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
 include/asm-i386/paravirt.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux/include/asm-i386/paravirt.h
===================================================================
--- linux.orig/include/asm-i386/paravirt.h
+++ linux/include/asm-i386/paravirt.h
@@ -539,7 +539,7 @@ static inline int paravirt_write_msr(uns
 	val = paravirt_read_msr(msr, &_err);	\
 } while(0)
 
-#define wrmsrl(msr,val)		((void)paravirt_write_msr(msr, val, 0))
+#define wrmsrl(msr,val)		wrmsr(msr, (u32)((u64)(val)), ((u64)(val))>>32)
 #define wrmsr_safe(msr,a,b)	paravirt_write_msr(msr, a, b)
 
 /* rdmsr with exception handling */

^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n
  2007-06-02 13:57 ` 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n Adrian Bunk
@ 2007-06-28 23:36   ` Adrian Bunk
  2007-06-29  3:21     ` Jeremy Fitzhardinge
  0 siblings, 1 reply; 105+ messages in thread
From: Adrian Bunk @ 2007-06-28 23:36 UTC (permalink / raw)
  To: Andrew Morton, Jeremy Fitzhardinge
  Cc: linux-kernel, Ian Pratt, Christian Limpach, Chris Wright, Andi Kleen

On Sat, Jun 02, 2007 at 03:57:12PM +0200, Adrian Bunk wrote:
> I'm getting the following compile error in 2.6.22-rc3-mm1 with 
> CONFIG_X86_CMPXCHG=n (with -Werror-implicit-function-declaration - 
> otherwise it would be a link error):
> 
> <--  snip  -->
> 
> ...
>   CC      drivers/xen/grant-table.o
> /home/bunk/linux/kernel-2.6/linux-2.6.22-rc3-mm1/drivers/xen/grant-table.c: In function ‘gnttab_end_foreign_access_ref’:
> /home/bunk/linux/kernel-2.6/linux-2.6.22-rc3-mm1/drivers/xen/grant-table.c:203: error: implicit declaration of function ‘sync_cmpxchg’
> make[3]: *** [drivers/xen/grant-table.o] Error 1
> 
> <--  snip  -->
> 
> Adding a dependency of XEN on X86_CMPXCHG should not be a problem and 
> not prevent any reasonable real-life usage.
> 
> But what worries me is that a seemingly architecture independent 
> driver uses a function only available in some configurations.

Still present as of 2.6.22-rc6-mm1.

cu
Adrian

-- 

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


^ permalink raw reply	[flat|nested] 105+ messages in thread

* Re: 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n
  2007-06-28 23:36   ` Adrian Bunk
@ 2007-06-29  3:21     ` Jeremy Fitzhardinge
  0 siblings, 0 replies; 105+ messages in thread
From: Jeremy Fitzhardinge @ 2007-06-29  3:21 UTC (permalink / raw)
  To: Adrian Bunk
  Cc: Andrew Morton, linux-kernel, Ian Pratt, Christian Limpach,
	Chris Wright, Andi Kleen

Adrian Bunk wrote:
>> Adding a dependency of XEN on X86_CMPXCHG should not be a problem and 
>> not prevent any reasonable real-life usage.
>>
>> But what worries me is that a seemingly architecture independent 
>> driver uses a function only available in some configurations.
>>     
>
> Still present as of 2.6.22-rc6-mm1.

Sorry, must have missed this one.   Um, yeah, I guess we have a 
dependency on cmpxchg.  I'll do a patch.

    J


^ permalink raw reply	[flat|nested] 105+ messages in thread

end of thread, other threads:[~2007-06-29  3:22 UTC | newest]

Thread overview: 105+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-05-31  6:58 2.6.22-rc3-mm1 Andrew Morton
2007-05-31 12:09 ` 2.6.22-rc3-mm1 Cornelia Huck
2007-05-31 12:15   ` 2.6.22-rc3-mm1 Matthew Wilcox
2007-05-31 12:20     ` 2.6.22-rc3-mm1 Cornelia Huck
2007-05-31 12:35       ` 2.6.22-rc3-mm1 Jeff Garzik
2007-05-31 15:11         ` 2.6.22-rc3-mm1 Cornelia Huck
2007-05-31 15:13         ` 2.6.22-rc3-mm1 Christoph Hellwig
2007-05-31 22:10           ` 2.6.22-rc3-mm1 Andrew Morton
2007-06-01  7:09             ` 2.6.22-rc3-mm1 Cornelia Huck
2007-05-31 15:29 ` 2.6.22-rc3-mm1 Michal Piotrowski
2007-05-31 19:58   ` 2.6.22-rc3-mm1 Rafael J. Wysocki
2007-05-31 21:30     ` [PATCH -mm] Freezer: migration_thread should not be freezable (was: Re: [linux-pm] Re: 2.6.22-rc3-mm1) Rafael J. Wysocki
     [not found]     ` <6bffcb0e0705311425q2e00cc69j5006d95c3f0df158@mail.gmail.com>
2007-05-31 21:34       ` 2.6.22-rc3-mm1 Rafael J. Wysocki
2007-05-31 17:53 ` 2.6.22-rc3-mm1 Michal Piotrowski
2007-05-31 18:08   ` 2.6.22-rc3-mm1 Michal Piotrowski
2007-05-31 18:31   ` 2.6.22-rc3-mm1 Andrew Morton
2007-05-31 18:41     ` 2.6.22-rc3-mm1 Christoph Lameter
2007-05-31 18:53       ` 2.6.22-rc3-mm1 Andrew Morton
2007-05-31 18:57         ` 2.6.22-rc3-mm1 Christoph Lameter
2007-05-31 20:43 ` 2.6.22-rc3-mm1 Mariusz Kozlowski
2007-05-31 21:19   ` 2.6.22-rc3-mm1 Andrew Morton
2007-06-01 20:50     ` 2.6.22-rc3-mm1 Mariusz Kozlowski
2007-06-01 21:02       ` 2.6.22-rc3-mm1 Andrew Morton
2007-06-01 21:21         ` 2.6.22-rc3-mm1 Mariusz Kozlowski
2007-06-01 23:30         ` 2.6.22-rc3-mm1 Benjamin Herrenschmidt
2007-06-02  8:40         ` 2.6.22-rc3-mm1 Segher Boessenkool
2007-05-31 22:05 ` 2.6.22-rc3-mm1 - works-for-me and a meta-question Valdis.Kletnieks
2007-05-31 22:16   ` Andrew Morton
     [not found]   ` <6bffcb0e0705311527ge774f48s8014f5108556f651@mail.gmail.com>
2007-05-31 23:21     ` andrea
2007-05-31 23:13 ` 2.6.22-rc3-mm1 - page_mkwrite() breakage Mark Fasheh
2007-06-01  1:01   ` Nick Piggin
2007-06-01  1:24     ` Mark Fasheh
2007-06-01  1:34       ` Nick Piggin
2007-06-01  1:45         ` Mark Fasheh
2007-06-01  1:53           ` Nick Piggin
2007-06-01  5:20             ` Mark Fasheh
2007-06-01 22:01               ` Mark Fasheh
2007-06-01 22:25                 ` Andrew Morton
2007-06-01 22:33                   ` Mark Fasheh
2007-06-01 22:47                     ` Andrew Morton
2007-06-01 22:53                       ` Mark Fasheh
2007-06-01  2:01 ` 2.6.22-rc3-mm1 Arnaldo Carvalho de Melo
2007-06-01  2:12   ` 2.6.22-rc3-mm1 Andrew Morton
2007-06-01  2:24     ` 2.6.22-rc3-mm1 Arnaldo Carvalho de Melo
2007-06-01  3:52 ` 2.6.22-rc3-mm1 Michael Ellerman
2007-06-01  5:55   ` 2.6.22-rc3-mm1 Eric W. Biederman
2007-06-01 16:42 ` 2.6.22-rc3-mm1: IA64 make allnoconfig broken Mel Gorman
2007-06-01 17:00   ` Andrew Morton
2007-06-01 18:50     ` Mel Gorman
2007-06-01 20:55       ` [PATCH] Fix problem with IA64 make allnoconfig Mel Gorman
2007-06-02 13:57 ` 2.6.22-rc3-mm1: Xen compile error with X86_CMPXCHG=n Adrian Bunk
2007-06-28 23:36   ` Adrian Bunk
2007-06-29  3:21     ` Jeremy Fitzhardinge
2007-06-02 17:06 ` [-mm patch] fix XEN_BLKDEV_FRONTEND Makefile entry Adrian Bunk
2007-06-02 17:14 ` 2.6.22-rc3-mm1: __attribute__((weak)) considered harmful Adrian Bunk
2007-06-04 21:22   ` Andrew Morton
2007-06-04 23:52     ` Martin Peschke
2007-06-05  3:59       ` Russell King
2007-06-02 19:09 ` [-mm patch] the ASYNC_* options shouldn't be user visible Adrian Bunk
2007-06-04 16:19   ` Williams, Dan J
2007-06-03 20:54 ` [-mm patch] make drivers/firmware/dmi-id.c:dmi_id_init() static Adrian Bunk
2007-06-08  4:38   ` Greg KH
2007-06-03 20:54 ` [-mm patch] drivers/i2c/chips/ds1682.c: make code static Adrian Bunk
2007-06-04  8:15   ` Jean Delvare
2007-06-03 20:54 ` [-mm patch] make xpad_play_effect() static Adrian Bunk
2007-06-03 20:54 ` [-mm patch] fix the tea5761 tuner support Adrian Bunk
2007-06-04 18:00 ` 2.6.22-rc3-mm1 - pppd hanging in netdev_run_todo while holding mutex Valdis.Kletnieks
2007-06-06  6:14   ` Andrew Morton
2007-06-04 22:12 ` [-mm patch] e1000: #if 0 two functions Adrian Bunk
2007-06-04 22:13 ` [-mm patch] drivers/mmc/core/core.{h,c}: cleanups Adrian Bunk
2007-06-06 18:36   ` Pierre Ossman
2007-06-05  9:11 ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:18   ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:24   ` 2.6.22-rc3-mm1 Andrew Morton
2007-06-05  9:33     ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:39       ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:42         ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:45           ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:50             ` 2.6.22-rc3-mm1 Ingo Molnar
2007-06-05  9:56               ` 2.6.22-rc3 nmi watchdog hang Ingo Molnar
2007-06-10 18:10                 ` Björn Steinbrink
2007-06-18 12:11                   ` Ingo Molnar
2007-06-18 14:31                     ` Björn Steinbrink
2007-06-25  6:18                     ` Ingo Molnar
2007-06-25  6:59                       ` Ingo Molnar
2007-06-25  8:05                         ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Ingo Molnar
2007-06-25  8:26                           ` Ingo Molnar
2007-06-25 12:45                             ` Björn Steinbrink
2007-06-25 12:49                               ` Jeremy Fitzhardinge
2007-06-25 13:06                                 ` Björn Steinbrink
2007-06-25 18:50                               ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang, take #2 Ingo Molnar
2007-06-25 12:40                           ` [patch, 2.6.22-rc6] fix nmi_watchdog=2 bootup hang Jeremy Fitzhardinge
2007-06-25 13:13                             ` Björn Steinbrink
2007-06-05 15:16 ` 2.6.22-rc3-mm1 Rusty Russell
2007-06-05 21:50 ` [-mm patch] kernel/power/disk.c: make code static Adrian Bunk
2007-06-05 22:10   ` Rafael J. Wysocki
2007-06-05 21:50 ` [-mm patch] kernel/sched{,_fair}.c: " Adrian Bunk
2007-06-06  6:54   ` Andrew Morton
2007-06-06  7:30     ` Ingo Molnar
2007-06-06 12:31       ` Adrian Bunk
2007-06-06  7:02   ` Ingo Molnar
2007-06-05 21:51 ` [-mm patch] kernel/lockdep_proc.c: make 2 functions static Adrian Bunk
2007-06-05 22:34   ` Peter Zijlstra
2007-06-05 21:51 ` [-mm patch] fs/proc/base.c: make a struct static Adrian Bunk
2007-06-06  7:32   ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).