2006-11-28 10:03:23

by Andrew Morton

[permalink] [raw]
Subject: 2.6.19-rc6-mm2


Temporarily at

http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/

Will appear eventually at

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



- Added Francois Romieu's Chelsio driver tree, as git-chelsio.patch



Boilerplate:

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

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

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

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

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

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

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

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

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

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

- Semi-daily 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.19-rc6-mm1:

origin.patch
git-acpi.patch
git-alsa.patch
git-agpgart.patch
git-arm.patch
git-cifs.patch
git-cpufreq.patch
git-powerpc.patch
git-drm.patch
git-dvb.patch
git-gfs2-nmw.patch
git-ia64.patch
git-ieee1394.patch
git-infiniband.patch
git-input.patch
git-libata-all.patch
git-lxdialog.patch
git-mips.patch
git-mmc.patch
git-mtd.patch
git-netdev-all.patch
git-net.patch
git-ioat.patch
git-ocfs2.patch
git-pcmcia.patch
git-r8169.patch
git-chelsio.patch
git-selinux.patch
git-pciseg.patch
git-s390.patch
git-sh.patch
git-scsi-misc.patch
git-block.patch
git-sas.patch
git-sas-fixup.patch
git-qla3xxx.patch
git-watchdog.patch
git-wireless.patch
git-cryptodev.patch
git-gccbug.patch

git trees

-pcmcia-fix-rmmod-pcmcia-with-unbound-devices.patch
-initramfs-handle-more-than-one-source-dir-or-file-list.patch
-fuse-fix-oops-in-lookup.patch
-mounstats-null-pointer-dereference.patch
-debugfs-add-header-file.patch
-documentation-rtctxt-updates-for-rtc-class.patch
-rtc-framework-handles-periodic-irqs.patch
-rtc-framework-handles-periodic-irqs-fix.patch
-rtc-class-locking-bugfixes.patch
-drivers-rtc-rtc-rs5c372c-fix-a-null-dereference.patch
-reiserfs-fmt-bugfix.patch
-fix-device_attribute-memory-leak-in-device_del.patch
-qconf-fix-uninitialised-member.patch
-fix-menuconfig-colours.patch
-sgiioc4-disable-module-unload.patch
-fix-copy_process-error-check.patch
-tlclk-fix-platform_device_register_simple-error-check.patch
-enforce-unsigned-long-flags-when-spinlocking.patch
-lockdep-spin_lock_irqsave_nested.patch
-lockdep-spin_lock_irqsave_nested-fix.patch
-lockdep-spin_lock_irqsave_nested-fix-2.patch
-correct-bound-checking-from-the-value-returned-from-_ppc-method.patch
-usb-ati-remote-memleak-fix.patch
-sound-initialize-rawmidi-substream-list.patch
-sound-fix-pcm-substream-list.patch
-tidy-gregkh-driver-udev-compatible-hack.patch
-driver-core-introduce-device_move-move-a-device.patch
-platform_driver_probe-can-save-codespace.patch
-documentation-driver-model-platformtxt-update-rewrite.patch
-driver-core-use-klist_remove-in-device_move.patch
-jdelvare-i2c-i2c-kill-icspll-driver-id.patch
-input-make-serio_register_driver-return-error.patch
-input-check-serio_register_driver-error.patch
-input-change-to-gfp_kernel-for-serio_register_driver-event-allocation.patch
-networking-re-fix-of-doc-comment-in-sockh.patch
-make-udp_encap_rcv-use-pskb_may_pull.patch
-parisc-use-unsigned-long-flags-in-semaphore-code.patch
-drivers-pci-hotplug-ibmphp_pcic-fix-null-dereference.patch
-usb-idmouse-cleanup.patch
-usb-writing_usb_driver-free-urb-cleanup.patch
-usb-pcwd_usb-free-urb-cleanup.patch
-usb-iforce-usb-free-urb-cleanup.patch
-usb-usb-gigaset-free-kill-urb-cleanup.patch
-usb-cinergyt2-free-kill-urb-cleanup.patch
-usb-ttusb_dec-free-urb-cleanup.patch
-usb-pvrusb2-hdw-free-unlink-urb-cleanup.patch
-usb-pvrusb2-io-free-urb-cleanup.patch
-usb-pwc-if-free-urb-cleanup.patch
-usb-quickcam_messenger-free-urb-cleanup.patch
-usb-irda-usb-free-urb-cleanup.patch
-usb-zd1201-free-urb-cleanup.patch
-usb-ati_remote-free-urb-cleanup.patch
-usb-ati_remote2-free-urb-cleanup.patch
-usb-hid-core-free-urb-cleanup.patch
-usb-usbkbd-free-urb-cleanup.patch
-usb-auerswald-free-kill-urb-cleanup-and-memleak-fix.patch
-usb-phidgetkit-free-urb-cleanup.patch
-usb-legousbtower-free-kill-urb-cleanup.patch
-usb-phidgetmotorcontrol-free-urb-cleanup.patch
-usb-catc-free-urb-cleanup.patch
-usb-ftdi_sio-kill-urb-cleanup.patch
-usb-io_edgeport-kill-urb-cleanup.patch
-usb-keyspan-free-urb-cleanup.patch
-usb-kobil_sct-kill-urb-cleanup.patch
-usb-mct_u232-free-urb-cleanup.patch
-usb-navman-kill-urb-cleanup.patch
-usb-usb-serial-free-urb-cleanup.patch
-usb-visor-kill-urb-cleanup.patch
-usb-usbmidi-kill-urb-cleanup.patch
-usb-usbmixer-free-kill-urb-cleanup.patch
-usb-pwc-if-loop-fix.patch
-usb-microtek-possible-memleak-fix.patch
-usb-cypress_m8-init-error-path-fix.patch
-usbtouchscreen-add-support-for-dmc-tsc-10-25-devices.patch
-make-drivers-usb-host-u132-hcdcu132_hcd_wait-static.patch
-make-drivers-usb-input-wacom_syscwacom_sys_irq-static.patch
-drivers-usb-misc-ftdi-elanc-fixes-and-cleanups.patch
-make-drivers-usb-core-drivercusb_device_match-static.patch
-usb-serial-replace-kmallocmemset-with-kzalloc.patch
-x86_64-mm-i386-pci-dma-iounmap.patch
-x86_64-smpboot-remove-unused-variable.patch
-uml-make-execvp-safe-for-our-usage.patch
-make-arch-i386-pci-commoncpci_bf_sort-static.patch
-scsi-initio-section-mismatches-with-hotplug=n.patch
-input-add-to-kernel-api-docbook.patch

Merged into mainline or a subsystem tree

+fix-create_write_pipe-error-check.patch
+ecryptfs-fix-crypto_alloc_blkcipher-error-check.patch

2.6.19 queue.

+implementation-of-acpi_video_get_next_level.patch
+implementation-of-acpi_video_get_next_level-tidy.patch

ACPI fixes

+video-sysfs-support-take-2-add-dev-argument-for-backlight_device_register-fix.patch

Fix video-sysfs-support-take-2-add-dev-argument-for-backlight_device_register.patch

+acpi-add-backlight-support-to-the-sony_acpi-v2.patch

Update acpi-add-backlight-support-to-the-sony_acpi.patch

-git-alsa-fixup.patch

Unneeded

+sound-soc-soc-dapmc-make-4-functions-static.patch

Sound cleanup

+audit-fix-kstrdup-error-check.patch

Audit cleanup

+gregkh-driver-driver-core-make-drivers-base-core.c-setup_parent-static.patch
+gregkh-driver-driver-core-introduce-device_move-move-a-device-to-a-new-parent.patch
+gregkh-driver-driver-core-use-klist_remove-in-device_move.patch
+gregkh-driver-driver-core-platform_driver_probe-can-save-codespace.patch
+gregkh-driver-documentation-driver-model-platform.txt-update-rewrite.patch
+gregkh-driver-modules-state.patch
+gregkh-driver-modules-drivers.patch
+gregkh-driver-driver-core-fixes-make_class_name-retval-checks.patch
+gregkh-driver-driver-core-fixes-sysfs_create_link-retval-checks-in-core.c.patch
+gregkh-driver-driver-core-fixes-device_register-retval-check-in-platform.c.patch
+gregkh-driver-driver-core-don-t-stop-probing-on-probe-errors.patch
+gregkh-driver-driver-core-change-function-call-order-in-device_bind_driver.patch

Driver tree updates

+driver-core-per-subsystem-multithreaded-probing.patch
+driver-core-dont-fail-attaching-the-device-if-it.patch

driver core fixes

+git-dvb-budget-ci-fix.patch

Fix git-dvb.patch

+jdelvare-i2c-i2c-update-i2c-id-list.patch
+jdelvare-i2c-i2c-remove-extraneous-whitespace.patch
+jdelvare-i2c-i2c-core-use-__ATTR.patch

I2C tree updates

+git-input-vs-git-alsa.patch

Fix git-input.patch

+sata_nv-fix-atapi-in-adma-mode.patch
+pata_it821x-suspend-resume-support.patch
+pata_serverworks-suspend-resume.patch
+pata_via-suspend-resume-support.patch
+pata_via-suspend-resume-support-fix.patch
+pata_amd-suspend-resume.patch
+hpt36x-suspend-resume-support.patch
+pata_hpt3x3-suspend-resume-support.patch
+pata-more-drivers-that-need-only-standard-suspend-and.patch
+pata_marvell-merge-mandriva-patches.patch

PATA things

+git-lxdialog-fixup.patch

Fix rejects in git-lxdialog.patch

+make-drivers-mtd-cmdlinepartcmtdpart_setup-static.patch

MTD cleanup

-chelsio-22-driver.patch

Is now in a git tree.

+declance-fix-pmax-and-pmad-support.patch

Net driver fix

+tulip-dmfe-carrier-detection-fix.patch

Fix tulip-dmfe-carrier-detection.patch

-git-net-fixup.patch

Unneeded

+net-possible-cleanups.patch
+net-possible-cleanups-fix.patch
+net-possible-cleanups-fix-2.patch

Net cleanups, and fixes thereto

-gregkh-pci-pci-check-szhi-when-sz-is-0-when-64-bit-iomem-bigger-than-4g.patch
-tidy-gregkh-pci-pci-check-szhi-when-sz-is-0-when-64-bit-iomem-bigger-than-4g.patch
-fix-gregkh-pci-pci-check-szhi-when-sz-is-0-when-64-bit-iomem-bigger-than-4g.patch
-fix-2-gregkh-pci-pci-check-szhi-when-sz-is-0-when-64-bit-iomem-bigger-than-4g.patch

Dropped by Greg. Not sure why.

+gregkh-pci-pci-enable-disable-device-is-nestable.patch
+gregkh-pci-pci-enable-disable-nestable-ports.patch
+gregkh-pci-pci-irq-irq-and-pci_ids-patch-for-intel-ich9.patch
+gregkh-pci-i2c-i801-smbus-patch-for-intel-ich9.patch
+gregkh-pci-pci-change-memory-allocation-for-acpiphp-slots.patch
+gregkh-pci-pci-rpaphp-change-device-tree-examination.patch
+gregkh-pci-pciehp-remove-unnecessary-free_irq.patch
+gregkh-pci-pciehp-remove-unnecessary-pci_disable_msi.patch
+gregkh-pci-pci-ibmphp_pci.c-fix-null-dereference.patch
+gregkh-pci-pci-make-arch-i386-pci-common.c-pci_bf_sort-static.patch

PCI tree updates

+fix-gregkh-pci-pci-enable-disable-device-is-nestable.patch

Fix it.

-update-documentation-pcitxt.patch
-pci-move-pci_fixup_device-and-is_enabled.patch
-pci-add-selected_regions-funcs.patch
-e1000-make-intel-e1000-driver-legacy-i-o-port-free.patch
-lpfc-make-emulex-lpfc-driver-legacy-i-o-port-free.patch

These got destroyed by changes in the PCI tree.

+scsi-in2000-scsi_cmnd-convertion.patch
+scsi-in2000-scsi_cmnd-convertion-tidy.patch
+make-qla2x00_reg_remote_port-static.patch
+iscsi-fix-crypto_alloc_hash-error-check.patch

scsi updates

+add-missing-libsas-include-to-fix-s390-compilation.patch

Fix SAS driver build

+gregkh-usb-usb-make-drivers-usb-input-wacom_sys.c-wacom_sys_irq-static.patch
+gregkh-usb-usb-airprime-new-device-id.patch
+gregkh-usb-usb-serial-ti_usb-ti-ez430-development-tool-id.patch
+gregkh-usb-usb-pwc-if-loop-fix.patch
+gregkh-usb-usb-writing_usb_driver-free-urb-cleanup.patch
+gregkh-usb-usb-pcwd_usb-free-urb-cleanup.patch
+gregkh-usb-usb-iforce-usb-free-urb-cleanup.patch
+gregkh-usb-usb-usb-gigaset-free-kill-urb-cleanup.patch
+gregkh-usb-usb-cinergyt2-free-kill-urb-cleanup.patch
+gregkh-usb-usb-ttusb_dec-free-urb-cleanup.patch
+gregkh-usb-usb-pvrusb2-hdw-free-unlink-urb-cleanup.patch
+gregkh-usb-usb-pvrusb2-io-free-urb-cleanup.patch
+gregkh-usb-usb-pwc-if-free-urb-cleanup.patch
+gregkh-usb-usb-sn9c102_core-free-urb-cleanup.patch
+gregkh-usb-usb-quickcam_messenger-free-urb-cleanup.patch
+gregkh-usb-usb-zc0301_core-free-urb-cleanup.patch
+gregkh-usb-usb-irda-usb-free-urb-cleanup.patch
+gregkh-usb-usb-zd1201-free-urb-cleanup.patch
+gregkh-usb-usb-ati_remote-free-urb-cleanup.patch
+gregkh-usb-usb-ati_remote2-free-urb-cleanup.patch
+gregkh-usb-usb-hid-core-free-urb-cleanup.patch
+gregkh-usb-usb-usbkbd-free-urb-cleanup.patch
+gregkh-usb-usb-auerswald-free-kill-urb-cleanup-and-memleak-fix.patch
+gregkh-usb-usb-legousbtower-free-kill-urb-cleanup.patch
+gregkh-usb-usb-phidgetkit-free-urb-cleanup.patch
+gregkh-usb-usb-phidgetmotorcontrol-free-urb-cleanup.patch
+gregkh-usb-usb-ftdi_sio-kill-urb-cleanup.patch
+gregkh-usb-usb-catc-free-urb-cleanup.patch
+gregkh-usb-usb-io_edgeport-kill-urb-cleanup.patch
+gregkh-usb-usb-keyspan-free-urb-cleanup.patch
+gregkh-usb-usb-kobil_sct-kill-urb-cleanup.patch
+gregkh-usb-usb-mct_u232-free-urb-cleanup.patch
+gregkh-usb-usb-navman-kill-urb-cleanup.patch
+gregkh-usb-usb-usb-serial-free-urb-cleanup.patch
+gregkh-usb-usb-visor-kill-urb-cleanup.patch
+gregkh-usb-usb-usbmidi-kill-urb-cleanup.patch
+gregkh-usb-usb-usbmixer-free-kill-urb-cleanup.patch
+gregkh-usb-ohci-change-priority-level-of-resume-log-message.patch
+gregkh-usb-usb-fix-aircable.c-inconsequent-null-checking.patch
+gregkh-usb-usb-core-fix-compiler-warning-about-usb_autosuspend_work.patch
+gregkh-usb-usb-add-digitech-usb-storage-to-unusual_devs.h.patch
+gregkh-usb-usb-microtek-possible-memleak-fix.patch
+gregkh-usb-usb-net2280-don-t-send-unwanted-zero-length-packets.patch
+gregkh-usb-usb-ehci-hooks-for-high-speed-electrical-tests.patch
+gregkh-usb-usb-add-ehci_hcd.ignore_oc-parameter.patch
+gregkh-usb-usb-cypress_m8-init-error-path-fix.patch
+gregkh-usb-usb-make-drivers-usb-host-u132-hcd.c-u132_hcd_wait-static.patch
+gregkh-usb-usb-ftdi-elan.c-fixes-and-cleanups.patch
+gregkh-usb-usb-usbtouchscreen-add-support-for-dmc-tsc-10-25-devices.patch
+gregkh-usb-usb-pxa2xx_udc-recognizes-ixp425-rev-b0-chip.patch
+gregkh-usb-usb-lh7a40x_udc-remove-double-declaration.patch
+gregkh-usb-usb-make-drivers-usb-core-driver.c-usb_device_match-static.patch
+gregkh-usb-usb-idmouse-cleanup.patch
+gregkh-usb-usb-hid-core-canonical-defines-for-apple-usb-device-ids.patch
+gregkh-usb-usb-serial-replace-kmalloc-memset-with-kzalloc.patch
+gregkh-usb-usb-build-the-appledisplay-driver.patch
+gregkh-usb-usb-endianness-fix-for-asix.c.patch
+gregkh-usb-usb-pegasus-error-path-not-resetting-task-s-state.patch
+gregkh-usb-usb-added-dynamic-major-number-for-usb-endpoints.patch
+gregkh-usb-usb-multithread.patch
+gregkh-usb-ohci-make-autostop-conditional-on-config_pm.patch
+gregkh-usb-usb-struct-usb_device-change-flag-to-bitflag.patch
+gregkh-usb-usb-hub-simplify-remote-wakeup-handling.patch
+gregkh-usb-usb-keep-count-of-unsuspended-children.patch
+gregkh-usb-usbcore-remove-unused-argument-in-autosuspend.patch

USB tree updates

+x86_64-mm-remove-unused-apic-ver.patch
+x86_64-mm-msr-comment.patch
+x86_64-mm-add-sysctl-for-kstack_depth_to_print.patch
+x86_64-mm-clear-bss-early.patch
+x86_64-mm-remove-duplicate-arch_discontigmem_enable-option.patch
+x86_64-mm-172-kobject_init-on-resume-from-disk.patch
+x86_64-mm-i386-touch-watchdog-in-backtrace.patch
+x86_64-mm-remove-unused-acpi-madt.patch
+x86_64-mm-unify-rewrite-smp-tsc-sync-code.patch
+x86_64-mm-always-enable-regparm.patch
+x86_64-mm-rdtsc-sync-amd-single-core.patch

x86_64 tree updates

+fix-x86_64-mm-i386-config-core2.patch

Fix it.

+x86-64-change-the-size-for-interrupt-array-to-nr_vectors.patch

x86_64 fix

+mm-cleanup-indentation-on-switch-for-cpu-operations.patch

MM cleanup

+selinux-fix-dentry_open-error-check.patch

SELinux fixlet.

+implement-file-posix-capabilities.patch

Bring this back.

