LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* 2.6.23-rc1-mm1
@ 2007-07-25 11:03 Andrew Morton
  2007-07-25 12:25 ` 2.6.23-rc1-mm1 Cedric Le Goater
                   ` (33 more replies)
  0 siblings, 34 replies; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 11:03 UTC (permalink / raw)
  To: linux-kernel


ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/



- New git tree "git-dma": replaces git-md-accel (I think) ("Nelson, Shannon"
  <shannon.nelson@intel.com>)

- New git tree git-e1000new: a new e1000 driver (Auke Kok
  <auke-jan.h.kok@intel.com>).  Source of some controversy.



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-rc6-mm1:


 origin.patch
 git-acpi.patch
 git-alsa.patch
 git-agpgart.patch
 git-arm-master.patch
 git-audit-master.patch
 git-dma.patch
 git-drm.patch
 git-dvb.patch
 git-hwmon.patch
 git-gfs2-nmw.patch
 git-hid.patch
 git-ieee1394.patch
 git-input.patch
 git-jg-misc.patch
 git-kbuild.patch
 git-kvm.patch
 git-libata-all.patch
 git-md-accel.patch
 git-mmc.patch
 git-mtd.patch
 git-ubi.patch
 git-netdev-all.patch
 git-ixgbe.patch
 git-e1000new.patch
 git-battery.patch
 git-ocfs2.patch
 git-r8169.patch
 git-s390.patch
 git-sh.patch
 git-scsi-rc-fixes.patch
 git-scsi-target.patch
 git-unionfs.patch
 git-v9fs.patch
 git-watchdog.patch
 git-ipwireless_cs.patch
 git-kgdb.patch

 git trees

-ecryptfs-fix-write-zeros-behavior.patch
-ecryptfs-initialize-crypt_stat-in-setattr.patch
-ecryptfs-zero-out-last-page-for-llseek-write.patch
-atyfb-fix-xclk-frequency-on-apple-ibook1.patch
-eventfd-clean-compile-when-config_eventfd=n.patch
-mtrr-cyrix-fix-sections.patch
-smsc-ircc2-skip-preconfiguration-for-pnp-devices.patch
-pnp-smcf010-quirk-auto-config-device-if-bios-left-it-broken.patch
-mm-kill-validate_anon_vma-to-avoid-mapcount-bug.patch
-fix-kconfig-dependency-problems-wrt-boolean-menuconfigs.patch
-ioatdma-fix-section-mismatches.patch
-alsa-fix-ice1712-section-mismatch.patch
-saa7134-fix-thread-shutdown-handling.patch
-avoid-spurious-pollin-returns-in-signalfd.patch
-fix-section-mismatch-in-chipsfb.patch
-documentation-howto-update-urls-of-git-trees.patch
-alsa-use-__devexit_p.patch
-relay-file-read-start-pos-fixpatch.patch
-relayfs-fix-overwrites.patch
-w1_therm_read_bin-suspicious-usage-of-flush_signals.patch
-mips-jazz-correct-flags-for-timer-io-resource.patch
-add-some-pci-ids-for-xgi-chips.patch
-ext2-fix-return-of-uninitialised-variable.patch
-serial-clear-proper-mpsc-interrupt-cause-bits.patch
-introduce-fixed-sys_sync_file_range2-syscall-implement-on.patch
-slab-remove-warn_on_once-for-zero-sized-objects-for-2622-release.patch
-always-probe-the-nmi-watchdog.patch
-linux-hpet-issue-with-amd-southbridges.patch
-serial-assert-dtr-for-serial-console-devices.patch
-make-common-helpers-for-seq_files-that-work-with-list_head-s.patch
-lots-of-architectures-enable-arbitary-speed-tty-support.patch
-git-acpi-ia64-build-fix.patch
-cpuidle-menu-governor-and-hrtimer-compile-fix.patch
-cpuidle-reenable-proc-acpi-power-interface-for-the-time-being.patch
-cpuidle-fix-the-uninitialized-variable-in-sysfs-routine.patch
-cpuidle-menu-governor-change-the-early-break-condition.patch
-cpuidle-make-cpuidle-sysfs-driver-governor-switch-off-by-default.patch
-cpuidle-add-rating-to-the-governors-and-pick-the-one-with-highest-rating-by-default.patch
-cpuidle-first-round-of-documentation-updates.patch
-git-acpi-tickh-needs-hrtimerh.patch
-git-acpi-add-exports.patch
 exit-acpi-processor-module-gracefully-if-acpi-is-disabled.patch
-acpi-video-dont-export-sysfs-backlight-interface-if-query-_bcl-fail.patch
-use-menuconfig-objects-acpi.patch
-acpi-do-not-attempt-to-run-s1-standby-workarounds-while-hibernating.patch
-make-drivers-acpi-oslcosi_linux-static.patch
-drivers-acpi-processor_throttlingc-make-2-functions.patch
-drivers-cpuidle-governors-menuc-make-a-struct-static.patch
-fix-empty-macros-in-acpi.patch
-remove-leftover-documentation-of-acpi_generic_hotkey.patch
-cifs-use-simple_prepare_write-to-zero-page-data.patch
-cifs-zero_user_page-conversion.patch
-cifs-use-simple_prepare_write-to-zero-page-data.patch
-git-cpufreq-fix.patch
-bugfix-cpufreq-in-combination-with-performance-governor.patch
-bugfix-cpufreq-in-combination-with-performance-governor-fix.patch
-agk-dm-dm-bio_list-macro-renaming.patch
-agk-dm-dm-bio_list-prefetch-removal.patch
-agk-dm-dm-use-kmem_cache-macro.patch
-agk-dm-dm-delay-cleanup.patch
-agk-dm-dm-remove-duplicate-module-name-from-error-msgs.patch
-agk-dm-dm-use-singlethread-workqueues.patch
-agk-dm-dm-merge-max_hw_sector.patch
-agk-dm-dm-raid1-fix-status.patch
-agk-dm-dm-io-fix-panic-on-large-request.patch
-agk-dm-dm-snapshot-fix-invalidation-deadlock.patch
-agk-dm-dm-snapshot-permit-invalid-activation.patch
-agk-dm-dm-raid1-clear-region-outside-spinlock.patch
-agk-dm-dm-add-ratelimit-logging-macros.patch
-agk-dm-dm-mpath-rdac.patch
-powerpc-ps3-use-__maybe_unused.patch
-powerpc-promc-remove-undef-printk.patch
-8xx-mpc885ads-pcmcia-support.patch
-dts-kill-hardcoded-phandles.patch
-ppc-remove-dead-code-for-preventing-pread-and-pwrite-calls.patch
-viotape-use-designated-initializers-for-fops-member.patch
-make-drivers-char-hvc_consoleckhvcd-static.patch
-powerpc-enable-arbitary-speed-tty-ioctls-and-split.patch
-powerpc-tlb_32c-build-fix.patch
-gregkh-driver-sysfs-rules.patch
-gregkh-driver-debugfs-add-rename-for-debugfs-files.patch
-gregkh-driver-dmi-based-module-autoloading.patch
-gregkh-driver-driver-core-add-missing-kset-uevent.patch
-gregkh-driver-sysdev-use-mutex-instead-of-semaphore.patch
-gregkh-driver-power-management-use-mutexes-instead-of-semaphores.patch
-gregkh-driver-pm-remove-pm_parent-from-struct-dev_pm_info.patch
-gregkh-driver-pm-remove-saved_state-from-struct-dev_pm_info.patch
-gregkh-driver-pm-simplify-suspend_device.patch
-gregkh-driver-driver-core-include-linux-mutexh-from-attribute_containerc.patch
-gregkh-driver-driver-core-properly-get-driver-in-device_release_driver.patch
-gregkh-driver-driver-core-fix-kernel-doc-of-device_release_driver.patch
-gregkh-driver-driver-core-fix-devres_release_all-return-value.patch
-gregkh-driver-pm-remove-prev_state-from-struct-dev_pm_info.patch
-gregkh-driver-pm-remove-power_stateevent-checks-from-suspend-core-code.patch
-gregkh-driver-pm-do-not-check-parent-state-in-suspend-and-resume-core-code.patch
-gregkh-driver-howto-translated-into-japanese.patch
-gregkh-driver-add-japanese-translated-stable_api_nonsensetxt.patch
-gregkh-driver-howto-add-chinese-translation-of-documentation-howto.patch
-gregkh-driver-chinese-translation-of-documentation-stable_api_nonsensetxt.patch
-gregkh-driver-uio.patch
-gregkh-driver-uio-documentation.patch
-gregkh-driver-uio-hilscher-cif-card-driver.patch
-gregkh-driver-idr-fix-obscure-bug-in-allocation-path.patch
-gregkh-driver-idr-separate-out-idr_mark_full.patch
-gregkh-driver-ida-implement-idr-based-id-allocator.patch
-gregkh-driver-sysfs-move-release_sysfs_dirent-to-dirc.patch
-gregkh-driver-sysfs-allocate-inode-number-using-ida.patch
-gregkh-driver-sysfs-make-sysfs_put-ignore-null-sd.patch
-gregkh-driver-sysfs-fix-error-handling-in-binattr-write.patch
-gregkh-driver-sysfs-flatten-cleanup-paths-in-sysfs_add_link-and-create_dir.patch
-gregkh-driver-sysfs-flatten-and-fix-sysfs_rename_dir-error-handling.patch
-gregkh-driver-sysfs-consolidate-sysfs_dirent-creation-functions.patch
-gregkh-driver-sysfs-add-sysfs_dirent-s_parent.patch
-gregkh-driver-sysfs-add-sysfs_dirent-s_name.patch
-gregkh-driver-sysfs-make-sysfs_dirent-s_element-a-union.patch
-gregkh-driver-sysfs-implement-kobj_sysfs_assoc_lock.patch
-gregkh-driver-sysfs-reimplement-symlink-using-sysfs_dirent-tree.patch
-gregkh-driver-sysfs-implement-bin_buffer.patch
-gregkh-driver-sysfs-implement-sysfs_dirent-active-reference-and-immediate-disconnect.patch
-gregkh-driver-sysfs-kill-attribute-file-orphaning.patch
-gregkh-driver-sysfs-separate-out-sysfs_attach_dentry.patch
-gregkh-driver-sysfs-reimplement-sysfs_drop_dentry.patch
-gregkh-driver-sysfs-kill-unnecessary-attribute-owner.patch
-gregkh-driver-driver-core-make-devt_attr-and-uevent_attr-static.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
-gregkh-driver-sysfs-fix-oops-in-sysfs_drop_dentry-on-x86_64.patch
-gregkh-driver-sysfs-make-sysfs_drop_dentry-access-inodes-using-ilookup.patch
-gregkh-driver-sysfs-rename-sysfs_dirent-s_type-to-s_flags-and-make-room-for-flags.patch
-gregkh-driver-sysfs-implement-sysfs_flag_removed-flag.patch
-gregkh-driver-sysfs-implement-sysfs_find_dirent-and-sysfs_get_dirent.patch
-gregkh-driver-sysfs-make-kobj-point-to-sysfs_dirent-instead-of-dentry.patch
-gregkh-driver-sysfs-consolidate-sysfs-spinlocks.patch
-gregkh-driver-sysfs-use-sysfs_mutex-to-protect-the-sysfs_dirent-tree.patch
-gregkh-driver-sysfs-restructure-add-remove-paths-and-fix-inode-update.patch
-gregkh-driver-sysfs-move-sysfs_drop_dentry-to-dirc-and-make-it-static.patch
-gregkh-driver-sysfs-implement-sysfs_get_dentry.patch
-gregkh-driver-sysfs-make-directory-dentries-and-inodes-reclaimable.patch
-gregkh-driver-nozomi.patch
-fix-gregkh-driver-nozomi.patch
-driver-core-check-return-code-of-sysfs_create_link.patch
-driver-core-check-return-code-of-sysfs_create_link-fix.patch
-driver-core-coding-style-cleanup.patch
-pm-do-not-use-saved_state-from-struct-dev_pm_info-on-arm.patch
-dvb-saa7134-dependency-fix.patch
-jdelvare-i2c-i2c-kerneldoc.patch
-jdelvare-i2c-i2c-rpx-will-be-removed.patch
-jdelvare-i2c-i2c-fix-sparse-warning-in-i2c-h.patch
-jdelvare-i2c-scx200_acb-use-mutex-instead-of-semaphore.patch
-jdelvare-i2c-i2c-delete-outdated-x1205-doc.patch
-jdelvare-i2c-i2c-deprecate-rtc-drivers.patch
-jdelvare-i2c-i2c_smbus_read_i2c_block_data-fixed-prototype.patch
-jdelvare-i2c-i2c-ds1628-new-driver.patch
-jdelvare-i2c-i2c-piix4-add-ati-sb700-support.patch
-jdelvare-i2c-i2c-mv64xxx-numbered-adapter.patch
-jdelvare-i2c-i2c-mpc-numbered-adapter.patch
-jdelvare-i2c-i2c-nforce2-add-smbus-block-transactions.patch
-jdelvare-i2c-video-matroxfb-crtc2-header-fix.patch
-jdelvare-i2c-i2c-sis5595-resolve-resource-conflict.patch
-jdelvare-i2c-i2c-iop3xx-numbered-adapter.patch
-jdelvare-i2c-i2c-gpio-add-support-for-new-style-clients.patch
-jdelvare-i2c-i2c-gpio-make-some-internal-functions-static.patch
-jdelvare-i2c-i2c-pxa-numbered-adapter.patch
-jdelvare-i2c-i2c-tsl2550-support.patch
-jdelvare-i2c-i2c-i801-cleanups.patch
-jdelvare-i2c-i2c-i801-use-block-buffer.patch
-jdelvare-i2c-i2c-taos-evm-new-driver.patch
-jdelvare-i2c-i2c-tsl2550-faster-init.patch
-applesmc-switch-to-using-input-polldev.patch
-ams-switch-to-using-input-polldev.patch
-git-gfs2-nmw-build-fix.patch
-ia64-arbitary-speed-tty-ioctl-support.patch
-use-menuconfig-objects-ii-infiniband.patch
-make-input-layer-use-seq_list_xxx-helpers.patch
-touchscreen-fujitsu-touchscreen-driver.patch
-joydevc-automatic-re-calibration.patch
-input-delete-useless-reference-to-dead-module_parm-macro.patch
-serio_raw_read-warning-fix.patch
-tsdev-fix-broken-usecto-millisecs-conversion.patch
-use-posix-bre-in-headers-install-target.patch
-modpost-white-list-pattern-adjustment.patch
-strip-config_-automatically-in-kernel-configuration-search.patch
-led_colour_show-warning-fix.patch
-libata-config_pm=n-compile-fix.patch
-libata-core-convert-to-use-cancel_rearming_delayed_work.patch
-libata-add-hts541616j9sa00-to-ncq-blacklist.patch
-libata-add-ich8m-pciids-to-ata_piix.patch
-sata_promise-cleanups.patch
-sata_promise-sata-hotplug-support.patch
-libata-add-irq_flags-to-struct-pata_platform_info.patch
-ide-ide-never-called-printk-statement-in-ide-taskfilec-wait_drive_not_busy.patch
-ide-ide-fix-a-theoretical-oops-case.patch
-ide-serverworks-tune-csb6.patch
-ide-ide-make-void-and-rename-ide_dma_lostirq-method.patch
-ide-ide-make-void-and-rename-ide_dma_timeout-method.patch
-ide-ide-use-mutex-instead-of-ide_cfg_sem-semaphore.patch
-ide-hpt366-simplify-ultradma-filtering-take-3.patch
-ide-cmd64x-init-code-cleanup.patch
-ide-aec62xx-rework-init_setup_aec6x80.patch
-ide-aec62xx-remove-init_dma-method-take-2.patch
-ide-ide-use-mutex-instead-of-ide_setting_sem-semaphore.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-idecd-replace-c-code-with-call-to-array_size-macro.patch
-ide-ide-remove-references-to-the-non-existent-config_scsi_eata_dma-variable.patch
-ide-ide-remove-content-related-to-dead-config_blk_dev_mac_mediabay-config-variable.patch
-ide-hd-array-size-calculation-using-sizeof-replaced-with-array_size.patch
-ide-ide-pre-eide-swdma-support-fix.patch
-ide-ide-convert-ide-find-best-mode-users-to-use-ide-max-dma-mode.patch
-ide-ide-add-short-cable-support.patch
-ide-piix-handle-short-cables.patch
-ide-alim15x3-handle-short-cables.patch
-ide-sis5513-handle-short-cables.patch
-ide-via82cxxx-handle-short-cables.patch
-ide-unexport-ide_set_dma.patch
-ide-ide-stop-mapping-roms.patch
-ide_scan_pcibus-cehck-__pci_register_driver-return-value.patch
-mips-make-resources-for-ds1742-static-__initdata.patch
-mmc-at91_mci-typo.patch
-nommu-make-it-possible-for-romfs-to-use-mtd-devices.patch
-romfs-printk-format-warnings.patch
-drivers-mtd-maps-nettelc-possible-cleanups.patch
-use-mutex-instead-of-semaphore-in-the-mtd-st-m25pxx-driver.patch
-use-mutex-instead-of-semaphore-in-the-mtd-dataflash-driver.patch
-mtd-use-null-for-pointer.patch
-cafe_nandc-the-olpc-laptop-is-not-available-for-100.patch
-blackfin-on-chip-ethernet-mac-controller-driver.patch
-atari_pamsnetc-old-declaration-ritchie-style-fix.patch
-sundance-phy-address-form-0-only-for-device-id-0x0200-fix.patch
-use-is_power_of_2-in-cxgb3-cxgb3_mainc.patch
-use-is_power_of_2-in-myri10ge-myri10gec.patch
-#extract-chip-specific-code-out-of-lasi_82596c.patch: busted
-extract-chip-specific-code-out-of-lasi_82596c.patch
-extract-chip-specific-code-out-of-lasi_82596c-update.patch
-ethernet-driver-for-eisa-only-sni-rm200-rm400-machines.patch
-ethernet-driver-for-eisa-only-sni-rm200-rm400-machines-update.patch
-ehea-whitespace-cleanup.patch
-make-atm-driver-use-seq_list_xxx-helpers.patch
-make-some-network-related-proc-files-use-seq_list_xxx.patch
-make-some-netfilter-related-proc-files-use-seq_list_xxx.patch
-wrong-timeout-value-in-sk_wait_data-v2-fix.patch
-netpoll-tx-lock-deadlock-fix.patch
-tun-tap-allow-group-ownership-of-tun-tap-devices.patch
-git-battery-vs-git-acpi.patch
-bluetooth-remove-the-redundant-non-seekable-llseek-method.patch
-git-ioat-vs-git-md-accel.patch
-ioat-warning-fix.patch
-fix-i-oat-for-kexec.patch
-auth_gss-unregister-gss_domain-when-unloading-module.patch
-nfs-refactor-ip-address-sanity-checks-in-nfs-client.patch
-git-selinux-disable-mmap_min_addr-by-default.patch
-gregkh-pci-pci-remove-cpqphp-maintainer.patch
-gregkh-pci-pci-fix-the-error-message-to-point-to-the-proper-person.patch
-gregkh-pci-pci-syscallc-switch-to-refcounting-api.patch
-gregkh-pci-pci-add-pci-x-pci-express-read-control-interfaces.patch
-gregkh-pci-pci-use-a-weak-symbol-for-the-empty-version-of-pcibios_add_platform_entries.patch
-gregkh-pci-pci-make-pcibios_add_platform_entries-return-errors.patch
-gregkh-pci-pci-pci_find_slot-mark-deprecated.patch
-gregkh-pci-pciehp-fix-possible-race-condition-in-writing-slot.patch
-gregkh-pci-pciehp-wait-for-1-second-after-power-off-slot.patch
-gregkh-pci-pci-fix-aer-driver-error-information.patch
-gregkh-pci-pci-aer-fix-stub-return-values.patch
-gregkh-pci-pci-aer-add-pci_cleanup_aer_correct_aer_status.patch
-gregkh-pci-pci-unexport-pci_proc_attach_device.patch
-gregkh-pci-pci-remove-useless-pci-driver-method.patch
-gregkh-pci-pci-read-revision-id-by-default.patch
-gregkh-pci-pci-atm-lanai-change-vendor-to-device.patch
-gregkh-pci-pci-i386-traps-change-vendor-to-device.patch
-gregkh-pci-pci-pci_ids-reorder-some-entries.patch
-gregkh-pci-pci-pci_ids-add-atheros-and-3com_2-vendors.patch
-gregkh-pci-pci-pci_ids-remove-double-or-more-empty-lines.patch
-fix-gregkh-pci-pci-syscallc-switch-to-refcounting-api.patch
-pci-x-pci-express-read-control-interfaces-fix.patch
-remove-pci_dac_dma_-apis.patch
-round_up-macro-cleanup-in-drivers-pci.patch
-pcie-remove-spin_lock_unlocked.patch
-add-pci_try_set_mwi.patch
-cpci_hotplug-convert-to-use-the-kthread-api.patch
-pci_set_power_state-check-for-pm-capabilities-earlier.patch
-revert-acpi-change-for-scsi.patch
-git-scsi-misc.patch
-restore-acpi-change-for-scsi.patch
-git-scsi-misc-vs-greg-sysfs-stuff.patch
-scsi-dont-build-scsi_dma_mapunmap-for-has_dma.patch
-scsi-dont-build-scsi_dma_mapunmap-for-has_dma-fix.patch
-drivers-scsi-small-cleanups.patch
-sym53c8xx_2-claims-cpqarray-device.patch
-drivers-scsi-wd33c93c-cleanups.patch
-make-seagate_st0x_detect-static.patch
-drivers-message-i2o-devicec-remove-redundant-gfp_atomic-from-kmalloc.patch
-drivers-scsi-aic7xxx_oldc-remove-redundant-gfp_atomic-from-kmalloc.patch
-use-menuconfig-objects-ii-scsi.patch
-use-menuconfig-objects-ii-scsi-fix.patch
-ppa-coding-police-and-printk-levels.patch
-remove-the-dead-cyberstormiii_scsi-option.patch
-use-mutex-instead-of-binary-semaphore-in-cdu-31a-driver.patch
-use-mutex-instead-of-semaphore-in-sbpcd-driver.patch
-add-support-for-xilinx-systemace-compactflash-interface.patch
-use-menuconfig-objects-oldcd.patch
-use-menuconfig-objects-block-layer.patch
-use-menuconfig-objects-ib-block.patch
-use-menuconfig-objects-ii-block-devices.patch
-use-menuconfig-objects-ii-block-devices-fix.patch
-block-device-elevator-use-list_for_each_entry-instead-of-list_for_each.patch
-update-documentation-block-barriertxt.patch
-block-drop-unnecessary-bvec-rewinding-from-flush_dry_bio_endio.patch
-cdrom_sysctl_info-fix.patch
-gregkh-usb-usb-suspend-support-for-usb-serial.patch
-gregkh-usb-usb-ehci-cpufreq-fix.patch
-gregkh-usb-usb-ehci-support-for-big-endian-descriptors.patch
-gregkh-usb-usb-cxacru-cleanup-sysfs-attribute-code.patch
-gregkh-usb-usb-serial-keyspan-add-support-for-usa-49wg-usa-28xg.patch
-gregkh-usb-usb-m66592-udc-peripheral-controller-driver-for-m66592.patch
-gregkh-usb-usb-m66592-udc-fix-use-old-interrupt-flags.patch
-gregkh-usb-usb-r8a66597-hcd-host-controller-driver-for-r8a66597.patch
-gregkh-usb-usb-r8a66597-hcd-fix-null-access.patch
-gregkh-usb-usb-interface-pm-state.patch
-gregkh-usb-usb-implement-pm-freeze-and-prethaw.patch
-gregkh-usb-usb-move-bus_suspend-and-bus_resume-method-calls.patch
-gregkh-usb-usb-don-t-unsuspend-for-a-new-connection.patch
-gregkh-usb-usb-remove-references-to-devpowerpower_state.patch
-gregkh-usb-usb-remove-locktree-routine-from-the-hub-driver.patch
-gregkh-usb-usb-make-hub-driver-s-release-more-robust.patch
-gregkh-usb-usb-use-menuconfig-objects.patch
-gregkh-usb-usb-ehci-refcounts-work-on-ppc7448.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-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
-gregkh-usb-usb-disable-file_storage-usb_config_att_wakeup.patch
-gregkh-usb-usb-fix-nec-ohci-chip-silicon-bug.patch
-gregkh-usb-usb-remove-__usb_port_suspend.patch
-gregkh-usb-usb-separate-root-and-non-root-suspend-resume.patch
-gregkh-usb-usb-remove-excess-code-from-hubc.patch
-gregkh-usb-usb-add-reset_resume-method.patch
-gregkh-usb-usb-unify-reset_resume-and-normal-resume.patch
-gregkh-usb-usb-add-power-persist-device-attribute.patch
-gregkh-usb-usb-fsl_usb2_udc-replace-deprecated-irq-flag.patch
-gregkh-usb-usb-fsl_usb2_udc-get-max-ep-number-from-dccparams-register.patch
-gregkh-usb-usb-option-fix-usage-of-urb-status-abuse.patch
-gregkh-usb-usb-ps3-usb-system-bus-rework.patch
-gregkh-usb-usb-gadget-driver-for-samsung-s3c2410-arm-soc.patch
-gregkh-usb-usb-usb-storage-use-kthread_stop-for-the-control-thread.patch
-gregkh-usb-usb-usb-host-side-can-be-configured-given-pcmcia.patch
-gregkh-usb-ehci-hub-improved-over-current-recovery.patch
-gregkh-usb-usb-io_ti-sleep-with-spinlock-held-detected-by-automatic-tool.patch
-gregkh-usb-usb-fix-usb_serial_put-synchronization.patch
-gregkh-usb-usb-handle-bogus-low-speed-bulk-endpoints.patch
-gregkh-usb-usb-free-dma-mappings-if-enqueue-fails.patch
-gregkh-usb-usb-serial-license-fix.patch
-gregkh-usb-usb-aircable-status.patch
-gregkh-usb-usb-airprime-status.patch
-gregkh-usb-usb-belkin_sa-status.patch
-gregkh-usb-usb-cyberjack-status.patch
-gregkh-usb-usb-cypress_m8-status.patch
-gregkh-usb-usb-digi_acceleport-status.patch
-gregkh-usb-usb-empeg-status.patch
-gregkh-usb-usb-ftdi_sio-status.patch
-gregkh-usb-usb-garmin_gps-status.patch
-gregkh-usb-usb-generic-status.patch
-gregkh-usb-usb-io_edgeport-status.patch
-gregkh-usb-usb-io_ti-status.patch
-gregkh-usb-usb-ipaq-status.patch
-gregkh-usb-usb-ipw-status.patch
-gregkh-usb-usb-ir-usb-status.patch
-gregkh-usb-usb-keyspan-status.patch
-gregkh-usb-usb-keyspan_pda-status.patch
-gregkh-usb-usb-kl5kusb105-status.patch
-gregkh-usb-usb-kobil_sct-status.patch
-gregkh-usb-usb-mct_u232-status.patch
-gregkh-usb-usb-mos7720-status.patch
-gregkh-usb-usb-mos7840-status.patch
-gregkh-usb-usb-navman-status.patch
-gregkh-usb-usb-omninet-status.patch
-gregkh-usb-usb-option-status.patch
-gregkh-usb-usb-oti6858-status.patch
-gregkh-usb-usb-pl2303-status.patch
-gregkh-usb-usb-safe_serial-status.patch
-gregkh-usb-usb-sierra-status.patch
-gregkh-usb-usb-ti_usb_3410_5052-status.patch
-gregkh-usb-usb-visor-status.patch
-gregkh-usb-usb-whiteheat-status.patch
-gregkh-usb-usb-sierra-fix-status-usage.patch
-gregkh-usb-usb-sierra-cleanup-urb-startup.patch
-gregkh-usb-usb-serial-ark3116c-mixed-fixups.patch
-gregkh-usb-usb-serial-belkin_sa-various-needed-fixes.patch
-gregkh-usb-usb-serial-ir_usb-clean-up-the-worst-of-it-remove-exciting-crash-on-open-feature.patch
-gregkh-usb-usb-usb-skeleton-use-anchors-in-disconnect-handling.patch
-gregkh-usb-usb-usb-skeleton-use-anchors-in-suspend-resume-handling.patch
-gregkh-usb-usb-usb-skeleton-use-anchors-in-pre-post-reset.patch
-gregkh-usb-usb-fix-up-full-speed-binterval-values-in-high-speed-interrupt-descriptor.patch
-gregkh-usb-usb-add-urb_free_buffer-flag-and-the-logic-behind-it.patch
-gregkh-usb-usb-gadget-rename-husb2dev-usba.patch
-gregkh-usb-usb-autosuspend-for-usblcd.patch
-gregkh-usb-usb-fsl_usb2_udc-fix-bug-for-portsc-bit-masking.patch
-gregkh-usb-usb-pete-s-taking-over-usblp.patch
-gregkh-usb-usb-usblp-add-dynamic-urbs-fix-races.patch
-gregkh-usb-usb-remove-usages-of-dev-powerpower_state.patch
-gregkh-usb-usb-don-t-resume-root-hub-if-the-controller-is-suspended.patch
-gregkh-usb-usb-fix-off-by-1-error-in-the-scatter-gather-library.patch
-gregkh-usb-usb-mos7720-developer-change.patch
-gregkh-usb-usb-add-iad-support-to-usbfs-and-sysfs.patch
-gregkh-usb-usb-support-blackberry-pearl-with-berry_charge.patch
-gregkh-usb-don-t-autosuspend-blackberry-devices.patch
-gregkh-usb-usb-add-printer-gadget-driver.patch
-fix-gregkh-usb-usb-ehci-cpufreq-fix.patch
-fix-gregkh-usb-usb-use-menuconfig-objects.patch
-make-usb-autosuspend-timer-1-sec-jiffy-aligned.patch
-drivers-block-ubc-use-list_for_each_entry.patch
-use-list_for_each_entry-for-iteration-in-prism-54-driver.patch
-x86_64-mm-bug-in-i386-mtrr-initialization.patch
-x86_64-mm-cpa-cache-flush.patch
-x86_64-mm-stack-align.patch
-x86_64-mm-asm-ptrace_h-needs-linux-compiler_h.patch
-x86_64-mm-apic-id.patch
-x86_64-mm-irq-migrate-report.patch
-x86_64-mm-define-and-use-local_distance-and-remote_distance.patch
-x86_64-mm-acpi-various-cleanups.patch
-x86_64-mm-fam10-string.patch
-x86_64-mm-gcc43-memcpy.patch
-x86_64-mm-gcc-hot-cold.patch
-x86_64-mm-remove-size-of-apicid_to_node-from-header.patch
-x86_64-mm-unwinder.patch
-x86_64-mm-vdso.patch
-x86_64-mm-tsc-unstable.patch
-x86_64-mm-on-cpu-single.patch
-x86_64-mm-sched-clock-share.patch
-x86_64-mm-sched-clock64.patch
-x86_64-mm-paravirt-add-a-sched_clock-paravirt_op.patch
-x86_64-mm-verify-cpu-rename.patch
-x86_64-mm-xencleanup-use-elfnote_h-to-generate-vsyscall-notes.patch
-x86_64-mm-xencleanup-add-kstrndup.patch
-x86_64-mm-xencleanup-add-argv_split.patch
-x86_64-mm-xencleanup-split-usermodehelper-setup-from-execution.patch
-x86_64-mm-add-common-orderly_poweroff.patch
-x86_64-mm-xencleanup-tidy-up-usermode-helper-waiting-a-bit.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-allocate-and-free-vmalloc-areas.patch
-x86_64-mm-xen-add-nosegneg-capability-to-the-vsyscall-page-notes.patch
-x86_64-mm-xen-add-xen-interface-header-files.patch
-x86_64-mm-xen-core-xen-implementation.patch
-x86_64-mm-xen-xen-virtual-mmu.patch
-x86_64-mm-xen-xen-event-channels.patch
-x86_64-mm-xen-xen-time-implementation.patch
-x86_64-mm-xen-xen-configuration.patch
-x86_64-mm-xen-add-pinned-page-flag.patch
-x86_64-mm-xen-complete-pagetable-pinning-for-xen.patch
-x86_64-mm-xen-ignore-rw-mapping-of-ro-pages-in-pagetable_init.patch
-x86_64-mm-xen-account-for-time-stolen-by-xen.patch
-x86_64-mm-xen-implement-xen_sched_clock.patch
-x86_64-mm-xen-xen-smp-guest-support.patch
-x86_64-mm-xen-add-support-for-preemption.patch
-x86_64-mm-xen-lazy-mmu-operations.patch
-x86_64-mm-xen-hack-to-prevent-bad-segment-register-reload.patch
-x86_64-mm-xen-use-the-hvc-console-infrastructure-for-xen-console.patch
-x86_64-mm-xen-add-xen-grant-table-support.patch
-x86_64-mm-xen-add-the-xenbus-sysfs-and-virtual-device-hotplug-driver.patch
-x86_64-mm-xen-add-xen-virtual-block-device-driver.patch
-x86_64-mm-xen-add-the-xen-virtual-network-device-driver.patch
-x86_64-mm-xen-xen-machine-operations.patch
-x86_64-mm-xen-handle-external-requests-for-shutdown-reboot-and-sysrq.patch
-x86_64-mm-xen-place-vcpu_info-structure-into-per-cpu-memory-if-possible.patch
-x86_64-mm-xen-attempt-to-patch-inline-versions-of-common-operations.patch
-x86_64-mm-paravirt-helper-to-disable-all-io-space.patch
-x86_64-mm-xen-use-iret-directly-where-possible.patch
-x86_64-mm-xen-xen_start_kernel-is-__init-so-startup_xen-should-be-too.patch
-x86_64-mm-xen-disable-all-non-virtual-devices.patch
-x86_64-mm-fam10-l3cache.patch
-x86_64-mm-use-null-for-pointer.patch
-x86_64-mm-remove-extra-extern-declaring-dmi_ioremap.patch
-x86_64-mm-smp-call-no-bh.patch
-revert-x86_64-mm-verify-cpu-rename.patch
-add-kstrndup-fix.patch
-xen-build-fix.patch
-fix-x86_64-numa-fake-apicid_to_node-mapping-for-fake-numa-2.patch
-fix-x86_64-mm-xen-xen-smp-guest-support.patch
-more-fix-x86_64-mm-xen-xen-smp-guest-support.patch
-fix-x86_64-mm-sched-clock-share.patch
-fix-x86_64-mm-xen-add-xen-virtual-block-device-driver.patch
-fix-x86_64-mm-add-common-orderly_poweroff.patch
-tidy-up-usermode-helper-waiting-a-bit-fix.patch
-update-x86_64-mm-xen-use-iret-directly-where-possible.patch
-i386-add-support-for-picopower-irq-router.patch
-make-arch-i386-kernel-setupcremapped_pgdat_init-static.patch
-arch-i386-kernel-i8253c-should-include-asm-timerh.patch
-make-arch-i386-kernel-io_apicctimer_irq_works-static-again.patch
-quicklist-support-for-x86_64.patch
-x86_64-extract-helper-function-from-e820_register_active_regions.patch
-x86_64-fix-e820_hole_size-based-on-address-ranges.patch
-x86_64-acpi-disable-srat-when-numa-emulation-succeeds.patch
-x86_64-acpi-disable-srat-when-numa-emulation-succeeds-fix.patch
-x86_64-slit-fake-pxm-to-node-mapping-for-fake-numa-2.patch
-x86_64-numa-fake-apicid_to_node-mapping-for-fake-numa-2.patch
-x86-use-elfnoteh-to-generate-vsyscall-notes-fix.patch
-mmconfig-x86_64-i386-insert-unclaimed-mmconfig-resources.patch
-x86_64-fix-smp_call_function_single-return-value.patch
-x86_64-o_excl-on-dev-mcelog.patch
-x86_64-support-poll-on-dev-mcelog.patch
-x86_64-mcelog-tolerant-level-cleanup.patch
-i386-fix-machine-rebooting.patch
-x86-fix-section-mismatch-warnings-in-mtrr.patch
-x86_64-ratelimit-segfault-reporting-rate.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
-round_jiffies-for-i386-and-x86-64-non-critical-corrected-mce-polling.patch
-pci-disable-decode-of-io-memory-during-bar-sizing.patch
-mmconfig-validate-against-acpi-motherboard-resources.patch
-mmconfig-validate-against-acpi-motherboard-resources-fix.patch
-mmconfig-validate-against-acpi-motherboard-resources-fix-2.patch
-mmconfig-validate-against-acpi-motherboard-resources-fix-3.patch
-mmconfig-validate-against-acpi-motherboard-resources-fix-2-3.patch
-x86_64-irq-check-remote-irr-bit-before-migrating-level-triggered-irq-v3.patch
-i386-remove-support-for-the-rise-cpu.patch
-x86-64-calgary-generalize-calgary_increase_split_completion_timeout.patch
-x86-64-calgary-update-copyright-notice.patch
-x86-64-calgary-introduce-handle_quirks-for-various-chipset-quirks.patch
-x86-64-calgary-introduce-chipset-specific-ops.patch
-x86-64-calgary-introduce-chipset-specific-ops-fix.patch
-x86-64-calgary-abstract-how-we-find-the-iommu_table-for-a-device.patch
-x86-64-calgary-introduce-calioc2-support.patch
-x86-64-calgary-add-chip_ops-and-a-quirk-function-for-calioc2.patch
-x86-64-calgary-add-chip_ops-and-a-quirk-function-for-calioc2-fix.patch
-x86-64-calgary-implement-calioc2-tce-cache-flush-sequence.patch
-x86-64-calgary-make-dump_error_regs-a-chip-op.patch
-x86-64-calgary-grab-plssr-too-when-a-dma-error-occurs.patch
-x86-64-calgary-reserve-tces-with-the-same-address-as-mem-regions.patch
-x86-64-calgary-reserve-tces-with-the-same-address-as-mem-regions-fix.patch
-x86-64-calgary-cleanup-of-unneeded-macros.patch
-x86-64-calgary-tabify-and-trim-trailing-whitespace.patch
-x86-64-calgary-only-reserve-the-first-1mb-of-io-space-for-calioc2.patch
-x86-64-calgary-tidy-up-debug-printks.patch
-i386-make-arch-i386-mm-pgtablecpgd_cdtor-static.patch
-i386-fix-section-mismatch-warning-in-intel_cacheinfo.patch
-i386-do-not-restore-reserved-memory-after-hibernation.patch
-i386-do-not-restore-reserved-memory-after-hibernation-fix.patch
-paravirt-helper-to-disable-all-io-space-fix.patch
-paravirt-helper-to-disable-all-io-space-fix-2.patch
-paravirt-helper-to-disable-all-io-space-fix-3.patch
-dmi_match-patch-in-rebootc-for-sff-dell-optiplex-745-fixes-hang.patch
-i386-hpet-check-if-the-counter-works.patch
-i386-trim-memory-not-covered-by-wb-mtrrs.patch
-i386-trim-memory-not-covered-by-wb-mtrrs-fix.patch
-kprobes-x86_64-fix-for-mark-ro-data.patch
-kprobes-i386-fix-for-mark-ro-data.patch
-divorce-config_x86_pae-from-config_highmem64g.patch
-remove-unneeded-test-of-task-in-dump_trace.patch
-i386-move-the-kernel-to-16mb-for-numa-q.patch
-i386-show-unhandled-signals.patch
-i386-show-unhandled-signals-fix.patch
-i386-minor-nx-handling-adjustment.patch
-i386-minor-nx-handling-adjustment-fix.patch
-x86-smp-alt-once-option-is-only-useful-with-hotplug_cpu.patch
-x86-64-remove-unused-variable-maxcpus.patch
-move-functions-declarations-to-header-file.patch
-x86_64-during-vm-oom-condition.patch
-i386-during-vm-oom-condition.patch
-x86-64-disable-the-gart-in-shutdown.patch
-x86_84-move-iommu-declaration-from-proto-to-iommuh.patch
-x86_84-move-iommu-declaration-from-proto-to-iommuh-fix.patch
-i386-uaccessh-replace-hard-coded-constant-with-appropriate-macro-from-kernelh.patch
-i386-add-cpu_relax-to-cmos_lock.patch
-i386-add-cpu_relax-to-cmos_lock-fix.patch
-x86_64-flush_tlb_kernel_range-warning-fix.patch
-x86_64-add-ioapic-nmi-support.patch
-x86_64-add-ioapic-nmi-support-fix.patch
-x86_64-add-ioapic-nmi-support-fix-2.patch
-x86_64-change-_map_single-to-static-in-pci_gartc-etc.patch
-x86_64-geode-hw-random-number-generator-depend-on-x86_3.patch
-reserve-the-right-performance-counter-for-the-intel-perfmon-nmi-watchdog.patch
-fix-xfs_ioc_fsgeometry_v1-in-compat-mode.patch
-fix-xfs_ioc__to_handle-and-xfs_ioc_openreadlink_by_handle-in-compat-mode.patch
-fix-xfs_ioc_fsbulkstat_single-and-xfs_ioc_fsinumbers-in-compat-mode.patch
-xfs-warning-fix.patch
-kgdb-warning-fix.patch
-kgdb-kconfig-fix.patch
-kgdb-use-new-style-interrupt-flags.patch
-kgdb-section-fix.patch
-kgdb_skipexception-warning-fix.patch
-kgdb-ia64-fixes.patch
-kgdb-bust-on-ia64.patch
-irda-fix-printk-format.patch
-netconsole-fix-soft-lockup-when-removing-module.patch
-gen_estimator-fix-locking-and-timer-related-bugs.patch
-console-more-buf-for-index-parsing.patch
-console-console-handover-to-preferred-console.patch
-x86-initial-fixmap-support.patch
-serial-convert-early_uart-to-earlycon-for-8250.patch
-serial-convert-early_uart-to-earlycon-for-8250-fix.patch
-serial-convert-early_uart-to-earlycon-for-8250-ia64-fix.patch
-serial-convert-early_uart-to-earlycon-for-8250-fix-3-alias.patch
-change-zonelist-order-zonelist-order-selection-logic.patch
-change-zonelist-order-zonelist-order-selection-logic-add-check_highest_zone-to-build_zonelists_in_zone_order.patch
-change-zonelist-order-v6-zonelist-fix.patch
-change-zonelist-order-v6-zonelist-fix-2.patch
-change-zonelist-order-auto-configuration.patch
-change-zonelist-order-documentaion.patch
-hugetlb-remove-unnecessary-nid-initialization.patch
-mm-use-div_round_up-in-mm-memoryc.patch
-make-proc-slabinfo-use-seq_list_xxx-helpers.patch
-make-proc-slabinfo-use-seq_list_xxx-helpers-fix.patch
-mm-alloc_large_system_hash-can-free-some-memory-for.patch
-remove-the-deprecated-kmem_cache_t-typedef-from-slabh.patch
-slob-rework-freelist-handling.patch
-slob-remove-bigblock-tracking.patch
-slob-improved-alignment-handling.patch
-vmscan-fix-comments-related-to-shrink_list.patch
-mm-fix-fault-vs-invalidate-race-for-linear-mappings.patch
-mm-fix-fault-vs-invalidate-race-for-linear-mappings-fix.patch
-mm-merge-populate-and-nopage-into-fault-fixes-nonlinear.patch
-mm-merge-populate-and-nopage-into-fault-fixes-nonlinear-fix.patch
-mm-merge-nopfn-into-fault.patch
-mm-merge-nopfn-into-fault-spufs-fix.patch
-convert-hugetlbfs-to-use-vm_ops-fault.patch
-mm-remove-legacy-cruft.patch
-mm-debug-check-for-the-fault-vs-invalidate-race.patch
-mm-fix-clear_page_dirty_for_io-vs-fault-race.patch
-invalidate_mapping_pages-add-cond_resched.patch
-ocfs2-release-page-lock-before-calling-page_mkwrite.patch
-document-page_mkwrite-locking.patch
-slub-support-slub_debug-on-by-default.patch
-slub-support-slub_debug-on-by-default-tidy.patch
-numa-mempolicy-dynamic-interleave-map-for-system-init.patch
-oom-stop-allocating-user-memory-if-tif_memdie-is-set.patch
-numa-mempolicy-trivial-debug-fixes.patch
-mm-fix-improper-init-type-section-references.patch
-page-table-handling-cleanup.patch
-kill-vmalloc_earlyreserve.patch
-mm-more-__meminit-annotations.patch
-mm-slabc-start_cpu_timer-should-be-__cpuinit.patch
-madvise_need_mmap_write-usage.patch
-slob-initial-numa-support.patch
-fix-read-truncate-race.patch
-make-sure-readv-stops-reading-when-it-hits-end-of-file.patch
-remove-alloc_zeroed_user_highpage.patch
-create-the-zone_movable-zone.patch
-create-the-zone_movable-zone-fix.patch
-create-the-zone_movable-zone-fix-2.patch
-allow-huge-page-allocations-to-use-gfp_high_movable.patch
-allow-huge-page-allocations-to-use-gfp_high_movable-fix.patch
-allow-huge-page-allocations-to-use-gfp_high_movable-fix-2.patch
-allow-huge-page-allocations-to-use-gfp_high_movable-fix-3.patch
-handle-kernelcore=-generic.patch
-handle-kernelcore=-generic-fix.patch
-lumpy-reclaim-v4.patch
-lumpy-move-to-using-pfn_valid_within.patch
-have-kswapd-keep-a-minimum-order-free-other-than-order-0.patch
-have-kswapd-keep-a-minimum-order-free-other-than-order-0-fix.patch
-only-check-absolute-watermarks-for-alloc_high-and-alloc_harder-allocations.patch
-mm-clean-up-and-kernelify-shrinker-registration.patch
-mm-clean-up-and-kernelify-shrinker-registration-vs-git-nfs.patch
-split-mmap.patch
-only-allow-nonlinear-vmas-for-ram-backed-filesystems.patch
-mm-document-fault_data-and-flags.patch
-slub-mm-only-make-slub-the-default-slab-allocator.patch
-slub-reduce-antifrag-max-order-use-antifrag-constant-instead-of-hardcoding-page-order.patch
-slub-change-error-reporting-format-to-follow-lockdep-loosely.patch
-slub-change-error-reporting-format-to-follow-lockdep-loosely-fix.patch
-slub-remove-useless-export_symbol.patch
-slub-use-list_for_each_entry-for-loops-over-all-slabs.patch
-slub-slab-validation-move-tracking-information-alloc-outside-of.patch
-slub-ensure-that-the-object-per-slabs-stays-low-for-high-orders.patch
-slub-debug-fix-initial-object-debug-state-of-numa-bootstrap-objects.patch
-slab-allocators-consolidate-code-for-krealloc-in-mm-utilc.patch
-slab-allocators-consistent-zero_size_ptr-support-and-null-result-semantics.patch
-slab-allocators-support-__gfp_zero-in-all-allocators.patch
-slub-add-some-more-inlines-and-ifdef-config_slub_debug.patch
-slub-extract-dma_kmalloc_cache-from-get_cache.patch
-slub-do-proper-locking-during-dma-slab-creation.patch
-slub-faster-more-efficient-slab-determination-for-__kmalloc.patch
-slub-faster-more-efficient-slab-determination-for-__kmalloc-fix.patch
-slub-faster-more-efficient-slab-determination-for-__kmalloc-fix-2.patch
-slub-simplify-dma-index-size-calculation.patch
-add-vm_bug_on-in-case-someone-uses-page_mapping-on-a-slab-page.patch
-fs-introduce-some-page-buffer-invariants.patch
-nfs-invariant-fix.patch
-fs-introduce-some-page-buffer-invariants-obnoxiousness.patch
-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-make-kernel-threads-nonfreezable-by-default-fix-2.patch
-nommu-stub-expand_stack-for-nommu-case.patch
-m68knommu-use-trhead_size-instead-of-hard-constant.patch
-m68knommu-remove-cruft-from-setup-code.patch
-m68knommu-remove-old-cache-management-cruft-from-mm-code.patch
-h8300-enable-arbitary-speed-tty-port-setup.patch
-h8300-zimage-support-update.patch
-alpha-fix-trivial-section-mismatch-warnings.patch
-fix-alpha-isa-support.patch
-fix-alpha-isa-support-fix.patch
-arm26-enable-arbitary-speed-tty-ioctls-and-split.patch
-arm26-remove-broken-and-unused-macro.patch
-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-remove-code-duplication-between-diskc-and-userc-fix.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
-pm-introduce-hibernation-and-suspend-notifiers.patch
-pm-introduce-hibernation-and-suspend-notifiers-fix.patch
-pm-introduce-hibernation-and-suspend-notifiers-tidy.patch
-pm-introduce-hibernation-and-suspend-notifiers-fix-fix.patch
-pm-disable-usermode-helper-before-hibernation-and-suspend.patch
-pm-disable-usermode-helper-before-hibernation-and-suspend-fix.patch
-pm-reduce-code-duplication-between-mainc-and-userc.patch
-pm-prevent-frozen-user-mode-helpers-from-failing-the-freezing-of-tasks-rev-2.patch
-m32r-enable-arbitary-speed-tty-rate-setting.patch
-etrax-enable-arbitary-speed-setting-on-tty-ports.patch
-cris-replace-old-style-member-inits-with-designated-inits.patch
-uml-fix-request-sector-update.patch
-uml-use-get_free_pages-to-allocate-kernel-stacks.patch
-add-generic-exit-time-stack-depth-checking-to-config_debug_stack_usage.patch
-uml-debug_shirq-fixes.patch
-uml-xterm-driver-tidying.patch
-uml-pty-channel-tidying.patch
-uml-handle-errors-on-opening-host-side-of-consoles.patch
-uml-sigio-support-cleanup.patch
-uml-simplify-helper-stack-handling.patch
-uml-eliminate-kernel-allocator-wrappers.patch
-v850-enable-arbitary-speed-tty-ioctls.patch
-fix-rmmod-read-write-races-in-proc-entries.patch
-fix-rmmod-read-write-races-in-proc-entries-cleanup.patch
-fix-rmmod-read-write-races-in-proc-entries-fix.patch
-more-scheduled-oss-driver-removal.patch
-introduce-write_trylock_irqsave.patch
-use-write_trylock_irqsave-in-ptrace_attach.patch
-use-write_trylock_irqsave-in-ptrace_attach-fix.patch
-use-menuconfig-objects-ii-auxdisplay.patch
-use-menuconfig-objects-ii-auxdisplay-fix.patch
-use-menuconfig-objects-ii-edac.patch
-use-menuconfig-objects-ii-ipmi.patch
-use-menuconfig-objects-ii-misc-strange-dev.patch
-use-menuconfig-objects-ii-misc-strange-dev-fix.patch
-use-menuconfig-objects-ii-module-menu.patch
-use-menuconfig-objects-ii-oprofile.patch
-use-menuconfig-objects-ii-oprofile-fix.patch
-use-menuconfig-objects-ii-telephony.patch
-use-menuconfig-objects-ii-tpm.patch
-use-menuconfig-objects-connector.patch
-use-menuconfig-objects-crypto-hw.patch
-use-menuconfig-objects-crypto-hw-fix.patch
-use-menuconfig-objects-i2o.patch
-use-menuconfig-objects-parport.patch
-use-menuconfig-objects-pnp.patch
-use-menuconfig-objects-w1.patch
-fix-jvc-cdrom-drive-lockup.patch
-use-no_pci_devices-in-pci-searchc.patch
-introduce-boot-based-time.patch
-introduce-boot-based-time-fix.patch
-use-boot-based-time-for-process-start-time-and-boot-time.patch
-use-boot-based-time-for-process-start-time-and-boot-time-fix.patch
-use-boot-based-time-for-process-start-time-and-boot-time-fix-2.patch
-use-boot-based-time-for-process-start-time-and-boot-time-fix-3.patch
-use-boot-based-time-for-uptime-in-proc.patch
-udf-check-for-allocated-memory-for-data-of-new-inodes.patch
-udf-check-for-allocated-memory-for-data-of-new-inodes-fix.patch
-add-argv_split-fix.patch
-add-common-orderly_poweroff-fix.patch
-prevent-an-o_ndelay-writer-from-blocking-when-a-tty-write-is-blocked-by.patch
-udf-check-for-allocated-memory-for-inode-data-v2.patch
-fix-stop_machine_run-problem-with-naughty-real-time-process.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
-use-mutexes-instead-of-semaphores-in-i2o-driver.patch
-fuse-warning-fix.patch
-vxfs-warning-fixes.patch
-percpu_counters-use-cpu-notifiers.patch
-percpu_counters-use-for_each_online_cpu.patch
-make-afs-use-seq_list_xxx-helpers.patch
-make-crypto-api-use-seq_list_xxx-helpers.patch
-make-proc-misc-use-seq_list_xxx-helpers.patch
-make-proc-modules-use-seq_list_xxx-helpers.patch
-make-proc-tty-drivers-use-seq_list_xxx-helpers.patch
-make-proc-self-mountstats-use-seq_list_xxx-helpers.patch
-make-nfs-client-use-seq_list_xxx-helpers.patch
-fat-gcc-43-warning-fix.patch
-remove-unnecessary-includes-of-spinlockh-under-include-linux.patch
-drivers-block-z2ram-remove-true-false-defines.patch
-fix-compiler-warnings-in-acornc.patch
-update-zilog-timeout.patch
-edd-switch-to-pci_get-based-api.patch
-fix-up-codingstyle-in-isofs.patch
-define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer.patch
-mpu401-warning-fixes.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
-procfs-directory-entry-cleanup.patch
-procfs-directory-entry-cleanup-fix.patch
-8xx-fix-whitespace-and-indentation.patch
-vdso-print-fatal-signals.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
-udf-coding-style-conversion-lindent-fixups-2.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
-zs-move-to-the-serial-subsystem-update.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
-remove-odd-and-misleading-comments-from-uioh.patch
-add-a-flag-to-indicate-deferrable-timers-in-proc-timer_stats.patch
-buffer-kill-old-incorrect-comment.patch
-introduce-o_cloexec-take-2.patch
-introduce-o_cloexec-parisc-fix.patch
-o_cloexec-for-scm_rights.patch
-o_cloexec-for-scm_rights-fix.patch
-o_cloexec-for-scm_rights-fix-2.patch
-init-wait-for-asynchronously-scanned-block-devices.patch
-init-wait-for-asynchronously-scanned-block-devices-fix.patch
-atmel_serial-fix-break-handling.patch
-documentation-proc-pid-stat-files.patch
-seq_file-more-atomicity-in-traverse.patch
-lib-add-idr_for_each.patch
-lib-add-idr_for_each-fix.patch
-lib-add-idr_remove_all.patch
-remove-capabilityh-from-mmh.patch
-kernel-utf-8-handling.patch
-kernel-utf-8-handling-fix.patch
-remove-sonypi_camera_command.patch
-drop-an-empty-isicomh-from-being-exported-to-user-space.patch
-ext3-ext4-orphan-list-check-on-destroy_inode.patch
-ext3-ext4-orphan-list-check-on-destroy_inode-fix.patch
-ext3-ext4-orphan-list-corruption-due-bad-inode.patch
-allow-file-system-to-configure-for-no-leases.patch
-remove-apparently-useless-commented-apm_get_battery_status.patch
-taskstats-add-context-switch-counters.patch
-taskstats-add-context-switch-counters-fix.patch
-sony-laptop-use-null-for-pointer.patch
-undeprecate-raw-driver.patch
-hfsplus-change-kmalloc-memset-to-kzalloc.patch
-submitchecklist-update-fix-spelling-error.patch
-fix-typo-in-prefetchh.patch
-zsc-drain-the-transmission-line.patch
-hugetlbfs-use-lib-parser-fix-docs.patch
-report-that-kernel-is-tainted-if-there-were-an-oops-before.patch
-intel-rng-undo-mess-made-by-an-80-column-extremist.patch
-improve-behaviour-of-spurious-irq-detect.patch
-improve-behaviour-of-spurious-irq-detect-fix.patch
-audit-add-tty-input-auditing.patch
-audit-add-tty-input-auditing-fix.patch
-audit-add-tty-input-auditing-fix-2.patch
-remove-config_uts_ns-and-config_ipc_ns.patch
-user-namespace-add-the-framework.patch
-user-namespace-add-unshare.patch
-revert-vanishing-ioctl-handler-debugging.patch
-binfmt_elf-warning-fix.patch
-document-the-fact-that-rcu-callbacks-can-run-in-parallel.patch
-cobalt-remove-all-references-to-cobalt-nvram.patch
-allow-softlockup-to-be-runtime-disabled.patch
-dirty_writeback_centisecs_handler-cleanup.patch
-mm-fix-create_new_namespaces-return-value.patch
-add-a-kmem_cache-for-nsproxy-objects.patch
-ptrace_peekdata-consolidation.patch
-ptrace_pokedata-consolidation.patch
-adjust-nosmp-handling.patch
-ext3-fix-deadlock-in-ext3_remount-and-orphan-list-handling.patch
-ext4-fix-deadlock-in-ext4_remount-and-orphan-list-handling.patch
-remove-unused-lock_cpu_hotplug_interruptible-definition.patch
-add-werror-implicit-function-declaration.patch
-kerneldoc-fix-in-audit_core_dumps.patch
-add-lzo1x-algorithm-to-the-kernel.patch
-introduce-compat_u64-and-compat_s64-types.patch
-diskquota-32bit-quota-tools-on-64bit-architectures.patch
-diskquota-32bit-quota-tools-on-64bit-architectures-fix.patch
-diskquota-32bit-quota-tools-on-64bit-architectures-fix-fix.patch
-blink-only-blink-when-parameter-is-set.patch
-blink-only-blink-when-parameter-is-set-fix.patch
-remove-final-two-references-to-__obsolete_setup-macro.patch
-update-procfs-guide-doc-of-read_func.patch
-ext3-remove-extra-is_rdonly-check.patch
-namespace-ensure-clone_flags-are-always-stored-in-an-unsigned-long.patch
-doc-oops-tracing-add-code-decode-info.patch
-drop-obsolete-sys_ioctl-export.patch
-is_power_of_2-ext3-superc.patch
-is_power_of_2-jbd.patch
-sys_time-speedup.patch
-sys_time-speedup-build-fixes.patch
-cdrom-replace-hard-coded-constants-by-kernelh-macro.patch
-update-description-in-documentation-filesystems-vfstxt-typo-fixed.patch
-futex-tidy-up-the-code-v2.patch
-add-documentation-sysctl-ctl_unnumberedtxt.patch
-sysctlc-add-text-telling-people-to-use-ctl_unnumbered.patch
-mistaken-ext4_inode_bitmap-for-ext4_block_bitmap.patch
-hfs-refactor-ascii-to-unicode-conversion-routine.patch
-hfs-refactor-ascii-to-unicode-conversion-routine-fix.patch
-hfs-add-custom-dentry-hash-and-comparison-operations.patch
-sprint_symbol-cleanup.patch
-fs-namespacec-should-include-internalh.patch
-proper-prototype-for-proc_nr_files.patch
-replace-obscure-constructs-in-fs-block_devc.patch
-replace-obscure-constructs-in-fs-block_devc-fix.patch
-bd_claim_by_disk-fix-warning.patch
-adb_probe_task-remove-unneeded-flush_signals-call.patch
-kcdrwd-remove-unneeded-flush_signals-call.patch
-nbdcsock_xmit-cleanup-signal-related-code.patch
-move-seccomp-from-proc-to-a-prctl.patch
-make-seccomp-zerocost-in-schedule.patch
-is_power_of_2-kernel-kfifoc.patch
-parport_pc-it887x-fix.patch
-is_power_of_2-ufs-superc.patch
-codingstyle-add-information-about-trailing-whitespace.patch
-codingstyle-add-information-about-editor-modelines.patch
-uninline-check_signature.patch
-ibmasm-whitespace-cleanup.patch
-ibmasm-dont-use-extern-in-function-declarations.patch
-ibmasm-miscellaneous-fixes.patch
-ibmasm-must-depend-on-config_input.patch
-spi-controller-drivers-check-for-unsupported-modes.patch
-spi-controller-drivers-check-for-unsupported-modes-update.patch
-spi-add-3wire-mode-flag.patch
-spi-add-3wire-mode-flag-fix.patch
-crc7-support.patch
-crc7-support-fix.patch
-spidev-compiler-warning-gone.patch
-spi_lm70llp-parport-adapter-driver.patch
-spi_lm70llp-parport-adapter-driver-correction.patch
-spi_mpc83xxc-underclocking-hotfix.patch
-atmel_spi-minor-updates.patch
-s3c24xx-spi-controllers-both-select-bitbang.patch
-spi-tle620x-power-switch-driver.patch
-spi-master-driver-for-xilinx-virtex.patch
-spi-master-driver-for-xilinx-virtex-fix.patch
-move-page-writeback-acounting-out-of-macros.patch
-use-mutex-instead-of-semaphore-in-capi-20-driver.patch
-mismatching-declarations-of-revision-strings-in-hisax.patch
-make-isdn-capi-use-seq_list_xxx-helpers.patch
-update-isdn-tree-to-use-pci_get_device.patch
-sane-irq-initialization-in-sedlbauer-hisax.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
-isdn-capi-warning-fixes.patch
-i4l-leak-in-eicon-idifuncc.patch
-i2o_cfg_passthru-cleanup.patch
-i2o_cfg_passthru-cleanup-fix.patch
-wrong-memory-access-in-i2o_block_device_lock.patch
-i2o-message-leak-in-i2o_msg_post_wait_mem.patch
-i2o-proc-reading-oops.patch
-i2o-debug-output-cleanup.patch
-knfsd-exportfs-add-exportfsh-header.patch
-knfsd-exportfs-add-exportfsh-header-fix.patch
-knfsd-exportfs-remove-iget-abuse.patch
-knfsd-exportfs-remove-iget-abuse-fix.patch
-knfsd-exportfs-add-procedural-interface-for-nfsd.patch
-knfsd-exportfs-remove-call-macro.patch
-knfsd-exportfs-untangle-isdir-logic-in-find_exported_dentry.patch
-knfsd-exportfs-move-acceptable-check-into-find_acceptable_alias.patch
-knfsd-exportfs-add-find_disconnected_root-helper.patch
-knfsd-exportfs-split-out-reconnecting-a-dentry-from-find_exported_dentry.patch
-nfsd-warning-fix.patch
-knfsd-lockd-nfsd4-use-same-grace-period-for-lockd-and-nfsd4.patch
-knfsd-nfsd4-fix-nfsv4-filehandle-size-units-confusion.patch
-knfsd-nfsd4-silence-a-compiler-warning-in-acl-code.patch
-knfsd-nfsd4-fix-enc_stateid_sz-for-nfsd-callbacks.patch
-knfsd-nfsd4-fix-handling-of-acl-errrors.patch
-knfsd-nfsd-remove-unused-header-interfaceh.patch
-knfsd-nfsd4-vary-maximum-delegation-limit-based-on-ram-size.patch
-knfsd-nfsd4-vary-maximum-delegation-limit-based-on-ram-size-fix.patch
-knfsd-nfsd4-vary-maximum-delegation-limit-based-on-ram-size-fix-fix.patch
-knfsd-nfsd4-vary-maximum-delegation-limit-based-on-ram-size-fix-fix-fix.patch
-knfsd-nfsd4-vary-maximum-delegation-limit-based-on-ram-size-fix-fix-fix-fix.patch
-knfsd-nfsd4-dont-delegate-files-that-have-had-conflicts.patch
-couple-fixes-to-fs-ecryptfs-inodec.patch
-ecryptfs-move-ecryptfs-docs-into-documentation-filesystems.patch
-rtc-ds1307-cleanups.patch
-rtc-rs5c372-becomes-a-new-style-i2c-driver.patch
-thecus-n2100-register-rtc-rs5c372-i2c-device.patch
-rtc-make-example-code-jump-to-done-instead-of-return-when-ioctl-not-supported.patch
-rtc-dev-return-enotty-in-ioctl-if-irq_set_freq-is-not-implemented-by-driver.patch
-driver-for-the-atmel-on-chip-rtc-on-at32ap700x-devices.patch
-driver-for-the-atmel-on-chip-rtc-on-at32ap700x-devices-fix.patch
-driver-for-the-atmel-on-chip-rtc-on-at32ap700x-devices-fix-2.patch
-driver-for-the-atmel-on-chip-rtc-on-at32ap700x-devices-fix-3.patch
-rtc_class-is-no-longer-considered-experimental.patch
-rtc-kconfig-tweax.patch
-rtc-add-rtc-m41t80-driver-take-2.patch
-rtc-add-rtc-m41t80-driver-take-2-fix.patch
-rtc-watchdog-support-for-rtc-m41t80-driver-take-2.patch
-rtc-add-support-for-the-st-m48t59-rtc.patch
-rtc-add-support-for-the-st-m48t59-rtc-fix-2.patch
-rtc-add-support-for-the-st-m48t59-rtc-vs-git-acpi.patch
-rtc-add-support-for-the-st-m48t59-rtc-fix-3.patch
-rtc-driver-for-ds1216-chips.patch
-rtc-driver-for-ds1216-chips-fix.patch
-rtc-ds1307-oscillator-restart-for-ds1337383940.patch
-revoke-special-mmap-handling.patch
-revoke-special-mmap-handling-vs-fault-vs-invalidate.patch
-revoke-core-code.patch
-revoke-core-code-fix-zero-length-kmalloc.patch
-revoke-support-for-ext2-and-ext3.patch
-revoke-add-documentation.patch
-revoke-wire-up-i386-system-calls.patch
-fs-introduce-write_begin-write_end-and-perform_write-aops-revoke.patch
-lguest-export-symbols-for-lguest-as-a-module.patch
-lguest-the-guest-code.patch
-lguest-the-host-code.patch
-lguest-the-host-code-lguest-vs-clockevents-fix-resume-logic.patch
-lguest-the-asm-offsets.patch
-lguest-the-makefile-and-kconfig.patch
-lguest-the-console-driver.patch
-lguest-the-net-driver.patch
-lguest-the-block-driver.patch
-lguest-the-documentation-example-launcher.patch
-oss-trident-massive-whitespace-removal.patch
-oss-trident-fix-locking-around-write_voice_regs.patch
-oss-trident-replace-deprecated-pci_find_device-with-pci_get_device.patch
-remove-options-depending-on-oss_obsolete.patch
-char-cyclades-add-firmware-loading.patch
-char-cyclades-fix-sparse-warning.patch
-char-isicom-cleanup-locking.patch
-char-isicom-del_timer-at-exit.patch
-char-isicom-proper-variables-types.patch
-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-stallion-remove-user-class-report-request.patch
-char-istallion-initlocking-fixes-try-2.patch
-fbcon-smart-blitter-usage-for-scrolling.patch
-nvidiafb-adjust-flags-to-take-advantage-of-new-scroll-method.patch
-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-move-arch-specific-bits-to-their-respective-fix.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
-radeonfb-add-support-for-radeon-xpress-200m-rs485.patch
-nvidiafb-add-proper-support-for-geforce-7600-chipset.patch
-pm2fb-white-spaces-clean-up.patch
-fbcon-set_con2fb_map-fixes.patch
-fbcon-revise-primary-device-selection.patch
-fbdev-fbcon-console-unregistration-from-unregister_framebuffer.patch
-fbdev-fbcon-console-unregistration-from-unregister_framebuffer-fix.patch
-vt-add-comment-for-unbind_con_driver.patch
-68328fb-the-pseudo_palette-is-only-16-elements-long.patch
-controlfb-the-pseudo_palette-is-only-16-elements-long.patch
-cyblafb-fix-pseudo_palette-array-overrun-in-setcolreg.patch
-epson1355fb-color-setting-fixes.patch
-fm2fb-the-pseudo_palette-is-only-16-elements-long.patch
-gbefb-the-pseudo_palette-is-only-16-elements-long.patch
-macfb-fix-pseudo_palette-size-and-overrun.patch
-offb-the-pseudo_palette-is-only-16-elements-long.patch
-platinumfb-the-pseudo_palette-is-only-16-elements.patch
-pvr2fb-fix-pseudo_palette-array-overrun-and-typecast.patch
-q40fb-the-pseudo_palette-is-only-16-elements-long.patch
-sgivwfb-the-pseudo_palette-is-only-16-elements-long.patch
-tgafb-actually-allocate-memory-for-the-pseudo_palette.patch
-tridentfb-fix-pseudo_palette-array-overrun-in-setcolreg.patch
-tx3912fb-fix-improper-assignment-of-info-pseudo_palette.patch
-atyfb-the-pseudo_palette-is-only-16-elements-long.patch
-radeonfb-the-pseudo_palette-is-only-16-elements-long.patch
-i810fb-the-pseudo_palette-is-only-16-elements-long.patch
-intelfb-the-pseudo_palette-is-only-16-elements-long.patch
-sisfb-fix-pseudo_palette-array-size-and-overrun.patch
-matroxfb-color-setting-fixes.patch
-pm3fb-fillrect-acceleration.patch
-pm3fb-possible-cleanups.patch
-vt8623fbc-make-code-static.patch
-matroxfb-color-setting-fixes-fix.patch
-fb-epson1355fb-kill-off-dead-sh-support.patch
-fix-the-graphic-corruption-issue-on-ia64-machines.patch
-omap-add-ti-omap-framebuffer-driver.patch
-omap-add-ti-omap1610-accelerator-entry.patch
-omap-add-ti-omap1-internal-lcd-controller.patch
-omap-add-ti-omap2-internal-display-controller-support.patch
-omap-add-ti-omap1-external-lcd-controller-support-sossi.patch
-omap-add-ti-omap2-external-lcd-controller-support-rfbi.patch
-omap-add-external-epson-hwa742-lcd-controller-support.patch
-omap-add-external-epson-blizzard-lcd-controller-support.patch
-omap-lcd-panel-support-for-the-ti-omap-h4-board.patch
-omap-lcd-panel-support-for-the-ti-omap-h3-board.patch
-omap-lcd-panel-support-for-the-palm-tungsten-e.patch
-omap-lcd-panel-support-for-palm-tungstent.patch
-omap-lcd-panel-support-for-the-palm-zire71.patch
-omap-lcd-panel-support-for-the-ti-omap1610-innovator-board.patch
-omap-lcd-panel-support-for-the-ti-omap1510-innovator-board.patch
-omap-lcd-panel-support-for-the-ti-omap-osk-board.patch
-omap-lcd-panel-support-for-the-siemens-sx1-mobile-phone.patch
-use-menuconfig-objects-ii-md.patch
-md-improve-message-about-invalid-superblock-during-autodetect.patch
-md-improve-the-is_mddev_idle-test-fix.patch
-md-check-that-internal-bitmap-does-not-overlap-other-data.patch
-md-change-bitmap_unplug-and-others-to-void-functions.patch
-readahead-introduce-pg_readahead.patch
-readahead-add-look-ahead-support-to-__do_page_cache_readahead.patch
-readahead-min_ra_pages-max_ra_pages-macros.patch
-readahead-data-structure-and-routines.patch
-readahead-on-demand-readahead-logic.patch
-readahead-convert-filemap-invocations.patch
-readahead-convert-splice-invocations.patch
-readahead-convert-ext3-ext4-invocations.patch
-readahead-remove-the-old-algorithm.patch
-readahead-move-synchronous-readahead-call-out-of-splice-loop.patch
-readahead-pass-real-splice-size.patch
-mm-share-pg_readahead-and-pg_reclaim.patch
-readahead-split-ondemand-readahead-interface-into-two-functions.patch
-readahead-sanify-file_ra_state-names.patch
-fallocate-implementation-on-i86-x86_64-and-powerpc.patch
-fallocate-on-s390.patch
-fallocate-on-ia64.patch
-fallocate-on-ia64-fix.patch
-jprobes-make-struct-jprobeentry-a-void.patch
-jprobes-remove-jprobe_entry.patch
-jprobes-make-jprobes-a-little-safer-for-users.patch
-jprobes-make-jprobes-a-little-safer-for-users-fix.patch
-define-new-percpu-interface-for-shared-data-version-4.patch
-use-the-new-percpu-interface-for-shared-data-version-4.patch
-arch-personality-independent-stack-top.patch
-audit-rework-execve-audit.patch
-mm-variable-length-argument-support.patch
-mm-variable-length-argument-support-fix.patch
-ext4-ext4_noextent_mount_opt.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-nanosecond-patch.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-zero_user_page-conversion.patch
-ext4-remove-extra-is_rdonly-check.patch
-is_power_of_2-ext4-superc.patch
-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
-cfs-scheduler.patch
-cfs-scheduler-vs-detach-schedh-from-mmh.patch
-cfs-scheduler-v14-rc2-mm1.patch
-cfs-scheduler-warning-fixes.patch
-cfs-scheduler-v15-rc3-mm1.patch
-kernel-sched_fairc-make-code-static.patch
-fs-proc-basec-make-a-struct-static.patch
-cfs-warning-fixes.patch
-schedstats-fix-printk-format.patch
-cfs-scheduler-v16.patch
-sched-cfs-v2.6.22-git-v18.patch
-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
-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
-drivers-edac-add-edac_mc_find-api.patch
-drivers-edac-core-make-functions-static.patch
-drivers-edac-add-rddr2-memory-types.patch
-drivers-edac-split-out-functions-to-unique-files.patch
-drivers-edac-add-edac_device-class.patch
-drivers-edac-mc-sysfs-add-missing-mem-types.patch
-drivers-edac-change-from-semaphore-to-mutex-operation.patch
-drivers-edac-new-intel-5000-mc-driver.patch
-drivers-edac-new-intel-5000-mc-driver-fix.patch
-drivers-edac-coreh-fix-scrubdefs.patch
-drivers-edac-new-i82443bxgz-mc-driver.patch
-drivers-edac-new-i82443bxgz-mc-driver-broken.patch
-drivers-edac-add-new-nmi-rescan.patch
-drivers-edac-mod-use-edac_coreh.patch
-drivers-edac-add-dev_name-getter-function.patch
-drivers-edac-new-inte-30x0-mc-driver.patch
-drivers-edac-mod-mc-to-use-workq-instead-of-kthread.patch
-drivers-edac-updated-pci-monitoring.patch
-drivers-edac-mod-assert_error-check.patch
-drivers-edac-mod-pci-poll-names.patch
-drivers-edac-core-lindent-cleanup.patch
-drivers-edac-edac_device-sysfs-cleanup.patch
-drivers-edac-cleanup-workq-ifdefs.patch
-drivers-edac-lindent-amd76x.patch
-drivers-edac-lindent-i5000.patch
-drivers-edac-lindent-e7xxx.patch
-drivers-edac-lindent-i3000.patch
-drivers-edac-lindent-i82860.patch
-drivers-edac-lindent-i82875p.patch
-drivers-edac-lindent-e752x.patch
-drivers-edac-lindent-i82443bxgx.patch
-drivers-edac-lindent-r82600.patch
-drivers-edac-drivers-to-use-new-pci-operation.patch
-drivers-edac-add-device-sysfs-attributes.patch
-drivers-edac-device-output-clenaup.patch
-drivers-edac-add-info-kconfig.patch
-drivers-edac-update-maintainers-files-for-edac.patch
-drivers-edac-cleanup-spaces-gotos-after-lindent-messup.patch
-driver-edac-add-mips-and-ppc-visibility.patch
-driver-edac-mod-race-fix-i82875p.patch
-driver-edac-fix-ignored-return-i82875p.patch
-include-linux-pci_id-h-add-amd-northbridge-defines.patch
-driver-edac-i5000-define-typo.patch
-driver-edac-remove-null-from-statics.patch
-driver-edac-i5000-code-tidying.patch
-driver-edac-edac_device-code-tidying.patch
-driver-edac-mod-edac_align_ptr-function.patch
-driver-edac-mod-edac_opt_state_to_string-function.patch
-driver-edac-remove-file-edac_mc-h.patch
-fix-raw_spinlock_t-vs-lockdep.patch
-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-core-infrastructure-fix-fix-fix.patch
-lockstat-human-readability-tweaks.patch
-lockstat-human-readability-tweaks-fix.patch
-lockstat-hook-into-spinlock_t-rwlock_t-rwsem-and-mutex.patch
-lockdep-various-fixes.patch
-lockdep-various-fixes-checkpatch.patch
-lockdep-fixup-sk_callback_lock-annotation.patch
-lockstat-measure-lock-bouncing.patch
-lockstat-measure-lock-bouncing-checkpatch.patch
-lockstat-better-class-name-representation.patch
-restore-rogue-readahead-printk.patch

 Merged into mainline or a subsystem tree

+tiny-signalfd-cleanup.patch
+kernel-doc-fix-for-kmodc.patch
+slab-maintainer-credits-update.patch
+rtc-stk17ta8-update-for-sysfs-api-change.patch
+use-ldflags_module-only-for-ko-links.patch
+pm-fix-compiler-error-of-ppc-dart_iommu.patch
+fixup-s3c24xx-build-after-arch-moves.patch
+rtc-ds1307-typo-fix-found-by-coverity.patch
+xen-xen-pageh-compile-fix.patch
+lguest-documentation-i-preparation.patch
+lguest-documentation-ii-guest.patch
+lguest-documentation-iii-drivers.patch
+lguest-documentation-iv-launcher.patch
+lguest-documentation-v-host.patch
+lguest-documentation-vi-switcher.patch
+lguest-documentation-vii-fixmes.patch
+x86_powernow_k8_acpi-must-depend-on-acpi.patch
+make-timerfd-return-a-u64-and-fix-the-__put_user.patch
+memory-unplug-v7-migration-by-kernel.patch
+memory-unplug-v7-isolate_lru_page-fix.patch
+revert-x86-serial-convert-legacy-com-ports-to-platform-devices.patch
+reorder-rtc-makefile.patch
+ufs-printk-warning-fix.patch
+i2c-ds1682-warning-fix.patch
+edac-is-bust-on-mips.patch
+xenbus_xsc-fix-a-use-after-free.patch
+fix-inode_table-test-in-ext234_check_descriptors.patch
+kdebugh-forward-declare-struct-struct-notifier_block.patch

 2.6.23 queue

+check-for-pageslab-in-arch-flush_dcache_page-to-avoid-triggering-vm_bug_on.patch

 In limbo.

+consolidate-ptrace_detach.patch
+powerpc-include-pagemaph-in-asm-powerpc-tlbh.patch
+slow-down-printk-during-boot.patch
+slow-down-printk-during-boot-fix-2.patch

 Misc

+git-acpi-build-fix.patch

 git-acpi fix

+acpi-enable-c3-power-state-on-dell-inspiron-8200.patch
+acpi-add-reboot-mechanism.patch
+acpi-add-reboot-mechanism-fix.patch
+acpi-move-timer-broadcast-and-pmtimer-access-before-c3-arbiter-shutdown.patch
+acpi-remove-references-to-acpi_state_s2-from-acpi_pm_enter.patch
+acpi-fix-oops-due-to-typo-in-new-throttling-code.patch

 APCI stuff

+fix-use-after-free--double-free-bug-in-amd_create_gatt_pages--amd_free_gatt_pages.patch

 agp fix

+agk-dm-dm-crypt-drop-device-ref-in-ctr-error-path.patch
+agk-dm-dm-delay-fix-ctr-error-paths.patch

 dm updates

+powerpc-vdso-install-unstripped-copies-on-disk.patch
+sky-cpu-and-nexus-code-style-improvement.patch
+sky-cpu-and-nexus-include-ioh.patch
+sky-cpu-and-nexus-check-for-platform_get_resource-ret.patch
+sky-cpu-and-nexus-check-for-create_proc_entry-ret-code.patch
+sky-cpu-use-c99-style-for-struct-init.patch
+sky-cpu-and-nexus-get-rid-of-useless-null-init.patch
+sky-cpu-and-nexus-use-seq_file-single_open-on-proc-interface.patch

 ppc things

+gregkh-driver-howto-adjust-translation-header-of-japanese-stable_api_nonsensetxt.patch
+gregkh-driver-howto-sync-japanese-howto.patch
+gregkh-driver-kobject-fix-link-error-when-config_hotplug-is-disabled.patch
+gregkh-driver-kobject-put-kobject_actions-in-kobjecth.patch
+gregkh-driver-sysfs-remove-first-pass-at-shadow-directory-support.patch
+gregkh-driver-sysfs-implement-sysfs-manged-shadow-directory-support.patch
+gregkh-driver-sysfs-implement-sysfs_delete_link-and-sysfs_rename_link.patch
+gregkh-driver-driver-core-implement-shadow-directory-support-for-device-classes.patch
+gregkh-driver-nozomi.patch

 Driver tree updates

+fix-typos-in-fs-sysfs-filec.patch

 sysfs fix

+dma-arch-fix.patch

 Fix git-dma.patch

+initialize-filp-private_data-only-once-in-em28xx_v4l2_open.patch
+stradis-and-zoran-depend-on-virt_to_bus.patch

 dvb fixes

+jdelvare-i2c-i2c-i801-typo-erroneous.patch
+jdelvare-i2c-i2c-mpc-pass-correct-dev_id-to-free_irq.patch
+jdelvare-i2c-i2c-isp1301_omap-build-fixes.patch
+jdelvare-i2c-i2c-iop3xx-set-adapater-class.patch
+jdelvare-i2c-i2c-new-style-devices-can-support-wakeup-flags.patch

 i2c tree updates

+clean-up-duplicate-includes-in-drivers-hwmon.patch

 hwmon fix

+hid-fix-a-null-pointer-dereference-when-we-fail-to-allocate-memory.patch

 hid update

+ia64-allow-smp_call_function_single-to-current-cpu.patch
+ia64-rename-partial_page.patch

 ia64 fixes

+pci-x-pci-express-read-control-interfaces-mthca.patch

 infiniband fix

+hdaps-switch-to-using-input-polldev.patch
+applesmc-switch-to-using-input-polldev.patch
+applesmc-add-temperature-sensors-set-for-macbook.patch
+ams-switch-to-using-input-polldev.patch
+adbhid-produce-all-capslock-key-events.patch
+adbhid-produce-all-capslock-key-events-fix.patch
+m68k-mac-make-mac_hid_mouse_emulate_buttons.patch
+clean-up-duplicate-includes-in-drivers-input.patch
+iforce-warning-fix.patch

 input things

+pass-g-to-assembler-under-config_debug_info.patch
+mkmakefile-include-arch-on-o=-builds.patch

 kbuild

+pata_acpi-rework-the-acpi-drivers-based-upon-experience.patch
+sata_nv-allow-changing-queue-depth.patch
+sata_mv-test-patch-for-hightpoint-rocketraid-1740-1742.patch
+libata-adjust-libata-to-ignore-errors-after.patch
+libata-check-for-an-support.patch
+scsi-expose-an-to-user-space.patch
+libata-expose-an-to-user-space.patch
+scsi-save-disk-in-scsi_device.patch
+libata-send-event-when-an-received.patch
+ata-ahci-alpm-store-interrupt-value.patch
+ata-ahci-alpm-expose-power-management-policy-option-to-users.patch
+ata-ahci-alpm-enable-link-power-management-for-ata-drivers.patch
+ata-ahci-alpm-enable-link-power-management-for-ata-drivers-fix.patch
+ata-ahci-alpm-enable-aggressive-link-power-management-for-ahci-controllers.patch

 ata things

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

 Dropped

+ide-ide-add-missing-ide-rate-filter-calls.patch
+ide-ide-mode-limiting-fixes-for-user-requested-speed-changes.patch
+ide-cs5520-fix-pio-auto-tuning-in-ide-dma-check-method.patch
+ide-cs5535-pio-fixes.patch
+ide-it8213-pio-fixes-take2.patch
+ide-jmicron-pio-fixes.patch
+ide-piix-slc90e66-fix-pio1-handling-in-speedproc-method-take2.patch
+ide-scc_pata-pio-fixes.patch
+ide-sis5513-udma-filter.patch
+ide-ide-remove-ide-rate-filter-from-speedproc.patch
+ide-ide-kconfig-face-lift.patch
+ide-ide-add-ide-set-pio-take3.patch
+ide-ide-cris-fix-set-pio-mode.patch
+ide-amd74xx-via82cxxx-use-ide-tune-dma.patch
+ide-sgiioc4-use-ide-tune-dma.patch
+ide-ide-config-drive-for-dma-fixes.patch
+ide-icside-fix-speedproc-for-unsupported-modes-take4.patch
+ide-ide-pmac-fix-drive-init-speed-reporting.patch
+ide-ide-pmac-pio-mode-setup-fixes-take-3.patch
+ide-sc1200-remove-redundant-warning-message.patch
+ide-cs5520-dont-enable-vdma-in-speedproc.patch
+ide-siimage-fix-set-pio-method-to-select-pio-data-transfer.patch
+ide-ide-add-cable-detection-for-early-udma66-devices.patch
+ide-alim15x3-pio-mode-setup-fixes.patch
+ide-it8213-piix-slc90e66-dont-change-dma-settings-for-pio-modes.patch
+ide-sis5513-dont-change-udma-settings-for-pio-modes.patch
+ide-ide-use-only-set-pio-mode-for-programming-pio-modes.patch

 IDE tree updates

+fix-ide-ide-add-ide-set-pio-take3.patch
+ide-bodge-things-around-to-make-arm-work.patch

 IDE things

+git-mtd-fix-printk-warning-in-jffs2_block_check_erase.patch
+mtdoops-printk-warning-fixes.patch
+mtd-add-module-license-to-mtdbdi.patch

 MTD things

+drivers-net-ns83820c-add-paramter-to-disable-auto.patch
+drivers-net-cxgb3-remove-several-unneeded-zero-initialization.patch
+via-rhine-disable-rx_copybreak-on-archs-that.patch
+phy-fixed-driver-rework-release-path-and-update.patch
+pci-x-pci-express-read-control-interfaces-myrinet.patch
+pci-x-pci-express-read-control-interfaces-e1000.patch
+dev-priv-to-netdev_privdev-drivers-net-tokenring.patch
+3c59x-check-return-of-pci_enable_device.patch
+clean-up-duplicate-includes-in-drivers-net.patch
+ax88796-printk-fixes.patch

 netdev things

-drivers-net-ns83820c-add-paramter-to-disable-auto.patch

 Dropped

+e1000new-build-fix.patch
+e1000new-build-fix-2.patch

 Fix git-e1000new.patch

+fore200e_param_bs_queue-must-be-__devinit.patch
+ip_auto_config-fix.patch
+ip_auto_config-fix-fix.patch
+clean-up-duplicate-includes-in-drivers-atm.patch
+clean-up-duplicate-includes-in-net-atm.patch
+clean-up-duplicate-includes-in-net-ipv4.patch
+clean-up-duplicate-includes-in-net-ipv6.patch
+clean-up-duplicate-includes-in-net-sched.patch
+clean-up-duplicate-includes-in-net-sunrpc.patch
+clean-up-duplicate-includes-in-net-tipc.patch
+clean-up-duplicate-includes-in-net-xfrm.patch
+fix-theoretical-ccids_readwrite_lock-race.patch

 net stuff

+clean-up-duplicate-includes-in-include-linux-nfs_fsh.patch

 nfs cleanup

+clean-up-duplicate-includes-in-fs-ntfs.patch

 ntfs celanup

-pa-risc-use-page-allocator-instead-of-slab-allocator-fix.patch

 Folded into pa-risc-use-page-allocator-instead-of-slab-allocator.patch

-dont-optimise-away-baud-rate-changes-when-bother-is-used-fix.patch
-dont-optimise-away-baud-rate-changes-when-bother-is-used-fix-fix.patch

 Folded into dont-optimise-away-baud-rate-changes-when-bother-is-used.patch

+serial_txx9-fix-modem-control-line-handling.patch
+serial_txx9-cleanup-includes.patch
+serial-8250-handle-saving-the-clear-on-read-bits-from-the-lsr.patch
+serial-8250-handle-saving-the-clear-on-read-bits-from-the-lsr-fix.patch
+add-blacklisting-capability-to-serial_pci-to-avoid-misdetection.patch
+add-blacklisting-capability-to-serial_pci-to-avoid-misdetection-fix.patch

 serial stuff

+gregkh-pci-pci-move-prototypes-for-pci_bus_find_capability-to-include-linux-pcih.patch
+gregkh-pci-pci-quirk_e100_interrupt-called-too-early.patch
+gregkh-pci-pci-document-pci_iomap.patch

 PCI tree updates

+pci-disable-decode-of-io-memory-during-bar-sizing.patch
+i386-add-support-for-picopower-irq-router.patch
+acpiphp_ibm-add-missing-n.patch
+try-parent-numa_node-at-first-before-using-default-v2.patch
+try-parent-numa_node-at-first-before-using-default-v2-fix.patch
+pci-remove-irritating-try-pci=assign-busses-warning.patch

 PCi things

+aacraid-rename-check_reset.patch
+incorrect-scsi-transfer-length-computation-from-odd.patch
+aha152x-in-debug-mode.patch
+use-menuconfig-objects-fusion.patch
+clean-up-duplicate-includes-in-drivers-scsi.patch
+megaraid-add-cerc_ata100-support.patch

 scsi fixes

+git-scsi-target-fixup.patch

 Fix rejects in git-scsi-target.patch

+gregkh-usb-usb-devices-misc-trivial-patch-to-build-the-iowarrior-when-it-is-selected-in-kconfig.patch
+gregkh-usb-usb-don-t-let-usb-storage-steal-blackberry-pearl.patch
+gregkh-usb-usb-more-quirky-devices.patch
+gregkh-usb-usb-usbh-kernel-doc-additions.patch
+gregkh-usb-usb-even-more-quirks.patch
+gregkh-usb-usb-introduce-usb_device-authorization-bits.patch
+gregkh-usb-usb-add-the-concept-of-default-authorization-to-usb-hosts.patch
+gregkh-usb-usb-cleanup-usb_register_bus-and-hook-up-sysfs-group.patch
+gregkh-usb-usb-initialize-authorization-and-wusb-bits-in-usb-devices.patch
+gregkh-usb-usb-usb_set_configuration-obeys-authorization.patch

 USB tree updates

+merge-the-sonics-silicon-backplane-subsystem.patch
+merge-the-sonics-silicon-backplane-subsystem-fix.patch
+ssb-add-a-driver-for-the-broadcom-ohci-core.patch
+usb-typo-in-usb-r8a66597-hcd-config.patch
+nikon-d50-is-an-unusual-device.patch
+0-null-drivers-usb-gadget.patch
+clean-up-duplicate-includes-in-drivers-usb.patch

 USB stuff

+x86_64-mm-pci-mmconfig-eax.patch
+x86_64-mm-early-quirks-unification.patch
+x86_64-mm-nvidia-timer-quirk.patch
+x86_64-mm-fam11-rep-good.patch
+x86_64-mm-clean-up-duplicate-includes-in-arch-i386-kernel.patch
+x86_64-mm-x86_64-sanitize-user-specified-e820-memmap-values.patch
+x86_64-mm-no-video-module.patch
+x86_64-mm-fix-arch-i386-kernel-nmi_c-unknown_nmi_panic_callback-declared-static-but-never-defined-warning.patch

 x86 tree updates

+revert-x86_64-mm-pci-mmconfig-eax.patch
+fix-x86_64-mm-early-quirks-unification.patch

 fix it
 
+x86_64-clean-up-apicid_to_node-declaration.patch
+geode-mfgpt-support-for-geode-class-machines.patch
+geode-mfgpt-clock-event-device-support.patch
+i386-deactivate-the-test-for-the-dead-config_debug_page_type.patch
+i386-vdso-install-unstripped-copies-on-disk.patch
+i386-vdso-install-unstripped-copies-on-disk-fix.patch
+x86_64-ia32-vdso-install-unstripped-copies-on-disk.patch
+x86_64-hide-cond_syscall-behind-__kernel__.patch
+arch-i386-kernel-smpbootcsetup_trampoline-must-be.patch
+x86_64-add-acpi-reboot-option.patch
+x86_64-make-acpi-the-default-reset-option.patch
+mmconfig-validate-against-acpi-motherboard-resources.patch
+geode-setup-correct-chipset-access-functions-fix.patch
+x86_64-use-wbinvd-macro-instead-of-raw-inline-assembly-in-c-files.patch
+i386-remove-unnecessary-code.patch
+x86_64-use-descriptors-functions-instead-of-inline-assembly.patch
+clean-up-duplicate-includes-in-arch-i386-xen.patch
+mtrr-simplify-smp_call_function_single-call-sequence.patch
+cpuid-driver-simplify-smp_call_function_single-call-sequence.patch
+msr-driver-simplify-smp_call_function_single-call-sequence.patch

 x86 stuff

-acpi-move-timer-broadcast-and-pmtimer-access-before-c3-arbiter-shutdown.patch
-clockevents-fix-typo-in-acpi_pmc.patch
-timekeeping-fixup-shadow-variable-argument.patch
-timerc-cleanup-recently-introduced-whitespace-damage.patch
-clockevents-remove-prototypes-of-removed-functions.patch
-clockevents-fix-resume-logic.patch
-clockevents-fix-device-replacement.patch
-tick-management-spread-timer-interrupt.patch
-highres-improve-debug-output.patch
-highres-improve-debug-output-fix.patch
-hrtimer-speedup-hrtimer_enqueue.patch
-pcspkr-use-the-global-pit-lock.patch
-ntp-move-the-cmos-update-code-into-ntpc.patch
-ntp-move-the-cmos-update-code-into-ntpc-fix.patch
-ntp-move-the-cmos-update-code-into-ntpc-fix-fix.patch
-i386-pit-stop-only-when-in-periodic-or-oneshot-mode.patch
-i386-remove-volatile-in-apicc.patch
-i386-hpet-assumes-boot-cpu-is-0.patch
-i386-move-pit-function-declarations-and-constants-to-correct-header-file.patch
-x86_64-untangle-asm-hpeth-from-asm-timexh.patch
-x86_64-use-generic-cmos-update.patch
-x86_64-remove-dead-code-and-other-janitor-work-in-tscc.patch
-x86_64-fix-apic-typo.patch
-x86_64-convert-to-cleckevents.patch
-acpi-remove-the-useless-ifdef-code.patch

 dynticks got lost

-ich-force-hpet-make-generic-time-capable-of-switching-broadcast-timer.patch
-ich-force-hpet-restructure-hpet-generic-clock-code.patch
-ich-force-hpet-ich7-or-later-quirk-to-force-detect-enable.patch
-ich-force-hpet-ich7-or-later-quirk-to-force-detect-enable-fix.patch
-ich-force-hpet-late-initialization-of-hpet-after-quirk.patch
-ich-force-hpet-ich5-quirk-to-force-detect-enable.patch
-ich-force-hpet-ich5-quirk-to-force-detect-enable-fix.patch
-ich-force-hpet-ich5-fix-a-bug-with-suspend-resume.patch
-ich-force-hpet-add-ich7_0-pciid-to-quirk-list.patch

 These died and need redoing.

+git-kgdb-arm-fix.patch
+git-kgdb-mips-fix.patch

 kgdb fixes

+sparsemem-clean-up-spelling-error-in-comments.patch
+sparsemem-record-when-a-section-has-a-valid-mem_map.patch
+sparsemem-record-when-a-section-has-a-valid-mem_map-fix.patch
+generic-virtual-memmap-support-for-sparsemem.patch
+x86_64-sparsemem_vmemmap-2m-page-size-support.patch
+ia64-sparsemem_vmemmap-16k-page-size-support.patch
+sparc64-sparsemem_vmemmap-support.patch
+ppc64-sparsemem_vmemmap-support.patch
+slubcearly_kmem_cache_node_alloc-shouldnt-be.patch
+during-vm-oom-condition-kill-all-threads-in-process-group.patch
+clean-up-duplicate-includes-in-include-linux-memory_hotplugh.patch
+clean-up-duplicate-includes-in-mm.patch
+readahead-compacting-file_ra_state.patch
+readahead-mmap-read-around-simplification.patch
+readahead-combine-file_ra_stateprev_index-prev_offset-into-prev_pos.patch
+readahead-combine-file_ra_stateprev_index-prev_offset-into-prev_pos-fix.patch
+readahead-combine-file_ra_stateprev_index-prev_offset-into-prev_pos-fix-2.patch
+radixtree-introduce-radix_tree_next_hole.patch
+readahead-basic-support-of-interleaved-reads.patch
+readahead-remove-the-local-copy-of-ra-in-do_generic_mapping_read.patch
+readahead-remove-several-readahead-macros.patch
+readahead-remove-the-limit-max_sectors_kb-imposed-on-max_readahead_kb.patch
+filemap-trivial-code-cleanups.patch
+filemap-convert-some-unsigned-long-to-pgoff_t.patch

 MM things

-fs-introduce-write_begin-write_end-and-perform_write-aops-fix.patch
-fs-introduce-write_begin-write_end-and-perform_write-aops-fix-2.patch
-fs-introduce-write_begin-write_end-and-perform_write-aops-fix-3.patch
-fs-introduce-write_begin-write_end-and-perform_write-aops-fix-4.patch
-fs-introduce-write_begin-write_end-and-perform_write-aops-fix-5.patch

 Folded into fs-introduce-write_begin-write_end-and-perform_write-aops.patch

+introduce-write_begin-write_end-aops-important-fix.patch
+deny-partial-write-for-loop-dev-fd.patch
+ext2-convert-to-new-aops-fix.patch
+reiserfs-convert-to-new-aops-fix.patch
+hostfs-convert-to-new-aops-fix.patch
+udf-convert-to-new-aops-fix.patch
+affs-convert-to-new-aops-fix.patch
+ocfs2-convert-to-new-aops.patch

 Fix the write-vs-pagefault deadlock fixes in -mm.

+fs-remove-some-aop_truncated_page.patch
+fs-remove-some-aop_truncated_page-fix.patch

 cleanup

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

 Folded into add-a-bitmap-that-is-used-to-track-flags-affecting-a-block-of-pages.patch

-maps2-move-the-page-walker-code-to-lib-fix.patch

 Folded into maps2-move-the-page-walker-code-to-lib.patch

+mmaps2-vma-out-of-mem_size_stats.patch
+maps2-make-proc-pid-smaps-optional-under-config_embeddedpatch.patch
+maps2-make-proc-pid-smaps-optional-under-config_embeddedpatch-fix.patch

 maps2 updates

+slub-slab-validation-move-tracking-information-alloc-outside-of-melstuff.patch
+memory-unplug-v7-memory-hotplug-cleanup.patch
+memory-unplug-v7-page-isolation.patch
+memory-unplug-v7-page-offline.patch
+memory-unplug-v7-ia64-interface.patch
+hugetlbfs-read-support.patch
+hugetlbfs-read-support-fix.patch

 More MM things

+security-convert-lsm-into-a-static-interface.patch
+security-convert-lsm-into-a-static-interface-fix.patch
+security-convert-lsm-into-a-static-interface-fix-2.patch
+security-convert-lsm-into-a-static-interface-fix-unionfs.patch

 Break LSMs

+file-capabilities-get_file_caps-cleanups.patch
+file-caps-update-selinux-xattr-hooks.patch
+file-capabilities-clear-caps-cleanup.patch
+file-capabilities-clear-caps-cleanup-fix.patch
+file-capabilities-change-xattr-format-v2.patch
+file-capabilities-change-fe-to-a-bool.patch
+file-caps-clean-up-for-linux-capabilityh.patch
+capabilityh-remove-include-of-currenth.patch

 More file-capabilities work

+pm-move-definition-of-struct-pm_ops-to-suspendh.patch
+pm-rename-struct-pm_ops-and-related-things.patch
+pm-rework-struct-platform_suspend_ops.patch
+pm-fix-compilation-of-suspend-code-if-config_pm-is-unset.patch
+pm-make-suspend_ops-static.patch
+pm-rework-struct-hibernation_ops.patch
+pm-rename-hibernation_ops-to-platform_hibernation_ops.patch
+freezer-document-relationship-with-memory-shrinking.patch
+freezer-do-not-sync-filesystems-from-freeze_processes.patch
+freezer-prevent-new-tasks-from-inheriting-tif_freeze-set.patch
+freezer-introduce-freezer-firendly-waiting-macros.patch
+freezer-do-not-send-signals-to-kernel-threads.patch

 PM udpates

+whitelist-references-from-__dbe_table-to-init.patch
+use-list_head-in-binfmt-handling.patch
+use-list_head-in-binfmt-handling-fix.patch
+make-unregister_binfmt-return-void.patch
+fix-user-struct-leakage-with-locked-ipc-shem-segment.patch
+bpqether-fix-rcu-usage.patch
+immunize-rcu_dereference-against-crazy-compiler-writers.patch
+remove-workaround-for-unimmunized-rcu_dereference-from-mce_log.patch
+afs-fix-file-locking.patch
+fix-leaks-on-proc-schedsched_debugtimer_listtimer_stats.patch
+fix-leak-on-proc-lockdep_stats.patch
+softlockup-use-cpu_clock-instead-of-sched_clock.patch
+fix-the-softlockup-watchdog-to-actually-work.patch
+softlockup-make-asm-irq_regsh-available-on-every-platform.patch
+softlockup-improve-debug-output.patch
+softlockup-watchdog-style-cleanups.patch
+softlockup-add-a-proc-tuning-parameter.patch
+softlockup-add-a-proc-tuning-parameter-fix.patch
+blktrace-use-cpu_clock-instead-of-sched_clock.patch
+futex-pass-nr_wake2-to-futex_wake_op.patch
+slab_panic-more-proc-posix-timers-shmem.patch
+zisofs-use-mutex-instead-of-semaphore.patch
+force-erroneous-inclusions-of-compiler-h-files-to-be-errors.patch
+force-erroneous-inclusions-of-compiler-h-files-to-be-errors-fix.patch
+# driver-for-the-atmel-on-chip-ssc-on-at32ap-and-at91.patch: exports?
+driver-for-the-atmel-on-chip-ssc-on-at32ap-and-at91.patch
+driver-for-the-atmel-on-chip-ssc-on-at32ap-and-at91-fix.patch
+include-serial_regh-with-userspace-headers.patch
+trivial-in-string-typos-of-error.patch
+unexport-asm-shmparamh.patch
+pure_initcall-id-inconsistency.patch
+serial-fix-section-mismatch-vr41xx_siu.patch
+serial-fix-vr41xx_siu-interface-select.patch
+serial-fix-vr41xx_siu-serial-console-support.patch
+remove-tx3912fb.patch
+# ext2-statfs-improvement-for-block-and-inode-free-count.patch: bad tradeoff?
+ext2-statfs-improvement-for-block-and-inode-free-count.patch
+sunrpc-convert-rpc_pipefs-to-use-the-generic-filesystem-notification-hooks.patch
+locks-kill-redundant-local-variable.patch
+isofs-mounting-to-regular-file-may-succeed.patch
+update-coredump-path-in-kernel-to-not-check-coredump-rlim-if-core_pattern-is-a-pipe.patch
+kill-declare_mutex_locked.patch
+serial-mpsc-remove-race-between-rx-stop-restart.patch
+serial-mpsc-stop-rx-engine-when-cread-cleared.patch
+serial-mpsc-remove-duplicate-support_sysrq-definition.patch
+serial-mpsc-fix-coding-style-and-whitespace-issues.patch
+i2ch-kernel-doc-additions.patch
+irqh-fix-kernel-doc.patch
+docbook-bad-file-references.patch
+add-kernel-notifierc.patch
+add-kernel-notifierc-fix.patch
+add-kernel-notifierc-fix-2.patch
+ipmi-fix-mem-leak-in-try_init_dmi.patch
+ncp-delete-test-of-long-deceased-config_ncpfs_debugdentry.patch
+nbd-use-list_for_each_entry_safe-to-make-it-more-consolidated-and-readable.patch
+nbd-change-a-parameters-type-to-remove-a-memcpy-call.patch
+fs-romfs-inodec-trivial-improvements.patch
+fs-mark-nibblemap-const.patch
+broken-lilo-check-on-make-install.patch
+remove-one-more-leftover-reference-to-devfs.patch
+anon_inodes-shouldnt-be-user-visible.patch
+hpettxt-broken-link-fix.patch
+use-__val-in-__get_unaligned.patch
+vfs-fix-a-race-in-lease-breaking-during-truncate.patch
+fs-9p-convc-error-path-fix.patch
+kconfig-make-instrumentation-support-non-experimental.patch
+faster-ext2_clear_inode.patch
+remove-unneded-lock_kernel-in-driver-block-loopc.patch
+loop-use-unlocked_ioctl.patch
+do_sys_poll-simplify-playing-with-on-stack-data.patch
+do_sys_poll-simplify-playing-with-on-stack-data-fix.patch
+do_poll-return-eintr-when-signalled.patch
+kthread-silence-bogus-section-mismatch-warning.patch
+fs-proc-mmuc-headers-butchery.patch
+fix-a-use-after-free-bug-in-kernel-userspace-relay-file-support.patch
+idr_remove_all-kill-unused-variable.patch
+typo-fixes-errror-error.patch
+i386-include-asm-bugsh-in-bugsc-for-check_bugs-prototype.patch
+x86_64-include-asm-bugsh-in-bugsc-for-check_bugs.patch
+mark-sysrq_sched_debug_show-static.patch
+i386-mark-pit_clockevent-static.patch
+cfs-mark-print_cfs_stats-static.patch
+sb1250-duart-__maybe_unused-etc-fixes.patch
+rename-setleast-to-generic_setlease.patch
+fs-use-kmem_cache_zalloc-instead.patch
+# remove-kconfig-setting-config_debug_shirq.patch: Ingo worried
+remove-kconfig-setting-config_debug_shirq.patch
+# debug-handling-of-early-spurious-interrupts.patch: akpm worried about non-shared handlers
+debug-handling-of-early-spurious-interrupts.patch
+videopix-frame-grabber-fix-unreleased-lock-in-vfc_debug.patch
+documentation-update-sched-stattxt.patch
+pcmcia-compactflash-driver-for-pa-semi-electra-boards.patch
+allow-individual-core-dump-methods-to-be-unlimited-when-sending-to-a-pipe.patch
+allow-individual-core-dump-methods-to-be-unlimited-when-sending-to-a-pipe-fix.patch
+allow-individual-core-dump-methods-to-be-unlimited-when-sending-to-a-pipe-sparc64-fix.patch
+allow-individual-core-dump-methods-to-be-unlimited-when-sending-to-a-pipe-fix-2.patch
+allow-individual-core-dump-methods-to-be-unlimited-when-sending-to-a-pipe-fix-2-fix.patch
+allow-individual-core-dump-methods-to-be-unlimited-when-sending-to-a-pipe-fix-2-sparc64-fix.patch
+remove-sysctlh-from-fsh.patch
+drivers-char-hpetc-integer-constant-is-too-large-for-long-type.patch
+clean-up-duplicate-includes-in-drivers-char.patch
+clean-up-duplicate-includes-in-drivers-w1.patch
+clean-up-duplicate-includes-in-fs.patch
+clean-up-duplicate-includes-in-fs-ecryptfs.patch
+clean-up-duplicate-includes-in-kernel.patch
+time-simplify-smp_call_function_single-call-sequence.patch
+kconfig-remove-top-level-menu-code-maturity-level-options.patch
+cciss-fix-memory-leak.patch
+# convert-ill-defined-log2-to-ilog2.patch: needs acks
+convert-ill-defined-log2-to-ilog2.patch
+udf-fix-uid-and-gid-mount-option-ignorance.patch
+ext2-show-all-mount-options.patch
+ext3-show-all-mount-options.patch
+ext4-show-all-mount-options.patch
+remove-unsafe-from-module-struct.patch
+report-the-per-irq-statistics-on-allarches.patch
+ip2main-warning-fix.patch

 Misc new patches

+writeback-fix-periodic-superblock-dirty-inode-flushing.patch

 Fix writeback some more

+clean-up-duplicate-includes-in-drivers-spi.patch
+spi-kerneldoc-update.patch
+spi-device-setup-gets-better-error-checking.patch

 SPi updates

+remove-isdn_-is-defined-but-unused-warnings.patch
+gigaset-remove-pointless-locking.patch

 i4l

+ecryptfs-add-key-list-structure-search-keyring.patch
+ecryptfs-use-list_for_each_entry_safe-when-wiping-auth-toks.patch
+ecryptfs-kmem_cache-objects-for-multiple-keys-init-exit-functions.patch
+ecryptfs-fix-tag-1-parsing-code.patch
+ecryptfs-fix-tag-3-parsing-code.patch
+ecryptfs-fix-tag-11-parsing-code.patch
+ecryptfs-fix-tag-11-writing-code.patch
+ecryptfs-update-comment-and-debug-statement.patch
+ecryptfs-printk-warning-fixes.patch

 ecryptfs feature work

+rtc_irq_set_freq-requires-power-of-two-and-associated-kerneldoc.patch
+use-menuconfig-objects-rtc.patch
+no-need-to-convert-file-private_data-to-rtc-device.patch
+rtc-m48t59-driver-no_irq-mode-fixup.patch

 RTC udpates

+floppy-do-a-very-minimal-style-cleanup-of-the-floppy-driver.patch
+floppy-remove-dead-commented-out-code-from-floppy-driver.patch
+floppy-remove-register-keyword-use-from-floppy-driver.patch

 floppy.c cleanup

+ext4-ext4-journal_chksum-2620.patch
+ext4-64-bit-i_version.patch
+ext4-ext4_i_version_hi_2.patch
+ext4-i_version_update_ext4.patch
+ext4-jbd-stats-through-procfs.patch
+ext4-jbd-stats-through-procfs_fix.patch
+ext4-ext4_block_reservation_fix3.patch
+ext4-ext4_reserve_global_return_error_fix.patch
+ext4-ext4_rebalance_reservation_invariant_checking_fix.patch
+ext4-ext4_delalloc_setpageprivate_fix.patch

 ext4 tree updates

+64-bit-i_version-afs-fixes.patch

 fix it

-mm-implement-swap-prefetching-make-mm-swap_prefetchcremove_from_swapped_list.patch
-swap-prefetch-avoid-repeating-entry.patch
-mm-swap-prefetch-improvements.patch
-mm-swap-prefetch-more-improvements.patch
-mm-swap-prefetch-increase-aggressiveness-and-tunability.patch

 Folded into mm-implement-swap-prefetching.patch

+clean-up-duplicate-includes-in-documentation.patch

 cleanup

-containersv10-basic-container-framework.patch
-containersv10-basic-container-framework-fix.patch
-containersv10-basic-container-framework-fix-2.patch
-containersv10-basic-container-framework-fix-3.patch
-containersv10-basic-container-framework-fix-for-bad-lock-balance-in-containers.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-tasks-file-interface-fix-2.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-make-cpusets-a-client-of-containers-whitespace.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-share-css_group-arrays-between-tasks-with-same-container-memberships-cpuset-zero-malloc-fix-for-new-containers.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
-containersv10-support-for-automatic-userspace-release-agents-whitespace.patch
+task-containersv11-basic-task-container-framework.patch
+task-containersv11-add-tasks-file-interface.patch
+task-containersv11-add-fork-exit-hooks.patch
+task-containersv11-add-container_clone-interface.patch
+task-containersv11-add-procfs-interface.patch
+task-containersv11-shared-container-subsystem-group-arrays.patch
+task-containersv11-automatic-userspace-notification-of-idle-containers.patch
+task-containersv11-make-cpusets-a-client-of-containers.patch
+task-containersv11-example-cpu-accounting-subsystem.patch
+task-containersv11-simple-task-container-debug-info-subsystem.patch
-containers-implement-subsys-post_clone.patch
-containers-implement-namespace-tracking-subsystem-v3.patch
+containers-implement-namespace-tracking-subsystem.patch

 New containers patch series

+pid-namespaces-round-up-the-api.patch
+pid-namespaces-make-get_pid_ns-return-the-namespace-itself.patch
+pid-namespaces-dynamic-kmem-cache-allocator-for-pid-namespaces.patch
+pid-namespaces-dynamic-kmem-cache-allocator-for-pid-namespaces-fix.patch
+pid-namespaces-define-and-use-task_active_pid_ns-wrapper.patch
+pid-namespaces-rename-child_reaper-function.patch
+pid-namespaces-use-task_pid-to-find-leaders-pid.patch
+pid-namespaces-define-is_global_init-and-is_container_init.patch
+pid-namespaces-define-is_global_init-and-is_container_init-fix.patch
+pid-namespaces-move-alloc_pid-to-copy_process.patch

 pid namespaces

+workqueue-debug-flushing-deadlocks-with-lockdep.patch
+workqueue-debug-work-related-deadlocks-with-lockdep.patch

 workqueue stuff

+fs-file_tablec-use-list_for_each_entry-instead-of-list_for_each.patch
+fs-eventpollc-use-list_for_each_entry-instead-of-list_for_each.patch
+fs-superc-use-list_for_each_entry-instead-of-list_for_each.patch
+fs-superc-use-list_for_each_entry-instead-of-list_for_each-fix.patch
+fs-locksc-use-list_for_each_entry-instead-of-list_for_each.patch
+kernel-exitc-use-list_for_each_entry_safe-instead-of-list_for_each_safe.patch
+kernel-time-clocksourcec-use-list_for_each_entry-instead-of-list_for_each.patch
+mm-oom_killc-use-list_for_each_entry-instead-of-list_for_each.patch
+kernel-userc-use-list_for_each_entry-instead-of-list_for_each.patch
+whitespace-fixes-time-syscalls.patch
+whitespace-fixes-process-accounting.patch
+whitespace-fixes-cpuset.patch
+whitespace-fixes-relayfs.patch
+whitespace-fixes-audit-filtering.patch
+whitespace-fixes-dma-channel-allocator.patch
+whitespace-fixes-fork.patch
+whitespace-fixes-module-loading.patch
+whitespace-fixes-panic-handling.patch
+whitespace-fixes-capability-syscalls.patch
+whitespace-fixes-syscall-auditing.patch
+whitespace-fixes-compat-syscalls.patch
+whitespace-fixes-system-auditing.patch
+whitespace-fixes-execution-domains.patch
+whitespace-fixes-interval-timers.patch
+whitespace-fixes-system-timers.patch
+whitespace-fixes-task-exit-handling.patch
+the-next-round-of-scheduled-oss-code-removal.patch

 cleanups

-reiser4-export-radix_tree_preload.patch
-reiser4-fix.patch
-reiser4-use-zero_user_page.patch
-reiser4-remove-typedefs.patch
-reiser4-fix-write_extent.patch
-reiser4-make-sync_inodes-non-void.patch
+reiser4-fix-extent2tail.patch
+reiser4-fix-read_tail.patch
+reiser4-fix-unix-file-readpages-filler.patch
+git-block-vs-reiser4.patch

 reiser4 consolidation and fixes

-update-page-order-at-an-appropriate-time-when-tracking-page_owner.patch
-print-out-page_owner-statistics-in-relation-to-fragmentation-avoidance.patch
-allow-page_owner-to-be-set-on-any-architecture.patch
-allow-page_owner-to-be-set-on-any-architecture-fix.patch

 Folded into page-owner-tracking-leak-detector.patch

-beeping-patch-for-debugging-acpi-sleep.patch

 Dropped

-squash-ipc-warnings.patch
-random-warning-squishes.patch

 Dropped.


All 782 patches:

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


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

* Re: 2.6.23-rc1-mm1
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-25 12:25 ` Cedric Le Goater
  2007-07-25 17:23   ` 2.6.23-rc1-mm1 Len Brown
  2007-07-25 12:40 ` 2.6.23-rc1-mm1 Cedric Le Goater
                   ` (32 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Cedric Le Goater @ 2007-07-25 12:25 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Shaohua Li

Hello,

Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/

I'm having issue compiling on i386 and x86_64. 

make defconfig on i386  :

  LD      init/built-in.o
  LD      .tmp_vmlinux1
drivers/built-in.o(.text+0x9649): In function `acpi_pci_choose_state':
: undefined reference to `acpi_pm_device_sleep_state'
drivers/built-in.o(.text+0x3b2f5): In function `pnpacpi_suspend':
: undefined reference to `acpi_pm_device_sleep_state'

probably this commit fd4aff1a28eecbd729b409bf7d3eff5948f20414 in the acpi tree.

Thanks,

C.

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
  2007-07-25 12:25 ` 2.6.23-rc1-mm1 Cedric Le Goater
@ 2007-07-25 12:40 ` Cedric Le Goater
  2007-07-25 20:05   ` 2.6.23-rc1-mm1 Andrew Morton
  2007-07-25 12:55 ` 2.6.23-rc1-mm1 Cedric Le Goater
                   ` (31 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Cedric Le Goater @ 2007-07-25 12:40 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Michael Buesch

Hello,

Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/

found that one on ppc,

drivers/char/hw_random/pasemi-rng.c:140: error: unknown field 'type' specified in initializer
drivers/char/hw_random/pasemi-rng.c:140: warning: initialization makes pointer from integer without a cast

hwrng-add-type-categories.patch modifies a struct of the wrong type.

the pasemi-rng driver registers a 'of_platform_driver' not a 'hwrng'.

cheers,

C.

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
  2007-07-25 12:25 ` 2.6.23-rc1-mm1 Cedric Le Goater
  2007-07-25 12:40 ` 2.6.23-rc1-mm1 Cedric Le Goater
@ 2007-07-25 12:55 ` Cedric Le Goater
  2007-07-25 13:48   ` 2.6.23-rc1-mm1: chipsfb_pci_suspend problem Rafael J. Wysocki
  2007-07-25 13:36 ` [-mm patch] one e1000 driver should be enough for everyone Adrian Bunk
                   ` (30 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Cedric Le Goater @ 2007-07-25 12:55 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Rafael J. Wysocki

Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/

from pm-move-definition-of-struct-pm_ops-to-suspendh.patch :

drivers/video/chipsfb.c: In function 'chipsfb_pci_suspend':
drivers/video/chipsfb.c:461: error: 'PM_SUSPEND_MEM' undeclared (first use in this function)
drivers/video/chipsfb.c:461: error: (Each undeclared identifier is reported only once
drivers/video/chipsfb.c:461: error: for each function it appears in.)

Cheers,

C.

Signed-off-by: Cedric Le Goater <clg@fr.ibm.com>
---
 drivers/video/chipsfb.c |    1 +
 1 file changed, 1 insertion(+)

Index: 2.6.23-rc1-mm1/drivers/video/chipsfb.c
===================================================================
--- 2.6.23-rc1-mm1.orig/drivers/video/chipsfb.c
+++ 2.6.23-rc1-mm1/drivers/video/chipsfb.c
@@ -27,6 +27,7 @@
 #include <linux/init.h>
 #include <linux/pci.h>
 #include <linux/console.h>
+#include <linux/suspend.h>
 #include <asm/io.h>
 
 #ifdef CONFIG_PMAC_BACKLIGHT


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

* [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (2 preceding siblings ...)
  2007-07-25 12:55 ` 2.6.23-rc1-mm1 Cedric Le Goater
@ 2007-07-25 13:36 ` Adrian Bunk
  2007-07-25 13:48   ` Jeff Garzik
  2007-07-25 16:32 ` 2.6.23-rc1-mm1 Michal Piotrowski
                   ` (29 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 13:36 UTC (permalink / raw)
  To: Andrew Morton, Auke Kok, jgarzik; +Cc: linux-kernel, e1000-devel, netdev

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
>  git-e1000new.patch
>...
>  git trees
>...

Both e1000 drivers compiled into the kernel resulted in the following 
compile error:

<--  snip  -->

...
  LD      drivers/net/built-in.o
drivers/net/e1000/built-in.o: In function `e1000_read_mac_addr':
(.text+0xb9f2): multiple definition of `e1000_read_mac_addr'
drivers/net/e1000new/built-in.o:(.text+0x821a): first defined here
drivers/net/e1000/built-in.o: In function `e1000_phy_setup_autoneg':
(.text+0x8799): multiple definition of `e1000_phy_setup_autoneg'
drivers/net/e1000new/built-in.o:(.text+0xa9bd): first defined here
...
make[3]: *** [drivers/net/built-in.o] Error 1

<--  snip  -->

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

---

BTW:
Unless I'm misunderstanding anything, the new driver should support a 
superset of what the old driver supported.
Therefore, it would be good if the final merge into Linus' tree will
do an
  rm -r drivers/net/e1000
  mv drivers/net/e1000new drivers/net/e1000

--- linux-2.6.23-rc1-mm1/drivers/net/Kconfig.old	2007-07-25 15:06:13.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/net/Kconfig	2007-07-25 15:09:59.000000000 +0200
@@ -2036,7 +2036,7 @@
 
 config E1000
 	tristate "Intel(R) PRO/1000 Gigabit Ethernet support"
-	depends on PCI
+	depends on PCI && E1000NEW=n
 	---help---
 	  This driver supports Intel(R) PRO/1000 gigabit ethernet family of
 	  adapters.  For more information on how to identify your adapter, go 


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

* Re: 2.6.23-rc1-mm1: chipsfb_pci_suspend problem
  2007-07-25 12:55 ` 2.6.23-rc1-mm1 Cedric Le Goater
@ 2007-07-25 13:48   ` Rafael J. Wysocki
  2007-07-25 20:22     ` Andrew Morton
  0 siblings, 1 reply; 132+ messages in thread
From: Rafael J. Wysocki @ 2007-07-25 13:48 UTC (permalink / raw)
  To: Cedric Le Goater; +Cc: Andrew Morton, linux-kernel, Pavel Machek

On Wednesday, 25 July 2007 14:55, Cedric Le Goater wrote:
> Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 
> from pm-move-definition-of-struct-pm_ops-to-suspendh.patch :
> 
> drivers/video/chipsfb.c: In function 'chipsfb_pci_suspend':
> drivers/video/chipsfb.c:461: error: 'PM_SUSPEND_MEM' undeclared (first use in this function)
> drivers/video/chipsfb.c:461: error: (Each undeclared identifier is reported only once
> drivers/video/chipsfb.c:461: error: for each function it appears in.)

Well, actually, this is a bug in chipsfb.c, as it shouldn't use PM_SUSPEND_MEM
in there, but PMSG_SUSPEND (patch untested).

Greetings,
Rafael


---
 drivers/video/chipsfb.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.23-rc1/drivers/video/chipsfb.c
===================================================================
--- linux-2.6.23-rc1.orig/drivers/video/chipsfb.c
+++ linux-2.6.23-rc1/drivers/video/chipsfb.c
@@ -458,7 +458,7 @@ static int chipsfb_pci_suspend(struct pc
 
 	if (state.event == pdev->dev.power.power_state.event)
 		return 0;
-	if (state.event != PM_SUSPEND_MEM)
+	if (state != PMSG_SUSPEND)
 		goto done;
 
 	acquire_console_sem();

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

* Re: [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 13:36 ` [-mm patch] one e1000 driver should be enough for everyone Adrian Bunk
@ 2007-07-25 13:48   ` Jeff Garzik
  2007-07-25 14:46     ` Adrian Bunk
  0 siblings, 1 reply; 132+ messages in thread
From: Jeff Garzik @ 2007-07-25 13:48 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Auke Kok, linux-kernel, e1000-devel, netdev

Adrian Bunk wrote:
> BTW:
> Unless I'm misunderstanding anything, the new driver should support a 
> superset of what the old driver supported.
> Therefore, it would be good if the final merge into Linus' tree will
> do an
>   rm -r drivers/net/e1000
>   mv drivers/net/e1000new drivers/net/e1000

Based on the most recent discussion, e1000new (or whatever it will be 
called) should support only the newer PCI-Express chips, while e1000 
will retain support for the older chips.

Over the long term this will allow e1000new to grow without affecting 
support for the older, stable chips.

So, e1000 is not going away.

	Jeff



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

* Re: [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 13:48   ` Jeff Garzik
@ 2007-07-25 14:46     ` Adrian Bunk
  2007-07-25 15:05       ` Jeff Garzik
  0 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 14:46 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Andrew Morton, Auke Kok, linux-kernel, e1000-devel, netdev

On Wed, Jul 25, 2007 at 09:48:55AM -0400, Jeff Garzik wrote:
> Adrian Bunk wrote:
>> BTW:
>> Unless I'm misunderstanding anything, the new driver should support a 
>> superset of what the old driver supported.
>> Therefore, it would be good if the final merge into Linus' tree will
>> do an
>>   rm -r drivers/net/e1000
>>   mv drivers/net/e1000new drivers/net/e1000
>
> Based on the most recent discussion, e1000new (or whatever it will be 
> called) should support only the newer PCI-Express chips, while e1000 will 
> retain support for the older chips.

I found the discussion, and Christoph's e1000e sounds like the best name 
("new" doesn't say whether it's a new driver for old hardware or a 
driver for new hardware).

> Over the long term this will allow e1000new to grow without affecting 
> support for the older, stable chips.
>
> So, e1000 is not going away.

No problem for me, but this obviously implies that global code in the 
new driver has to be renamed.

And please ensure that they will always support distinct PCI IDs, or 
there will be the following common pattern if both drivers support
a card:
- user tries driver A
- driver A doesn't work (although it should have worked)
- user tries driver B
- driver B works
- a later kernel removes support for this card from driver B
- user tries driver A
- driver A still doesn't work
- user writes bug report

Users should report bugs early instead of bouncing between different 
drivers.

> 	Jeff

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] 132+ messages in thread

* Re: [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 14:46     ` Adrian Bunk
@ 2007-07-25 15:05       ` Jeff Garzik
  2007-07-25 15:21         ` Kok, Auke
  0 siblings, 1 reply; 132+ messages in thread
From: Jeff Garzik @ 2007-07-25 15:05 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Auke Kok, linux-kernel, e1000-devel, netdev

Adrian Bunk wrote:
> I found the discussion, and Christoph's e1000e sounds like the best name 
> ("new" doesn't say whether it's a new driver for old hardware or a 
> driver for new hardware).

Yeah, I think "e1000new" is a lame name.

e1000e is good, or even e1001e if we wanted even more symmetry :)


> No problem for me, but this obviously implies that global code in the 
> new driver has to be renamed.

Yes.  A global namespace is a global namespace.


> And please ensure that they will always support distinct PCI IDs, or 
> there will be the following common pattern if both drivers support
> a card:

IIRC I think Auke said there is some minor PCI ID overlap that must be 
addressed in the transition.  Disappointing and it raises transition 
issues, but that's the way the split falls out naturally AFAICS.

	Jeff



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

* Re: [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 15:05       ` Jeff Garzik
@ 2007-07-25 15:21         ` Kok, Auke
  2007-07-25 15:23           ` Jeff Garzik
  2007-07-25 20:50           ` Andrew Morton
  0 siblings, 2 replies; 132+ messages in thread
From: Kok, Auke @ 2007-07-25 15:21 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Adrian Bunk, Andrew Morton, linux-kernel, e1000-devel, netdev

Jeff Garzik wrote:
> Adrian Bunk wrote:
>> I found the discussion, and Christoph's e1000e sounds like the best name 
>> ("new" doesn't say whether it's a new driver for old hardware or a 
>> driver for new hardware).
> 
> Yeah, I think "e1000new" is a lame name.

Moreover, Andrew should probably just drop this driver from -mm for now.

> e1000e is good, or even e1001e if we wanted even more symmetry :)

I'm working on "e1000e" right now...

>> No problem for me, but this obviously implies that global code in the 
>> new driver has to be renamed.
> 
> Yes.  A global namespace is a global namespace.

yes, these are some of the kinks I still need to address. Allthough minor, it's 
going to take me some time to get it to the first step before I want to submit 
it (patience :))

>> And please ensure that they will always support distinct PCI IDs, or 
>> there will be the following common pattern if both drivers support
>> a card:
> 
> IIRC I think Auke said there is some minor PCI ID overlap that must be 
> addressed in the transition.  Disappointing and it raises transition 
> issues, but that's the way the split falls out naturally AFAICS.

I'll submit it with only ich9 id's at first, but it will be able to drive (sysfs 
bind) to some other devices too. This allows me to keep an eye out on the future 
structure that I want to give it without removing too much code that I might 
then later have to add back.

Auke

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

* Re: [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 15:21         ` Kok, Auke
@ 2007-07-25 15:23           ` Jeff Garzik
  2007-07-25 20:50           ` Andrew Morton
  1 sibling, 0 replies; 132+ messages in thread
From: Jeff Garzik @ 2007-07-25 15:23 UTC (permalink / raw)
  To: Kok, Auke; +Cc: Adrian Bunk, Andrew Morton, linux-kernel, e1000-devel, netdev

Kok, Auke wrote:
> I'm working on "e1000e" right now...

Cool :)


> I'll submit it with only ich9 id's at first, but it will be able to 
> drive (sysfs bind) to some other devices too. This allows me to keep an 
> eye out on the future structure that I want to give it without removing 
> too much code that I might then later have to add back.

Sounds good to me...

	Jeff




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

* Re: 2.6.23-rc1-mm1
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (3 preceding siblings ...)
  2007-07-25 13:36 ` [-mm patch] one e1000 driver should be enough for everyone Adrian Bunk
@ 2007-07-25 16:32 ` Michal Piotrowski
  2007-07-25 21:56   ` 2.6.23-rc1-mm1 Andrew Morton
  2007-07-25 16:36 ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
                   ` (28 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Michal Piotrowski @ 2007-07-25 16:32 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, reiserfs-devel

Andrew Morton pisze:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 

nokturn vs. reiserfs 1:0

[ 1228.964379] =============================================
[ 1228.971271] [ INFO: possible recursive locking detected ]
[ 1228.976674] 2.6.23-rc1-mm1 #1
[ 1228.979655] ---------------------------------------------
[ 1228.985064] chcon/21470 is trying to acquire lock:
[ 1228.989858]  (&inode->i_mutex){--..}, at: [<c06993ea>] mutex_lock+0x1c/0x1f
[ 1228.996968] 
[ 1228.996972] but task is already holding lock:
[ 1229.002834]  (&inode->i_mutex){--..}, at: [<c06993ea>] mutex_lock+0x1c/0x1f
[ 1229.009958] 
[ 1229.009962] other info that might help us debug this:
[ 1229.016510] 3 locks held by chcon/21470:
[ 1229.020434]  #0:  (&inode->i_mutex){--..}, at: [<c06993ea>] mutex_lock+0x1c/0x1f
[ 1229.027971]  #1:  (&REISERFS_I(inode)->xattr_sem){----}, at: [<fdd59d36>] reiserfs_setxattr+0x54/0xf2 [reiserfs]
[ 1229.038282]  #2:  (&REISERFS_SB(s)->xattr_dir_sem){----}, at: [<fdd59d55>] reiserfs_setxattr+0x73/0xf2 [reiserfs]
[ 1229.048682] 
[ 1229.048687] stack backtrace:
[ 1229.053070]  [<c04053eb>] show_trace_log_lvl+0x1a/0x30
[ 1229.058254]  [<c0406073>] show_trace+0x12/0x14
[ 1229.062734]  [<c04061a8>] dump_stack+0x16/0x18
[ 1229.067222]  [<c044c887>] __lock_acquire+0xe19/0x125c
[ 1229.072309]  [<c044cd71>] lock_acquire+0xa7/0xc1
[ 1229.076967]  [<c069908e>] __mutex_lock_slowpath+0x9b/0x3db
[ 1229.082493]  [<c06993ea>] mutex_lock+0x1c/0x1f
[ 1229.086972]  [<fdd5a2d1>] reiserfs_xattr_set+0x14c/0x2db [reiserfs]
[ 1229.093281]  [<fdd5a7e2>] security_set+0x4d/0x51 [reiserfs]
[ 1229.098898]  [<fdd59d6d>] reiserfs_setxattr+0x8b/0xf2 [reiserfs]
[ 1229.104950]  [<c04aee43>] vfs_setxattr+0x8a/0x199
[ 1229.109696]  [<c04aefcf>] setxattr+0x7d/0x109
[ 1229.114087]  [<c04af0ec>] sys_setxattr+0x41/0x53
[ 1229.118737]  [<c04043ba>] syscall_call+0x7/0xb
[ 1229.123215]  =======================
[ 1229.249502] chcon used greatest stack depth: 1080 bytes left

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

Regards,
Michal

-- 
LOG
http://www.stardust.webpages.pl/log/

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

* Re: 2.6.23-rc1-mm1 -- mostly fails to build
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (4 preceding siblings ...)
  2007-07-25 16:32 ` 2.6.23-rc1-mm1 Michal Piotrowski
@ 2007-07-25 16:36 ` Andy Whitcroft
  2007-07-25 17:04   ` Sam Ravnborg
                     ` (2 more replies)
  2007-07-25 18:15 ` 2.6.23-rc1-mm1: net/ipv4/fib_trie.c compile error Adrian Bunk
                   ` (27 subsequent siblings)
  33 siblings, 3 replies; 132+ messages in thread
From: Andy Whitcroft @ 2007-07-25 16:36 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Steve Fox, Mel Gorman

Of the machines we test releases on automatically this only compiles on
NUMA-Q and does not boot there (some PCI issue).


ppc64 (beavis):

drivers/built-in.o(.text+0xd2784): In function `.srp_rport_add':
: undefined reference to `.scsi_tgt_it_nexus_create'
drivers/built-in.o(.text+0xd2884): In function `.srp_rport_del':
: undefined reference to `.scsi_tgt_it_nexus_destroy'
make: *** [.tmp_vmlinux1] Error 1


x86_64 (bl6-13):

ERROR: "scsi_tgt_it_nexus_destroy" [drivers/scsi/scsi_transport_srp.ko]
undefined!
ERROR: "scsi_tgt_it_nexus_create" [drivers/scsi/scsi_transport_srp.ko]
undefined!
make[1]: *** [__modpost] Error 1


ia64 (elm3a170):

drivers/built-in.o: In function `acpi_pci_choose_state':
pci-acpi.c:(.text+0x18d02): undefined reference to
`acpi_pm_device_sleep_state'
drivers/built-in.o: In function `pnpacpi_suspend':
core.c:(.text+0x86ec2): undefined reference to `acpi_pm_device_sleep_state'
make: *** [.tmp_vmlinux1] Error 1



ia64 (elm3b10):

  LD      vmlinux.o
ld: dynreloc miscount for kernel/built-in.o, section .opd
ld: can not edit opd Bad value
make: *** [vmlinux.o] Error 1


ppc64 (gekko-lp1):

drivers/built-in.o(.text+0x8d68): In function `acpi_pci_choose_state':
: undefined reference to `acpi_pm_device_sleep_state'
drivers/built-in.o(.text+0x3b773): In function `pnpacpi_suspend':
: undefined reference to `acpi_pm_device_sleep_state'
make: *** [.tmp_vmlinux1] Error 1


Will investigate the NUMA-Q explosion and report on that separatly.

-apw

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

* Re: 2.6.23-rc1-mm1 -- mostly fails to build
  2007-07-25 16:36 ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
@ 2007-07-25 17:04   ` Sam Ravnborg
  2007-07-25 18:06   ` 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error Adrian Bunk
  2007-07-25 22:41   ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
  2 siblings, 0 replies; 132+ messages in thread
From: Sam Ravnborg @ 2007-07-25 17:04 UTC (permalink / raw)
  To: Andy Whitcroft; +Cc: Andrew Morton, linux-kernel, Steve Fox, Mel Gorman

On Wed, Jul 25, 2007 at 05:36:56PM +0100, Andy Whitcroft wrote:
> ia64 (elm3b10):
> 
>   LD      vmlinux.o
> ld: dynreloc miscount for kernel/built-in.o, section .opd
> ld: can not edit opd Bad value
> make: *** [vmlinux.o] Error 1

On powerpc we had something similar. It was a binutils bug
(see: http://article.gmane.org/gmane.comp.gnu.binutils/33650)

I tracked it down to be fixed by the following:

diff --git a/include/linux/mm.h b/include/linux/mm.h
index c456c3a..2ea222f 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -1246,7 +1246,7 @@ void drop_slab(void);
 extern int randomize_va_space;
 #endif
 
-__attribute__((weak)) const char *arch_vma_name(struct vm_area_struct *vma);
+//__attribute__((weak)) const char *arch_vma_name(struct vm_area_struct *vma);
 
 #endif /* __KERNEL__ */
 #endif /* _LINUX_MM_H */



This is obviously just a quick hack and I used brutal force
to find out how to fix it - but does not yet understand why this
weak prototype cause the bug.

	Sam

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 12:25 ` 2.6.23-rc1-mm1 Cedric Le Goater
@ 2007-07-25 17:23   ` Len Brown
  2007-07-25 18:58     ` 2.6.23-rc1-mm1 Andrew Morton
  0 siblings, 1 reply; 132+ messages in thread
From: Len Brown @ 2007-07-25 17:23 UTC (permalink / raw)
  To: Cedric Le Goater, Andrew Morton; +Cc: linux-kernel, Shaohua Li

On Wednesday 25 July 2007 08:25, Cedric Le Goater wrote:
> Hello,
> 
> Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 
> I'm having issue compiling on i386 and x86_64. 
> 
> make defconfig on i386  :
> 
>   LD      init/built-in.o
>   LD      .tmp_vmlinux1
> drivers/built-in.o(.text+0x9649): In function `acpi_pci_choose_state':
> : undefined reference to `acpi_pm_device_sleep_state'
> drivers/built-in.o(.text+0x3b2f5): In function `pnpacpi_suspend':
> : undefined reference to `acpi_pm_device_sleep_state'
> 
> probably this commit fd4aff1a28eecbd729b409bf7d3eff5948f20414 in the acpi tree.

Looks like mm's git-acpi.patch is missing a few things that are in the latest acpi tree.
Apparently I exposed this issue to Andrew before I exposed the fix, and he got the
former, but not the later -- my fault.

The root problem is that CONFIG_ACPI_SLEEP is not set in defconfig,
and it is not set because CONFIG_SMP=y, but CONFIG_HOTPLUG_CPU=n

So tweaking that will get i386 and x86_64 building.  However, it will not fix ia64.
For that, the changes in the latest acpi tree are necessary.

Andrew, you want to re-pull the acpi tree, or do you want me to send
you some patches on top of the current mm?

-Len

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

* 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error
  2007-07-25 16:36 ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
  2007-07-25 17:04   ` Sam Ravnborg
@ 2007-07-25 18:06   ` Adrian Bunk
  2007-07-26 10:49     ` FUJITA Tomonori
  2007-07-25 22:41   ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
  2 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 18:06 UTC (permalink / raw)
  To: Andy Whitcroft, FUJITA Tomonori, Mike Christie, James.Bottomley
  Cc: Andrew Morton, linux-kernel, Steve Fox, Mel Gorman, linux-scsi

On Wed, Jul 25, 2007 at 05:36:56PM +0100, Andy Whitcroft wrote:
> Of the machines we test releases on automatically this only compiles on
> NUMA-Q and does not boot there (some PCI issue).
> 
> 
> ppc64 (beavis):
> 
> drivers/built-in.o(.text+0xd2784): In function `.srp_rport_add':
> : undefined reference to `.scsi_tgt_it_nexus_create'
> drivers/built-in.o(.text+0xd2884): In function `.srp_rport_del':
> : undefined reference to `.scsi_tgt_it_nexus_destroy'
> make: *** [.tmp_vmlinux1] Error 1
> 
> 
> x86_64 (bl6-13):
> 
> ERROR: "scsi_tgt_it_nexus_destroy" [drivers/scsi/scsi_transport_srp.ko]
> undefined!
> ERROR: "scsi_tgt_it_nexus_create" [drivers/scsi/scsi_transport_srp.ko]
> undefined!
> make[1]: *** [__modpost] Error 1
>...

Caused-By  : git-scsi-target.patch
Workaround : enable CONFIG_SCSI_TGT

Is there any good reason why all the SCSI transport attributes options 
are user visible?

With an answer to this question I can fix this bug.

> -apw

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] 132+ messages in thread

* 2.6.23-rc1-mm1: net/ipv4/fib_trie.c compile error
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (5 preceding siblings ...)
  2007-07-25 16:36 ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
@ 2007-07-25 18:15 ` Adrian Bunk
  2007-07-25 18:22 ` 2.6.23-rc1-mm1: reiser4 <-> lzo " Adrian Bunk
                   ` (26 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 18:15 UTC (permalink / raw)
  To: Andrew Morton, Paul E. McKenney, Ingo Molnar, Josh Triplett
  Cc: linux-kernel, netdev

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +immunize-rcu_dereference-against-crazy-compiler-writers.patch
>...
>  Misc new patches
>...

This patch causes the following compile error:

<--  snip  -->

...
  CC      net/ipv4/fib_trie.o
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc1-mm1/net/ipv4/fib_trie.c: In function ‘trie_rebalance’:
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc1-mm1/net/ipv4/fib_trie.c:969: error: lvalue required as unary ‘&’ operand
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc1-mm1/net/ipv4/fib_trie.c:971: error: lvalue required as unary ‘&’ operand
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc1-mm1/net/ipv4/fib_trie.c:977: error: lvalue required as unary ‘&’ operand
/home/bunk/linux/kernel-2.6/linux-2.6.23-rc1-mm1/net/ipv4/fib_trie.c:980: error: lvalue required as unary ‘&’ operand
...
make[3]: *** [net/ipv4/fib_trie.o] Error 1

<--  snip  -->


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] 132+ messages in thread

* 2.6.23-rc1-mm1: reiser4 <-> lzo compile error
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (6 preceding siblings ...)
  2007-07-25 18:15 ` 2.6.23-rc1-mm1: net/ipv4/fib_trie.c compile error Adrian Bunk
@ 2007-07-25 18:22 ` Adrian Bunk
  2007-07-25 18:44   ` Edward Shishkin
  2007-07-27 12:35   ` Edward Shishkin
  2007-07-25 18:48 ` 2.6.23-rc1-mm1 Michal Piotrowski
                   ` (25 subsequent siblings)
  33 siblings, 2 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 18:22 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, reiserfs-devel

<--  snip  -->

...
  LD      .tmp_vmlinux1
lib/built-in.o: In function `lzo1x_1_compress':
(.text+0x13eae): multiple definition of `lzo1x_1_compress'
fs/built-in.o:(.text+0x117075): first defined here
make[1]: *** [.tmp_vmlinux1] Error 1

<--  snip  -->

AFAIR, we once had a patch in -mm changing reiser4 to use the
LZO code that is now in the kernel?

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] 132+ messages in thread

* Re: 2.6.23-rc1-mm1: reiser4 <-> lzo compile error
  2007-07-25 18:22 ` 2.6.23-rc1-mm1: reiser4 <-> lzo " Adrian Bunk
@ 2007-07-25 18:44   ` Edward Shishkin
  2007-07-27 12:35   ` Edward Shishkin
  1 sibling, 0 replies; 132+ messages in thread
From: Edward Shishkin @ 2007-07-25 18:44 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, linux-kernel, reiserfs-devel

Adrian Bunk wrote:

><--  snip  -->
>
>...
>  LD      .tmp_vmlinux1
>lib/built-in.o: In function `lzo1x_1_compress':
>(.text+0x13eae): multiple definition of `lzo1x_1_compress'
>fs/built-in.o:(.text+0x117075): first defined here
>make[1]: *** [.tmp_vmlinux1] Error 1
>
><--  snip  -->
>
>AFAIR, we once had a patch in -mm changing reiser4 to use the
>LZO code that is now in the kernel?
>  
>

Yup, I'll take a look..

>cu
>Adrian
>
>  
>


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

* Re: 2.6.23-rc1-mm1
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (7 preceding siblings ...)
  2007-07-25 18:22 ` 2.6.23-rc1-mm1: reiser4 <-> lzo " Adrian Bunk
@ 2007-07-25 18:48 ` Michal Piotrowski
  2007-07-25 18:53   ` 2.6.23-rc1-mm1 Sam Ravnborg
  2007-07-25 20:42 ` 2.6.23-rc1-mm1 - drivers/char/nozomi.c overflow in implicit constant conversion , warnings Gabriel C
                   ` (24 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Michal Piotrowski @ 2007-07-25 18:48 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Andi Kleen

On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
>
>

Andi, this might be interesting for you

make allmodconfig
make
[...]
WARNING: Absolute relocations present
Offset     Info     Type     Sym.Value Sym.Name
c02041b3 00705601   R_386_32 c0308aa8  _sdata

Regards,
Michal

-- 
LOG
http://www.stardust.webpages.pl/log/

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 18:48 ` 2.6.23-rc1-mm1 Michal Piotrowski
@ 2007-07-25 18:53   ` Sam Ravnborg
  2007-07-25 19:18     ` 2.6.23-rc1-mm1 H. Peter Anvin
  0 siblings, 1 reply; 132+ messages in thread
From: Sam Ravnborg @ 2007-07-25 18:53 UTC (permalink / raw)
  To: Michal Piotrowski; +Cc: Andrew Morton, linux-kernel, Andi Kleen

On Wed, Jul 25, 2007 at 08:48:50PM +0200, Michal Piotrowski wrote:
> On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> >
> >ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> >
> >
> 
> Andi, this might be interesting for you
> 
> make allmodconfig
> make
> [...]
> WARNING: Absolute relocations present
> Offset     Info     Type     Sym.Value Sym.Name
> c02041b3 00705601   R_386_32 c0308aa8  _sdata

Who did spit out this warning. Can you please provide make V=1
where we see the lines preceeding the warning.

And config please.

	Sam

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 17:23   ` 2.6.23-rc1-mm1 Len Brown
@ 2007-07-25 18:58     ` Andrew Morton
  2007-07-25 19:13       ` 2.6.23-rc1-mm1 Torsten Kaiser
  2007-07-25 23:26       ` 2.6.23-rc1-mm1 Len Brown
  0 siblings, 2 replies; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 18:58 UTC (permalink / raw)
  To: Len Brown; +Cc: Cedric Le Goater, linux-kernel, Shaohua Li

On Wed, 25 Jul 2007 13:23:04 -0400
Len Brown <lenb@kernel.org> wrote:

> Andrew, you want to re-pull the acpi tree, or do you want me to send
> you some patches on top of the current mm?

I'd appreciate a fix for this one, please - I'll drop it int he hot-fixes
directory as quite a few people seem to be hitting this.

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 18:58     ` 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-25 19:13       ` Torsten Kaiser
  2007-07-25 20:22         ` 2.6.23-rc1-mm1 Torsten Kaiser
  2007-07-25 23:26       ` 2.6.23-rc1-mm1 Len Brown
  1 sibling, 1 reply; 132+ messages in thread
From: Torsten Kaiser @ 2007-07-25 19:13 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li

On 7/25/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> On Wed, 25 Jul 2007 13:23:04 -0400
> Len Brown <lenb@kernel.org> wrote:
>
> > Andrew, you want to re-pull the acpi tree, or do you want me to send
> > you some patches on top of the current mm?
>
> I'd appreciate a fix for this one, please - I'll drop it int he hot-fixes
> directory as quite a few people seem to be hitting this.

I hit something similar:

  CC      init/version.o
  LD      init/built-in.o
  LD      .tmp_vmlinux1
drivers/built-in.o: In function `acpi_pci_choose_state':
drivers/pci/pci-acpi.c:253: undefined reference to `acpi_pm_device_sleep_state'
drivers/built-in.o: In function `pnpacpi_suspend':
drivers/pnp/pnpacpi/core.c:124: undefined reference to
`acpi_pm_device_sleep_state'
make: *** [.tmp_vmlinux1] Error 1

I also have CONFIG_SMP=y and CONFIG_HOTPLUG_CPU=n

Will try to investigate more...

Torsten

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 18:53   ` 2.6.23-rc1-mm1 Sam Ravnborg
@ 2007-07-25 19:18     ` H. Peter Anvin
  2007-07-25 19:21       ` 2.6.23-rc1-mm1 Sam Ravnborg
  2007-07-25 20:58       ` 2.6.23-rc1-mm1 Gabriel C
  0 siblings, 2 replies; 132+ messages in thread
From: H. Peter Anvin @ 2007-07-25 19:18 UTC (permalink / raw)
  To: Sam Ravnborg; +Cc: Michal Piotrowski, Andrew Morton, linux-kernel, Andi Kleen

Sam Ravnborg wrote:
> On Wed, Jul 25, 2007 at 08:48:50PM +0200, Michal Piotrowski wrote:
>> On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
>>>
>>>
>> Andi, this might be interesting for you
>>
>> make allmodconfig
>> make
>> [...]
>> WARNING: Absolute relocations present
>> Offset     Info     Type     Sym.Value Sym.Name
>> c02041b3 00705601   R_386_32 c0308aa8  _sdata
> 
> Who did spit out this warning. Can you please provide make V=1
> where we see the lines preceeding the warning.
> 
> And config please.
> 

config: "make allmodconfig"

System.map would be more interesting, especially what is at 0xc02041b3.

	-hpa

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 19:18     ` 2.6.23-rc1-mm1 H. Peter Anvin
@ 2007-07-25 19:21       ` Sam Ravnborg
  2007-07-25 20:58       ` 2.6.23-rc1-mm1 Gabriel C
  1 sibling, 0 replies; 132+ messages in thread
From: Sam Ravnborg @ 2007-07-25 19:21 UTC (permalink / raw)
  To: H. Peter Anvin; +Cc: Michal Piotrowski, Andrew Morton, linux-kernel, Andi Kleen

On Wed, Jul 25, 2007 at 12:18:07PM -0700, H. Peter Anvin wrote:
> Sam Ravnborg wrote:
> > On Wed, Jul 25, 2007 at 08:48:50PM +0200, Michal Piotrowski wrote:
> >> On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> >>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> >>>
> >>>
> >> Andi, this might be interesting for you
> >>
> >> make allmodconfig
> >> make
> >> [...]
> >> WARNING: Absolute relocations present
> >> Offset     Info     Type     Sym.Value Sym.Name
> >> c02041b3 00705601   R_386_32 c0308aa8  _sdata
> > 
> > Who did spit out this warning. Can you please provide make V=1
> > where we see the lines preceeding the warning.
> > 
> > And config please.
> > 
> 
> config: "make allmodconfig"

Yup - I have found my glasses now ;-)
Building allmodconfig right now (take a few hours...)

	Sam

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 12:40 ` 2.6.23-rc1-mm1 Cedric Le Goater
@ 2007-07-25 20:05   ` Andrew Morton
  0 siblings, 0 replies; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 20:05 UTC (permalink / raw)
  To: Cedric Le Goater; +Cc: linux-kernel, Michael Buesch

On Wed, 25 Jul 2007 14:40:49 +0200
Cedric Le Goater <clg@fr.ibm.com> wrote:

> Hello,
> 
> Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 
> found that one on ppc,
> 
> drivers/char/hw_random/pasemi-rng.c:140: error: unknown field 'type' specified in initializer
> drivers/char/hw_random/pasemi-rng.c:140: warning: initialization makes pointer from integer without a cast
> 
> hwrng-add-type-categories.patch modifies a struct of the wrong type.
> 
> the pasemi-rng driver registers a 'of_platform_driver' not a 'hwrng'.
> 

OK, thanks.  Those patches generated a decent-sized flamewar anyway so I
think I'll drop them as obviosuly some more thought/discussion is needed
there.


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

* Re: 2.6.23-rc1-mm1: chipsfb_pci_suspend problem
  2007-07-25 13:48   ` 2.6.23-rc1-mm1: chipsfb_pci_suspend problem Rafael J. Wysocki
@ 2007-07-25 20:22     ` Andrew Morton
  2007-07-25 22:45       ` Pavel Machek
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 20:22 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: Cedric Le Goater, linux-kernel, Pavel Machek, Antonino A. Daplas

On Wed, 25 Jul 2007 15:48:10 +0200
"Rafael J. Wysocki" <rjw@sisk.pl> wrote:

> On Wednesday, 25 July 2007 14:55, Cedric Le Goater wrote:
> > Andrew Morton wrote:
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> > 
> > from pm-move-definition-of-struct-pm_ops-to-suspendh.patch :
> > 
> > drivers/video/chipsfb.c: In function 'chipsfb_pci_suspend':
> > drivers/video/chipsfb.c:461: error: 'PM_SUSPEND_MEM' undeclared (first use in this function)
> > drivers/video/chipsfb.c:461: error: (Each undeclared identifier is reported only once
> > drivers/video/chipsfb.c:461: error: for each function it appears in.)
> 
> Well, actually, this is a bug in chipsfb.c, as it shouldn't use PM_SUSPEND_MEM
> in there, but PMSG_SUSPEND (patch untested).
> 
> Greetings,
> Rafael
> 
> 
> ---
>  drivers/video/chipsfb.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> Index: linux-2.6.23-rc1/drivers/video/chipsfb.c
> ===================================================================
> --- linux-2.6.23-rc1.orig/drivers/video/chipsfb.c
> +++ linux-2.6.23-rc1/drivers/video/chipsfb.c
> @@ -458,7 +458,7 @@ static int chipsfb_pci_suspend(struct pc
>  
>  	if (state.event == pdev->dev.power.power_state.event)
>  		return 0;
> -	if (state.event != PM_SUSPEND_MEM)
> +	if (state != PMSG_SUSPEND)
>  		goto done;
>  
>  	acquire_console_sem();

For reasons which aren't immediately obvious, the compiler didn't like
that: comparing with an immediate struct liek that is a bit tricky.

This is equivalent, and works:


--- a/drivers/video/chipsfb.c~chipsfb-use-correct-pm-state
+++ a/drivers/video/chipsfb.c
@@ -24,6 +24,7 @@
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 #include <linux/fb.h>
+#include <linux/pm.h>
 #include <linux/init.h>
 #include <linux/pci.h>
 #include <linux/console.h>
@@ -458,7 +459,7 @@ static int chipsfb_pci_suspend(struct pc
 
 	if (state.event == pdev->dev.power.power_state.event)
 		return 0;
-	if (state.event != PM_SUSPEND_MEM)
+	if (state.event != PM_EVENT_SUSPEND)
 		goto done;
 
 	acquire_console_sem();
_

Is this a 2.6.23 thing?

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 19:13       ` 2.6.23-rc1-mm1 Torsten Kaiser
@ 2007-07-25 20:22         ` Torsten Kaiser
  2007-07-25 20:36           ` 2.6.23-rc1-mm1 Andrew Morton
  0 siblings, 1 reply; 132+ messages in thread
From: Torsten Kaiser @ 2007-07-25 20:22 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li

On 7/25/07, Torsten Kaiser <just.for.lkml@googlemail.com> wrote:
> I hit something similar:
>
>   CC      init/version.o
>   LD      init/built-in.o
>   LD      .tmp_vmlinux1
> drivers/built-in.o: In function `acpi_pci_choose_state':
> drivers/pci/pci-acpi.c:253: undefined reference to `acpi_pm_device_sleep_state'
> drivers/built-in.o: In function `pnpacpi_suspend':
> drivers/pnp/pnpacpi/core.c:124: undefined reference to
> `acpi_pm_device_sleep_state'
> make: *** [.tmp_vmlinux1] Error 1
>
> I also have CONFIG_SMP=y and CONFIG_HOTPLUG_CPU=n
>
> Will try to investigate more...

Removing (!SMP || SUSPEND_SMP) from the depends of ACPI_SLEEP and
activation this option lets me build the kernel.
But it does not boot:
[    0.000000] Linux version 2.6.23-rc1-mm1 (root@treogen) (gcc
version 4.2.0 (Gentoo 4.2.0 p1.4)) #3 SMP Wed Jul 25 21:18:44 CEST
2007
[    0.000000] Command line: earlyprintk=serial,ttyS0,38400
console=ttyS0,38400 console=tty1 crypt_root=/dev/md1
[    0.000000] BIOS-provided physical RAM map:
[    0.000000]  BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
[    0.000000]  BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
[    0.000000]  BIOS-e820: 00000000000e4000 - 0000000000100000 (reserved)
[    0.000000]  BIOS-e820: 0000000000100000 - 00000000dfff0000 (usable)
[    0.000000]  BIOS-e820: 00000000dfff0000 - 00000000dfffe000 (ACPI data)
[    0.000000]  BIOS-e820: 00000000dfffe000 - 00000000e0000000 (ACPI NVS)
[    0.000000]  BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
[    0.000000]  BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
[    0.000000]  BIOS-e820: 00000000ff700000 - 0000000100000000 (reserved)
[    0.000000]  BIOS-e820: 0000000100000000 - 0000000120000000 (usable)
[    0.000000] console [earlyser0] enabled
[    0.000000] end_pfn_map = 1179648
kernel direct mapping tables up to 120000000 @ 8000-e000
[    0.000000] DMI present.
[    0.000000] ACPI: RSDP 000FB5E0, 0014 (r0 ACPIAM)
[    0.000000] ACPI: RSDT DFFF0000, 003C (r1 A M I  OEMRSDT   6000626
MSFT       97)
[    0.000000] ACPI: FACP DFFF0200, 0084 (r2 A M I  OEMFACP   6000626
MSFT       97)
[    0.000000] ACPI: DSDT DFFF0450, 48E1 (r1  S0027 S0027000        0
INTL 20051117)
[    0.000000] ACPI: FACS DFFFE000, 0040
[    0.000000] ACPI: APIC DFFF0390, 0080 (r1 A M I  OEMAPIC   6000626
MSFT       97)
[    0.000000] ACPI: MCFG DFFF0410, 003C (r1 A M I  OEMMCFG   6000626
MSFT       97)
[    0.000000] ACPI: OEMB DFFFE040, 0060 (r1 A M I  AMI_OEM   6000626
MSFT       97)
[    0.000000] ACPI: SRAT DFFF4D40, 0110 (r1 AMD    HAMMER          1
AMD         1)
[    0.000000] ACPI: SSDT DFFF4E50, 04F0 (r1 A M I  ACPI2PPC        1
AMI         1)
[    0.000000] SRAT: PXM 0 -> APIC 0 -> Node 0
[    0.000000] SRAT: PXM 0 -> APIC 1 -> Node 0
[    0.000000] SRAT: PXM 1 -> APIC 2 -> Node 1
[    0.000000] SRAT: PXM 1 -> APIC 3 -> Node 1
[    0.000000] SRAT: Node 0 PXM 0 0-a0000
[    0.000000] SRAT: Node 0 PXM 0 0-80000000
[    0.000000] SRAT: Node 1 PXM 1 80000000-e0000000
[    0.000000] SRAT: Node 1 PXM 1 80000000-120000000
[    0.000000] Bootmem setup node 0 0000000000000000-0000000080000000
[    0.000000] Bootmem setup node 1 0000000080000000-0000000120000000
[    0.000000] Zone PFN ranges:
[    0.000000]   DMA             0 ->     4096
[    0.000000]   DMA32        4096 ->  1048576
[    0.000000]   Normal    1048576 ->  1179648
[    0.000000] Movable zone start PFN for each node
[    0.000000] early_node_map[4] active PFN ranges
[    0.000000]     0:        0 ->      159
[    0.000000]     0:      256 ->   524288
[    0.000000]     1:   524288 ->   917488
[    0.000000]     1:  1048576 ->  1179648
PANIC: early exception rip ffffffff807caac5 error 2 cr2 ffffe20003000010
[    0.000000]
[    0.000000] Call Trace:

... but no Call Trace follows.

(gdb) list *0xffffffff807caac5
0xffffffff807caac5 is in memmap_init_zone (include/linux/list.h:32).
27      #define LIST_HEAD(name) \
28              struct list_head name = LIST_HEAD_INIT(name)
29
30      static inline void INIT_LIST_HEAD(struct list_head *list)
31      {
32              list->next = list;
33              list->prev = list;
34      }
35
36      /*

Torsten

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 20:22         ` 2.6.23-rc1-mm1 Torsten Kaiser
@ 2007-07-25 20:36           ` Andrew Morton
  2007-07-25 21:52             ` 2.6.23-rc1-mm1 Torsten Kaiser
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 20:36 UTC (permalink / raw)
  To: Torsten Kaiser
  Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li, linux-mm

On Wed, 25 Jul 2007 22:22:41 +0200
"Torsten Kaiser" <just.for.lkml@googlemail.com> wrote:

> On 7/25/07, Torsten Kaiser <just.for.lkml@googlemail.com> wrote:
> > I hit something similar:
> >
> >   CC      init/version.o
> >   LD      init/built-in.o
> >   LD      .tmp_vmlinux1
> > drivers/built-in.o: In function `acpi_pci_choose_state':
> > drivers/pci/pci-acpi.c:253: undefined reference to `acpi_pm_device_sleep_state'
> > drivers/built-in.o: In function `pnpacpi_suspend':
> > drivers/pnp/pnpacpi/core.c:124: undefined reference to
> > `acpi_pm_device_sleep_state'
> > make: *** [.tmp_vmlinux1] Error 1
> >
> > I also have CONFIG_SMP=y and CONFIG_HOTPLUG_CPU=n
> >
> > Will try to investigate more...
> 
> Removing (!SMP || SUSPEND_SMP) from the depends of ACPI_SLEEP and
> activation this option lets me build the kernel.

Yes, I'm trying to hunt down a fix for that.  Apparently it got repaired in
the acpi pull which Linus just did.

Maybe your fix is suitable?

> But it does not boot:

argh.

> [    0.000000] Linux version 2.6.23-rc1-mm1 (root@treogen) (gcc
> version 4.2.0 (Gentoo 4.2.0 p1.4)) #3 SMP Wed Jul 25 21:18:44 CEST
> 2007
> [    0.000000] Command line: earlyprintk=serial,ttyS0,38400
> console=ttyS0,38400 console=tty1 crypt_root=/dev/md1
> [    0.000000] BIOS-provided physical RAM map:
> [    0.000000]  BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
> [    0.000000]  BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
> [    0.000000]  BIOS-e820: 00000000000e4000 - 0000000000100000 (reserved)
> [    0.000000]  BIOS-e820: 0000000000100000 - 00000000dfff0000 (usable)
> [    0.000000]  BIOS-e820: 00000000dfff0000 - 00000000dfffe000 (ACPI data)
> [    0.000000]  BIOS-e820: 00000000dfffe000 - 00000000e0000000 (ACPI NVS)
> [    0.000000]  BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
> [    0.000000]  BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
> [    0.000000]  BIOS-e820: 00000000ff700000 - 0000000100000000 (reserved)
> [    0.000000]  BIOS-e820: 0000000100000000 - 0000000120000000 (usable)
> [    0.000000] console [earlyser0] enabled
> [    0.000000] end_pfn_map = 1179648
> kernel direct mapping tables up to 120000000 @ 8000-e000
> [    0.000000] DMI present.
> [    0.000000] ACPI: RSDP 000FB5E0, 0014 (r0 ACPIAM)
> [    0.000000] ACPI: RSDT DFFF0000, 003C (r1 A M I  OEMRSDT   6000626
> MSFT       97)
> [    0.000000] ACPI: FACP DFFF0200, 0084 (r2 A M I  OEMFACP   6000626
> MSFT       97)
> [    0.000000] ACPI: DSDT DFFF0450, 48E1 (r1  S0027 S0027000        0
> INTL 20051117)
> [    0.000000] ACPI: FACS DFFFE000, 0040
> [    0.000000] ACPI: APIC DFFF0390, 0080 (r1 A M I  OEMAPIC   6000626
> MSFT       97)
> [    0.000000] ACPI: MCFG DFFF0410, 003C (r1 A M I  OEMMCFG   6000626
> MSFT       97)
> [    0.000000] ACPI: OEMB DFFFE040, 0060 (r1 A M I  AMI_OEM   6000626
> MSFT       97)
> [    0.000000] ACPI: SRAT DFFF4D40, 0110 (r1 AMD    HAMMER          1
> AMD         1)
> [    0.000000] ACPI: SSDT DFFF4E50, 04F0 (r1 A M I  ACPI2PPC        1
> AMI         1)
> [    0.000000] SRAT: PXM 0 -> APIC 0 -> Node 0
> [    0.000000] SRAT: PXM 0 -> APIC 1 -> Node 0
> [    0.000000] SRAT: PXM 1 -> APIC 2 -> Node 1
> [    0.000000] SRAT: PXM 1 -> APIC 3 -> Node 1
> [    0.000000] SRAT: Node 0 PXM 0 0-a0000
> [    0.000000] SRAT: Node 0 PXM 0 0-80000000
> [    0.000000] SRAT: Node 1 PXM 1 80000000-e0000000
> [    0.000000] SRAT: Node 1 PXM 1 80000000-120000000
> [    0.000000] Bootmem setup node 0 0000000000000000-0000000080000000
> [    0.000000] Bootmem setup node 1 0000000080000000-0000000120000000
> [    0.000000] Zone PFN ranges:
> [    0.000000]   DMA             0 ->     4096
> [    0.000000]   DMA32        4096 ->  1048576
> [    0.000000]   Normal    1048576 ->  1179648
> [    0.000000] Movable zone start PFN for each node
> [    0.000000] early_node_map[4] active PFN ranges
> [    0.000000]     0:        0 ->      159
> [    0.000000]     0:      256 ->   524288
> [    0.000000]     1:   524288 ->   917488
> [    0.000000]     1:  1048576 ->  1179648
> PANIC: early exception rip ffffffff807caac5 error 2 cr2 ffffe20003000010
> [    0.000000]
> [    0.000000] Call Trace:
> 
> ... but no Call Trace follows.
> 
> (gdb) list *0xffffffff807caac5
> 0xffffffff807caac5 is in memmap_init_zone (include/linux/list.h:32).
> 27      #define LIST_HEAD(name) \
> 28              struct list_head name = LIST_HEAD_INIT(name)
> 29
> 30      static inline void INIT_LIST_HEAD(struct list_head *list)
> 31      {
> 32              list->next = list;
> 33              list->prev = list;
> 34      }
> 35
> 36      /*
> 
> Torsten

Quite a few people have been playing in that area.  Can you please send the
.config?


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

* Re: 2.6.23-rc1-mm1 - drivers/char/nozomi.c overflow in implicit constant conversion , warnings
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (8 preceding siblings ...)
  2007-07-25 18:48 ` 2.6.23-rc1-mm1 Michal Piotrowski
@ 2007-07-25 20:42 ` Gabriel C
  2007-07-26  5:42   ` Greg KH
  2007-07-25 21:01 ` 2.6.23-rc1-mm1: m32r is_init() compile error Adrian Bunk
                   ` (23 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-25 20:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, p.hardwick


...

drivers/char/nozomi.c: In function 'interrupt_handler':
drivers/char/nozomi.c:1298: warning: overflow in implicit constant conversion
drivers/char/nozomi.c: In function 'nozomi_card_init':
drivers/char/nozomi.c:1568: warning: overflow in implicit constant conversion
drivers/char/nozomi.c:1592: warning: overflow in implicit constant conversion
drivers/char/nozomi.c: In function 'nozomi_card_exit':
drivers/char/nozomi.c:1673: warning: overflow in implicit constant conversion

...


config is a allmodconfig.


Regards,

Gabriel C 

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

* Re: [-mm patch] one e1000 driver should be enough for everyone
  2007-07-25 15:21         ` Kok, Auke
  2007-07-25 15:23           ` Jeff Garzik
@ 2007-07-25 20:50           ` Andrew Morton
  1 sibling, 0 replies; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 20:50 UTC (permalink / raw)
  To: Kok, Auke; +Cc: Jeff Garzik, Adrian Bunk, linux-kernel, e1000-devel, netdev

On Wed, 25 Jul 2007 08:21:10 -0700
"Kok, Auke" <auke-jan.h.kok@intel.com> wrote:

> Moreover, Andrew should probably just drop this driver from -mm for now.

gone..

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 19:18     ` 2.6.23-rc1-mm1 H. Peter Anvin
  2007-07-25 19:21       ` 2.6.23-rc1-mm1 Sam Ravnborg
@ 2007-07-25 20:58       ` Gabriel C
  2007-07-25 21:05         ` 2.6.23-rc1-mm1 Gabriel C
  1 sibling, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-25 20:58 UTC (permalink / raw)
  To: H. Peter Anvin
  Cc: Sam Ravnborg, Michal Piotrowski, Andrew Morton, linux-kernel, Andi Kleen

H. Peter Anvin wrote:
> Sam Ravnborg wrote:
>> On Wed, Jul 25, 2007 at 08:48:50PM +0200, Michal Piotrowski wrote:
>>> On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
>>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
>>>>
>>>>
>>> Andi, this might be interesting for you
>>>
>>> make allmodconfig
>>> make
>>> [...]
>>> WARNING: Absolute relocations present
>>> Offset     Info     Type     Sym.Value Sym.Name
>>> c02041b3 00705601   R_386_32 c0308aa8  _sdata
>> Who did spit out this warning. Can you please provide make V=1
>> where we see the lines preceeding the warning.
>>
>> And config please.
>>
> 
> config: "make allmodconfig"
> 
> System.map would be more interesting, especially what is at 0xc02041b3.

I get here :

WARNING: Absolute relocations present
Offset     Info     Type     Sym.Value Sym.Name
c0202e73 00703601   R_386_32 c03071bc  _sdata

$ grep c03071bc System.map
c03071bc R __tracedata_end
c03071bc A _sdata

> 
> 	-hpa


Gabriel

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

* 2.6.23-rc1-mm1: m32r is_init() compile error
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (9 preceding siblings ...)
  2007-07-25 20:42 ` 2.6.23-rc1-mm1 - drivers/char/nozomi.c overflow in implicit constant conversion , warnings Gabriel C
@ 2007-07-25 21:01 ` Adrian Bunk
  2007-07-25 21:42   ` sukadev
  2007-07-25 21:17 ` 2.6.23-rc1-mm1: git-kgdb breaks sh compilation Adrian Bunk
                   ` (22 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 21:01 UTC (permalink / raw)
  To: Andrew Morton, Serge E. Hallyn, Sukadev Bhattiprolu,
	Pavel Emelianov, takata
  Cc: linux-kernel, linux-m32r

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +pid-namespaces-define-is_global_init-and-is_container_init.patch
>...
>  pid namespaces
>...

m32r was forgotten:

<--  snip  -->

...
  CC      arch/m32r/mm/fault.o
arch/m32r/mm/fault.c: In function 'do_page_fault':
arch/m32r/mm/fault.c:274: error: implicit declaration of function 'is_init'
make[2]: *** [arch/m32r/mm/fault.o] Error 1

<--  snip  -->


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] 132+ messages in thread

* Re: 2.6.23-rc1-mm1
  2007-07-25 20:58       ` 2.6.23-rc1-mm1 Gabriel C
@ 2007-07-25 21:05         ` Gabriel C
  2007-07-25 21:11           ` 2.6.23-rc1-mm1 H. Peter Anvin
  2007-07-26  0:07           ` 2.6.23-rc1-mm1 Greg KH
  0 siblings, 2 replies; 132+ messages in thread
From: Gabriel C @ 2007-07-25 21:05 UTC (permalink / raw)
  To: H. Peter Anvin
  Cc: Sam Ravnborg, Michal Piotrowski, Andrew Morton, linux-kernel,
	Andi Kleen, gregkh

Gabriel C wrote:
> H. Peter Anvin wrote:
>> Sam Ravnborg wrote:
>>> On Wed, Jul 25, 2007 at 08:48:50PM +0200, Michal Piotrowski wrote:
>>>> On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
>>>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
>>>>>
>>>>>
>>>> Andi, this might be interesting for you
>>>>
>>>> make allmodconfig
>>>> make
>>>> [...]
>>>> WARNING: Absolute relocations present
>>>> Offset     Info     Type     Sym.Value Sym.Name
>>>> c02041b3 00705601   R_386_32 c0308aa8  _sdata
>>> Who did spit out this warning. Can you please provide make V=1
>>> where we see the lines preceeding the warning.
>>>
>>> And config please.
>>>
>> config: "make allmodconfig"
>>
>> System.map would be more interesting, especially what is at 0xc02041b3.
> 
> I get here :
> 
> WARNING: Absolute relocations present
> Offset     Info     Type     Sym.Value Sym.Name
> c0202e73 00703601   R_386_32 c03071bc  _sdata
> 
> $ grep c03071bc System.map
> c03071bc R __tracedata_end
> c03071bc A _sdata


Guessing is this patch ?

gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:           __tracedata_end = .;
gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:+  _sdata = .;                     /* End of text section */




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

* Re: 2.6.23-rc1-mm1
  2007-07-25 21:05         ` 2.6.23-rc1-mm1 Gabriel C
@ 2007-07-25 21:11           ` H. Peter Anvin
  2007-07-25 21:13             ` 2.6.23-rc1-mm1 Gabriel C
  2007-07-26  0:07           ` 2.6.23-rc1-mm1 Greg KH
  1 sibling, 1 reply; 132+ messages in thread
From: H. Peter Anvin @ 2007-07-25 21:11 UTC (permalink / raw)
  To: Gabriel C
  Cc: Sam Ravnborg, Michal Piotrowski, Andrew Morton, linux-kernel,
	Andi Kleen, gregkh

Gabriel C wrote:
>>
>> WARNING: Absolute relocations present
>> Offset     Info     Type     Sym.Value Sym.Name
>> c0202e73 00703601   R_386_32 c03071bc  _sdata
>>
>> $ grep c03071bc System.map
>> c03071bc R __tracedata_end
>> c03071bc A _sdata
> 

What is at 0xc0202e73?

	-hpa

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 21:11           ` 2.6.23-rc1-mm1 H. Peter Anvin
@ 2007-07-25 21:13             ` Gabriel C
  2007-07-25 21:18               ` 2.6.23-rc1-mm1 H. Peter Anvin
  0 siblings, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-25 21:13 UTC (permalink / raw)
  To: H. Peter Anvin
  Cc: Sam Ravnborg, Michal Piotrowski, Andrew Morton, linux-kernel,
	Andi Kleen, gregkh

H. Peter Anvin wrote:
> Gabriel C wrote:
>>> WARNING: Absolute relocations present
>>> Offset     Info     Type     Sym.Value Sym.Name
>>> c0202e73 00703601   R_386_32 c03071bc  _sdata
>>>
>>> $ grep c03071bc System.map
>>> c03071bc R __tracedata_end
>>> c03071bc A _sdata
> 
> What is at 0xc0202e73?

grep returns nothing for 0xc0202e73

> 
> 	-hpa
> 

Gabriel

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

* 2.6.23-rc1-mm1: git-kgdb breaks sh compilation
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (10 preceding siblings ...)
  2007-07-25 21:01 ` 2.6.23-rc1-mm1: m32r is_init() compile error Adrian Bunk
@ 2007-07-25 21:17 ` Adrian Bunk
  2007-07-26  1:45   ` Paul Mundt
  2007-07-25 22:03 ` 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis Valdis.Kletnieks
                   ` (21 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-25 21:17 UTC (permalink / raw)
  To: Andrew Morton, jason.wessel, amitkale, lethal
  Cc: linux-kernel, kgdb-bugreport

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
>  git-kgdb.patch
> 
>  git trees
>...

This causes the following compile error on sh:

<--  snip  -->

...
  CC      drivers/serial/sh-sci.o
drivers/serial/sh-sci.c: In function 'put_string':
drivers/serial/sh-sci.c:188: error: 'hexchars' undeclared (first use in this function)
drivers/serial/sh-sci.c:188: error: (Each undeclared identifier is reported only once
drivers/serial/sh-sci.c:188: error: for each function it appears in.)
make[3]: *** [drivers/serial/sh-sci.o] Error 1

<--  snip  -->

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] 132+ messages in thread

* Re: 2.6.23-rc1-mm1
  2007-07-25 21:13             ` 2.6.23-rc1-mm1 Gabriel C
@ 2007-07-25 21:18               ` H. Peter Anvin
  2007-07-25 21:26                 ` 2.6.23-rc1-mm1 Gabriel C
  0 siblings, 1 reply; 132+ messages in thread
From: H. Peter Anvin @ 2007-07-25 21:18 UTC (permalink / raw)
  To: Gabriel C
  Cc: Sam Ravnborg, Michal Piotrowski, Andrew Morton, linux-kernel,
	Andi Kleen, gregkh

Gabriel C wrote:
> H. Peter Anvin wrote:
>> Gabriel C wrote:
>>>> WARNING: Absolute relocations present
>>>> Offset     Info     Type     Sym.Value Sym.Name
>>>> c0202e73 00703601   R_386_32 c03071bc  _sdata
>>>>
>>>> $ grep c03071bc System.map
>>>> c03071bc R __tracedata_end
>>>> c03071bc A _sdata
>> What is at 0xc0202e73?
> 
> grep returns nothing for 0xc0202e73
> 

What is the symbol immediately before and after that, then?

	-hpa

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 21:18               ` 2.6.23-rc1-mm1 H. Peter Anvin
@ 2007-07-25 21:26                 ` Gabriel C
  0 siblings, 0 replies; 132+ messages in thread
From: Gabriel C @ 2007-07-25 21:26 UTC (permalink / raw)
  To: H. Peter Anvin
  Cc: Sam Ravnborg, Michal Piotrowski, Andrew Morton, linux-kernel,
	Andi Kleen, gregkh

H. Peter Anvin wrote:
> Gabriel C wrote:
>> H. Peter Anvin wrote:
>>> Gabriel C wrote:
>>>>> WARNING: Absolute relocations present
>>>>> Offset     Info     Type     Sym.Value Sym.Name
>>>>> c0202e73 00703601   R_386_32 c03071bc  _sdata
>>>>>
>>>>> $ grep c03071bc System.map
>>>>> c03071bc R __tracedata_end
>>>>> c03071bc A _sdata
>>> What is at 0xc0202e73?
>> grep returns nothing for 0xc0202e73
>>
> 
> What is the symbol immediately before and after that, then?

I just have an 0xc0202e0c here which is :

c0202e0c T kobject_init

You can get the System.map from there :

http://194.231.229.228/MM/System.map

> 
> 	-hpa
> 

Gabriel

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

* Re: 2.6.23-rc1-mm1: m32r is_init() compile error
  2007-07-25 21:01 ` 2.6.23-rc1-mm1: m32r is_init() compile error Adrian Bunk
@ 2007-07-25 21:42   ` sukadev
  0 siblings, 0 replies; 132+ messages in thread
From: sukadev @ 2007-07-25 21:42 UTC (permalink / raw)
  To: Adrian Bunk
  Cc: Andrew Morton, Serge E. Hallyn, Pavel Emelianov, takata,
	linux-kernel, linux-m32r

Adrian Bunk [bunk@stusta.de] wrote:
| On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
| >...
| > Changes since 2.6.22-rc6-mm1:
| >...
| > +pid-namespaces-define-is_global_init-and-is_container_init.patch
| >...
| >  pid namespaces
| >...
| 
| m32r was forgotten:
| 
| <--  snip  -->
| 
| ...
|   CC      arch/m32r/mm/fault.o
| arch/m32r/mm/fault.c: In function 'do_page_fault':
| arch/m32r/mm/fault.c:274: error: implicit declaration of function 'is_init'
| make[2]: *** [arch/m32r/mm/fault.o] Error 1
| 
| <--  snip  -->

Sorry. Here is a fix for it.
---

From: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Subject: [PATCH] Use is_global_init() in arch/m32r/mm/fault.c

Use is_global_init() in arch/m32r/mm/fault.c.

Signed-off-by: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Cc: Cedric Le Goater <clg@fr.ibm.com>
Cc: Dave Hansen <haveblue@us.ibm.com>
Cc: Serge Hallyn <serue@us.ibm.com>
Cc: containers@lists.osdl.org
---
 arch/m32r/mm/fault.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: lx26-23-rc1-mm1/arch/m32r/mm/fault.c
===================================================================
--- lx26-23-rc1-mm1.orig/arch/m32r/mm/fault.c	2007-07-25 14:24:18.000000000 -0700
+++ lx26-23-rc1-mm1/arch/m32r/mm/fault.c	2007-07-25 14:32:23.000000000 -0700
@@ -271,7 +271,7 @@ no_context:
  */
 out_of_memory:
 	up_read(&mm->mmap_sem);
-	if (is_init(tsk)) {
+	if (is_global_init(tsk)) {
 		yield();
 		down_read(&mm->mmap_sem);
 		goto survive;

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 20:36           ` 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-25 21:52             ` Torsten Kaiser
  2007-07-26  7:25               ` 2.6.23-rc1-mm1 Andrew Morton
  0 siblings, 1 reply; 132+ messages in thread
From: Torsten Kaiser @ 2007-07-25 21:52 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li, linux-mm

On 7/25/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> On Wed, 25 Jul 2007 22:22:41 +0200
> "Torsten Kaiser" <just.for.lkml@googlemail.com> wrote:
> > [    0.000000] early_node_map[4] active PFN ranges
> > [    0.000000]     0:        0 ->      159
> > [    0.000000]     0:      256 ->   524288
> > [    0.000000]     1:   524288 ->   917488
> > [    0.000000]     1:  1048576 ->  1179648
> > PANIC: early exception rip ffffffff807caac5 error 2 cr2 ffffe20003000010
> > [    0.000000]
> > [    0.000000] Call Trace:
> >
> > ... but no Call Trace follows.
> >
> > (gdb) list *0xffffffff807caac5
> > 0xffffffff807caac5 is in memmap_init_zone (include/linux/list.h:32).
> > 27      #define LIST_HEAD(name) \
> > 28              struct list_head name = LIST_HEAD_INIT(name)
> > 29
> > 30      static inline void INIT_LIST_HEAD(struct list_head *list)
> > 31      {
> > 32              list->next = list;
> > 33              list->prev = list;
> > 34      }
> > 35
> > 36      /*
> >
> > Torsten
>
> Quite a few people have been playing in that area.  Can you please send the
> .config?

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.23-rc1-mm1
# Wed Jul 25 21:18:15 2007
#
CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CMOS_UPDATE=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_QUICKLIST=y
CONFIG_NR_QUICK=2
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"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SWAP=y
CONFIG_SWAP_PREFETCH=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
# CONFIG_TASKSTATS is not set
# CONFIG_USER_NS is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=18
# CONFIG_CONTAINERS is not set
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_CONTAINER_NS is not set
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
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 is not set
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_SLUB_DEBUG=y
# CONFIG_SLAB is not set
CONFIG_SLUB=y
# CONFIG_SLOB is not set
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_PROC_KPAGEMAP=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_BLK_DEV_IO_TRACE=y
CONFIG_BLK_DEV_BSG=y

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=m
CONFIG_IOSCHED_DEADLINE=m
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_TICK_ONESHOT is not set
CONFIG_X86_PC=y
# CONFIG_X86_VSMP is not set
CONFIG_MK8=y
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_L1_CACHE_BYTES=64
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_INTERNODE_CACHE_BYTES=64
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
# CONFIG_MICROCODE is not set
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_MTRR=y
CONFIG_SMP=y
# CONFIG_SCHED_SMT is not set
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 is not set
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_SPARSEMEM_VMEMMAP=y
CONFIG_ARCH_POPULATES_SPARSEMEM_VMEMMAP_PMD=y
CONFIG_SELECT_MEMORY_MODEL=y
# CONFIG_FLATMEM_MANUAL is not set
# CONFIG_DISCONTIGMEM_MANUAL is not set
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_SPARSEMEM_EXTREME=y
# CONFIG_MEMORY_HOTPLUG is not set
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_MIGRATION=y
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID=y
CONFIG_NR_CPUS=4
CONFIG_PHYSICAL_ALIGN=0x200000
# CONFIG_HOTPLUG_CPU is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_HPET_TIMER=y
# CONFIG_HPET_EMULATE_RTC is not set
CONFIG_IOMMU=y
# CONFIG_CALGARY_IOMMU is not set
CONFIG_SWIOTLB=y
CONFIG_X86_MCE=y
# CONFIG_X86_MCE_INTEL is not set
CONFIG_X86_MCE_AMD=y
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_START=0x200000
# CONFIG_SECCOMP is not set
# CONFIG_CC_STACKPROTECTOR is not set
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
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 is not set
# CONFIG_PM_DEBUG is not set
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
# CONFIG_ACPI_SLEEP_PROC_SLEEP is not set
# CONFIG_ACPI_PROCFS is not set
# CONFIG_ACPI_AC is not set
# CONFIG_ACPI_BATTERY is not set
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
# CONFIG_ACPI_DOCK is not set
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_NUMA=y
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_TOSHIBA is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=y
# CONFIG_ACPI_SBS is not set

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

#
# CPUFreq processor drivers
#
CONFIG_X86_POWERNOW_K8=y
CONFIG_X86_POWERNOW_K8_ACPI=y
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
CONFIG_X86_ACPI_CPUFREQ=m

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

#
# CPU idle PM support
#
CONFIG_CPU_IDLE=y

#
# Governors
#
CONFIG_CPU_IDLE_GOV_LADDER=y

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
# CONFIG_DMAR is not set
CONFIG_PCIEPORTBUS=y
CONFIG_PCIEAER=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
CONFIG_HT_IRQ=y
# CONFIG_PCCARD is not set
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=y
CONFIG_IA32_EMULATION=y
CONFIG_IA32_AOUT=y
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=y
# CONFIG_XFRM_MIGRATE is not set
CONFIG_NET_KEY=y
# CONFIG_NET_KEY_MIGRATE is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_PNP is not set
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
# CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_XFRM_TUNNEL=y
CONFIG_INET_TUNNEL=y
CONFIG_INET_XFRM_MODE_TRANSPORT=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=m
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
CONFIG_TCP_CONG_ADVANCED=y
CONFIG_TCP_CONG_BIC=m
CONFIG_TCP_CONG_CUBIC=m
CONFIG_TCP_CONG_WESTWOOD=m
CONFIG_TCP_CONG_HTCP=m
CONFIG_TCP_CONG_HSTCP=m
CONFIG_TCP_CONG_HYBLA=m
CONFIG_TCP_CONG_VEGAS=m
CONFIG_TCP_CONG_SCALABLE=m
CONFIG_TCP_CONG_LP=m
CONFIG_TCP_CONG_VENO=m
CONFIG_TCP_CONG_YEAH=m
CONFIG_TCP_CONG_ILLINOIS=m
# CONFIG_DEFAULT_BIC is not set
# CONFIG_DEFAULT_CUBIC is not set
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set
CONFIG_DEFAULT_RENO=y
CONFIG_DEFAULT_TCP_CONG="reno"
CONFIG_TCP_MD5SIG=y
# CONFIG_IP_VS is not set
CONFIG_IPV6=m
# CONFIG_IPV6_PRIVACY is not set
# CONFIG_IPV6_ROUTER_PREF is not set
CONFIG_IPV6_OPTIMISTIC_DAD=y
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=m
CONFIG_IPV6_SIT=m
CONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_MULTIPLE_TABLES is not set
CONFIG_NETLABEL=y
# CONFIG_NETWORK_SECMARK is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=m
CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
CONFIG_NF_CONNTRACK_ENABLED=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_CT_ACCT=y
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_EVENTS=y
CONFIG_NF_CT_PROTO_GRE=m
CONFIG_NF_CT_PROTO_SCTP=m
CONFIG_NF_CT_PROTO_UDPLITE=m
CONFIG_NF_CONNTRACK_AMANDA=m
CONFIG_NF_CONNTRACK_FTP=m
CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_PPTP=m
CONFIG_NF_CONNTRACK_SANE=m
CONFIG_NF_CONNTRACK_SIP=m
CONFIG_NF_CONNTRACK_TFTP=m
CONFIG_NF_CT_NETLINK=m
CONFIG_NETFILTER_XTABLES=m
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
CONFIG_NETFILTER_XT_TARGET_TRACE=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
CONFIG_NETFILTER_XT_MATCH_DCCP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=m
CONFIG_NETFILTER_XT_MATCH_ESP=m
CONFIG_NETFILTER_XT_MATCH_HELPER=m
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
CONFIG_NETFILTER_XT_MATCH_MAC=m
CONFIG_NETFILTER_XT_MATCH_MARK=m
CONFIG_NETFILTER_XT_MATCH_POLICY=m
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_NETFILTER_XT_MATCH_REALM=m
CONFIG_NETFILTER_XT_MATCH_SCTP=m
CONFIG_NETFILTER_XT_MATCH_STATE=m
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
CONFIG_NETFILTER_XT_MATCH_STRING=m
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_U32=m
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m

#
# IP: Netfilter Configuration
#
CONFIG_NF_CONNTRACK_IPV4=m
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
# CONFIG_IP_NF_QUEUE is not set
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_IPRANGE=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_NF_NAT=m
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_SAME=m
CONFIG_NF_NAT_SNMP_BASIC=m
CONFIG_NF_NAT_PROTO_GRE=m
CONFIG_NF_NAT_FTP=m
CONFIG_NF_NAT_IRC=m
CONFIG_NF_NAT_TFTP=m
CONFIG_NF_NAT_AMANDA=m
CONFIG_NF_NAT_PPTP=m
CONFIG_NF_NAT_H323=m
CONFIG_NF_NAT_SIP=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m

#
# IPv6: Netfilter Configuration (EXPERIMENTAL)
#
CONFIG_NF_CONNTRACK_IPV6=m
# CONFIG_IP6_NF_QUEUE is not set
CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_RT=m
CONFIG_IP6_NF_MATCH_OPTS=m
CONFIG_IP6_NF_MATCH_FRAG=m
CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_OWNER=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_AH=m
CONFIG_IP6_NF_MATCH_MH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_RAW=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=y
# CONFIG_SCTP_HMAC_MD5 is not set
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set

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

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

#
# Wireless
#
CONFIG_CFG80211=m
CONFIG_WIRELESS_EXT=y
CONFIG_MAC80211=m
CONFIG_MAC80211_LEDS=y
# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_DEBUG 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=m
# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
# CONFIG_RFKILL is not set
CONFIG_NET_9P=m
# CONFIG_NET_9P_DEBUG 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
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set

#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_UB is not set
# CONFIG_BLK_DEV_RAM is not set
CONFIG_CDROM_PKTCDVD=m
CONFIG_CDROM_PKTCDVD_BUFFERS=8
# CONFIG_CDROM_PKTCDVD_WCACHE is not set
# CONFIG_ATA_OVER_ETH is not set
CONFIG_MISC_DEVICES=y
# CONFIG_IBM_ASM is not set
# CONFIG_PHANTOM is not set
CONFIG_EEPROM_93CX6=m
# CONFIG_SGI_IOC4 is not set
# CONFIG_TIFM_CORE is not set
# CONFIG_SONY_LAPTOP is not set
# CONFIG_THINKPAD_ACPI is not set
# CONFIG_IDE is not set

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

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

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

#
# SCSI Transports
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=m
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
# CONFIG_SCSI_SRP_ATTRS is not set
CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
# CONFIG_MEGARAID_SAS is not set
# CONFIG_SCSI_HPTIOP is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_STEX is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_QLA_FC is not set
# CONFIG_SCSI_QLA_ISCSI is not set
# CONFIG_SCSI_LPFC is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SRP is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_AHCI=y
# CONFIG_SATA_SVW is not set
# CONFIG_ATA_PIIX is not set
# CONFIG_SATA_MV is not set
CONFIG_SATA_NV=y
# CONFIG_PDC_ADMA is not set
# CONFIG_SATA_QSTOR is not set
# CONFIG_SATA_PROMISE is not set
# CONFIG_SATA_SX4 is not set
CONFIG_SATA_SIL=y
CONFIG_SATA_SIL24=y
# CONFIG_SATA_SIS is not set
# CONFIG_SATA_ULI is not set
# CONFIG_SATA_VIA is not set
# CONFIG_SATA_VITESSE is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_PATA_ALI is not set
CONFIG_PATA_AMD=m
# CONFIG_PATA_ARTOP is not set
# CONFIG_PATA_ATIIXP is not set
# CONFIG_PATA_CMD640_PCI is not set
# CONFIG_PATA_CMD64X is not set
# CONFIG_PATA_CS5520 is not set
# CONFIG_PATA_CS5530 is not set
# CONFIG_PATA_CYPRESS is not set
# CONFIG_PATA_EFAR is not set
# CONFIG_ATA_GENERIC is not set
# CONFIG_PATA_HPT366 is not set
# CONFIG_PATA_HPT37X is not set
# CONFIG_PATA_HPT3X2N is not set
# CONFIG_PATA_HPT3X3 is not set
# CONFIG_PATA_IT821X is not set
# CONFIG_PATA_IT8213 is not set
# CONFIG_PATA_JMICRON is not set
# CONFIG_PATA_TRIFLEX is not set
# CONFIG_PATA_MARVELL is not set
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_OLDPIIX is not set
# CONFIG_PATA_NETCELL is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_OPTI is not set
# CONFIG_PATA_OPTIDMA is not set
# CONFIG_PATA_PDC_OLD is not set
# CONFIG_PATA_RADISYS is not set
# CONFIG_PATA_RZ1000 is not set
# CONFIG_PATA_SC1200 is not set
# CONFIG_PATA_SERVERWORKS is not set
# CONFIG_PATA_PDC2027X is not set
# CONFIG_PATA_SIL680 is not set
# CONFIG_PATA_SIS is not set
# CONFIG_PATA_VIA is not set
# CONFIG_PATA_WINBOND is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
# CONFIG_MD_LINEAR is not set
# CONFIG_MD_RAID0 is not set
CONFIG_MD_RAID1=y
# CONFIG_MD_RAID10 is not set
CONFIG_MD_RAID456=y
CONFIG_MD_RAID5_RESHAPE=y
# CONFIG_MD_MULTIPATH is not set
# CONFIG_MD_FAULTY is not set
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
CONFIG_DM_CRYPT=y
# CONFIG_DM_SNAPSHOT is not set
# CONFIG_DM_MIRROR is not set
# CONFIG_DM_ZERO is not set
# CONFIG_DM_MULTIPATH is not set
# CONFIG_DM_DELAY is not set
# CONFIG_DM_NETLINK is not set
# CONFIG_FUSION is not set

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

#
# Subsystem Options
#
# CONFIG_IEEE1394_VERBOSEDEBUG is not set

#
# Controllers
#
# CONFIG_IEEE1394_PCILYNX is not set
CONFIG_IEEE1394_OHCI1394=y

#
# Protocols
#
CONFIG_IEEE1394_VIDEO1394=m
CONFIG_IEEE1394_SBP2=m
CONFIG_IEEE1394_ETH1394_ROM_ENTRY=y
CONFIG_IEEE1394_ETH1394=y
CONFIG_IEEE1394_DV1394=m
CONFIG_IEEE1394_RAWIO=m
CONFIG_I2O=y
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 is not set
CONFIG_I2O_BUS=m
CONFIG_I2O_BLOCK=m
CONFIG_I2O_SCSI=m
CONFIG_I2O_PROC=m
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
# CONFIG_NETDEVICES_MULTIQUEUE is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_NET_SB1000 is not set
# CONFIG_ARCNET is not set
# CONFIG_NET_ETHERNET is not set
CONFIG_MII=m
CONFIG_NETDEV_1000=y
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000NEW is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
# CONFIG_SIS190 is not set
# CONFIG_SKGE is not set
# CONFIG_SKY2 is not set
# CONFIG_VIA_VELOCITY is not set
CONFIG_TIGON3=y
# CONFIG_BNX2 is not set
# CONFIG_QLA3XXX is not set
# CONFIG_ATL1 is not set
# CONFIG_NETDEV_10000 is not set
# CONFIG_TR is not set

#
# Wireless LAN
#
CONFIG_WLAN_PRE80211=y
CONFIG_STRIP=m
CONFIG_WLAN_80211=y
CONFIG_IPW2100=m
CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPW2200_PROMISCUOUS=y
CONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not set
# CONFIG_LIBERTAS is not set
CONFIG_AIRO=m
CONFIG_HERMES=m
CONFIG_PLX_HERMES=m
CONFIG_TMD_HERMES=m
CONFIG_NORTEL_HERMES=m
CONFIG_PCI_HERMES=m
CONFIG_ATMEL=m
CONFIG_PCI_ATMEL=m
CONFIG_PRISM54=m
CONFIG_USB_ZD1201=m
CONFIG_RTL8187=m
CONFIG_HOSTAP=m
CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_FIRMWARE_NVRAM=y
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
# CONFIG_BCM43XX is not set
# CONFIG_ZD1211RW 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_CDCETHER=m
CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_GL620A=m
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
CONFIG_USB_NET_MCS7830=m
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=y
CONFIG_USB_NET_ZAURUS=m
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPP_MPPE=m
CONFIG_PPPOE=m
CONFIG_PPPOL2TP=m
# CONFIG_SLIP is not set
CONFIG_SLHC=m
# CONFIG_NET_FC is not set
CONFIG_SHAPER=m
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_ISDN is not set
# CONFIG_PHONE is not set

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

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_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 is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=y
# CONFIG_INPUT_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 is not set

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PCIPS2 is not set
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT is not set

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

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_NR_UARTS=1
CONFIG_SERIAL_8250_RUNTIME_UARTS=1
# CONFIG_SERIAL_8250_EXTENDED is not set

#
# 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_IPMI_HANDLER is not set
# CONFIG_WATCHDOG is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_NVRAM is not set
CONFIG_RTC=y
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
# CONFIG_AGP_INTEL is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_VIA is not set
CONFIG_DRM=m
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_R128 is not set
CONFIG_DRM_RADEON=m
# CONFIG_DRM_MGA is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_VIA is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_MWAVE is not set
# CONFIG_PC8736x_GPIO is not set
# CONFIG_RAW_DRIVER is not set
CONFIG_HPET=y
CONFIG_HPET_RTC_IRQ=y
CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=y
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_CHARDEV=y

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

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

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

#
# SPI support
#
CONFIG_SPI=y
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_MASTER=y

#
# SPI Master Controller Drivers
#
CONFIG_SPI_BITBANG=m

#
# SPI Protocol Masters
#
CONFIG_SPI_AT25=m
# CONFIG_SPI_SPIDEV is not set
# CONFIG_SPI_TLE62X0 is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
CONFIG_HWMON=y
CONFIG_HWMON_VID=m
# CONFIG_SENSORS_ABITUGURU is not set
# CONFIG_SENSORS_ABITUGURU3 is not set
# CONFIG_SENSORS_AD7418 is not set
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ADM9240 is not set
CONFIG_SENSORS_K8TEMP=y
# CONFIG_SENSORS_ASB100 is not set
# CONFIG_SENSORS_ATXP1 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_FSCHER is not set
# CONFIG_SENSORS_FSCPOS is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_CORETEMP is not set
# CONFIG_SENSORS_IT87 is not set
CONFIG_SENSORS_LM63=m
CONFIG_SENSORS_LM70=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_LM93 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_DME1737 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47M192 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
CONFIG_SENSORS_W83781D=m
CONFIG_SENSORS_W83791D=m
CONFIG_SENSORS_W83792D=m
CONFIG_SENSORS_W83793=m
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

#
# Sonics Silicon Backplane
#
# CONFIG_SSB 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_TVAUDIO=m
CONFIG_VIDEO_TDA7432=m
CONFIG_VIDEO_TDA9875=m
CONFIG_VIDEO_MSP3400=m
CONFIG_VIDEO_WM8775=m
CONFIG_VIDEO_SAA711X=m
CONFIG_VIDEO_TVP5150=m
CONFIG_VIDEO_CX25840=m
CONFIG_VIDEO_CX2341X=m
# CONFIG_VIDEO_VIVI is not set
CONFIG_VIDEO_BT848=m
# CONFIG_VIDEO_SAA6588 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_TUNER_TEA5761 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=m
CONFIG_VIDEO_PVRUSB2_29XXX=y
CONFIG_VIDEO_PVRUSB2_24XXX=y
CONFIG_VIDEO_PVRUSB2_SYSFS=y
# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
CONFIG_VIDEO_EM28XX=m
CONFIG_VIDEO_USBVISION=m
CONFIG_VIDEO_USBVIDEO=m
CONFIG_USB_VICAM=m
CONFIG_USB_IBMCAM=m
CONFIG_USB_KONICAWC=m
CONFIG_USB_QUICKCAM_MESSENGER=m
CONFIG_USB_ET61X251=m
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=m
CONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
CONFIG_USB_ZR364XX=m
# CONFIG_RADIO_ADAPTERS is not set
# CONFIG_DVB_CORE is not set
CONFIG_VIDEO_TUNER=m
CONFIG_VIDEO_BUF=m
CONFIG_VIDEO_BTCX=m
CONFIG_VIDEO_IR_I2C=m
CONFIG_VIDEO_IR=m
CONFIG_VIDEO_TVEEPROM=m
# CONFIG_DAB is not set

#
# Graphics support
#
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set

#
# Display device support
#
# CONFIG_DISPLAY_SUPPORT is not set
# CONFIG_VGASTATE is not set
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
# CONFIG_FB 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_FONT_8x16=y

#
# Sound
#
CONFIG_SOUND=y

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

#
# Generic devices
#
# CONFIG_SND_DUMMY is not set
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set

#
# PCI devices
#
# CONFIG_SND_AD1889 is not set
# CONFIG_SND_ALS300 is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_ATIIXP is not set
# CONFIG_SND_ATIIXP_MODEM is not set
# CONFIG_SND_AU8810 is not set
# CONFIG_SND_AU8820 is not set
# CONFIG_SND_AU8830 is not set
# CONFIG_SND_AZT3328 is not set
CONFIG_SND_BT87X=y
# CONFIG_SND_BT87X_OVERCLOCK is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
# 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 is not set
# CONFIG_SND_EMU10K1X is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_FM801 is not set
CONFIG_SND_HDA_INTEL=y
# CONFIG_SND_HDSP is not set
# CONFIG_SND_HDSPM is not set
# CONFIG_SND_ICE1712 is not set
# CONFIG_SND_ICE1724 is not set
# CONFIG_SND_INTEL8X0 is not set
# CONFIG_SND_INTEL8X0M is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_MIXART is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_PCXHR is not set
# CONFIG_SND_RIPTIDE is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_TRIDENT is not set
# CONFIG_SND_VIA82XX is not set
# CONFIG_SND_VIA82XX_MODEM is not set
# CONFIG_SND_VX222 is not set
# CONFIG_SND_YMFPCI is not set

#
# SPI devices
#

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

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

#
# SoC Audio support for SuperH
#

#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not set
CONFIG_HID_SUPPORT=y
CONFIG_HID=m
# CONFIG_HID_DEBUG is not set
CONFIG_HIDRAW=y

#
# USB Input Devices
#
CONFIG_USB_HID=m
# CONFIG_USB_HIDINPUT_POWERBOOK is not set
# CONFIG_HID_FF is not set
CONFIG_USB_HIDDEV=y

#
# USB HID Boot Protocol drivers
#
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set

#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_DEVICE_CLASS is not set
CONFIG_USB_DYNAMIC_MINORS=y
CONFIG_USB_SUSPEND=y
# CONFIG_USB_PERSIST is not set
# 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_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
# CONFIG_USB_R8A66597_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=y
# 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=y
CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_LIBUSUAL=y

#
# USB Imaging devices
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
# CONFIG_USB_MON is not set

#
# USB port drivers
#

#
# USB Serial Converter support
#
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_AIRCABLE=m
CONFIG_USB_SERIAL_AIRPRIME=m
CONFIG_USB_SERIAL_ARK3116=m
CONFIG_USB_SERIAL_BELKIN=m
CONFIG_USB_SERIAL_WHITEHEAT=m
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 is not set
CONFIG_USB_SERIAL_KLSI=m
CONFIG_USB_SERIAL_KOBIL_SCT=m
CONFIG_USB_SERIAL_MCT_U232=m
CONFIG_USB_SERIAL_MOS7720=m
CONFIG_USB_SERIAL_MOS7840=m
CONFIG_USB_SERIAL_NAVMAN=m
CONFIG_USB_SERIAL_PL2303=m
CONFIG_USB_SERIAL_OTI6858=m
CONFIG_USB_SERIAL_HP4X=m
CONFIG_USB_SERIAL_SAFE=m
CONFIG_USB_SERIAL_SAFE_PADDED=y
CONFIG_USB_SERIAL_SIERRAWIRELESS=m
CONFIG_USB_SERIAL_TI=m
CONFIG_USB_SERIAL_CYBERJACK=m
CONFIG_USB_SERIAL_XIRCOM=m
CONFIG_USB_SERIAL_OPTION=m
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=m
CONFIG_USB_ADUTUX=m
CONFIG_USB_AUERSWALD=m
CONFIG_USB_RIO500=m
CONFIG_USB_LEGOTOWER=m
CONFIG_USB_LCD=m
CONFIG_USB_BERRY_CHARGE=m
CONFIG_USB_LED=m
CONFIG_USB_CYPRESS_CY7C63=m
CONFIG_USB_CYTHERM=m
CONFIG_USB_PHIDGET=m
CONFIG_USB_PHIDGETKIT=m
CONFIG_USB_PHIDGETMOTORCONTROL=m
CONFIG_USB_PHIDGETSERVO=m
CONFIG_USB_IDMOUSE=m
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
CONFIG_USB_SISUSBVGA=m
CONFIG_USB_SISUSBVGA_CON=y
CONFIG_USB_LD=m
CONFIG_USB_TRANCEVIBRATOR=m
CONFIG_USB_IOWARRIOR=m
# CONFIG_USB_TEST is not set
CONFIG_USB_GOTEMP=m

#
# USB DSL modem support
#

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
# CONFIG_MMC is not set
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=m

#
# LED drivers
#

#
# LED Triggers
#
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=m
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
# CONFIG_INFINIBAND is not set
CONFIG_EDAC=y

#
# Reporting subsystems
#
# CONFIG_EDAC_DEBUG is not set
CONFIG_EDAC_MM_EDAC=y
# CONFIG_EDAC_E752X is not set
# CONFIG_EDAC_I82975X is not set
# CONFIG_EDAC_I5000 is not set
# CONFIG_RTC_CLASS is not set

#
# DMA Engine support
#
CONFIG_DMA_ENGINE=y

#
# DMA Clients
#
CONFIG_NET_DMA=y

#
# DMA Devices
#
# CONFIG_INTEL_IOATDMA is not set
# CONFIG_DCA is not set
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m
# CONFIG_KVM_INTEL is not set
CONFIG_KVM_AMD=m

#
# Userspace I/O
#
# CONFIG_UIO is not set

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

#
# File systems
#
CONFIG_EXT2_FS=m
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=m
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
# CONFIG_EXT4DEV_FS is not set
CONFIG_JBD=m
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=m
# CONFIG_REISER4_FS is not set
# CONFIG_REISERFS_FS is not set
CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS 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 is not set
CONFIG_GFS2_FS=m
CONFIG_GFS2_FS_LOCKING_NOLOCK=m
CONFIG_GFS2_FS_LOCKING_DLM=m
CONFIG_OCFS2_FS=m
# CONFIG_OCFS2_DEBUG_MASKLOG 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 is not set
# CONFIG_FUSE_FS is not set

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

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

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=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=m

#
# Layered filesystems
#
# CONFIG_UNION_FS is not set

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
CONFIG_CRAMFS=m
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
CONFIG_UFS_FS=m
CONFIG_UFS_FS_WRITE=y
# CONFIG_UFS_DEBUG is not set

#
# Network File Systems
#
CONFIG_NFS_FS=y
# CONFIG_NFS_V3 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=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
CONFIG_SUNRPC_BIND34=y
CONFIG_RPCSEC_GSS_KRB5=y
# CONFIG_RPCSEC_GSS_SPKM3 is not set
# CONFIG_SMB_FS is not set
CONFIG_CIFS=m
CONFIG_CIFS_STATS=y
CONFIG_CIFS_STATS2=y
CONFIG_CIFS_WEAK_PW_HASH=y
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y
# CONFIG_CIFS_DEBUG2 is not set
CONFIG_CIFS_EXPERIMENTAL=y
CONFIG_CIFS_UPCALL=y
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
CONFIG_9P_FS=m

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

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

#
# Distributed Lock Manager
#
CONFIG_DLM=m
# CONFIG_DLM_DEBUG is not set

#
# Instrumentation Support
#
# CONFIG_PROFILING is not set
# CONFIG_KPROBES is not set

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_PRINTK_TIME=y
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_PAGE_OWNER is not set
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_SCHEDSTATS is not set
CONFIG_TIMER_STATS=y
# CONFIG_SLUB_DEBUG_ON is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_PROVE_LOCKING is not set
# CONFIG_LOCK_STAT is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_LIST is not set
# CONFIG_FRAME_POINTER is not set
# CONFIG_PROFILE_LIKELY is not set
# CONFIG_FORCED_INLINING is not set
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_DEBUG_SYNCHRO_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_WANT_EXTRA_DEBUG_INFORMATION is not set
# CONFIG_UNWIND_INFO is not set
# CONFIG_KGDB is not set
# CONFIG_DEBUG_RODATA is not set
# CONFIG_IOMMU_DEBUG is not set
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set

#
# Security options
#
# CONFIG_KEYS is not set
CONFIG_SECURITY=y
# CONFIG_SECURITY_NETWORK is not set
CONFIG_SECURITY_CAPABILITIES=y
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
# CONFIG_SECURITY_ROOTPLUG is not set
CONFIG_XOR_BLOCKS=y
CONFIG_ASYNC_CORE=y
CONFIG_ASYNC_MEMCPY=y
CONFIG_ASYNC_XOR=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ABLKCIPHER=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=m
CONFIG_CRYPTO_NULL=m
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_WP512=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_GF128MUL=m
CONFIG_CRYPTO_ECB=m
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_FCRYPT=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_TWOFISH_COMMON=y
CONFIG_CRYPTO_TWOFISH_X86_64=y
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_AES=m
CONFIG_CRYPTO_AES_X86_64=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_KHAZAD=m
CONFIG_CRYPTO_ANUBIS=m
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_CRC32C=m
CONFIG_CRYPTO_CAMELLIA=m
# CONFIG_CRYPTO_TEST is not set
# CONFIG_CRYPTO_HW is not set

#
# Library routines
#
CONFIG_BITREVERSE=m
CONFIG_CRC_CCITT=m
CONFIG_CRC16=m
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=m
CONFIG_CRC7=m
CONFIG_LIBCRC32C=m
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] 132+ messages in thread

* Re: 2.6.23-rc1-mm1
  2007-07-25 16:32 ` 2.6.23-rc1-mm1 Michal Piotrowski
@ 2007-07-25 21:56   ` Andrew Morton
  0 siblings, 0 replies; 132+ messages in thread
From: Andrew Morton @ 2007-07-25 21:56 UTC (permalink / raw)
  To: Michal Piotrowski; +Cc: linux-kernel, reiserfs-devel

On Wed, 25 Jul 2007 18:32:58 +0200
Michal Piotrowski <michal.k.k.piotrowski@gmail.com> wrote:

> Andrew Morton pisze:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> > 
> 
> nokturn vs. reiserfs 1:0
> 
> [ 1228.964379] =============================================
> [ 1228.971271] [ INFO: possible recursive locking detected ]
> [ 1228.976674] 2.6.23-rc1-mm1 #1
> [ 1228.979655] ---------------------------------------------
> [ 1228.985064] chcon/21470 is trying to acquire lock:
> [ 1228.989858]  (&inode->i_mutex){--..}, at: [<c06993ea>] mutex_lock+0x1c/0x1f
> [ 1228.996968] 
> [ 1228.996972] but task is already holding lock:
> [ 1229.002834]  (&inode->i_mutex){--..}, at: [<c06993ea>] mutex_lock+0x1c/0x1f
> [ 1229.009958] 
> [ 1229.009962] other info that might help us debug this:
> [ 1229.016510] 3 locks held by chcon/21470:
> [ 1229.020434]  #0:  (&inode->i_mutex){--..}, at: [<c06993ea>] mutex_lock+0x1c/0x1f
> [ 1229.027971]  #1:  (&REISERFS_I(inode)->xattr_sem){----}, at: [<fdd59d36>] reiserfs_setxattr+0x54/0xf2 [reiserfs]
> [ 1229.038282]  #2:  (&REISERFS_SB(s)->xattr_dir_sem){----}, at: [<fdd59d55>] reiserfs_setxattr+0x73/0xf2 [reiserfs]
> [ 1229.048682] 
> [ 1229.048687] stack backtrace:
> [ 1229.053070]  [<c04053eb>] show_trace_log_lvl+0x1a/0x30
> [ 1229.058254]  [<c0406073>] show_trace+0x12/0x14
> [ 1229.062734]  [<c04061a8>] dump_stack+0x16/0x18
> [ 1229.067222]  [<c044c887>] __lock_acquire+0xe19/0x125c
> [ 1229.072309]  [<c044cd71>] lock_acquire+0xa7/0xc1
> [ 1229.076967]  [<c069908e>] __mutex_lock_slowpath+0x9b/0x3db
> [ 1229.082493]  [<c06993ea>] mutex_lock+0x1c/0x1f
> [ 1229.086972]  [<fdd5a2d1>] reiserfs_xattr_set+0x14c/0x2db [reiserfs]
> [ 1229.093281]  [<fdd5a7e2>] security_set+0x4d/0x51 [reiserfs]
> [ 1229.098898]  [<fdd59d6d>] reiserfs_setxattr+0x8b/0xf2 [reiserfs]
> [ 1229.104950]  [<c04aee43>] vfs_setxattr+0x8a/0x199
> [ 1229.109696]  [<c04aefcf>] setxattr+0x7d/0x109
> [ 1229.114087]  [<c04af0ec>] sys_setxattr+0x41/0x53
> [ 1229.118737]  [<c04043ba>] syscall_call+0x7/0xb
> [ 1229.123215]  =======================
> [ 1229.249502] chcon used greatest stack depth: 1080 bytes left
> 
> http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.23-rc1-mm1/console.log
> http://www.stardust.webpages.pl/files/tbf/bitis-gabonica/2.6.23-rc1-mm1/mm-config
> 

The usual two-unrelated-i_mutexes-taken problem.  Usually solved by adding
lockdep annotation to say "this is OK".

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

* 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (11 preceding siblings ...)
  2007-07-25 21:17 ` 2.6.23-rc1-mm1: git-kgdb breaks sh compilation Adrian Bunk
@ 2007-07-25 22:03 ` Valdis.Kletnieks
  2007-07-26  3:37   ` Andrew Morton
  2007-07-26  5:26 ` [-mm patch] DMA engine kconfig improvements Adrian Bunk
                   ` (20 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-25 22:03 UTC (permalink / raw)
  To: Andrew Morton, Kylene Hall; +Cc: linux-kernel

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

On Wed, 25 Jul 2007 04:03:04 PDT, Andrew Morton said:

> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/

It built and booted on the first try for my Dell Latitude D820 laptop, Core2
T7200 x86_64 kernel. Now at about 5 hours of uptime. I guess I got lucky and my
stock .config doesn't trip over any of the issues others are hitting.  I did
hit *one* problem:

Under 2.6.22-rc6-mm1, 'modprobe tpm_tis' did this:

[   10.028000] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[   10.088000] tpm_tis 00:0f: Unable to request irq: 8 for probe

and the modprobe returned immediately.  Under 23-rc1-mm1, the modprobe
takes a *long* time:

[   23.787331] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[   23.787353] tpm0 (IRQ 3) handled a spurious interrupt
[  143.803891] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[  143.803920] tpm0 (IRQ 3) handled a spurious interrupt
[  263.736163] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[  383.668381] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[  385.667261] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62

then it finally returns.  I snuck in a few 'echo t > /proc/sysrq_trigger',
and it's always waiting here:

[  193.154317] modprobe      S 0000001eeae8252d  5488  1446      1
[  193.154321]  ffff8100043d7a98 0000000000000082 0000000000000000 ffffffff80795480
[  193.154325]  ffff8100043d7a48 ffff810003538000 ffffffff806813e0 ffff810003538290
[  193.154329]  0000000004173800 0000000000000202 00000000000000ff ffffffff8023ba74
[  193.154332] Call Trace:
[  193.154336]  [<ffffffff8023ba74>] __mod_timer+0xc4/0xd6
[  193.154340]  [<ffffffff805273cc>] schedule_timeout+0x8d/0xb4
[  193.154344]  [<ffffffff8023b7be>] process_timeout+0x0/0xb
[  193.154347]  [<ffffffff805273c7>] schedule_timeout+0x88/0xb4
[  193.154353]  [<ffffffff880b328a>] :tpm_tis:wait_for_stat+0xb0/0x11a
[  193.154356]  [<ffffffff802460ef>] autoremove_wake_function+0x0/0x38
[  193.154360]  [<ffffffff880b31b0>] :tpm_tis:get_burstcount+0x63/0x8d
[  193.154365]  [<ffffffff880b367e>] :tpm_tis:tpm_tis_send+0x191/0x1d3
[  193.154370]  [<ffffffff803ba945>] tpm_transmit+0x98/0x1f1
[  193.154374]  [<ffffffff803baaf2>] transmit_cmd+0x14/0x2e
[  193.154377]  [<ffffffff803badd8>] tpm_get_timeouts+0xe9/0x13c
[  193.154382]  [<ffffffff880b3ac5>] :tpm_tis:tpm_tis_init+0x405/0x44c
[  193.154387]  [<ffffffff880b3b3a>] :tpm_tis:tpm_tis_pnp_init+0x2e/0x30
[  193.154391]  [<ffffffff8039d8fc>] pnp_device_probe+0x7b/0xa3
[  193.154394]  [<ffffffff803c691e>] driver_probe_device+0xfa/0x17e
[  193.154397]  [<ffffffff803c6a4d>] __driver_attach+0x0/0x94
[  193.154400]  [<ffffffff803c6aa8>] __driver_attach+0x5b/0x94
[  193.154403]  [<ffffffff803c5cd8>] bus_for_each_dev+0x49/0x7a
[  193.154408]  [<ffffffff803c6736>] driver_attach+0x1c/0x1e
[  193.154410]  [<ffffffff803c6046>] bus_add_driver+0x86/0x1a9
[  193.154414]  [<ffffffff803c6cb3>] driver_register+0x72/0x76
[  193.154417]  [<ffffffff8039d692>] pnp_register_driver+0x1c/0x1e
[  193.154421]  [<ffffffff880b8081>] :tpm_tis:init_tis+0x81/0x89
[  193.154425]  [<ffffffff80251d94>] sys_init_module+0x14db/0x1657
[  193.154433]  [<ffffffff8020bece>] system_call+0x7e/0x83

Here's my /proc/interrupts:

           CPU0       CPU1       
  0:   15121156          0   IO-APIC-edge      timer
  1:       3022          0   IO-APIC-edge      i8042
  3:          0          0   IO-APIC-edge      tpm0
  8:          0          0   IO-APIC-edge      rtc
  9:          2          0   IO-APIC-fasteoi   acpi
 12:         85          0   IO-APIC-edge      i8042
 14:      46529          0   IO-APIC-edge      libata
 15:         94          0   IO-APIC-edge      libata
 16:    1301032          0   IO-APIC-fasteoi   nvidia
 17:        148          0   IO-APIC-fasteoi   iwl3945
 19:         10          0   IO-APIC-fasteoi   ohci1394, yenta
 20:       9548          0   IO-APIC-fasteoi   ehci_hcd:usb1, uhci_hcd:usb2
 21:      10544          0   IO-APIC-fasteoi   uhci_hcd:usb3, HDA Intel
 22:          0          0   IO-APIC-fasteoi   uhci_hcd:usb4
 23:          0          0   IO-APIC-fasteoi   uhci_hcd:usb5
506:        111      68979   PCI-MSI-edge      eth0
NMI:          0          0 
LOC:   15121050   15120952 
ERR:          0

(tpm0 on 3 is new with 23-rc1-mm1.  I have *no* idea why 22-rc6-mm1 tried to
put it on irq 8. Yes, kernel is currently tainted with nvidia module, but
at the time of the traceback listed above, I had not yet even gotten the module
built, so the kernel was untainted at that point).

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

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

* Re: 2.6.23-rc1-mm1 -- mostly fails to build
  2007-07-25 16:36 ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
  2007-07-25 17:04   ` Sam Ravnborg
  2007-07-25 18:06   ` 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error Adrian Bunk
@ 2007-07-25 22:41   ` Andy Whitcroft
  2007-07-26  5:56     ` Andrew Morton
  2 siblings, 1 reply; 132+ messages in thread
From: Andy Whitcroft @ 2007-07-25 22:41 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Steve Fox, Mel Gorman

On Wed, Jul 25, 2007 at 05:36:56PM +0100, Andy Whitcroft wrote:

> Will investigate the NUMA-Q explosion and report on that separatly.

Ok, I've been looking at the NUMA-Q boot panic below:

BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000
 printing eip:
c111689f
*pdpt = 0000000001387001
*pde = 0000000000000000
Oops: 0000 [#1]
SMP
Modules linked in:
CPU:    0
EIP:    0060:[<c111689f>]    Not tainted VLI
EFLAGS: 00010286   (2.6.23-rc1-mm1-gc8131905-dirty #251)
EIP is at pci_create_bus+0x11b/0x277
eax: 00000000   ebx: c9352e00   ecx: c9073e94   edx: c9325400
esi: c9325400   edi: c932559c   ebp: 00000002   esp: c9073e90
ds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068
Process swapper (pid: 1, ti=c9072000 task=c9070030 task.ti=c9072000)
Stack: c12adc4f c9325400 00000000 00000002 00000000 00000000 00000000 c934c800
       000000d6 00000000 c1116a09 00000000 c9073ed5 c11b178a 00000000 c934c940
       00000000 02fffff4 c12bd8ac c934c800 c12bd8b4 c9325000 c1119825 c934c800
Call Trace:
 [<c1116a09>] pci_scan_bus_parented+0xe/0x21
 [<c11b178a>] pci_fixup_i450nx+0xa7/0x101
 [<c1119825>] pci_do_fixups+0x2d/0x38
 [<c111665c>] pci_device_add+0x48/0x77
 [<c11166a5>] pci_scan_single_device+0x1a/0x1f
 [<c11166bf>] pci_scan_slot+0x15/0x47
 [<c111670a>] pci_scan_child_bus+0x19/0x7c
 [<c1116a14>] pci_scan_bus_parented+0x19/0x21
 [<c11b259d>] pcibios_scan_root+0x75/0x7e
 [<c1369ee3>] pci_numa_init+0x2c/0xe4
 [<c1354b87>] kernel_init+0x0/0xa1
 [<c1354a15>] do_initcalls+0x73/0x1a3
 [<c109032c>] proc_register+0xa0/0xa7
 [<c10905cd>] create_proc_entry+0x73/0x86
 [<c103a5c9>] register_irq_proc+0x75/0x92
 [<c1354b87>] kernel_init+0x0/0xa1
 [<c1354be6>] kernel_init+0x5f/0xa1
 [<c10031c3>] kernel_thread_helper+0x7/0x10
 =======================
Code: ff 8b 83 84 00 00 00 c7 04 24 4f dc 2a c1 89 44 24 04 e8 f8 42 f0 ff 83 7c 24 14 00 75 15 8b 93 84 00 00 00 85 d2 74 0b 8b 43 44 <8b> 00 89 82 50 01 00 00 c7 44 24 04 9a 04 00 00 8d bb 88 00 00
EIP: [<c111689f>] pci_create_bus+0x11b/0x277 SS:ESP 0068:c9073e90
Kernel panic - not syncing: Attempted to kill init!

This seems to have been caused by the introduction of the following
code fragment into pci_create_bus:

        if (!parent)
                set_dev_node(b->bridge, pcibus_to_node(b));

This has come as part of the -mm patch below:

    try-parent-numa_node-at-first-before-using-default-v2.patch

This patch does not seem to be wrong in and of itself.  It does
expose the fact that we are building busses with NULL sysdata.
This has come up at least three times now.  Below is the patch
proposed the last couple of times.  It is needed to allow any machine
with i450nx quirk, plus for NUMA-Q systems.

Andrew please could you add this to -mm again.

-apw

===
pci device ensure sysdata initialised v3

We have been seeing panic's on NUMA systems in pci_call_probe() in
2.6.19-rc1-mm1 and later.  This is related to the changes introduced
in the commit below:

    [x86, PCI] Switch pci_bus::sysdata from NUMA node integer to a pointer
    0a247a58fc3e2ecfc17654301033e8b8d08df2a2

In this change the sysdata has changed from directly representing
a value (the node number in NUMA) to a pointer to a structure.
However, it seems that we do not always initialise this sysdata
before we probe the device.

Prior to the changes above the node was defaulted to 'NULL'
allocating the devices to node 0 unconditionally.  This patch adds
a default sysdata entry (pci_default_sysdata), this is then used
where 'NULL' was used previously.  pci_default_sysdata defaults
the node to unknown (-1).  This is a more accurate assignment,
mirroring the value returned where no topology support is provided
and no locality information is available.

There are only two uses of this value in the affected architectures
(x86, x86_64) and generic code:

1) in x86_64, dma_alloc_pages() looks up the node in order to
   allocate node local memory.  Here if the node is invalid we
   will default to the first online node.  Behaviour here should
   be unchanged.
2) in generic, pci_call_probe() looks up the node in order to
   restrict execution of the probe on the card local node, to
   favor node local allocation.  Where this is unknown previously
   we would force execution (and thereby allocation) to node 0,
   this is arguably wrong and using -1 releases this restriction.

In an ideal world we should be supplying a sysdata for the
appropriate node where it is known.  Where it is not known defaulting
to -1 seems a better course, and would help us where node 0 is
short of memory.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
---
---
diff --git a/arch/i386/pci/common.c b/arch/i386/pci/common.c
index 85503de..362b7b4 100644
--- a/arch/i386/pci/common.c
+++ b/arch/i386/pci/common.c
@@ -27,6 +27,8 @@ unsigned long pirq_table_addr;
 struct pci_bus *pci_root_bus;
 struct pci_raw_ops *raw_pci_ops;
 
+struct pci_sysdata pci_default_sysdata = { .node = -1 };
+
 static int pci_read(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 *value)
 {
 	return raw_pci_ops->read(0, bus->number, devfn, where, size, value);
diff --git a/arch/i386/pci/fixup.c b/arch/i386/pci/fixup.c
index e7306db..80365ac 100644
--- a/arch/i386/pci/fixup.c
+++ b/arch/i386/pci/fixup.c
@@ -25,9 +25,11 @@ static void __devinit pci_fixup_i450nx(struct pci_dev *d)
 		pci_read_config_byte(d, reg++, &subb);
 		DBG("i450NX PXB %d: %02x/%02x/%02x\n", pxb, busno, suba, subb);
 		if (busno)
-			pci_scan_bus(busno, &pci_root_ops, NULL);	/* Bus A */
+			pci_scan_bus(busno, &pci_root_ops,
+					&pci_default_sysdata);	/* Bus A */
 		if (suba < subb)
-			pci_scan_bus(suba+1, &pci_root_ops, NULL);	/* Bus B */
+			pci_scan_bus(suba+1, &pci_root_ops,
+					&pci_default_sysdata);	/* Bus B */
 	}
 	pcibios_last_bus = -1;
 }
@@ -42,7 +44,7 @@ static void __devinit pci_fixup_i450gx(struct pci_dev *d)
 	u8 busno;
 	pci_read_config_byte(d, 0x4a, &busno);
 	printk(KERN_INFO "PCI: i440KX/GX host bridge %s: secondary bus %02x\n", pci_name(d), busno);
-	pci_scan_bus(busno, &pci_root_ops, NULL);
+	pci_scan_bus(busno, &pci_root_ops, &pci_default_sysdata);
 	pcibios_last_bus = -1;
 }
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454GX, pci_fixup_i450gx);
diff --git a/arch/i386/pci/legacy.c b/arch/i386/pci/legacy.c
index 149a958..b076b25 100644
--- a/arch/i386/pci/legacy.c
+++ b/arch/i386/pci/legacy.c
@@ -26,7 +26,8 @@ static void __devinit pcibios_fixup_peer_bridges(void)
 			    l != 0x0000 && l != 0xffff) {
 				DBG("Found device at %02x:%02x [%04x]\n", n, devfn, l);
 				printk(KERN_INFO "PCI: Discovered peer bus %02x\n", n);
-				pci_scan_bus(n, &pci_root_ops, NULL);
+				pci_scan_bus(n, &pci_root_ops, 
+						&pci_default_sysdata);
 				break;
 			}
 		}
diff --git a/arch/i386/pci/numa.c b/arch/i386/pci/numa.c
index adbe17a..8d2fd6c 100644
--- a/arch/i386/pci/numa.c
+++ b/arch/i386/pci/numa.c
@@ -97,9 +97,11 @@ static void __devinit pci_fixup_i450nx(struct pci_dev *d)
 		pci_read_config_byte(d, reg++, &subb);
 		DBG("i450NX PXB %d: %02x/%02x/%02x\n", pxb, busno, suba, subb);
 		if (busno)
-			pci_scan_bus(QUADLOCAL2BUS(quad,busno), &pci_root_ops, NULL);	/* Bus A */
+			pci_scan_bus(QUADLOCAL2BUS(quad,busno), &pci_root_ops,
+					&pci_default_sysdata);	/* Bus A */
 		if (suba < subb)
-			pci_scan_bus(QUADLOCAL2BUS(quad,suba+1), &pci_root_ops, NULL);	/* Bus B */
+			pci_scan_bus(QUADLOCAL2BUS(quad,suba+1), &pci_root_ops,
+					&pci_default_sysdata);	/* Bus B */
 	}
 	pcibios_last_bus = -1;
 }
@@ -124,7 +126,7 @@ static int __init pci_numa_init(void)
 			printk("Scanning PCI bus %d for quad %d\n", 
 				QUADLOCAL2BUS(quad,0), quad);
 			pci_scan_bus(QUADLOCAL2BUS(quad,0), 
-				&pci_root_ops, NULL);
+				&pci_root_ops, &pci_default_sysdata);
 		}
 	return 0;
 }
diff --git a/arch/i386/pci/visws.c b/arch/i386/pci/visws.c
index f1b486d..2539371 100644
--- a/arch/i386/pci/visws.c
+++ b/arch/i386/pci/visws.c
@@ -101,8 +101,8 @@ static int __init pcibios_init(void)
 		"bridge B (PIIX4) bus: %u\n", pci_bus1, pci_bus0);
 
 	raw_pci_ops = &pci_direct_conf1;
-	pci_scan_bus(pci_bus0, &pci_root_ops, NULL);
-	pci_scan_bus(pci_bus1, &pci_root_ops, NULL);
+	pci_scan_bus(pci_bus0, &pci_root_ops, &pci_default_sysdata);
+	pci_scan_bus(pci_bus1, &pci_root_ops, &pci_default_sysdata);
 	pci_fixup_irqs(visws_swizzle, visws_map_irq);
 	pcibios_resource_survey();
 	return 0;
diff --git a/include/asm-i386/pci.h b/include/asm-i386/pci.h
index d790343..7003604 100644
--- a/include/asm-i386/pci.h
+++ b/include/asm-i386/pci.h
@@ -7,6 +7,7 @@
 struct pci_sysdata {
 	int		node;		/* NUMA node */
 };
+extern struct pci_sysdata pci_default_sysdata;
 
 #include <linux/mm.h>		/* for struct page */
 
diff --git a/include/asm-x86_64/pci.h b/include/asm-x86_64/pci.h
index 88926eb..2c2b092 100644
--- a/include/asm-x86_64/pci.h
+++ b/include/asm-x86_64/pci.h
@@ -9,6 +9,7 @@ struct pci_sysdata {
 	int		node;		/* NUMA node */
 	void*		iommu;		/* IOMMU private data */
 };
+extern struct pci_sysdata pci_default_sysdata;
 
 #ifdef CONFIG_CALGARY_IOMMU
 static inline void* pci_iommu(struct pci_bus *bus)

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

* Re: 2.6.23-rc1-mm1: chipsfb_pci_suspend problem
  2007-07-25 20:22     ` Andrew Morton
@ 2007-07-25 22:45       ` Pavel Machek
  0 siblings, 0 replies; 132+ messages in thread
From: Pavel Machek @ 2007-07-25 22:45 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Rafael J. Wysocki, Cedric Le Goater, linux-kernel, Antonino A. Daplas

Hi!

> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> > > 
> > > from pm-move-definition-of-struct-pm_ops-to-suspendh.patch :
> > > 
> > > drivers/video/chipsfb.c: In function 'chipsfb_pci_suspend':
> > > drivers/video/chipsfb.c:461: error: 'PM_SUSPEND_MEM' undeclared (first use in this function)
> > > drivers/video/chipsfb.c:461: error: (Each undeclared identifier is reported only once
> > > drivers/video/chipsfb.c:461: error: for each function it appears in.)
> > 
> > Well, actually, this is a bug in chipsfb.c, as it shouldn't use PM_SUSPEND_MEM
> > in there, but PMSG_SUSPEND (patch untested).
> > 
> > ---
> >  drivers/video/chipsfb.c |    2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > Index: linux-2.6.23-rc1/drivers/video/chipsfb.c
> > ===================================================================
> > --- linux-2.6.23-rc1.orig/drivers/video/chipsfb.c
> > +++ linux-2.6.23-rc1/drivers/video/chipsfb.c
> > @@ -458,7 +458,7 @@ static int chipsfb_pci_suspend(struct pc
> >  
> >  	if (state.event == pdev->dev.power.power_state.event)
> >  		return 0;
> > -	if (state.event != PM_SUSPEND_MEM)
> > +	if (state != PMSG_SUSPEND)
> >  		goto done;
> >  
> >  	acquire_console_sem();
> 
> For reasons which aren't immediately obvious, the compiler didn't like
> that: comparing with an immediate struct liek that is a bit tricky.

Yes, that was deliberate "type safety".

> This is equivalent, and works:
> 
> 
> --- a/drivers/video/chipsfb.c~chipsfb-use-correct-pm-state
> +++ a/drivers/video/chipsfb.c
> @@ -24,6 +24,7 @@
>  #include <linux/delay.h>
>  #include <linux/interrupt.h>
>  #include <linux/fb.h>
> +#include <linux/pm.h>
>  #include <linux/init.h>
>  #include <linux/pci.h>
>  #include <linux/console.h>
> @@ -458,7 +459,7 @@ static int chipsfb_pci_suspend(struct pc
>  
>  	if (state.event == pdev->dev.power.power_state.event)
>  		return 0;
> -	if (state.event != PM_SUSPEND_MEM)
> +	if (state.event != PM_EVENT_SUSPEND)

And this is indeed correct. ACK.

> Is this a 2.6.23 thing?

Should not hurt anything, i'd say so.
								Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 18:58     ` 2.6.23-rc1-mm1 Andrew Morton
  2007-07-25 19:13       ` 2.6.23-rc1-mm1 Torsten Kaiser
@ 2007-07-25 23:26       ` Len Brown
  2007-07-26  9:41         ` 2.6.23-rc1-mm1 Mel Gorman
  1 sibling, 1 reply; 132+ messages in thread
From: Len Brown @ 2007-07-25 23:26 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Cedric Le Goater, linux-kernel, Shaohua Li

On Wednesday 25 July 2007 14:58, Andrew Morton wrote:
> On Wed, 25 Jul 2007 13:23:04 -0400
> Len Brown <lenb@kernel.org> wrote:
> 
> > Andrew, you want to re-pull the acpi tree, or do you want me to send
> > you some patches on top of the current mm?
> 
> I'd appreciate a fix for this one, please - I'll drop it int he hot-fixes
> directory as quite a few people seem to be hitting this.

Maybe simpler for mm1 to go backwards in time rather than forwards.
This should fix the problem at hand.

cheers,
-Len

commit 106994f83cdd97c77bfe1b333ca369560b6d0649
Author: Len Brown <len.brown@intel.com>
Date:   Wed Jul 25 19:17:38 2007 -0400

    ACPI: revert d-states branch from Jun-17 to Jun-19 for 2.6.23-rc1-mm1
    
    Signed-off-by: Len Brown <len.brown@intel.com>
---
 drivers/acpi/sleep/main.c  |   75 ---------------------------------
 drivers/pci/pci-acpi.c     |   28 +-----------
 drivers/pci/pci.c          |    8 +--
 drivers/pci/pci.h          |    2
 drivers/pnp/driver.c       |    5 --
 drivers/pnp/pnpacpi/core.c |   14 ------
 include/acpi/acpi_bus.h    |    2
 include/linux/pnp.h        |    4 -
 8 files changed, 9 insertions(+), 129 deletions(-)

diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c
index 34abe8e..ada2a6e 100644
--- a/drivers/acpi/sleep/main.c
+++ b/drivers/acpi/sleep/main.c
@@ -261,81 +261,6 @@ static struct platform_hibernation_ops acpi_hibernation_ops = {
 };
 #endif				/* CONFIG_SOFTWARE_SUSPEND */
 
-/**
- *	acpi_pm_device_sleep_state - return preferred power state of ACPI device
- *		in the system sleep state given by %acpi_target_sleep_state
- *	@dev: device to examine
- *	@wake: if set, the device should be able to wake up the system
- *	@d_min_p: used to store the upper limit of allowed states range
- *	Return value: preferred power state of the device on success, -ENODEV on
- *		failure (ie. if there's no 'struct acpi_device' for @dev)
- *
- *	Find the lowest power (highest number) ACPI device power state that
- *	device @dev can be in while the system is in the sleep state represented
- *	by %acpi_target_sleep_state.  If @wake is nonzero, the device should be
- *	able to wake up the system from this sleep state.  If @d_min_p is set,
- *	the highest power (lowest number) device power state of @dev allowed
- *	in this system sleep state is stored at the location pointed to by it.
- *
- *	The caller must ensure that @dev is valid before using this function.
- *	The caller is also responsible for figuring out if the device is
- *	supposed to be able to wake up the system and passing this information
- *	via @wake.
- */
-
-int acpi_pm_device_sleep_state(struct device *dev, int wake, int *d_min_p)
-{
-	acpi_handle handle = DEVICE_ACPI_HANDLE(dev);
-	struct acpi_device *adev;
-	char acpi_method[] = "_SxD";
-	unsigned long d_min, d_max;
-
-	if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &adev))) {
-		printk(KERN_ERR "ACPI handle has no context!\n");
-		return -ENODEV;
-	}
-
-	acpi_method[2] = '0' + acpi_target_sleep_state;
-	/*
-	 * If the sleep state is S0, we will return D3, but if the device has
-	 * _S0W, we will use the value from _S0W
-	 */
-	d_min = ACPI_STATE_D0;
-	d_max = ACPI_STATE_D3;
-
-	/*
-	 * If present, _SxD methods return the minimum D-state (highest power
-	 * state) we can use for the corresponding S-states.  Otherwise, the
-	 * minimum D-state is D0 (ACPI 3.x).
-	 *
-	 * NOTE: We rely on acpi_evaluate_integer() not clobbering the integer
-	 * provided -- that's our fault recovery, we ignore retval.
-	 */
-	if (acpi_target_sleep_state > ACPI_STATE_S0)
-		acpi_evaluate_integer(handle, acpi_method, NULL, &d_min);
-
-	/*
-	 * If _PRW says we can wake up the system from the target sleep state,
-	 * the D-state returned by _SxD is sufficient for that (we assume a
-	 * wakeup-aware driver if wake is set).  Still, if _SxW exists
-	 * (ACPI 3.x), it should return the maximum (lowest power) D-state that
-	 * can wake the system.  _S0W may be valid, too.
-	 */
-	if (acpi_target_sleep_state == ACPI_STATE_S0 ||
-	    (wake && adev->wakeup.state.enabled &&
-	     adev->wakeup.sleep_state <= acpi_target_sleep_state)) {
-		acpi_method[3] = 'W';
-		acpi_evaluate_integer(handle, acpi_method, NULL, &d_max);
-		/* Sanity check */
-		if (d_max < d_min)
-			d_min = d_max;
-	}
-
-	if (d_min_p)
-		*d_min_p = d_min;
-	return d_max;
-}
-
 /*
  * Toshiba fails to preserve interrupts over S1, reinitialization
  * of 8259 is needed after S1 resume.
diff --git a/drivers/pci/pci-acpi.c b/drivers/pci/pci-acpi.c
index 67c63d1..c806249 100644
--- a/drivers/pci/pci-acpi.c
+++ b/drivers/pci/pci-acpi.c
@@ -245,33 +245,16 @@ EXPORT_SYMBOL(pci_osc_control_set);
  * currently we simply return _SxD, if present.
  */
 
-static pci_power_t acpi_pci_choose_state(struct pci_dev *pdev,
-	pm_message_t state)
+static int acpi_pci_choose_state(struct pci_dev *pdev, pm_message_t state)
 {
-	int acpi_state;
-
-	acpi_state = acpi_pm_device_sleep_state(&pdev->dev,
-		device_may_wakeup(&pdev->dev), NULL);
-	if (acpi_state < 0)
-		return PCI_POWER_ERROR;
-
-	switch (acpi_state) {
-	case ACPI_STATE_D0:
-		return PCI_D0;
-	case ACPI_STATE_D1:
-		return PCI_D1;
-	case ACPI_STATE_D2:
-		return PCI_D2;
-	case ACPI_STATE_D3:
-		return PCI_D3hot;
-	}
-	return PCI_POWER_ERROR;
+	/* TBD */
+
+	return -ENODEV;
 }
 
 static int acpi_pci_set_power_state(struct pci_dev *dev, pci_power_t state)
 {
 	acpi_handle handle = DEVICE_ACPI_HANDLE(&dev->dev);
-	acpi_handle tmp;
 	static int state_conv[] = {
 		[0] = 0,
 		[1] = 1,
@@ -283,9 +266,6 @@ static int acpi_pci_set_power_state(struct pci_dev *dev, pci_power_t state)
 
 	if (!handle)
 		return -ENODEV;
-	/* If the ACPI device has _EJ0, ignore the device */
-	if (ACPI_SUCCESS(acpi_get_handle(handle, "_EJ0", &tmp)))
-		return 0;
 	return acpi_bus_set_power(handle, acpi_state);
 }
 
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index b731cd1..15632b2 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -499,7 +499,7 @@ pci_set_power_state(struct pci_dev *dev, pci_power_t state)
 	return 0;
 }
 
-pci_power_t (*platform_pci_choose_state)(struct pci_dev *dev, pm_message_t state);
+int (*platform_pci_choose_state)(struct pci_dev *dev, pm_message_t state);
  
 /**
  * pci_choose_state - Choose the power state of a PCI device
@@ -513,15 +513,15 @@ pci_power_t (*platform_pci_choose_state)(struct pci_dev *dev, pm_message_t state
 
 pci_power_t pci_choose_state(struct pci_dev *dev, pm_message_t state)
 {
-	pci_power_t ret;
+	int ret;
 
 	if (!pci_find_capability(dev, PCI_CAP_ID_PM))
 		return PCI_D0;
 
 	if (platform_pci_choose_state) {
 		ret = platform_pci_choose_state(dev, state);
-		if (ret != PCI_POWER_ERROR)
-			return ret;
+		if (ret >= 0)
+			state.event = ret;
 	}
 
 	switch (state.event) {
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
index 3bdfc3e..5692c3f 100644
--- a/drivers/pci/pci.h
+++ b/drivers/pci/pci.h
@@ -7,7 +7,7 @@ extern void pci_remove_sysfs_dev_files(struct pci_dev *pdev);
 extern void pci_cleanup_rom(struct pci_dev *dev);
 
 /* Firmware callbacks */
-extern pci_power_t (*platform_pci_choose_state)(struct pci_dev *dev, pm_message_t state);
+extern int (*platform_pci_choose_state)(struct pci_dev *dev, pm_message_t state);
 extern int (*platform_pci_set_power_state)(struct pci_dev *dev, pci_power_t state);
 
 extern int pci_user_read_config_byte(struct pci_dev *dev, int where, u8 *val);
diff --git a/drivers/pnp/driver.c b/drivers/pnp/driver.c
index 1432806..e161423 100644
--- a/drivers/pnp/driver.c
+++ b/drivers/pnp/driver.c
@@ -167,8 +167,6 @@ static int pnp_bus_suspend(struct device *dev, pm_message_t state)
 	    		return error;
 	}
 
-	if (pnp_dev->protocol && pnp_dev->protocol->suspend)
-		pnp_dev->protocol->suspend(pnp_dev, state);
 	return 0;
 }
 
@@ -181,9 +179,6 @@ static int pnp_bus_resume(struct device *dev)
 	if (!pnp_drv)
 		return 0;
 
-	if (pnp_dev->protocol && pnp_dev->protocol->resume)
-		pnp_dev->protocol->resume(pnp_dev);
-
 	if (!(pnp_drv->flags & PNP_DRIVER_RES_DO_NOT_CHANGE)) {
 		error = pnp_start_dev(pnp_dev);
 		if (error)
diff --git a/drivers/pnp/pnpacpi/core.c b/drivers/pnp/pnpacpi/core.c
index c37a558..a005487 100644
--- a/drivers/pnp/pnpacpi/core.c
+++ b/drivers/pnp/pnpacpi/core.c
@@ -119,25 +119,11 @@ static int pnpacpi_disable_resources(struct pnp_dev *dev)
 	return ACPI_FAILURE(status) ? -ENODEV : 0;
 }
 
-static int pnpacpi_suspend(struct pnp_dev *dev, pm_message_t state)
-{
-	return acpi_bus_set_power((acpi_handle)dev->data,
-		acpi_pm_device_sleep_state(&dev->dev,
-		device_may_wakeup(&dev->dev), NULL));
-}
-
-static int pnpacpi_resume(struct pnp_dev *dev)
-{
-	return acpi_bus_set_power((acpi_handle)dev->data, ACPI_STATE_D0);
-}
-
 static struct pnp_protocol pnpacpi_protocol = {
 	.name	= "Plug and Play ACPI",
 	.get	= pnpacpi_get_resources,
 	.set	= pnpacpi_set_resources,
 	.disable = pnpacpi_disable_resources,
-	.suspend = pnpacpi_suspend,
-	.resume = pnpacpi_resume,
 };
 
 static int __init pnpacpi_add_device(struct acpi_device *device)
diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
index a9f73ef..5e3dcf3 100644
--- a/include/acpi/acpi_bus.h
+++ b/include/acpi/acpi_bus.h
@@ -365,8 +365,6 @@ acpi_handle acpi_get_child(acpi_handle, acpi_integer);
 acpi_handle acpi_get_pci_rootbridge_handle(unsigned int, unsigned int);
 #define DEVICE_ACPI_HANDLE(dev) ((acpi_handle)((dev)->archdata.acpi_handle))
 
-int acpi_pm_device_sleep_state(struct device *, int, int *);
-
 #endif				/* CONFIG_ACPI */
 
 #endif /*__ACPI_BUS_H__*/
diff --git a/include/linux/pnp.h b/include/linux/pnp.h
index 66edb22..2a1897e 100644
--- a/include/linux/pnp.h
+++ b/include/linux/pnp.h
@@ -335,10 +335,6 @@ struct pnp_protocol {
 	int (*set)(struct pnp_dev *dev, struct pnp_resource_table *res);
 	int (*disable)(struct pnp_dev *dev);
 
-	/* protocol specific suspend/resume */
-	int (*suspend)(struct pnp_dev *dev, pm_message_t state);
-	int (*resume)(struct pnp_dev *dev);
-
 	/* used by pnp layer only (look but don't touch) */
 	unsigned char		number;		/* protocol number*/
 	struct device		dev;		/* link to driver model */

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 21:05         ` 2.6.23-rc1-mm1 Gabriel C
  2007-07-25 21:11           ` 2.6.23-rc1-mm1 H. Peter Anvin
@ 2007-07-26  0:07           ` Greg KH
  2007-07-26  0:28             ` 2.6.23-rc1-mm1 Andrew Morton
  2007-07-26 20:18             ` 2.6.23-rc1-mm1 Dave Hansen
  1 sibling, 2 replies; 132+ messages in thread
From: Greg KH @ 2007-07-26  0:07 UTC (permalink / raw)
  To: Gabriel C, Dave Hansen
  Cc: H. Peter Anvin, Sam Ravnborg, Michal Piotrowski, Andrew Morton,
	linux-kernel, Andi Kleen

On Wed, Jul 25, 2007 at 11:05:22PM +0200, Gabriel C wrote:
> Gabriel C wrote:
> > H. Peter Anvin wrote:
> >> Sam Ravnborg wrote:
> >>> On Wed, Jul 25, 2007 at 08:48:50PM +0200, Michal Piotrowski wrote:
> >>>> On 25/07/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> >>>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> >>>>>
> >>>>>
> >>>> Andi, this might be interesting for you
> >>>>
> >>>> make allmodconfig
> >>>> make
> >>>> [...]
> >>>> WARNING: Absolute relocations present
> >>>> Offset     Info     Type     Sym.Value Sym.Name
> >>>> c02041b3 00705601   R_386_32 c0308aa8  _sdata
> >>> Who did spit out this warning. Can you please provide make V=1
> >>> where we see the lines preceeding the warning.
> >>>
> >>> And config please.
> >>>
> >> config: "make allmodconfig"
> >>
> >> System.map would be more interesting, especially what is at 0xc02041b3.
> > 
> > I get here :
> > 
> > WARNING: Absolute relocations present
> > Offset     Info     Type     Sym.Value Sym.Name
> > c0202e73 00703601   R_386_32 c03071bc  _sdata
> > 
> > $ grep c03071bc System.map
> > c03071bc R __tracedata_end
> > c03071bc A _sdata
> 
> 
> Guessing is this patch ?
> 
> gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:           __tracedata_end = .;
> gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:+  _sdata = .;                     /* End of text section */

This patch is a horrible hack to try to see if kobjects are static and
not dynamically created.

Dave, any ideas what is happening here?

thanks,

greg k-h

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

* Re: 2.6.23-rc1-mm1
  2007-07-26  0:07           ` 2.6.23-rc1-mm1 Greg KH
@ 2007-07-26  0:28             ` Andrew Morton
  2007-07-26  1:55               ` 2.6.23-rc1-mm1 Dave Young
  2007-07-26 20:18             ` 2.6.23-rc1-mm1 Dave Hansen
  1 sibling, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-26  0:28 UTC (permalink / raw)
  To: Greg KH
  Cc: Gabriel C, Dave Hansen, H. Peter Anvin, Sam Ravnborg,
	Michal Piotrowski, linux-kernel, Andi Kleen

On Wed, 25 Jul 2007 17:07:05 -0700
Greg KH <gregkh@suse.de> wrote:

> > Guessing is this patch ?
> > 
> > gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:           __tracedata_end = .;
> > gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:+  _sdata = .;                     /* End of text section */
> 
> This patch is a horrible hack to try to see if kobjects are static and
> not dynamically created.

You could perhaps use something like module_address_lookup() for this
debugging aid.

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

* Re: 2.6.23-rc1-mm1: git-kgdb breaks sh compilation
  2007-07-25 21:17 ` 2.6.23-rc1-mm1: git-kgdb breaks sh compilation Adrian Bunk
@ 2007-07-26  1:45   ` Paul Mundt
  0 siblings, 0 replies; 132+ messages in thread
From: Paul Mundt @ 2007-07-26  1:45 UTC (permalink / raw)
  To: Adrian Bunk
  Cc: Andrew Morton, jason.wessel, amitkale, linux-kernel, kgdb-bugreport

On Wed, Jul 25, 2007 at 11:17:41PM +0200, Adrian Bunk wrote:
> On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
> >...
> > Changes since 2.6.22-rc6-mm1:
> >...
> >  git-kgdb.patch
> > 
> >  git trees
> >...
> 
> This causes the following compile error on sh:
> 
> <--  snip  -->
> 
> ...
>   CC      drivers/serial/sh-sci.o
> drivers/serial/sh-sci.c: In function 'put_string':
> drivers/serial/sh-sci.c:188: error: 'hexchars' undeclared (first use in this function)
> drivers/serial/sh-sci.c:188: error: (Each undeclared identifier is reported only once
> drivers/serial/sh-sci.c:188: error: for each function it appears in.)
> make[3]: *** [drivers/serial/sh-sci.o] Error 1
> 
> <--  snip  -->
> 
Cool, it's like 5 years ago all over again. It looks like most of
the kgdb stuff is going to need to be re-ported, as it's effectively
thrown out years of changes, and perhaps not surprisingly, blows up quite
spectacularly in the process.

At least this problem with KGDB disabled is an easy fix. I'll see about
getting CONFIG_KGDB=y resynced with the current serial driver and arch
stub.

-----

serial: sh-sci: Fix build failure from kgdb fallout.

  CC      drivers/serial/sh-sci.o
drivers/serial/sh-sci.c: In function 'put_string':
drivers/serial/sh-sci.c:188: error: 'hexchars' undeclared (first use in this function)
drivers/serial/sh-sci.c:188: error: (Each undeclared identifier is reported only once
drivers/serial/sh-sci.c:188: error: for each function it appears in.)
make[3]: *** [drivers/serial/sh-sci.o] Error 1

Reported-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>

--

 drivers/serial/sh-sci.c |    1 +
 1 file changed, 1 insertion(+)

diff -X linux-2.6.23-rc1-mm1/Documentation/dontdiff -urN linux-2.6.23-rc1-mm1.orig/drivers/serial/sh-sci.c linux-2.6.23-rc1-mm1/drivers/serial/sh-sci.c
--- linux-2.6.23-rc1-mm1.orig/drivers/serial/sh-sci.c	2007-07-26 10:23:51.000000000 +0900
+++ linux-2.6.23-rc1-mm1/drivers/serial/sh-sci.c	2007-07-26 10:34:59.000000000 +0900
@@ -161,6 +161,7 @@
 
 #if defined(CONFIG_SH_STANDARD_BIOS) || defined(CONFIG_SH_KGDB)
 	int checksum;
+	const char hexchars[] = "0123456789abcdef";
 	int usegdb=0;
 
 #ifdef CONFIG_SH_STANDARD_BIOS

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

* Re: 2.6.23-rc1-mm1
  2007-07-26  0:28             ` 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-26  1:55               ` Dave Young
  2007-07-26  2:23                 ` 2.6.23-rc1-mm1 Andrew Morton
  0 siblings, 1 reply; 132+ messages in thread
From: Dave Young @ 2007-07-26  1:55 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Greg KH, Gabriel C, Dave Hansen, H. Peter Anvin, Sam Ravnborg,
	Michal Piotrowski, linux-kernel, Andi Kleen

Hi,
drivers/built-in.o(.text+0xc649): In function `acpi_pci_choose_state':
: undefined reference to `acpi_pm_device_sleep_state'
drivers/built-in.o(.text+0x3fe08): In function `pnpacpi_suspend':
: undefined reference to `acpi_pm_device_sleep_state'
make: *** [.tmp_vmlinux1] Error 1

The pci-acpi.c depends on CONFIG_ACPI_SLEEP

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

* Re: 2.6.23-rc1-mm1
  2007-07-26  1:55               ` 2.6.23-rc1-mm1 Dave Young
@ 2007-07-26  2:23                 ` Andrew Morton
  0 siblings, 0 replies; 132+ messages in thread
From: Andrew Morton @ 2007-07-26  2:23 UTC (permalink / raw)
  To: Dave Young
  Cc: Greg KH, Gabriel C, Dave Hansen, H. Peter Anvin, Sam Ravnborg,
	Michal Piotrowski, linux-kernel, Andi Kleen

On Thu, 26 Jul 2007 01:55:03 +0000 "Dave Young" <hidave.darkstar@gmail.com> wrote:

> Hi,
> drivers/built-in.o(.text+0xc649): In function `acpi_pci_choose_state':
> : undefined reference to `acpi_pm_device_sleep_state'
> drivers/built-in.o(.text+0x3fe08): In function `pnpacpi_suspend':
> : undefined reference to `acpi_pm_device_sleep_state'
> make: *** [.tmp_vmlinux1] Error 1
> 
> The pci-acpi.c depends on CONFIG_ACPI_SLEEP

There's a hopeful-fix for this in 
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/hot-fixes/

(will be readable in a few minutes - I had to chmod it)

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-25 22:03 ` 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis Valdis.Kletnieks
@ 2007-07-26  3:37   ` Andrew Morton
  2007-07-27  4:00     ` Valdis.Kletnieks
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-26  3:37 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Kylene Hall, linux-kernel, tpm

On Wed, 25 Jul 2007 18:03:14 -0400 Valdis.Kletnieks@vt.edu wrote:

> On Wed, 25 Jul 2007 04:03:04 PDT, Andrew Morton said:
> 
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 
> It built and booted on the first try for my Dell Latitude D820 laptop, Core2
> T7200 x86_64 kernel. Now at about 5 hours of uptime. I guess I got lucky and my
> stock .config doesn't trip over any of the issues others are hitting.  I did
> hit *one* problem:
> 
> Under 2.6.22-rc6-mm1, 'modprobe tpm_tis' did this:
> 
> [   10.028000] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
> [   10.088000] tpm_tis 00:0f: Unable to request irq: 8 for probe
> 
> and the modprobe returned immediately.  Under 23-rc1-mm1, the modprobe
> takes a *long* time:
> 
> [   23.787331] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
> [   23.787353] tpm0 (IRQ 3) handled a spurious interrupt
> [  143.803891] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
> [  143.803920] tpm0 (IRQ 3) handled a spurious interrupt
> [  263.736163] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
> [  383.668381] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
> [  385.667261] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
> 
> then it finally returns.  I snuck in a few 'echo t > /proc/sysrq_trigger',
> and it's always waiting here:
> 
> [  193.154317] modprobe      S 0000001eeae8252d  5488  1446      1
> [  193.154321]  ffff8100043d7a98 0000000000000082 0000000000000000 ffffffff80795480
> [  193.154325]  ffff8100043d7a48 ffff810003538000 ffffffff806813e0 ffff810003538290
> [  193.154329]  0000000004173800 0000000000000202 00000000000000ff ffffffff8023ba74
> [  193.154332] Call Trace:
> [  193.154336]  [<ffffffff8023ba74>] __mod_timer+0xc4/0xd6
> [  193.154340]  [<ffffffff805273cc>] schedule_timeout+0x8d/0xb4
> [  193.154344]  [<ffffffff8023b7be>] process_timeout+0x0/0xb
> [  193.154347]  [<ffffffff805273c7>] schedule_timeout+0x88/0xb4
> [  193.154353]  [<ffffffff880b328a>] :tpm_tis:wait_for_stat+0xb0/0x11a
> [  193.154356]  [<ffffffff802460ef>] autoremove_wake_function+0x0/0x38
> [  193.154360]  [<ffffffff880b31b0>] :tpm_tis:get_burstcount+0x63/0x8d
> [  193.154365]  [<ffffffff880b367e>] :tpm_tis:tpm_tis_send+0x191/0x1d3
> [  193.154370]  [<ffffffff803ba945>] tpm_transmit+0x98/0x1f1
> [  193.154374]  [<ffffffff803baaf2>] transmit_cmd+0x14/0x2e
> [  193.154377]  [<ffffffff803badd8>] tpm_get_timeouts+0xe9/0x13c
> [  193.154382]  [<ffffffff880b3ac5>] :tpm_tis:tpm_tis_init+0x405/0x44c
> [  193.154387]  [<ffffffff880b3b3a>] :tpm_tis:tpm_tis_pnp_init+0x2e/0x30
> [  193.154391]  [<ffffffff8039d8fc>] pnp_device_probe+0x7b/0xa3
> [  193.154394]  [<ffffffff803c691e>] driver_probe_device+0xfa/0x17e
> [  193.154397]  [<ffffffff803c6a4d>] __driver_attach+0x0/0x94
> [  193.154400]  [<ffffffff803c6aa8>] __driver_attach+0x5b/0x94
> [  193.154403]  [<ffffffff803c5cd8>] bus_for_each_dev+0x49/0x7a
> [  193.154408]  [<ffffffff803c6736>] driver_attach+0x1c/0x1e
> [  193.154410]  [<ffffffff803c6046>] bus_add_driver+0x86/0x1a9
> [  193.154414]  [<ffffffff803c6cb3>] driver_register+0x72/0x76
> [  193.154417]  [<ffffffff8039d692>] pnp_register_driver+0x1c/0x1e
> [  193.154421]  [<ffffffff880b8081>] :tpm_tis:init_tis+0x81/0x89
> [  193.154425]  [<ffffffff80251d94>] sys_init_module+0x14db/0x1657
> [  193.154433]  [<ffffffff8020bece>] system_call+0x7e/0x83
> 
> Here's my /proc/interrupts:
> 
>            CPU0       CPU1       
>   0:   15121156          0   IO-APIC-edge      timer
>   1:       3022          0   IO-APIC-edge      i8042
>   3:          0          0   IO-APIC-edge      tpm0
>   8:          0          0   IO-APIC-edge      rtc
>   9:          2          0   IO-APIC-fasteoi   acpi
>  12:         85          0   IO-APIC-edge      i8042
>  14:      46529          0   IO-APIC-edge      libata
>  15:         94          0   IO-APIC-edge      libata
>  16:    1301032          0   IO-APIC-fasteoi   nvidia
>  17:        148          0   IO-APIC-fasteoi   iwl3945
>  19:         10          0   IO-APIC-fasteoi   ohci1394, yenta
>  20:       9548          0   IO-APIC-fasteoi   ehci_hcd:usb1, uhci_hcd:usb2
>  21:      10544          0   IO-APIC-fasteoi   uhci_hcd:usb3, HDA Intel
>  22:          0          0   IO-APIC-fasteoi   uhci_hcd:usb4
>  23:          0          0   IO-APIC-fasteoi   uhci_hcd:usb5
> 506:        111      68979   PCI-MSI-edge      eth0
> NMI:          0          0 
> LOC:   15121050   15120952 
> ERR:          0
> 
> (tpm0 on 3 is new with 23-rc1-mm1.  I have *no* idea why 22-rc6-mm1 tried to
> put it on irq 8. Yes, kernel is currently tainted with nvidia module, but
> at the time of the traceback listed above, I had not yet even gotten the module
> built, so the kernel was untainted at that point).
> 

I can't imagine what we did to break tpm_tis, sorry.  Nothing has changed
in there for ages.

Perhaps something broke at the bus level.  It would be useful to add

--- a/drivers/char/tpm/tpm_tis.c~a
+++ a/drivers/char/tpm/tpm_tis.c
@@ -595,9 +595,11 @@ static int __devinit tpm_tis_pnp_init(st
 				      const struct pnp_device_id *pnp_id)
 {
 	resource_size_t start, len;
+
 	start = pnp_mem_start(pnp_dev, 0);
 	len = pnp_mem_len(pnp_dev, 0);
-
+	printk("%s: start=%llu, len=%llu\n",
+		(unsigned long long)start, (unsigned long long)end);
 	return tpm_tis_init(&pnp_dev->dev, start, len);
 }
 
_

to both a good and a bad kernel, see what it says.

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

* [-mm patch] DMA engine kconfig improvements
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (12 preceding siblings ...)
  2007-07-25 22:03 ` 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis Valdis.Kletnieks
@ 2007-07-26  5:26 ` Adrian Bunk
  2007-08-04  2:15   ` Dan Williams
  2007-08-15 23:36   ` Nelson, Shannon
  2007-07-26 12:11 ` [PATCH] sparsemem: ensure we initialise the node mapping for SPARSEMEM_STATIC Andy Whitcroft
                   ` (19 subsequent siblings)
  33 siblings, 2 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-26  5:26 UTC (permalink / raw)
  To: Andrew Morton, Shannon Nelson; +Cc: linux-kernel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +dma-arch-fix.patch
> 
>  Fix git-dma.patch
>...

This results in an ARM-only driver in an X86-only menu...

What about the patch below instead that also improves a few other things?


<--  snip  -->


This patch contains the following changes to the DMA engine menus:
- switch to menuconfig
- INTEL_IOATDMA must depend on X86
- INTEL_IOATDMA must select DCA
- device drivers shouldn't "default m"
- DCA shouldn't be a user visible option
- make it clear in the INTEL_IOATDMA help text that this driver is for
  rare hardware the user most likely doesn't has
- let DMA_ENGINE be select'ed by the DMA devices, making it less likely
  for a user to accidentally enable NET_DMA

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

---

 drivers/dca/Kconfig |    7 +----
 drivers/dma/Kconfig |   59 +++++++++++++++++++++++++-------------------
 2 files changed, 36 insertions(+), 30 deletions(-)

--- linux-2.6.23-rc1-mm1/drivers/dma/Kconfig.old	2007-07-26 06:45:46.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/dma/Kconfig	2007-07-26 07:08:46.000000000 +0200
@@ -2,42 +2,51 @@
 # DMA engine configuration
 #
 
-menu "DMA Engine support"
-	depends on HAS_DMA
+menuconfig DMADEVICES
+	bool "DMA Engine support"
+	depends on (PCI && X86) || ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX
+	help
+	  Intel(R) DMA engines
+
+if DMADEVICES
+
+comment "DMA Devices"
+
+config INTEL_IOATDMA
+	tristate "Intel I/OAT DMA support"
+	depends on PCI && X86
+	select DMA_ENGINE
+	select DCA
+	help
+	  Enable support for the Intel(R) I/OAT DMA engine present
+	  in recent Intel Xeon CPUs.
+
+	  Say yes if you have such a CPU.
+
+	  If unsure, say N.
+
+config INTEL_IOP_ADMA
+	tristate "Intel IOP ADMA support"
+	depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX
+	select ASYNC_CORE
+	select DMA_ENGINE
+	help
+	  Enable support for the Intel(R) IOP Series RAID engines.
 
 config DMA_ENGINE
-	bool "Support for DMA engines"
-	---help---
-          DMA engines offload bulk memory operations from the CPU to dedicated
-          hardware, allowing the operations to happen asynchronously.
+	bool
 
 comment "DMA Clients"
+	depends on DMA_ENGINE
 
 config NET_DMA
 	bool "Network: TCP receive copy offload"
 	depends on DMA_ENGINE && NET
 	default y
-	---help---
+	help
 	  This enables the use of DMA engines in the network stack to
 	  offload receive copy-to-user operations, freeing CPU cycles.
 	  Since this is the main user of the DMA engine, it should be enabled;
 	  say Y here.
 
-comment "DMA Devices"
-
-config INTEL_IOATDMA
-	tristate "Intel I/OAT DMA support"
-	depends on DMA_ENGINE && PCI
-	default m
-	---help---
-	  Enable support for the Intel(R) I/OAT DMA engine.
-
-config INTEL_IOP_ADMA
-        tristate "Intel IOP ADMA support"
-        depends on DMA_ENGINE && (ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX)
-	select ASYNC_CORE
-        default m
-        ---help---
-          Enable support for the Intel(R) IOP Series RAID engines.
-
-endmenu
+endif
--- linux-2.6.23-rc1-mm1/drivers/dca/Kconfig.old	2007-07-26 06:49:32.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/dca/Kconfig	2007-07-26 06:49:41.000000000 +0200
@@ -3,9 +3,6 @@
 #
 
 config DCA
-	tristate "DCA support for clients and providers"
-	---help---
-          This is a server to help modules that want to use Direct Cache
-	  Access to find DCA providers that will supply correct CPU tags.
-	default m
+	tristate
+
 


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

* Re: 2.6.23-rc1-mm1 - drivers/char/nozomi.c overflow in implicit constant conversion , warnings
  2007-07-25 20:42 ` 2.6.23-rc1-mm1 - drivers/char/nozomi.c overflow in implicit constant conversion , warnings Gabriel C
@ 2007-07-26  5:42   ` Greg KH
  0 siblings, 0 replies; 132+ messages in thread
From: Greg KH @ 2007-07-26  5:42 UTC (permalink / raw)
  To: Gabriel C; +Cc: Andrew Morton, linux-kernel, p.hardwick

On Wed, Jul 25, 2007 at 10:42:07PM +0200, Gabriel C wrote:
> 
> ...
> 
> drivers/char/nozomi.c: In function 'interrupt_handler':
> drivers/char/nozomi.c:1298: warning: overflow in implicit constant conversion
> drivers/char/nozomi.c: In function 'nozomi_card_init':
> drivers/char/nozomi.c:1568: warning: overflow in implicit constant conversion
> drivers/char/nozomi.c:1592: warning: overflow in implicit constant conversion
> drivers/char/nozomi.c: In function 'nozomi_card_exit':
> drivers/char/nozomi.c:1673: warning: overflow in implicit constant conversion

Ick, yeah, that driver needs help.  Luckily someone is starting to work
on it now and help clean it up.

thanks for letting me know.

greg k-h

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

* Re: 2.6.23-rc1-mm1 -- mostly fails to build
  2007-07-25 22:41   ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
@ 2007-07-26  5:56     ` Andrew Morton
  2007-07-26 17:53       ` Yinghai Lu
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-26  5:56 UTC (permalink / raw)
  To: Andy Whitcroft; +Cc: linux-kernel, Steve Fox, Mel Gorman, Yinghai Lu

On Wed, 25 Jul 2007 23:41:46 +0100 Andy Whitcroft <apw@shadowen.org> wrote:

> On Wed, Jul 25, 2007 at 05:36:56PM +0100, Andy Whitcroft wrote:
> 
> > Will investigate the NUMA-Q explosion and report on that separatly.
> 
> Ok, I've been looking at the NUMA-Q boot panic below:
> 
> BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000
>  printing eip:
> c111689f
> *pdpt = 0000000001387001
> *pde = 0000000000000000
> Oops: 0000 [#1]
> SMP
> Modules linked in:
> CPU:    0
> EIP:    0060:[<c111689f>]    Not tainted VLI
> EFLAGS: 00010286   (2.6.23-rc1-mm1-gc8131905-dirty #251)
> EIP is at pci_create_bus+0x11b/0x277
> eax: 00000000   ebx: c9352e00   ecx: c9073e94   edx: c9325400
> esi: c9325400   edi: c932559c   ebp: 00000002   esp: c9073e90
> ds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068
> Process swapper (pid: 1, ti=c9072000 task=c9070030 task.ti=c9072000)
> Stack: c12adc4f c9325400 00000000 00000002 00000000 00000000 00000000 c934c800
>        000000d6 00000000 c1116a09 00000000 c9073ed5 c11b178a 00000000 c934c940
>        00000000 02fffff4 c12bd8ac c934c800 c12bd8b4 c9325000 c1119825 c934c800
> Call Trace:
>  [<c1116a09>] pci_scan_bus_parented+0xe/0x21
>  [<c11b178a>] pci_fixup_i450nx+0xa7/0x101
>  [<c1119825>] pci_do_fixups+0x2d/0x38
>  [<c111665c>] pci_device_add+0x48/0x77
>  [<c11166a5>] pci_scan_single_device+0x1a/0x1f
>  [<c11166bf>] pci_scan_slot+0x15/0x47
>  [<c111670a>] pci_scan_child_bus+0x19/0x7c
>  [<c1116a14>] pci_scan_bus_parented+0x19/0x21
>  [<c11b259d>] pcibios_scan_root+0x75/0x7e
>  [<c1369ee3>] pci_numa_init+0x2c/0xe4
>  [<c1354b87>] kernel_init+0x0/0xa1
>  [<c1354a15>] do_initcalls+0x73/0x1a3
>  [<c109032c>] proc_register+0xa0/0xa7
>  [<c10905cd>] create_proc_entry+0x73/0x86
>  [<c103a5c9>] register_irq_proc+0x75/0x92
>  [<c1354b87>] kernel_init+0x0/0xa1
>  [<c1354be6>] kernel_init+0x5f/0xa1
>  [<c10031c3>] kernel_thread_helper+0x7/0x10
>  =======================
> Code: ff 8b 83 84 00 00 00 c7 04 24 4f dc 2a c1 89 44 24 04 e8 f8 42 f0 ff 83 7c 24 14 00 75 15 8b 93 84 00 00 00 85 d2 74 0b 8b 43 44 <8b> 00 89 82 50 01 00 00 c7 44 24 04 9a 04 00 00 8d bb 88 00 00
> EIP: [<c111689f>] pci_create_bus+0x11b/0x277 SS:ESP 0068:c9073e90
> Kernel panic - not syncing: Attempted to kill init!
> 
> This seems to have been caused by the introduction of the following
> code fragment into pci_create_bus:
> 
>         if (!parent)
>                 set_dev_node(b->bridge, pcibus_to_node(b));
> 
> This has come as part of the -mm patch below:
> 
>     try-parent-numa_node-at-first-before-using-default-v2.patch
> 
> This patch does not seem to be wrong in and of itself.  It does
> expose the fact that we are building busses with NULL sysdata.
> This has come up at least three times now.  Below is the patch
> proposed the last couple of times.  It is needed to allow any machine
> with i450nx quirk, plus for NUMA-Q systems.

All this could have happened due to my hamfisted repairing of yet another
reject storm, too.

> Andrew please could you add this to -mm again.
> 

ok..

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 21:52             ` 2.6.23-rc1-mm1 Torsten Kaiser
@ 2007-07-26  7:25               ` Andrew Morton
  2007-07-26 17:54                 ` 2.6.23-rc1-mm1 Torsten Kaiser
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-26  7:25 UTC (permalink / raw)
  To: Torsten Kaiser
  Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li, linux-mm

On Wed, 25 Jul 2007 23:52:47 +0200 "Torsten Kaiser" <just.for.lkml@googlemail.com> wrote:

> On 7/25/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> > On Wed, 25 Jul 2007 22:22:41 +0200
> > "Torsten Kaiser" <just.for.lkml@googlemail.com> wrote:
> > > [    0.000000] early_node_map[4] active PFN ranges
> > > [    0.000000]     0:        0 ->      159
> > > [    0.000000]     0:      256 ->   524288
> > > [    0.000000]     1:   524288 ->   917488
> > > [    0.000000]     1:  1048576 ->  1179648
> > > PANIC: early exception rip ffffffff807caac5 error 2 cr2 ffffe20003000010
> > > [    0.000000]
> > > [    0.000000] Call Trace:
> > >
> > > ... but no Call Trace follows.
> > >
> > > (gdb) list *0xffffffff807caac5
> > > 0xffffffff807caac5 is in memmap_init_zone (include/linux/list.h:32).
> > > 27      #define LIST_HEAD(name) \
> > > 28              struct list_head name = LIST_HEAD_INIT(name)
> > > 29
> > > 30      static inline void INIT_LIST_HEAD(struct list_head *list)
> > > 31      {
> > > 32              list->next = list;
> > > 33              list->prev = list;
> > > 34      }
> > > 35
> > > 36      /*
> > >
> > > Torsten
> >
> > Quite a few people have been playing in that area.  Can you please send the
> > .config?
> 
> #
> # Automatically generated make config: don't edit
> # Linux kernel version: 2.6.23-rc1-mm1
> # Wed Jul 25 21:18:15 2007

It boots OK on my test box, bummer.  Please test -mm2 and if it also fails,
it'd be great if you could run through
http://www.zip.com.au/~akpm/linux/patches/stuff/bisecting-mm-trees.txt - it
doesn't take very long.

Thanks.

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

* Re: 2.6.23-rc1-mm1
  2007-07-25 23:26       ` 2.6.23-rc1-mm1 Len Brown
@ 2007-07-26  9:41         ` Mel Gorman
  2007-07-26 13:53           ` 2.6.23-rc1-mm1 Cedric Le Goater
  0 siblings, 1 reply; 132+ messages in thread
From: Mel Gorman @ 2007-07-26  9:41 UTC (permalink / raw)
  To: Len Brown; +Cc: Andrew Morton, Cedric Le Goater, linux-kernel, Shaohua Li

On (25/07/07 19:26), Len Brown didst pronounce:
> On Wednesday 25 July 2007 14:58, Andrew Morton wrote:
> > On Wed, 25 Jul 2007 13:23:04 -0400
> > Len Brown <lenb@kernel.org> wrote:
> > 
> > > Andrew, you want to re-pull the acpi tree, or do you want me to send
> > > you some patches on top of the current mm?
> > 
> > I'd appreciate a fix for this one, please - I'll drop it int he hot-fixes
> > directory as quite a few people seem to be hitting this.
> 
> Maybe simpler for mm1 to go backwards in time rather than forwards.
> This should fix the problem at hand.
> 

I see this made it to the hot-fix directory. It fixes the problem for me
on a standalone x86 laptop. At least the kernel built and booted.

> <Patch snipped>

Thanks Len

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

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

* Re: 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error
  2007-07-25 18:06   ` 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error Adrian Bunk
@ 2007-07-26 10:49     ` FUJITA Tomonori
  0 siblings, 0 replies; 132+ messages in thread
From: FUJITA Tomonori @ 2007-07-26 10:49 UTC (permalink / raw)
  To: bunk
  Cc: apw, fujita.tomonori, michaelc, James.Bottomley, akpm,
	linux-kernel, drfickle, mel, linux-scsi

From: Adrian Bunk <bunk@stusta.de>
Subject: 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error
Date: Wed, 25 Jul 2007 20:06:18 +0200

> On Wed, Jul 25, 2007 at 05:36:56PM +0100, Andy Whitcroft wrote:
> > Of the machines we test releases on automatically this only compiles on
> > NUMA-Q and does not boot there (some PCI issue).
> > 
> > 
> > ppc64 (beavis):
> > 
> > drivers/built-in.o(.text+0xd2784): In function `.srp_rport_add':
> > : undefined reference to `.scsi_tgt_it_nexus_create'
> > drivers/built-in.o(.text+0xd2884): In function `.srp_rport_del':
> > : undefined reference to `.scsi_tgt_it_nexus_destroy'
> > make: *** [.tmp_vmlinux1] Error 1
> > 
> > 
> > x86_64 (bl6-13):
> > 
> > ERROR: "scsi_tgt_it_nexus_destroy" [drivers/scsi/scsi_transport_srp.ko]
> > undefined!
> > ERROR: "scsi_tgt_it_nexus_create" [drivers/scsi/scsi_transport_srp.ko]
> > undefined!
> > make[1]: *** [__modpost] Error 1
> >...
> 
> Caused-By  : git-scsi-target.patch
> Workaround : enable CONFIG_SCSI_TGT

Sorry about this.

Andrew, could you drop the scsi-target tree from -mm?

I was surprised that the scsi-target tree is still in -mm (it had been
tested in -mm before the mainline inclusion). I guess that it's the
right way to push scsi-target stuff into -mm via James' scsi-misc.


> Is there any good reason why all the SCSI transport attributes options 
> are user visible?

No, I messed up the dependency somewhere. I'll fix it before it is
merged into scsi-misc.

Thanks,

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

* [PATCH] sparsemem: ensure we initialise the node mapping for SPARSEMEM_STATIC
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (13 preceding siblings ...)
  2007-07-26  5:26 ` [-mm patch] DMA engine kconfig improvements Adrian Bunk
@ 2007-07-26 12:11 ` Andy Whitcroft
  2007-07-26 12:58 ` 2.6.23-rc1-mm1 sparsemem_vmemamp fix KAMEZAWA Hiroyuki
                   ` (18 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Andy Whitcroft @ 2007-07-26 12:11 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Christoph Lameter

Booting SPARSEMEM on NUMA systems trips a BUG in page_alloc.c:

	Initializing HighMem for node 0 (00038000:00100000)
	Initializing HighMem for node 1 (00100000:001ffe00)
	------------[ cut here ]------------
	kernel BUG at /home/apw/git/linux-2.6/mm/page_alloc.c:456!
	[...]

This occurs because the section to node id mapping is not being
setup correctly during init under SPARSEMEM_STATIC, leading to an
attempt to free pages from all nodes into the zones on node 0.

When the zone_table[] was removed in the following commit, a new
section to node mapping table was introduced:

    commit 89689ae7f95995723fbcd5c116c47933a3bb8b13
    [PATCH] Get rid of zone_table[]

That conversion inadvertantly only initialised the node mapping in
SPARSEMEM_EXTREME.  Ensure we initialise the node mapping in
SPARSEMEM_STATIC.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
---
diff --git a/mm/sparse.c b/mm/sparse.c
index 0320f86..5bfd9a7 100644
--- a/mm/sparse.c
+++ b/mm/sparse.c
@@ -43,6 +43,15 @@ int page_to_nid(struct page *page)
 	return section_to_node_table[page_to_section(page)];
 }
 EXPORT_SYMBOL(page_to_nid);
+
+void set_section_nid(unsigned long section_nr, int nid)
+{
+	section_to_node_table[section_nr] = nid;
+}
+#else /* !NODE_NOT_IN_PAGE_FLAGS */
+void set_section_nid(unsigned long section_nr, int nid)
+{
+}
 #endif
 
 #ifdef CONFIG_SPARSEMEM_EXTREME
@@ -70,10 +79,6 @@ static int __meminit sparse_index_init(unsigned long section_nr, int nid)
 	struct mem_section *section;
 	int ret = 0;
 
-#ifdef NODE_NOT_IN_PAGE_FLAGS
-	section_to_node_table[section_nr] = nid;
-#endif
-
 	if (mem_section[root])
 		return -EEXIST;
 
@@ -150,6 +155,7 @@ void __init memory_present(int nid, unsigned long start, unsigned long end)
 		struct mem_section *ms;
 
 		sparse_index_init(section, nid);
+		set_section_nid(section, nid);
 
 		ms = __nr_to_section(section);
 		if (!ms->section_mem_map)

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

* Re: 2.6.23-rc1-mm1 sparsemem_vmemamp fix.
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (14 preceding siblings ...)
  2007-07-26 12:11 ` [PATCH] sparsemem: ensure we initialise the node mapping for SPARSEMEM_STATIC Andy Whitcroft
@ 2007-07-26 12:58 ` KAMEZAWA Hiroyuki
  2007-07-26 14:39   ` Andy Whitcroft
  2007-07-27 13:28 ` [-mm patch] xtensa console.c: remove duplicate #include Frederik Deweerdt
                   ` (17 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: KAMEZAWA Hiroyuki @ 2007-07-26 12:58 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, apw, clameter

Fix sparsemem_vmemmap init. sorry if known bug.

This patch fixes page table handling in sparsemem_vmammap.

Without this, part of vmem_map is not mapped because each section's start addr of
mem_map is not aligned to PGD/PMD/PUD. 
(In ia64, secion's mem_map size is 3670016bytes. )

for example, 

 addr     pmd_addr_end(addr_end)         addr + PMD_SIZE
  |XXXXXXXXXX|??????????????????????????????|XXXXXXXXXXXXXXXXXX

  X ... initialized vmem_map
  ? ... not intialized

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>



---
 mm/sparse.c |   24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

Index: devel-2.6.23-rc1-mm1/mm/sparse.c
===================================================================
--- devel-2.6.23-rc1-mm1.orig/mm/sparse.c
+++ devel-2.6.23-rc1-mm1/mm/sparse.c
@@ -320,7 +320,7 @@ static int __meminit vmemmap_populate_pt
 {
 	pte_t *pte;
 
-	for (pte = pte_offset_map(pmd, addr); addr < end;
+	for (pte = pte_offset_kernel(pmd, addr); addr < end;
 						pte++, addr += PAGE_SIZE)
 		if (pte_none(*pte)) {
 			pte_t entry;
@@ -345,9 +345,10 @@ int __meminit vmemmap_populate_pmd(pud_t
 {
 	pmd_t *pmd;
 	int error = 0;
+	unsigned long next;
 
 	for (pmd = pmd_offset(pud, addr); addr < end && !error;
-						pmd++, addr += PMD_SIZE) {
+						pmd++, addr = next) {
 		if (pmd_none(*pmd)) {
 			void *p = vmemmap_alloc_block(PAGE_SIZE, node);
 			if (!p)
@@ -357,9 +358,8 @@ int __meminit vmemmap_populate_pmd(pud_t
 		} else
 			vmemmap_verify((pte_t *)pmd, node,
 					pmd_addr_end(addr, end), end);
-
-		error = vmemmap_populate_pte(pmd, addr,
-					pmd_addr_end(addr, end), node);
+		next = pmd_addr_end(addr, end);
+		error = vmemmap_populate_pte(pmd, addr, next, node);
 	}
 	return error;
 }
@@ -370,9 +370,10 @@ static int __meminit vmemmap_populate_pu
 {
 	pud_t *pud;
 	int error = 0;
+	unsigned long next;
 
 	for (pud = pud_offset(pgd, addr); addr < end && !error;
-						pud++, addr += PUD_SIZE) {
+						pud++, addr = next) {
 		if (pud_none(*pud)) {
 			void *p = vmemmap_alloc_block(PAGE_SIZE, node);
 			if (!p)
@@ -380,8 +381,8 @@ static int __meminit vmemmap_populate_pu
 
 			pud_populate(&init_mm, pud, p);
 		}
-		error = vmemmap_populate_pmd(pud, addr,
-					pud_addr_end(addr, end), node);
+		next = pud_addr_end(addr, end);
+		error = vmemmap_populate_pmd(pud, addr, next, node);
 	}
 	return error;
 }
@@ -392,13 +393,14 @@ int __meminit vmemmap_populate(struct pa
 	pgd_t *pgd;
 	unsigned long addr = (unsigned long)start_page;
 	unsigned long end = (unsigned long)(start_page + nr);
+	unsigned long next;
 	int error = 0;
 
 	printk(KERN_DEBUG "[%lx-%lx] Virtual memory section"
 		" (%ld pages) node %d\n", addr, end - 1, nr, node);
 
 	for (pgd = pgd_offset_k(addr); addr < end && !error;
-					pgd++, addr += PGDIR_SIZE) {
+					pgd++, addr = next) {
 		if (pgd_none(*pgd)) {
 			void *p = vmemmap_alloc_block(PAGE_SIZE, node);
 			if (!p)
@@ -406,8 +408,8 @@ int __meminit vmemmap_populate(struct pa
 
 			pgd_populate(&init_mm, pgd, p);
 		}
-		error = vmemmap_populate_pud(pgd, addr,
-					pgd_addr_end(addr, end), node);
+		next = pgd_addr_end(addr,end);
+		error = vmemmap_populate_pud(pgd, addr, next, node);
 	}
 	return error;
 }


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

* Re: 2.6.23-rc1-mm1
  2007-07-26  9:41         ` 2.6.23-rc1-mm1 Mel Gorman
@ 2007-07-26 13:53           ` Cedric Le Goater
  0 siblings, 0 replies; 132+ messages in thread
From: Cedric Le Goater @ 2007-07-26 13:53 UTC (permalink / raw)
  To: Mel Gorman; +Cc: Len Brown, Andrew Morton, linux-kernel, Shaohua Li

Mel Gorman wrote:
> On (25/07/07 19:26), Len Brown didst pronounce:
>> On Wednesday 25 July 2007 14:58, Andrew Morton wrote:
>>> On Wed, 25 Jul 2007 13:23:04 -0400
>>> Len Brown <lenb@kernel.org> wrote:
>>>
>>>> Andrew, you want to re-pull the acpi tree, or do you want me to send
>>>> you some patches on top of the current mm?
>>> I'd appreciate a fix for this one, please - I'll drop it int he hot-fixes
>>> directory as quite a few people seem to be hitting this.
>> Maybe simpler for mm1 to go backwards in time rather than forwards.
>> This should fix the problem at hand.
>>
> 
> I see this made it to the hot-fix directory. It fixes the problem for me
> on a standalone x86 laptop. At least the kernel built and booted.

I just booted a x86_64 blade with it. 

Thanks !

C.

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

* Re: 2.6.23-rc1-mm1 sparsemem_vmemamp fix.
  2007-07-26 12:58 ` 2.6.23-rc1-mm1 sparsemem_vmemamp fix KAMEZAWA Hiroyuki
@ 2007-07-26 14:39   ` Andy Whitcroft
  2007-07-26 14:44     ` Andy Whitcroft
  0 siblings, 1 reply; 132+ messages in thread
From: Andy Whitcroft @ 2007-07-26 14:39 UTC (permalink / raw)
  To: KAMEZAWA Hiroyuki, Andrew Morton; +Cc: linux-kernel, clameter

KAMEZAWA Hiroyuki wrote:
> Fix sparsemem_vmemmap init. sorry if known bug.
> 
> This patch fixes page table handling in sparsemem_vmammap.
> 
> Without this, part of vmem_map is not mapped because each section's start addr of
> mem_map is not aligned to PGD/PMD/PUD. 
> (In ia64, secion's mem_map size is 3670016bytes. )
> 
> for example, 
> 
>  addr     pmd_addr_end(addr_end)         addr + PMD_SIZE
>   |XXXXXXXXXX|??????????????????????????????|XXXXXXXXXXXXXXXXXX
> 
>   X ... initialized vmem_map
>   ? ... not intialized
> 
> Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>

I think the code change below is safe enough.  I have not found it easy
to understand your description above but I think that you are saying
that if the section we are initialising is bigger than a PMD size, but
falls offset from the PMD start we will initialise the end of the first
PMD and the end of the second PMD and so on.  The "start" of the second
PMD is missed.

Ahh yes, that I think is what your diagram shows.  Yes this is pretty
clearly wrong for any sort of offset initialisation, and would be worse
lower down in the hierachy.  This seems like a clean way to fix the bug.
 Thanks for finding this.

Acked-by: Andy Whitcroft <apw@shadowen.org>

> 
> 
> 
> ---
>  mm/sparse.c |   24 +++++++++++++-----------
>  1 file changed, 13 insertions(+), 11 deletions(-)
> 
> Index: devel-2.6.23-rc1-mm1/mm/sparse.c
> ===================================================================
> --- devel-2.6.23-rc1-mm1.orig/mm/sparse.c
> +++ devel-2.6.23-rc1-mm1/mm/sparse.c
> @@ -320,7 +320,7 @@ static int __meminit vmemmap_populate_pt
>  {
>  	pte_t *pte;
>  
> -	for (pte = pte_offset_map(pmd, addr); addr < end;
> +	for (pte = pte_offset_kernel(pmd, addr); addr < end;
>  						pte++, addr += PAGE_SIZE)
>  		if (pte_none(*pte)) {
>  			pte_t entry;
> @@ -345,9 +345,10 @@ int __meminit vmemmap_populate_pmd(pud_t
>  {
>  	pmd_t *pmd;
>  	int error = 0;
> +	unsigned long next;
>  
>  	for (pmd = pmd_offset(pud, addr); addr < end && !error;
> -						pmd++, addr += PMD_SIZE) {
> +						pmd++, addr = next) {
>  		if (pmd_none(*pmd)) {
>  			void *p = vmemmap_alloc_block(PAGE_SIZE, node);
>  			if (!p)
> @@ -357,9 +358,8 @@ int __meminit vmemmap_populate_pmd(pud_t
>  		} else
>  			vmemmap_verify((pte_t *)pmd, node,
>  					pmd_addr_end(addr, end), end);
> -
> -		error = vmemmap_populate_pte(pmd, addr,
> -					pmd_addr_end(addr, end), node);
> +		next = pmd_addr_end(addr, end);
> +		error = vmemmap_populate_pte(pmd, addr, next, node);
>  	}
>  	return error;
>  }
> @@ -370,9 +370,10 @@ static int __meminit vmemmap_populate_pu
>  {
>  	pud_t *pud;
>  	int error = 0;
> +	unsigned long next;
>  
>  	for (pud = pud_offset(pgd, addr); addr < end && !error;
> -						pud++, addr += PUD_SIZE) {
> +						pud++, addr = next) {
>  		if (pud_none(*pud)) {
>  			void *p = vmemmap_alloc_block(PAGE_SIZE, node);
>  			if (!p)
> @@ -380,8 +381,8 @@ static int __meminit vmemmap_populate_pu
>  
>  			pud_populate(&init_mm, pud, p);
>  		}
> -		error = vmemmap_populate_pmd(pud, addr,
> -					pud_addr_end(addr, end), node);
> +		next = pud_addr_end(addr, end);
> +		error = vmemmap_populate_pmd(pud, addr, next, node);
>  	}
>  	return error;
>  }
> @@ -392,13 +393,14 @@ int __meminit vmemmap_populate(struct pa
>  	pgd_t *pgd;
>  	unsigned long addr = (unsigned long)start_page;
>  	unsigned long end = (unsigned long)(start_page + nr);
> +	unsigned long next;
>  	int error = 0;
>  
>  	printk(KERN_DEBUG "[%lx-%lx] Virtual memory section"
>  		" (%ld pages) node %d\n", addr, end - 1, nr, node);
>  
>  	for (pgd = pgd_offset_k(addr); addr < end && !error;
> -					pgd++, addr += PGDIR_SIZE) {
> +					pgd++, addr = next) {
>  		if (pgd_none(*pgd)) {
>  			void *p = vmemmap_alloc_block(PAGE_SIZE, node);
>  			if (!p)
> @@ -406,8 +408,8 @@ int __meminit vmemmap_populate(struct pa
>  
>  			pgd_populate(&init_mm, pgd, p);
>  		}
> -		error = vmemmap_populate_pud(pgd, addr,
> -					pgd_addr_end(addr, end), node);
> +		next = pgd_addr_end(addr,end);
> +		error = vmemmap_populate_pud(pgd, addr, next, node);
>  	}
>  	return error;
>  }

-apw


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

* Re: 2.6.23-rc1-mm1 sparsemem_vmemamp fix.
  2007-07-26 14:39   ` Andy Whitcroft
@ 2007-07-26 14:44     ` Andy Whitcroft
  0 siblings, 0 replies; 132+ messages in thread
From: Andy Whitcroft @ 2007-07-26 14:44 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Andy Whitcroft, KAMEZAWA Hiroyuki, linux-kernel, clameter

Andy Whitcroft wrote:
> KAMEZAWA Hiroyuki wrote:
>> Fix sparsemem_vmemmap init. sorry if known bug.
>>
>> This patch fixes page table handling in sparsemem_vmammap.
>>
>> Without this, part of vmem_map is not mapped because each section's start addr of
>> mem_map is not aligned to PGD/PMD/PUD. 
>> (In ia64, secion's mem_map size is 3670016bytes. )
>>
>> for example, 
>>
>>  addr     pmd_addr_end(addr_end)         addr + PMD_SIZE
>>   |XXXXXXXXXX|??????????????????????????????|XXXXXXXXXXXXXXXXXX
>>
>>   X ... initialized vmem_map
>>   ? ... not intialized
>>
>> Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
> 
> I think the code change below is safe enough.  I have not found it easy
> to understand your description above but I think that you are saying
> that if the section we are initialising is bigger than a PMD size, but
> falls offset from the PMD start we will initialise the end of the first
> PMD and the end of the second PMD and so on.  The "start" of the second
> PMD is missed.
> 
> Ahh yes, that I think is what your diagram shows.  Yes this is pretty
> clearly wrong for any sort of offset initialisation, and would be worse
> lower down in the hierachy.  This seems like a clean way to fix the bug.
>  Thanks for finding this.
> 
> Acked-by: Andy Whitcroft <apw@shadowen.org>

Andrew, I'll fold this one into a new version when I get through the
other feedback, but could you pull this into -mm on top for now as its a
boot issue.

-apw

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

* Re: 2.6.23-rc1-mm1 -- mostly fails to build
  2007-07-26  5:56     ` Andrew Morton
@ 2007-07-26 17:53       ` Yinghai Lu
  0 siblings, 0 replies; 132+ messages in thread
From: Yinghai Lu @ 2007-07-26 17:53 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Andy Whitcroft, linux-kernel, Steve Fox, Mel Gorman

Andrew Morton wrote:
> On Wed, 25 Jul 2007 23:41:46 +0100 Andy Whitcroft <apw@shadowen.org> wrote:
> 
>> On Wed, Jul 25, 2007 at 05:36:56PM +0100, Andy Whitcroft wrote:
>>
>>> Will investigate the NUMA-Q explosion and report on that separatly.
>> Ok, I've been looking at the NUMA-Q boot panic below:
>>
>> BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000
>>  printing eip:
>> c111689f
>> *pdpt = 0000000001387001
>> *pde = 0000000000000000
>> Oops: 0000 [#1]
>> SMP
>> Modules linked in:
>> CPU:    0
>> EIP:    0060:[<c111689f>]    Not tainted VLI
>> EFLAGS: 00010286   (2.6.23-rc1-mm1-gc8131905-dirty #251)
>> EIP is at pci_create_bus+0x11b/0x277
>> eax: 00000000   ebx: c9352e00   ecx: c9073e94   edx: c9325400
>> esi: c9325400   edi: c932559c   ebp: 00000002   esp: c9073e90
>> ds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068
>> Process swapper (pid: 1, ti=c9072000 task=c9070030 task.ti=c9072000)
>> Stack: c12adc4f c9325400 00000000 00000002 00000000 00000000 00000000 c934c800
>>        000000d6 00000000 c1116a09 00000000 c9073ed5 c11b178a 00000000 c934c940
>>        00000000 02fffff4 c12bd8ac c934c800 c12bd8b4 c9325000 c1119825 c934c800
>> Call Trace:
>>  [<c1116a09>] pci_scan_bus_parented+0xe/0x21
>>  [<c11b178a>] pci_fixup_i450nx+0xa7/0x101
>>  [<c1119825>] pci_do_fixups+0x2d/0x38
>>  [<c111665c>] pci_device_add+0x48/0x77
>>  [<c11166a5>] pci_scan_single_device+0x1a/0x1f
>>  [<c11166bf>] pci_scan_slot+0x15/0x47
>>  [<c111670a>] pci_scan_child_bus+0x19/0x7c
>>  [<c1116a14>] pci_scan_bus_parented+0x19/0x21
>>  [<c11b259d>] pcibios_scan_root+0x75/0x7e
>>  [<c1369ee3>] pci_numa_init+0x2c/0xe4
>>  [<c1354b87>] kernel_init+0x0/0xa1
>>  [<c1354a15>] do_initcalls+0x73/0x1a3
>>  [<c109032c>] proc_register+0xa0/0xa7
>>  [<c10905cd>] create_proc_entry+0x73/0x86
>>  [<c103a5c9>] register_irq_proc+0x75/0x92
>>  [<c1354b87>] kernel_init+0x0/0xa1
>>  [<c1354be6>] kernel_init+0x5f/0xa1
>>  [<c10031c3>] kernel_thread_helper+0x7/0x10
>>  =======================
>> Code: ff 8b 83 84 00 00 00 c7 04 24 4f dc 2a c1 89 44 24 04 e8 f8 42 f0 ff 83 7c 24 14 00 75 15 8b 93 84 00 00 00 85 d2 74 0b 8b 43 44 <8b> 00 89 82 50 01 00 00 c7 44 24 04 9a 04 00 00 8d bb 88 00 00
>> EIP: [<c111689f>] pci_create_bus+0x11b/0x277 SS:ESP 0068:c9073e90
>> Kernel panic - not syncing: Attempted to kill init!
>>
>> This seems to have been caused by the introduction of the following
>> code fragment into pci_create_bus:
>>
>>         if (!parent)
>>                 set_dev_node(b->bridge, pcibus_to_node(b));
>>
>> This has come as part of the -mm patch below:
>>
>>     try-parent-numa_node-at-first-before-using-default-v2.patch
>>
>> This patch does not seem to be wrong in and of itself.  It does
>> expose the fact that we are building busses with NULL sysdata.
>> This has come up at least three times now.  Below is the patch
>> proposed the last couple of times.  It is needed to allow any machine
>> with i450nx quirk, plus for NUMA-Q systems.
> 
> All this could have happened due to my hamfisted repairing of yet another
> reject storm, too.
> 
>> Andrew please could you add this to -mm again.
>>
> 
> ok..

Can we add .node and .iommu to pci_bus?

YH

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

* Re: 2.6.23-rc1-mm1
  2007-07-26  7:25               ` 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-26 17:54                 ` Torsten Kaiser
  2007-07-28 14:03                   ` 2.6.23-rc1-mm1 Torsten Kaiser
  0 siblings, 1 reply; 132+ messages in thread
From: Torsten Kaiser @ 2007-07-26 17:54 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li, linux-mm

On 7/26/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> On Wed, 25 Jul 2007 23:52:47 +0200 "Torsten Kaiser" <just.for.lkml@googlemail.com> wrote:
>
> > On 7/25/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> > > On Wed, 25 Jul 2007 22:22:41 +0200
> > > "Torsten Kaiser" <just.for.lkml@googlemail.com> wrote:
> > > > [    0.000000] early_node_map[4] active PFN ranges
> > > > [    0.000000]     0:        0 ->      159
> > > > [    0.000000]     0:      256 ->   524288
> > > > [    0.000000]     1:   524288 ->   917488
> > > > [    0.000000]     1:  1048576 ->  1179648
> > > > PANIC: early exception rip ffffffff807caac5 error 2 cr2 ffffe20003000010
> > > > [    0.000000]
> > > > [    0.000000] Call Trace:
> > > >
> > > > ... but no Call Trace follows.
> > > >
> > > > (gdb) list *0xffffffff807caac5
> > > > 0xffffffff807caac5 is in memmap_init_zone (include/linux/list.h:32).
> > > > 27      #define LIST_HEAD(name) \
> > > > 28              struct list_head name = LIST_HEAD_INIT(name)
> > > > 29
> > > > 30      static inline void INIT_LIST_HEAD(struct list_head *list)
> > > > 31      {
> > > > 32              list->next = list;
> > > > 33              list->prev = list;
> > > > 34      }
> > > > 35
> > > > 36      /*
> > > >
> > > > Torsten
> > >
> > > Quite a few people have been playing in that area.  Can you please send the
> > > .config?
> >
> > #
> > # Automatically generated make config: don't edit
> > # Linux kernel version: 2.6.23-rc1-mm1
> > # Wed Jul 25 21:18:15 2007
>
> It boots OK on my test box, bummer.  Please test -mm2 and if it also fails,

I will test it...

> it'd be great if you could run through
> http://www.zip.com.au/~akpm/linux/patches/stuff/bisecting-mm-trees.txt - it
> doesn't take very long.

I did two major changes when upgrading from 22-rc6-mm1 to 23-rc1-mm1.
I switched from DISCONTIGMEM to SPARSEMEM and from SLAB to SLUB.

The other combinations:
SPARSEMEM+SLAB:
[    0.000000] early_node_map[4] active PFN ranges
[    0.000000]     0:        0 ->      159
[    0.000000]     0:      256 ->   524288
[    0.000000]     1:   524288 ->   917488
[    0.000000]     1:  1048576 ->  1179648
PANIC: early exception rip ffffffff807c4ac5 error 2 cr2 ffffe20003000010
[    0.000000]
[    0.000000] Call Trace:
DISCONTIGMEM+SLUB:
[   39.833272] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
[   40.016659] Kernel panic - not syncing: IO-APIC + timer doesn't
work! Try using the 'noapic' kernel parameter
DISCONTIGMEM+SLAB:
Boots until it can't find / because I didn't append the correct initrd
It also hit the MP-BIOS bug, but was not bothered by it:
[   36.696965] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
[   36.880537] Using local APIC timer interrupts.
[   36.932215] result 12500283
[   36.940581] Detected 12.500 MHz APIC timer.

So I think, I will postpone SPARSEMEM until -mm2, as there are seem to
be some problems in that area (Re: 2.6.23-rc1-mm1 sparsemem_vmemamp
fix)

But maybee I will get SLUB to work. ;)

Torsten

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

* Re: 2.6.23-rc1-mm1
  2007-07-26  0:07           ` 2.6.23-rc1-mm1 Greg KH
  2007-07-26  0:28             ` 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-26 20:18             ` Dave Hansen
  1 sibling, 0 replies; 132+ messages in thread
From: Dave Hansen @ 2007-07-26 20:18 UTC (permalink / raw)
  To: Greg KH
  Cc: Gabriel C, H. Peter Anvin, Sam Ravnborg, Michal Piotrowski,
	Andrew Morton, linux-kernel, Andi Kleen

On Wed, 2007-07-25 at 17:07 -0700, Greg KH wrote:
> 
> > > WARNING: Absolute relocations present
> > > Offset     Info     Type     Sym.Value Sym.Name
> > > c0202e73 00703601   R_386_32 c03071bc  _sdata
> > > 
> > > $ grep c03071bc System.map
> > > c03071bc R __tracedata_end
> > > c03071bc A _sdata
> > 
> > 
> > Guessing is this patch ?
> > 
> >
> gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:
> __tracedata_end = .;
> >
> gregkh-driver-warn-when-statically-allocated-kobjects-are-used.patch:+
> _sdata = .;                     /* End of text section */
> 
> This patch is a horrible hack to try to see if kobjects are static and
> not dynamically created.
> 
> Dave, any ideas what is happening here? 

I've seen those warnings for other random stuff, but I have no idea what
they mean. :(

Is there a preferred way to access symbol addresses?

-- Dave


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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-26  3:37   ` Andrew Morton
@ 2007-07-27  4:00     ` Valdis.Kletnieks
  2007-07-27 13:28       ` Valdis.Kletnieks
  0 siblings, 1 reply; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-27  4:00 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Kylene Hall, linux-kernel, tpm


[-- Attachment #1.1: Type: text/plain, Size: 1567 bytes --]

On Wed, 25 Jul 2007 20:37:37 PDT, Andrew Morton said:

> I can't imagine what we did to break tpm_tis, sorry.  Nothing has changed
> in there for ages.
> 
> Perhaps something broke at the bus level.  It would be useful to add

OK, so I made a more intrusive printk-all-over patch to track what it was
doing, and got several tests in under 2.6.22-rc6-mm1 and 2.6.23-rc1-mm1.

I've attached:

debug.22-rc6-mm1 - things apparently working under the previous kernel.
debug.rc1-a      - this one complained but didn't time out for long times. I've
                 only seen 23-rc1-mm1 *not* take timeouts this one time. Oddness.
debug.rc1-b      - this one complained, and took 2 120-second waits
debug.patch      - the printf's I added, for those who want to follow along..

Apparently, things go pear-shaped in tis_tpm_send(), when they get to the
'if (chip->vendor.irq)' - under 22-rc6-mm1, we never got into this code,
because earlier initialization complained it couldn't get IRQ8.  Now, we
get IRQ3, and apparently get into this if statement, and then spend 120
seconds while wait_for_stat() times out.  So the root cause does look like
it's this IRQ8/IRQ3 issue.

I'll try to find time to do a bisect on -rc1-mm1 tomorrow to track down
what exactly did this.

(And remember to keep in mind the very real possibility that in fact, both
releases are broken in different ways - I've never actually *done* anything
with the chip further than "the driver loads".  Anybody got a very basic
userspace program to test-harness /dev/tpm0 (open, do a few test calls, close)?

[-- Attachment #1.2: debug.22-rc6-mm1 --]
[-- Type: text/plain , Size: 8092 bytes --]

[   32.324000] tpm_tis_pnp_init: start=4275306496, len=20480
[   32.324000] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[   32.324000] tpm_tis 00:0f: TPM interface capabilities (0x97):
[   32.324000] tpm_tis 00:0f: 	Command Ready Int Support
[   32.324000] tpm_tis 00:0f: 	Interrupt Level Low
[   32.324000] tpm_tis 00:0f: 	Locality Change Int Support
[   32.324000] tpm_tis 00:0f: 	Sts Valid Int Support
[   32.324000] tpm_tis 00:0f: 	Data Avail Int Support
[   32.324000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.324000] tis_send ready_for_command
[   32.324000] tis_send wait for tis_ready
[   32.330000] tis_send ready to go
[   32.330000] tis_send after iowrite8 loop
[   32.330000] tis_send after second wait_for_stat
[   32.330000] tis_send after second tis_status
[   32.330000] tis_send after last iowrite8
[   32.330000] tis_send after 3rd wait_for_stat
[   32.330000] tis_send after 3rd tis_status
[   32.330000] tis_send after STS_GO
[   32.336000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.336000] tis_send ready_for_command
[   32.336000] tis_send wait for tis_ready
[   32.342000] tis_send ready to go
[   32.342000] tis_send after iowrite8 loop
[   32.342000] tis_send after second wait_for_stat
[   32.342000] tis_send after second tis_status
[   32.342000] tis_send after last iowrite8
[   32.342000] tis_send after 3rd wait_for_stat
[   32.342000] tis_send after 3rd tis_status
[   32.342000] tis_send after STS_GO
[   32.348000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.348000] tis_send ready_for_command
[   32.348000] tis_send wait for tis_ready
[   32.354000] tis_send ready to go
[   32.354000] tis_send after iowrite8 loop
[   32.354000] tis_send after second wait_for_stat
[   32.354000] tis_send after second tis_status
[   32.354000] tis_send after last iowrite8
[   32.354000] tis_send after 3rd wait_for_stat
[   32.354000] tis_send after 3rd tis_status
[   32.354000] tis_send after STS_GO
[   32.360000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.360000] tis_send ready_for_command
[   32.360000] tis_send wait for tis_ready
[   32.366000] tis_send ready to go
[   32.366000] tis_send after iowrite8 loop
[   32.366000] tis_send after second wait_for_stat
[   32.366000] tis_send after second tis_status
[   32.366000] tis_send after last iowrite8
[   32.366000] tis_send after 3rd wait_for_stat
[   32.366000] tis_send after 3rd tis_status
[   32.366000] tis_send after STS_GO
[   32.372000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.372000] tis_send ready_for_command
[   32.372000] tis_send wait for tis_ready
[   32.378000] tis_send ready to go
[   32.378000] tis_send after iowrite8 loop
[   32.378000] tis_send after second wait_for_stat
[   32.378000] tis_send after second tis_status
[   32.378000] tis_send after last iowrite8
[   32.378000] tis_send after 3rd wait_for_stat
[   32.378000] tis_send after 3rd tis_status
[   32.378000] tis_send after STS_GO
[   32.384000] tpm_tis 00:0f: Unable to request irq: 8 for probe
[   32.384000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.384000] tis_send ready_for_command
[   32.384000] tis_send wait for tis_ready
[   32.390000] tis_send ready to go
[   32.390000] tis_send after iowrite8 loop
[   32.390000] tis_send after second wait_for_stat
[   32.390000] tis_send after second tis_status
[   32.390000] tis_send after last iowrite8
[   32.390000] tis_send after 3rd wait_for_stat
[   32.390000] tis_send after 3rd tis_status
[   32.390000] tis_send after STS_GO
[   32.396000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.396000] tis_send ready_for_command
[   32.396000] tis_send wait for tis_ready
[   32.402000] tis_send ready to go
[   32.402000] tis_send after iowrite8 loop
[   32.402000] tis_send after second wait_for_stat
[   32.402000] tis_send after second tis_status
[   32.402000] tis_send after last iowrite8
[   32.402000] tis_send after 3rd wait_for_stat
[   32.402000] tis_send after 3rd tis_status
[   32.402000] tis_send after STS_GO
[   32.408000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.408000] tis_send ready_for_command
[   32.408000] tis_send wait for tis_ready
[   32.414000] tis_send ready to go
[   32.414000] tis_send after iowrite8 loop
[   32.414000] tis_send after second wait_for_stat
[   32.414000] tis_send after second tis_status
[   32.414000] tis_send after last iowrite8
[   32.414000] tis_send after 3rd wait_for_stat
[   32.414000] tis_send after 3rd tis_status
[   32.414000] tis_send after STS_GO
[   32.420000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.420000] tis_send ready_for_command
[   32.420000] tis_send wait for tis_ready
[   32.426000] tis_send ready to go
[   32.426000] tis_send after iowrite8 loop
[   32.426000] tis_send after second wait_for_stat
[   32.426000] tis_send after second tis_status
[   32.426000] tis_send after last iowrite8
[   32.426000] tis_send after 3rd wait_for_stat
[   32.426000] tis_send after 3rd tis_status
[   32.426000] tis_send after STS_GO
[   32.432000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.432000] tis_send ready_for_command
[   32.432000] tis_send wait for tis_ready
[   32.438000] tis_send ready to go
[   32.438000] tis_send after iowrite8 loop
[   32.438000] tis_send after second wait_for_stat
[   32.438000] tis_send after second tis_status
[   32.438000] tis_send after last iowrite8
[   32.438000] tis_send after 3rd wait_for_stat
[   32.438000] tis_send after 3rd tis_status
[   32.438000] tis_send after STS_GO
[   32.444000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.444000] tis_send ready_for_command
[   32.444000] tis_send wait for tis_ready
[   32.450000] tis_send ready to go
[   32.450000] tis_send after iowrite8 loop
[   32.450000] tis_send after second wait_for_stat
[   32.450000] tis_send after second tis_status
[   32.450000] tis_send after last iowrite8
[   32.450000] tis_send after 3rd wait_for_stat
[   32.450000] tis_send after 3rd tis_status
[   32.450000] tis_send after STS_GO
[   32.456000] in tpm_tis_send buffer=18446604435840957488 len=22
[   32.456000] tis_send ready_for_command
[   32.456000] tis_send wait for tis_ready
[   32.462000] tis_send ready to go
[   32.462000] tis_send after iowrite8 loop
[   32.462000] tis_send after second wait_for_stat
[   32.462000] tis_send after second tis_status
[   32.462000] tis_send after last iowrite8
[   32.462000] tis_send after 3rd wait_for_stat
[   32.462000] tis_send after 3rd tis_status
[   32.462000] tis_send after STS_GO
[   32.468000] in tpm_tis_send buffer=18446604435840957472 len=22
[   32.468000] tis_send ready_for_command
[   32.468000] tis_send wait for tis_ready
[   32.474000] tis_send ready to go
[   32.474000] tis_send after iowrite8 loop
[   32.474000] tis_send after second wait_for_stat
[   32.474000] tis_send after second tis_status
[   32.474000] tis_send after last iowrite8
[   32.474000] tis_send after 3rd wait_for_stat
[   32.474000] tis_send after 3rd tis_status
[   32.474000] tis_send after STS_GO
[   32.480000] in tpm_tis_send buffer=18446604435840957472 len=22
[   32.480000] tis_send ready_for_command
[   32.480000] tis_send wait for tis_ready
[   32.486000] tis_send ready to go
[   32.486000] tis_send after iowrite8 loop
[   32.486000] tis_send after second wait_for_stat
[   32.486000] tis_send after second tis_status
[   32.486000] tis_send after last iowrite8
[   32.486000] tis_send after 3rd wait_for_stat
[   32.486000] tis_send after 3rd tis_status
[   32.486000] tis_send after STS_GO
[   32.492000] in tpm_tis_send buffer=18446604435840957528 len=10
[   32.492000] tis_send ready_for_command
[   32.492000] tis_send wait for tis_ready
[   32.498000] tis_send ready to go
[   32.498000] tis_send after iowrite8 loop
[   32.498000] tis_send after second wait_for_stat
[   32.498000] tis_send after second tis_status
[   32.498000] tis_send after last iowrite8
[   32.498000] tis_send after 3rd wait_for_stat
[   32.498000] tis_send after 3rd tis_status
[   32.498000] tis_send after STS_GO

[-- Attachment #1.3: debug.rc1-a --]
[-- Type: text/plain , Size: 2395 bytes --]

[ 1357.392943] tpm_tis_pnp_init: start=4275306496, len=20480
[ 1357.394579] SELinux: initialized (dev securityfs, type securityfs), not configured for labeling
[ 1357.394615] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[ 1357.394620] tpm_tis 00:0f: TPM interface capabilities (0x97):
[ 1357.394622] tpm_tis 00:0f: 	Command Ready Int Support
[ 1357.394624] tpm_tis 00:0f: 	Interrupt Level Low
[ 1357.394625] tpm_tis 00:0f: 	Locality Change Int Support
[ 1357.394627] tpm_tis 00:0f: 	Sts Valid Int Support
[ 1357.394628] tpm_tis 00:0f: 	Data Avail Int Support
[ 1357.394652] tpm0 (IRQ 3) handled a spurious interrupt
[ 1357.394669] in tpm_tis_send buffer=18446604435799350304 len=22
[ 1357.394675] tis_send ready_for_command
[ 1357.394677] tis_send wait for tis_ready
[ 1357.394680] tis_send ready to go
[ 1357.394696] tis_send after iowrite8 loop
[ 1357.394701] tis_send after second wait_for_stat
[ 1357.394704] tis_send after second tis_status
[ 1357.394705] tis_send after last iowrite8
[ 1357.394709] tis_send after 3rd wait_for_stat
[ 1357.394712] tis_send after 3rd tis_status
[ 1357.394713] tis_send after STS_GO
[ 1357.394714] tis_send before last wait_for_stat
[ 1358.966290] in tpm_tis_send buffer=18446604435799350304 len=22
[ 1358.966296] tis_send ready_for_command
[ 1358.966298] tis_send wait for tis_ready
[ 1358.966303] tis_send ready to go
[ 1358.966319] tis_send after iowrite8 loop
[ 1358.966324] tis_send after second wait_for_stat
[ 1358.966327] tis_send after second tis_status
[ 1358.966328] tis_send after last iowrite8
[ 1358.966331] tis_send after 3rd wait_for_stat
[ 1358.966334] tis_send after 3rd tis_status
[ 1358.966336] tis_send after STS_GO
[ 1358.966337] tis_send before last wait_for_stat
[ 1358.966345] tis_send after last wait_for_stat
[ 1358.966347] tis_send before last tis_ready
[ 1358.966348] tis_send after last tis_ready
[ 1358.966354] tis_send after release_locality
[ 1358.966357] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[ 1358.966359] in tpm_tis_send buffer=18446604435799350360 len=10
[ 1358.966364] tis_send ready_for_command
[ 1358.966365] tis_send wait for tis_ready
[ 1358.966373] tis_send timed out waiting for command_ready
[ 1358.966374] tis_send before last tis_ready
[ 1358.966375] tis_send after last tis_ready
[ 1358.966379] tis_send after release_locality
[ 1358.966380] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62

[-- Attachment #1.4: debug.rc1-b --]
[-- Type: text/plain , Size: 2377 bytes --]

[20013.799019] tpm_tis_pnp_init: start=4275306496, len=20480
[20013.804544] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[20013.804701] tpm_tis 00:0f: TPM interface capabilities (0x97):
[20013.804761] tpm_tis 00:0f: 	Command Ready Int Support
[20013.804820] tpm_tis 00:0f: 	Interrupt Level Low
[20013.804875] tpm_tis 00:0f: 	Locality Change Int Support
[20013.804948] tpm_tis 00:0f: 	Sts Valid Int Support
[20013.805005] tpm_tis 00:0f: 	Data Avail Int Support
[20013.805083] tpm0 (IRQ 3) handled a spurious interrupt
[20013.805203] in tpm_tis_send buffer=18446604435978689568 len=22
[20013.805267] tis_send ready to go
[20013.805334] tis_send after iowrite8 loop
[20013.805390] tis_send after second wait_for_stat
[20013.805446] tis_send after second tis_status
[20013.805499] tis_send after last iowrite8
[20013.805553] tis_send after 3rd wait_for_stat
[20013.805608] tis_send after 3rd tis_status
[20013.805661] tis_send after STS_GO
[20013.805712] tis_send before last wait_for_stat
[20133.740241] tis_send after last wait_for_stat
[20133.740251] tis_send before last tis_ready
[20133.740256] tis_send after last tis_ready
[20133.740261] tis_send after release_locality
[20133.740267] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[20133.740274] in tpm_tis_send buffer=18446604435978689568 len=22
[20133.740282] tis_send ready_for_command
[20133.740285] tis_send wait for tis_ready
[20135.739111] tis_send timed out waiting for command_ready
[20135.739121] tis_send before last tis_ready
[20135.739127] tis_send after last tis_ready
[20135.739132] tis_send after release_locality
[20135.739138] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[20135.739144] in tpm_tis_send buffer=18446604435978689624 len=10
[20135.739153] tis_send ready to go
[20135.739162] tis_send after iowrite8 loop
[20135.739167] tis_send after second wait_for_stat
[20135.739172] tis_send after second tis_status
[20135.739175] tis_send after last iowrite8
[20135.739179] tis_send after 3rd wait_for_stat
[20135.739184] tis_send after 3rd tis_status
[20135.739189] tis_send after STS_GO
[20135.739193] tis_send before last wait_for_stat
[20255.671378] tis_send after last wait_for_stat
[20255.671387] tis_send before last tis_ready
[20255.671394] tis_send after last tis_ready
[20255.671399] tis_send after release_locality
[20255.671405] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62

[-- Attachment #1.5: debug.patch --]
[-- Type: application/x-patch , Size: 3487 bytes --]

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

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

* Re: 2.6.23-rc1-mm1: reiser4 <-> lzo compile error
  2007-07-25 18:22 ` 2.6.23-rc1-mm1: reiser4 <-> lzo " Adrian Bunk
  2007-07-25 18:44   ` Edward Shishkin
@ 2007-07-27 12:35   ` Edward Shishkin
  2007-07-27 15:11     ` Richard Purdie
  1 sibling, 1 reply; 132+ messages in thread
From: Edward Shishkin @ 2007-07-27 12:35 UTC (permalink / raw)
  To: Adrian Bunk, Nitin Gupta, Richard Purdie
  Cc: Andrew Morton, linux-kernel, reiserfs-devel

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

Adrian Bunk wrote:

><--  snip  -->
>
>...
>  LD      .tmp_vmlinux1
>lib/built-in.o: In function `lzo1x_1_compress':
>(.text+0x13eae): multiple definition of `lzo1x_1_compress'
>fs/built-in.o:(.text+0x117075): first defined here
>make[1]: *** [.tmp_vmlinux1] Error 1
>
><--  snip  -->
>
>AFAIR, we once had a patch in -mm changing reiser4 to use the
>LZO code that is now in the kernel?
>
>cu
>Adrian
>
>  
>
Sorry, guys, I am not happy with the modified LZO:
the compressor tries to test bytes which are out of bounds.

The attached module testlzo.c causes an oops in the second pass:
AFAIK, both, @m and @m_pos should be in [wrkmem, wrkmem + 64K);
I have attached trace.txt with their actual values.

Not ready to migrate to this library.

Any ideas?

Thanks,
Edward.

P.S.
kernel: 2.6.23-rc1-mm1
box: x86

[-- Attachment #2: testlzo.c --]
[-- Type: text/x-csrc, Size: 1272 bytes --]

#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/lzo.h>
#include <linux/vmalloc.h>

MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Compress 64K zeroed chunk");

#define CHUNK_SIZE 65536
#define NR_PASSES 2

static int __init lkp_init( void )
{
	int i;
	int ret;
	void * wrkmem;
	unsigned char * src_buf;
	unsigned char * dst_buf;
	size_t src_len;
	size_t dst_len;

	src_len = CHUNK_SIZE;
	dst_len = lzo1x_worst_compress(src_len);

	printk("<1> Testing LZO: start...\n");

	wrkmem = vmalloc(LZO1X_1_MEM_COMPRESS);
	if (!wrkmem)
		goto enomem;
	src_buf = vmalloc(src_len);
	if (!src_buf) {
		vfree(wrkmem);
		goto enomem;
	}
	memset(src_buf, 0, src_len);

	dst_buf = vmalloc(dst_len);
	if (!dst_buf) {
		vfree(wrkmem);
		vfree(src_buf);
		goto enomem;
	}
	for (i = 0; i < NR_PASSES; i++) {
		size_t out_len;
		ret = lzo1x_1_compress(src_buf, src_len,
				       dst_buf, &out_len,
				       wrkmem);
		if (ret)
			break;
		printk("pass %d: compressed to %d bytes\n", i, out_len);
	}
	vfree(wrkmem);
	vfree(src_buf);
	vfree(dst_buf);
	return ret;
 enomem:
	printk("vmalloc failed\n");
	return -ENOMEM;
}

static void __exit lkp_cleanup( void )
{
	printk("<1>Testing LZO : finish\n");
}
module_init(lkp_init);
module_exit(lkp_cleanup);

[-- Attachment #3: trace.txt --]
[-- Type: text/plain, Size: 469 bytes --]

Program received signal SIGSEGV, Segmentation fault.
0xc02efec8 in _lzo1x_1_do_compress (in=0xe08c9000 "", in_len=Variable "in_len" is not available.
) at lzo1x_compress.c:130
130                                     ip++;
(gdb) p m
$2 = (const unsigned char *) 0xe08d9000 <Address 0xe08d9000 out of bounds>
(gdb) p wrkmem
$3 = (void *) 0xe08b8000
(gdb) p m - wrkmem
$4 = 135168
(gdb) p m_pos
$5 = (const unsigned char *) 0xe08c9005 ""
(gdb) p m_pos - wrkmem
$6 = 69637

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-27  4:00     ` Valdis.Kletnieks
@ 2007-07-27 13:28       ` Valdis.Kletnieks
  2007-07-27 18:07         ` Andrew Morton
  2007-07-27 22:43         ` Bjorn Helgaas
  0 siblings, 2 replies; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-27 13:28 UTC (permalink / raw)
  To: Andrew Morton, Kylene Hall, tpm; +Cc: linux-kernel

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

On Fri, 27 Jul 2007 00:00:32 EDT, Valdis.Kletnieks@vt.edu said:

> Apparently, things go pear-shaped in tis_tpm_send(), when they get to the
> 'if (chip->vendor.irq)' - under 22-rc6-mm1, we never got into this code,
> because earlier initialization complained it couldn't get IRQ8.  Now, we
> get IRQ3, and apparently get into this if statement, and then spend 120
> seconds while wait_for_stat() times out.  So the root cause does look like
> it's this IRQ8/IRQ3 issue.
> 
> I'll try to find time to do a bisect on -rc1-mm1 tomorrow to track down
> what exactly did this.

And we have a winner.  In my bisect 'hunt' file, I ended at:

fs-use-kmem_cache_zalloc-instead.patch GOOD
# remove-kconfig-setting-config_debug_shirq.patch: Ingo worried
remove-kconfig-setting-config_debug_shirq.patch BAD

Looks like Ingo was right. :)  As a cross-check, I tested a 'GOOD' kernel,
but rebuilt with CONFIG_DEBUG_SHIRQ=y, and that *also* died. 

Looks like the problematic code is in tpm_tis.c tpm_tis_init() near here:

                for (i = 3; i < 16 && chip->vendor.irq == 0; i++) {
                        iowrite8(i, chip->vendor.iobase +
                                    TPM_INT_VECTOR(chip->vendor.locality));
                        if (request_irq
                            (i, tis_int_probe, IRQF_SHARED,
                             chip->vendor.miscdev.name, chip) != 0) {
                                dev_info(chip->dev,
                                         "Unable to request irq: %d for probe\n"
,           
                                         i);
                                continue;
                        }

This seems to be misbehaving differently for the two different DEBUG_SHIRQ
cases.

With DEBUG_SHIRQ=n, it starts at IRQ3, gets to at least 8 (where it complains
it can't request it for probing), and possibly all the way to 15, without ever
actually selecting and assigning an IRQ (to refresh memories, in that range
/proc/interrupts only lists:

  8:          0          0   IO-APIC-edge      rtc
  9:          3          0   IO-APIC-fasteoi   acpi
 12:         94          0   IO-APIC-edge      i8042
 14:     148166          0   IO-APIC-edge      libata
 15:         94          0   IO-APIC-edge      libata

So there's certainly IRQ's available.  No idea why it doesn't choose one. But
since it never chose one, it never gets into the "wait for the IRQ" protected
by 'if (chip->vendor.irq)' at the end of tpm_tis_send.

With DEBUG_SHIRQ=y, It starts at IRQ3, and assigns it (which seems a good thing).
Unfortunately, this then hits the timeouts in tpm_tis_send.

Anybody got an idea what *should* be happening here?

Just for the record, I see this in /sys:

% cat /sys/bus/pnp/devices/00:0e/id
BCM0102
PNP0c31

The driver is apparently being selected on the basis of PNP0c31.  One of
the other ID's it looks for is BCM0101 - but this is a BCM0102.  Is this a
misidentification, or does the driver need to handle a 0102 differently, or
is something else odd going on?


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

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

* [-mm patch] xtensa console.c: remove duplicate #include
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (15 preceding siblings ...)
  2007-07-26 12:58 ` 2.6.23-rc1-mm1 sparsemem_vmemamp fix KAMEZAWA Hiroyuki
@ 2007-07-27 13:28 ` Frederik Deweerdt
  2007-07-28 15:44 ` NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
                   ` (16 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Frederik Deweerdt @ 2007-07-27 13:28 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, chris

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 
Hi,

This patch removes one of the two linux/console.h included in
arch/xtensa/platform-iss/console.c

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>

diff --git a/arch/xtensa/platform-iss/console.c b/arch/xtensa/platform-iss/console.c
index 2f4f20f..854677d 100644
--- a/arch/xtensa/platform-iss/console.c
+++ b/arch/xtensa/platform-iss/console.c
@@ -20,7 +20,6 @@
 #include <linux/param.h>
 #include <linux/serial.h>
 #include <linux/serialP.h>
-#include <linux/console.h>
 
 #include <asm/uaccess.h>
 #include <asm/irq.h>

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

* Re: 2.6.23-rc1-mm1: reiser4 <-> lzo compile error
  2007-07-27 12:35   ` Edward Shishkin
@ 2007-07-27 15:11     ` Richard Purdie
  0 siblings, 0 replies; 132+ messages in thread
From: Richard Purdie @ 2007-07-27 15:11 UTC (permalink / raw)
  To: Edward Shishkin
  Cc: Adrian Bunk, Nitin Gupta, Andrew Morton, linux-kernel, reiserfs-devel

On Fri, 2007-07-27 at 16:35 +0400, Edward Shishkin wrote:
> Sorry, guys, I am not happy with the modified LZO:
> the compressor tries to test bytes which are out of bounds.
> 
> The attached module testlzo.c causes an oops in the second pass:
> AFAIK, both, @m and @m_pos should be in [wrkmem, wrkmem + 64K);
> I have attached trace.txt with their actual values.
> 
> Not ready to migrate to this library.
> 
> Any ideas?

I can confirm its broken, it give an oops on ARM 2.6.23-rc1 too in the
first pass.

I guess the only real solution now is to compare the byte code from the
new and original and find out where this problem has crept in from and
check there are no others. I'll look into it but its going to take time.
There goes my weekend :-(

Richard


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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-27 13:28       ` Valdis.Kletnieks
@ 2007-07-27 18:07         ` Andrew Morton
  2007-07-27 19:44           ` Valdis.Kletnieks
  2007-07-27 22:43         ` Bjorn Helgaas
  1 sibling, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-27 18:07 UTC (permalink / raw)
  To: Valdis.Kletnieks
  Cc: Kylene Hall, tpm, linux-kernel, Fernando Luis Vázquez Cao

On Fri, 27 Jul 2007 09:28:09 -0400
Valdis.Kletnieks@vt.edu wrote:

> On Fri, 27 Jul 2007 00:00:32 EDT, Valdis.Kletnieks@vt.edu said:
> 
> > Apparently, things go pear-shaped in tis_tpm_send(), when they get to the
> > 'if (chip->vendor.irq)' - under 22-rc6-mm1, we never got into this code,
> > because earlier initialization complained it couldn't get IRQ8.  Now, we
> > get IRQ3, and apparently get into this if statement, and then spend 120
> > seconds while wait_for_stat() times out.  So the root cause does look like
> > it's this IRQ8/IRQ3 issue.
> > 
> > I'll try to find time to do a bisect on -rc1-mm1 tomorrow to track down
> > what exactly did this.
> 
> And we have a winner.  In my bisect 'hunt' file, I ended at:
> 
> fs-use-kmem_cache_zalloc-instead.patch GOOD
> # remove-kconfig-setting-config_debug_shirq.patch: Ingo worried
> remove-kconfig-setting-config_debug_shirq.patch BAD

Thanks for working that out.

> Looks like Ingo was right. :)  As a cross-check, I tested a 'GOOD' kernel,
> but rebuilt with CONFIG_DEBUG_SHIRQ=y, and that *also* died. 
> 
> Looks like the problematic code is in tpm_tis.c tpm_tis_init() near here:
> 
>                 for (i = 3; i < 16 && chip->vendor.irq == 0; i++) {
>                         iowrite8(i, chip->vendor.iobase +
>                                     TPM_INT_VECTOR(chip->vendor.locality));
>                         if (request_irq
>                             (i, tis_int_probe, IRQF_SHARED,
>                              chip->vendor.miscdev.name, chip) != 0) {
>                                 dev_info(chip->dev,
>                                          "Unable to request irq: %d for probe\n"
> ,           
>                                          i);
>                                 continue;
>                         }
> 
> This seems to be misbehaving differently for the two different DEBUG_SHIRQ
> cases.
> 
> With DEBUG_SHIRQ=n, it starts at IRQ3, gets to at least 8 (where it complains
> it can't request it for probing), and possibly all the way to 15, without ever
> actually selecting and assigning an IRQ (to refresh memories, in that range
> /proc/interrupts only lists:
> 
>   8:          0          0   IO-APIC-edge      rtc
>   9:          3          0   IO-APIC-fasteoi   acpi
>  12:         94          0   IO-APIC-edge      i8042
>  14:     148166          0   IO-APIC-edge      libata
>  15:         94          0   IO-APIC-edge      libata
> 
> So there's certainly IRQ's available.  No idea why it doesn't choose one. But
> since it never chose one, it never gets into the "wait for the IRQ" protected
> by 'if (chip->vendor.irq)' at the end of tpm_tis_send.
> 
> With DEBUG_SHIRQ=y, It starts at IRQ3, and assigns it (which seems a good thing).
> Unfortunately, this then hits the timeouts in tpm_tis_send.
> 
> Anybody got an idea what *should* be happening here?
> 
> Just for the record, I see this in /sys:
> 
> % cat /sys/bus/pnp/devices/00:0e/id
> BCM0102
> PNP0c31
> 
> The driver is apparently being selected on the basis of PNP0c31.  One of
> the other ID's it looks for is BCM0101 - but this is a BCM0102.  Is this a
> misidentification, or does the driver need to handle a 0102 differently, or
> is something else odd going on?
> 

Fernando, those patches are just too scary for me because of stuff like
this.

Perhaps we should look at implementing this new behaviour on a per-driver
basis?  Pass smoe new flag into request_irq(), perhaps?



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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-27 18:07         ` Andrew Morton
@ 2007-07-27 19:44           ` Valdis.Kletnieks
  0 siblings, 0 replies; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-27 19:44 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Kylene Hall, tpm, linux-kernel, Fernando Luis Vázquez Cao

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

On Fri, 27 Jul 2007 11:07:01 PDT, Andrew Morton said:
> On Fri, 27 Jul 2007 09:28:09 -0400
> Valdis.Kletnieks@vt.edu wrote:

> > And we have a winner.  In my bisect 'hunt' file, I ended at:
> > 
> > fs-use-kmem_cache_zalloc-instead.patch GOOD
> > # remove-kconfig-setting-config_debug_shirq.patch: Ingo worried
> > remove-kconfig-setting-config_debug_shirq.patch BAD
> 
> Thanks for working that out.

Hey, it's what I'm here for. :)

> > Looks like Ingo was right. :)  As a cross-check, I tested a 'GOOD' kernel,
> > but rebuilt with CONFIG_DEBUG_SHIRQ=y, and that *also* died. 

> Fernando, those patches are just too scary for me because of stuff like
> this.
> 
> Perhaps we should look at implementing this new behaviour on a per-driver
> basis?  Pass smoe new flag into request_irq(), perhaps?

Has anybody else hit an actual problem with this, or is the borkage restricted
to this one driver?  And, quite frankly, given that *before*, the driver would
try and reject 5 different unused IRQs and then complain when it found one in
use, I'm not totally convinced that the driver wasn't on crack *before*.  The
only thing I've been able to prove to myself is that it's acting differently,
but I'm pretty sure that *both* before and after are broken, just in different
ways.

I'd not fault Fernando's patch here - if I'd enabled the DEBUG_SHIRQ on
previous kernels, I'd have spotted it then.  I never enabled it because I
didn't know I had drivers that might have bugs in that area.

Kylene or somebody else who actually understands the TPM chipsets would have
to provide guidance on how it's *supposed* to work, and I'm certainly willing
to testbed patches.

For what it's worth - I actually read the source some more, discovered the
module parm 'interrupts=0' (which forces polling mode), and managed to get
things at least semi-working with the libtpm-2.0 test suite:

~/src/libtpm-2.0/utils % ./tpm_demo 
TPM version 1.1.0.0
24 PCR registers are available
PCR-00: 48 88 FD B3 F6 04 AF 54 9F 6A 53 19 96 38 4F BF 02 52 3F C7 
PCR-01: 5B 93 BB A0 A6 64 A7 10 52 59 4A 70 95 B2 07 75 77 03 45 0B 
PCR-02: 5B 93 BB A0 A6 64 A7 10 52 59 4A 70 95 B2 07 75 77 03 45 0B 
PCR-03: 5B 93 BB A0 A6 64 A7 10 52 59 4A 70 95 B2 07 75 77 03 45 0B 
PCR-04: 7D 89 C5 0D C7 E5 2F F1 2C 56 0C C2 84 40 FD ED 06 B4 D6 B7 
PCR-05: 23 E4 5B 96 79 C4 52 F7 4A EA 76 04 46 FF BB D1 02 D0 3D 27 
PCR-06: 5B 93 BB A0 A6 64 A7 10 52 59 4A 70 95 B2 07 75 77 03 45 0B 
PCR-07: 5B 93 BB A0 A6 64 A7 10 52 59 4A 70 95 B2 07 75 77 03 45 0B 
PCR-08: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-09: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-11: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-12: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-13: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-14: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-15: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-16: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
PCR-17: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
PCR-18: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
PCR-19: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
PCR-20: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
PCR-21: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
PCR-22: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
PCR-23: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
3 Key slots are available
No keys are loaded
Unable to read Pubek

Unsure why it reports TPM 1.1 here, and 1.2 when the driver initializes.
But at least I've gotten the chip to do a "Hello World!", so that's progress. :)



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

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-27 13:28       ` Valdis.Kletnieks
  2007-07-27 18:07         ` Andrew Morton
@ 2007-07-27 22:43         ` Bjorn Helgaas
  2007-07-30 18:09           ` Bjorn Helgaas
  2007-07-30 23:53           ` Valdis.Kletnieks
  1 sibling, 2 replies; 132+ messages in thread
From: Bjorn Helgaas @ 2007-07-27 22:43 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

On Friday 27 July 2007 07:28:09 am Valdis.Kletnieks@vt.edu wrote:
> Looks like the problematic code is in tpm_tis.c tpm_tis_init() near here:
> 
>                 for (i = 3; i < 16 && chip->vendor.irq == 0; i++) {
>                         iowrite8(i, chip->vendor.iobase +
>                                     TPM_INT_VECTOR(chip->vendor.locality));
>                         if (request_irq
>                             (i, tis_int_probe, IRQF_SHARED,
>                              chip->vendor.miscdev.name, chip) != 0) {
>                                 dev_info(chip->dev,
>                                          "Unable to request irq: %d for probe\n"
> ,           
>                                          i);
>                                 continue;
>                         }
> 
> This seems to be misbehaving differently for the two different DEBUG_SHIRQ
> cases.
> 
> With DEBUG_SHIRQ=n, it starts at IRQ3, gets to at least 8 (where it complains
> it can't request it for probing), and possibly all the way to 15, without ever
> actually selecting and assigning an IRQ (to refresh memories, in that range
> /proc/interrupts only lists:
> 
>   8:          0          0   IO-APIC-edge      rtc
>   9:          3          0   IO-APIC-fasteoi   acpi
>  12:         94          0   IO-APIC-edge      i8042
>  14:     148166          0   IO-APIC-edge      libata
>  15:         94          0   IO-APIC-edge      libata
> 
> So there's certainly IRQ's available.  No idea why it doesn't choose one. But
> since it never chose one, it never gets into the "wait for the IRQ" protected
> by 'if (chip->vendor.irq)' at the end of tpm_tis_send.
> 
> With DEBUG_SHIRQ=y, It starts at IRQ3, and assigns it (which seems a good thing).
> Unfortunately, this then hits the timeouts in tpm_tis_send.
> 
> Anybody got an idea what *should* be happening here?

I don't know why tpm_tis_init() is messing around trying different
IRQs between 3 and 16.  That looks suspiciously x86-dependent.

Maybe if you don't have PNP (though I doubt TPMs exist on any
pre-PNPBIOS machines) the "check-IRQ" loop would be necessary.

But you're using the PNP probe, and PNP should just tell you what
IRQ the device is configured for (and whether the IRQ can be
shared -- see 8250_pnp.c for an example).

The BIOS should have configured the TPM IRQ, and if we go and
mess with that IRQ setting without going through the PNP interface,
e.g., the ACPI _SRS method, we're liable to mess something up.  The
TPM is often behind a few bridges, and if the bridge has any IRQ
routing configuration, only the BIOS knows how to keep that in
sync with the TPM IRQ configuration.

> Just for the record, I see this in /sys:
> 
> % cat /sys/bus/pnp/devices/00:0e/id
> BCM0102
> PNP0c31

What's in /sys/bus/pnp/devices/00:0e/resources?

Bjorn


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

* Re: 2.6.23-rc1-mm1
  2007-07-26 17:54                 ` 2.6.23-rc1-mm1 Torsten Kaiser
@ 2007-07-28 14:03                   ` Torsten Kaiser
  0 siblings, 0 replies; 132+ messages in thread
From: Torsten Kaiser @ 2007-07-28 14:03 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Len Brown, Cedric Le Goater, linux-kernel, Shaohua Li, linux-mm

On 7/26/07, Torsten Kaiser <just.for.lkml@googlemail.com> wrote:
> DISCONTIGMEM+SLUB:
> [   39.833272] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
> [   40.016659] Kernel panic - not syncing: IO-APIC + timer doesn't
> work! Try using the 'noapic' kernel parameter
> DISCONTIGMEM+SLAB:
> Boots until it can't find / because I didn't append the correct initrd
> It also hit the MP-BIOS bug, but was not bothered by it:
> [   36.696965] ..MP-BIOS bug: 8254 timer not connected to IO-APIC
> [   36.880537] Using local APIC timer interrupts.
> [   36.932215] result 12500283
> [   36.940581] Detected 12.500 MHz APIC timer.
>
> So I think, I will postpone SPARSEMEM until -mm2, as there are seem to
> be some problems in that area (Re: 2.6.23-rc1-mm1 sparsemem_vmemamp
> fix)
>
> But maybee I will get SLUB to work. ;)

SLUB works, if I reboot (Alt+SysRq+B) from a 2.6.22-rc6-mm1 kernel.

Otherwise it will panic with IO-APIC + timer not working.

Differences in dmesg
2.6.22-rc6-mm1 has:
[    0.000000] Nvidia board detected. Ignoring ACPI timer override.
[    0.000000] If you got timer trouble try acpi_use_timer_override
and
[    0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
and
[    0.000000] TSC calibrated against PM_TIMER

 23-rc1-mm1 has:
[    0.000000] ACPI: IRQ0 used by override.
[    0.000000] ACPI: IRQ2 used by override.
and
[   37.340319] ..MP-BIOS bug: 8254 timer not connected to IO-APIC

I did not need to use acpi_use_timer_override with the older kernel.

Do you need more info about my board/ BIOS/ ACPI tables?

After the warm-boot trick 2.6.23-rc1-mm1 seems stable right now...

Torsten

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

* NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (16 preceding siblings ...)
  2007-07-27 13:28 ` [-mm patch] xtensa console.c: remove duplicate #include Frederik Deweerdt
@ 2007-07-28 15:44 ` Gabriel C
  2007-07-28 17:26   ` Andrew Morton
  2007-07-28 16:36 ` DCA=n , INTEL_IOATDMA=y compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
                   ` (15 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-28 15:44 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, netdev, jason.wessel, amitkale

Hi,

I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).

...

net/core/netpoll.c: In function 'netpoll_poll':
net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
net/core/netpoll.c: In function 'netpoll_setup':
net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
make[2]: *** [net/core/netpoll.o] Error 1
make[1]: *** [net/core] Error 2
make: *** [net] Error 2
make: *** Waiting for unfinished jobs....

...


I think is because KGDBOE selects just NETPOLL.


Regards,

Gabriel

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

* DCA=n , INTEL_IOATDMA=y compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (17 preceding siblings ...)
  2007-07-28 15:44 ` NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
@ 2007-07-28 16:36 ` Gabriel C
  2007-07-28 16:47 ` sound/pci/ac97/ac97_patch.h - declared 'static' but never defined warnings " Gabriel C
                   ` (14 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Gabriel C @ 2007-07-28 16:36 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Nelson, Shannon

Hi,

I got this error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-86.ioat )

...

  LD      .tmp_vmlinux1
drivers/built-in.o: In function `ioat_shutdown_functionality':
ioat.c:(.text+0x21ed32): undefined reference to `unregister_dca_provider'
ioat.c:(.text+0x21ed3a): undefined reference to `free_dca_provider'
drivers/built-in.o: In function `ioat_dca_init':
(.text+0x2201f3): undefined reference to `alloc_dca_provider'
drivers/built-in.o: In function `ioat_dca_init':
(.text+0x22022e): undefined reference to `register_dca_provider'
drivers/built-in.o: In function `ioat_dca_init':
(.text+0x22023b): undefined reference to `free_dca_provider'
make: *** [.tmp_vmlinux1] Error 1

...


Regards,

Gabriel C

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

* sound/pci/ac97/ac97_patch.h - declared 'static' but never defined warnings ( Re: 2.6.23-rc1-mm1 )
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (18 preceding siblings ...)
  2007-07-28 16:36 ` DCA=n , INTEL_IOATDMA=y compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
@ 2007-07-28 16:47 ` Gabriel C
  2007-07-28 17:07 ` mm/sparse.c compile error " Gabriel C
                   ` (13 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Gabriel C @ 2007-07-28 16:47 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

...

sound/pci/ac97/ac97_patch.h:86: warning: 'snd_ac97_restore_status' declared 'static' but never defined
sound/pci/ac97/ac97_patch.h:87: warning: 'snd_ac97_restore_iec958' declared 'static' but never defined

...


Got that with a randconfig ( http://194.231.229.228/MM/randconfig-auto-86.ioat )


Regards,

Gabriel C

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

* mm/sparse.c compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (19 preceding siblings ...)
  2007-07-28 16:47 ` sound/pci/ac97/ac97_patch.h - declared 'static' but never defined warnings " Gabriel C
@ 2007-07-28 17:07 ` Gabriel C
  2007-07-28 17:30   ` Andrew Morton
  2007-07-28 19:32 ` [PATCH -mm] Fix libata warnings with CONFIG_PM=n Gabriel C
                   ` (12 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-28 17:07 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, Mel Gorman, Bob Picco, Andy Whitcroft,
	William Irwin, Tony Luck

Hi,

next randconfig error ( http://194.231.229.228/MM/randconfig-auto-87.mm_sparse.error )


...

mm/sparse.c: In function 'sparse_init':
mm/sparse.c:482: error: implicit declaration of function 'sparse_early_usemap_alloc'
mm/sparse.c:482: warning: assignment makes pointer from integer without a cast
make[1]: *** [mm/sparse.o] Error 1
make: *** [mm] Error 2
make: *** Waiting for unfinished jobs....

...


guessing while this patch , but I am not really sure :

fix-corruption-of-memmap-on-ia64-sparsemem-when-mem_section-is-not-a-power-of-2.patch


Regards,

Gabriel C

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-28 15:44 ` NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
@ 2007-07-28 17:26   ` Andrew Morton
  2007-07-28 18:42     ` Gabriel C
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-28 17:26 UTC (permalink / raw)
  To: Gabriel C; +Cc: linux-kernel, netdev, jason.wessel, amitkale

On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:

> Hi,
> 
> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
> 
> ...
> 
> net/core/netpoll.c: In function 'netpoll_poll':
> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
> net/core/netpoll.c: In function 'netpoll_setup':
> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
> make[2]: *** [net/core/netpoll.o] Error 1
> make[1]: *** [net/core] Error 2
> make: *** [net] Error 2
> make: *** Waiting for unfinished jobs....
> 
> ...
> 
> 
> I think is because KGDBOE selects just NETPOLL.
> 

Looks like it.

Select went and selected NETPOLL and NETPOLL_TRAP but things like
CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
remains evil.

Something like this..

--- a/lib/Kconfig.kgdb~kgdb-kconfig-fix
+++ a/lib/Kconfig.kgdb
@@ -175,8 +175,7 @@ endchoice
 config KGDBOE
 	tristate "KGDB: On ethernet" if !KGDBOE_NOMODULE
 	depends on m && KGDB
-	select NETPOLL
-	select NETPOLL_TRAP
+	depends on NETPOLL_TRAP && NET_POLL_CONTROLLER
 	help
 	  Uses the NETPOLL API to communicate with the host GDB via UDP.
 	  In order for this to work, the ethernet interface specified must
_


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

* Re: mm/sparse.c compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-28 17:07 ` mm/sparse.c compile error " Gabriel C
@ 2007-07-28 17:30   ` Andrew Morton
  2007-07-30 12:16     ` Andy Whitcroft
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-28 17:30 UTC (permalink / raw)
  To: Gabriel C
  Cc: linux-kernel, Mel Gorman, Bob Picco, Andy Whitcroft,
	William Irwin, Tony Luck

On Sat, 28 Jul 2007 19:07:22 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:

> Hi,
> 
> next randconfig error ( http://194.231.229.228/MM/randconfig-auto-87.mm_sparse.error )
> 
> 
> ...
> 
> mm/sparse.c: In function 'sparse_init':
> mm/sparse.c:482: error: implicit declaration of function 'sparse_early_usemap_alloc'
> mm/sparse.c:482: warning: assignment makes pointer from integer without a cast
> make[1]: *** [mm/sparse.o] Error 1
> make: *** [mm] Error 2
> make: *** Waiting for unfinished jobs....
> 
> ...
> 
> 
> guessing while this patch , but I am not really sure :
> 
> fix-corruption-of-memmap-on-ia64-sparsemem-when-mem_section-is-not-a-power-of-2.patch
> 

That seems to have been fixed by one of the post-2.6.23-rc1-mm1 patches I merged,
thanks.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-28 17:26   ` Andrew Morton
@ 2007-07-28 18:42     ` Gabriel C
  2007-07-31  8:32       ` Jarek Poplawski
  0 siblings, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-28 18:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, netdev, jason.wessel, amitkale

Andrew Morton wrote:
> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
> 
>> Hi,
>>
>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
>>
>> ...
>>
>> net/core/netpoll.c: In function 'netpoll_poll':
>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
>> net/core/netpoll.c: In function 'netpoll_setup':
>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
>> make[2]: *** [net/core/netpoll.o] Error 1
>> make[1]: *** [net/core] Error 2
>> make: *** [net] Error 2
>> make: *** Waiting for unfinished jobs....
>>
>> ...
>>
>>
>> I think is because KGDBOE selects just NETPOLL.
>>
> 
> Looks like it.
> 
> Select went and selected NETPOLL and NETPOLL_TRAP but things like
> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
> remains evil.
> 
> Something like this..
> 
> --- a/lib/Kconfig.kgdb~kgdb-kconfig-fix
> +++ a/lib/Kconfig.kgdb
> @@ -175,8 +175,7 @@ endchoice
>  config KGDBOE
>  	tristate "KGDB: On ethernet" if !KGDBOE_NOMODULE
>  	depends on m && KGDB
> -	select NETPOLL
> -	select NETPOLL_TRAP
> +	depends on NETPOLL_TRAP && NET_POLL_CONTROLLER
>  	help
>  	  Uses the NETPOLL API to communicate with the host GDB via UDP.
>  	  In order for this to work, the ethernet interface specified must
> _
> 
> 


That doesn't fix it. With that patch an 'make oldconfig' all NETPOLL stuff gone and we end up with :

...

drivers/built-in.o: In function `option_setup':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:160: undefined reference to `netpoll_parse_options'
drivers/built-in.o: In function `configure_kgdboe':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:183: undefined reference to `netpoll_setup'
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:189: undefined reference to `netpoll_cleanup'
drivers/built-in.o: In function `eth_post_exception_handler':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:119: undefined reference to `netpoll_set_trap'
drivers/built-in.o: In function `eth_pre_exception_handler':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:111: undefined reference to `netpoll_set_trap'
drivers/built-in.o: In function `eth_flush_buf':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:138: undefined reference to `netpoll_send_udp'
drivers/built-in.o: In function `eth_get_char':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:127: undefined reference to `netpoll_poll'
drivers/built-in.o: In function `cleanup_kgdboe':
/work/crazy/linux-git/MM/linux-2.6.23-rc1/drivers/net/kgdboe.c:217: undefined reference to `netpoll_cleanup'
make: *** [.tmp_vmlinux1] Error 1

...


If I get that right  select is needed here because  all NETPOLL{_*} depends on if NETDEVICES && if NET_ETHERNET.

Also doing 
	
	...
	select NETPOLL_TRAP 
	select NETPOLL
	select NET_POLL_CONTROLLER
	...

makes the driver happy and everything compiles fine.

I think there may be a logical issue ( again if I got it right ).
We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.

So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 

( really sory if I said something stupid these Kconfig depends are not really easy to figure for me )


Gabriel 

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

* [PATCH -mm] Fix libata warnings with CONFIG_PM=n
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (20 preceding siblings ...)
  2007-07-28 17:07 ` mm/sparse.c compile error " Gabriel C
@ 2007-07-28 19:32 ` Gabriel C
  2007-07-29 14:57 ` [-mm patch] make hugetlbfs_read() static Adrian Bunk
                   ` (11 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Gabriel C @ 2007-07-28 19:32 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, jgarzik, linux-ide

Hi Jeff,

I noticed this warnings when CONFIG_PM=n 

...

drivers/ata/libata-core.c:5993: warning: 'ata_host_disable_link_pm' defined but not used
drivers/ata/libata-core.c:6004: warning: 'ata_host_enable_link_pm' defined but not used

...

Signed-off-by: Gabriel Craciunescu <nix.or.die@googlemail.com>

---

--- linux-2.6.23-rc1/drivers/ata/libata-core.c.orig	2007-07-28 21:17:31.000000000 +0200
+++ linux-2.6.23-rc1/drivers/ata/libata-core.c	2007-07-28 21:17:48.000000000 +0200
@@ -5989,6 +5989,7 @@ int ata_flush_cache(struct ata_device *d
 	return 0;
 }
 
+#ifdef CONFIG_PM
 static void ata_host_disable_link_pm(struct ata_host *host)
 {
 	int i;
@@ -6011,7 +6012,7 @@ static void ata_host_enable_link_pm(stru
 	}
 }
 
-#ifdef CONFIG_PM
+
 static int ata_host_request_pm(struct ata_host *host, pm_message_t mesg,
 			       unsigned int action, unsigned int ehi_flags,
 			       int wait)


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

* [-mm patch] make hugetlbfs_read() static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (21 preceding siblings ...)
  2007-07-28 19:32 ` [PATCH -mm] Fix libata warnings with CONFIG_PM=n Gabriel C
@ 2007-07-29 14:57 ` Adrian Bunk
  2007-07-29 14:57 ` [-mm patch] fs/ecryptfs/: make code static Adrian Bunk
                   ` (10 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:57 UTC (permalink / raw)
  To: Andrew Morton, Badari Pulavarty, William Irwin; +Cc: linux-kernel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +hugetlbfs-read-support.patch
>...
>  More MM things
>...

hugetlbfs_read() can become static.

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

---
--- linux-2.6.23-rc1-mm1/fs/hugetlbfs/inode.c.old	2007-07-26 13:28:52.000000000 +0200
+++ linux-2.6.23-rc1-mm1/fs/hugetlbfs/inode.c	2007-07-26 13:29:30.000000000 +0200
@@ -217,8 +217,8 @@
  * data. Its *very* similar to do_generic_mapping_read(), we can't use that
  * since it has PAGE_CACHE_SIZE assumptions.
  */
-ssize_t
-hugetlbfs_read(struct file *filp, char __user *buf, size_t len, loff_t *ppos)
+static ssize_t hugetlbfs_read(struct file *filp, char __user *buf,
+			      size_t len, loff_t *ppos)
 {
 	struct address_space *mapping = filp->f_mapping;
 	struct inode *inode = mapping->host;


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

* [-mm patch] fs/ecryptfs/: make code static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (22 preceding siblings ...)
  2007-07-29 14:57 ` [-mm patch] make hugetlbfs_read() static Adrian Bunk
@ 2007-07-29 14:57 ` Adrian Bunk
  2007-07-29 14:58 ` [-mm patch] make struct sdio_dev_attrs[] static Adrian Bunk
                   ` (9 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:57 UTC (permalink / raw)
  To: Andrew Morton, Michael Halcrow, phillip; +Cc: linux-kernel, ecryptfs-devel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>... 
> Changes since 2.6.22-rc6-mm1:
>...
> +ecryptfs-add-key-list-structure-search-keyring.patch
>...
>  ecryptfs feature work
>...

This patch makes some needlessly global code static.

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

---

 fs/ecryptfs/crypto.c          |   15 +++++------
 fs/ecryptfs/ecryptfs_kernel.h |   10 -------
 fs/ecryptfs/keystore.c        |   43 +++++++++++++++++-----------------
 3 files changed, 29 insertions(+), 39 deletions(-)

--- linux-2.6.23-rc1-mm1/fs/ecryptfs/ecryptfs_kernel.h.old	2007-07-26 13:50:59.000000000 +0200
+++ linux-2.6.23-rc1-mm1/fs/ecryptfs/ecryptfs_kernel.h	2007-07-26 14:09:15.000000000 +0200
@@ -156,7 +156,6 @@
 	} token;
 } __attribute__ ((packed));
 
-int ecryptfs_get_auth_tok_sig(char **sig, struct ecryptfs_auth_tok *auth_tok);
 void ecryptfs_dump_auth_tok(struct ecryptfs_auth_tok *auth_tok);
 extern void ecryptfs_to_hex(char *dst, char *src, size_t src_size);
 extern void ecryptfs_from_hex(char *dst, char *src, int dst_size);
@@ -290,9 +289,6 @@
 	unsigned char cipher_name[ECRYPTFS_MAX_CIPHER_NAME_SIZE + 1];
 };
 
-extern struct list_head key_tfm_list;
-extern struct mutex key_tfm_list_mutex;
-
 /**
  * This struct is to enable a mount-wide passphrase/salt combo. This
  * is more or less a stopgap to provide similar functionality to other
@@ -520,9 +516,6 @@
 void ecryptfs_destruct_mount_crypt_stat(
 	struct ecryptfs_mount_crypt_stat *mount_crypt_stat);
 int ecryptfs_init_crypt_ctx(struct ecryptfs_crypt_stat *crypt_stat);
-int ecryptfs_crypto_api_algify_cipher_name(char **algified_name,
-					   char *cipher_name,
-					   char *chaining_modifier);
 #define ECRYPTFS_LOWER_I_MUTEX_NOT_HELD 0
 #define ECRYPTFS_LOWER_I_MUTEX_HELD 1
 int ecryptfs_write_inode_size_to_metadata(struct file *lower_file,
@@ -563,13 +556,10 @@
 				     struct ecryptfs_crypt_stat *crypt_stat,
 				     struct dentry *ecryptfs_dentry,
 				     size_t *len, size_t max);
-int process_request_key_err(long err_code);
 int
 ecryptfs_parse_packet_set(struct ecryptfs_crypt_stat *crypt_stat,
 			  unsigned char *src, struct dentry *ecryptfs_dentry);
 int ecryptfs_truncate(struct dentry *dentry, loff_t new_length);
-int ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm,
-				char *cipher_name, size_t *key_size);
 int ecryptfs_inode_test(struct inode *inode, void *candidate_lower_inode);
 int ecryptfs_inode_set(struct inode *inode, void *lower_inode);
 void ecryptfs_init_inode(struct inode *inode, struct inode *lower_inode);
--- linux-2.6.23-rc1-mm1/fs/ecryptfs/crypto.c.old	2007-07-26 13:51:13.000000000 +0200
+++ linux-2.6.23-rc1-mm1/fs/ecryptfs/crypto.c	2007-07-26 13:59:12.000000000 +0200
@@ -123,9 +123,9 @@
 	return rc;
 }
 
-int ecryptfs_crypto_api_algify_cipher_name(char **algified_name,
-					   char *cipher_name,
-					   char *chaining_modifier)
+static int ecryptfs_crypto_api_algify_cipher_name(char **algified_name,
+						  char *cipher_name,
+						  char *chaining_modifier)
 {
 	int cipher_name_len = strlen(cipher_name);
 	int chaining_modifier_len = strlen(chaining_modifier);
@@ -1828,9 +1828,8 @@
  * should be released by other functions, such as on a superblock put
  * event, regardless of whether this function succeeds for fails.
  */
-int
-ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm,
-			    char *cipher_name, size_t *key_size)
+static int ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm,
+				       char *cipher_name, size_t *key_size)
 {
 	char dummy_key[ECRYPTFS_MAX_KEY_BYTES];
 	char *full_alg_name;
@@ -1874,8 +1873,8 @@
 }
 
 struct kmem_cache *ecryptfs_key_tfm_cache;
-struct list_head key_tfm_list;
-struct mutex key_tfm_list_mutex;
+static struct list_head key_tfm_list;
+static struct mutex key_tfm_list_mutex;
 
 int ecryptfs_init_crypto(void)
 {
--- linux-2.6.23-rc1-mm1/fs/ecryptfs/keystore.c.old	2007-07-26 14:01:08.000000000 +0200
+++ linux-2.6.23-rc1-mm1/fs/ecryptfs/keystore.c	2007-07-26 14:09:26.000000000 +0200
@@ -39,7 +39,7 @@
  * determine the type of error, make appropriate log entries, and
  * return an error code.
  */
-int process_request_key_err(long err_code)
+static int process_request_key_err(long err_code)
 {
 	int rc = 0;
 
@@ -396,6 +396,27 @@
 	return rc;
 }
 
+static int ecryptfs_get_auth_tok_sig(char **sig,
+				     struct ecryptfs_auth_tok *auth_tok)
+{
+	int rc = 0;
+
+	(*sig) = NULL;
+	switch (auth_tok->token_type) {
+	case ECRYPTFS_PASSWORD:
+		(*sig) = auth_tok->token.password.signature;
+		break;
+	case ECRYPTFS_PRIVATE_KEY:
+		(*sig) = auth_tok->token.private_key.signature;
+		break;
+	default:
+		printk(KERN_ERR "Cannot get sig for auth_tok of type [%d]\n",
+		       auth_tok->token_type);
+		rc = -EINVAL;
+	}
+	return rc;
+}
+
 /**
  * decrypt_pki_encrypted_session_key - Decrypt the session key with
  * the given auth_tok.
@@ -1080,26 +1101,6 @@
 	return rc;
 }
 
-int ecryptfs_get_auth_tok_sig(char **sig, struct ecryptfs_auth_tok *auth_tok)
-{
-	int rc = 0;
-
-	(*sig) = NULL;
-	switch (auth_tok->token_type) {
-	case ECRYPTFS_PASSWORD:
-		(*sig) = auth_tok->token.password.signature;
-		break;
-	case ECRYPTFS_PRIVATE_KEY:
-		(*sig) = auth_tok->token.private_key.signature;
-		break;
-	default:
-		printk(KERN_ERR "Cannot get sig for auth_tok of type [%d]\n",
-		       auth_tok->token_type);
-		rc = -EINVAL;
-	}
-	return rc;
-}
-
 /**
  * ecryptfs_parse_packet_set
  * @dest: The header page in memory


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

* [-mm patch] make struct sdio_dev_attrs[] static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (23 preceding siblings ...)
  2007-07-29 14:57 ` [-mm patch] fs/ecryptfs/: make code static Adrian Bunk
@ 2007-07-29 14:58 ` Adrian Bunk
  2007-07-29 19:29   ` Pierre Ossman
  2007-07-29 14:58 ` [-mm patch] MTD onenand_sim.c: make struct info static Adrian Bunk
                   ` (8 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:58 UTC (permalink / raw)
  To: Andrew Morton, Nicolas Pitre, Pierre Ossman; +Cc: linux-kernel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
>  git-mmc.patch
>...
>  git trees
>...

sdio_dev_attrs[] can become static.

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

---
--- linux-2.6.23-rc1-mm1/drivers/mmc/core/sdio_bus.c.old	2007-07-26 16:09:20.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/mmc/core/sdio_bus.c	2007-07-26 16:09:30.000000000 +0200
@@ -45,7 +45,7 @@
 			func->class, func->vendor, func->device);
 }
 
-struct device_attribute sdio_dev_attrs[] = {
+static struct device_attribute sdio_dev_attrs[] = {
 	__ATTR_RO(class),
 	__ATTR_RO(vendor),
 	__ATTR_RO(device),


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

* [-mm patch] MTD onenand_sim.c: make struct info static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (24 preceding siblings ...)
  2007-07-29 14:58 ` [-mm patch] make struct sdio_dev_attrs[] static Adrian Bunk
@ 2007-07-29 14:58 ` Adrian Bunk
  2007-07-29 14:58 ` [-mm patch] make scsi_host_link_pm_policy() static Adrian Bunk
                   ` (7 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:58 UTC (permalink / raw)
  To: Andrew Morton, Kyungmin Park, dwmw2; +Cc: linux-kernel, linux-mtd

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
>  git-mtd.patch
>...
>  git trees
>...

This patch makes the needlessly global struct info static.

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

---
--- linux-2.6.23-rc1-mm1/drivers/mtd/onenand/onenand_sim.c.old	2007-07-26 16:11:57.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/mtd/onenand/onenand_sim.c	2007-07-26 16:12:19.000000000 +0200
@@ -78,7 +78,7 @@
 	struct onenand_flash	flash;
 };
 
-struct onenand_info *info;
+static struct onenand_info *info;
 
 #define DPRINTK(format, args...)					\
 do {									\


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

* [-mm patch] make scsi_host_link_pm_policy() static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (25 preceding siblings ...)
  2007-07-29 14:58 ` [-mm patch] MTD onenand_sim.c: make struct info static Adrian Bunk
@ 2007-07-29 14:58 ` Adrian Bunk
  2007-07-29 14:58 ` [-mm patch] USB: make dev_attr_authorized_default static Adrian Bunk
                   ` (6 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:58 UTC (permalink / raw)
  To: Andrew Morton, Kristen Carlson Accardi, James Bottomley, Jeff Garzik
  Cc: linux-kernel, linux-ide, linux-scsi

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +ata-ahci-alpm-expose-power-management-policy-option-to-users.patch
>...
>  ata things
>...

scsi_host_link_pm_policy() can become static.

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

---
--- linux-2.6.23-rc1-mm1/drivers/scsi/scsi_sysfs.c.old	2007-07-26 21:31:24.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/scsi/scsi_sysfs.c	2007-07-26 21:31:57.000000000 +0200
@@ -200,7 +200,7 @@
 	{ SHOST_MEDIUM_POWER, "medium_power" },
 };
 
-const char *scsi_host_link_pm_policy(enum scsi_host_link_pm policy)
+static const char *scsi_host_link_pm_policy(enum scsi_host_link_pm policy)
 {
 	int i;
 	char *name = NULL;


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

* [-mm patch] USB: make dev_attr_authorized_default static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (26 preceding siblings ...)
  2007-07-29 14:58 ` [-mm patch] make scsi_host_link_pm_policy() static Adrian Bunk
@ 2007-07-29 14:58 ` Adrian Bunk
  2007-07-31 19:13   ` Inaky Perez-Gonzalez
  2007-07-29 14:59 ` [-mm patch] kernel/printk.c: make 2 variables static Adrian Bunk
                   ` (5 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:58 UTC (permalink / raw)
  To: Andrew Morton, Inaky Perez-Gonzalez, Greg Kroah-Hartman
  Cc: linux-kernel, linux-usb-devel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +gregkh-usb-usb-add-the-concept-of-default-authorization-to-usb-hosts.patch
>...
>  USB tree updates
>...

dev_attr_authorized_default can become static.

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

---
--- linux-2.6.23-rc1-mm1/drivers/usb/core/hcd.c.old	2007-07-26 21:50:30.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/usb/core/hcd.c	2007-07-26 21:50:45.000000000 +0200
@@ -717,9 +717,9 @@
 	return result;
 }
 
-DEVICE_ATTR(authorized_default, 0644,
-	    usb_host_authorized_default_show,
-	    usb_host_authorized_default_store);
+static DEVICE_ATTR(authorized_default, 0644,
+		   usb_host_authorized_default_show,
+		   usb_host_authorized_default_store);
 
 
 /* Group all the USB bus attributes */


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

* [-mm patch] kernel/printk.c: make 2 variables static
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (27 preceding siblings ...)
  2007-07-29 14:58 ` [-mm patch] USB: make dev_attr_authorized_default static Adrian Bunk
@ 2007-07-29 14:59 ` Adrian Bunk
  2007-07-29 16:51   ` Randy Dunlap
  2007-07-29 14:59 ` [-mm patch] export v4l2_int_device_{,un}register Adrian Bunk
                   ` (4 subsequent siblings)
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:59 UTC (permalink / raw)
  To: Andrew Morton, Randy Dunlap; +Cc: linux-kernel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +slow-down-printk-during-boot.patch
>...
>  Misc
>...

This patch makes two needlessly global variables static.

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

---
--- linux-2.6.23-rc1-mm1/kernel/printk.c.old	2007-07-26 22:40:09.000000000 +0200
+++ linux-2.6.23-rc1-mm1/kernel/printk.c	2007-07-26 22:40:50.000000000 +0200
@@ -166,8 +166,8 @@
 
 #ifdef CONFIG_BOOT_PRINTK_DELAY
 
-unsigned int boot_delay; /* msecs delay after each printk during bootup */
-unsigned long long printk_delay_msec; /* per msec, based on boot_delay */
+static unsigned int boot_delay; /* msecs delay after each printk during bootup */
+static unsigned long long printk_delay_msec; /* per msec, based on boot_delay */
 
 static int __init boot_delay_setup(char *str)
 {


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

* [-mm patch] export v4l2_int_device_{,un}register
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (28 preceding siblings ...)
  2007-07-29 14:59 ` [-mm patch] kernel/printk.c: make 2 variables static Adrian Bunk
@ 2007-07-29 14:59 ` Adrian Bunk
  2007-07-29 14:59 ` [-mm patch] kernel/pid.c: remove unused exports Adrian Bunk
                   ` (3 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:59 UTC (permalink / raw)
  To: Andrew Morton, v4l-dvb-maintainer; +Cc: linux-kernel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
>  git-dvb.patch
>...
>  git trees
>...

This patch fixes the following build error:

<--  snip  -->

...
  MODPOST 2135 modules
ERROR: "v4l2_int_device_register" [drivers/media/video/tcm825x.ko] undefined!
ERROR: "v4l2_int_device_unregister" [drivers/media/video/tcm825x.ko] undefined!
make[2]: *** [__modpost] Error 1

<--  snip  -->

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

---

 drivers/media/video/v4l2-int-device.c |    2 ++
 1 file changed, 2 insertions(+)

--- linux-2.6.23-rc1-mm1/drivers/media/video/v4l2-int-device.c.old	2007-07-27 14:03:33.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/media/video/v4l2-int-device.c	2007-07-27 14:04:03.000000000 +0200
@@ -101,6 +101,7 @@
 
 	return 0;
 }
+EXPORT_SYMBOL_GPL(v4l2_int_device_register);
 
 void v4l2_int_device_unregister(struct v4l2_int_device *d)
 {
@@ -114,6 +115,7 @@
 	}
 	mutex_unlock(&mutex);
 }
+EXPORT_SYMBOL_GPL(v4l2_int_device_unregister);
 
 /* Adapted from search_extable in extable.c. */
 static v4l2_int_ioctl_func *find_ioctl(struct v4l2_int_slave *slave, int cmd,


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

* [-mm patch] kernel/pid.c: remove unused exports
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (29 preceding siblings ...)
  2007-07-29 14:59 ` [-mm patch] export v4l2_int_device_{,un}register Adrian Bunk
@ 2007-07-29 14:59 ` Adrian Bunk
  2007-07-29 15:00 ` [-mm patch] security/ cleanups Adrian Bunk
                   ` (2 subsequent siblings)
  33 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 14:59 UTC (permalink / raw)
  To: Andrew Morton, Serge E. Hallyn; +Cc: linux-kernel

On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.22-rc6-mm1:
>...
> +pid-namespaces-define-is_global_init-and-is_container_init.patch
>...
>  pid namespaces
>...

This patch removes two unused exports.

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

---

 kernel/pid.c |    2 --
 1 file changed, 2 deletions(-)

--- linux-2.6.23-rc1-mm1/kernel/pid.c.old	2007-07-28 07:31:12.000000000 +0200
+++ linux-2.6.23-rc1-mm1/kernel/pid.c	2007-07-28 07:31:23.000000000 +0200
@@ -69,13 +69,11 @@ struct pid_namespace init_pid_ns = {
 	.last_pid = 0,
 	.child_reaper = &init_task
 };
-EXPORT_SYMBOL(init_pid_ns);
 
 int is_global_init(struct task_struct *tsk)
 {
 	return tsk == init_pid_ns.child_reaper;
 }
-EXPORT_SYMBOL(is_global_init);
 
 /*
  * Note: disable interrupts while the pidmap_lock is held as an


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

* [-mm patch] security/ cleanups
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (30 preceding siblings ...)
  2007-07-29 14:59 ` [-mm patch] kernel/pid.c: remove unused exports Adrian Bunk
@ 2007-07-29 15:00 ` Adrian Bunk
  2007-07-30 11:47   ` James Morris
  2007-07-29 15:49 ` 2.6.23-rc1-mm1 Grant Wilson
  2007-08-01 15:24 ` 2.6.23-rc1-mm1 - loopback mount of files fails loop-use-unlocked_ioctl.patch Valdis.Kletnieks
  33 siblings, 1 reply; 132+ messages in thread
From: Adrian Bunk @ 2007-07-29 15:00 UTC (permalink / raw)
  To: Andrew Morton, James Morris, Chris Wright, Stephen Smalley, greg
  Cc: linux-kernel

This patch contains the following cleanups that are now possible:
- remove the unused security_operations->inode_xattr_getsuffix
- remove the no longer used security_operations->unregister_security
- remove some no longer required exit code
- remove a bunch of no longer used exports

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

---

 drivers/usb/core/usb.c   |    1 
 fs/exec.c                |    2 -
 include/linux/security.h |   15 ----------
 kernel/capability.c      |    4 --
 mm/mmap.c                |    2 -
 mm/nommu.c               |    1 
 security/commoncap.c     |   21 --------------
 security/dummy.c         |   12 --------
 security/inode.c         |    8 -----
 security/security.c      |   58 ---------------------------------------
 security/selinux/hooks.c |   20 -------------
 11 files changed, 1 insertion(+), 143 deletions(-)

--- linux-2.6.23-rc1-mm1/include/linux/security.h.old	2007-07-26 03:03:21.000000000 +0200
+++ linux-2.6.23-rc1-mm1/include/linux/security.h	2007-07-26 03:08:11.000000000 +0200
@@ -1136,10 +1136,6 @@ struct request_sock;
  * 	allow module stacking.
  * 	@name contains the name of the security module being stacked.
  * 	@ops contains a pointer to the struct security_operations of the module to stack.
- * @unregister_security:
- *	remove a stacked module.
- *	@name contains the name of the security module being unstacked.
- *	@ops contains a pointer to the struct security_operations of the module to unstack.
  * 
  * @secid_to_secctx:
  *	Convert secid to security context.
@@ -1235,7 +1231,6 @@ struct security_operations {
 	int (*inode_getxattr) (struct dentry *dentry, char *name);
 	int (*inode_listxattr) (struct dentry *dentry);
 	int (*inode_removexattr) (struct dentry *dentry, char *name);
-	const char *(*inode_xattr_getsuffix) (void);
   	int (*inode_getsecurity)(const struct inode *inode, const char *name, void *buffer, size_t size, int err);
   	int (*inode_setsecurity)(struct inode *inode, const char *name, const void *value, size_t size, int flags);
   	int (*inode_listsecurity)(struct inode *inode, char *buffer, size_t buffer_size);
@@ -1325,8 +1320,6 @@ struct security_operations {
 	/* allow module stacking */
 	int (*register_security) (const char *name,
 	                          struct security_operations *ops);
-	int (*unregister_security) (const char *name,
-	                            struct security_operations *ops);
 
 	void (*d_instantiate) (struct dentry *dentry, struct inode *inode);
 
@@ -1407,9 +1400,7 @@ struct security_operations {
 /* prototypes */
 extern int security_init	(void);
 extern int register_security	(struct security_operations *ops);
-extern int unregister_security	(struct security_operations *ops);
 extern int mod_reg_security	(const char *name, struct security_operations *ops);
-extern int mod_unreg_security	(const char *name, struct security_operations *ops);
 extern struct dentry *securityfs_create_file(const char *name, mode_t mode,
 					     struct dentry *parent, void *data,
 					     const struct file_operations *fops);
@@ -1490,7 +1481,6 @@ void security_inode_post_setxattr(struct
 int security_inode_getxattr(struct dentry *dentry, char *name);
 int security_inode_listxattr(struct dentry *dentry);
 int security_inode_removexattr(struct dentry *dentry, char *name);
-const char *security_inode_xattr_getsuffix(void);
 int security_inode_getsecurity(const struct inode *inode, const char *name, void *buffer, size_t size, int err);
 int security_inode_setsecurity(struct inode *inode, const char *name, const void *value, size_t size, int flags);
 int security_inode_listsecurity(struct inode *inode, char *buffer, size_t buffer_size);
@@ -1879,11 +1869,6 @@ static inline int security_inode_removex
 	return cap_inode_removexattr(dentry, name);
 }
 
-static inline const char *security_inode_xattr_getsuffix (void)
-{
-	return NULL ;
-}
-
 static inline int security_inode_getsecurity(const struct inode *inode, const char *name, void *buffer, size_t size, int err)
 {
 	return -EOPNOTSUPP;
--- linux-2.6.23-rc1-mm1/security/security.c.old	2007-07-26 03:03:33.000000000 +0200
+++ linux-2.6.23-rc1-mm1/security/security.c	2007-07-27 22:24:41.000000000 +0200
@@ -71,8 +71,7 @@ int __init security_init(void)
  *
  * This function is to allow a security module to register itself with the
  * kernel security subsystem.  Some rudimentary checking is done on the @ops
- * value passed to this function.  A call to unregister_security() should be
- * done to remove this security_options structure from the kernel.
+ * value passed to this function.
  *
  * If there is already a security module registered with the kernel,
  * an error will be returned.  Otherwise 0 is returned on success.
@@ -94,31 +93,6 @@ int register_security(struct security_op
 }
 
 /**
- * unregister_security - unregisters a security framework with the kernel
- * @ops: a pointer to the struct security_options that is to be registered
- *
- * This function removes a struct security_operations variable that had
- * previously been registered with a successful call to register_security().
- *
- * If @ops does not match the valued previously passed to register_security()
- * an error is returned.  Otherwise the default security options is set to the
- * the dummy_security_ops structure, and 0 is returned.
- */
-int unregister_security(struct security_operations *ops)
-{
-	if (ops != security_ops) {
-		printk(KERN_INFO "%s: trying to unregister "
-		       "a security_opts structure that is not "
-		       "registered, failing.\n", __FUNCTION__);
-		return -EINVAL;
-	}
-
-	security_ops = &dummy_security_ops;
-
-	return 0;
-}
-
-/**
  * mod_reg_security - allows security modules to be "stacked"
  * @name: a pointer to a string with the name of the security_options to be registered
  * @ops: a pointer to the struct security_options that is to be registered
@@ -147,30 +121,6 @@ int mod_reg_security(const char *name, s
 	return security_ops->register_security(name, ops);
 }
 
-/**
- * mod_unreg_security - allows a security module registered with mod_reg_security() to be unloaded
- * @name: a pointer to a string with the name of the security_options to be removed
- * @ops: a pointer to the struct security_options that is to be removed
- *
- * This function allows security modules that have been successfully registered
- * with a call to mod_reg_security() to be unloaded from the system.
- * This calls the currently loaded security module's unregister_security() call
- * with the @name and @ops variables.
- *
- * The return value depends on the currently loaded security module, with 0 as
- * success.
- */
-int mod_unreg_security(const char *name, struct security_operations *ops)
-{
-	if (ops == security_ops) {
-		printk(KERN_INFO "%s invalid attempt to unregister "
-		       " primary security ops.\n", __FUNCTION__);
-		return -EINVAL;
-	}
-
-	return security_ops->unregister_security(name, ops);
-}
-
 /* Security operations */
 
 int security_ptrace(struct task_struct *parent, struct task_struct *child)
@@ -515,11 +465,6 @@ int security_inode_removexattr(struct de
 	return security_ops->inode_removexattr(dentry, name);
 }
 
-const char *security_inode_xattr_getsuffix(void)
-{
-	return security_ops->inode_xattr_getsuffix();
-}
-
 int security_inode_getsecurity(const struct inode *inode, const char *name, void *buffer, size_t size, int err)
 {
 	if (unlikely(IS_PRIVATE(inode)))
@@ -841,7 +786,6 @@ int security_netlink_send(struct sock *s
 {
 	return security_ops->netlink_send(sk, skb);
 }
-EXPORT_SYMBOL(security_netlink_send);
 
 int security_netlink_recv(struct sk_buff *skb, int cap)
 {
--- linux-2.6.23-rc1-mm1/security/selinux/hooks.c.old	2007-07-26 03:05:47.000000000 +0200
+++ linux-2.6.23-rc1-mm1/security/selinux/hooks.c	2007-07-26 04:31:00.000000000 +0200
@@ -2402,11 +2402,6 @@ static int selinux_inode_removexattr (st
 	return -EACCES;
 }
 
-static const char *selinux_inode_xattr_getsuffix(void)
-{
-      return XATTR_SELINUX_SUFFIX;
-}
-
 /*
  * Copy the in-core inode security context value to the user.  If the
  * getxattr() prior to this succeeded, check to see if we need to
@@ -4486,19 +4481,6 @@ static int selinux_register_security (co
 	return 0;
 }
 
-static int selinux_unregister_security (const char *name, struct security_operations *ops)
-{
-	if (ops != secondary_ops) {
-		printk(KERN_ERR "%s:  trying to unregister a security module "
-		        "that is not registered.\n", __FUNCTION__);
-		return -EINVAL;
-	}
-
-	secondary_ops = original_ops;
-
-	return 0;
-}
-
 static void selinux_d_instantiate (struct dentry *dentry, struct inode *inode)
 {
 	if (inode)
@@ -4777,7 +4759,6 @@ static struct security_operations selinu
 	.inode_getxattr =		selinux_inode_getxattr,
 	.inode_listxattr =		selinux_inode_listxattr,
 	.inode_removexattr =		selinux_inode_removexattr,
-	.inode_xattr_getsuffix =        selinux_inode_xattr_getsuffix,
 	.inode_getsecurity =            selinux_inode_getsecurity,
 	.inode_setsecurity =            selinux_inode_setsecurity,
 	.inode_listsecurity =           selinux_inode_listsecurity,
@@ -4843,7 +4824,6 @@ static struct security_operations selinu
 	.sem_semop =			selinux_sem_semop,
 
 	.register_security =		selinux_register_security,
-	.unregister_security =		selinux_unregister_security,
 
 	.d_instantiate =                selinux_d_instantiate,
 
--- linux-2.6.23-rc1-mm1/security/dummy.c.old	2007-07-26 03:07:10.000000000 +0200
+++ linux-2.6.23-rc1-mm1/security/dummy.c	2007-07-26 03:08:21.000000000 +0200
@@ -391,11 +391,6 @@ static int dummy_inode_listsecurity(stru
 	return 0;
 }
 
-static const char *dummy_inode_xattr_getsuffix(void)
-{
-	return NULL;
-}
-
 static int dummy_file_permission (struct file *file, int mask)
 {
 	return 0;
@@ -900,11 +895,6 @@ static int dummy_register_security (cons
 	return -EINVAL;
 }
 
-static int dummy_unregister_security (const char *name, struct security_operations *ops)
-{
-	return -EINVAL;
-}
-
 static void dummy_d_instantiate (struct dentry *dentry, struct inode *inode)
 {
 	return;
@@ -1017,7 +1007,6 @@ void security_fixup_ops (struct security
 	set_to_dummy_if_null(ops, inode_getxattr);
 	set_to_dummy_if_null(ops, inode_listxattr);
 	set_to_dummy_if_null(ops, inode_removexattr);
-	set_to_dummy_if_null(ops, inode_xattr_getsuffix);
 	set_to_dummy_if_null(ops, inode_getsecurity);
 	set_to_dummy_if_null(ops, inode_setsecurity);
 	set_to_dummy_if_null(ops, inode_listsecurity);
@@ -1077,7 +1066,6 @@ void security_fixup_ops (struct security
 	set_to_dummy_if_null(ops, netlink_send);
 	set_to_dummy_if_null(ops, netlink_recv);
 	set_to_dummy_if_null(ops, register_security);
-	set_to_dummy_if_null(ops, unregister_security);
 	set_to_dummy_if_null(ops, d_instantiate);
  	set_to_dummy_if_null(ops, getprocattr);
  	set_to_dummy_if_null(ops, setprocattr);
--- linux-2.6.23-rc1-mm1/security/inode.c.old	2007-07-26 03:12:26.000000000 +0200
+++ linux-2.6.23-rc1-mm1/security/inode.c	2007-07-26 03:14:11.000000000 +0200
@@ -332,14 +332,6 @@ static int __init securityfs_init(void)
 	return retval;
 }
 
-static void __exit securityfs_exit(void)
-{
-	simple_release_fs(&mount, &mount_count);
-	unregister_filesystem(&fs_type);
-	subsystem_unregister(&security_subsys);
-}
-
 core_initcall(securityfs_init);
-module_exit(securityfs_exit);
 MODULE_LICENSE("GPL");
 
--- linux-2.6.23-rc1-mm1/mm/mmap.c.old	2007-07-26 03:30:41.000000000 +0200
+++ linux-2.6.23-rc1-mm1/mm/mmap.c	2007-07-26 03:30:51.000000000 +0200
@@ -180,8 +180,6 @@ error:
 	return -ENOMEM;
 }
 
-EXPORT_SYMBOL(__vm_enough_memory);
-
 /*
  * Requires inode->i_mapping->i_mmap_lock
  */
--- linux-2.6.23-rc1-mm1/mm/nommu.c.old	2007-07-26 03:31:02.000000000 +0200
+++ linux-2.6.23-rc1-mm1/mm/nommu.c	2007-07-26 03:31:05.000000000 +0200
@@ -44,7 +44,6 @@ int sysctl_max_map_count = DEFAULT_MAX_M
 int heap_stack_gap = 0;
 
 EXPORT_SYMBOL(mem_map);
-EXPORT_SYMBOL(__vm_enough_memory);
 EXPORT_SYMBOL(num_physpages);
 
 /* list of shareable VMAs */
--- linux-2.6.23-rc1-mm1/kernel/capability.c.old	2007-07-26 03:32:34.000000000 +0200
+++ linux-2.6.23-rc1-mm1/kernel/capability.c	2007-07-26 03:34:42.000000000 +0200
@@ -18,9 +18,6 @@
 unsigned securebits = SECUREBITS_DEFAULT; /* systemwide security settings */
 kernel_cap_t cap_bset = CAP_INIT_EFF_SET;
 
-EXPORT_SYMBOL(securebits);
-EXPORT_SYMBOL(cap_bset);
-
 /*
  * This lock protects task->cap_* for all tasks including current.
  * Locking rule: acquire this prior to tasklist_lock.
@@ -245,7 +242,6 @@ int __capable(struct task_struct *t, int
 	}
 	return 0;
 }
-EXPORT_SYMBOL(__capable);
 
 int capable(int cap)
 {
--- linux-2.6.23-rc1-mm1/fs/exec.c.old	2007-07-26 03:33:12.000000000 +0200
+++ linux-2.6.23-rc1-mm1/fs/exec.c	2007-07-26 03:33:52.000000000 +0200
@@ -64,7 +64,6 @@ int core_uses_pid;
 char core_pattern[CORENAME_MAX_SIZE] = "core";
 int suid_dumpable = 0;
 
-EXPORT_SYMBOL(suid_dumpable);
 /* The maximal length of core_pattern is also specified in sysctl.c */
 
 static LIST_HEAD(formats);
@@ -1682,7 +1681,6 @@ void set_dumpable(struct mm_struct *mm, 
 		break;
 	}
 }
-EXPORT_SYMBOL_GPL(set_dumpable);
 
 int get_dumpable(struct mm_struct *mm)
 {
--- linux-2.6.23-rc1-mm1/security/commoncap.c.old	2007-07-26 03:44:04.000000000 +0200
+++ linux-2.6.23-rc1-mm1/security/commoncap.c	2007-07-26 04:24:01.000000000 +0200
@@ -31,8 +31,6 @@ int cap_netlink_send(struct sock *sk, st
 	return 0;
 }
 
-EXPORT_SYMBOL(cap_netlink_send);
-
 int cap_netlink_recv(struct sk_buff *skb, int cap)
 {
 	if (!cap_raised(NETLINK_CB(skb).eff_cap, cap))
@@ -498,22 +496,3 @@ int cap_vm_enough_memory(long pages)
 	return __vm_enough_memory(pages, cap_sys_admin);
 }
 
-EXPORT_SYMBOL(cap_capable);
-EXPORT_SYMBOL(cap_settime);
-EXPORT_SYMBOL(cap_ptrace);
-EXPORT_SYMBOL(cap_capget);
-EXPORT_SYMBOL(cap_capset_check);
-EXPORT_SYMBOL(cap_capset_set);
-EXPORT_SYMBOL(cap_bprm_set_security);
-EXPORT_SYMBOL(cap_bprm_apply_creds);
-EXPORT_SYMBOL(cap_bprm_secureexec);
-EXPORT_SYMBOL(cap_inode_setxattr);
-EXPORT_SYMBOL(cap_inode_removexattr);
-EXPORT_SYMBOL(cap_task_post_setuid);
-EXPORT_SYMBOL(cap_task_kill);
-EXPORT_SYMBOL(cap_task_setscheduler);
-EXPORT_SYMBOL(cap_task_setioprio);
-EXPORT_SYMBOL(cap_task_setnice);
-EXPORT_SYMBOL(cap_task_reparent_to_init);
-EXPORT_SYMBOL(cap_syslog);
-EXPORT_SYMBOL(cap_vm_enough_memory);
--- linux-2.6.23-rc1-mm1/drivers/usb/core/usb.c.old	2007-07-26 03:50:10.000000000 +0200
+++ linux-2.6.23-rc1-mm1/drivers/usb/core/usb.c	2007-07-26 03:50:19.000000000 +0200
@@ -981,7 +981,6 @@ EXPORT_SYMBOL(usb_altnum_to_altsetting);
 
 EXPORT_SYMBOL(__usb_get_extra_descriptor);
 
-EXPORT_SYMBOL(usb_find_device);
 EXPORT_SYMBOL(usb_get_current_frame_number);
 
 EXPORT_SYMBOL(usb_buffer_alloc);


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

* Re: 2.6.23-rc1-mm1
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (31 preceding siblings ...)
  2007-07-29 15:00 ` [-mm patch] security/ cleanups Adrian Bunk
@ 2007-07-29 15:49 ` Grant Wilson
  2007-07-30  9:58   ` 2.6.23-rc1-mm1 Dave Young
  2007-08-01 15:24 ` 2.6.23-rc1-mm1 - loopback mount of files fails loop-use-unlocked_ioctl.patch Valdis.Kletnieks
  33 siblings, 1 reply; 132+ messages in thread
From: Grant Wilson @ 2007-07-29 15:49 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

On Wed, 25 Jul 2007 04:03:04 -0700
Andrew Morton <akpm@linux-foundation.org> wrote:

> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/
> 

Hi,
I get an oops when trying to mount an ISO file using the loopback device.  
If I revert the patch 'loop-use-unlocked_ioctl.patch' the mount works.

Here's the oops:

[   85.697033] Unable to handle kernel NULL pointer dereference at 0000000000000100 RIP: 
[   85.702528]  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
[   85.710066] PGD 73fd067 PUD 735b067 PMD 0 
[   85.714221] Oops: 0000 [1] PREEMPT SMP 
[   85.718117] CPU 1 
[   85.720159] Modules linked in:
[   85.723242] Pid: 3976, comm: mount Not tainted 2.6.23-rc1-mm1 #4
[   85.729247] RIP: 0010:[<ffffffff80477885>]  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
[   85.737011] RSP: 0018:ffff8100076a3708  EFLAGS: 00010282
[   85.742326] RAX: ffffffff80477860 RBX: 00000000fffffdfd RCX: 0000000000005310
[   85.749459] RDX: ffff8100076a3b58 RSI: 0000000000005310 RDI: 0000000000000000
[   85.756591] RBP: ffff8100076a3908 R08: ffff8100076a3b58 R09: ffff81000649da80
[   85.763723] R10: 0000000000000000 R11: 2222222222222222 R12: 0000000000005310
[   85.770856] R13: ffff8100076a3b58 R14: 0000000000005310 R15: 0000000000000000
[   85.777988] FS:  00002b4fab3a0e20(0000) GS:ffff810004017180(0000) knlGS:0000000000000000
[   85.786081] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[   85.791829] CR2: 0000000000000100 CR3: 00000000073d7000 CR4: 00000000000006e0
[   85.798970] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[   85.806102] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[   85.813235] Process mount (pid: 3976, threadinfo ffff8100076a2000, task ffff8100062f66d0)
[   85.821413] Stack:  0000000200000001 ffff8100062f6e90 ffff8100062f6e90 000000000013638a
[   85.829533]  ffffffff80a78ef0 0000000000000000 ffff8100076a37b8 ffffffff8025c690
[   85.837020]  ffff8100062f66d0 ffff8100062f6e58 0000000200000001 0000000000000000
[   85.844308] Call Trace:
[   85.846961]  [<ffffffff8025c690>] __lock_acquire+0x3d0/0x1170
[   85.852715]  [<ffffffff8025baee>] mark_held_locks+0x3e/0x80
[   85.858290]  [<ffffffff8064ff0a>] __mutex_lock_slowpath+0x1ca/0x330
[   85.864565]  [<ffffffff8025baee>] mark_held_locks+0x3e/0x80
[   85.870139]  [<ffffffff8064fd39>] mutex_unlock+0x9/0x10
[   85.875366]  [<ffffffff8064fc69>] __mutex_unlock_slowpath+0xd9/0x1a0
[   85.881720]  [<ffffffff8025bcca>] trace_hardirqs_on+0xda/0x180
[   85.887555]  [<ffffffff8064fd39>] mutex_unlock+0x9/0x10
[   85.892782]  [<ffffffff802c3ba1>] do_open+0x231/0x320
[   85.897839]  [<ffffffff803b7113>] blkdev_driver_ioctl+0x43/0x90
[   85.903758]  [<ffffffff803b7429>] blkdev_ioctl+0x2c9/0x780
[   85.909247]  [<ffffffff8065149d>] trace_hardirqs_on_thunk+0x35/0x37
[   85.915522]  [<ffffffff8020c320>] restore_args+0x0/0x30
[   85.920751]  [<ffffffff802c2d60>] kill_bdev+0x0/0x40
[   85.925718]  [<ffffffff802c4084>] ioctl_by_bdev+0x34/0x50
[   85.931119]  [<ffffffff80336019>] isofs_fill_super+0x969/0xaf0
[   85.936954]  [<ffffffff80299b9c>] sget+0x3c/0x3f0
[   85.941662]  [<ffffffff80299760>] test_bdev_super+0x0/0x20
[   85.947150]  [<ffffffff80651fc0>] _spin_unlock+0x30/0x60
[   85.952464]  [<ffffffff80299760>] test_bdev_super+0x0/0x20
[   85.957951]  [<ffffffff80299f4a>] sget+0x3ea/0x3f0
[   85.962747]  [<ffffffff803c662f>] strlcpy+0x4f/0x70
[   85.967628]  [<ffffffff8029aa9c>] get_sb_bdev+0x15c/0x190
[   85.973029]  [<ffffffff803356b0>] isofs_fill_super+0x0/0xaf0
[   85.978693]  [<ffffffff80334fb3>] isofs_get_sb+0x13/0x20
[   85.984006]  [<ffffffff8029a4c8>] vfs_kern_mount+0x58/0xc0
[   85.989494]  [<ffffffff802b2366>] do_mount+0x206/0x850
[   85.994635]  [<ffffffff8027b891>] __mod_zone_page_state+0x21/0x90
[   86.000729]  [<ffffffff80273160>] rmqueue_bulk+0x90/0xb0
[   86.006043]  [<ffffffff80651fc0>] _spin_unlock+0x30/0x60
[   86.011358]  [<ffffffff80273160>] rmqueue_bulk+0x90/0xb0
[   86.016673]  [<ffffffff80274425>] get_page_from_freelist+0x395/0x500
[   86.023026]  [<ffffffff8025bcca>] trace_hardirqs_on+0xda/0x180
[   86.028860]  [<ffffffff802742b3>] get_page_from_freelist+0x223/0x500
[   86.035213]  [<ffffffff80274639>] __alloc_pages+0x59/0x3a0
[   86.040702]  [<ffffffff80246d68>] sigprocmask+0x38/0xf0
[   86.045929]  [<ffffffff802940e8>] kmem_cache_alloc+0x98/0xd0
[   86.051590]  [<ffffffff80274a00>] __get_free_pages+0x80/0x90
[   86.057251]  [<ffffffff802b2a44>] sys_mount+0x94/0xf0
[   86.062305]  [<ffffffff8065149d>] trace_hardirqs_on_thunk+0x35/0x37
[   86.068572]  [<ffffffff8020bd7e>] system_call+0x7e/0x83
[   86.073799] 
[   86.075296] INFO: lockdep is turned off.
[   86.079226] 
[   86.079227] Code: 48 8b 87 00 01 00 00 49 89 d6 48 8b 18 48 8b 83 10 03 00 00 
[   86.088306] RIP  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
[   86.093734]  RSP <ffff8100076a3708>
[   86.097231] CR2: 0000000000000100

Cheers,
Grant

P.S. Here is my .config file:
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.23-rc1-mm1
# Thu Jul 26 20:18:53 2007
#
CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CMOS_UPDATE=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_QUICKLIST=y
CONFIG_NR_QUICK=2
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"

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SWAP_PREFETCH=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
# CONFIG_TASKSTATS is not set
# CONFIG_USER_NS is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=17
# CONFIG_CONTAINERS is not set
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_CONTAINER_NS is not set
# CONFIG_RELAY is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
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 is not set
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_SLUB_DEBUG=y
# CONFIG_SLAB is not set
CONFIG_SLUB=y
# CONFIG_SLOB is not set
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_PROC_KPAGEMAP=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_BLK_DEV_BSG=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_TICK_ONESHOT is not set
CONFIG_X86_PC=y
# CONFIG_X86_VSMP is not set
CONFIG_MK8=y
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_L1_CACHE_BYTES=64
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_INTERNODE_CACHE_BYTES=64
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
# CONFIG_MICROCODE is not set
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_MTRR=y
CONFIG_SMP=y
# CONFIG_SCHED_SMT is not set
CONFIG_SCHED_MC=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
# CONFIG_NUMA is not set
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_NR_CPUS=8
CONFIG_PHYSICAL_ALIGN=0x200000
CONFIG_HOTPLUG_CPU=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_HPET_TIMER=y
CONFIG_IOMMU=y
# CONFIG_CALGARY_IOMMU is not set
CONFIG_SWIOTLB=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_INTEL=y
CONFIG_X86_MCE_AMD=y
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_START=0x200000
# CONFIG_SECCOMP is not set
# CONFIG_CC_STACKPROTECTOR is not set
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_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 is not set
# CONFIG_PM_DEBUG is not set
# CONFIG_SOFTWARE_SUSPEND is not set
CONFIG_SUSPEND_SMP=y
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
# CONFIG_ACPI_SLEEP_PROC_SLEEP is not set
# CONFIG_ACPI_PROCFS is not set
# CONFIG_ACPI_AC is not set
# CONFIG_ACPI_BATTERY is not set
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
# CONFIG_ACPI_DOCK is not set
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_TOSHIBA is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
CONFIG_ACPI_DEBUG=y
# CONFIG_ACPI_DEBUG_FUNC_TRACE 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 is not set

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_DEBUG is not set
CONFIG_CPU_FREQ_STAT=y
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 is not set
CONFIG_CPU_FREQ_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set

#
# CPUFreq processor drivers
#
CONFIG_X86_POWERNOW_K8=y
CONFIG_X86_POWERNOW_K8_ACPI=y
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
# CONFIG_X86_ACPI_CPUFREQ is not set

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

#
# CPU idle PM support
#
# CONFIG_CPU_IDLE is not set

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
# CONFIG_DMAR is not set
# CONFIG_PCIEPORTBUS is not set
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
CONFIG_HT_IRQ=y
# CONFIG_PCCARD is not set
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_IA32_EMULATION=y
CONFIG_IA32_AOUT=y
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=y
# 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_VERBOSE=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
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=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_XFRM_TUNNEL=y
CONFIG_INET_TUNNEL=y
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=y
CONFIG_TCP_CONG_BIC=y
CONFIG_TCP_CONG_CUBIC=y
CONFIG_TCP_CONG_WESTWOOD=y
CONFIG_TCP_CONG_HTCP=y
# CONFIG_TCP_CONG_HSTCP is not set
# CONFIG_TCP_CONG_HYBLA is not set
# CONFIG_TCP_CONG_VEGAS is not set
# CONFIG_TCP_CONG_SCALABLE is not set
# CONFIG_TCP_CONG_LP is not set
# CONFIG_TCP_CONG_VENO is not set
# CONFIG_TCP_CONG_YEAH is not set
# CONFIG_TCP_CONG_ILLINOIS is not set
CONFIG_DEFAULT_BIC=y
# CONFIG_DEFAULT_CUBIC is not set
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="bic"
# CONFIG_TCP_MD5SIG is not set
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
# CONFIG_IPV6_ROUTER_PREF is not set
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
CONFIG_INET6_IPCOMP=y
# CONFIG_IPV6_MIP6 is not set
CONFIG_INET6_XFRM_TUNNEL=y
CONFIG_INET6_TUNNEL=y
CONFIG_INET6_XFRM_MODE_TRANSPORT=y
CONFIG_INET6_XFRM_MODE_TUNNEL=y
CONFIG_INET6_XFRM_MODE_BEET=y
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
CONFIG_IPV6_SIT=y
CONFIG_IPV6_TUNNEL=y
# CONFIG_IPV6_MULTIPLE_TABLES is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETFILTER is not set
# 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 is not set
# CONFIG_BRIDGE is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set

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

#
# Network testing
#
CONFIG_NET_PKTGEN=m
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_AF_RXRPC is not set
CONFIG_FIB_RULES=y

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

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_CONNECTOR is not set
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set

#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=65536
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
CONFIG_MISC_DEVICES=y
# CONFIG_IBM_ASM is not set
# CONFIG_PHANTOM is not set
CONFIG_EEPROM_93CX6=y
# 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_IDE is not set

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

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

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

#
# SCSI Transports
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
# CONFIG_SCSI_ISCSI_ATTRS is not set
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set
CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
# CONFIG_MEGARAID_SAS is not set
# CONFIG_SCSI_HPTIOP is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_STEX is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_QLA_FC is not set
# CONFIG_SCSI_QLA_ISCSI is not set
# CONFIG_SCSI_LPFC is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SRP is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_AHCI=y
# CONFIG_SATA_SVW is not set
# CONFIG_ATA_PIIX is not set
# CONFIG_SATA_MV is not set
CONFIG_SATA_NV=y
# CONFIG_PDC_ADMA is not set
# CONFIG_SATA_QSTOR is not set
# CONFIG_SATA_PROMISE is not set
# CONFIG_SATA_SX4 is not set
# CONFIG_SATA_SIL is not set
# CONFIG_SATA_SIL24 is not set
# CONFIG_SATA_SIS is not set
# CONFIG_SATA_ULI is not set
# CONFIG_SATA_VIA is not set
# CONFIG_SATA_VITESSE is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_PATA_ALI is not set
# CONFIG_PATA_AMD is not set
# CONFIG_PATA_ARTOP is not set
# CONFIG_PATA_ATIIXP is not set
# CONFIG_PATA_CMD640_PCI is not set
# CONFIG_PATA_CMD64X is not set
# CONFIG_PATA_CS5520 is not set
# CONFIG_PATA_CS5530 is not set
# CONFIG_PATA_CYPRESS is not set
# CONFIG_PATA_EFAR is not set
# CONFIG_ATA_GENERIC is not set
# CONFIG_PATA_HPT366 is not set
# CONFIG_PATA_HPT37X is not set
# CONFIG_PATA_HPT3X2N is not set
# CONFIG_PATA_HPT3X3 is not set
# CONFIG_PATA_IT821X is not set
# CONFIG_PATA_IT8213 is not set
# CONFIG_PATA_JMICRON is not set
# CONFIG_PATA_TRIFLEX is not set
# CONFIG_PATA_MARVELL is not set
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_OLDPIIX is not set
# CONFIG_PATA_NETCELL is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_OPTI is not set
# CONFIG_PATA_OPTIDMA is not set
# CONFIG_PATA_PDC_OLD is not set
# CONFIG_PATA_RADISYS is not set
# CONFIG_PATA_RZ1000 is not set
# CONFIG_PATA_SC1200 is not set
# CONFIG_PATA_SERVERWORKS is not set
# CONFIG_PATA_PDC2027X is not set
# CONFIG_PATA_SIL680 is not set
# CONFIG_PATA_SIS is not set
# CONFIG_PATA_VIA is not set
# CONFIG_PATA_WINBOND is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
# CONFIG_MD_LINEAR is not set
# CONFIG_MD_RAID0 is not set
CONFIG_MD_RAID1=y
# CONFIG_MD_RAID10 is not set
# CONFIG_MD_RAID456 is not set
# CONFIG_MD_MULTIPATH is not set
# CONFIG_MD_FAULTY is not set
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
# CONFIG_DM_CRYPT is not set
# CONFIG_DM_SNAPSHOT is not set
# CONFIG_DM_MIRROR is not set
# CONFIG_DM_ZERO is not set
# CONFIG_DM_MULTIPATH is not set
# CONFIG_DM_DELAY is not set
# CONFIG_DM_NETLINK is not set
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#
# CONFIG_FIREWIRE is not set
# CONFIG_IEEE1394 is not set
# CONFIG_I2O is not set
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
# CONFIG_NETDEVICES_MULTIQUEUE is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_NET_SB1000 is not set
# CONFIG_ARCNET is not set
# CONFIG_PHYLIB is not set
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_CASSINI is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_NET_TULIP is not set
# CONFIG_HP100 is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
# CONFIG_ADAPTEC_STARFIRE is not set
# CONFIG_B44 is not set
CONFIG_FORCEDETH=y
CONFIG_FORCEDETH_NAPI=y
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not set
# CONFIG_E100 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_VIA_RHINE is not set
# CONFIG_SC92031 is not set
CONFIG_NETDEV_1000=y
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000NEW is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
CONFIG_R8169=y
CONFIG_R8169_NAPI=y
# CONFIG_SIS190 is not set
CONFIG_SKGE=y
# CONFIG_SKY2 is not set
# CONFIG_VIA_VELOCITY is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
# CONFIG_QLA3XXX is not set
# CONFIG_ATL1 is not set
# CONFIG_NETDEV_10000 is not set
# CONFIG_TR is not set

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

#
# USB Network Adapters
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET_MII is not set
# CONFIG_USB_USBNET is not set
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_ISDN is not set
# CONFIG_PHONE is not set

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

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1280
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=1024
# CONFIG_INPUT_JOYDEV is not set
# 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 is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

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

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

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
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_IPMI_HANDLER is not set
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=y
# CONFIG_HW_RANDOM_INTEL is not set
CONFIG_HW_RANDOM_AMD=y
# CONFIG_NVRAM is not set
# CONFIG_RTC is not set
# CONFIG_GEN_RTC is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
# CONFIG_AGP_INTEL is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_VIA is not set
CONFIG_DRM=y
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_R128 is not set
# CONFIG_DRM_RADEON is not set
# CONFIG_DRM_MGA is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_VIA is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_MWAVE is not set
# CONFIG_PC8736x_GPIO is not set
# CONFIG_RAW_DRIVER is not set
CONFIG_HPET=y
# CONFIG_HPET_RTC_IRQ is not set
CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=m
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
# CONFIG_I2C_CHARDEV is not set

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

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

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

#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set
# CONFIG_W1 is not set
# CONFIG_POWER_SUPPLY is not set
CONFIG_HWMON=y
CONFIG_HWMON_VID=y
# CONFIG_SENSORS_ABITUGURU is not set
# CONFIG_SENSORS_ABITUGURU3 is not set
# CONFIG_SENSORS_AD7418 is not set
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ADM9240 is not set
CONFIG_SENSORS_K8TEMP=y
# CONFIG_SENSORS_ASB100 is not set
# CONFIG_SENSORS_ATXP1 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_FSCHER is not set
# CONFIG_SENSORS_FSCPOS is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_CORETEMP is not set
CONFIG_SENSORS_IT87=y
# CONFIG_SENSORS_LM63 is not set
# CONFIG_SENSORS_LM75 is not set
# CONFIG_SENSORS_LM77 is not set
# CONFIG_SENSORS_LM78 is not set
# CONFIG_SENSORS_LM80 is not set
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_LM93 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_DME1737 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47M192 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
# CONFIG_SENSORS_W83781D is not set
# CONFIG_SENSORS_W83791D is not set
# CONFIG_SENSORS_W83792D is not set
# CONFIG_SENSORS_W83793 is not set
# CONFIG_SENSORS_W83L785TS is not set
# CONFIG_SENSORS_W83627HF is not set
# CONFIG_SENSORS_W83627EHF is not set
# CONFIG_SENSORS_HDAPS is not set
# CONFIG_SENSORS_APPLESMC is not set
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Sonics Silicon Backplane
#
# CONFIG_SSB is not set

#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set

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

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

#
# Display device support
#
CONFIG_DISPLAY_SUPPORT=y

#
# Display hardware drivers
#
CONFIG_VGASTATE=y
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_SYS_FOPS is not set
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=y

#
# Frame buffer hardware drivers
#
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
# CONFIG_FB_VESA is not set
# CONFIG_FB_HECUBA is not set
# CONFIG_FB_HGA is not set
# CONFIG_FB_S1D13XXX is not set
CONFIG_FB_NVIDIA=y
CONFIG_FB_NVIDIA_I2C=y
# CONFIG_FB_NVIDIA_DEBUG is not set
CONFIG_FB_NVIDIA_BACKLIGHT=y
# CONFIG_FB_RIVA is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_INTEL is not set
# 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 is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_VT8623 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_GEODE is not set
# CONFIG_FB_VIRTUAL is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_VIDEO_SELECT=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=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=y
CONFIG_LOGO_LINUX_VGA16=y
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_RAWMIDI=y
CONFIG_SND_SEQUENCER=y
# CONFIG_SND_SEQ_DUMMY is not set
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_DYNAMIC_MINORS is not set
# CONFIG_SND_SUPPORT_OLD_API is not set
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_AC97_CODEC=y
# CONFIG_SND_DUMMY is not set
# CONFIG_SND_VIRMIDI is not set
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set

#
# PCI devices
#
# CONFIG_SND_AD1889 is not set
# CONFIG_SND_ALS300 is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_ATIIXP is not set
# CONFIG_SND_ATIIXP_MODEM is not set
# CONFIG_SND_AU8810 is not set
# CONFIG_SND_AU8820 is not set
# CONFIG_SND_AU8830 is not set
# CONFIG_SND_AZT3328 is not set
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
# 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 is not set
# CONFIG_SND_EMU10K1X is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_FM801 is not set
CONFIG_SND_HDA_INTEL=y
# CONFIG_SND_HDSP is not set
# CONFIG_SND_HDSPM is not set
# CONFIG_SND_ICE1712 is not set
# CONFIG_SND_ICE1724 is not set
# CONFIG_SND_INTEL8X0 is not set
# CONFIG_SND_INTEL8X0M is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_MIXART is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_PCXHR is not set
# CONFIG_SND_RIPTIDE is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_TRIDENT is not set
CONFIG_SND_VIA82XX=y
# CONFIG_SND_VIA82XX_MODEM is not set
# CONFIG_SND_VX222 is not set
# CONFIG_SND_YMFPCI is not set
# CONFIG_SND_AC97_POWER_SAVE is not set

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

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

#
# SoC Audio support for SuperH
#

#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not set
CONFIG_AC97_BUS=y
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
# CONFIG_HIDRAW is not set

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

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

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=y
# CONFIG_USB_EHCI_SPLIT_ISO is not set
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
# CONFIG_USB_EHCI_TT_NEWSCHED 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
# CONFIG_USB_R8A66597_HCD is not set

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

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

#
# may also be needed; see USB_STORAGE Help for more information
#
CONFIG_USB_STORAGE=y
# CONFIG_USB_STORAGE_DEBUG is not set
# CONFIG_USB_STORAGE_DATAFAB is not set
# CONFIG_USB_STORAGE_FREECOM is not set
# CONFIG_USB_STORAGE_DPCM is not set
# CONFIG_USB_STORAGE_USBAT is not set
# CONFIG_USB_STORAGE_SDDR09 is not set
# CONFIG_USB_STORAGE_SDDR55 is not set
# CONFIG_USB_STORAGE_JUMPSHOT is not set
# 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 is not set
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_MON is not set

#
# USB port drivers
#

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

#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_ADUTUX is not set
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_BERRY_CHARGE is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_PHIDGET is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
# CONFIG_USB_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 is not set
# CONFIG_USB_GOTEMP is not set

#
# USB DSL modem support
#

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
# CONFIG_MMC is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_INFINIBAND is not set
CONFIG_EDAC=y

#
# Reporting subsystems
#
# CONFIG_EDAC_DEBUG is not set
CONFIG_EDAC_MM_EDAC=y
# CONFIG_EDAC_E752X is not set
# CONFIG_EDAC_I82975X is not set
# CONFIG_EDAC_I5000 is not set
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set

#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
# CONFIG_RTC_DRV_TEST is not set

#
# I2C RTC drivers
#
# CONFIG_RTC_DRV_DS1307 is not set
# CONFIG_RTC_DRV_DS1672 is not set
# CONFIG_RTC_DRV_MAX6900 is not set
# CONFIG_RTC_DRV_RS5C372 is not set
# CONFIG_RTC_DRV_ISL1208 is not set
# CONFIG_RTC_DRV_X1205 is not set
# CONFIG_RTC_DRV_PCF8563 is not set
# CONFIG_RTC_DRV_PCF8583 is not set
# CONFIG_RTC_DRV_M41T80 is not set

#
# SPI RTC drivers
#

#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
# CONFIG_RTC_DRV_DS1553 is not set
# CONFIG_RTC_DRV_STK17TA8 is not set
# CONFIG_RTC_DRV_DS1742 is not set
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_M48T59 is not set
# CONFIG_RTC_DRV_V3020 is not set

#
# on-CPU RTC drivers
#

#
# DMA Engine support
#
# CONFIG_DMA_ENGINE is not set

#
# DMA Clients
#

#
# DMA Devices
#
CONFIG_DCA=m
CONFIG_VIRTUALIZATION=y
# CONFIG_KVM is not set

#
# Userspace I/O
#
# CONFIG_UIO is not set

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

#
# 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=y
CONFIG_EXT4DEV_FS_XATTR=y
# CONFIG_EXT4DEV_FS_POSIX_ACL is not set
# CONFIG_EXT4DEV_FS_SECURITY is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_JBD2=y
# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=y
# CONFIG_REISER4_FS is not set
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
# CONFIG_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 is not set
CONFIG_DNOTIFY=y
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=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="iso8859-1"
# 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 is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
# CONFIG_CONFIGFS_FS is not set

#
# Layered filesystems
#
# CONFIG_UNION_FS is not set

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

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

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

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

#
# Distributed Lock Manager
#
# CONFIG_DLM is not set

#
# Instrumentation Support
#
CONFIG_PROFILING=y
# CONFIG_OPROFILE is not set
# CONFIG_KPROBES is not set

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_PRINTK_TIME=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_UNUSED_SYMBOLS=y
# CONFIG_PAGE_OWNER is not set
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DETECT_SOFTLOCKUP=y
CONFIG_SCHED_DEBUG=y
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_SLUB_DEBUG_ON is not set
CONFIG_DEBUG_PREEMPT=y
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_PROVE_LOCKING=y
CONFIG_LOCKDEP=y
# CONFIG_LOCK_STAT is not set
CONFIG_DEBUG_LOCKDEP=y
CONFIG_TRACE_IRQFLAGS=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
CONFIG_STACKTRACE=y
# 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=y
# CONFIG_PROFILE_LIKELY is not set
# CONFIG_FORCED_INLINING is not set
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_DEBUG_SYNCHRO_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_WANT_EXTRA_DEBUG_INFORMATION is not set
# CONFIG_UNWIND_INFO is not set
# CONFIG_KGDB 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 is not set
# CONFIG_SECURITY is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
# CONFIG_CRYPTO_XCBC is not set
CONFIG_CRYPTO_NULL=y
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
# CONFIG_CRYPTO_WP512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_GF128MUL is not set
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=y
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not set
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_TWOFISH_COMMON=m
CONFIG_CRYPTO_TWOFISH_X86_64=m
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_AES=m
CONFIG_CRYPTO_AES_X86_64=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_KHAZAD=m
CONFIG_CRYPTO_ANUBIS=m
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_CRC32C=m
# CONFIG_CRYPTO_CAMELLIA is not set
CONFIG_CRYPTO_TEST=m
# CONFIG_CRYPTO_HW is not set

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

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

* Re: [-mm patch] kernel/printk.c: make 2 variables static
  2007-07-29 14:59 ` [-mm patch] kernel/printk.c: make 2 variables static Adrian Bunk
@ 2007-07-29 16:51   ` Randy Dunlap
  0 siblings, 0 replies; 132+ messages in thread
From: Randy Dunlap @ 2007-07-29 16:51 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, linux-kernel

On Sun, 29 Jul 2007 16:59:18 +0200 Adrian Bunk wrote:

> On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
> >...
> > Changes since 2.6.22-rc6-mm1:
> >...
> > +slow-down-printk-during-boot.patch
> >...
> >  Misc
> >...
> 
> This patch makes two needlessly global variables static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

Aye.  Thanks.

> ---
> --- linux-2.6.23-rc1-mm1/kernel/printk.c.old	2007-07-26 22:40:09.000000000 +0200
> +++ linux-2.6.23-rc1-mm1/kernel/printk.c	2007-07-26 22:40:50.000000000 +0200
> @@ -166,8 +166,8 @@
>  
>  #ifdef CONFIG_BOOT_PRINTK_DELAY
>  
> -unsigned int boot_delay; /* msecs delay after each printk during bootup */
> -unsigned long long printk_delay_msec; /* per msec, based on boot_delay */
> +static unsigned int boot_delay; /* msecs delay after each printk during bootup */
> +static unsigned long long printk_delay_msec; /* per msec, based on boot_delay */
>  
>  static int __init boot_delay_setup(char *str)
>  {


---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

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

* Re: [-mm patch] make struct sdio_dev_attrs[] static
  2007-07-29 14:58 ` [-mm patch] make struct sdio_dev_attrs[] static Adrian Bunk
@ 2007-07-29 19:29   ` Pierre Ossman
  0 siblings, 0 replies; 132+ messages in thread
From: Pierre Ossman @ 2007-07-29 19:29 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Nicolas Pitre, linux-kernel

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

On Sun, 29 Jul 2007 16:58:09 +0200
Adrian Bunk <bunk@stusta.de> wrote:

> On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
> >...
> > Changes since 2.6.22-rc6-mm1:
> >...
> >  git-mmc.patch
> >...
> >  git trees
> >...
> 
> sdio_dev_attrs[] can become static.
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 

Thanks, applied.

Rgds
Pierre

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: 2.6.23-rc1-mm1
  2007-07-29 15:49 ` 2.6.23-rc1-mm1 Grant Wilson
@ 2007-07-30  9:58   ` Dave Young
  2007-07-30 18:27     ` 2.6.23-rc1-mm1 Andrew Morton
  0 siblings, 1 reply; 132+ messages in thread
From: Dave Young @ 2007-07-30  9:58 UTC (permalink / raw)
  To: Grant Wilson; +Cc: Andrew Morton, linux-kernel

> Hi,
> I get an oops when trying to mount an ISO file using the loopback device.
> If I revert the patch 'loop-use-unlocked_ioctl.patch' the mount works.
>
> Here's the oops:
>
> [   85.697033] Unable to handle kernel NULL pointer dereference at 0000000000000100 RIP:
> [   85.702528]  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
> [   85.710066] PGD 73fd067 PUD 735b067 PMD 0
> [   85.714221] Oops: 0000 [1] PREEMPT SMP
> [   85.718117] CPU 1
> [   85.720159] Modules linked in:
> [   85.723242] Pid: 3976, comm: mount Not tainted 2.6.23-rc1-mm1 #4
> [   85.729247] RIP: 0010:[<ffffffff80477885>]  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
> [   85.737011] RSP: 0018:ffff8100076a3708  EFLAGS: 00010282
> [   85.742326] RAX: ffffffff80477860 RBX: 00000000fffffdfd RCX: 0000000000005310
> [   85.749459] RDX: ffff8100076a3b58 RSI: 0000000000005310 RDI: 0000000000000000
> [   85.756591] RBP: ffff8100076a3908 R08: ffff8100076a3b58 R09: ffff81000649da80
> [   85.763723] R10: 0000000000000000 R11: 2222222222222222 R12: 0000000000005310
> [   85.770856] R13: ffff8100076a3b58 R14: 0000000000005310 R15: 0000000000000000
> [   85.777988] FS:  00002b4fab3a0e20(0000) GS:ffff810004017180(0000) knlGS:0000000000000000
> [   85.786081] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [   85.791829] CR2: 0000000000000100 CR3: 00000000073d7000 CR4: 00000000000006e0
> [   85.798970] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [   85.806102] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [   85.813235] Process mount (pid: 3976, threadinfo ffff8100076a2000, task ffff8100062f66d0)
> [   85.821413] Stack:  0000000200000001 ffff8100062f6e90 ffff8100062f6e90 000000000013638a
> [   85.829533]  ffffffff80a78ef0 0000000000000000 ffff8100076a37b8 ffffffff8025c690
> [   85.837020]  ffff8100062f66d0 ffff8100062f6e58 0000000200000001 0000000000000000
> [   85.844308] Call Trace:
> [   85.846961]  [<ffffffff8025c690>] __lock_acquire+0x3d0/0x1170
> [   85.852715]  [<ffffffff8025baee>] mark_held_locks+0x3e/0x80
> [   85.858290]  [<ffffffff8064ff0a>] __mutex_lock_slowpath+0x1ca/0x330
> [   85.864565]  [<ffffffff8025baee>] mark_held_locks+0x3e/0x80
> [   85.870139]  [<ffffffff8064fd39>] mutex_unlock+0x9/0x10
> [   85.875366]  [<ffffffff8064fc69>] __mutex_unlock_slowpath+0xd9/0x1a0
> [   85.881720]  [<ffffffff8025bcca>] trace_hardirqs_on+0xda/0x180
> [   85.887555]  [<ffffffff8064fd39>] mutex_unlock+0x9/0x10
> [   85.892782]  [<ffffffff802c3ba1>] do_open+0x231/0x320
> [   85.897839]  [<ffffffff803b7113>] blkdev_driver_ioctl+0x43/0x90
> [   85.903758]  [<ffffffff803b7429>] blkdev_ioctl+0x2c9/0x780
> [   85.909247]  [<ffffffff8065149d>] trace_hardirqs_on_thunk+0x35/0x37
> [   85.915522]  [<ffffffff8020c320>] restore_args+0x0/0x30
> [   85.920751]  [<ffffffff802c2d60>] kill_bdev+0x0/0x40
> [   85.925718]  [<ffffffff802c4084>] ioctl_by_bdev+0x34/0x50
> [   85.931119]  [<ffffffff80336019>] isofs_fill_super+0x969/0xaf0
> [   85.936954]  [<ffffffff80299b9c>] sget+0x3c/0x3f0
> [   85.941662]  [<ffffffff80299760>] test_bdev_super+0x0/0x20
> [   85.947150]  [<ffffffff80651fc0>] _spin_unlock+0x30/0x60
> [   85.952464]  [<ffffffff80299760>] test_bdev_super+0x0/0x20
> [   85.957951]  [<ffffffff80299f4a>] sget+0x3ea/0x3f0
> [   85.962747]  [<ffffffff803c662f>] strlcpy+0x4f/0x70
> [   85.967628]  [<ffffffff8029aa9c>] get_sb_bdev+0x15c/0x190
> [   85.973029]  [<ffffffff803356b0>] isofs_fill_super+0x0/0xaf0
> [   85.978693]  [<ffffffff80334fb3>] isofs_get_sb+0x13/0x20
> [   85.984006]  [<ffffffff8029a4c8>] vfs_kern_mount+0x58/0xc0
> [   85.989494]  [<ffffffff802b2366>] do_mount+0x206/0x850
> [   85.994635]  [<ffffffff8027b891>] __mod_zone_page_state+0x21/0x90
> [   86.000729]  [<ffffffff80273160>] rmqueue_bulk+0x90/0xb0
> [   86.006043]  [<ffffffff80651fc0>] _spin_unlock+0x30/0x60
> [   86.011358]  [<ffffffff80273160>] rmqueue_bulk+0x90/0xb0
> [   86.016673]  [<ffffffff80274425>] get_page_from_freelist+0x395/0x500
> [   86.023026]  [<ffffffff8025bcca>] trace_hardirqs_on+0xda/0x180
> [   86.028860]  [<ffffffff802742b3>] get_page_from_freelist+0x223/0x500
> [   86.035213]  [<ffffffff80274639>] __alloc_pages+0x59/0x3a0
> [   86.040702]  [<ffffffff80246d68>] sigprocmask+0x38/0xf0
> [   86.045929]  [<ffffffff802940e8>] kmem_cache_alloc+0x98/0xd0
> [   86.051590]  [<ffffffff80274a00>] __get_free_pages+0x80/0x90
> [   86.057251]  [<ffffffff802b2a44>] sys_mount+0x94/0xf0
> [   86.062305]  [<ffffffff8065149d>] trace_hardirqs_on_thunk+0x35/0x37
> [   86.068572]  [<ffffffff8020bd7e>] system_call+0x7e/0x83
> [   86.073799]
> [   86.075296] INFO: lockdep is turned off.
> [   86.079226]
> [   86.079227] Code: 48 8b 87 00 01 00 00 49 89 d6 48 8b 18 48 8b 83 10 03 00 00
> [   86.088306] RIP  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
> [   86.093734]  RSP <ffff8100076a3708>
> [   86.097231] CR2: 0000000000000100
>

Hi, andrew,
I debugged this problem. The oops is caused by NUll file pointer.

I change the unlocked_ioctl to ioctl  in fops.  print some debug info :
 [   51.018272] hidave ### cmd : get_status
[   51.018281] hidave ### cmd : 19459 inode : c2024b9c file : c2e89c00
[   51.052419] hidave ### cmd : set_fd
[   51.052426] hidave ### cmd : 19456 inode : c2024b9c file : c2e89100
[   51.052494] hidave ### cmd : set_status64
[   51.052500] hidave ### cmd : 19460 inode : c2024b9c file : c2e89100
[   51.125241] hidave ### cmd : unknown
>>(The 21264 cmd is a cdrom ioctl command.)
[   51.125248] hidave ### cmd : 21264 inode : c2024b9c file : 00000000
>>if use ioctl interface the inode is transfered, but in the
unlocked_ioctl interface only  the file pointer is transfered, so NULL
caused the panic.

PS: I noticed the fs/block_dev.c: line 1374:
res = blkdev_ioctl(bdev->bd_inode, NULL, cmd, arg);

So, just changeback  from unlocked_ioctl to ioctl, the lock_kernel
remove is still ok.

Regards
dave

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

* Re: [-mm patch] security/ cleanups
  2007-07-29 15:00 ` [-mm patch] security/ cleanups Adrian Bunk
@ 2007-07-30 11:47   ` James Morris
  0 siblings, 0 replies; 132+ messages in thread
From: James Morris @ 2007-07-30 11:47 UTC (permalink / raw)
  To: Adrian Bunk
  Cc: Andrew Morton, Chris Wright, Stephen Smalley, greg, linux-kernel

On Sun, 29 Jul 2007, Adrian Bunk wrote:

> This patch contains the following cleanups that are now possible:
> - remove the unused security_operations->inode_xattr_getsuffix
> - remove the no longer used security_operations->unregister_security
> - remove some no longer required exit code
> - remove a bunch of no longer used exports
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>

Acked-by: James Morris <jmorris@namei.org>


-- 
James Morris
<jmorris@namei.org>

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

* Re: mm/sparse.c compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-28 17:30   ` Andrew Morton
@ 2007-07-30 12:16     ` Andy Whitcroft
  0 siblings, 0 replies; 132+ messages in thread
From: Andy Whitcroft @ 2007-07-30 12:16 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Gabriel C, linux-kernel, Mel Gorman, Bob Picco, William Irwin, Tony Luck

Andrew Morton wrote:
> On Sat, 28 Jul 2007 19:07:22 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
> 
>> Hi,
>>
>> next randconfig error ( http://194.231.229.228/MM/randconfig-auto-87.mm_sparse.error )
>>
>>
>> ...
>>
>> mm/sparse.c: In function 'sparse_init':
>> mm/sparse.c:482: error: implicit declaration of function 'sparse_early_usemap_alloc'
>> mm/sparse.c:482: warning: assignment makes pointer from integer without a cast
>> make[1]: *** [mm/sparse.o] Error 1
>> make: *** [mm] Error 2
>> make: *** Waiting for unfinished jobs....
>>
>> ...
>>
>>
>> guessing while this patch , but I am not really sure :
>>
>> fix-corruption-of-memmap-on-ia64-sparsemem-when-mem_section-is-not-a-power-of-2.patch
>>
> 
> That seems to have been fixed by one of the post-2.6.23-rc1-mm1 patches I merged,
> thanks.

I believe that this was fixed by a patch from Mel Gorman which I believe
merged into -mm as:

fix-corruption-of-memmap-on-ia64-sparsemem-when-mem_section-is-not-a-power-of-2-fix.patch
	
-apw

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-27 22:43         ` Bjorn Helgaas
@ 2007-07-30 18:09           ` Bjorn Helgaas
  2007-07-30 23:53           ` Valdis.Kletnieks
  1 sibling, 0 replies; 132+ messages in thread
From: Bjorn Helgaas @ 2007-07-30 18:09 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

On Friday 27 July 2007 04:43:13 pm Bjorn Helgaas wrote:
> On Friday 27 July 2007 07:28:09 am Valdis.Kletnieks@vt.edu wrote:
> > Looks like the problematic code is in tpm_tis.c tpm_tis_init() near here:
> > 
> >                 for (i = 3; i < 16 && chip->vendor.irq == 0; i++) {
> >                         iowrite8(i, chip->vendor.iobase +
> >                                     TPM_INT_VECTOR(chip->vendor.locality));
> >                         if (request_irq
> >                             (i, tis_int_probe, IRQF_SHARED,
> >                              chip->vendor.miscdev.name, chip) != 0) {
> >                                 dev_info(chip->dev,
> >                                          "Unable to request irq: %d for probe\n"
> > ,           
> >                                          i);
> >                                 continue;
> >                         }
> > 
> > This seems to be misbehaving differently for the two different DEBUG_SHIRQ
> > cases.
> > 
> > With DEBUG_SHIRQ=n, it starts at IRQ3, gets to at least 8 (where it complains
> > it can't request it for probing), and possibly all the way to 15, without ever
> > actually selecting and assigning an IRQ (to refresh memories, in that range
> > /proc/interrupts only lists:
> > 
> >   8:          0          0   IO-APIC-edge      rtc
> >   9:          3          0   IO-APIC-fasteoi   acpi
> >  12:         94          0   IO-APIC-edge      i8042
> >  14:     148166          0   IO-APIC-edge      libata
> >  15:         94          0   IO-APIC-edge      libata
> > 
> > So there's certainly IRQ's available.  No idea why it doesn't choose one. But
> > since it never chose one, it never gets into the "wait for the IRQ" protected
> > by 'if (chip->vendor.irq)' at the end of tpm_tis_send.
> > 
> > With DEBUG_SHIRQ=y, It starts at IRQ3, and assigns it (which seems a good thing).
> > Unfortunately, this then hits the timeouts in tpm_tis_send.
> > 
> > Anybody got an idea what *should* be happening here?
> 
> I don't know why tpm_tis_init() is messing around trying different
> IRQs between 3 and 16.  That looks suspiciously x86-dependent.
> 
> Maybe if you don't have PNP (though I doubt TPMs exist on any
> pre-PNPBIOS machines) the "check-IRQ" loop would be necessary.
> 
> But you're using the PNP probe, and PNP should just tell you what
> IRQ the device is configured for (and whether the IRQ can be
> shared -- see 8250_pnp.c for an example).

I think tpm_tis should do something like the patch below to discover
its interrupt.  If ACPI tells us the device's IRQ, we should just use
it rather than blindly trying a few possibilities.  So the patch below
might make it work, because it should skip the problematic code you
identified above.

But there could still be an issue with DEBUG_SHIRQ and the IRQ probe
loop.  Even if we used the attached patch, we'd probably still want
the IRQ probe to work when you specify tpm_tis.force=1.

Index: w/drivers/char/tpm/tpm_tis.c
===================================================================
--- w.orig/drivers/char/tpm/tpm_tis.c	2007-07-30 11:29:31.000000000 -0600
+++ w/drivers/char/tpm/tpm_tis.c	2007-07-30 11:35:20.000000000 -0600
@@ -433,17 +433,12 @@
 MODULE_PARM_DESC(interrupts, "Enable interrupts");
 
 static int tpm_tis_init(struct device *dev, resource_size_t start,
-			resource_size_t len)
+			resource_size_t len, unsigned int irq)
 {
 	u32 vendor, intfcaps, intmask;
 	int rc, i;
 	struct tpm_chip *chip;
 
-	if (!start)
-		start = TIS_MEM_BASE;
-	if (!len)
-		len = TIS_MEM_LEN;
-
 	if (!(chip = tpm_register_hardware(dev, &tpm_tis)))
 		return -ENODEV;
 
@@ -510,7 +505,9 @@
 	iowrite32(intmask,
 		  chip->vendor.iobase +
 		  TPM_INT_ENABLE(chip->vendor.locality));
-	if (interrupts) {
+	if (interrupts)
+		chip->vendor.irq = irq;
+	if (interrupts && !chip->vendor.irq) {
 		chip->vendor.irq =
 		    ioread8(chip->vendor.iobase +
 			    TPM_INT_VECTOR(chip->vendor.locality));
@@ -595,10 +592,13 @@
 				      const struct pnp_device_id *pnp_id)
 {
 	resource_size_t start, len;
+	unsigned int irq;
+
 	start = pnp_mem_start(pnp_dev, 0);
 	len = pnp_mem_len(pnp_dev, 0);
+	irq = pnp_irq(pnp_dev, 0);
 
-	return tpm_tis_init(&pnp_dev->dev, start, len);
+	return tpm_tis_init(&pnp_dev->dev, start, len, irq);
 }
 
 static int tpm_tis_pnp_suspend(struct pnp_dev *dev, pm_message_t msg)
@@ -658,7 +658,7 @@
 			return rc;
 		if (IS_ERR(pdev=platform_device_register_simple("tpm_tis", -1, NULL, 0)))
 			return PTR_ERR(pdev);
-		if((rc=tpm_tis_init(&pdev->dev, 0, 0)) != 0) {
+		if((rc=tpm_tis_init(&pdev->dev, TIS_MEM_BASE, TIS_MEM_LEN, 0)) != 0) {
 			platform_device_unregister(pdev);
 			driver_unregister(&tis_drv);
 		}

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

* Re: 2.6.23-rc1-mm1
  2007-07-30  9:58   ` 2.6.23-rc1-mm1 Dave Young
@ 2007-07-30 18:27     ` Andrew Morton
  2007-07-30 18:42       ` 2.6.23-rc1-mm1 Christoph Hellwig
  0 siblings, 1 reply; 132+ messages in thread
From: Andrew Morton @ 2007-07-30 18:27 UTC (permalink / raw)
  To: Dave Young; +Cc: Grant Wilson, linux-kernel, Christoph Hellwig

On Mon, 30 Jul 2007 09:58:34 +0000
"Dave Young" <hidave.darkstar@gmail.com> wrote:

> > Hi,
> > I get an oops when trying to mount an ISO file using the loopback device.
> > If I revert the patch 'loop-use-unlocked_ioctl.patch' the mount works.
> >
> > Here's the oops:
> >
> > [   85.697033] Unable to handle kernel NULL pointer dereference at 0000000000000100 RIP:
> > [   85.702528]  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
> > [   85.710066] PGD 73fd067 PUD 735b067 PMD 0
> > [   85.714221] Oops: 0000 [1] PREEMPT SMP
> > [   85.718117] CPU 1
> > [   85.720159] Modules linked in:
> > [   85.723242] Pid: 3976, comm: mount Not tainted 2.6.23-rc1-mm1 #4
> > [   85.729247] RIP: 0010:[<ffffffff80477885>]  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
> > [   85.737011] RSP: 0018:ffff8100076a3708  EFLAGS: 00010282
> > [   85.742326] RAX: ffffffff80477860 RBX: 00000000fffffdfd RCX: 0000000000005310
> > [   85.749459] RDX: ffff8100076a3b58 RSI: 0000000000005310 RDI: 0000000000000000
> > [   85.756591] RBP: ffff8100076a3908 R08: ffff8100076a3b58 R09: ffff81000649da80
> > [   85.763723] R10: 0000000000000000 R11: 2222222222222222 R12: 0000000000005310
> > [   85.770856] R13: ffff8100076a3b58 R14: 0000000000005310 R15: 0000000000000000
> > [   85.777988] FS:  00002b4fab3a0e20(0000) GS:ffff810004017180(0000) knlGS:0000000000000000
> > [   85.786081] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> > [   85.791829] CR2: 0000000000000100 CR3: 00000000073d7000 CR4: 00000000000006e0
> > [   85.798970] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> > [   85.806102] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> > [   85.813235] Process mount (pid: 3976, threadinfo ffff8100076a2000, task ffff8100062f66d0)
> > [   85.821413] Stack:  0000000200000001 ffff8100062f6e90 ffff8100062f6e90 000000000013638a
> > [   85.829533]  ffffffff80a78ef0 0000000000000000 ffff8100076a37b8 ffffffff8025c690
> > [   85.837020]  ffff8100062f66d0 ffff8100062f6e58 0000000200000001 0000000000000000
> > [   85.844308] Call Trace:
> > [   85.846961]  [<ffffffff8025c690>] __lock_acquire+0x3d0/0x1170
> > [   85.852715]  [<ffffffff8025baee>] mark_held_locks+0x3e/0x80
> > [   85.858290]  [<ffffffff8064ff0a>] __mutex_lock_slowpath+0x1ca/0x330
> > [   85.864565]  [<ffffffff8025baee>] mark_held_locks+0x3e/0x80
> > [   85.870139]  [<ffffffff8064fd39>] mutex_unlock+0x9/0x10
> > [   85.875366]  [<ffffffff8064fc69>] __mutex_unlock_slowpath+0xd9/0x1a0
> > [   85.881720]  [<ffffffff8025bcca>] trace_hardirqs_on+0xda/0x180
> > [   85.887555]  [<ffffffff8064fd39>] mutex_unlock+0x9/0x10
> > [   85.892782]  [<ffffffff802c3ba1>] do_open+0x231/0x320
> > [   85.897839]  [<ffffffff803b7113>] blkdev_driver_ioctl+0x43/0x90
> > [   85.903758]  [<ffffffff803b7429>] blkdev_ioctl+0x2c9/0x780
> > [   85.909247]  [<ffffffff8065149d>] trace_hardirqs_on_thunk+0x35/0x37
> > [   85.915522]  [<ffffffff8020c320>] restore_args+0x0/0x30
> > [   85.920751]  [<ffffffff802c2d60>] kill_bdev+0x0/0x40
> > [   85.925718]  [<ffffffff802c4084>] ioctl_by_bdev+0x34/0x50
> > [   85.931119]  [<ffffffff80336019>] isofs_fill_super+0x969/0xaf0
> > [   85.936954]  [<ffffffff80299b9c>] sget+0x3c/0x3f0
> > [   85.941662]  [<ffffffff80299760>] test_bdev_super+0x0/0x20
> > [   85.947150]  [<ffffffff80651fc0>] _spin_unlock+0x30/0x60
> > [   85.952464]  [<ffffffff80299760>] test_bdev_super+0x0/0x20
> > [   85.957951]  [<ffffffff80299f4a>] sget+0x3ea/0x3f0
> > [   85.962747]  [<ffffffff803c662f>] strlcpy+0x4f/0x70
> > [   85.967628]  [<ffffffff8029aa9c>] get_sb_bdev+0x15c/0x190
> > [   85.973029]  [<ffffffff803356b0>] isofs_fill_super+0x0/0xaf0
> > [   85.978693]  [<ffffffff80334fb3>] isofs_get_sb+0x13/0x20
> > [   85.984006]  [<ffffffff8029a4c8>] vfs_kern_mount+0x58/0xc0
> > [   85.989494]  [<ffffffff802b2366>] do_mount+0x206/0x850
> > [   85.994635]  [<ffffffff8027b891>] __mod_zone_page_state+0x21/0x90
> > [   86.000729]  [<ffffffff80273160>] rmqueue_bulk+0x90/0xb0
> > [   86.006043]  [<ffffffff80651fc0>] _spin_unlock+0x30/0x60
> > [   86.011358]  [<ffffffff80273160>] rmqueue_bulk+0x90/0xb0
> > [   86.016673]  [<ffffffff80274425>] get_page_from_freelist+0x395/0x500
> > [   86.023026]  [<ffffffff8025bcca>] trace_hardirqs_on+0xda/0x180
> > [   86.028860]  [<ffffffff802742b3>] get_page_from_freelist+0x223/0x500
> > [   86.035213]  [<ffffffff80274639>] __alloc_pages+0x59/0x3a0
> > [   86.040702]  [<ffffffff80246d68>] sigprocmask+0x38/0xf0
> > [   86.045929]  [<ffffffff802940e8>] kmem_cache_alloc+0x98/0xd0
> > [   86.051590]  [<ffffffff80274a00>] __get_free_pages+0x80/0x90
> > [   86.057251]  [<ffffffff802b2a44>] sys_mount+0x94/0xf0
> > [   86.062305]  [<ffffffff8065149d>] trace_hardirqs_on_thunk+0x35/0x37
> > [   86.068572]  [<ffffffff8020bd7e>] system_call+0x7e/0x83
> > [   86.073799]
> > [   86.075296] INFO: lockdep is turned off.
> > [   86.079226]
> > [   86.079227] Code: 48 8b 87 00 01 00 00 49 89 d6 48 8b 18 48 8b 83 10 03 00 00
> > [   86.088306] RIP  [<ffffffff80477885>] lo_ioctl+0x25/0xaa0
> > [   86.093734]  RSP <ffff8100076a3708>
> > [   86.097231] CR2: 0000000000000100
> >
> 
> Hi, andrew,
> I debugged this problem. The oops is caused by NUll file pointer.
> 
> I change the unlocked_ioctl to ioctl  in fops.  print some debug info :
>  [   51.018272] hidave ### cmd : get_status
> [   51.018281] hidave ### cmd : 19459 inode : c2024b9c file : c2e89c00
> [   51.052419] hidave ### cmd : set_fd
> [   51.052426] hidave ### cmd : 19456 inode : c2024b9c file : c2e89100
> [   51.052494] hidave ### cmd : set_status64
> [   51.052500] hidave ### cmd : 19460 inode : c2024b9c file : c2e89100
> [   51.125241] hidave ### cmd : unknown
> >>(The 21264 cmd is a cdrom ioctl command.)
> [   51.125248] hidave ### cmd : 21264 inode : c2024b9c file : 00000000
> >>if use ioctl interface the inode is transfered, but in the
> unlocked_ioctl interface only  the file pointer is transfered, so NULL
> caused the panic.
> 
> PS: I noticed the fs/block_dev.c: line 1374:
> res = blkdev_ioctl(bdev->bd_inode, NULL, cmd, arg);
> 
> So, just changeback  from unlocked_ioctl to ioctl, the lock_kernel
> remove is still ok.

ho hum, crap.  Yes, ioctl_by_bdev() doesn't have a file* and so it makes
unlocked_ioctl() rather tricky.  We could cook up a `struct file' on the
stack (we do that in various places), but that sucks.

Christoph, have you any clever suggestions?

Thanks.


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

The last lock_kernel() has disappeared from loop.c.  Switch it over to using
unlocked_ioctl.

Cc: Diego Woitasen <diego@woitasen.com.ar>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 drivers/block/loop.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff -puN drivers/block/loop.c~loop-use-unlocked_ioctl drivers/block/loop.c
--- a/drivers/block/loop.c~loop-use-unlocked_ioctl
+++ a/drivers/block/loop.c
@@ -1124,12 +1124,14 @@ loop_get_status64(struct loop_device *lo
 	return err;
 }
 
-static int lo_ioctl(struct inode * inode, struct file * file,
-	unsigned int cmd, unsigned long arg)
+static long lo_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
 {
-	struct loop_device *lo = inode->i_bdev->bd_disk->private_data;
+	struct inode *inode;
+	struct loop_device *lo;
 	int err;
 
+	inode = file->f_mapping->host;
+	lo = inode->i_bdev->bd_disk->private_data;
 	mutex_lock(&lo->lo_ctl_mutex);
 	switch (cmd) {
 	case LOOP_SET_FD:
@@ -1304,7 +1306,7 @@ static long lo_compat_ioctl(struct file 
 		arg = (unsigned long) compat_ptr(arg);
 	case LOOP_SET_FD:
 	case LOOP_CHANGE_FD:
-		err = lo_ioctl(inode, file, cmd, arg);
+		err = lo_ioctl(file, cmd, arg);
 		break;
 	default:
 		err = -ENOIOCTLCMD;
@@ -1340,7 +1342,7 @@ static struct block_device_operations lo
 	.owner =	THIS_MODULE,
 	.open =		lo_open,
 	.release =	lo_release,
-	.ioctl =	lo_ioctl,
+	.unlocked_ioctl = lo_ioctl,
 #ifdef CONFIG_COMPAT
 	.compat_ioctl =	lo_compat_ioctl,
 #endif
_


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

* Re: 2.6.23-rc1-mm1
  2007-07-30 18:27     ` 2.6.23-rc1-mm1 Andrew Morton
@ 2007-07-30 18:42       ` Christoph Hellwig
  2007-07-30 22:18         ` 2.6.23-rc1-mm1 Satyam Sharma
  0 siblings, 1 reply; 132+ messages in thread
From: Christoph Hellwig @ 2007-07-30 18:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Dave Young, Grant Wilson, linux-kernel, Christoph Hellwig

On Mon, Jul 30, 2007 at 11:27:20AM -0700, Andrew Morton wrote:
> ho hum, crap.  Yes, ioctl_by_bdev() doesn't have a file* and so it makes
> unlocked_ioctl() rather tricky.  We could cook up a `struct file' on the
> stack (we do that in various places), but that sucks.
> 
> Christoph, have you any clever suggestions?

There's two ways to deal with it, one ugly and quick and one to do it
right.

The quick hack is to fake up a file struct similar to blkdev_get().

The proper solutions is to get rid of the file (and inode) in the
blockdev ->ioctl prototype.  Only thing keeping is from that is
floppy.c (and some cut & paste variants for m68k) due to their awkard
permission checking hacks.


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

* Re: 2.6.23-rc1-mm1
  2007-07-30 18:42       ` 2.6.23-rc1-mm1 Christoph Hellwig
@ 2007-07-30 22:18         ` Satyam Sharma
  2007-07-31  1:21           ` 2.6.23-rc1-mm1 Dave Young
  0 siblings, 1 reply; 132+ messages in thread
From: Satyam Sharma @ 2007-07-30 22:18 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Andrew Morton, Dave Young, Grant Wilson, linux-kernel



On Mon, 30 Jul 2007, Christoph Hellwig wrote:

> On Mon, Jul 30, 2007 at 11:27:20AM -0700, Andrew Morton wrote:
> > ho hum, crap.  Yes, ioctl_by_bdev() doesn't have a file* and so it makes
> > unlocked_ioctl() rather tricky.  We could cook up a `struct file' on the
> > stack (we do that in various places), but that sucks.
> > 
> > Christoph, have you any clever suggestions?
> 
> There's two ways to deal with it, one ugly and quick and one to do it
> right.
> 
> The quick hack is to fake up a file struct similar to blkdev_get().

Gargh, please no. I've been thinking of how to get rid of that fake
on-stack file and dentry stuff from blkdev_get() myself -- it makes
pktcdvd incompatible with 4k kernel stacks ... btw any reason why we
can't just kmalloc() the fake file and dentry there?


> The proper solutions is to get rid of the file (and inode) in the
> blockdev ->ioctl prototype.  Only thing keeping is from that is
> floppy.c (and some cut & paste variants for m68k) due to their awkard
> permission checking hacks.

Hmm, care to explain this in more detail?


Satyam

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-27 22:43         ` Bjorn Helgaas
  2007-07-30 18:09           ` Bjorn Helgaas
@ 2007-07-30 23:53           ` Valdis.Kletnieks
  2007-07-31 18:48             ` Valdis.Kletnieks
  1 sibling, 1 reply; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-30 23:53 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

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

On Fri, 27 Jul 2007 16:43:13 MDT, Bjorn Helgaas said:

> I don't know why tpm_tis_init() is messing around trying different
> IRQs between 3 and 16.  That looks suspiciously x86-dependent.
> 
> Maybe if you don't have PNP (though I doubt TPMs exist on any
> pre-PNPBIOS machines) the "check-IRQ" loop would be necessary.

Well, it's a 6 month old Dell Latitude, and PNP is most certainly there,
as a number of other things get configured using it as well.

> But you're using the PNP probe, and PNP should just tell you what
> IRQ the device is configured for (and whether the IRQ can be
> shared -- see 8250_pnp.c for an example).
> 
> The BIOS should have configured the TPM IRQ, and if we go and
> mess with that IRQ setting without going through the PNP interface,
> e.g., the ACPI _SRS method, we're liable to mess something up.  The
> TPM is often behind a few bridges, and if the bridge has any IRQ
> routing configuration, only the BIOS knows how to keep that in
> sync with the TPM IRQ configuration.
> 
> > Just for the record, I see this in /sys:
> > 
> > % cat /sys/bus/pnp/devices/00:0e/id
> > BCM0102
> > PNP0c31
> 
> What's in /sys/bus/pnp/devices/00:0e/resources?

% cat /sys/bus/pnp/devices/00:0e/resources
state = active
io 0x378-0x37f
io 0x778-0x77b
irq 7
dma 1

IRQ 7.  That would certainly explain why I was seeing massive timeouts
when the driver chose to use IRQ 3. ;)

I'll test-drive your patch from Monday's e-mail when I get home tonight.


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

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

* Re: 2.6.23-rc1-mm1
  2007-07-30 22:18         ` 2.6.23-rc1-mm1 Satyam Sharma
@ 2007-07-31  1:21           ` Dave Young
  0 siblings, 0 replies; 132+ messages in thread
From: Dave Young @ 2007-07-31  1:21 UTC (permalink / raw)
  To: Satyam Sharma
  Cc: Christoph Hellwig, Andrew Morton, Grant Wilson, linux-kernel

>On 7/30/07, Satyam Sharma <satyam@infradead.org> wrote:
>
>
> On Mon, 30 Jul 2007, Christoph Hellwig wrote:
>
> > On Mon, Jul 30, 2007 at 11:27:20AM -0700, Andrew Morton wrote:
> > > ho hum, crap.  Yes, ioctl_by_bdev() doesn't have a file* and so it makes
> > > unlocked_ioctl() rather tricky.  We could cook up a `struct file' on the
> > > stack (we do that in various places), but that sucks.
> > >
> > > Christoph, have you any clever suggestions?
> >
> > There's two ways to deal with it, one ugly and quick and one to do it
> > right.
> >
> > The quick hack is to fake up a file struct similar to blkdev_get().
>
Why pick file as param in unlocked_ioctl, why not inode, could someone
explain this? THX.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-28 18:42     ` Gabriel C
@ 2007-07-31  8:32       ` Jarek Poplawski
  2007-07-31 10:14         ` Gabriel C
  0 siblings, 1 reply; 132+ messages in thread
From: Jarek Poplawski @ 2007-07-31  8:32 UTC (permalink / raw)
  To: Gabriel C; +Cc: Andrew Morton, linux-kernel, netdev, jason.wessel, amitkale

On 28-07-2007 20:42, Gabriel C wrote:
> Andrew Morton wrote:
>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
>>
>>> Hi,
>>>
>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
>>>
>>> ...
>>>
>>> net/core/netpoll.c: In function 'netpoll_poll':
>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
>>> net/core/netpoll.c: In function 'netpoll_setup':
>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
>>> make[2]: *** [net/core/netpoll.o] Error 1
>>> make[1]: *** [net/core] Error 2
>>> make: *** [net] Error 2
>>> make: *** Waiting for unfinished jobs....
>>>
>>> ...
>>>
>>>
>>> I think is because KGDBOE selects just NETPOLL.
>>>
>> Looks like it.
>>
>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
>> remains evil.
...
> I think there may be a logical issue ( again if I got it right ).
> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
> 
> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 

IMHO, the only logical issue here is netpoll.c mustn't use 
CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
add this dependency itself.

Cheers,
Jarek P. 

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-31  8:32       ` Jarek Poplawski
@ 2007-07-31 10:14         ` Gabriel C
  2007-07-31 11:44           ` Jason Wessel
  2007-07-31 12:17           ` Jarek Poplawski
  0 siblings, 2 replies; 132+ messages in thread
From: Gabriel C @ 2007-07-31 10:14 UTC (permalink / raw)
  To: Jarek Poplawski
  Cc: Andrew Morton, linux-kernel, netdev, jason.wessel, amitkale

Jarek Poplawski wrote:
> On 28-07-2007 20:42, Gabriel C wrote:
>> Andrew Morton wrote:
>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
>>>>
>>>> ...
>>>>
>>>> net/core/netpoll.c: In function 'netpoll_poll':
>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
>>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
>>>> net/core/netpoll.c: In function 'netpoll_setup':
>>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
>>>> make[2]: *** [net/core/netpoll.o] Error 1
>>>> make[1]: *** [net/core] Error 2
>>>> make: *** [net] Error 2
>>>> make: *** Waiting for unfinished jobs....
>>>>
>>>> ...
>>>>
>>>>
>>>> I think is because KGDBOE selects just NETPOLL.
>>>>
>>> Looks like it.
>>>
>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
>>> remains evil.
> ...
>> I think there may be a logical issue ( again if I got it right ).
>> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
>>
>> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 
> 
> IMHO, the only logical issue here is netpoll.c mustn't use 
> CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
> add this dependency itself.
> 

Well it does if NETDEVICES && if NET_ETHERNET which booth are N when !NETDEVICES is why KGDBOE uses select and not depends on.

Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?

> Cheers,
> Jarek P. 
> 


Gabriel

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-31 10:14         ` Gabriel C
@ 2007-07-31 11:44           ` Jason Wessel
  2007-07-31 12:47             ` Jarek Poplawski
  2007-07-31 12:17           ` Jarek Poplawski
  1 sibling, 1 reply; 132+ messages in thread
From: Jason Wessel @ 2007-07-31 11:44 UTC (permalink / raw)
  To: Gabriel C; +Cc: Jarek Poplawski, Andrew Morton, linux-kernel, netdev, amitkale

Gabriel C wrote:
> Jarek Poplawski wrote:
>   
>> On 28-07-2007 20:42, Gabriel C wrote:
>>     
>>> Andrew Morton wrote:
>>>       
>>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
>>>>
>>>>         
>>>>> Hi,
>>>>>
>>>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
>>>>>
>>>>> ...
>>>>>
>>>>> net/core/netpoll.c: In function 'netpoll_poll':
>>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
>>>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
>>>>> net/core/netpoll.c: In function 'netpoll_setup':
>>>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
>>>>> make[2]: *** [net/core/netpoll.o] Error 1
>>>>> make[1]: *** [net/core] Error 2
>>>>> make: *** [net] Error 2
>>>>> make: *** Waiting for unfinished jobs....
>>>>>
>>>>> ...
>>>>>
>>>>>
>>>>> I think is because KGDBOE selects just NETPOLL.
>>>>>
>>>>>           
>>>> Looks like it.
>>>>
>>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
>>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
>>>> remains evil.
>>>>         
>> ...
>>     
>>> I think there may be a logical issue ( again if I got it right ).
>>> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
>>>
>>> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 
>>>       
>> IMHO, the only logical issue here is netpoll.c mustn't use 
>> CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
>> add this dependency itself.
>>
>>     
>
> Well it does if NETDEVICES && if NET_ETHERNET which booth are N when !NETDEVICES is why KGDBOE uses select and not depends on.
>
> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?
>   

kgdboe is completely useless without a network card that has a polling 
driver.  It seems to me that the simple and easy fix is to set it to 
depend on NETDEVICES but allow it to use select on NETPOLL.

Would that seem reasonable?

Jason.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-31 10:14         ` Gabriel C
  2007-07-31 11:44           ` Jason Wessel
@ 2007-07-31 12:17           ` Jarek Poplawski
  2007-07-31 15:05             ` Gabriel C
  1 sibling, 1 reply; 132+ messages in thread
From: Jarek Poplawski @ 2007-07-31 12:17 UTC (permalink / raw)
  To: Gabriel C; +Cc: Andrew Morton, linux-kernel, netdev, jason.wessel, amitkale

On Tue, Jul 31, 2007 at 12:14:36PM +0200, Gabriel C wrote:
> Jarek Poplawski wrote:
> > On 28-07-2007 20:42, Gabriel C wrote:
> >> Andrew Morton wrote:
> >>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
> >>>
> >>>> Hi,
> >>>>
> >>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
> >>>>
> >>>> ...
> >>>>
> >>>> net/core/netpoll.c: In function 'netpoll_poll':
> >>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
> >>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
> >>>> net/core/netpoll.c: In function 'netpoll_setup':
> >>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
> >>>> make[2]: *** [net/core/netpoll.o] Error 1
> >>>> make[1]: *** [net/core] Error 2
> >>>> make: *** [net] Error 2
> >>>> make: *** Waiting for unfinished jobs....
> >>>>
> >>>> ...
> >>>>
> >>>>
> >>>> I think is because KGDBOE selects just NETPOLL.
> >>>>
> >>> Looks like it.
> >>>
> >>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
> >>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
> >>> remains evil.
> > ...
> >> I think there may be a logical issue ( again if I got it right ).
> >> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
> >>
> >> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 
> > 
> > IMHO, the only logical issue here is netpoll.c mustn't use 
> > CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
> > add this dependency itself.
> > 
> 
> Well it does if NETDEVICES && if NET_ETHERNET which booth are N when !NETDEVICES is why KGDBOE uses select and not depends on.

"does if XXX" means may "use if XXX".

> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?

Why kgdboe should care what netpoll needs? So, I hope, you are adding
this select under config NETPOLL. On the other hand, if NETPOLL should
depend on NET_POLL_CONTROLLER there is probably no reason to have them
both.

The "does it work" question isn't logical issue, so it's irrelevant
here...

Jarek P.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-31 11:44           ` Jason Wessel
@ 2007-07-31 12:47             ` Jarek Poplawski
  0 siblings, 0 replies; 132+ messages in thread
From: Jarek Poplawski @ 2007-07-31 12:47 UTC (permalink / raw)
  To: Jason Wessel; +Cc: Gabriel C, Andrew Morton, linux-kernel, netdev, amitkale

On Tue, Jul 31, 2007 at 06:44:52AM -0500, Jason Wessel wrote:
...
> kgdboe is completely useless without a network card that has a polling 
> driver.  It seems to me that the simple and easy fix is to set it to 
> depend on NETDEVICES but allow it to use select on NETPOLL.

Maybe I miss your point but polling drivers don't need NETPOLL
to work (unless you need netconsole). But I don't know if there
is any easy method to check such driver's dependency with select.

Jarek P.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-31 12:17           ` Jarek Poplawski
@ 2007-07-31 15:05             ` Gabriel C
  2007-08-01  9:59               ` Jarek Poplawski
  0 siblings, 1 reply; 132+ messages in thread
From: Gabriel C @ 2007-07-31 15:05 UTC (permalink / raw)
  To: Jarek Poplawski
  Cc: Andrew Morton, linux-kernel, netdev, jason.wessel, amitkale

Jarek Poplawski wrote:
> On Tue, Jul 31, 2007 at 12:14:36PM +0200, Gabriel C wrote:
>> Jarek Poplawski wrote:
>>> On 28-07-2007 20:42, Gabriel C wrote:
>>>> Andrew Morton wrote:
>>>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
>>>>>>
>>>>>> ...
>>>>>>
>>>>>> net/core/netpoll.c: In function 'netpoll_poll':
>>>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
>>>>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
>>>>>> net/core/netpoll.c: In function 'netpoll_setup':
>>>>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
>>>>>> make[2]: *** [net/core/netpoll.o] Error 1
>>>>>> make[1]: *** [net/core] Error 2
>>>>>> make: *** [net] Error 2
>>>>>> make: *** Waiting for unfinished jobs....
>>>>>>
>>>>>> ...
>>>>>>
>>>>>>
>>>>>> I think is because KGDBOE selects just NETPOLL.
>>>>>>
>>>>> Looks like it.
>>>>>
>>>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
>>>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
>>>>> remains evil.
>>> ...
>>>> I think there may be a logical issue ( again if I got it right ).
>>>> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
>>>>
>>>> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 
>>> IMHO, the only logical issue here is netpoll.c mustn't use 
>>> CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
>>> add this dependency itself.
>>>
>> Well it does if NETDEVICES && if NET_ETHERNET which booth are N when !NETDEVICES is why KGDBOE uses select and not depends on.
> 
> "does if XXX" means may "use if XXX".

>From what I know means only use "if xxx" on !xxx everything inside the "if xxx" is n and "depends on <something inside the if xxx> 
does not work.

...

menuconfig FOO
	bool "FOO"
	depends on BAR
	default y 
	-- help --
	something
if FOO

config BAZ
	depends on WHATEVR && !NOT_THIS

menuconfig SOMETHING_ELSE
	....
if SOMETHING_ELSE

config BLUBB
	depends on PCI && WHATNOT

endif # SOMETHING_ELSE

config NETPOLL
        def_bool NETCONSOLE
        
config NETPOLL_TRAP
        bool "Netpoll traffic trapping"
        default n
        depends on NETPOLL
          
config NET_POLL_CONTROLLER
        def_bool NETPOLL

endif # FOO

Now if you set FOO=n all is gone and your driver have to select whatever it needs from there.

> 
>> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
>> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?
> 
> Why kgdboe should care what netpoll needs? So, I hope, you are adding
> this select under config NETPOLL. On the other hand, if NETPOLL should
> depend on NET_POLL_CONTROLLER there is probably no reason to have them
> both.

NET_POLL_CONTROLLER has def_bool NETPOLL if NETDEVICES .

Net peoples ping ?:)

> 
> The "does it work" question isn't logical issue, so it's irrelevant
> here...

Right irrelevant for the compile error but relevant for the fix in my opinion.

> 
> Jarek P.
> 

Gabriel

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-30 23:53           ` Valdis.Kletnieks
@ 2007-07-31 18:48             ` Valdis.Kletnieks
  2007-07-31 20:01               ` Bjorn Helgaas
  0 siblings, 1 reply; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-31 18:48 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

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

On Mon, 30 Jul 2007 19:53:19 EDT, Valdis.Kletnieks@vt.edu said:

> > > Just for the record, I see this in /sys:
> > > 
> > > % cat /sys/bus/pnp/devices/00:0e/id
> > > BCM0102
> > > PNP0c31
> > 
> > What's in /sys/bus/pnp/devices/00:0e/resources?
> 
> % cat /sys/bus/pnp/devices/00:0e/resources
> state = active
> io 0x378-0x37f
> io 0x778-0x77b
> irq 7
> dma 1

Scratch that.  When I wrote the first note, I was at home, and the TPM chip
did its PNP thing and became 00:0e.  I failed to notice that in my reply,
I was at work, and the printer port on the docking station became 00:0e and
the TPM became 00:0f.

% cat /sys/devices/pnp0/00:0f/id
BCM0102
PNP0c31
% cat /sys/devices/pnp0/00:0f/resources 
state = active
io 0xcb0-0xcbb
mem 0xfed40000-0xfed44fff

So there *isn't* an IRQ assigned.  When I tried the patch you sent,
I added a few debugging printk's, thusly:

        if (interrupts)
                chip->vendor.irq = irq;
printk(KERN_DEBUG "in tis_init, interrupts=%d irq=%d\n",interrupts,irq);
        if (interrupts && !chip->vendor.irq) {
                chip->vendor.irq =
                    ioread8(chip->vendor.iobase +
                            TPM_INT_VECTOR(chip->vendor.locality));
printk(KERN_DEBUG "after ioread8, interrupts=%d irq=%d\n",interrupts,chip->vendor.irq);

                for (i = 3; i < 16 && chip->vendor.irq == 0; i++) {

[ 1971.644193] in pnp_init, start=fed40000 len=5000 irq=-1
[ 1971.650907] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[ 1971.650923] in tis_init, interrupts=1 irq=-1
[ 1971.650929] tpm_tis 00:0f: Unable to request irq: -1 for use

and it loads immediately.

I thought that !chip->vendor.irq looked like a wrong test, because if the
chip says '-1' meaning "no default assigned", and conversely, if the chip
had a positive number, we should be *using* that IRQ if we can, rather than
looping from 3 to 15 looking for one. So I tried it with (chip->vendor.irc < 0),
and this happened:

[ 2254.834377] in pnp_init, start=fed40000 len=5000 irq=-1
[ 2254.840422] tpm_tis 00:0f: 1.2 TPM (device-id 0x1001, rev-id 2)
[ 2254.840438] in tis_init, interrupts=1 irq=-1
[ 2254.840443] after ioread8, interrupts=1 irq=15
[ 2254.840457] tpm0 (IRQ 15) handled a spurious interrupt
[ 2256.839077] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62
[ 2376.771347] tpm_tis 00:0f: tpm_transmit: tpm_send: error -62

Or am I wrong in thinking chip->vendor.irq == -1 means "Pick me an IRQ",
but instead means "I don't do that IRQ thing"? If so, maybe what we need
to be doing is something like:

	if (chip->vendor.irq == -1)
		interrupts = 0;

and force the use of interrupts off and do polling only?

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

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

* Re: [-mm patch] USB: make dev_attr_authorized_default static
  2007-07-29 14:58 ` [-mm patch] USB: make dev_attr_authorized_default static Adrian Bunk
@ 2007-07-31 19:13   ` Inaky Perez-Gonzalez
  0 siblings, 0 replies; 132+ messages in thread
From: Inaky Perez-Gonzalez @ 2007-07-31 19:13 UTC (permalink / raw)
  To: Adrian Bunk
  Cc: Andrew Morton, Greg Kroah-Hartman, linux-kernel, linux-usb-devel

On Sunday 29 July 2007 07:58, Adrian Bunk wrote:
> -DEVICE_ATTR(authorized_default, 0644,
> -	    usb_host_authorized_default_show,
> -	    usb_host_authorized_default_store);
> +static DEVICE_ATTR(authorized_default, 0644,
> > +		   usb_host_authorized_default_show, 

Ack, patchset updated -- thanks!

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-31 18:48             ` Valdis.Kletnieks
@ 2007-07-31 20:01               ` Bjorn Helgaas
  2007-07-31 21:31                 ` Valdis.Kletnieks
  0 siblings, 1 reply; 132+ messages in thread
From: Bjorn Helgaas @ 2007-07-31 20:01 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

On Tuesday 31 July 2007 12:48:29 pm Valdis.Kletnieks@vt.edu wrote:
> Scratch that.  When I wrote the first note, I was at home, and the TPM chip
> did its PNP thing and became 00:0e.  I failed to notice that in my reply,
> I was at work, and the printer port on the docking station became 00:0e and
> the TPM became 00:0f.
> 
> % cat /sys/devices/pnp0/00:0f/id
> BCM0102
> PNP0c31
> % cat /sys/devices/pnp0/00:0f/resources 
> state = active
> io 0xcb0-0xcbb
> mem 0xfed40000-0xfed44fff
> 
> So there *isn't* an IRQ assigned.

Interesting.  I should have noticed that the first resources looked like
a parallel port.  I've been looking at those recently because they're
also broken :-)

So, the BIOS is telling us that at least as currently configured, the
TPM can't use interrupts.  /sys/devices/pnp0/00:0f/options should have
all the *possible* TPM configurations.  I would guess that none of them
shows an IRQ either.

In general, if the BIOS says there's no interrupt, we should not poke
around looking for one unless we think there's a BIOS defect.  I think
you said that under 2.6.22-rc6-mm1, the TPM didn't find a working
interrupt either.

> Or am I wrong in thinking chip->vendor.irq == -1 means "Pick me an IRQ",
> but instead means "I don't do that IRQ thing"? If so, maybe what we need
> to be doing is something like:
> 
> 	if (chip->vendor.irq == -1)
> 		interrupts = 0;
> 
> and force the use of interrupts off and do polling only?

Yup, I hadn't considered the case of BIOS not telling us an interrupt
for the device.  In that case, I think we should force interrupts off
as you suggest.  Here's the patch I would propose:

Index: w/drivers/char/tpm/tpm_tis.c
===================================================================
--- w.orig/drivers/char/tpm/tpm_tis.c	2007-07-31 09:15:43.000000000 -0600
+++ w/drivers/char/tpm/tpm_tis.c	2007-07-31 13:58:55.000000000 -0600
@@ -433,17 +433,12 @@
 MODULE_PARM_DESC(interrupts, "Enable interrupts");
 
 static int tpm_tis_init(struct device *dev, resource_size_t start,
-			resource_size_t len)
+			resource_size_t len, unsigned int irq)
 {
 	u32 vendor, intfcaps, intmask;
 	int rc, i;
 	struct tpm_chip *chip;
 
-	if (!start)
-		start = TIS_MEM_BASE;
-	if (!len)
-		len = TIS_MEM_LEN;
-
 	if (!(chip = tpm_register_hardware(dev, &tpm_tis)))
 		return -ENODEV;
 
@@ -510,7 +505,9 @@
 	iowrite32(intmask,
 		  chip->vendor.iobase +
 		  TPM_INT_ENABLE(chip->vendor.locality));
-	if (interrupts) {
+	if (interrupts)
+		chip->vendor.irq = irq;
+	if (interrupts && !chip->vendor.irq) {
 		chip->vendor.irq =
 		    ioread8(chip->vendor.iobase +
 			    TPM_INT_VECTOR(chip->vendor.locality));
@@ -595,10 +592,17 @@
 				      const struct pnp_device_id *pnp_id)
 {
 	resource_size_t start, len;
+	unsigned int irq = 0;
+
 	start = pnp_mem_start(pnp_dev, 0);
 	len = pnp_mem_len(pnp_dev, 0);
 
-	return tpm_tis_init(&pnp_dev->dev, start, len);
+	if (pnp_irq_valid(pnp_dev, 0))
+		irq = pnp_irq(pnp_dev, 0);
+	else
+		interrupts = 0;
+
+	return tpm_tis_init(&pnp_dev->dev, start, len, irq);
 }
 
 static int tpm_tis_pnp_suspend(struct pnp_dev *dev, pm_message_t msg)
@@ -658,7 +662,7 @@
 			return rc;
 		if (IS_ERR(pdev=platform_device_register_simple("tpm_tis", -1, NULL, 0)))
 			return PTR_ERR(pdev);
-		if((rc=tpm_tis_init(&pdev->dev, 0, 0)) != 0) {
+		if((rc=tpm_tis_init(&pdev->dev, TIS_MEM_BASE, TIS_MEM_LEN, 0)) != 0) {
 			platform_device_unregister(pdev);
 			driver_unregister(&tis_drv);
 		}


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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-31 20:01               ` Bjorn Helgaas
@ 2007-07-31 21:31                 ` Valdis.Kletnieks
  2007-07-31 23:05                   ` Bjorn Helgaas
  0 siblings, 1 reply; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-07-31 21:31 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

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

On Tue, 31 Jul 2007 14:01:21 MDT, Bjorn Helgaas said:

> So, the BIOS is telling us that at least as currently configured, the
> TPM can't use interrupts.  /sys/devices/pnp0/00:0f/options should have
> all the *possible* TPM configurations.  I would guess that none of them
> shows an IRQ either.

Hmm.. Oddness. Looks empty:

# cat /sys/devices/pnp0/00\:0f/options | wc
      0       0       0

Or is that expected if the chipset has one cast-in-stone/ROM config?

> In general, if the BIOS says there's no interrupt, we should not poke
> around looking for one unless we think there's a BIOS defect.  I think
> you said that under 2.6.22-rc6-mm1, the TPM didn't find a working
> interrupt either.

> Yup, I hadn't considered the case of BIOS not telling us an interrupt
> for the device.  In that case, I think we should force interrupts off
> as you suggest.  Here's the patch I would propose:

Patch tested, and seems to decide to initialize in polled mode on my
machine, without having to do any /etc/modprobe.conf 'interrupts=0'.
I'm able to run the tpm_demo program from libtpm-2.0, so /dev/tpm0 does
seem to be operational.

You can stick this on the patch and pass it along:

Tested-By: <valdis.kletnieks@vt.edu>

but I'd suggest running a regression test against a chipset that *does*
do IRQs before sending it upstream (if you haven't already)...

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

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

* Re: 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis
  2007-07-31 21:31                 ` Valdis.Kletnieks
@ 2007-07-31 23:05                   ` Bjorn Helgaas
  0 siblings, 0 replies; 132+ messages in thread
From: Bjorn Helgaas @ 2007-07-31 23:05 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Andrew Morton, Kylene Hall, tpm, linux-kernel

On Tuesday 31 July 2007 03:31:43 pm Valdis.Kletnieks@vt.edu wrote:
> On Tue, 31 Jul 2007 14:01:21 MDT, Bjorn Helgaas said:
> > So, the BIOS is telling us that at least as currently configured, the
> > TPM can't use interrupts.  /sys/devices/pnp0/00:0f/options should have
> > all the *possible* TPM configurations.  I would guess that none of them
> > shows an IRQ either.
> 
> Hmm.. Oddness. Looks empty:
> 
> # cat /sys/devices/pnp0/00\:0f/options | wc
>       0       0       0
> 
> Or is that expected if the chipset has one cast-in-stone/ROM config?

"options" is populated using the ACPI _PRS method.  The spec says that
method is optional and non-configurable devices will not provide it.
So I guess that's what you have -- a device with a fixed configuration.

> Patch tested, and seems to decide to initialize in polled mode on my
> machine, without having to do any /etc/modprobe.conf 'interrupts=0'.
> I'm able to run the tpm_demo program from libtpm-2.0, so /dev/tpm0 does
> seem to be operational.
> 
> You can stick this on the patch and pass it along:
> 
> Tested-By: <valdis.kletnieks@vt.edu>
> 
> but I'd suggest running a regression test against a chipset that *does*
> do IRQs before sending it upstream (if you haven't already)...

Yes.  I don't think I have a box with a TIS TPM on it, but I hope
Kylene does and will comment on this approach.

I notice Andrew put it in -mm already.  I'll be on vacation for the
next couple weeks, so I won't be able to poke at this for a while.
Here's the changelog I would insert (for tpm_tis-fix-interrupt-probing.patch):


[patch] tpm: pay attention to IRQ info from PNP

If we discover the TIS TPM device via PNP, use the PNP IRQ information
rather than probing for an IRQ.  If PNP shows no IRQ, run the TPM in
polling mode.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-07-31 15:05             ` Gabriel C
@ 2007-08-01  9:59               ` Jarek Poplawski
  2007-08-02  2:02                 ` Matt Mackall
  0 siblings, 1 reply; 132+ messages in thread
From: Jarek Poplawski @ 2007-08-01  9:59 UTC (permalink / raw)
  To: Gabriel C; +Cc: Andrew Morton, linux-kernel, netdev, jason.wessel, amitkale

On Tue, Jul 31, 2007 at 05:05:00PM +0200, Gabriel C wrote:
> Jarek Poplawski wrote:
> > On Tue, Jul 31, 2007 at 12:14:36PM +0200, Gabriel C wrote:
> >> Jarek Poplawski wrote:
> >>> On 28-07-2007 20:42, Gabriel C wrote:
> >>>> Andrew Morton wrote:
> >>>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
> >>>>>
> >>>>>> Hi,
> >>>>>>
> >>>>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
> >>>>>>
> >>>>>> ...
> >>>>>>
> >>>>>> net/core/netpoll.c: In function 'netpoll_poll':
> >>>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
> >>>>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
> >>>>>> net/core/netpoll.c: In function 'netpoll_setup':
> >>>>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
> >>>>>> make[2]: *** [net/core/netpoll.o] Error 1
> >>>>>> make[1]: *** [net/core] Error 2
> >>>>>> make: *** [net] Error 2
> >>>>>> make: *** Waiting for unfinished jobs....
> >>>>>>
> >>>>>> ...
> >>>>>>
> >>>>>>
> >>>>>> I think is because KGDBOE selects just NETPOLL.
> >>>>>>
> >>>>> Looks like it.
> >>>>>
> >>>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
> >>>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
> >>>>> remains evil.
> >>> ...
> >>>> I think there may be a logical issue ( again if I got it right ).
> >>>> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
> >>>>
> >>>> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 
> >>> IMHO, the only logical issue here is netpoll.c mustn't use 
> >>> CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
> >>> add this dependency itself.
> >>>
> >> Well it does if NETDEVICES && if NET_ETHERNET which booth are N when !NETDEVICES is why KGDBOE uses select and not depends on.
> > 
> > "does if XXX" means may "use if XXX".
> 
> From what I know means only use "if xxx" on !xxx everything inside the "if xxx" is n and "depends on <something inside the if xxx> 
> does not work.
> 
> ...
> 
> menuconfig FOO
> 	bool "FOO"
> 	depends on BAR
> 	default y 
> 	-- help --
> 	something
> if FOO
> 
> config BAZ
> 	depends on WHATEVR && !NOT_THIS
> 
> menuconfig SOMETHING_ELSE
> 	....
> if SOMETHING_ELSE
> 
> config BLUBB
> 	depends on PCI && WHATNOT
> 
> endif # SOMETHING_ELSE
> 
> config NETPOLL
>         def_bool NETCONSOLE
>         
> config NETPOLL_TRAP
>         bool "Netpoll traffic trapping"
>         default n
>         depends on NETPOLL
>           
> config NET_POLL_CONTROLLER
>         def_bool NETPOLL
> 
> endif # FOO
> 
> Now if you set FOO=n all is gone and your driver have to select whatever it needs from there.

Probably not exactly so...

>From drivers/net/Kconfig:

> # All the following symbols are dependent on NETDEVICES - do not repeat
> # that for each of the symbols.
> if NETDEVICES

So, according to this netpoll could presume NETDEVICES and
NET_POLL_CONTROLLER are always on.

But, as you've found, it's possible to select NETPOLL and !NETDEVICES,
so this comment is at least not precise.

On the other side something like this:

...
endif # NETDEVICES

config NETPOLL
        depends on NETDEVICES
        def_bool NETCONSOLE

config NETPOLL_TRAP
        bool "Netpoll traffic trapping"
        default n
        depends on NETPOLL

config NET_POLL_CONTROLLER
        def_bool NETPOLL
        depends on NETPOLL


seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
still doesn't check for NETDEVICES dependency.

> 
> > 
> >> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
> >> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?
> > 
> > Why kgdboe should care what netpoll needs? So, I hope, you are adding
> > this select under config NETPOLL. On the other hand, if NETPOLL should
> > depend on NET_POLL_CONTROLLER there is probably no reason to have them
> > both.
> 
> NET_POLL_CONTROLLER has def_bool NETPOLL if NETDEVICES .
> 
> Net peoples ping ?:)

OK, I wasn't right here: there is no visible reason for both in the
kernel code, but I can imagine there could be some external users of
NET_POLL_CONTROLLER without NETPOLL.

> 
> > 
> > The "does it work" question isn't logical issue, so it's irrelevant
> > here...
> 
> Right irrelevant for the compile error but relevant for the fix in my opinion.

This was kind of joking, but since some people prefer things to work,
and it's hard to do this right (logical) way, some strange (unlogical)
measures have to be done like repeating dependencies here.

Regards,
Jarek P.

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

* Re: 2.6.23-rc1-mm1 - loopback mount of files fails loop-use-unlocked_ioctl.patch
  2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
                   ` (32 preceding siblings ...)
  2007-07-29 15:49 ` 2.6.23-rc1-mm1 Grant Wilson
@ 2007-08-01 15:24 ` Valdis.Kletnieks
  33 siblings, 0 replies; 132+ messages in thread
From: Valdis.Kletnieks @ 2007-08-01 15:24 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

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

On Wed, 25 Jul 2007 04:03:04 PDT, Andrew Morton said:

> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc1/2.6.23-rc1-mm1/

Looks like -rc1-mm2 came out while I was hunting this, haven't tried that yet)

File-backed loopback seems to be broken (note that I use a LVM volume with
a 'mount -o loop,encryption=aes /dev/mapper/...' every day - that *does* work).

loop-use-unlocked_ioctl.patch is the offender after bisecting.

I had created an ISO image with genisoimage, and to test it, I had done:

mount -o loop.ro /path/to/temp.iso /mnt

(Note that the image itself is good - I burned it to a CD, and then
'mount /dev/cdrom /mnt' worked just fine, so it's definitely the loopback,
and on file-backed mounts...).

and got treated to this wonderful oops:

[  170.420603] Unable to handle kernel NULL pointer dereference at 00000000000000b8 RIP: 
[  170.420877]  [<ffffffff803bf9b1>] lo_ioctl+0x21/0x94a
[  170.421243] PGD 41c5067 PUD 6111067 PMD 0 
[  170.421464] Oops: 0000 [1] PREEMPT SMP 
[  170.421671] CPU 0 
[  170.421775] Modules linked in: sha256 aes video output thermal processor fan container button bay battery ac nvram pcmcia firmware_class ohci1394 yenta_socket ieee1394 rsrc_nonstatic iTCO_wdt pcmcia_core iTCO_vendor_support intel_agp rtc
[  170.422989] Pid: 1616, comm: mount Not tainted 2.6.23-rc1 #3
[  170.423254] RIP: 0010:[<ffffffff803bf9b1>]  [<ffffffff803bf9b1>] lo_ioctl+0x21/0x94a
[  170.423627] RSP: 0018:ffff8100047076d8  EFLAGS: 00010296
[  170.423876] RAX: ffffffff80698720 RBX: 00000000fffffdfd RCX: ffffffff803bf990
[  170.424210] RDX: ffff810004707b18 RSI: 0000000000005310 RDI: 0000000000000000
[  170.424544] RBP: ffff8100047078d8 R08: ffff810004707b18 R09: ffff810004707968
[  170.424878] R10: ffff810004707b18 R11: ffff810004707b18 R12: 0000000000005310
[  170.425212] R13: ffff810004707b18 R14: ffff810004707b18 R15: 0000000000000000
[  170.425547] FS:  00002b82792a4740(0000) GS:ffffffff806e1000(0000) knlGS:0000000000000000
[  170.425928] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  170.426197] CR2: 00000000000000b8 CR3: 000000000610b000 CR4: 00000000000006e0
[  170.426531] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  170.439502] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  170.452460] Process mount (pid: 1616, threadinfo ffff810004706000, task ffff810006898800)
[  170.465758] Stack:  0000003900000044 ffff810006898800 0000000000000000 ffff810006812588
[  170.479365]  0000000005071980 0000000000000007 0000000000000000 0000000000000044
[  170.493151]  0000000000100000 ffff8100047077b8 ffff8100047077a8 ffffffff8031facb
[  170.493517] Call Trace:
[  170.520574]  [<ffffffff8031facb>] avc_has_perm+0x4c/0x5e
[  170.534308]  [<ffffffff80320994>] inode_has_perm+0x6b/0x7a
[  170.547974]  [<ffffffff8029c126>] __d_lookup+0xe1/0x154
[  170.561721]  [<ffffffff80346bf7>] kobject_get+0x1a/0x21
[  170.575187]  [<ffffffff8033e29c>] get_disk+0x8d/0xad
[  170.588601]  [<ffffffff8033e2c8>] exact_lock+0xc/0x14
[  170.601969]  [<ffffffff803bc688>] kobj_lookup+0x14d/0x183
[  170.615253]  [<ffffffff8033d5e2>] blkdev_driver_ioctl+0x39/0x78
[  170.628545]  [<ffffffff8033dc7c>] blkdev_ioctl+0x65b/0x6b7
[  170.641836]  [<ffffffff802b082a>] __blkdev_get+0x7b/0x8d
[  170.655105]  [<ffffffff802b0a65>] ioctl_by_bdev+0x34/0x48
[  170.668432]  [<ffffffff802fbcff>] isofs_fill_super+0x337/0xa68
[  170.681666]  [<ffffffff80519ec2>] __down_write_nested+0x3d/0xab
[  170.694896]  [<ffffffff80519f3b>] __down_write+0xb/0xd
[  170.707835]  [<ffffffff8028c412>] sget+0x374/0x386
[  170.720528]  [<ffffffff8028bec8>] set_bdev_super+0x0/0x14
[  170.733267]  [<ffffffff8028cfbb>] get_sb_bdev+0x109/0x157
[  170.745881]  [<ffffffff802fb9c8>] isofs_fill_super+0x0/0xa68
[  170.758382]  [<ffffffff802fb445>] isofs_get_sb+0x13/0x15
[  170.770713]  [<ffffffff8028cac2>] vfs_kern_mount+0x90/0x11a
[  170.782999]  [<ffffffff8028cba5>] do_kern_mount+0x47/0xe2
[  170.795245]  [<ffffffff802a1d70>] do_mount+0x691/0x704
[  170.807349]  [<ffffffff802a06cb>] mntput_no_expire+0x1e/0x98
[  170.819351]  [<ffffffff80294b13>] link_path_walk+0xe8/0xfc
[  170.831216]  [<ffffffff802b0232>] bdput+0xd/0xf
[  170.843065]  [<ffffffff802a06cb>] mntput_no_expire+0x1e/0x98
[  170.854874]  [<ffffffff80294b43>] path_walk+0x1c/0x1e
[  170.866566]  [<ffffffff80294e38>] do_path_lookup+0x1b6/0x22f
[  170.878247]  [<ffffffff802937a1>] putname+0x37/0x39
[  170.889781]  [<ffffffff802957a1>] __user_walk_fd+0x4c/0x5c
[  170.901309]  [<ffffffff8026e055>] __alloc_pages+0x5c/0x2b5
[  170.912789]  [<ffffffff802a06cb>] mntput_no_expire+0x1e/0x98
[  170.924359]  [<ffffffff802a1e6c>] sys_mount+0x89/0xcb
[  170.935859]  [<ffffffff8023ea8b>] sys_rt_sigprocmask+0x58/0xd7
[  170.947361]  [<ffffffff8020bece>] system_call+0x7e/0x83
[  170.958877] 
[  170.970241] 
[  170.970241] Code: 48 8b 87 b8 00 00 00 48 8b 18 48 8b 83 e8 01 00 00 48 8b 80 
[  170.993080] RIP  [<ffffffff803bf9b1>] lo_ioctl+0x21/0x94a
[  171.004333]  RSP <ffff8100047076d8>
[  171.015387] CR2: 00000000000000b8
[  171.029069] mount used greatest stack depth: 3304 bytes left


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

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-01  9:59               ` Jarek Poplawski
@ 2007-08-02  2:02                 ` Matt Mackall
  2007-08-02  9:00                   ` Jarek Poplawski
  2007-08-02  9:36                   ` Sam Ravnborg
  0 siblings, 2 replies; 132+ messages in thread
From: Matt Mackall @ 2007-08-02  2:02 UTC (permalink / raw)
  To: Jarek Poplawski
  Cc: Gabriel C, Andrew Morton, linux-kernel, netdev, jason.wessel,
	amitkale, Sam Ravnborg

On Wed, Aug 01, 2007 at 11:59:21AM +0200, Jarek Poplawski wrote:
> On Tue, Jul 31, 2007 at 05:05:00PM +0200, Gabriel C wrote:
> > Jarek Poplawski wrote:
> > > On Tue, Jul 31, 2007 at 12:14:36PM +0200, Gabriel C wrote:
> > >> Jarek Poplawski wrote:
> > >>> On 28-07-2007 20:42, Gabriel C wrote:
> > >>>> Andrew Morton wrote:
> > >>>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
> > >>>>>
> > >>>>>> Hi,
> > >>>>>>
> > >>>>>> I got this compile error with a randconfig ( http://194.231.229.228/MM/randconfig-auto-82.broken.netpoll.c ).
> > >>>>>>
> > >>>>>> ...
> > >>>>>>
> > >>>>>> net/core/netpoll.c: In function 'netpoll_poll':
> > >>>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
> > >>>>>> net/core/netpoll.c:159: error: 'struct net_device' has no member named 'poll_controller'
> > >>>>>> net/core/netpoll.c: In function 'netpoll_setup':
> > >>>>>> net/core/netpoll.c:670: error: 'struct net_device' has no member named 'poll_controller'
> > >>>>>> make[2]: *** [net/core/netpoll.o] Error 1
> > >>>>>> make[1]: *** [net/core] Error 2
> > >>>>>> make: *** [net] Error 2
> > >>>>>> make: *** Waiting for unfinished jobs....
> > >>>>>>
> > >>>>>> ...
> > >>>>>>
> > >>>>>>
> > >>>>>> I think is because KGDBOE selects just NETPOLL.
> > >>>>>>
> > >>>>> Looks like it.
> > >>>>>
> > >>>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
> > >>>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
> > >>>>> remains evil.
> > >>> ...
> > >>>> I think there may be a logical issue ( again if I got it right ).
> > >>>> We need some ethernet card to work with kgdboe right ? but we don't have any if !NETDEVICES && !NET_ETHERNET.
> > >>>>
> > >>>> So maybe some ' depends on ... && NETDEVICES!=n && NET_ETHERNET!=n ' is needed too ? 
> > >>> IMHO, the only logical issue here is netpoll.c mustn't use 
> > >>> CONFIG_NET_POLL_CONTROLLER code without #ifdef if it doesn't
> > >>> add this dependency itself.
> > >>>
> > >> Well it does if NETDEVICES && if NET_ETHERNET which booth are N when !NETDEVICES is why KGDBOE uses select and not depends on.
> > > 
> > > "does if XXX" means may "use if XXX".
> > 
> > From what I know means only use "if xxx" on !xxx everything inside the "if xxx" is n and "depends on <something inside the if xxx> 
> > does not work.
> > 
> > ...
> > 
> > menuconfig FOO
> > 	bool "FOO"
> > 	depends on BAR
> > 	default y 
> > 	-- help --
> > 	something
> > if FOO
> > 
> > config BAZ
> > 	depends on WHATEVR && !NOT_THIS
> > 
> > menuconfig SOMETHING_ELSE
> > 	....
> > if SOMETHING_ELSE
> > 
> > config BLUBB
> > 	depends on PCI && WHATNOT
> > 
> > endif # SOMETHING_ELSE
> > 
> > config NETPOLL
> >         def_bool NETCONSOLE
> >         
> > config NETPOLL_TRAP
> >         bool "Netpoll traffic trapping"
> >         default n
> >         depends on NETPOLL
> >           
> > config NET_POLL_CONTROLLER
> >         def_bool NETPOLL
> > 
> > endif # FOO
> > 
> > Now if you set FOO=n all is gone and your driver have to select whatever it needs from there.
> 
> Probably not exactly so...
> 
> >From drivers/net/Kconfig:
> 
> > # All the following symbols are dependent on NETDEVICES - do not repeat
> > # that for each of the symbols.
> > if NETDEVICES
> 
> So, according to this netpoll could presume NETDEVICES and
> NET_POLL_CONTROLLER are always on.
> 
> But, as you've found, it's possible to select NETPOLL and !NETDEVICES,
> so this comment is at least not precise.
> 
> On the other side something like this:
> 
> ...
> endif # NETDEVICES
> 
> config NETPOLL
>         depends on NETDEVICES
>         def_bool NETCONSOLE
> 
> config NETPOLL_TRAP
>         bool "Netpoll traffic trapping"
>         default n
>         depends on NETPOLL
> 
> config NET_POLL_CONTROLLER
>         def_bool NETPOLL
>         depends on NETPOLL
> 
> 
> seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> still doesn't check for NETDEVICES dependency.

That's odd. Adding Sam to the cc:.

> > >> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
> > >> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?
> > > 
> > > Why kgdboe should care what netpoll needs? So, I hope, you are adding
> > > this select under config NETPOLL. On the other hand, if NETPOLL should
> > > depend on NET_POLL_CONTROLLER there is probably no reason to have them
> > > both.
> > 
> > NET_POLL_CONTROLLER has def_bool NETPOLL if NETDEVICES .
> > 
> > Net peoples ping ?:)

How about cc:ing the netpoll maintainer?
 
> OK, I wasn't right here: there is no visible reason for both in the
> kernel code, but I can imagine there could be some external users of
> NET_POLL_CONTROLLER without NETPOLL.

I don't know of any. As far as I can tell at this point,
NET_POLL_CONTROLLER == NETPOLL.

-- 
Mathematics is the supreme nostalgia of our time.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02  2:02                 ` Matt Mackall
@ 2007-08-02  9:00                   ` Jarek Poplawski
  2007-08-02 15:59                     ` Matt Mackall
  2007-08-02  9:36                   ` Sam Ravnborg
  1 sibling, 1 reply; 132+ messages in thread
From: Jarek Poplawski @ 2007-08-02  9:00 UTC (permalink / raw)
  To: Matt Mackall
  Cc: Gabriel C, Andrew Morton, linux-kernel, netdev, jason.wessel,
	amitkale, Sam Ravnborg

On Wed, Aug 01, 2007 at 09:02:19PM -0500, Matt Mackall wrote:
> On Wed, Aug 01, 2007 at 11:59:21AM +0200, Jarek Poplawski wrote:
> > On Tue, Jul 31, 2007 at 05:05:00PM +0200, Gabriel C wrote:
> > > Jarek Poplawski wrote:
> > > > On Tue, Jul 31, 2007 at 12:14:36PM +0200, Gabriel C wrote:
> > > >> Jarek Poplawski wrote:
> > > >>> On 28-07-2007 20:42, Gabriel C wrote:
> > > >>>> Andrew Morton wrote:
> > > >>>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
...
> > > >>>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
...
> > > >>>>>> I think is because KGDBOE selects just NETPOLL.
> > > >>>>>>
> > > >>>>> Looks like it.
> > > >>>>>
> > > >>>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
> > > >>>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
> > > >>>>> remains evil.
...
> > seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> > still doesn't check for NETDEVICES dependency.
> 
> That's odd. Adding Sam to the cc:.

Looks right, but after reading Andrew's opinion about select I'd be
astonished if he doesn't know this problem already.

> 
> > > >> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
> > > >> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?
> > > > 
> > > > Why kgdboe should care what netpoll needs? So, I hope, you are adding
> > > > this select under config NETPOLL. On the other hand, if NETPOLL should
> > > > depend on NET_POLL_CONTROLLER there is probably no reason to have them
> > > > both.
> > > 
> > > NET_POLL_CONTROLLER has def_bool NETPOLL if NETDEVICES .
> > > 
> > > Net peoples ping ?:)
> 
> How about cc:ing the netpoll maintainer?

Is there a new one or do you suggest possibility of abusing the
authority of the netpoll's author with such trifles...?!

BTW, I can't find any official meaning of def_bool, but it's name
suggests only default value, so logically it should be not enough
to assure NET_POLL_CONTROLLER=y, and netpoll should use "depends",
"require" or "select" (IMHO more readable too), but on the other
hand this could be practially wrong...

>  
> > OK, I wasn't right here: there is no visible reason for both in the
> > kernel code, but I can imagine there could be some external users of
> > NET_POLL_CONTROLLER without NETPOLL.
> 
> I don't know of any. As far as I can tell at this point,
> NET_POLL_CONTROLLER == NETPOLL.

There are some notions about "other diagnostic tools" in some
net drivers, eg. 3c509.c, so there would be a little bit of
work if, after changing this, they really exist (and even if
not - maybe it's reasonable to save such possibility for the
future?).

Best regards,
Jarek P.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02  2:02                 ` Matt Mackall
  2007-08-02  9:00                   ` Jarek Poplawski
@ 2007-08-02  9:36                   ` Sam Ravnborg
  2007-08-02 10:32                     ` Satyam Sharma
  2007-08-06 11:51                     ` [PATCH] docs: note about select in kconfig-language.txt Jarek Poplawski
  1 sibling, 2 replies; 132+ messages in thread
From: Sam Ravnborg @ 2007-08-02  9:36 UTC (permalink / raw)
  To: Matt Mackall
  Cc: Jarek Poplawski, Gabriel C, Andrew Morton, linux-kernel, netdev,
	jason.wessel, amitkale

> > 
> > ...
> > endif # NETDEVICES
> > 
> > config NETPOLL
> >         depends on NETDEVICES
> >         def_bool NETCONSOLE
> > 
> > config NETPOLL_TRAP
> >         bool "Netpoll traffic trapping"
> >         default n
> >         depends on NETPOLL
> > 
> > config NET_POLL_CONTROLLER
> >         def_bool NETPOLL
> >         depends on NETPOLL
> > 
> > 
> > seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> > still doesn't check for NETDEVICES dependency.
> 
> That's odd. Adding Sam to the cc:.

select is evil....
select will by brute force set a symbol equal to 'y' without
visiting the dependencies.
So abusing select you are able to select a symbol FOO even 
if FOO depends on BAR that is not set.

In general use select only for non-visible symbols (no promts anywhere)
and for symbols with no dependencies.
That will limit the suefullness but on the other hand avoid the illegal
configurations all over.

kconfig should one day warn about such things but I have not fel inclined
to dive into the matters hoping that Roman does one day.

	Sam

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02  9:36                   ` Sam Ravnborg
@ 2007-08-02 10:32                     ` Satyam Sharma
  2007-08-02 11:40                       ` Satyam Sharma
  2007-08-02 11:40                       ` Jarek Poplawski
  2007-08-06 11:51                     ` [PATCH] docs: note about select in kconfig-language.txt Jarek Poplawski
  1 sibling, 2 replies; 132+ messages in thread
From: Satyam Sharma @ 2007-08-02 10:32 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Matt Mackall, Jarek Poplawski, Gabriel C, Andrew Morton,
	linux-kernel, netdev, jason.wessel, amitkale

Hi,


On Thu, 2 Aug 2007, Sam Ravnborg wrote:

> > > 
> > > ...
> > > endif # NETDEVICES
> > > 
> > > config NETPOLL
> > >         depends on NETDEVICES
> > >         def_bool NETCONSOLE
> > > 
> > > config NETPOLL_TRAP
> > >         bool "Netpoll traffic trapping"
> > >         default n
> > >         depends on NETPOLL
> > > 
> > > config NET_POLL_CONTROLLER
> > >         def_bool NETPOLL
> > >         depends on NETPOLL
> > > 
> > > 
> > > seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> > > still doesn't check for NETDEVICES dependency.
> > 
> > That's odd. Adding Sam to the cc:.

I just noticed this thread, but I wonder what the fuss is all
about :-) Kconfig dependencies are easy, really -- any code that
pulls in code from elsewhere, must explicitly "depends on" it.
It is possible to use "select" as well, but could lead to breakages
as discussed to death on at least 64592 other threads on LKML already
and hence should only be used for library-like code that does not
have any dependencies itself.


> select is evil....
> select will by brute force set a symbol equal to 'y' without
> visiting the dependencies.
> So abusing select you are able to select a symbol FOO even 
> if FOO depends on BAR that is not set.
> 
> In general use select only for non-visible symbols (no promts anywhere)
> and for symbols with no dependencies.
> That will limit the suefullness but on the other hand avoid the illegal
> configurations all over.

The problem with using "depends on" is that your config symbol becomes
invisible unless the dependency has already been selected.

So, there's a workaround: make the ultimate config symbol itself depend
upon the grand-dependency (excuse the nomenclature) and just "select"
the immediate-parent-dependency, i.e. the following:

CONFIG_BAZ
	...

CONFIG BAR
	depends on BAZ

CONFIG_FOO
	depends on BAZ
	select BAR

is perfectly legal, and doesn't cause any build problems. Perhaps such a
solution makes sense here as well?


> kconfig should one day warn about such things but I have not fel inclined
> to dive into the matters hoping that Roman does one day.

Yup, I've wanted to do this myself, in fact I wanted to implement an idea
I had in mind ( http://lkml.org/lkml/2007/5/16/257 ) but for some reason
I tend to stay away from stuff in scripts/ :-)


Satyam

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02 10:32                     ` Satyam Sharma
@ 2007-08-02 11:40                       ` Satyam Sharma
  2007-08-02 11:40                       ` Jarek Poplawski
  1 sibling, 0 replies; 132+ messages in thread
From: Satyam Sharma @ 2007-08-02 11:40 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Matt Mackall, Jarek Poplawski, Gabriel C, Andrew Morton,
	Linux Kernel Mailing List, netdev, jason.wessel, amitkale,
	zippel, jengelh

[ Read through the thread, looked at Kconfig files,
  did some tests. Adding Kconfig experts to Cc: list. ]


> On Thu, 2 Aug 2007, Sam Ravnborg wrote:
> 
> > > > 
> > > > ...
> > > > endif # NETDEVICES
> > > > 
> > > > config NETPOLL
> > > >         depends on NETDEVICES
> > > >         def_bool NETCONSOLE
> > > > 
> > > > config NETPOLL_TRAP
> > > >         bool "Netpoll traffic trapping"
> > > >         default n
> > > >         depends on NETPOLL
> > > > 
> > > > config NET_POLL_CONTROLLER
> > > >         def_bool NETPOLL
> > > >         depends on NETPOLL


Gargh, what we're seeing here is a whole bunch of bugs, I think. First
I thought this must be one of those randconfig-producing-wrong-configs
issues, but surprisingly, running "make oldconfig" on this .config on
a fresh 2.6.23-rc1-mm1 tree didn't change anything in the .config.


Kconfig bug #1:
===============

Which means, although:

*****
menuconfig BAZ

if BAZ

config BAR

endif
*****

is widely believed (by most folks, I've heard this on several threads,
and as written in the comment in drivers/net/Kconfig) to be equivalent to:

*****
menuconfig BAZ

if BAZ
endif

config BAR
	depends on BAZ
*****

this is *not* enforced by "make oldconfig"! And hence, the NETPOLL &&
!NETDEVICES situation we're seeing here.

[ We could also categorize this as a bug in Kconfig's "if", fwiw. ]


Kconfig bug #2:
===============

config FOO
	def_bool BAR

is supposed to ensure that FOO == BAR (as Matt mentioned earlier).

However, even this is *not* enforced by "make oldconfig". And hence,
the NETPOLL && !NET_POLL_CONTROLLER situation we're seeing here.

In fact, I believe it's possible to even pass a NETCONSOLE but
!NETPOLL kind of .config through "make oldconfig" but it still won't
catch it, and build breakages *will* occur.

[ We could also categorize this as a bug in Kconfig's "def_bool", fwiw. ]

Possibly, we could also decide to just blame "randconfig" for the whole
issue, and forget about these, because I think it's highly unlikely
(though not impossible) for people with "real" .configs to hit the
problems we saw above.


KGDBOE bug #1:
==============

config KGDBOE in lib/Kconfig.kgdb must also "depend on" NETDEVICES,
and select NET_POLL_CONTROLLER also.


KGDBOE bug #2:
==============

config KGDBOE_NOMODULE is a sad, sad option, and must be killed. The
"if !KGDBOE_NOMODULE" in KGDBOE must be removed, and it must lose its
dependency on "m".


Satyam

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02 10:32                     ` Satyam Sharma
  2007-08-02 11:40                       ` Satyam Sharma
@ 2007-08-02 11:40                       ` Jarek Poplawski
  2007-08-02 11:56                         ` Satyam Sharma
  1 sibling, 1 reply; 132+ messages in thread
From: Jarek Poplawski @ 2007-08-02 11:40 UTC (permalink / raw)
  To: Satyam Sharma
  Cc: Sam Ravnborg, Matt Mackall, Gabriel C, Andrew Morton,
	linux-kernel, netdev, jason.wessel, amitkale

On Thu, Aug 02, 2007 at 04:02:21PM +0530, Satyam Sharma wrote:
> Hi,
> 
> 
> On Thu, 2 Aug 2007, Sam Ravnborg wrote:
> 
> > > > 
> > > > ...
> > > > endif # NETDEVICES
> > > > 
> > > > config NETPOLL
> > > >         depends on NETDEVICES
> > > >         def_bool NETCONSOLE
> > > > 
> > > > config NETPOLL_TRAP
> > > >         bool "Netpoll traffic trapping"
> > > >         default n
> > > >         depends on NETPOLL
> > > > 
> > > > config NET_POLL_CONTROLLER
> > > >         def_bool NETPOLL
> > > >         depends on NETPOLL
> > > > 
> > > > 
> > > > seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> > > > still doesn't check for NETDEVICES dependency.
> > > 
> > > That's odd. Adding Sam to the cc:.
> 
> I just noticed this thread, but I wonder what the fuss is all
> about :-) Kconfig dependencies are easy, really -- any code that
> pulls in code from elsewhere, must explicitly "depends on" it.
> It is possible to use "select" as well, but could lead to breakages
> as discussed to death on at least 64592 other threads on LKML already
> and hence should only be used for library-like code that does not
> have any dependencies itself.

So, it seems at least one time not enough (or maybe it would be better
to write this 1 time only, but in Documentation/).

> 
> 
> > select is evil....
> > select will by brute force set a symbol equal to 'y' without
> > visiting the dependencies.
> > So abusing select you are able to select a symbol FOO even 
> > if FOO depends on BAR that is not set.
> > 
> > In general use select only for non-visible symbols (no promts anywhere)
> > and for symbols with no dependencies.
> > That will limit the suefullness but on the other hand avoid the illegal
> > configurations all over.
> 
> The problem with using "depends on" is that your config symbol becomes
> invisible unless the dependency has already been selected.
> 
> So, there's a workaround: make the ultimate config symbol itself depend
> upon the grand-dependency (excuse the nomenclature) and just "select"
> the immediate-parent-dependency, i.e. the following:
> 
> CONFIG_BAZ
> 	...
> 
> CONFIG BAR
> 	depends on BAZ
> 
> CONFIG_FOO
> 	depends on BAZ
> 	select BAR
> 
> is perfectly legal, and doesn't cause any build problems. Perhaps such a
> solution makes sense here as well?
> 
> 
> > kconfig should one day warn about such things but I have not fel inclined
> > to dive into the matters hoping that Roman does one day.
> 
> Yup, I've wanted to do this myself, in fact I wanted to implement an idea
> I had in mind ( http://lkml.org/lkml/2007/5/16/257 ) but for some reason
> I tend to stay away from stuff in scripts/ :-)

How often "common" developer has to make such decisions in Kconfig?
Probably no more than once per year. So, it's fair to blame anybody
for not reading lkml to find if there are some bugs or
recommendations before using apparently simple tool? I think there
is usually some README for such things (maybe in Documentation/)?

Thanks,
Jarek P.

PS: if it's so easy and it's enough to read only 64592 lkml messages,
I wonder why Andrew, who knows all lkml, and reads more messages per
hour, cared to remember mainly one short conclusion...

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02 11:40                       ` Jarek Poplawski
@ 2007-08-02 11:56                         ` Satyam Sharma
  2007-08-02 12:52                           ` Jarek Poplawski
  0 siblings, 1 reply; 132+ messages in thread
From: Satyam Sharma @ 2007-08-02 11:56 UTC (permalink / raw)
  To: Jarek Poplawski
  Cc: Sam Ravnborg, Matt Mackall, Gabriel C, Andrew Morton,
	linux-kernel, netdev, jason.wessel, amitkale



On Thu, 2 Aug 2007, Jarek Poplawski wrote:

> On Thu, Aug 02, 2007 at 04:02:21PM +0530, Satyam Sharma wrote:
> [...]
> How often "common" developer has to make such decisions in Kconfig?
> Probably no more than once per year. So, it's fair to blame anybody
> for not reading lkml to find if there are some bugs or
> recommendations before using apparently simple tool? I think there
> is usually some README for such things (maybe in Documentation/)?

Whoops, I only said that in humour, probably should've snuck in a
smiley or two. Definitely not blaming anybody. Apologies to anyone
who felt offended, sorry, nothing such was intended, I assure.

Satyam

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02 11:56                         ` Satyam Sharma
@ 2007-08-02 12:52                           ` Jarek Poplawski
  0 siblings, 0 replies; 132+ messages in thread
From: Jarek Poplawski @ 2007-08-02 12:52 UTC (permalink / raw)
  To: Satyam Sharma
  Cc: Sam Ravnborg, Matt Mackall, Gabriel C, Andrew Morton,
	linux-kernel, netdev, jason.wessel, amitkale

On Thu, Aug 02, 2007 at 05:26:12PM +0530, Satyam Sharma wrote:
...
> Whoops, I only said that in humour, probably should've snuck in a
> smiley or two. Definitely not blaming anybody. Apologies to anyone
> who felt offended, sorry, nothing such was intended, I assure.

I see you probably didn't notice my smileys too. I need them so often
that I've to abbreviate them with something like this: ",.?!"
But, I'm also sorry if you felt confused I felt offended etc...

Jarek P.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02  9:00                   ` Jarek Poplawski
@ 2007-08-02 15:59                     ` Matt Mackall
  2007-08-03  7:30                       ` Jarek Poplawski
  0 siblings, 1 reply; 132+ messages in thread
From: Matt Mackall @ 2007-08-02 15:59 UTC (permalink / raw)
  To: Jarek Poplawski
  Cc: Gabriel C, Andrew Morton, linux-kernel, netdev, jason.wessel,
	amitkale, Sam Ravnborg

On Thu, Aug 02, 2007 at 11:00:08AM +0200, Jarek Poplawski wrote:
> On Wed, Aug 01, 2007 at 09:02:19PM -0500, Matt Mackall wrote:
> > On Wed, Aug 01, 2007 at 11:59:21AM +0200, Jarek Poplawski wrote:
> > > On Tue, Jul 31, 2007 at 05:05:00PM +0200, Gabriel C wrote:
> > > > Jarek Poplawski wrote:
> > > > > On Tue, Jul 31, 2007 at 12:14:36PM +0200, Gabriel C wrote:
> > > > >> Jarek Poplawski wrote:
> > > > >>> On 28-07-2007 20:42, Gabriel C wrote:
> > > > >>>> Andrew Morton wrote:
> > > > >>>>> On Sat, 28 Jul 2007 17:44:45 +0200 Gabriel C <nix.or.die@googlemail.com> wrote:
> ...
> > > > >>>>>> net/core/netpoll.c:155: error: 'struct net_device' has no member named 'poll_controller'
> ...
> > > > >>>>>> I think is because KGDBOE selects just NETPOLL.
> > > > >>>>>>
> > > > >>>>> Looks like it.
> > > > >>>>>
> > > > >>>>> Select went and selected NETPOLL and NETPOLL_TRAP but things like
> > > > >>>>> CONFIG_NETDEVICES and CONFIG_NET_POLL_CONTROLLER remain unset.  `select'
> > > > >>>>> remains evil.
> ...
> > > seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> > > still doesn't check for NETDEVICES dependency.
> > 
> > That's odd. Adding Sam to the cc:.
> 
> Looks right, but after reading Andrew's opinion about select I'd be
> astonished if he doesn't know this problem already.
> 
> > 
> > > > >> Now KGDBOE just selects NETPOLL and NETPOLL_TRAP.
> > > > >> Adding 'select CONFIG_NET_POLL_CONTROLLER' let kgdboe compiles but the question is does it work without any ethernet card ?
> > > > > 
> > > > > Why kgdboe should care what netpoll needs? So, I hope, you are adding
> > > > > this select under config NETPOLL. On the other hand, if NETPOLL should
> > > > > depend on NET_POLL_CONTROLLER there is probably no reason to have them
> > > > > both.
> > > > 
> > > > NET_POLL_CONTROLLER has def_bool NETPOLL if NETDEVICES .
> > > > 
> > > > Net peoples ping ?:)
> > 
> > How about cc:ing the netpoll maintainer?
> 
> Is there a new one or do you suggest possibility of abusing the
> authority of the netpoll's author with such trifles...?!

I'm just subtly suggesting that if you're going to have a discussion
about netpoll, you ought to cc: me.

> There are some notions about "other diagnostic tools" in some
> net drivers, eg. 3c509.c, so there would be a little bit of
> work if, after changing this, they really exist (and even if
> not - maybe it's reasonable to save such possibility for the
> future?).

I created it for netpoll, only netpoll clients have ever cared.

-- 
Mathematics is the supreme nostalgia of our time.

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

* Re: NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 )
  2007-08-02 15:59                     ` Matt Mackall
@ 2007-08-03  7:30                       ` Jarek Poplawski
  0 siblings, 0 replies; 132+ messages in thread
From: Jarek Poplawski @ 2007-08-03  7:30 UTC (permalink / raw)
  To: Matt Mackall
  Cc: Gabriel C, Andrew Morton, linux-kernel, netdev, jason.wessel,
	amitkale, Sam Ravnborg

On Thu, Aug 02, 2007 at 10:59:23AM -0500, Matt Mackall wrote:
> On Thu, Aug 02, 2007 at 11:00:08AM +0200, Jarek Poplawski wrote:
> > On Wed, Aug 01, 2007 at 09:02:19PM -0500, Matt Mackall wrote:
...
> > > How about cc:ing the netpoll maintainer?
> > 
> > Is there a new one or do you suggest possibility of abusing the
> > authority of the netpoll's author with such trifles...?!
> 
> I'm just subtly suggesting that if you're going to have a discussion
> about netpoll, you ought to cc: me.

Thanks! I'm very honored. I've suspected there is some subtlety, but
wasn't sure of possible new patches to MAINTAINERS, so tried to be
subtle too...

> 
> > There are some notions about "other diagnostic tools" in some
> > net drivers, eg. 3c509.c, so there would be a little bit of
> > work if, after changing this, they really exist (and even if
> > not - maybe it's reasonable to save such possibility for the
> > future?).
> 
> I created it for netpoll, only netpoll clients have ever cared.

So, probably you're the best person to change this! Alas, it seems,
for some time any changes to netpoll could have a cold reception
here (pity for Ingo's laptop...).

Regards,
Jarek P.

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

* Re: [-mm patch] DMA engine kconfig improvements
  2007-07-26  5:26 ` [-mm patch] DMA engine kconfig improvements Adrian Bunk
@ 2007-08-04  2:15   ` Dan Williams
  2007-08-10  0:43     ` Adrian Bunk
  2007-08-15 23:36   ` Nelson, Shannon
  1 sibling, 1 reply; 132+ messages in thread
From: Dan Williams @ 2007-08-04  2:15 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Andrew Morton, Shannon Nelson, linux-kernel, Wolfgang Denk

On 7/25/07, Adrian Bunk <bunk@stusta.de> wrote:
> On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
> >...
> > Changes since 2.6.22-rc6-mm1:
> >...
> > +dma-arch-fix.patch
> >
> >  Fix git-dma.patch
> >...
>
> This results in an ARM-only driver in an X86-only menu...
>
> What about the patch below instead that also improves a few other things?
I like it, just a few nits:

> -menu "DMA Engine support"
> -       depends on HAS_DMA
> +menuconfig DMADEVICES
> +       bool "DMA Engine support"
> +       depends on (PCI && X86) || ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX
> +       help
> +         Intel(R) DMA engines
> +
Perhaps we should go ahead and define ARCH_HAS_DMA_OFFLOAD and have
DMADEVICES depend on that option.  A ppc32 driver is in the works:
http://marc.info/?l=linux-raid&m=117400143317440&w=2

> +if DMADEVICES
> +
> +comment "DMA Devices"
> +
> +config INTEL_IOATDMA
> +       tristate "Intel I/OAT DMA support"
> +       depends on PCI && X86
> +       select DMA_ENGINE
> +       select DCA
> +       help
> +         Enable support for the Intel(R) I/OAT DMA engine present
> +         in recent Intel Xeon CPUs.
> +
> +         Say yes if you have such a CPU.
It is actually in recent chipsets, not the CPU, but yes the user
should have more help making this decision.

Regards,
Dan (for Shannon while he is on vacation)

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

* [PATCH] docs: note about select in kconfig-language.txt
  2007-08-02  9:36                   ` Sam Ravnborg
  2007-08-02 10:32                     ` Satyam Sharma
@ 2007-08-06 11:51                     ` Jarek Poplawski
  1 sibling, 0 replies; 132+ messages in thread
From: Jarek Poplawski @ 2007-08-06 11:51 UTC (permalink / raw)
  To: Sam Ravnborg
  Cc: Matt Mackall, Gabriel C, Andrew Morton, linux-kernel, netdev,
	jason.wessel, amitkale, Satyam Sharma


Hi,

If there are no other plans of kconfig docs update I think this
message of yours should be useful enough. I made minimal fixes,
so if they are wrong or you prefer it otherwise, I'm OK with any
change to this proposal, including replacement with something
else.

Thanks & regards,
Jarek P.

On Thu, Aug 02, 2007 at 11:36:59AM +0200, Sam Ravnborg wrote:
...
> > > seems to select NET_POLL_CONTROLLER after selecting NETPOLL, but
> > > still doesn't check for NETDEVICES dependency.
> > 
> > That's odd. Adding Sam to the cc:.
> 
> select is evil....
> select will by brute force set a symbol equal to 'y' without
> visiting the dependencies.
> So abusing select you are able to select a symbol FOO even 
> if FOO depends on BAR that is not set.
> 
> In general use select only for non-visible symbols (no promts anywhere)
> and for symbols with no dependencies.
> That will limit the suefullness but on the other hand avoid the illegal
> configurations all over.
> 
> kconfig should one day warn about such things but I have not fel inclined
> to dive into the matters hoping that Roman does one day.
> 
> 	Sam
> 
----------->

Subject: docs: a warning note about select in kconfig-language.txt

A warning note of Sam Ravnborg about kconfig's select evilness,
dependencies and the future (slightly corrected).

Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
Cc: Sam Ravnborg <sam@ravnborg.org>

---

diff -Nu9r 2.6.23-rc1-/Documentation/kbuild/kconfig-language.txt 2.6.23-rc1/Documentation/kbuild/kconfig-language.txt
--- 2.6.23-rc1-/Documentation/kbuild/kconfig-language.txt	2007-07-09 01:32:17.000000000 +0200
+++ 2.6.23-rc1/Documentation/kbuild/kconfig-language.txt	2007-08-06 12:50:34.000000000 +0200
@@ -92,18 +92,27 @@
 
 - reverse dependencies: "select" <symbol> ["if" <expr>]
   While normal dependencies reduce the upper limit of a symbol (see
   below), reverse dependencies can be used to force a lower limit of
   another symbol. The value of the current menu symbol is used as the
   minimal value <symbol> can be set to. If <symbol> is selected multiple
   times, the limit is set to the largest selection.
   Reverse dependencies can only be used with boolean or tristate
   symbols.
+  Note:
+	select is evil.... select will by brute force set a symbol
+	equal to 'y' without visiting the dependencies. So abusing
+	select you are able to select a symbol FOO even if FOO depends
+	on BAR that is not set. In general use select only for
+	non-visible symbols (no promts anywhere) and for symbols with
+	no dependencies. That will limit the usefulness but on the
+	other hand avoid the illegal configurations all over. kconfig
+	should one day warn about such things.
 
 - numerical ranges: "range" <symbol> <symbol> ["if" <expr>]
   This allows to limit the range of possible input values for int
   and hex symbols. The user can only input a value which is larger than
   or equal to the first symbol and smaller than or equal to the second
   symbol.
 
 - help text: "help" or "---help---"
   This defines a help text. The end of the help text is determined by

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

* Re: [-mm patch] DMA engine kconfig improvements
  2007-08-04  2:15   ` Dan Williams
@ 2007-08-10  0:43     ` Adrian Bunk
  0 siblings, 0 replies; 132+ messages in thread
From: Adrian Bunk @ 2007-08-10  0:43 UTC (permalink / raw)
  To: Dan Williams; +Cc: Andrew Morton, Shannon Nelson, linux-kernel, Wolfgang Denk

On Fri, Aug 03, 2007 at 07:15:31PM -0700, Dan Williams wrote:
> On 7/25/07, Adrian Bunk <bunk@stusta.de> wrote:
> > On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
> > >...
> > > Changes since 2.6.22-rc6-mm1:
> > >...
> > > +dma-arch-fix.patch
> > >
> > >  Fix git-dma.patch
> > >...
> >
> > This results in an ARM-only driver in an X86-only menu...
> >
> > What about the patch below instead that also improves a few other things?
> I like it, just a few nits:
> 
> > -menu "DMA Engine support"
> > -       depends on HAS_DMA
> > +menuconfig DMADEVICES
> > +       bool "DMA Engine support"
> > +       depends on (PCI && X86) || ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX
> > +       help
> > +         Intel(R) DMA engines
> > +
> Perhaps we should go ahead and define ARCH_HAS_DMA_OFFLOAD and have
> DMADEVICES depend on that option.  A ppc32 driver is in the works:
> http://marc.info/?l=linux-raid&m=117400143317440&w=2
>...

That would be overkill - what my patch does here is just a minor 
cosmetical thing that could be dropped if it would become a problem.

> Regards,
> Dan (for Shannon while he is on vacation)

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] 132+ messages in thread

* RE: [-mm patch] DMA engine kconfig improvements
  2007-07-26  5:26 ` [-mm patch] DMA engine kconfig improvements Adrian Bunk
  2007-08-04  2:15   ` Dan Williams
@ 2007-08-15 23:36   ` Nelson, Shannon
  1 sibling, 0 replies; 132+ messages in thread
From: Nelson, Shannon @ 2007-08-15 23:36 UTC (permalink / raw)
  To: Adrian Bunk, Andrew Morton; +Cc: linux-kernel, Williams, Dan J, Satyam Sharma

>From: Adrian Bunk [mailto:bunk@stusta.de] 
>Sent: Wednesday, July 25, 2007 10:26 PM
>To: Andrew Morton; Nelson, Shannon
>Cc: linux-kernel@vger.kernel.org
>Subject: [-mm patch] DMA engine kconfig improvements
>
>On Wed, Jul 25, 2007 at 04:03:04AM -0700, Andrew Morton wrote:
>>...
>> Changes since 2.6.22-rc6-mm1:
>>...
>> +dma-arch-fix.patch
>> 
>>  Fix git-dma.patch
>>...
>
>This results in an ARM-only driver in an X86-only menu...
>
>What about the patch below instead that also improves a few 
>other things?
>
>
><--  snip  -->
>
>
>This patch contains the following changes to the DMA engine menus:
>- switch to menuconfig
>- INTEL_IOATDMA must depend on X86
>- INTEL_IOATDMA must select DCA
>- device drivers shouldn't "default m"
>- DCA shouldn't be a user visible option
>- make it clear in the INTEL_IOATDMA help text that this driver is for
>  rare hardware the user most likely doesn't has
>- let DMA_ENGINE be select'ed by the DMA devices, making it less likely
>  for a user to accidentally enable NET_DMA
>
>Signed-off-by: Adrian Bunk <bunk@stusta.de>
>

Thanks, Adrian.  With a couple minor notes changes, I'm using this
patch.  What's nice is this also takes care of the DCA configuration
issue as well such that I don't need to add #ifdef's to the code.  Doing
this changes an argument I gave to Satyam, but the effect is small
enough that it shouldn't matter.

Once I get my git tree cleaned up again (I'll learn this part yet...)
I'll have it out, probably tomorrow.

sln
======================================================================
Mr. Shannon Nelson                 LAN Access Division, Intel Corp.
Shannon.Nelson@intel.com                I don't speak for Intel
(503) 712-7659                    Parents can't afford to be squeamish.

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

end of thread, other threads:[~2007-08-15 23:36 UTC | newest]

Thread overview: 132+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-07-25 11:03 2.6.23-rc1-mm1 Andrew Morton
2007-07-25 12:25 ` 2.6.23-rc1-mm1 Cedric Le Goater
2007-07-25 17:23   ` 2.6.23-rc1-mm1 Len Brown
2007-07-25 18:58     ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-25 19:13       ` 2.6.23-rc1-mm1 Torsten Kaiser
2007-07-25 20:22         ` 2.6.23-rc1-mm1 Torsten Kaiser
2007-07-25 20:36           ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-25 21:52             ` 2.6.23-rc1-mm1 Torsten Kaiser
2007-07-26  7:25               ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-26 17:54                 ` 2.6.23-rc1-mm1 Torsten Kaiser
2007-07-28 14:03                   ` 2.6.23-rc1-mm1 Torsten Kaiser
2007-07-25 23:26       ` 2.6.23-rc1-mm1 Len Brown
2007-07-26  9:41         ` 2.6.23-rc1-mm1 Mel Gorman
2007-07-26 13:53           ` 2.6.23-rc1-mm1 Cedric Le Goater
2007-07-25 12:40 ` 2.6.23-rc1-mm1 Cedric Le Goater
2007-07-25 20:05   ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-25 12:55 ` 2.6.23-rc1-mm1 Cedric Le Goater
2007-07-25 13:48   ` 2.6.23-rc1-mm1: chipsfb_pci_suspend problem Rafael J. Wysocki
2007-07-25 20:22     ` Andrew Morton
2007-07-25 22:45       ` Pavel Machek
2007-07-25 13:36 ` [-mm patch] one e1000 driver should be enough for everyone Adrian Bunk
2007-07-25 13:48   ` Jeff Garzik
2007-07-25 14:46     ` Adrian Bunk
2007-07-25 15:05       ` Jeff Garzik
2007-07-25 15:21         ` Kok, Auke
2007-07-25 15:23           ` Jeff Garzik
2007-07-25 20:50           ` Andrew Morton
2007-07-25 16:32 ` 2.6.23-rc1-mm1 Michal Piotrowski
2007-07-25 21:56   ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-25 16:36 ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
2007-07-25 17:04   ` Sam Ravnborg
2007-07-25 18:06   ` 2.6.23-rc1-mm1: SCSI_SRP_ATTRS compile error Adrian Bunk
2007-07-26 10:49     ` FUJITA Tomonori
2007-07-25 22:41   ` 2.6.23-rc1-mm1 -- mostly fails to build Andy Whitcroft
2007-07-26  5:56     ` Andrew Morton
2007-07-26 17:53       ` Yinghai Lu
2007-07-25 18:15 ` 2.6.23-rc1-mm1: net/ipv4/fib_trie.c compile error Adrian Bunk
2007-07-25 18:22 ` 2.6.23-rc1-mm1: reiser4 <-> lzo " Adrian Bunk
2007-07-25 18:44   ` Edward Shishkin
2007-07-27 12:35   ` Edward Shishkin
2007-07-27 15:11     ` Richard Purdie
2007-07-25 18:48 ` 2.6.23-rc1-mm1 Michal Piotrowski
2007-07-25 18:53   ` 2.6.23-rc1-mm1 Sam Ravnborg
2007-07-25 19:18     ` 2.6.23-rc1-mm1 H. Peter Anvin
2007-07-25 19:21       ` 2.6.23-rc1-mm1 Sam Ravnborg
2007-07-25 20:58       ` 2.6.23-rc1-mm1 Gabriel C
2007-07-25 21:05         ` 2.6.23-rc1-mm1 Gabriel C
2007-07-25 21:11           ` 2.6.23-rc1-mm1 H. Peter Anvin
2007-07-25 21:13             ` 2.6.23-rc1-mm1 Gabriel C
2007-07-25 21:18               ` 2.6.23-rc1-mm1 H. Peter Anvin
2007-07-25 21:26                 ` 2.6.23-rc1-mm1 Gabriel C
2007-07-26  0:07           ` 2.6.23-rc1-mm1 Greg KH
2007-07-26  0:28             ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-26  1:55               ` 2.6.23-rc1-mm1 Dave Young
2007-07-26  2:23                 ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-26 20:18             ` 2.6.23-rc1-mm1 Dave Hansen
2007-07-25 20:42 ` 2.6.23-rc1-mm1 - drivers/char/nozomi.c overflow in implicit constant conversion , warnings Gabriel C
2007-07-26  5:42   ` Greg KH
2007-07-25 21:01 ` 2.6.23-rc1-mm1: m32r is_init() compile error Adrian Bunk
2007-07-25 21:42   ` sukadev
2007-07-25 21:17 ` 2.6.23-rc1-mm1: git-kgdb breaks sh compilation Adrian Bunk
2007-07-26  1:45   ` Paul Mundt
2007-07-25 22:03 ` 2.6.23-rc1-mm1 - seems OK on Dell Latitude D820, except for tpm_tis Valdis.Kletnieks
2007-07-26  3:37   ` Andrew Morton
2007-07-27  4:00     ` Valdis.Kletnieks
2007-07-27 13:28       ` Valdis.Kletnieks
2007-07-27 18:07         ` Andrew Morton
2007-07-27 19:44           ` Valdis.Kletnieks
2007-07-27 22:43         ` Bjorn Helgaas
2007-07-30 18:09           ` Bjorn Helgaas
2007-07-30 23:53           ` Valdis.Kletnieks
2007-07-31 18:48             ` Valdis.Kletnieks
2007-07-31 20:01               ` Bjorn Helgaas
2007-07-31 21:31                 ` Valdis.Kletnieks
2007-07-31 23:05                   ` Bjorn Helgaas
2007-07-26  5:26 ` [-mm patch] DMA engine kconfig improvements Adrian Bunk
2007-08-04  2:15   ` Dan Williams
2007-08-10  0:43     ` Adrian Bunk
2007-08-15 23:36   ` Nelson, Shannon
2007-07-26 12:11 ` [PATCH] sparsemem: ensure we initialise the node mapping for SPARSEMEM_STATIC Andy Whitcroft
2007-07-26 12:58 ` 2.6.23-rc1-mm1 sparsemem_vmemamp fix KAMEZAWA Hiroyuki
2007-07-26 14:39   ` Andy Whitcroft
2007-07-26 14:44     ` Andy Whitcroft
2007-07-27 13:28 ` [-mm patch] xtensa console.c: remove duplicate #include Frederik Deweerdt
2007-07-28 15:44 ` NETPOLL=y , NETDEVICES=n compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
2007-07-28 17:26   ` Andrew Morton
2007-07-28 18:42     ` Gabriel C
2007-07-31  8:32       ` Jarek Poplawski
2007-07-31 10:14         ` Gabriel C
2007-07-31 11:44           ` Jason Wessel
2007-07-31 12:47             ` Jarek Poplawski
2007-07-31 12:17           ` Jarek Poplawski
2007-07-31 15:05             ` Gabriel C
2007-08-01  9:59               ` Jarek Poplawski
2007-08-02  2:02                 ` Matt Mackall
2007-08-02  9:00                   ` Jarek Poplawski
2007-08-02 15:59                     ` Matt Mackall
2007-08-03  7:30                       ` Jarek Poplawski
2007-08-02  9:36                   ` Sam Ravnborg
2007-08-02 10:32                     ` Satyam Sharma
2007-08-02 11:40                       ` Satyam Sharma
2007-08-02 11:40                       ` Jarek Poplawski
2007-08-02 11:56                         ` Satyam Sharma
2007-08-02 12:52                           ` Jarek Poplawski
2007-08-06 11:51                     ` [PATCH] docs: note about select in kconfig-language.txt Jarek Poplawski
2007-07-28 16:36 ` DCA=n , INTEL_IOATDMA=y compile error ( Re: 2.6.23-rc1-mm1 ) Gabriel C
2007-07-28 16:47 ` sound/pci/ac97/ac97_patch.h - declared 'static' but never defined warnings " Gabriel C
2007-07-28 17:07 ` mm/sparse.c compile error " Gabriel C
2007-07-28 17:30   ` Andrew Morton
2007-07-30 12:16     ` Andy Whitcroft
2007-07-28 19:32 ` [PATCH -mm] Fix libata warnings with CONFIG_PM=n Gabriel C
2007-07-29 14:57 ` [-mm patch] make hugetlbfs_read() static Adrian Bunk
2007-07-29 14:57 ` [-mm patch] fs/ecryptfs/: make code static Adrian Bunk
2007-07-29 14:58 ` [-mm patch] make struct sdio_dev_attrs[] static Adrian Bunk
2007-07-29 19:29   ` Pierre Ossman
2007-07-29 14:58 ` [-mm patch] MTD onenand_sim.c: make struct info static Adrian Bunk
2007-07-29 14:58 ` [-mm patch] make scsi_host_link_pm_policy() static Adrian Bunk
2007-07-29 14:58 ` [-mm patch] USB: make dev_attr_authorized_default static Adrian Bunk
2007-07-31 19:13   ` Inaky Perez-Gonzalez
2007-07-29 14:59 ` [-mm patch] kernel/printk.c: make 2 variables static Adrian Bunk
2007-07-29 16:51   ` Randy Dunlap
2007-07-29 14:59 ` [-mm patch] export v4l2_int_device_{,un}register Adrian Bunk
2007-07-29 14:59 ` [-mm patch] kernel/pid.c: remove unused exports Adrian Bunk
2007-07-29 15:00 ` [-mm patch] security/ cleanups Adrian Bunk
2007-07-30 11:47   ` James Morris
2007-07-29 15:49 ` 2.6.23-rc1-mm1 Grant Wilson
2007-07-30  9:58   ` 2.6.23-rc1-mm1 Dave Young
2007-07-30 18:27     ` 2.6.23-rc1-mm1 Andrew Morton
2007-07-30 18:42       ` 2.6.23-rc1-mm1 Christoph Hellwig
2007-07-30 22:18         ` 2.6.23-rc1-mm1 Satyam Sharma
2007-07-31  1:21           ` 2.6.23-rc1-mm1 Dave Young
2007-08-01 15:24 ` 2.6.23-rc1-mm1 - loopback mount of files fails loop-use-unlocked_ioctl.patch Valdis.Kletnieks

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