+s2ram-debugging-documentation.patch

suspend-to-RAM docs

+fs-reorder-some-struct-inode-fields-to-speedup-i_size-manipulations.patch
+add-struct-dev-pointer-to-dma_is_consistent.patch
+handle-per-subsystem-mutexes-for-config_hotplug_cpu-not-set.patch
+handle-per-subsystem-mutexes-for-config_hotplug_cpu-not-set-tidy.patch
+dz-fixes-to-make-it-work.patch
+dz-fixes-to-make-it-work-fix.patch
+reiser-replace-kmallocmemset-with-kzalloc.patch
+futex-init-error-check.patch
+spi-check-platform_device_register_simple-error.patch
+synclink_gt-fix-init-error-handling.patch
+sysctl-string-length-calculated-is-wrong-if-it-contains-negative-numbers.patch
+sched-correct-output-of-show_state.patch
+reiserfs-do-not-add-save-links-for-o_direct-writes.patch

Misc

-io-accounting-core-statistics-fix.patch

Foxled into io-accounting-core-statistics.patch

-io-accounting-metadata-read-accounting.patch

Dropped - unneeded.

+ext4-if-expression-format.patch
+ext4-kmalloc-to-kzalloc.patch
+ext4-eliminate-inline-functions.patch

ext4 cleanups

+generic-bug-implementation-include-linux-bugh-must-always-include-linux-moduleh.patch

Fix the generic BUG implementation

+fsstack-introduce-fsstack_copy_attrinode_-fs-stackc-should-include-linux-fs_stackh.patch

Fix fsstack-introduce-fsstack_copy_attrinode_.patch

+i4l-remove-the-broken-hisax_amd7930-option.patch

ISDN cleanup

+sched-improve-migration-accuracy-fix.patch

Fix sched-improve-migration-accuracy.patch

+sysctl-simplify-sysctl_uts_string.patch
+sysctl-implement-sysctl_uts_string.patch
+sysctl-simplify-ipc-ns-specific-sysctls.patch
+sysctl-fix-sys_sysctl-interface-of-ipc-sysctls.patch
+sysctl-fix-sys_sysctl-interface-of-ipc-sysctls-fix.patch

susctl fixes/cleanups

+readahead-events-accounting-make-readahead_debug_level-static.patch
+readahead-context-based-method-locking-fix.patch
+readahead-context-based-method-locking-fix-2.patch

Fix readahead code in -mm.

+fs-reiser4-more-possible-cleanups.patch

reiser4 cleanups

+kvm-userspace-interface-make-enum-values-in-userspace-interface-explicit.patch

Fix kvm-userspace-interface.patch

+kvm-clarify-licensing.patch

KVM updates

+kvm-create-kvm-intelko-module.patch
+kvm-make-dev-registration-happen-when-the-arch.patch
+kvm-make-hardware-detection-an-arch-operation.patch
+kvm-make-the-per-cpu-enable-disable-functions-arch.patch
+kvm-make-the-hardware-setup-operations-non-percpu.patch
+kvm-make-the-guest-debugger-an-arch-operation.patch
+kvm-make-msr-accessors-arch-operations.patch
+kvm-make-the-segment-accessors-arch-operations.patch
+kvm-cache-guest-cr4-in-vcpu-structure.patch
+kvm-cache-guest-cr0-in-vcpu-structure.patch
+kvm-add-get_segment_base-arch-accessor.patch
+kvm-add-idt-and-gdt-descriptor-accessors.patch
+kvm-make-syncing-the-register-file-to-the-vcpu.patch
+kvm-make-the-vcpu-execution-loop-an-arch-operation.patch
+kvm-move-the-vmx-exit-handlers-to-vmxc.patch
+kvm-make-vcpu_setup-an-arch-operation.patch
+kvm-make-__set_cr0-and-dependencies-arch-operations.patch
+kvm-make-__set_cr4-an-arch-operation.patch
+kvm-make-__set_efer-an-arch-operation.patch
+kvm-make-set_cr3-and-tlb-flushing-arch-operations.patch
+kvm-make-inject_page_fault-an-arch-operation.patch
+kvm-make-inject_gp-an-arch-operation.patch
+kvm-use-the-idt-and-gdt-accessors-in-realmode-emulation.patch
+kvm-use-the-general-purpose-register-accessors-rather.patch
+kvm-move-the-vmx-tsc-accessors-to-vmxc.patch
+kvm-access-rflags-through-an-arch-operation.patch
+kvm-move-the-vmx-segment-field-definitions-to-vmxc.patch
+kvm-add-an-arch-accessor-for-cs-d-b-and-l-bits.patch
+kvm-add-a-set_cr0_no_modeswitch-arch-accessor.patch
+kvm-make-vcpu_load-and-vcpu_put-arch-operations.patch
+kvm-make-vcpu-creation-and-destruction-arch-operations.patch
+kvm-move-vmcs-static-variables-to-vmxc.patch
+kvm-make-is_long_mode-an-arch-operation.patch
+kvm-use-the-tlb-flush-arch-operation-instead-of-an.patch
+kvm-remove-guest_cpl.patch
+kvm-move-vmcs-accessors-to-vmxc.patch
+kvm-move-vmx-helper-inlines-to-vmxc.patch
+kvm-remove-vmx-includes-from-arch-independent-code.patch

More KVM work

+kvm-build-fix.patch
+kvm-build-fix-2.patch

sort-of fix it.

+add-debugging-aid-for-memory-initialisation-problems.patch
+add-debugging-aid-for-memory-initialisation-problems-fix.patch

MM debugging





All 1641 patches:


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



2006-11-28 10:15:48

by Akinobu Mita

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, Nov 28, 2006 at 02:02:46AM -0800, Andrew Morton wrote:
> -input-make-serio_register_driver-return-error.patch
> -input-check-serio_register_driver-error.patch
> -input-change-to-gfp_kernel-for-serio_register_driver-event-allocation.patch

Please drop
input-check-whether-serio-dirver-registration-is-completed.patch, too.
Alternative fix is merged in input.git. So this is unnecessary.

2006-11-28 11:36:19

by Mariusz Kozlowski

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Hello,

When CONFIG_MODULE_UNLOAD is not set then this happens:

CC kernel/module.o
kernel/module.c:852: error: `initstate' undeclared here (not in a function)
kernel/module.c:852: error: initializer element is not constant
kernel/module.c:852: error: (near initialization for `modinfo_attrs[2]')
make[1]: *** [kernel/module.o] Error 1
make: *** [kernel] Error 2

Reference to 'initstate' should stay under #ifdef CONFIG_MODULE_UNLOAD
as its definition I guess.

Signed-off-by: Mariusz Kozlowski <[email protected]>

--- linux-2.6.19-rc6-mm2-a/kernel/module.c 2006-11-28 12:17:09.000000000 +0100
+++ linux-2.6.19-rc6-mm2-b/kernel/module.c 2006-11-28 12:05:01.000000000 +0100
@@ -849,8 +849,8 @@ static inline void module_unload_init(st
static struct module_attribute *modinfo_attrs[] = {
&modinfo_version,
&modinfo_srcversion,
- &initstate,
#ifdef CONFIG_MODULE_UNLOAD
+ &initstate,
&refcnt,
#endif
NULL,

--
Regards,

Mariusz Kozlowski

2006-11-28 11:41:44

by Mariusz Kozlowski

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Hello,

Agrrh ... tab/spaces thing again. Sorry. Second try:

Signed-off-by: Mariusz Kozlowski <[email protected]>

--- linux-2.6.19-rc6-mm2-a/kernel/module.c 2006-11-28 12:17:09.000000000 +0100
+++ linux-2.6.19-rc6-mm2-b/kernel/module.c 2006-11-28 12:05:01.000000000 +0100
@@ -849,8 +849,8 @@ static inline void module_unload_init(st
static struct module_attribute *modinfo_attrs[] = {
&modinfo_version,
&modinfo_srcversion,
- &initstate,
#ifdef CONFIG_MODULE_UNLOAD
+ &initstate,
&refcnt,
#endif
NULL,

--
Regards,

Mariusz Kozlowski

2006-11-28 21:22:37

by Miles Lane

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

I decided to try building a relocatable kernel. I don't know if this
is why I got so many section mismatch errors.

WARNING: vmlinux - Section mismatch: reference to
.init.data:boot_params from .text between '_text' (at offset
0xc0100036) and 'checkCPUtype'
WARNING: vmlinux - Section mismatch: reference to
.init.data:boot_params from .text between '_text' (at offset
0xc0100044) and 'checkCPUtype'
WARNING: vmlinux - Section mismatch: reference to
.init.data:init_pg_tables_end from .text between '_text' (at offset
0xc01000a6) and 'checkCPUtype'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc01000d5) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc01000df) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc01000fe) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc010010f) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc0100115) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc010011b) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc0100121) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc0100137) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc0100141) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc010014a) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
0xc0100150) and 'is486'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'check_x87' (at offset
0xc01001b4) and 'setup_pda'
WARNING: vmlinux - Section mismatch: reference to
.init.data:new_cpu_data from .text between 'check_x87' (at offset
0xc01001d2) and 'setup_pda'
WARNING: vmlinux - Section mismatch: reference to
.init.text:start_kernel from .text between 'is386' (at offset
0xc01001ae) and 'check_x87'
WARNING: vmlinux - Section mismatch: reference to
.init.text:spawn_ksoftirqd from .text between 'init' (at offset
0xc0100397) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:spawn_softlockup_task from .text between 'init' (at offset
0xc010039c) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:APIC_init_uniprocessor from .text between 'init' (at offset
0xc01003a1) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:sched_init_smp from .text between 'init' (at offset
0xc01003a6) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:populate_rootfs from .text between 'init' (at offset
0xc01003ab) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:usermodehelper_init from .text between 'init' (at offset
0xc01003b5) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:driver_init from .text between 'init' (at offset
0xc01003ba) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:sysctl_init from .text between 'init' (at offset
0xc01003bf) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to .init.data: from
.text between 'init' (at offset 0xc01003d4) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to .init.data: from
.text between 'init' (at offset 0xc0100412) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:prepare_namespace from .text between 'init' (at offset
0xc01004ea) and 'rest_init'
WARNING: vmlinux - Section mismatch: reference to
.init.text:machine_specific_memory_setup from .text between
'init_new_context' (at offset 0xc0106c90) and 'i8259A_suspend'
WARNING: vmlinux - Section mismatch: reference to
.init.data:acpi_sci_flags from .text between 'acpi_sci_ioapic_setup'
(at offset 0xc010c056) and '__acpi_map_table'
WARNING: vmlinux - Section mismatch: reference to
.init.data:acpi_sci_flags from .text between 'acpi_sci_ioapic_setup'
(at offset 0xc010c07b) and '__acpi_map_table'
WARNING: vmlinux - Section mismatch: reference to
.init.text:mp_override_legacy_irq from .text between
'acpi_sci_ioapic_setup' (at offset 0xc010c095) and '__acpi_map_table'
WARNING: vmlinux - Section mismatch: reference to
.init.data:acpi_sci_override_gsi from .text between
'acpi_sci_ioapic_setup' (at offset 0xc010c09b) and '__acpi_map_table'
WARNING: vmlinux - Section mismatch: reference to
.init.data:num_processors from .text between 'MP_processor_info' (at
offset 0xc010e881) and 'mp_register_lapic'
WARNING: vmlinux - Section mismatch: reference to .init.data:maxcpus
from .text between 'MP_processor_info' (at offset 0xc010e89b) and
'mp_register_lapic'
WARNING: vmlinux - Section mismatch: reference to
.init.data:num_processors from .text between 'MP_processor_info' (at
offset 0xc010e8c8) and 'mp_register_lapic'
WARNING: vmlinux - Section mismatch: reference to
.init.text:__init_begin from .text between 'free_initmem' (at offset
0xc0113396) and 'mark_rodata_ro'
WARNING: vmlinux - Section mismatch: reference to .init.text: from
.text between 'online_page' (at offset 0xc0113486) and '__set_fixmap'
WARNING: vmlinux - Section mismatch: reference to .init.text:init_idle
from .text between 'fork_idle' (at offset 0xc01188b8) and
'get_task_mm'
WARNING: vmlinux - Section mismatch: reference to
.init.text:_sinittext from .text between 'core_kernel_text' (at offset
0xc0128ced) and 'kernel_text_address'
WARNING: vmlinux - Section mismatch: reference to
.init.text:_einittext from .text between 'core_kernel_text' (at offset
0xc0128cf6) and 'kernel_text_address'
WARNING: vmlinux - Section mismatch: reference to
.init.text:lockdep_init from .text between 'lockdep_init_map' (at
offset 0xc0130437) and 'save_trace'
WARNING: vmlinux - Section mismatch: reference to
.init.text:lockdep_init from .text between 'lockdep_reset_lock' (at
offset 0xc0131c4d) and 'print_circular_bug_header'
WARNING: vmlinux - Section mismatch: reference to
.init.text:lockdep_init from .text between '__lock_acquire' (at offset
0xc0131fa0) and 'lock_release_non_nested'
WARNING: vmlinux - Section mismatch: reference to
.init.text:_sinittext from .text between 'get_symbol_pos' (at offset
0xc01397e5) and 'reset_iter'
WARNING: vmlinux - Section mismatch: reference to
.init.text:_einittext from .text between 'get_symbol_pos' (at offset
0xc01397ec) and 'reset_iter'
WARNING: vmlinux - Section mismatch: reference to
.init.data:initkmem_list3 from .text between 'set_up_list3s' (at
offset 0xc016373c) and 'poison_obj'
WARNING: vmlinux - Section mismatch: reference to
.init.text:__alloc_bootmem from .text between 'vgacon_startup' (at
offset 0xc020b5e2) and 'vgacon_switch'
WARNING: vmlinux - Section mismatch: reference to
.init.data:logo_linux_clut224 from .text between 'fb_find_logo' (at
offset 0xc020b968) and 'cfb_fillrect'
WARNING: vmlinux - Section mismatch: reference to
.init.text:uart_parse_options from .text between
'serial8250_console_setup' (at offset 0xc0246b77) and
'serial8250_request_rsa_resource'
WARNING: vmlinux - Section mismatch: reference to
.init.text:uart_set_options from .text between
'serial8250_console_setup' (at offset 0xc0246b97) and
'serial8250_request_rsa_resource'
WARNING: vmlinux - Section mismatch: reference to .init.text: from
.text between 'iret_exc' (at offset 0xc0321977) and '_etext'
WARNING: vmlinux - Section mismatch: reference to .init.data: from
.data between 'this_cpu' (at offset 0xc03abb10) and 'cpuinfo_op'
WARNING: vmlinux - Section mismatch: reference to
.init.text:start_kernel from .paravirtprobe between
'__start_paravirtprobe' (at offset 0xc0437488) and
'__stop_paravirtprobe'

2006-11-28 22:00:10

by Vivek Goyal

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, Nov 28, 2006 at 01:22:34PM -0800, Miles Lane wrote:
> I decided to try building a relocatable kernel. I don't know if this
> is why I got so many section mismatch errors.
>
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:boot_params from .text between '_text' (at offset
> 0xc0100036) and 'checkCPUtype'

Hi Miles,

Yes these warnings appear if CONFIG_RELOCATABLE is enabled. Actually,
there is already code present in the kernel which seem to be accessing
some text in init.text sections. Because CONFIG_RELOCATABLE compiles
the vmlinux with --emit-relocs options, these warnings become visible
using MODPOST.

So basically, these problems like accessing .init.data:boot_params
from .text section already exist. Enabling CONFIG_RELOCATABLE, just makes
them visible in the form of warnings.

I will see how many of these I can get rid of.

Thanks
Vivek

> WARNING: vmlinux - Section mismatch: reference to
> .init.data:boot_params from .text between '_text' (at offset
> 0xc0100044) and 'checkCPUtype'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:init_pg_tables_end from .text between '_text' (at offset
> 0xc01000a6) and 'checkCPUtype'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc01000d5) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc01000df) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc01000fe) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc010010f) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc0100115) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc010011b) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc0100121) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc0100137) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc0100141) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc010014a) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'checkCPUtype' (at offset
> 0xc0100150) and 'is486'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'check_x87' (at offset
> 0xc01001b4) and 'setup_pda'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:new_cpu_data from .text between 'check_x87' (at offset
> 0xc01001d2) and 'setup_pda'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:start_kernel from .text between 'is386' (at offset
> 0xc01001ae) and 'check_x87'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:spawn_ksoftirqd from .text between 'init' (at offset
> 0xc0100397) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:spawn_softlockup_task from .text between 'init' (at offset
> 0xc010039c) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:APIC_init_uniprocessor from .text between 'init' (at offset
> 0xc01003a1) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:sched_init_smp from .text between 'init' (at offset
> 0xc01003a6) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:populate_rootfs from .text between 'init' (at offset
> 0xc01003ab) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:usermodehelper_init from .text between 'init' (at offset
> 0xc01003b5) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:driver_init from .text between 'init' (at offset
> 0xc01003ba) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:sysctl_init from .text between 'init' (at offset
> 0xc01003bf) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to .init.data: from
> .text between 'init' (at offset 0xc01003d4) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to .init.data: from
> .text between 'init' (at offset 0xc0100412) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:prepare_namespace from .text between 'init' (at offset
> 0xc01004ea) and 'rest_init'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:machine_specific_memory_setup from .text between
> 'init_new_context' (at offset 0xc0106c90) and 'i8259A_suspend'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:acpi_sci_flags from .text between 'acpi_sci_ioapic_setup'
> (at offset 0xc010c056) and '__acpi_map_table'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:acpi_sci_flags from .text between 'acpi_sci_ioapic_setup'
> (at offset 0xc010c07b) and '__acpi_map_table'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:mp_override_legacy_irq from .text between
> 'acpi_sci_ioapic_setup' (at offset 0xc010c095) and '__acpi_map_table'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:acpi_sci_override_gsi from .text between
> 'acpi_sci_ioapic_setup' (at offset 0xc010c09b) and '__acpi_map_table'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:num_processors from .text between 'MP_processor_info' (at
> offset 0xc010e881) and 'mp_register_lapic'
> WARNING: vmlinux - Section mismatch: reference to .init.data:maxcpus
> from .text between 'MP_processor_info' (at offset 0xc010e89b) and
> 'mp_register_lapic'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:num_processors from .text between 'MP_processor_info' (at
> offset 0xc010e8c8) and 'mp_register_lapic'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:__init_begin from .text between 'free_initmem' (at offset
> 0xc0113396) and 'mark_rodata_ro'
> WARNING: vmlinux - Section mismatch: reference to .init.text: from
> .text between 'online_page' (at offset 0xc0113486) and '__set_fixmap'
> WARNING: vmlinux - Section mismatch: reference to .init.text:init_idle
> from .text between 'fork_idle' (at offset 0xc01188b8) and
> 'get_task_mm'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:_sinittext from .text between 'core_kernel_text' (at offset
> 0xc0128ced) and 'kernel_text_address'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:_einittext from .text between 'core_kernel_text' (at offset
> 0xc0128cf6) and 'kernel_text_address'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:lockdep_init from .text between 'lockdep_init_map' (at
> offset 0xc0130437) and 'save_trace'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:lockdep_init from .text between 'lockdep_reset_lock' (at
> offset 0xc0131c4d) and 'print_circular_bug_header'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:lockdep_init from .text between '__lock_acquire' (at offset
> 0xc0131fa0) and 'lock_release_non_nested'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:_sinittext from .text between 'get_symbol_pos' (at offset
> 0xc01397e5) and 'reset_iter'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:_einittext from .text between 'get_symbol_pos' (at offset
> 0xc01397ec) and 'reset_iter'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:initkmem_list3 from .text between 'set_up_list3s' (at
> offset 0xc016373c) and 'poison_obj'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:__alloc_bootmem from .text between 'vgacon_startup' (at
> offset 0xc020b5e2) and 'vgacon_switch'
> WARNING: vmlinux - Section mismatch: reference to
> .init.data:logo_linux_clut224 from .text between 'fb_find_logo' (at
> offset 0xc020b968) and 'cfb_fillrect'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:uart_parse_options from .text between
> 'serial8250_console_setup' (at offset 0xc0246b77) and
> 'serial8250_request_rsa_resource'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:uart_set_options from .text between
> 'serial8250_console_setup' (at offset 0xc0246b97) and
> 'serial8250_request_rsa_resource'
> WARNING: vmlinux - Section mismatch: reference to .init.text: from
> .text between 'iret_exc' (at offset 0xc0321977) and '_etext'
> WARNING: vmlinux - Section mismatch: reference to .init.data: from
> .data between 'this_cpu' (at offset 0xc03abb10) and 'cpuinfo_op'
> WARNING: vmlinux - Section mismatch: reference to
> .init.text:start_kernel from .paravirtprobe between
> '__start_paravirtprobe' (at offset 0xc0437488) and
> '__stop_paravirtprobe'
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

2006-11-28 22:31:15

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, Nov 28, 2006 at 12:35:43PM +0100, Mariusz Kozlowski wrote:
> Hello,
>
> When CONFIG_MODULE_UNLOAD is not set then this happens:
>
> CC kernel/module.o
> kernel/module.c:852: error: `initstate' undeclared here (not in a function)
> kernel/module.c:852: error: initializer element is not constant
> kernel/module.c:852: error: (near initialization for `modinfo_attrs[2]')
> make[1]: *** [kernel/module.o] Error 1
> make: *** [kernel] Error 2
>
> Reference to 'initstate' should stay under #ifdef CONFIG_MODULE_UNLOAD
> as its definition I guess.
>
> Signed-off-by: Mariusz Kozlowski <[email protected]>
>
> --- linux-2.6.19-rc6-mm2-a/kernel/module.c 2006-11-28 12:17:09.000000000 +0100
> +++ linux-2.6.19-rc6-mm2-b/kernel/module.c 2006-11-28 12:05:01.000000000 +0100
> @@ -849,8 +849,8 @@ static inline void module_unload_init(st
> static struct module_attribute *modinfo_attrs[] = {
> &modinfo_version,
> &modinfo_srcversion,
> - &initstate,
> #ifdef CONFIG_MODULE_UNLOAD
> + &initstate,
> &refcnt,
> #endif

Kay, is this correct? I think we still need this information exported
to userspace, even if we can't unload modules, right?

thanks,

greg k-h

2006-11-29 00:27:05

by Thomas Tuttle

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

I've found a couple of bugs so far...

1. I did `modprobe kvm' and then tried running a version of the KVM Qemu
compiled for a different kernel. My mistake. But I got an oops:

BUG: unable to handle kernel NULL pointer dereference at virtual address 00000008
printing eip:
f91f9c3f
*pde = 00000000
Oops: 0000 [#1]
SMP
last sysfs file: /devices/system/cpu/cpu0/cpufreq/scaling_max_freq
Modules linked in: kvm iTCO_wdt i8k rfcomm l2cap rtc sdhci mmc_block mmc_core hci_usb bluetooth b44 mii ohci1394 ieee1394 uhci_hcd ehci_hcd usbcore psmouse evdev i915 drm cpuid msr speedstep_centrino video thermal processor fan container button battery ac
CPU: 0
EIP: 0060:[<f91f9c3f>] Not tainted VLI
EFLAGS: 00010202 (2.6.19-rc6-mm1 #1)
EIP is at kvm_vmx_return+0xef/0x4d0 [kvm]
eax: e5490068 ebx: 00000000 ecx: 00000000 edx: e5491ca4
esi: 00000000 edi: e5490060 ebp: e5a4fde0 esp: e5a4fd54
ds: 007b es: 007b ss: 0068
Process qemu (pid: 24193, ti=e5a4e000 task=c2286a90 task.ti=e5a4e000)
Stack: 00000002 00000001 f7fe1278 00000002 b7f92000 e5490000 00000000 00000000
e5a4fdac 00000000 000000d8 f783a580 e5a4fdac c043b98a bfb93f7c f91fa020
e5a4fde0 bfb93f7c bfb93f7c f91fa0cb 000004f3 c03fb974 e5490000 00000000
Call Trace:
[<f91fa020>] kvm_dev_ioctl+0x0/0x1040 [kvm]
[<f91fa0cb>] kvm_dev_ioctl+0xab/0x1040 [kvm]
[<c03fb974>] error_code+0x7c/0x84
[<c011d469>] kmap_atomic+0xc9/0xe0
[<c018007b>] permission+0x2b/0xd0
[<c01700d8>] sys_swapon+0x978/0xaf0
[<c011d263>] kunmap_atomic+0x63/0x70
[<c011d469>] kmap_atomic+0xc9/0xe0
[<c011d263>] kunmap_atomic+0x63/0x70
[<c015cdbd>] get_page_from_freelist+0x27d/0x340
[<c011d469>] kmap_atomic+0xc9/0xe0
[<c011d263>] kunmap_atomic+0x63/0x70
[<c015cdbd>] get_page_from_freelist+0x27d/0x340
[<c0157af0>] find_get_page+0x20/0x60
[<c015a75c>] filemap_nopage+0x2dc/0x490
[<c0178a47>] do_sync_read+0xc7/0x110
[<c011d469>] kmap_atomic+0xc9/0xe0
[<c011d263>] kunmap_atomic+0x63/0x70
[<c0166386>] __handle_mm_fault+0x246/0x9c0
[<f91fa020>] kvm_dev_ioctl+0x0/0x1040 [kvm]
[<c030ae02>] scsi_host_alloc+0x202/0x2a0
[<c018430b>] do_ioctl+0x2b/0x90
[<c01843cc>] vfs_ioctl+0x5c/0x2b0
[<c018465d>] sys_ioctl+0x3d/0x70
[<c0103238>] syscall_call+0x7/0xb
[<c030ae02>] scsi_host_alloc+0x202/0x2a0
=======================
Code: 14 0f 87 77 02 00 00 8b 0c b5 00 15 20 f9 85 c9 0f 84 68 02 00 00 89 ea 89 f8 ff d1 85 c0 0f 84 4c 02 00 00 89 f8 e8 31 e9 ff ff <65> a1 08 00 00 00 8b 40 04 8b 40 08 a8 04 0f 85 ae 02 00 00 e8
EIP: [<f91f9c3f>] kvm_vmx_return+0xef/0x4d0 [kvm] SS:ESP 0068:e5a4fd54
msrs: 2

Oh, and I get a ton of these messages with kvm:

rtc: lost some interrupts at 1024Hz.

2. I'm not sure if this bug is in the kernel, wireless tools, or the
ipw3945 driver, but I haven't changed the version of anything but the
kernel. When I do `iwconfig eth1 essid foobar' something drops the
last character of the essid, and a subsequent `iwconfig eth1' shows
"fooba" as the essid. And it's actually set as "fooba", since I had
to do `iwconfig eth1 essid MyUsualEssid_' (note underscore) to get on
to my usual network.

--Thomas Tuttle


Attachments:
(No filename) (3.05 kB)
(No filename) (189.00 B)
Download all attachments

2006-11-29 00:53:45

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, 28 Nov 2006 19:24:45 -0500
Thomas Tuttle <[email protected]> wrote:

> I've found a couple of bugs so far...
>
> 1. I did `modprobe kvm' and then tried running a version of the KVM Qemu
> compiled for a different kernel. My mistake. But I got an oops:
>
> BUG: unable to handle kernel NULL pointer dereference at virtual address 00000008
> printing eip:
> f91f9c3f
> *pde = 00000000
> Oops: 0000 [#1]
> SMP
> last sysfs file: /devices/system/cpu/cpu0/cpufreq/scaling_max_freq
> Modules linked in: kvm iTCO_wdt i8k rfcomm l2cap rtc sdhci mmc_block mmc_core hci_usb bluetooth b44 mii ohci1394 ieee1394 uhci_hcd ehci_hcd usbcore psmouse evdev i915 drm cpuid msr speedstep_centrino video thermal processor fan container button battery ac
> CPU: 0
> EIP: 0060:[<f91f9c3f>] Not tainted VLI
> EFLAGS: 00010202 (2.6.19-rc6-mm1 #1)
> EIP is at kvm_vmx_return+0xef/0x4d0 [kvm]
> eax: e5490068 ebx: 00000000 ecx: 00000000 edx: e5491ca4
> esi: 00000000 edi: e5490060 ebp: e5a4fde0 esp: e5a4fd54
> ds: 007b es: 007b ss: 0068
> Process qemu (pid: 24193, ti=e5a4e000 task=c2286a90 task.ti=e5a4e000)
> Stack: 00000002 00000001 f7fe1278 00000002 b7f92000 e5490000 00000000 00000000
> e5a4fdac 00000000 000000d8 f783a580 e5a4fdac c043b98a bfb93f7c f91fa020
> e5a4fde0 bfb93f7c bfb93f7c f91fa0cb 000004f3 c03fb974 e5490000 00000000
> Call Trace:
> [<f91fa020>] kvm_dev_ioctl+0x0/0x1040 [kvm]
> [<f91fa0cb>] kvm_dev_ioctl+0xab/0x1040 [kvm]
> [<c03fb974>] error_code+0x7c/0x84
> [<c011d469>] kmap_atomic+0xc9/0xe0
> [<c018007b>] permission+0x2b/0xd0
> [<c01700d8>] sys_swapon+0x978/0xaf0
> [<c011d263>] kunmap_atomic+0x63/0x70
> [<c011d469>] kmap_atomic+0xc9/0xe0
> [<c011d263>] kunmap_atomic+0x63/0x70
> [<c015cdbd>] get_page_from_freelist+0x27d/0x340
> [<c011d469>] kmap_atomic+0xc9/0xe0
> [<c011d263>] kunmap_atomic+0x63/0x70
> [<c015cdbd>] get_page_from_freelist+0x27d/0x340
> [<c0157af0>] find_get_page+0x20/0x60
> [<c015a75c>] filemap_nopage+0x2dc/0x490
> [<c0178a47>] do_sync_read+0xc7/0x110
> [<c011d469>] kmap_atomic+0xc9/0xe0
> [<c011d263>] kunmap_atomic+0x63/0x70
> [<c0166386>] __handle_mm_fault+0x246/0x9c0
> [<f91fa020>] kvm_dev_ioctl+0x0/0x1040 [kvm]
> [<c030ae02>] scsi_host_alloc+0x202/0x2a0
> [<c018430b>] do_ioctl+0x2b/0x90
> [<c01843cc>] vfs_ioctl+0x5c/0x2b0
> [<c018465d>] sys_ioctl+0x3d/0x70
> [<c0103238>] syscall_call+0x7/0xb
> [<c030ae02>] scsi_host_alloc+0x202/0x2a0
> =======================
> Code: 14 0f 87 77 02 00 00 8b 0c b5 00 15 20 f9 85 c9 0f 84 68 02 00 00 89 ea 89 f8 ff d1 85 c0 0f 84 4c 02 00 00 89 f8 e8 31 e9 ff ff <65> a1 08 00 00 00 8b 40 04 8b 40 08 a8 04 0f 85 ae 02 00 00 e8
> EIP: [<f91f9c3f>] kvm_vmx_return+0xef/0x4d0 [kvm] SS:ESP 0068:e5a4fd54
> msrs: 2
>
> Oh, and I get a ton of these messages with kvm:
>
> rtc: lost some interrupts at 1024Hz.

KVM culprits cc'ed. The KVM patches are I got them didn't even compile on
i386, so runtime breakage isn't very surprising. Looks like you need an
x86_64 machine ;)

2006-11-29 01:00:21

by Jiri Kosina

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, 28 Nov 2006, Andrew Morton wrote:

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

md-change-lifetime-rules-for-md-devices.patch gives me the following early
during boot (first WARNING() inside __mutex_lock_slowpath(), then BUG at
__mutex_lock_slowpath(), just after that slab corruption).

When I revert md-change-lifetime-rules-for-md-devices.patch, everything
seems to go fine (this machine does use neither LVM nor RAID, but the
kernel has DM compiled in).

Config is at http://www.jikos.cz/jikos/junk/.config_md

WARNING at kernel/mutex.c:132 __mutex_lock_common()
[<c0103d70>] dump_trace+0x68/0x1b5
[<c0103ed5>] show_trace_log_lvl+0x18/0x2c
[<c010445b>] show_trace+0xf/0x11
[<c01044cd>] dump_stack+0x12/0x14
[<c036e6ba>] __mutex_lock_slowpath+0xa1/0x213
[<c0197c7d>] create_dir+0x24/0x1ba
[<c0198317>] sysfs_create_dir+0x45/0x5f
[<c01ed1fb>] kobject_add+0xce/0x185
[<c01ed3c3>] kobject_register+0x19/0x30
[<c02e10c6>] md_probe+0x11a/0x124
[<c0261b4c>] kobj_lookup+0xe6/0x122
[<c01e63b2>] get_gendisk+0xe/0x1b
[<c0184c0a>] do_open+0x2e/0x298
[<c018500b>] blkdev_open+0x25/0x4d
[<c0163e73>] __dentry_open+0xc3/0x17e
[<c0163fa8>] nameidata_to_filp+0x24/0x33
[<c0163fe9>] do_filp_open+0x32/0x39
[<c016402a>] do_sys_open+0x3a/0x66
[<c016408f>] sys_open+0x1c/0x1e
[<c0102dbc>] syscall_call+0x7/0xb
DWARF2 unwinder stuck at syscall_call+0x7/0xb
Leftover inexact backtrace:
=======================
BUG: unable to handle kernel paging request at virtual address 6b6b6b6b
printing eip:
c01fc5ab
*pde = 00000000
Oops: 0000 [#1]
SMP
last sysfs file: /class/input/input5/event5/dev
Modules linked in: video sony_acpi button battery backlight ac ipv6 floppy i2c_viapro i2c_core snd_via82xx gameport snd_ac97_codec snd_ac97_bus snd_seq_dummy via_rhine snd_seq_oss snd_seq_midi_event snd_seq mii snd_pcm_oss snd_mixer_oss snd_pcm pcspkr snd_timer snd_page_alloc snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore serio_raw ehci_hcd ohci_hcd uhci_hcd
CPU: 0
EIP: 0060:[<c01fc5ab>] Not tainted VLI
EFLAGS: 00010046 (2.6.19-rc6-mm2 #1)
EIP is at __list_add+0x2a/0x5c
eax: 6b6b6b6b ebx: edee9de0 ecx: eb8c34d8 edx: 6b6b6b6b
esi: eb8c34b8 edi: 00000246 ebp: ef60a050 esp: edee9db4
ds: 007b es: 007b ss: 0068
Process nash (pid: 1321, ti=edee8000 task=ef60a050 task.ti=edee8000)
Stack: 00000001 c0197c7d edee9de0 edee9de0 edee9de0 eb8c34b8 c036e703 00000000
00000002 c0197c7d c03752fd edee9de0 edee9de0 11111111 eb8c34b8 edee9de0
eb882cac ffffffea eb882cac edee9e30 c0197c7d ef60a5a0 00000000 ee8d3404
Call Trace:
[<c036e703>] __mutex_lock_slowpath+0xea/0x213
[<c0197c7d>] create_dir+0x24/0x1ba
[<c0198317>] sysfs_create_dir+0x45/0x5f
[<c01ed1fb>] kobject_add+0xce/0x185
[<c01ed3c3>] kobject_register+0x19/0x30
[<c02e10c6>] md_probe+0x11a/0x124
[<c0261b4c>] kobj_lookup+0xe6/0x122
[<c01e63b2>] get_gendisk+0xe/0x1b
[<c0184c0a>] do_open+0x2e/0x298
[<c018500b>] blkdev_open+0x25/0x4d
[<c0163e73>] __dentry_open+0xc3/0x17e
[<c0163fa8>] nameidata_to_filp+0x24/0x33
[<c0163fe9>] do_filp_open+0x32/0x39
[<c016402a>] do_sys_open+0x3a/0x66
[<c016408f>] sys_open+0x1c/0x1e
[<c0102dbc>] syscall_call+0x7/0xb
DWARF2 unwinder stuck at syscall_call+0x7/0xb
Leftover inexact backtrace:
=======================
no locks held by nash/1321.
Code: c3 56 53 89 c3 83 ec 10 8b 41 04 39 d0 74 1c 89 4c 24 0c 89 54 24 04 89 44 24 08 c7 04 24 80 94 3a c0 e8 be f9 f1 ff 0f 0b eb fe <8b> 32 39 ce 74 1c 89 54 24 0c 89 74 24 08 89 4c 24 04 c7 04 24
EIP: [<c01fc5ab>] __list_add+0x2a/0x5c SS:ESP 0068:edee9db4
<3>BUG: sleeping function called from invalid context at kernel/rwsem.c:20
in_atomic():0, irqs_disabled():1
no locks held by nash/1321.
[<c0103d70>] dump_trace+0x68/0x1b5
[<c0103ed5>] show_trace_log_lvl+0x18/0x2c
[<c010445b>] show_trace+0xf/0x11
[<c01044cd>] dump_stack+0x12/0x14
[<c012f43e>] down_read+0x15/0x4e
[<c012733b>] __blocking_notifier_call_chain+0x11/0x3d
[<c012737e>] blocking_notifier_call_chain+0x17/0x1a
[<c011dec9>] do_exit+0x19/0x782
[<c01043fc>] die+0x20c/0x231
[<c0371762>] do_page_fault+0x450/0x51e
[<c036ff84>] error_code+0x7c/0x84
DWARF2 unwinder stuck at error_code+0x7c/0x84
Leftover inexact backtrace:
[<c01fc5ab>] __list_add+0x2a/0x5c
[<c0197c7d>] create_dir+0x24/0x1ba
[<c036e703>] __mutex_lock_slowpath+0xea/0x213
[<c0197c7d>] create_dir+0x24/0x1ba
[<c0197c7d>] create_dir+0x24/0x1ba
[<c0198317>] sysfs_create_dir+0x45/0x5f
[<c01ed1fb>] kobject_add+0xce/0x185
[<c012cae2>] init_waitqueue_head+0x12/0x20
[<c01ed32f>] kobject_init+0x5b/0x7d
[<c01ed3c3>] kobject_register+0x19/0x30
[<c02e10c6>] md_probe+0x11a/0x124
[<c0261b4c>] kobj_lookup+0xe6/0x122
[<c02e0fac>] md_probe+0x0/0x124
[<c0184fe6>] blkdev_open+0x0/0x4d
[<c01e63b2>] get_gendisk+0xe/0x1b
[<c0184c0a>] do_open+0x2e/0x298
[<c0184fe6>] blkdev_open+0x0/0x4d
[<c0184fe6>] blkdev_open+0x0/0x4d
[<c018500b>] blkdev_open+0x25/0x4d
[<c0163e73>] __dentry_open+0xc3/0x17e
[<c0163fa8>] nameidata_to_filp+0x24/0x33
[<c0163fe9>] do_filp_open+0x32/0x39
[<c0163da6>] get_unused_fd+0xaa/0xb4
[<c036f982>] _spin_unlock+0x14/0x1c
[<c0163da6>] get_unused_fd+0xaa/0xb4
[<c016402a>] do_sys_open+0x3a/0x66
[<c016408f>] sys_open+0x1c/0x1e
[<c0102dbc>] syscall_call+0x7/0xb
=======================
Slab corruption: start=eb8c3428, len=488
Redzone: 0x5a2cf071/0x5a2cf071.
Last user: [<c0175216>](iput+0x60/0x62)
090: 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b
Single bit error detected. Probably bad RAM.
Run memtest86+ or a similar memory test tool.
Prev obj: start=eb8c3234, len=488
Redzone: 0x5a2cf071/0x5a2cf071.
Last user: [<c0175216>](iput+0x60/0x62)
000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b
010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b
Next obj: start=eb8c361c, len=488
Redzone: 0x170fc2a5/0x170fc2a5.
Last user: [<c01755ab>](alloc_inode+0x22/0x15b)
000: 00 00 00 00 00 00 00 00 28 77 8b eb f4 cd f2 eb
010: 20 38 8c eb fc cd f2 eb ac 6a f5 eb ac 6a f5 eb
device-mapper: multipath: version 1.0.5 loaded

--
Jiri Kosina

2006-11-29 01:02:44

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, 28 Nov 2006 19:24:45 -0500
Thomas Tuttle <[email protected]> wrote:

> 2. I'm not sure if this bug is in the kernel, wireless tools, or the
> ipw3945 driver, but I haven't changed the version of anything but the
> kernel. When I do `iwconfig eth1 essid foobar' something drops the
> last character of the essid, and a subsequent `iwconfig eth1' shows
> "fooba" as the essid. And it's actually set as "fooba", since I had
> to do `iwconfig eth1 essid MyUsualEssid_' (note underscore) to get on
> to my usual network.

This could be version skew between the wireless APIs in the kernel.org kernel,
the wireless userspace, the out-of-tree ipw3945 driver and conceivably one
of the git trees in -mm (although I suspect not the latter).

I don't know, but I know who to cc ;) Probably they will want to knwo which
version of wireless-tools userspace you are running.

2006-11-29 01:09:30

by Jean Tourrilhes

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, Nov 28, 2006 at 04:58:28PM -0800, Andrew Morton wrote:
> On Tue, 28 Nov 2006 19:24:45 -0500
> Thomas Tuttle <[email protected]> wrote:
>
> > 2. I'm not sure if this bug is in the kernel, wireless tools, or the
> > ipw3945 driver, but I haven't changed the version of anything but the
> > kernel. When I do `iwconfig eth1 essid foobar' something drops the
> > last character of the essid, and a subsequent `iwconfig eth1' shows
> > "fooba" as the essid. And it's actually set as "fooba", since I had
> > to do `iwconfig eth1 essid MyUsualEssid_' (note underscore) to get on
> > to my usual network.
>
> This could be version skew between the wireless APIs in the kernel.org kernel,
> the wireless userspace, the out-of-tree ipw3945 driver and conceivably one
> of the git trees in -mm (although I suspect not the latter).
>
> I don't know, but I know who to cc ;) Probably they will want to knwo which
> version of wireless-tools userspace you are running.

Yes, it's a problem because the driver is out-of-tree. I sent
a patch to the maintainer to make the driver compatible with kernel
before/after, and it's actually integrated in the version 1.1.2 of the
driver (Nov 1st).
So, please upgrade your driver and tell us how it works...

Jean

2006-11-29 05:18:25

by Avi Kivity

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Andrew Morton wrote:
> On Tue, 28 Nov 2006 19:24:45 -0500
> Thomas Tuttle <[email protected]> wrote:
>
>
>> I've found a couple of bugs so far...
>>
>> 1. I did `modprobe kvm' and then tried running a version of the KVM Qemu
>> compiled for a different kernel. My mistake. But I got an oops:
>>
>> BUG: unable to handle kernel NULL pointer dereference at virtual address 00000008
>> Code: 14 0f 87 77 02 00 00 8b 0c b5 00 15 20 f9 85 c9 0f 84 68 02 00 00 89 ea 89 f8 ff d1 85 c0 0f 84 4c 02 00 00 89 f8 e8 31 e9 ff ff <65> a1 08 00 00 00 8b 40 04 8b 40 08 a8 04 0f 85 ae 02 00 00 e8
>> EIP: [<f91f9c3f>] kvm_vmx_return+0xef/0x4d0 [kvm] SS:ESP 0068:e5a4fd54
>>
>>

65 a1 08 00 00 00 mov %gs:0x8,%eax

kvm isn't restoring gs properly.

I'll look into it.


>> Oh, and I get a ton of these messages with kvm:
>>
>> rtc: lost some interrupts at 1024Hz.
>>
>
>

I'll look into these too, though I'm not sure where.


--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.

2006-11-29 09:06:21

by Kay Sievers

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, 2006-11-28 at 14:30 -0800, Greg KH wrote:
> On Tue, Nov 28, 2006 at 12:35:43PM +0100, Mariusz Kozlowski wrote:
> > Hello,
> >
> > When CONFIG_MODULE_UNLOAD is not set then this happens:
> >
> > CC kernel/module.o
> > kernel/module.c:852: error: `initstate' undeclared here (not in a function)
> > kernel/module.c:852: error: initializer element is not constant
> > kernel/module.c:852: error: (near initialization for `modinfo_attrs[2]')
> > make[1]: *** [kernel/module.o] Error 1
> > make: *** [kernel] Error 2
> >
> > Reference to 'initstate' should stay under #ifdef CONFIG_MODULE_UNLOAD
> > as its definition I guess.
> >
> > Signed-off-by: Mariusz Kozlowski <[email protected]>
> >
> > --- linux-2.6.19-rc6-mm2-a/kernel/module.c 2006-11-28 12:17:09.000000000 +0100
> > +++ linux-2.6.19-rc6-mm2-b/kernel/module.c 2006-11-28 12:05:01.000000000 +0100
> > @@ -849,8 +849,8 @@ static inline void module_unload_init(st
> > static struct module_attribute *modinfo_attrs[] = {
> > &modinfo_version,
> > &modinfo_srcversion,
> > - &initstate,
> > #ifdef CONFIG_MODULE_UNLOAD
> > + &initstate,
> > &refcnt,
> > #endif
>
> Kay, is this correct? I think we still need this information exported
> to userspace, even if we can't unload modules, right?

Yes, instead we should move the attribute out of the ifdef, so
it will be there, even when modules can't be unloaded.

Thanks,
Kay


Attachments:
modules-state.patch (917.00 B)

2006-11-29 10:03:57

by Adrian Bunk

[permalink] [raw]
Subject: [-mm patch] #if 0 fs/gfs2/acl.c:gfs2_check_acl()

On Tue, Nov 28, 2006 at 02:02:46AM -0800, Andrew Morton wrote:
>...
> Changes since 2.6.19-rc6-mm1:
>...
> git-gfs2-nmw.patch
>...
> git trees
>...


This patch #if 0's the no longer used gfs2_check_acl().

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

---

fs/gfs2/acl.c | 2 ++
fs/gfs2/acl.h | 1 -
2 files changed, 2 insertions(+), 1 deletion(-)

--- linux-2.6.19-rc6-mm2/fs/gfs2/acl.h.old 2006-11-29 08:49:13.000000000 +0100
+++ linux-2.6.19-rc6-mm2/fs/gfs2/acl.h 2006-11-29 08:49:22.000000000 +0100
@@ -32,7 +32,6 @@
int *remove, mode_t *mode);
int gfs2_acl_validate_remove(struct gfs2_inode *ip, int access);
int gfs2_check_acl_locked(struct inode *inode, int mask);
-int gfs2_check_acl(struct inode *inode, int mask);
int gfs2_acl_create(struct gfs2_inode *dip, struct gfs2_inode *ip);
int gfs2_acl_chmod(struct gfs2_inode *ip, struct iattr *attr);

--- linux-2.6.19-rc6-mm2/fs/gfs2/acl.c.old 2006-11-29 08:49:31.000000000 +0100
+++ linux-2.6.19-rc6-mm2/fs/gfs2/acl.c 2006-11-29 08:49:45.000000000 +0100
@@ -170,6 +170,7 @@
return -EAGAIN;
}

+#if 0
int gfs2_check_acl(struct inode *inode, int mask)
{
struct gfs2_inode *ip = GFS2_I(inode);
@@ -184,6 +185,7 @@

return error;
}
+#endif /* 0 */

static int munge_mode(struct gfs2_inode *ip, mode_t mode)
{

2006-11-29 10:15:03

by Steven Whitehouse

[permalink] [raw]
Subject: Re: [-mm patch] #if 0 fs/gfs2/acl.c:gfs2_check_acl()

Hi,

A better solution is just to remove it I think, so thats what I'll do in
my git tree. Thanks for pointing it out,

Steve.

On Wed, 2006-11-29 at 11:04 +0100, Adrian Bunk wrote:
> On Tue, Nov 28, 2006 at 02:02:46AM -0800, Andrew Morton wrote:
> >...
> > Changes since 2.6.19-rc6-mm1:
> >...
> > git-gfs2-nmw.patch
> >...
> > git trees
> >...
>
>
> This patch #if 0's the no longer used gfs2_check_acl().
>
> Signed-off-by: Adrian Bunk <[email protected]>
>
> ---
>
> fs/gfs2/acl.c | 2 ++
> fs/gfs2/acl.h | 1 -
> 2 files changed, 2 insertions(+), 1 deletion(-)
>
> --- linux-2.6.19-rc6-mm2/fs/gfs2/acl.h.old 2006-11-29 08:49:13.000000000 +0100
> +++ linux-2.6.19-rc6-mm2/fs/gfs2/acl.h 2006-11-29 08:49:22.000000000 +0100
> @@ -32,7 +32,6 @@
> int *remove, mode_t *mode);
> int gfs2_acl_validate_remove(struct gfs2_inode *ip, int access);
> int gfs2_check_acl_locked(struct inode *inode, int mask);
> -int gfs2_check_acl(struct inode *inode, int mask);
> int gfs2_acl_create(struct gfs2_inode *dip, struct gfs2_inode *ip);
> int gfs2_acl_chmod(struct gfs2_inode *ip, struct iattr *attr);
>
> --- linux-2.6.19-rc6-mm2/fs/gfs2/acl.c.old 2006-11-29 08:49:31.000000000 +0100
> +++ linux-2.6.19-rc6-mm2/fs/gfs2/acl.c 2006-11-29 08:49:45.000000000 +0100
> @@ -170,6 +170,7 @@
> return -EAGAIN;
> }
>
> +#if 0
> int gfs2_check_acl(struct inode *inode, int mask)
> {
> struct gfs2_inode *ip = GFS2_I(inode);
> @@ -184,6 +185,7 @@
>
> return error;
> }
> +#endif /* 0 */
>
> static int munge_mode(struct gfs2_inode *ip, mode_t mode)
> {
>

2006-11-29 12:43:18

by Jiri Kosina

[permalink] [raw]
Subject: [PATCH] compile fix on x86 without X86_LOCAL_APIC (was 2.6.19-rc6-mm2)

On Tue, 28 Nov 2006, Andrew Morton wrote:

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

When i386 kernel is compiled without CONFIG_X86_LOCAL_APIC, this happens:

In file included from arch/i386/kernel/traps.c:51:
include/asm/nmi.h:46:1: warning: "trigger_all_cpu_backtrace" redefined
In file included from arch/i386/kernel/traps.c:32:
include/linux/nmi.h:25:1: warning: this is the location of the previous definition
In file included from arch/i386/kernel/traps.c:51:
include/asm/nmi.h:46:1: warning: "trigger_all_cpu_backtrace" redefined
In file included from arch/i386/kernel/traps.c:32:
include/linux/nmi.h:25:1: warning: this is the location of the previous definition

This is because x86_64-mm-all-cpu-backtrace.patch makes
trigger_all_cpu_backtrace to be defined twice in such case. This fixes it.

Signed-off-by: Jiri Kosina <[email protected]>

---

include/asm-i386/nmi.h | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c
diff --git a/include/asm-i386/nmi.h b/include/asm-i386/nmi.h
index 571a32c..02a3f7f 100644
--- a/include/asm-i386/nmi.h
+++ b/include/asm-i386/nmi.h
@@ -42,7 +42,9 @@ extern int proc_nmi_enabled(struct ctl_t
void __user *, size_t *, loff_t *);
extern int unknown_nmi_panic;

+#ifdef ARCH_HAS_NMI_WATCHDOG
void __trigger_all_cpu_backtrace(void);
#define trigger_all_cpu_backtrace() __trigger_all_cpu_backtrace()
+#endif

#endif /* ASM_NMI_H */

2006-11-29 14:10:20

by Avi Kivity

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Avi Kivity wrote:
>
>
>>> Oh, and I get a ton of these messages with kvm:
>>>
>>> rtc: lost some interrupts at 1024Hz.
>>>
>>
>>
>
> I'll look into these too, though I'm not sure where.
>
>

Please try the attached patch and let us know.


--
error compiling committee.c: too many arguments to function


Attachments:
kvm-handle-external-interrupts-explicitly.patch (1.12 kB)

2006-11-29 19:59:08

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
>
> Temporarily at
>
> http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
>
> Will appear eventually at
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/

A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
work when it's first loaded. I have to rmmod and modprobe it to make it work.

It worked just fine on -mm1, so something must have happened to it recently.

Greetings,
Rafael

2006-11-29 20:12:33

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> >
> > Temporarily at
> >
> > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> >
> > Will appear eventually at
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
>
> A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> work when it's first loaded. I have to rmmod and modprobe it to make it work.
>
> It worked just fine on -mm1, so something must have happened to it recently.

Sorry, I was wrong. The driver doesn't work at all, even after reload.

Greetings,
Rafael


--
You never change things by fighting the existing reality.
R. Buckminster Fuller

2006-11-29 20:57:28

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] compile fix on x86 without X86_LOCAL_APIC (was 2.6.19-rc6-mm2)

On Wed, 29 Nov 2006 13:42:28 +0100 (CET)
Jiri Kosina <[email protected]> wrote:

> On Tue, 28 Nov 2006, Andrew Morton wrote:
>
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
>
> When i386 kernel is compiled without CONFIG_X86_LOCAL_APIC, this happens:
>
> In file included from arch/i386/kernel/traps.c:51:
> include/asm/nmi.h:46:1: warning: "trigger_all_cpu_backtrace" redefined
> In file included from arch/i386/kernel/traps.c:32:
> include/linux/nmi.h:25:1: warning: this is the location of the previous definition
> In file included from arch/i386/kernel/traps.c:51:
> include/asm/nmi.h:46:1: warning: "trigger_all_cpu_backtrace" redefined
> In file included from arch/i386/kernel/traps.c:32:
> include/linux/nmi.h:25:1: warning: this is the location of the previous definition
>
> This is because x86_64-mm-all-cpu-backtrace.patch makes
> trigger_all_cpu_backtrace to be defined twice in such case. This fixes it.
>
> Signed-off-by: Jiri Kosina <[email protected]>
>

bleargh, what a mess.

>
> include/asm-i386/nmi.h | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c
> diff --git a/include/asm-i386/nmi.h b/include/asm-i386/nmi.h
> index 571a32c..02a3f7f 100644
> --- a/include/asm-i386/nmi.h
> +++ b/include/asm-i386/nmi.h
> @@ -42,7 +42,9 @@ extern int proc_nmi_enabled(struct ctl_t
> void __user *, size_t *, loff_t *);
> extern int unknown_nmi_panic;
>
> +#ifdef ARCH_HAS_NMI_WATCHDOG
> void __trigger_all_cpu_backtrace(void);
> #define trigger_all_cpu_backtrace() __trigger_all_cpu_backtrace()
> +#endif
>
> #endif /* ASM_NMI_H */

Thanks. I think really the culprit is include/asm-i386/nmi.h: it's trying
to define and declare NMI-related things in a kernel which won't do NMIs.

This passes simple testing. I'll beat on it a bit more.


--- a/include/asm-i386/nmi.h~fix-x86_64-mm-all-cpu-backtrace
+++ a/include/asm-i386/nmi.h
@@ -5,7 +5,9 @@
#define ASM_NMI_H

#include <linux/pm.h>
+#include <asm/irq.h>

+#ifdef ARCH_HAS_NMI_WATCHDOG
/**
* do_nmi_callback
*
@@ -45,4 +47,5 @@ extern int unknown_nmi_panic;
void __trigger_all_cpu_backtrace(void);
#define trigger_all_cpu_backtrace() __trigger_all_cpu_backtrace()

-#endif /* ASM_NMI_H */
+#endif /* ARCH_HAS_NMI_WATCHDOG */
+#endif /* ASM_NMI_H */
_

2006-11-29 21:30:55

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Wed, 29 Nov 2006 21:08:00 +0100
"Rafael J. Wysocki" <[email protected]> wrote:

> On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > >
> > > Temporarily at
> > >
> > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > >
> > > Will appear eventually at
> > >
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> >
> > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > work when it's first loaded. I have to rmmod and modprobe it to make it work.

That isn't a minor issue.

> > It worked just fine on -mm1, so something must have happened to it recently.
>
> Sorry, I was wrong. The driver doesn't work at all, even after reload.
>

tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
not using that (corrent?)

git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
that either.

git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.

Beats me, sorry. Perhaps it's due to changes in networking core. It's
presumably a showstopper for statically-linked-uli526x users. If you could
bisect it, please? I'd start with git-netdev-all, then tulip-*.

2006-11-29 21:36:35

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> On Wed, 29 Nov 2006 21:08:00 +0100
> "Rafael J. Wysocki" <[email protected]> wrote:
>
> > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > >
> > > > Temporarily at
> > > >
> > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > >
> > > > Will appear eventually at
> > > >
> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > >
> > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
>
> That isn't a minor issue.
>
> > > It worked just fine on -mm1, so something must have happened to it recently.
> >
> > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> >
>
> tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> not using that (corrent?)
>
> git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> that either.
>
> git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
>
> Beats me, sorry. Perhaps it's due to changes in networking core. It's
> presumably a showstopper for statically-linked-uli526x users. If you could
> bisect it, please? I'd start with git-netdev-all, then tulip-*.

OK, but it'll take some time.

2006-11-29 22:54:17

by Andy Whitcroft

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Kay Sievers wrote:
> On Tue, 2006-11-28 at 14:30 -0800, Greg KH wrote:
>> On Tue, Nov 28, 2006 at 12:35:43PM +0100, Mariusz Kozlowski wrote:
>>> Hello,
>>>
>>> When CONFIG_MODULE_UNLOAD is not set then this happens:
>>>
>>> CC kernel/module.o
>>> kernel/module.c:852: error: `initstate' undeclared here (not in a function)
>>> kernel/module.c:852: error: initializer element is not constant
>>> kernel/module.c:852: error: (near initialization for `modinfo_attrs[2]')
>>> make[1]: *** [kernel/module.o] Error 1
>>> make: *** [kernel] Error 2
>>>
>>> Reference to 'initstate' should stay under #ifdef CONFIG_MODULE_UNLOAD
>>> as its definition I guess.
>>>
>>> Signed-off-by: Mariusz Kozlowski <[email protected]>
>>>
>>> --- linux-2.6.19-rc6-mm2-a/kernel/module.c 2006-11-28 12:17:09.000000000 +0100
>>> +++ linux-2.6.19-rc6-mm2-b/kernel/module.c 2006-11-28 12:05:01.000000000 +0100
>>> @@ -849,8 +849,8 @@ static inline void module_unload_init(st
>>> static struct module_attribute *modinfo_attrs[] = {
>>> &modinfo_version,
>>> &modinfo_srcversion,
>>> - &initstate,
>>> #ifdef CONFIG_MODULE_UNLOAD
>>> + &initstate,
>>> &refcnt,
>>> #endif
>> Kay, is this correct? I think we still need this information exported
>> to userspace, even if we can't unload modules, right?
>
> Yes, instead we should move the attribute out of the ifdef, so
> it will be there, even when modules can't be unloaded.
>
> Thanks,
> Kay

You here say move the attribute, but the patch here just adds it. Is
this right?? Looking at whats there before this patch it appears to
duplicate the code from inside the #ifdef, so we have two copies when
CONFIG_MODULE_UNLOAD is defined.

>
> ------------------------------------------------------------------------
>
> diff --git a/kernel/module.c b/kernel/module.c
> index f016656..0648f5d 100644
> --- a/kernel/module.c
> +++ b/kernel/module.c
> @@ -811,9 +811,34 @@ static inline void module_unload_init(st
> }
> #endif /* CONFIG_MODULE_UNLOAD */
>
> +static ssize_t show_initstate(struct module_attribute *mattr,
> + struct module *mod, char *buffer)
> +{
> + const char *state = "unknown";
> +
> + switch (mod->state) {
> + case MODULE_STATE_LIVE:
> + state = "live";
> + break;
> + case MODULE_STATE_COMING:
> + state = "coming";
> + break;
> + case MODULE_STATE_GOING:
> + state = "going";
> + break;
> + }
> + return sprintf(buffer, "%s\n", state);
> +}
> +
> +static struct module_attribute initstate = {
> + .attr = { .name = "initstate", .mode = 0444, .owner = THIS_MODULE },
> + .show = show_initstate,
> +};
> +
> static struct module_attribute *modinfo_attrs[] = {
> &modinfo_version,
> &modinfo_srcversion,
> + &initstate,
> #ifdef CONFIG_MODULE_UNLOAD
> &refcnt,
> #endif

-apw

2006-11-29 23:09:28

by Kay Sievers

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Wed, 2006-11-29 at 22:54 +0000, Andy Whitcroft wrote:
> Kay Sievers wrote:
> > On Tue, 2006-11-28 at 14:30 -0800, Greg KH wrote:
> >> On Tue, Nov 28, 2006 at 12:35:43PM +0100, Mariusz Kozlowski wrote:
> >>> Hello,
> >>>
> >>> When CONFIG_MODULE_UNLOAD is not set then this happens:
> >>>
> >>> CC kernel/module.o
> >>> kernel/module.c:852: error: `initstate' undeclared here (not in a function)
> >>> kernel/module.c:852: error: initializer element is not constant
> >>> kernel/module.c:852: error: (near initialization for `modinfo_attrs[2]')
> >>> make[1]: *** [kernel/module.o] Error 1
> >>> make: *** [kernel] Error 2
> >>>
> >>> Reference to 'initstate' should stay under #ifdef CONFIG_MODULE_UNLOAD
> >>> as its definition I guess.
> >>>
> >>> Signed-off-by: Mariusz Kozlowski <[email protected]>
> >>>
> >>> --- linux-2.6.19-rc6-mm2-a/kernel/module.c 2006-11-28 12:17:09.000000000 +0100
> >>> +++ linux-2.6.19-rc6-mm2-b/kernel/module.c 2006-11-28 12:05:01.000000000 +0100
> >>> @@ -849,8 +849,8 @@ static inline void module_unload_init(st
> >>> static struct module_attribute *modinfo_attrs[] = {
> >>> &modinfo_version,
> >>> &modinfo_srcversion,
> >>> - &initstate,
> >>> #ifdef CONFIG_MODULE_UNLOAD
> >>> + &initstate,
> >>> &refcnt,
> >>> #endif
> >> Kay, is this correct? I think we still need this information exported
> >> to userspace, even if we can't unload modules, right?
> >
> > Yes, instead we should move the attribute out of the ifdef, so
> > it will be there, even when modules can't be unloaded.

> You here say move the attribute, but the patch here just adds it. Is
> this right?? Looking at whats there before this patch it appears to
> duplicate the code from inside the #ifdef, so we have two copies when
> CONFIG_MODULE_UNLOAD is defined.

It just replaces the patch "modules-state.patch" in Greg's tree, that
adds the attribute, it's not on top of it.

Thanks,
Kay

2006-11-29 23:13:13

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > On Wed, 29 Nov 2006 21:08:00 +0100
> > "Rafael J. Wysocki" <[email protected]> wrote:
> >
> > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > >
> > > > > Temporarily at
> > > > >
> > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > >
> > > > > Will appear eventually at
> > > > >
> > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > >
> > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> >
> > That isn't a minor issue.
> >
> > > > It worked just fine on -mm1, so something must have happened to it recently.
> > >
> > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > >
> >
> > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > not using that (corrent?)
> >
> > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > that either.
> >
> > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> >
> > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > presumably a showstopper for statically-linked-uli526x users. If you could
> > bisect it, please? I'd start with git-netdev-all, then tulip-*.
>
> OK, but it'll take some time.

OK, done.

It's one of these (the first one alone doesn't compile):

git-netdev-all.patch
git-netdev-all-fixup.patch
libphy-dont-do-that.patch

Is a broken-out version of git-netdev-all.patch available from somewhere?

Greetings,
Rafael

2006-11-29 23:27:20

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Thu, 30 Nov 2006 00:08:21 +0100
"Rafael J. Wysocki" <[email protected]> wrote:

> On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > "Rafael J. Wysocki" <[email protected]> wrote:
> > >
> > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > >
> > > > > > Temporarily at
> > > > > >
> > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > >
> > > > > > Will appear eventually at
> > > > > >
> > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > >
> > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > >
> > > That isn't a minor issue.
> > >
> > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > >
> > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > >
> > >
> > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > not using that (corrent?)
> > >
> > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > that either.
> > >
> > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > >
> > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> >
> > OK, but it'll take some time.
>
> OK, done.
>
> It's one of these (the first one alone doesn't compile):
>
> git-netdev-all.patch
> git-netdev-all-fixup.patch
> libphy-dont-do-that.patch

Are you able to eliminate libphy-dont-do-that.patch?

> Is a broken-out version of git-netdev-all.patch available from somewhere?

Nope, and my few fumbling attempts to generate the sort of patch series
which you want didn't work out too well. One has to downgrade to
git-bisect :(

What does "doesn't work" mean, btw?

2006-11-30 01:08:55

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> On Thu, 30 Nov 2006 00:08:21 +0100
> "Rafael J. Wysocki" <[email protected]> wrote:
>
> > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > >
> > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > >
> > > > > > > Temporarily at
> > > > > > >
> > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > >
> > > > > > > Will appear eventually at
> > > > > > >
> > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > >
> > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > >
> > > > That isn't a minor issue.
> > > >
> > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > >
> > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > >
> > > >
> > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > not using that (corrent?)
> > > >
> > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > that either.
> > > >
> > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > >
> > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > >
> > > OK, but it'll take some time.
> >
> > OK, done.
> >
> > It's one of these (the first one alone doesn't compile):
> >
> > git-netdev-all.patch
> > git-netdev-all-fixup.patch
> > libphy-dont-do-that.patch
>
> Are you able to eliminate libphy-dont-do-that.patch?
>
> > Is a broken-out version of git-netdev-all.patch available from somewhere?
>
> Nope, and my few fumbling attempts to generate the sort of patch series
> which you want didn't work out too well. One has to downgrade to
> git-bisect :(
>
> What does "doesn't work" mean, btw?

Well, it turns out not to be 100% reproducible. I can only reproduce it after
a soft reboot (eg. shutdown -r now).

Then, while configuring network interfaces the system says the interface name
is ethxx0, but it should be eth1 (eth0 is an RTL-8139, which is not used). Now
if I run ifconfig, it says:

eth0: error fetching interface information: Device not found

and that's all (normally, ifconfig would show the information for lo and eth1,
without eth0). Moreover, 'ifconfig eth1' says:

eth1: error fetching interface information: Device not found

Next, I run 'rmmod uli526x' and 'modprobe uli526x' and then 'ifconfig' is
still saying the above (about eth0), but 'ifconfig eth1' seems to work as
it should. However, the interface often fails to transfer anything after
that.

Greetings,
Rafael


--
You never change things by fighting the existing reality.
R. Buckminster Fuller

2006-11-30 02:18:33

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Thu, 30 Nov 2006 02:04:15 +0100
"Rafael J. Wysocki" <[email protected]> wrote:

> > >
> > > git-netdev-all.patch
> > > git-netdev-all-fixup.patch
> > > libphy-dont-do-that.patch
> >
> > Are you able to eliminate libphy-dont-do-that.patch?
> >
> > > Is a broken-out version of git-netdev-all.patch available from somewhere?
> >
> > Nope, and my few fumbling attempts to generate the sort of patch series
> > which you want didn't work out too well. One has to downgrade to
> > git-bisect :(
> >
> > What does "doesn't work" mean, btw?
>
> Well, it turns out not to be 100% reproducible. I can only reproduce it after
> a soft reboot (eg. shutdown -r now).
>
> Then, while configuring network interfaces the system says the interface name
> is ethxx0, but it should be eth1 (eth0 is an RTL-8139, which is not used). Now
> if I run ifconfig, it says:
>
> eth0: error fetching interface information: Device not found
>
> and that's all (normally, ifconfig would show the information for lo and eth1,
> without eth0). Moreover, 'ifconfig eth1' says:
>
> eth1: error fetching interface information: Device not found
>
> Next, I run 'rmmod uli526x' and 'modprobe uli526x' and then 'ifconfig' is
> still saying the above (about eth0), but 'ifconfig eth1' seems to work as
> it should. However, the interface often fails to transfer anything after
> that.

Lovely. Sounds like some startup race, perhaps against userspace.

Is CONFIG_PCI_MULTITHREAD_PROBE set? (err, we meant to disable that for
2.6.19 but forgot).

2006-11-30 03:30:27

by Ed Tomlinson

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tuesday 28 November 2006 05:02, Andrew Morton wrote:

> Will appear eventually at
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/

This kernel does not boot here. It does not get far enough to post anything to my serial console.
The last booted kernel here is 19-rc5-mm2. Grub is used to boot, here is the starting log
of rc5-mm2 build is UP AMD64:

[ 0.000000] Linux version 2.6.19-rc5-mm2 (root@grover) (gcc version 4.1.1 (Gentoo 4.1.1-r1)) #1 PREEM6
[ 0.000000] Command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 console=tty1
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
[ 0.000000] BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
[ 0.000000] BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
[ 0.000000] BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
[ 0.000000] BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
[ 0.000000] BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
[ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
[ 0.000000] BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
[ 0.000000] BIOS-e820: 00000000fefffc00 - 00000000ff000000 (reserved)
[ 0.000000] BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
[ 0.000000] end_pfn_map = 1048576
[ 0.000000] DMI 2.2 present.
[ 0.000000] Zone PFN ranges:
[ 0.000000] DMA 0 -> 4096
[ 0.000000] DMA32 4096 -> 1048576
[ 0.000000] Normal 1048576 -> 1048576
[ 0.000000] early_node_map[2] active PFN ranges
[ 0.000000] 0: 0 -> 159
[ 0.000000] 0: 256 -> 262128
[ 0.000000] Nvidia board detected. Ignoring ACPI timer override.
[ 0.000000] ACPI: PM-Timer IO Port: 0x4008
[ 0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
[ 0.000000] Processor #0 (Bootup-CPU)
[ 0.000000] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
[ 0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
[ 0.000000] IOAPIC[0]: apic_id 2, address 0xfec00000, GSI 0-23
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[ 0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
[ 0.000000] Setting APIC routing to flat
[ 0.000000] Using ACPI (MADT) for SMP configuration information
[ 0.000000] Nosave address range: 000000000009f000 - 00000000000a0000
[ 0.000000] Nosave address range: 00000000000a0000 - 00000000000f0000
[ 0.000000] Nosave address range: 00000000000f0000 - 0000000000100000
[ 0.000000] Allocating PCI resources starting at 50000000 (gap: 40000000:bec00000)
[ 0.000000] Built 1 zonelists. Total pages: 257320
[ 0.000000] Kernel command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 cons1
[ 0.000000] Initializing CPU#0
[ 0.000000] PID hash table entries: 4096 (order: 12, 32768 bytes)

Any ideas what I should try or suggestions on patches to remove/try.

Thanks
Ed

2006-11-30 04:09:58

by Randy Dunlap

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Wed, 29 Nov 2006 22:42:20 -0500 Ed Tomlinson wrote:

> On Tuesday 28 November 2006 05:02, Andrew Morton wrote:
>
> > Will appear eventually at
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
>
> This kernel does not boot here. It does not get far enough to post anything to my serial console.

Have you tried using "earlyprintk=..." to see if it produces any
more output?

> The last booted kernel here is 19-rc5-mm2. Grub is used to boot, here is the starting log
> of rc5-mm2 build is UP AMD64:
>
> [ 0.000000] Linux version 2.6.19-rc5-mm2 (root@grover) (gcc version 4.1.1 (Gentoo 4.1.1-r1)) #1 PREEM6
> [ 0.000000] Command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 console=tty1
> [ 0.000000] BIOS-provided physical RAM map:
> [ 0.000000] BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
> [ 0.000000] BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
> [ 0.000000] BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
> [ 0.000000] BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
> [ 0.000000] BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
> [ 0.000000] BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
> [ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
> [ 0.000000] BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
> [ 0.000000] BIOS-e820: 00000000fefffc00 - 00000000ff000000 (reserved)
> [ 0.000000] BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
> [ 0.000000] end_pfn_map = 1048576
> [ 0.000000] DMI 2.2 present.
> [ 0.000000] Zone PFN ranges:
> [ 0.000000] DMA 0 -> 4096
> [ 0.000000] DMA32 4096 -> 1048576
> [ 0.000000] Normal 1048576 -> 1048576
> [ 0.000000] early_node_map[2] active PFN ranges
> [ 0.000000] 0: 0 -> 159
> [ 0.000000] 0: 256 -> 262128
> [ 0.000000] Nvidia board detected. Ignoring ACPI timer override.
> [ 0.000000] ACPI: PM-Timer IO Port: 0x4008
> [ 0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
> [ 0.000000] Processor #0 (Bootup-CPU)
> [ 0.000000] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
> [ 0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
> [ 0.000000] IOAPIC[0]: apic_id 2, address 0xfec00000, GSI 0-23
> [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
> [ 0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
> [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
> [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
> [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
> [ 0.000000] Setting APIC routing to flat
> [ 0.000000] Using ACPI (MADT) for SMP configuration information
> [ 0.000000] Nosave address range: 000000000009f000 - 00000000000a0000
> [ 0.000000] Nosave address range: 00000000000a0000 - 00000000000f0000
> [ 0.000000] Nosave address range: 00000000000f0000 - 0000000000100000
> [ 0.000000] Allocating PCI resources starting at 50000000 (gap: 40000000:bec00000)
> [ 0.000000] Built 1 zonelists. Total pages: 257320
> [ 0.000000] Kernel command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 cons1
> [ 0.000000] Initializing CPU#0
> [ 0.000000] PID hash table entries: 4096 (order: 12, 32768 bytes)
>
> Any ideas what I should try or suggestions on patches to remove/try.
>
> Thanks
> Ed

---
~Randy

2006-11-30 12:51:43

by Ed Tomlinson

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Wednesday 29 November 2006 23:10, Randy Dunlap wrote:
> On Wed, 29 Nov 2006 22:42:20 -0500 Ed Tomlinson wrote:
>
> > On Tuesday 28 November 2006 05:02, Andrew Morton wrote:
> >
> > > Will appear eventually at
> > >
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> >
> > This kernel does not boot here. It does not get far enough to post anything to my serial console.
>
> Have you tried using "earlyprintk=..." to see if it produces any
> more output?

Nothing is displayed by earlyprintk. I also added it to the rc5-mm2 boot to verify it. The messages
displayed were the same as below...

Thanks
Ed

> > The last booted kernel here is 19-rc5-mm2. Grub is used to boot, here is the starting log
> > of rc5-mm2 build is UP AMD64:
> >
> > [ 0.000000] Linux version 2.6.19-rc5-mm2 (root@grover) (gcc version 4.1.1 (Gentoo 4.1.1-r1)) #1 PREEM6
> > [ 0.000000] Command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 console=tty1
> > [ 0.000000] BIOS-provided physical RAM map:
> > [ 0.000000] BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
> > [ 0.000000] BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
> > [ 0.000000] BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
> > [ 0.000000] BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
> > [ 0.000000] BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
> > [ 0.000000] BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
> > [ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
> > [ 0.000000] BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
> > [ 0.000000] BIOS-e820: 00000000fefffc00 - 00000000ff000000 (reserved)
> > [ 0.000000] BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
> > [ 0.000000] end_pfn_map = 1048576
> > [ 0.000000] DMI 2.2 present.
> > [ 0.000000] Zone PFN ranges:
> > [ 0.000000] DMA 0 -> 4096
> > [ 0.000000] DMA32 4096 -> 1048576
> > [ 0.000000] Normal 1048576 -> 1048576
> > [ 0.000000] early_node_map[2] active PFN ranges
> > [ 0.000000] 0: 0 -> 159
> > [ 0.000000] 0: 256 -> 262128
> > [ 0.000000] Nvidia board detected. Ignoring ACPI timer override.
> > [ 0.000000] ACPI: PM-Timer IO Port: 0x4008
> > [ 0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
> > [ 0.000000] Processor #0 (Bootup-CPU)
> > [ 0.000000] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
> > [ 0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
> > [ 0.000000] IOAPIC[0]: apic_id 2, address 0xfec00000, GSI 0-23
> > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
> > [ 0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
> > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
> > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
> > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
> > [ 0.000000] Setting APIC routing to flat
> > [ 0.000000] Using ACPI (MADT) for SMP configuration information
> > [ 0.000000] Nosave address range: 000000000009f000 - 00000000000a0000
> > [ 0.000000] Nosave address range: 00000000000a0000 - 00000000000f0000
> > [ 0.000000] Nosave address range: 00000000000f0000 - 0000000000100000
> > [ 0.000000] Allocating PCI resources starting at 50000000 (gap: 40000000:bec00000)
> > [ 0.000000] Built 1 zonelists. Total pages: 257320
> > [ 0.000000] Kernel command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 cons1
> > [ 0.000000] Initializing CPU#0
> > [ 0.000000] PID hash table entries: 4096 (order: 12, 32768 bytes)
> >
> > Any ideas what I should try or suggestions on patches to remove/try.
> >
> > Thanks
> > Ed
>
> ---
> ~Randy
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>

2006-11-30 20:26:19

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Thursday, 30 November 2006 02:04, Rafael J. Wysocki wrote:
> On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> > On Thu, 30 Nov 2006 00:08:21 +0100
> > "Rafael J. Wysocki" <[email protected]> wrote:
> >
> > > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > >
> > > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > > >
> > > > > > > > Temporarily at
> > > > > > > >
> > > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > > >
> > > > > > > > Will appear eventually at
> > > > > > > >
> > > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > > >
> > > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > > >
> > > > > That isn't a minor issue.
> > > > >
> > > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > > >
> > > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > > >
> > > > >
> > > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > > not using that (corrent?)
> > > > >
> > > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > > that either.
> > > > >
> > > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > > >
> > > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > > >
> > > > OK, but it'll take some time.
> > >
> > > OK, done.
> > >
> > > It's one of these (the first one alone doesn't compile):
> > >
> > > git-netdev-all.patch
> > > git-netdev-all-fixup.patch
> > > libphy-dont-do-that.patch

Hm, all of these patches are the same as in -mm1 which hasn't caused any
problems to appear on this box.

So, it seems there's another change between -mm1 and -mm2 that causes this
to happen.

Greetings,
Rafael

2006-11-30 21:13:11

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Thu, 30 Nov 2006 21:21:27 +0100
"Rafael J. Wysocki" <[email protected]> wrote:

> On Thursday, 30 November 2006 02:04, Rafael J. Wysocki wrote:
> > On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> > > On Thu, 30 Nov 2006 00:08:21 +0100
> > > "Rafael J. Wysocki" <[email protected]> wrote:
> > >
> > > > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > >
> > > > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > > > >
> > > > > > > > > Temporarily at
> > > > > > > > >
> > > > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > > > >
> > > > > > > > > Will appear eventually at
> > > > > > > > >
> > > > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > > > >
> > > > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > > > >
> > > > > > That isn't a minor issue.
> > > > > >
> > > > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > > > >
> > > > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > > > >
> > > > > >
> > > > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > > > not using that (corrent?)
> > > > > >
> > > > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > > > that either.
> > > > > >
> > > > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > > > >
> > > > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > > > >
> > > > > OK, but it'll take some time.
> > > >
> > > > OK, done.
> > > >
> > > > It's one of these (the first one alone doesn't compile):
> > > >
> > > > git-netdev-all.patch
> > > > git-netdev-all-fixup.patch
> > > > libphy-dont-do-that.patch
>
> Hm, all of these patches are the same as in -mm1 which hasn't caused any
> problems to appear on this box.
>
> So, it seems there's another change between -mm1 and -mm2 that causes this
> to happen.
>

It would be nice to eliminate libphy-dont-do-that.patch if poss - that was
a rogue akpm patch aimed at some incomprehensible gobbledigook in the
netdev tree (and to fix the current_is_keventd-not-exported-to-modules
bug).

I have a feeling that your bug will be cheerily merged into mainline soon.
That might of course mean that someone will hit it more firmly and it'll
get fixed.

2006-11-30 21:36:55

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

[Trimmed the Cc list a bit.]

On Thursday, 30 November 2006 22:12, Andrew Morton wrote:
> On Thu, 30 Nov 2006 21:21:27 +0100
> "Rafael J. Wysocki" <[email protected]> wrote:
>
> > On Thursday, 30 November 2006 02:04, Rafael J. Wysocki wrote:
> > > On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> > > > On Thu, 30 Nov 2006 00:08:21 +0100
> > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > >
> > > > > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > > > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > > >
> > > > > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > > > > >
> > > > > > > > > > Temporarily at
> > > > > > > > > >
> > > > > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > > > > >
> > > > > > > > > > Will appear eventually at
> > > > > > > > > >
> > > > > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > > > > >
> > > > > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > > > > >
> > > > > > > That isn't a minor issue.
> > > > > > >
> > > > > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > > > > >
> > > > > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > > > > >
> > > > > > >
> > > > > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > > > > not using that (corrent?)
> > > > > > >
> > > > > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > > > > that either.
> > > > > > >
> > > > > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > > > > >
> > > > > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > > > > >
> > > > > > OK, but it'll take some time.
> > > > >
> > > > > OK, done.
> > > > >
> > > > > It's one of these (the first one alone doesn't compile):
> > > > >
> > > > > git-netdev-all.patch
> > > > > git-netdev-all-fixup.patch
> > > > > libphy-dont-do-that.patch
> >
> > Hm, all of these patches are the same as in -mm1 which hasn't caused any
> > problems to appear on this box.
> >
> > So, it seems there's another change between -mm1 and -mm2 that causes this
> > to happen.
> >
>
> It would be nice to eliminate libphy-dont-do-that.patch if poss - that was
> a rogue akpm patch aimed at some incomprehensible gobbledigook in the
> netdev tree (and to fix the current_is_keventd-not-exported-to-modules
> bug).

Unfortunately the kernel doesn't compile without it ...

Well, I think I'll try to find the patch that contains the change which has
triggered this.

Now it looks like the problem is 100% reproducible after a fresh poweron as
long as I don't run a non-failing kernel on the box. [Symptoms tend to vary,
though. Sometimes the reloading of uli526x doesn't help at all, sometimes
it makes the interface appear but without the possibility to transmit data,
and sometimes it makes the interface work.]

> I have a feeling that your bug will be cheerily merged into mainline soon.
> That might of course mean that someone will hit it more firmly and it'll
> get fixed.

Yes, that's possible.

2006-12-01 01:13:32

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Thursday, 30 November 2006 22:32, Rafael J. Wysocki wrote:
> [Trimmed the Cc list a bit.]
>
> On Thursday, 30 November 2006 22:12, Andrew Morton wrote:
> > On Thu, 30 Nov 2006 21:21:27 +0100
> > "Rafael J. Wysocki" <[email protected]> wrote:
> >
> > > On Thursday, 30 November 2006 02:04, Rafael J. Wysocki wrote:
> > > > On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> > > > > On Thu, 30 Nov 2006 00:08:21 +0100
> > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > >
> > > > > > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > > > > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > > > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > > > >
> > > > > > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > > > > > >
> > > > > > > > > > > Temporarily at
> > > > > > > > > > >
> > > > > > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > > > > > >
> > > > > > > > > > > Will appear eventually at
> > > > > > > > > > >
> > > > > > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > > > > > >
> > > > > > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > > > > > >
> > > > > > > > That isn't a minor issue.
> > > > > > > >
> > > > > > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > > > > > >
> > > > > > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > > > > > >
> > > > > > > >
> > > > > > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > > > > > not using that (corrent?)
> > > > > > > >
> > > > > > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > > > > > that either.
> > > > > > > >
> > > > > > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > > > > > >
> > > > > > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > > > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > > > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > > > > > >
> > > > > > > OK, but it'll take some time.
> > > > > >
> > > > > > OK, done.
> > > > > >
> > > > > > It's one of these (the first one alone doesn't compile):
> > > > > >
> > > > > > git-netdev-all.patch
> > > > > > git-netdev-all-fixup.patch
> > > > > > libphy-dont-do-that.patch
> > >
> > > Hm, all of these patches are the same as in -mm1 which hasn't caused any
> > > problems to appear on this box.
> > >
> > > So, it seems there's another change between -mm1 and -mm2 that causes this
> > > to happen.
> > >
> >
> > It would be nice to eliminate libphy-dont-do-that.patch if poss - that was
> > a rogue akpm patch aimed at some incomprehensible gobbledigook in the
> > netdev tree (and to fix the current_is_keventd-not-exported-to-modules
> > bug).
>
> Unfortunately the kernel doesn't compile without it ...
>
> Well, I think I'll try to find the patch that contains the change which has
> triggered this.

It looks like the winner is:

gregkh-driver-driver-core-fixes-sysfs_create_link-retval-checks-in-core.c.patch

Without this patch there are no problems, with this patch applied the problems
(with uli526x, when it's the second interface and the first one is not used)
occur, almost 100% of the time.

2006-12-01 01:21:05

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Wed, Nov 29, 2006 at 06:18:09PM -0800, Andrew Morton wrote:
> On Thu, 30 Nov 2006 02:04:15 +0100
> "Rafael J. Wysocki" <[email protected]> wrote:
>
> > > >
> > > > git-netdev-all.patch
> > > > git-netdev-all-fixup.patch
> > > > libphy-dont-do-that.patch
> > >
> > > Are you able to eliminate libphy-dont-do-that.patch?
> > >
> > > > Is a broken-out version of git-netdev-all.patch available from somewhere?
> > >
> > > Nope, and my few fumbling attempts to generate the sort of patch series
> > > which you want didn't work out too well. One has to downgrade to
> > > git-bisect :(
> > >
> > > What does "doesn't work" mean, btw?
> >
> > Well, it turns out not to be 100% reproducible. I can only reproduce it after
> > a soft reboot (eg. shutdown -r now).
> >
> > Then, while configuring network interfaces the system says the interface name
> > is ethxx0, but it should be eth1 (eth0 is an RTL-8139, which is not used). Now
> > if I run ifconfig, it says:
> >
> > eth0: error fetching interface information: Device not found
> >
> > and that's all (normally, ifconfig would show the information for lo and eth1,
> > without eth0). Moreover, 'ifconfig eth1' says:
> >
> > eth1: error fetching interface information: Device not found
> >
> > Next, I run 'rmmod uli526x' and 'modprobe uli526x' and then 'ifconfig' is
> > still saying the above (about eth0), but 'ifconfig eth1' seems to work as
> > it should. However, the interface often fails to transfer anything after
> > that.
>
> Lovely. Sounds like some startup race, perhaps against userspace.
>
> Is CONFIG_PCI_MULTITHREAD_PROBE set? (err, we meant to disable that for
> 2.6.19 but forgot).

No, I disabled it for 2.6.19, -mm turns it back on :)

thanks,

greg k-h

2006-12-01 01:27:56

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Fri, Dec 01, 2006 at 02:08:28AM +0100, Rafael J. Wysocki wrote:
> On Thursday, 30 November 2006 22:32, Rafael J. Wysocki wrote:
> > [Trimmed the Cc list a bit.]
> >
> > On Thursday, 30 November 2006 22:12, Andrew Morton wrote:
> > > On Thu, 30 Nov 2006 21:21:27 +0100
> > > "Rafael J. Wysocki" <[email protected]> wrote:
> > >
> > > > On Thursday, 30 November 2006 02:04, Rafael J. Wysocki wrote:
> > > > > On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> > > > > > On Thu, 30 Nov 2006 00:08:21 +0100
> > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > >
> > > > > > > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > > > > > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > > > > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > > > > >
> > > > > > > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > > > > > > >
> > > > > > > > > > > > Temporarily at
> > > > > > > > > > > >
> > > > > > > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > > > > > > >
> > > > > > > > > > > > Will appear eventually at
> > > > > > > > > > > >
> > > > > > > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > > > > > > >
> > > > > > > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > > > > > > >
> > > > > > > > > That isn't a minor issue.
> > > > > > > > >
> > > > > > > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > > > > > > >
> > > > > > > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > > > > > > not using that (corrent?)
> > > > > > > > >
> > > > > > > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > > > > > > that either.
> > > > > > > > >
> > > > > > > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > > > > > > >
> > > > > > > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > > > > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > > > > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > > > > > > >
> > > > > > > > OK, but it'll take some time.
> > > > > > >
> > > > > > > OK, done.
> > > > > > >
> > > > > > > It's one of these (the first one alone doesn't compile):
> > > > > > >
> > > > > > > git-netdev-all.patch
> > > > > > > git-netdev-all-fixup.patch
> > > > > > > libphy-dont-do-that.patch
> > > >
> > > > Hm, all of these patches are the same as in -mm1 which hasn't caused any
> > > > problems to appear on this box.
> > > >
> > > > So, it seems there's another change between -mm1 and -mm2 that causes this
> > > > to happen.
> > > >
> > >
> > > It would be nice to eliminate libphy-dont-do-that.patch if poss - that was
> > > a rogue akpm patch aimed at some incomprehensible gobbledigook in the
> > > netdev tree (and to fix the current_is_keventd-not-exported-to-modules
> > > bug).
> >
> > Unfortunately the kernel doesn't compile without it ...
> >
> > Well, I think I'll try to find the patch that contains the change which has
> > triggered this.
>
> It looks like the winner is:
>
> gregkh-driver-driver-core-fixes-sysfs_create_link-retval-checks-in-core.c.patch
>
> Without this patch there are no problems, with this patch applied the problems
> (with uli526x, when it's the second interface and the first one is not used)
> occur, almost 100% of the time.

Hm, that's odd. Let me look at this closer and see if we are somehow
now failing something that previously we were not (this has happened
before...)

Cornelia, this is your patch, can you see anything obvious that would
cause this issue?

thanks,

greg k-h

2006-12-02 00:12:33

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Friday, 1 December 2006 02:20, Greg KH wrote:
> On Wed, Nov 29, 2006 at 06:18:09PM -0800, Andrew Morton wrote:
> > On Thu, 30 Nov 2006 02:04:15 +0100
> > "Rafael J. Wysocki" <[email protected]> wrote:
> >
> > > > >
> > > > > git-netdev-all.patch
> > > > > git-netdev-all-fixup.patch
> > > > > libphy-dont-do-that.patch
> > > >
> > > > Are you able to eliminate libphy-dont-do-that.patch?
> > > >
> > > > > Is a broken-out version of git-netdev-all.patch available from somewhere?
> > > >
> > > > Nope, and my few fumbling attempts to generate the sort of patch series
> > > > which you want didn't work out too well. One has to downgrade to
> > > > git-bisect :(
> > > >
> > > > What does "doesn't work" mean, btw?
> > >
> > > Well, it turns out not to be 100% reproducible. I can only reproduce it after
> > > a soft reboot (eg. shutdown -r now).
> > >
> > > Then, while configuring network interfaces the system says the interface name
> > > is ethxx0, but it should be eth1 (eth0 is an RTL-8139, which is not used). Now
> > > if I run ifconfig, it says:
> > >
> > > eth0: error fetching interface information: Device not found
> > >
> > > and that's all (normally, ifconfig would show the information for lo and eth1,
> > > without eth0). Moreover, 'ifconfig eth1' says:
> > >
> > > eth1: error fetching interface information: Device not found
> > >
> > > Next, I run 'rmmod uli526x' and 'modprobe uli526x' and then 'ifconfig' is
> > > still saying the above (about eth0), but 'ifconfig eth1' seems to work as
> > > it should. However, the interface often fails to transfer anything after
> > > that.
> >
> > Lovely. Sounds like some startup race, perhaps against userspace.
> >
> > Is CONFIG_PCI_MULTITHREAD_PROBE set? (err, we meant to disable that for
> > 2.6.19 but forgot).
>
> No, I disabled it for 2.6.19, -mm turns it back on :)

But it's not set in my .config.

Greetings,
Rafael


--
You never change things by fighting the existing reality.
R. Buckminster Fuller

2006-12-02 00:22:07

by Ed Tomlinson

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Andrew,

I booted without the video and vga settings with earlyprintk=vga and got output. The
kenerl was complaining about a crc error. Checking the patch list I found:

crc32-replace-bitreverse-by-bitrev32.patch

reversing this patch fixes booting here.

Please do not push this on - it breaks amd64 here.

Thanks
Ed Tomlinson

On Thursday 30 November 2006 08:03, Ed Tomlinson wrote:
> On Wednesday 29 November 2006 23:10, Randy Dunlap wrote:
> > On Wed, 29 Nov 2006 22:42:20 -0500 Ed Tomlinson wrote:
> >
> > > On Tuesday 28 November 2006 05:02, Andrew Morton wrote:
> > >
> > > > Will appear eventually at
> > > >
> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > >
> > > This kernel does not boot here. It does not get far enough to post anything to my serial console.
> >
> > Have you tried using "earlyprintk=..." to see if it produces any
> > more output?
>
> Nothing is displayed by earlyprintk. I also added it to the rc5-mm2 boot to verify it. The messages
> displayed were the same as below...
>
> Thanks
> Ed
>
> > > The last booted kernel here is 19-rc5-mm2. Grub is used to boot, here is the starting log
> > > of rc5-mm2 build is UP AMD64:
> > >
> > > [ 0.000000] Linux version 2.6.19-rc5-mm2 (root@grover) (gcc version 4.1.1 (Gentoo 4.1.1-r1)) #1 PREEM6
> > > [ 0.000000] Command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 console=tty1
> > > [ 0.000000] BIOS-provided physical RAM map:
> > > [ 0.000000] BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
> > > [ 0.000000] BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
> > > [ 0.000000] BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
> > > [ 0.000000] BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
> > > [ 0.000000] BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
> > > [ 0.000000] BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
> > > [ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
> > > [ 0.000000] BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
> > > [ 0.000000] BIOS-e820: 00000000fefffc00 - 00000000ff000000 (reserved)
> > > [ 0.000000] BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
> > > [ 0.000000] end_pfn_map = 1048576
> > > [ 0.000000] DMI 2.2 present.
> > > [ 0.000000] Zone PFN ranges:
> > > [ 0.000000] DMA 0 -> 4096
> > > [ 0.000000] DMA32 4096 -> 1048576
> > > [ 0.000000] Normal 1048576 -> 1048576
> > > [ 0.000000] early_node_map[2] active PFN ranges
> > > [ 0.000000] 0: 0 -> 159
> > > [ 0.000000] 0: 256 -> 262128
> > > [ 0.000000] Nvidia board detected. Ignoring ACPI timer override.
> > > [ 0.000000] ACPI: PM-Timer IO Port: 0x4008
> > > [ 0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
> > > [ 0.000000] Processor #0 (Bootup-CPU)
> > > [ 0.000000] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
> > > [ 0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
> > > [ 0.000000] IOAPIC[0]: apic_id 2, address 0xfec00000, GSI 0-23
> > > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
> > > [ 0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
> > > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
> > > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
> > > [ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
> > > [ 0.000000] Setting APIC routing to flat
> > > [ 0.000000] Using ACPI (MADT) for SMP configuration information
> > > [ 0.000000] Nosave address range: 000000000009f000 - 00000000000a0000
> > > [ 0.000000] Nosave address range: 00000000000a0000 - 00000000000f0000
> > > [ 0.000000] Nosave address range: 00000000000f0000 - 0000000000100000
> > > [ 0.000000] Allocating PCI resources starting at 50000000 (gap: 40000000:bec00000)
> > > [ 0.000000] Built 1 zonelists. Total pages: 257320
> > > [ 0.000000] Kernel command line: root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 cons1
> > > [ 0.000000] Initializing CPU#0
> > > [ 0.000000] PID hash table entries: 4096 (order: 12, 32768 bytes)
> > >
> > > Any ideas what I should try or suggestions on patches to remove/try.
> > >
> > > Thanks
> > > Ed
> >
> > ---
> > ~Randy
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to [email protected]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
> >
> >
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>

2006-12-02 00:33:05

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Fri, 1 Dec 2006 19:33:21 -0500
Ed Tomlinson <[email protected]> wrote:

> I booted without the video and vga settings with earlyprintk=vga and got output. The
> kenerl was complaining about a crc error. Checking the patch list I found:
>
> crc32-replace-bitreverse-by-bitrev32.patch
>
> reversing this patch fixes booting here.

Odd that you're the only person seeing this - could be a miscompile?

What was the error message, exactly?

2006-12-02 03:07:00

by Ed Tomlinson

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Friday 01 December 2006 19:32, Andrew Morton wrote:
> On Fri, 1 Dec 2006 19:33:21 -0500
> Ed Tomlinson <[email protected]> wrote:
>
> > I booted without the video and vga settings with earlyprintk=vga and got output. The
> > kenerl was complaining about a crc error. Checking the patch list I found:
> >
> > crc32-replace-bitreverse-by-bitrev32.patch
> >
> > reversing this patch fixes booting here.
>
> Odd that you're the only person seeing this - could be a miscompile?

I recompiled four times. The only change the last time was to reverse the above patch. I am using
gcc is 4.1.1 (gentoo 4.1.1-r1).

> What was the error message, exactly?

I am not sure of the exact text. Basicly the loader loaded the kernel, a crc error was reported, then the kernel halted.
I am using grub, gcc 4.1.1 (Gentoo 4.1.1-r1).

2006-12-02 04:17:27

by Akinobu Mita

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Fri, Dec 01, 2006 at 10:19:00PM -0500, Ed Tomlinson wrote:
> On Friday 01 December 2006 19:32, Andrew Morton wrote:
> > On Fri, 1 Dec 2006 19:33:21 -0500
> > Ed Tomlinson <[email protected]> wrote:
> >
> > > I booted without the video and vga settings with earlyprintk=vga and got output. The
> > > kenerl was complaining about a crc error. Checking the patch list I found:
> > >
> > > crc32-replace-bitreverse-by-bitrev32.patch
> > >
> > > reversing this patch fixes booting here.
> >
> > Odd that you're the only person seeing this - could be a miscompile?
>
> I recompiled four times. The only change the last time was to reverse the above patch. I am using
> gcc is 4.1.1 (gentoo 4.1.1-r1).
>

Can you try build and boot with that patch again?
I expected there is not any logical changes in that patch. So I want to
make sure it.

2006-12-02 12:17:38

by Adrian Bunk

[permalink] [raw]
Subject: [-mm patch] arch/frv/kernel/futex.c must #include <linux/uaccess.h>

This patch fixes the following compile error with
-Werror-implicit-function-declaration
(without -Werror-implicit-function-declaration it's a link error):

<-- snip -->

...
CC arch/frv/kernel/futex.o
/home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c:
In function 'futex_atomic_op_inuser':
/home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c:203:
error: implicit declaration of function 'pagefault_disable'
/home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c:226:
error: implicit declaration of function 'pagefault_enable'
make[2]: *** [arch/frv/kernel/futex.o] Error 1

<-- snip -->

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

--- linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c.old 2006-12-02 13:06:45.000000000 +0100
+++ linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c 2006-12-02 13:07:17.000000000 +0100
@@ -10,9 +10,9 @@
*/

#include <linux/futex.h>
+#include <linux/uaccess.h>
#include <asm/futex.h>
#include <asm/errno.h>
-#include <asm/uaccess.h>

/*
* the various futex operations; MMU fault checking is ignored under no-MMU












2006-12-02 17:54:54

by Adrian Bunk

[permalink] [raw]
Subject: [-mm patch] fix include/asm-xtensa/unistd.h compilation

<-- snip -->

...
In file included from
/home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/include/linux/unistd.h:7,
from
/home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/init/main.c:46:
include2/asm/unistd.h:235:2: error: #endif without #if
make[2]: *** [init/main.o] Error 1

<-- snip -->

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

--- linux-2.6.19-rc6-mm2/include/asm-xtensa/unistd.h.old 2006-12-02 18:32:53.000000000 +0100
+++ linux-2.6.19-rc6-mm2/include/asm-xtensa/unistd.h 2006-12-02 18:35:01.000000000 +0100
@@ -218,6 +218,8 @@

#define SYSXTENSA_COUNT 5 /* count of syscall0 functions*/

+#ifdef __KERNEL__
+
/*
* "Conditional" syscalls
*

2006-12-02 22:17:29

by Ed Tomlinson

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Friday 01 December 2006 23:09, Akinobu Mita wrote:
> On Fri, Dec 01, 2006 at 10:19:00PM -0500, Ed Tomlinson wrote:
> > On Friday 01 December 2006 19:32, Andrew Morton wrote:
> > > On Fri, 1 Dec 2006 19:33:21 -0500
> > > Ed Tomlinson <[email protected]> wrote:
> > >
> > > > I booted without the video and vga settings with earlyprintk=vga and got output. The
> > > > kenerl was complaining about a crc error. Checking the patch list I found:
> > > >
> > > > crc32-replace-bitreverse-by-bitrev32.patch
> > > >
> > > > reversing this patch fixes booting here.
> > >
> > > Odd that you're the only person seeing this - could be a miscompile?
> >
> > I recompiled four times. The only change the last time was to reverse the above patch. I am using
> > gcc is 4.1.1 (gentoo 4.1.1-r1).
> >
>
> Can you try build and boot with that patch again?
> I expected there is not any logical changes in that patch. So I want to
> make sure it.

I rebuilt twice. Once after just appling the patch (eg no make clean) and once with a make clean.
Both kernels booted fine.

No idea what triggered the crc problems above...

Sorry for the noise,
Ed

2006-12-03 07:49:13

by Adrian Bunk

[permalink] [raw]
Subject: [-mm patch] drivers/net/netxen/: possible cleanups

On Tue, Nov 28, 2006 at 02:02:46AM -0800, Andrew Morton wrote:
>...
> Changes since 2.6.19-rc6-mm1:
>...
> git-netdev-all.patch
>...
> git trees
>...

This patch contains the following possible cleanups:
- make needlessly global code static
- #if 0 the following unused global functions:
- netxen_nic_hw.c: netxen_crb_read_val()
- netxen_nic_niu.c: netxen_niu_xgbe_clear_phy_interrupts()
- netxen_nic_niu.c: netxen_niu_gbe_handle_phy_interrupt()
- netxen_nic_niu.c: netxen_niu_macaddr_get()
- netxen_nic_niu.c: netxen_niu_enable_gbe_port()
- netxen_nic_niu.c: netxen_niu_xg_macaddr_get()

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

---

drivers/net/netxen/netxen_nic.h | 13 -------------
drivers/net/netxen/netxen_nic_hw.c | 13 +++++++------
drivers/net/netxen/netxen_nic_hw.h | 8 ++------
drivers/net/netxen/netxen_nic_init.c | 21 +++++++++------------
drivers/net/netxen/netxen_nic_isr.c | 10 +++++-----
drivers/net/netxen/netxen_nic_niu.c | 22 ++++++++++++++++------
6 files changed, 39 insertions(+), 48 deletions(-)

--- linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_hw.c.old 2006-12-02 20:43:26.000000000 +0100
+++ linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_hw.c 2006-12-02 20:45:07.000000000 +0100
@@ -51,9 +51,8 @@
#define NETXEN_NIU_HDRSIZE (0x1 << 6)
#define NETXEN_NIU_TLRSIZE (0x1 << 5)

-unsigned long netxen_nic_pci_set_window(void __iomem * pci_base,
- unsigned long long addr);
-void netxen_free_hw_resources(struct netxen_adapter *adapter);
+static unsigned long netxen_nic_pci_set_window(void __iomem * pci_base,
+ unsigned long long addr);

int netxen_nic_set_mac(struct net_device *netdev, void *p)
{
@@ -646,10 +645,10 @@
netxen_nic_pci_change_crbwindow(adapter, 1);
}

-int netxen_pci_set_window_warning_count = 0;
+static int netxen_pci_set_window_warning_count = 0;

-unsigned long
-netxen_nic_pci_set_window(void __iomem * pci_base, unsigned long long addr)
+static unsigned long netxen_nic_pci_set_window(void __iomem * pci_base,
+ unsigned long long addr)
{
static int ddr_mn_window = -1;
static int qdr_sn_window = -1;
@@ -928,9 +927,11 @@
fw_major, fw_minor);
}

+#if 0
int netxen_crb_read_val(struct netxen_adapter *adapter, unsigned long off)
{
int data;
netxen_nic_hw_read_wx(adapter, off, &data, 4);
return data;
}
+#endif /* 0 */
--- linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_init.c.old 2006-12-02 20:45:27.000000000 +0100
+++ linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_init.c 2006-12-02 20:47:44.000000000 +0100
@@ -239,7 +239,7 @@
* netxen_decode_crb_addr(0 - utility to translate from internal Phantom CRB
* address to external PCI CRB address.
*/
-unsigned long netxen_decode_crb_addr(unsigned long addr)
+static unsigned long netxen_decode_crb_addr(unsigned long addr)
{
int i;
unsigned long base_addr, offset, pci_base;
@@ -304,7 +304,7 @@

}

-int netxen_wait_rom_done(struct netxen_adapter *adapter)
+static int netxen_wait_rom_done(struct netxen_adapter *adapter)
{
long timeout = 0;
long done = 0;
@@ -582,9 +582,8 @@
* and if the number of receives exceeds RX_BUFFERS_REFILL, then we
* invoke the routine to send more rx buffers to the Phantom...
*/
-void
-netxen_process_rcv(struct netxen_adapter *adapter, int ctxid,
- struct status_desc *desc)
+static void netxen_process_rcv(struct netxen_adapter *adapter, int ctxid,
+ struct status_desc *desc)
{
struct netxen_port *port = adapter->port[STATUS_DESC_PORT(desc)];
struct pci_dev *pdev = port->pdev;
@@ -919,10 +918,9 @@
return 0;
}

-int
-netxen_nic_fill_statistics(struct netxen_adapter *adapter,
- struct netxen_port *port,
- struct netxen_statistics *netxen_stats)
+static int netxen_nic_fill_statistics(struct netxen_adapter *adapter,
+ struct netxen_port *port,
+ struct netxen_statistics *netxen_stats)
{
void __iomem *addr;

@@ -978,9 +976,8 @@
}
}

-int
-netxen_nic_clear_statistics(struct netxen_adapter *adapter,
- struct netxen_port *port)
+static int netxen_nic_clear_statistics(struct netxen_adapter *adapter,
+ struct netxen_port *port)
{
int data = 0;

--- linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic.h.old 2006-12-02 20:48:02.000000000 +0100
+++ linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic.h 2006-12-02 20:54:30.000000000 +0100
@@ -793,16 +793,8 @@
int port);
int netxen_niu_gbe_disable_phy_interrupts(struct netxen_adapter *adapter,
int port);
-int netxen_niu_xgbe_clear_phy_interrupts(struct netxen_adapter *adapter,
- int port);
-int netxen_niu_gbe_clear_phy_interrupts(struct netxen_adapter *adapter,
- int port);
void netxen_nic_xgbe_handle_phy_intr(struct netxen_adapter *adapter);
void netxen_nic_gbe_handle_phy_intr(struct netxen_adapter *adapter);
-void netxen_niu_gbe_set_mii_mode(struct netxen_adapter *adapter, int port,
- long enable);
-void netxen_niu_gbe_set_gmii_mode(struct netxen_adapter *adapter, int port,
- long enable);
int netxen_niu_gbe_phy_read(struct netxen_adapter *adapter, long phy, long reg,
__le32 * readval);
int netxen_niu_gbe_phy_write(struct netxen_adapter *adapter, long phy,
@@ -834,11 +826,6 @@
int netxen_rom_fast_read(struct netxen_adapter *adapter, int addr, int *valp);

/* Functions from netxen_nic_isr.c */
-void netxen_nic_isr_other(struct netxen_adapter *adapter);
-void netxen_indicate_link_status(struct netxen_adapter *adapter, u32 port,
- u32 link);
-void netxen_handle_port_int(struct netxen_adapter *adapter, u32 port,
- u32 enable);
void netxen_nic_stop_all_ports(struct netxen_adapter *adapter);
void netxen_initialize_adapter_sw(struct netxen_adapter *adapter);
void netxen_initialize_adapter_hw(struct netxen_adapter *adapter);
--- linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_isr.c.old 2006-12-02 20:48:15.000000000 +0100
+++ linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_isr.c 2006-12-02 20:49:36.000000000 +0100
@@ -65,8 +65,8 @@
return stats;
}

-void netxen_indicate_link_status(struct netxen_adapter *adapter, u32 portno,
- u32 link)
+static void netxen_indicate_link_status(struct netxen_adapter *adapter,
+ u32 portno, u32 link)
{
struct netxen_port *pport = adapter->port[portno];
struct net_device *netdev = pport->netdev;
@@ -77,8 +77,8 @@
netif_carrier_off(netdev);
}

-void netxen_handle_port_int(struct netxen_adapter *adapter, u32 portno,
- u32 enable)
+static void netxen_handle_port_int(struct netxen_adapter *adapter, u32 portno,
+ u32 enable)
{
__le32 int_src;
struct netxen_port *port;
@@ -147,7 +147,7 @@
adapter->ops->enable_phy_interrupts(adapter, portno);
}

-void netxen_nic_isr_other(struct netxen_adapter *adapter)
+static void netxen_nic_isr_other(struct netxen_adapter *adapter)
{
u32 enable, portno;
u32 i2qhi;
--- linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_hw.h.old 2006-12-02 20:52:48.000000000 +0100
+++ linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_hw.h 2006-12-02 20:53:51.000000000 +0100
@@ -457,15 +457,11 @@
int netxen_niu_xg_set_promiscuous_mode(struct netxen_adapter *adapter,
int port, netxen_niu_prom_mode_t mode);

-/* get/set the MAC address for a given MAC */
-int netxen_niu_macaddr_get(struct netxen_adapter *adapter, int port,
- netxen_ethernet_macaddr_t * addr);
+/* set the MAC address for a given MAC */
int netxen_niu_macaddr_set(struct netxen_port *port,
netxen_ethernet_macaddr_t addr);

-/* XG versons */
-int netxen_niu_xg_macaddr_get(struct netxen_adapter *adapter, int port,
- netxen_ethernet_macaddr_t * addr);
+/* XG verson */
int netxen_niu_xg_macaddr_set(struct netxen_port *port,
netxen_ethernet_macaddr_t addr);

--- linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_niu.c.old 2006-12-02 20:49:50.000000000 +0100
+++ linux-2.6.19-rc6-mm2/drivers/net/netxen/netxen_nic_niu.c 2006-12-02 20:54:43.000000000 +0100
@@ -262,15 +262,17 @@
return result;
}

+#if 0
int netxen_niu_xgbe_clear_phy_interrupts(struct netxen_adapter *adapter,
int port)
{
netxen_crb_writelit_adapter(adapter, NETXEN_NIU_ACTIVE_INT, -1);
return 0;
}
+#endif /* 0 */

-int netxen_niu_gbe_clear_phy_interrupts(struct netxen_adapter *adapter,
- int port)
+static int netxen_niu_gbe_clear_phy_interrupts(struct netxen_adapter *adapter,
+ int port)
{
int result = 0;
if (0 !=
@@ -286,8 +288,8 @@
* netxen_niu_gbe_set_mii_mode- Set 10/100 Mbit Mode for GbE MAC
*
*/
-void netxen_niu_gbe_set_mii_mode(struct netxen_adapter *adapter,
- int port, long enable)
+static void netxen_niu_gbe_set_mii_mode(struct netxen_adapter *adapter,
+ int port, long enable)
{
netxen_crb_writelit_adapter(adapter, NETXEN_NIU_MODE, 0x2);
netxen_crb_writelit_adapter(adapter, NETXEN_NIU_GB_MAC_CONFIG_0(port),
@@ -324,8 +326,8 @@
/*
* netxen_niu_gbe_set_gmii_mode- Set GbE Mode for GbE MAC
*/
-void netxen_niu_gbe_set_gmii_mode(struct netxen_adapter *adapter,
- int port, long enable)
+static void netxen_niu_gbe_set_gmii_mode(struct netxen_adapter *adapter,
+ int port, long enable)
{
netxen_crb_writelit_adapter(adapter, NETXEN_NIU_MODE, 0x2);
netxen_crb_writelit_adapter(adapter, NETXEN_NIU_GB_MAC_CONFIG_0(port),
@@ -407,6 +409,8 @@
return result;
}

+#if 0
+
/*
* netxen_niu_gbe_handle_phy_interrupt - Handles GbE PHY interrupts
* @param enable 0 means don't enable the port
@@ -530,6 +534,8 @@
return 0;
}

+#endif /* 0 */
+
/*
* Set the station MAC address.
* Note that the passed-in value must already be in network byte order.
@@ -557,6 +563,7 @@
return 0;
}

+#if 0
/* Enable a GbE interface */
int netxen_niu_enable_gbe_port(struct netxen_adapter *adapter,
int port, netxen_niu_gbe_ifmode_t mode)
@@ -634,6 +641,7 @@
return -EIO;
return 0;
}
+#endif /* 0 */

/* Disable a GbE interface */
int netxen_niu_disable_gbe_port(struct netxen_adapter *adapter, int port)
@@ -749,6 +757,7 @@
return 0;
}

+#if 0
/*
* Return the current station MAC address.
* Note that the passed-in value must already be in network byte order.
@@ -778,6 +787,7 @@

return 0;
}
+#endif /* 0 */

int netxen_niu_xg_set_promiscuous_mode(struct netxen_adapter *adapter,
int port, netxen_niu_prom_mode_t mode)


2006-12-03 08:46:37

by Avi Kivity

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

Avi Kivity wrote:
> Andrew Morton wrote:
>> On Tue, 28 Nov 2006 19:24:45 -0500
>> Thomas Tuttle <[email protected]> wrote:
>>
>>
>>> I've found a couple of bugs so far...
>>>
>>> 1. I did `modprobe kvm' and then tried running a version of the KVM
>>> Qemu
>>> compiled for a different kernel. My mistake. But I got an oops:
>>>
>>> BUG: unable to handle kernel NULL pointer dereference at virtual
>>> address 00000008
>>> Code: 14 0f 87 77 02 00 00 8b 0c b5 00 15 20 f9 85 c9 0f 84 68 02 00
>>> 00 89 ea 89 f8 ff d1 85 c0 0f 84 4c 02 00 00 89 f8 e8 31 e9 ff ff
>>> <65> a1 08 00 00 00 8b 40 04 8b 40 08 a8 04 0f 85 ae 02 00 00 e8
>>> EIP: [<f91f9c3f>] kvm_vmx_return+0xef/0x4d0 [kvm] SS:ESP 0068:e5a4fd54
>>>
>>>
>
> 65 a1 08 00 00 00 mov %gs:0x8,%eax
>
> kvm isn't restoring gs properly.
>
> I'll look into it.

This comes from the pda patches.

Does the attached patch fix it?


--
error compiling committee.c: too many arguments to function


Attachments:
kvm-load-i386-segment-bases.patch (1.03 kB)

2006-12-04 11:22:11

by David Howells

[permalink] [raw]
Subject: Re: [-mm patch] arch/frv/kernel/futex.c must #include <linux/uaccess.h>

Adrian Bunk <[email protected]> wrote:

> This patch fixes the following compile error with
> -Werror-implicit-function-declaration
> (without -Werror-implicit-function-declaration it's a link error):

Looks reasonable.

Acked-By: David Howells <[email protected]>

2006-12-04 23:14:18

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2: uli526x only works after reload

On Fri, Dec 01, 2006 at 02:08:28AM +0100, Rafael J. Wysocki wrote:
> On Thursday, 30 November 2006 22:32, Rafael J. Wysocki wrote:
> > [Trimmed the Cc list a bit.]
> >
> > On Thursday, 30 November 2006 22:12, Andrew Morton wrote:
> > > On Thu, 30 Nov 2006 21:21:27 +0100
> > > "Rafael J. Wysocki" <[email protected]> wrote:
> > >
> > > > On Thursday, 30 November 2006 02:04, Rafael J. Wysocki wrote:
> > > > > On Thursday, 30 November 2006 00:26, Andrew Morton wrote:
> > > > > > On Thu, 30 Nov 2006 00:08:21 +0100
> > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > >
> > > > > > > On Wednesday, 29 November 2006 22:31, Rafael J. Wysocki wrote:
> > > > > > > > On Wednesday, 29 November 2006 22:30, Andrew Morton wrote:
> > > > > > > > > On Wed, 29 Nov 2006 21:08:00 +0100
> > > > > > > > > "Rafael J. Wysocki" <[email protected]> wrote:
> > > > > > > > >
> > > > > > > > > > On Wednesday, 29 November 2006 20:54, Rafael J. Wysocki wrote:
> > > > > > > > > > > On Tuesday, 28 November 2006 11:02, Andrew Morton wrote:
> > > > > > > > > > > >
> > > > > > > > > > > > Temporarily at
> > > > > > > > > > > >
> > > > > > > > > > > > http://userweb.kernel.org/~akpm/2.6.19-rc6-mm2/
> > > > > > > > > > > >
> > > > > > > > > > > > Will appear eventually at
> > > > > > > > > > > >
> > > > > > > > > > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
> > > > > > > > > > >
> > > > > > > > > > > A minor issue: on one of my (x86-64) test boxes the uli526x driver doesn't
> > > > > > > > > > > work when it's first loaded. I have to rmmod and modprobe it to make it work.
> > > > > > > > >
> > > > > > > > > That isn't a minor issue.
> > > > > > > > >
> > > > > > > > > > > It worked just fine on -mm1, so something must have happened to it recently.
> > > > > > > > > >
> > > > > > > > > > Sorry, I was wrong. The driver doesn't work at all, even after reload.
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > > tulip-dmfe-carrier-detection-fix.patch was added in rc6-mm2. But you're
> > > > > > > > > not using that (corrent?)
> > > > > > > > >
> > > > > > > > > git-netdev-all changes drivers/net/tulip/de2104x.c, but you're not using
> > > > > > > > > that either.
> > > > > > > > >
> > > > > > > > > git-powerpc(!) alters drivers/net/tulip/de4x5.c, but you're not using that.
> > > > > > > > >
> > > > > > > > > Beats me, sorry. Perhaps it's due to changes in networking core. It's
> > > > > > > > > presumably a showstopper for statically-linked-uli526x users. If you could
> > > > > > > > > bisect it, please? I'd start with git-netdev-all, then tulip-*.
> > > > > > > >
> > > > > > > > OK, but it'll take some time.
> > > > > > >
> > > > > > > OK, done.
> > > > > > >
> > > > > > > It's one of these (the first one alone doesn't compile):
> > > > > > >
> > > > > > > git-netdev-all.patch
> > > > > > > git-netdev-all-fixup.patch
> > > > > > > libphy-dont-do-that.patch
> > > >
> > > > Hm, all of these patches are the same as in -mm1 which hasn't caused any
> > > > problems to appear on this box.
> > > >
> > > > So, it seems there's another change between -mm1 and -mm2 that causes this
> > > > to happen.
> > > >
> > >
> > > It would be nice to eliminate libphy-dont-do-that.patch if poss - that was
> > > a rogue akpm patch aimed at some incomprehensible gobbledigook in the
> > > netdev tree (and to fix the current_is_keventd-not-exported-to-modules
> > > bug).
> >
> > Unfortunately the kernel doesn't compile without it ...
> >
> > Well, I think I'll try to find the patch that contains the change which has
> > triggered this.
>
> It looks like the winner is:
>
> gregkh-driver-driver-core-fixes-sysfs_create_link-retval-checks-in-core.c.patch
>
> Without this patch there are no problems, with this patch applied the problems
> (with uli526x, when it's the second interface and the first one is not used)
> occur, almost 100% of the time.

Ok, I've now removed this from my tree.

thanks,

greg k-h

2006-12-05 01:33:30

by NeilBrown

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Wednesday November 29, [email protected] wrote:
> On Tue, 28 Nov 2006, Andrew Morton wrote:
>
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc6/2.6.19-rc6-mm2/
>
> md-change-lifetime-rules-for-md-devices.patch gives me the following early
> during boot (first WARNING() inside __mutex_lock_slowpath(), then BUG at
> __mutex_lock_slowpath(), just after that slab corruption).
>
> When I revert md-change-lifetime-rules-for-md-devices.patch, everything
> seems to go fine (this machine does use neither LVM nor RAID, but the
> kernel has DM compiled in).
>
> Config is at http://www.jikos.cz/jikos/junk/.config_md
>
> WARNING at kernel/mutex.c:132 __mutex_lock_common()
> [<c0103d70>] dump_trace+0x68/0x1b5
> [<c0103ed5>] show_trace_log_lvl+0x18/0x2c
> [<c010445b>] show_trace+0xf/0x11
> [<c01044cd>] dump_stack+0x12/0x14
> [<c036e6ba>] __mutex_lock_slowpath+0xa1/0x213
> [<c0197c7d>] create_dir+0x24/0x1ba
> [<c0198317>] sysfs_create_dir+0x45/0x5f
> [<c01ed1fb>] kobject_add+0xce/0x185
> [<c01ed3c3>] kobject_register+0x19/0x30
> [<c02e10c6>] md_probe+0x11a/0x124

Very odd.

md_probe is registering a kobject presenting md specific stuff and
that creates a directory called 'md' inside the block device. e.g.
/sys/block/md0/md
The inode for /sys/block/md0 appear to be non-existent at this point,
which as you are seeing poisoned memory where the inode should be.
This shouldn't happen and I cannot reproduce it.

I notice it says:
|
v
> 090: 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b
> Single bit error detected. Probably bad RAM.
> Run memtest86+ or a similar memory test tool.

Have you tried running memtest86 ??

NeilBrown

2006-12-05 04:06:59

by NeilBrown

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tuesday December 5, [email protected] wrote:
>
> I notice it says:
> |
> v
> > 090: 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b
> > Single bit error detected. Probably bad RAM.
> > Run memtest86+ or a similar memory test tool.
>
> Have you tried running memtest86 ??

As Andrew correctly pointed out, this bit error is not a RAM problem.
It is actually the low bit of a counter a spinlock that was
decremented just before the WARN_ON. So it simply indicates that the
inode had already been freed, which I think we knew already.

Unfortunately I still have no idea why that inode had been
freed but was still referenced by a dentry....

How repeatable as this bug? How did you narrow it down to that patch?
Did you use git-bisect or something else?


Thanks,
NeilBrown

2006-12-05 07:49:00

by Jiri Kosina

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, 5 Dec 2006, Neil Brown wrote:

> As Andrew correctly pointed out, this bit error is not a RAM problem. It
> is actually the low bit of a counter a spinlock that was decremented
> just before the WARN_ON. So it simply indicates that the inode had
> already been freed, which I think we knew already. Unfortunately I still
> have no idea why that inode had been freed but was still referenced by a
> dentry.... How repeatable as this bug? How did you narrow it down to
> that patch? Did you use git-bisect or something else?

When this happened, I just looked at the broken-out patches in -mm, which
ones touch the md subsystem, found your patch, reverse-applied it, and
this stopped happening.

It seemed to be 100% reproducible - happened on every boot of FC6 system,
so it was probably triggered by some raid/lvm command executed from init
scripts after boot, but I didn't examine it further.

As soon as I get to the machine where this happens, I will try to narrow
it down to the exact userspace command that triggers it and will let you
know (probably this evening).

--
Jiri Kosina

2006-12-05 22:13:20

by Jiri Kosina

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tue, 5 Dec 2006, Jiri Kosina wrote:

> It seemed to be 100% reproducible - happened on every boot of FC6
> system, so it was probably triggered by some raid/lvm command executed
> from init scripts after boot, but I didn't examine it further. As soon
> as I get to the machine where this happens, I will try to narrow it down
> to the exact userspace command that triggers it and will let you know
> (probably this evening).

OK, so more details follow (I am not sure how valuable they are, though).
The command that triggers the BUG is located quite at the beginning of FC6
/etc/rc.d/rc.sysinit, and it's this

[ -x /sbin/nash ] && echo "raidautorun /dev/md0" | nash --quiet

just after this, the BUG I sent you occurs, and nash is killed on SIGSEGV
(this command is executed before any other initialization of
DM/LVM/mapper/whatever happens). strace shows

[ ... ] (boring part stripped)
read(0, "raidautorun /dev/md0\n", 16384) = 21
read(0, "", 16384) = 0
access("/usr/bin/raidautorun", X_OK) = -1 ENOENT (No such file or directory)
access("/bin/raidautorun", X_OK) = -1 ENOENT (No such file or directory)
access("/sbin/raidautorun", X_OK) = -1 ENOENT (No such file or directory)
access("/usr/sbin/raidautorun", X_OK) = -1 ENOENT (No such file or directory)
access("raidautorun", X_OK) = -1 ENOENT (No such file or directory)
access("/dev/md0", F_OK) = -1 ENOENT (No such file or directory)
access("", F_OK) = -1 ENOENT (No such file or directory)
mkdir("", 0755) = -1 ENOENT (No such file or directory)
access("/dev", F_OK) = 0
mknod("/dev/md0", S_IFBLK|0600, makedev(9, 0)) = 0
open("/dev/md0", O_RDWR <unfinished ...>
+++ killed by SIGSEGV +++

(at this time, udev is already started). Compared to this command, being
run later on already booted system, after all the mdadm, mknod
/dev/mapper/*,etc. stuff has been done).

[ ... ]
2732 access("/dev", F_OK) = 0
2732 mknod("/dev/md0", S_IFBLK|0600, makedev(9, 0)) = 0
2732 open("/dev/md0", O_RDWR) = 3
2732 fcntl64(3, F_GETFD) = 0
2732 fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
2732 ioctl(3, 0x914, 0) = 0
2732 close(3) = 0
2732 exit_group(0) = ?

(and this doesn't trigger the BUG).

--
Jiri Kosina

2006-12-08 01:31:39

by NeilBrown

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Tuesday December 5, [email protected] wrote:
> On Tue, 5 Dec 2006, Jiri Kosina wrote:
>
> > It seemed to be 100% reproducible - happened on every boot of FC6
> > system, so it was probably triggered by some raid/lvm command executed
> > from init scripts after boot, but I didn't examine it further. As soon
> > as I get to the machine where this happens, I will try to narrow it down
> > to the exact userspace command that triggers it and will let you know
> > (probably this evening).
>
> OK, so more details follow (I am not sure how valuable they are, though).

They do help a bit..

I've found a possible race that could possibly be related to this
BUG. Can you try this patch and see if it helps?

Note: this isn't the final form I would use to fix the race, but if it
makes a difference, then it tells me I am on the right track.

Thanks,
NeilBrown


Signed-off-by: Neil Brown <[email protected]>

### Diffstat output
./drivers/md/md.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff .prev/drivers/md/md.c ./drivers/md/md.c
--- .prev/drivers/md/md.c 2006-12-06 14:49:20.000000000 +1100
+++ ./drivers/md/md.c 2006-12-07 10:29:40.000000000 +1100
@@ -222,10 +222,14 @@ static inline mddev_t *mddev_get(mddev_t
return mddev;
}

+static DEFINE_MUTEX(disks_mutex);
static void mddev_put(mddev_t *mddev)
{
- if (!atomic_dec_and_lock(&mddev->active, &all_mddevs_lock))
+ mutex_lock(&disks_mutex);
+ if (!atomic_dec_and_lock(&mddev->active, &all_mddevs_lock)) {
+ mutex_unlock(&disks_mutex);
return;
+ }
list_del(&mddev->all_mddevs);
spin_unlock(&all_mddevs_lock);

@@ -234,6 +238,7 @@ static void mddev_put(mddev_t *mddev)
blk_cleanup_queue(mddev->queue);
mddev->queue = NULL;
kobject_unregister(&mddev->kobj);
+ mutex_unlock(&disks_mutex);
}

static mddev_t * mddev_find(dev_t unit)
@@ -2948,7 +2953,6 @@ int mdp_major = 0;

static struct kobject *md_probe(dev_t dev, int *part, void *data)
{
- static DEFINE_MUTEX(disks_mutex);
mddev_t *mddev = mddev_find(dev);
struct gendisk *disk;
int partitioned = (MAJOR(dev) != MD_MAJOR);

2006-12-08 12:36:12

by Jiri Kosina

[permalink] [raw]
Subject: Re: 2.6.19-rc6-mm2

On Fri, 8 Dec 2006, Neil Brown wrote:

> > OK, so more details follow (I am not sure how valuable they are, though).
> They do help a bit..
> I've found a possible race that could possibly be related to this BUG.
> Can you try this patch and see if it helps?
> Signed-off-by: Neil Brown <[email protected]>
>
> ### Diffstat output
> ./drivers/md/md.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff .prev/drivers/md/md.c ./drivers/md/md.c
> --- .prev/drivers/md/md.c 2006-12-06 14:49:20.000000000 +1100
> +++ ./drivers/md/md.c 2006-12-07 10:29:40.000000000 +1100
> @@ -222,10 +222,14 @@ static inline mddev_t *mddev_get(mddev_t
> return mddev;
> }
>
> +static DEFINE_MUTEX(disks_mutex);
> static void mddev_put(mddev_t *mddev)
> {
> - if (!atomic_dec_and_lock(&mddev->active, &all_mddevs_lock))
> + mutex_lock(&disks_mutex);
> + if (!atomic_dec_and_lock(&mddev->active, &all_mddevs_lock)) {
> + mutex_unlock(&disks_mutex);
> return;
> + }
> list_del(&mddev->all_mddevs);
> spin_unlock(&all_mddevs_lock);
>
> @@ -234,6 +238,7 @@ static void mddev_put(mddev_t *mddev)
> blk_cleanup_queue(mddev->queue);
> mddev->queue = NULL;
> kobject_unregister(&mddev->kobj);
> + mutex_unlock(&disks_mutex);
> }
>
> static mddev_t * mddev_find(dev_t unit)
> @@ -2948,7 +2953,6 @@ int mdp_major = 0;
>
> static struct kobject *md_probe(dev_t dev, int *part, void *data)
> {
> - static DEFINE_MUTEX(disks_mutex);
> mddev_t *mddev = mddev_find(dev);
> struct gendisk *disk;
> int partitioned = (MAJOR(dev) != MD_MAJOR);

Hi Neil,

sorry, but the BUG is still there after applying this patch.

--
Jiri Kosina