Skip to contentSkip to conversation

2.6.7-rc2-mm2

DISCUSSION Andrew Morton 14 participants 22 messages Jun 3, 2004 – Jun 15, 2004 3 messages not in the archive

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

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

- Huge update to the SiS framebuffer driver. Please test.

- As soon as I merged Andrey's big dmi cleanup patches everyone started madly patching dmi_scan.c. The subsequent reject storm forced me to drop them.

- Big devicemapper update - new feature work.

- Various fixes, some quite serious.

Changes since 2.6.7-rc2-mm1:

linus.patch
bk-acpi.patch
bk-agpgart.patch
bk-alsa.patch
bk-cifs.patch
bk-cpufreq.patch
bk-drm.patch
bk-input.patch
bk-netdev.patch
bk-ntfs.patch
bk-scsi.patch
bk-usb.patch

External trees.

-for-radeonfb-non-8bpp-clear-doesnt-use-palette.patch -s2io-section-fix.patch -ppc32-reorg-dma-api-add-coherent-alloc-in-irq.patch -ppc64-iseries-default-config-update.patch -ppc64-iseries-virtual-ethernet-minor-optimisation.patch -ppc64-iseries-fix-virtual-ethernet-transmit-block.patch -ppc64-add-eeh_add_device_early-late.patch -ppc64-reset-iseries-progress-indicator-on-boot.patch -ppc64-bolt-first-vmalloc-segment-into-slb.patch -ppc64-slb-accounting-fix.patch -ppc64-iseries-bolted-slb-fix.patch -ppc64-fix-missing-relocs-add-linuxphandle-property.patch -add-futex_cmp_requeue-futex-op.patch -new-radeonfb-powerdown-doesnt-work.patch -r8169-ethtool-set_settings.patch -r8169-ethtool-get_settings-link.patch -r8169-link-handling-and-phy-reset-rework.patch -r8169-initial-link-setup-rework.patch -add-support-for-isd-300-usb-controller.patch -nuke-has_ip_copysum-for-net-drivers.patch -make-proliant-8500-boot-with-26.patch -prism54-add-new-private-ioctls.patch -prism54-reset-card-on-tx_timeout.patch -prism54-add-iwspy-support.patch -prism54-add-support-for-avs-header-in.patch -prism54-new-prism54-kernel-compatibility.patch -prism54-fix-prism54org-bugs-74-75.patch -prism54-fix-24-build.patch -prism54-fix-prism54org-bugs-39-73.patch -prism54-fix-prism54org-bug-77-strengthened-oid-transaction.patch -prism54-dont-allow-mib-reads-while-unconfigured.patch -prism54-touched-up-kernel-compatibility.patch -prism54-start-using-likely-unlikely.patch -prism54-fix-24-smp-build.patch -prism54-fix-channel-stats-bump-to-12.patch -mark-cache_names-__initdata.patch -support-for-sc1100-in-linux-kernel.patch -missing-pop-off-in-arch-i386-kernel-acpi-wakeups.patch -mdc-message-during-quiet-boot.patch -posix_mqueue-depends-on-net.patch -security_selinux-depends-on-net.patch -pnpbios-only-makes-sense-for-x86.patch -agp-resume-fixups.patch
-document-checkstacks.patch -add-watchdog-timer-to-iseries_veth-driver.patch -vram-boot-option.patch -s-tkill-tgkill-in--documentation.patch -linux-timerh-needs-linux-stddefh.patch -fix-mca-procfs-stub.patch -fix-net-ixgb-ixgb_mainc-warning.patch -fix-readahead-handling-in-knfsd.patch -i386-bitops-memory-clobbers.patch -sched-remove-noinline-workaround.patch -checkstack-fixes.patch -cpqarray-sa_sample_random.patch -add-const-to-some-scheduling-functions.patch -use-aio-workqueue-in-fs-aioc.patch -correct-use_mm-unuse_mm-to-use-task_lock-to-protect-mm.patch -cris-architecture-update.patch

Merged

-nmi-trigger-switch-support-for-debugging.patch

Dropped - was causing various build problems.

+hiddev-warning-fixes.patch

Build fix

+bk-input-build-fix.patch

Build fix

+kgdb-ia64-fixes.patch

Fixes for the ia64 kgdb stub

+ramfs-o_sync-oops-fix.patch

Fix oops due to O_SYNC writes to ramfs

+direct-io-invalidation-fix.patch

Fix direct-io fs corruption

+mm-swapper_spacei_mmap_nonlinear.patch
+mm-follow_page-invalid-pte_page.patch
+mm-vma_adjust-adjust_next-wrap.patch
+mm-vma_adjust-insert-file-earlier.patch
+mm-get_user_pages-vs-try_to_unmap.patch
+mm-kill-missed-pte-warning.patch
+mm-flush-tlb-when-clearing-young.patch
+mm-pretest-pte_young-and-pte_dirty.patch

memory management updatelets

+ppc32-add-indirect-dcr-access-pass-2.patch +ppc64-kernel-makefile-options-for-as.patch +ppc64-update-info-about-available-iseries_veth-interfaces.patch +ppc64-gives-up-too-quickly-on-hotplugged-cpu.patch

ppc updates

-logitech-keyboard-fix.patch

Dropped, might be fixed by other means

-add-qsort-library-function.patch

Dropped - the XFS part of this got lost.

+hpet-dont-use-new-major.patch

Use a miscdevice for the HPET driver - don't require a new major.

-ppc64-fault-deadlock-fix.patch
-ia32-fault-deadlock-fix.patch
-ia32-fault-deadlock-fix-cleanup.patch
+ia32-fault-deadlock-fix-2.patch
+ppc64-fault-deadlock-fix-2.patch

Reworked

+kernel-parameter-parsing-fix-fix.patch

Keep on plugging at the kernel-parameter parsing code.

+3ware-9000-driver-update-for-267-rc2-mm2.patch

Update the 3ware SATA raid driver

-dmi-simplify-dmi-matching-data.patch -dmi-export-dmi-probe-function.patch -dmi-codingstyle-and-whitespace-cleanups.patch -dmi-port-sonypi-driver-to-new-dmi-probing.patch -dmi-port-apm-bios-driver-to-new-dmi-probing.patch -dmi-port-hp-pavilion-irq-routing-quirk-to-new-dmi-probing.patch -dmi-port-piix4-i2c-driver-to-new-dmi-probing.patch -dmi-port-pnp-bios-driver-to-new-dmi-probing.patch -dmi-port-acpi-boot-code-to-new-dmi-probing.patch -dmi-port-reboot-related-quirks-to-new-dmi-probing.patch -dmi-port-powernow-k7-driver-to-new-dmi-probing.patch -dmi-port-local-apic-quirks-to-new-dmi-probing.patch -dmi-port-acpi-sleep-quirk-to-new-dmi-probing.patch -dmi-port-i8042-quirk-to-new-dmi-probing.patch

Dropped - these kept on breaking.

+bsd-acct-warning-fix.patch

Fix warning in the BSD accounting patch

+iso9660-inodes-beyond-4gb-fixes.patch
+iso9660-comment-cleanup.patch

Updates to iso9660-inodes-beyond-4gb.patch

+perfctr-disabled-build-fix.patch

Build fix

+sisfb-update-1710.patch

SiS framebuffer driver update

+nfs-writepage-fix.patch

Fix oom lockups due to nfs writeback of mmapped data

+selinux-check-processed-security-context-length.patch

SELinux fix

+floppy-fix.patch

Fix /dev/fd1 handling

+balance-on-exec-fix.patch

scheduler optimisation

+3c59x-support-for-ati-radeon-9100-igp.patch

Add support for the 3c59x controller in an ATI Radeon card.

+fix-loop-device-cache-handling.patch

Add a missing dcache flush.

+fix-possible-null-pointer-in-fs-ext3-superc.patch

Error handling fix

+dm_remove_all32.patch

Add missing DM ioctl conversion.

+ide-dont-put-disks-in-standby-mode-on-halt-on-alpha.patch +ide-fix-for-generic-ide-pci-module.patch +ide-ide_pci_device_t-sanitization.patch +ide-merge-amd74xxh-into-amd74xxc.patch +ide-add-new-nforce-ide-sata-device-ids-to-amd74xxc.patch +ide-use-generic-ide_init_hwif_ports-on-m68k.patch +ide-use-asm-i386-ideh-as-asm-x86_64-ideh.patch +ide-add-ide_arch_obsolete_defaults.patch +ide-remove-useless-proc-ide-siimage-from-siimagec.patch +ide-simplify-config_idedma_onlydisk-logic-a-bit.patch

IDE update

+mm-oom_killc-trivial-cleanup.patch

Remove duplicated assignment.

+use-const-in-timeh-unit-conversion-functions.patch +fix-io_getevents-timer-expiry-setting.patch

AIO fixes

+move-endif-to-correct-place.patch

Fixlet in kernel/signal.c

+hugetlb-msync-fix.patch

Fix msync() on hugetlb mappings

+nx-267-rc2-bk2-ae.patch
+nx-267-rc2-bk2-ae-warning-fix.patch

ia32 no-execute support

+hugetlb-dtor-reinit.patch

hugetlbpage fix

+mtd-jedec-probe-additions.patch

Add JEDEC probe functions to MTD.

+use-kern_alert-more-for-oopses.patch

Fix printk facility levels

+s390-1-4-core-s390.patch
+s390-2-4-common-i-o-layer.patch
+s390-3-4-block-device-driver.patch
+s390-4-4-network-device-driver.patch

s390 update

+quota-fix-writing-of-quota-info.patch
+fix-for-old-quota-format.patch

Quota fixes

+1-5-device-mapper-dm-ioc.patch
+dm-cache-flushing-fix.patch
+2-5-device-mapper-kcopyd.patch
+2-5-device-mapper-kcopyd-docs.patch
+3-5-device-mapper-snapshots.patch
+4-5-device-mapper-mirroring.patch
+5-5-device-mapper-dm-zero.patch
+dm-zero-flushing-fix.patch

device mapper update

+let-serial_8250_acpi-depend-on-acpi_pci-2.patch

config dependency fix

+export-acpi_register_gsi.patch

Linkage fix

+kill-off-efi_dir-in-efih.patch

Remove unneeded stuff

+update-elilo-loader-location-in-kconfig.patch

Documentation update

+ext3_orphan_del-may-double-decrement-bh-b_count.patch

Fix error-path double-brelse in ext3

+submission-of-via-velocitytm-series-adapter-driver.patch +via-velocity-oops-fix.patch

New VIA net driver

+use-c99-struct-initializer-in-hotcpu_notifier.patch

Cleanup

+better-names-for-edd-legacy_-fields.patch

use better identifiers

+use-decimal-instead-of-hex-for-edd-values.patch

EDD driver cleanup

+eep-lost-24-change-for-buslogic-info.patch

Documentation update

+fb-accel-capabilities.patch

Use fbdev acceleration for fb consoles

+rawdev-driver.patch

A driver which allows userspace to access the raw ps2 data stream.

+sys_io_setup-fix.patch

AIO fix

+fix-sys-cpumap-for-352-nr_cpus.patch

Fix sysfs output truncation for massive SMP machines.

All 301 patches:

linus.patch

bk-acpi.patch

bk-agpgart.patch

bk-alsa.patch

bk-cifs.patch

bk-cpufreq.patch

bk-drm.patch

bk-input.patch

bk-netdev.patch

bk-ntfs.patch

bk-scsi.patch

bk-usb.patch

mm.patch
add -mmN to EXTRAVERSION

hiddev-warning-fixes.patch
hiddev warning fixes

bk-input-build-fix.patch
bk-input-build-fix

kgdb-ga.patch
kgdb stub for ia32 (George Anzinger's one)
kgdbL warning fix
kgdb buffer overflow fix
kgdbL warning fix
kgdb: CONFIG_DEBUG_INFO fix
x86_64 fixes
correct kgdb.txt Documentation link (against 2.6.1-rc1-mm2)
kgdb: fix for recent gcc
kgdb warning fixes
THREAD_SIZE fixes for kgdb

kgdb-in-sched_functions.patch

kgdboe-netpoll.patch
kgdb-over-ethernet via netpoll
kgdboe: fix configuration of MAC address

kgdb-x86_64-support.patch
kgdb-x86_64-support.patch for 2.6.2-rc1-mm3
kgdb-x86_64-warning-fixes

kgdb-in-sched_functions-x86_64.patch

kgdb-ia64-support.patch
IA64 kgdb support

kgdb-ia64-fixes.patch
ia64 kgdb repair and cleanup

ramfs-o_sync-oops-fix.patch
ramfs o_sync oops fix

direct-io-invalidation-fix.patch
direct-io invalidation fix

mp_find_ioapic-oops-fix.patch
mp_find_ioapic cannot be __init

shrink_all_memory-fix.patch
shrink_all_memory() fixes

mm-swapper_spacei_mmap_nonlinear.patch
mm: swapper_space.i_mmap_nonlinear

mm-follow_page-invalid-pte_page.patch
mm: follow_page invalid pte_page

mm-vma_adjust-adjust_next-wrap.patch
mm: vma_adjust adjust_next wrap

mm-vma_adjust-insert-file-earlier.patch
mm: vma_adjust insert file earlier

mm-get_user_pages-vs-try_to_unmap.patch
mm: get_user_pages vs. try_to_unmap

mm-kill-missed-pte-warning.patch
mm: kill missed pte warning

mm-flush-tlb-when-clearing-young.patch
mm: flush TLB when clearing young

mm-pretest-pte_young-and-pte_dirty.patch
mm: pretest pte_young and pte_dirty

make-tree_lock-an-rwlock.patch
make mapping->tree_lock an rwlock

radix_tree_tag_set-atomic.patch
Make radix_tree_tag_set/clear atomic wrt the tag

radix_tree_tag_set-only-needs-read_lock.patch
radix_tree_tag_set only needs read_lock()

must-fix.patch
must fix lists update
must fix list update
mustfix update

must-fix-update-5.patch
must-fix update

mustfix-lists.patch
mustfix lists

ppc32-add-indirect-dcr-access-pass-2.patch
ppc32: add "indirect" DCR access, pass 2

ppc64-kernel-makefile-options-for-as.patch
ppc64: kernel Makefile options for $(AS)

ppc64-update-info-about-available-iseries_veth-interfaces.patch
ppc64: update info about available iseries_veth interfaces

ppc64-gives-up-too-quickly-on-hotplugged-cpu.patch
ppc64 gives up too quickly on hotplugged cpu

ppc64-reloc_hide.patch

invalidate_inodes-speedup.patch
invalidate_inodes speedup
more invalidate_inodes speedup fixes

config_spinline.patch
uninline spinlocks for profiling accuracy.

allow-i386-to-reenable-interrupts-on-lock-contention.patch
Allow i386 to reenable interrupts on lock contention

pdflush-diag.patch

get_user_pages-handle-VM_IO.patch
fix get_user_pages() against mappings of /dev/mem

pci_set_power_state-might-sleep.patch

slab-leak-detector.patch
slab leak detector
mm/slab.c warning in cache_alloc_debugcheck_after

local_bh_enable-warning-fix.patch

schedstats.patch
sched: scheduler statistics

cond_resched-might-sleep.patch
cond_resched() might sleep

fa311-mac-address-fix.patch
wrong mac address with netgear FA311 ethernet card

pid_max-fix.patch
Bug when setting pid_max > 32k

non-readable-binaries.patch
Handle non-readable binfmt_misc executables

binfmt_misc-credentials.patch
binfmt_misc: improve calaulation of interpreter's credentials

poll-select-longer-timeouts.patch
poll()/select(): support longer timeouts

poll-select-range-check-fix.patch
poll()/select() range checking fix

poll-select-handle-large-timeouts.patch
poll()/select(): handle long timeouts

add-a-slab-for-ethernet.patch
Add a kmalloc slab for ethernet packets

siimage-update.patch
ide: update for siimage driver

shm-do_munmap-check.patch

stack-overflow-test-fix.patch
Fix stack overflow test for non-8k stacks

jbd-remove-livelock-avoidance.patch
JBD: remove livelock avoidance code in journal_dirty_data()

journal_add_journal_head-debug.patch
journal_add_journal_head-debug

list_del-debug.patch
list_del debug check

oops-dump-preceding-code.patch
i386 oops output: dump preceding code

lockmeter.patch
lockmeter
ia64 CONFIG_LOCKMETER fix

unplug-can-sleep.patch
unplug functions can sleep

firestream-warnings.patch
firestream warnings

ext3_rsv_cleanup.patch
ext3 block reservation patch set -- ext3 preallocation cleanup

ext3_rsv_base.patch
ext3 block reservation patch set -- ext3 block reservation
ext3 reservations: fix performance regression
ext3 block reservation patch set -- mount and ioctl feature ext3 block reservation patch set -- dynamically increase reservation window

ext3-reservation-default-on.patch
ext3 reservation: default to on

ext3-reservation-ifdef-cleanup-patch.patch
ext3 reservation ifdef cleanup patch

ext3-reservation-max-window-size-check-patch.patch
ext3 reservation max window size check patch

ext3-reservation-file-ioctl-fix.patch
ext3 reservation file ioctl fix

ext3-lazy-discard-reservation-window-patch.patch
ext3 lazy discard reservation window patch
ext3 discard reservation in last iput fix patch
Fix lazy reservation discard

ext3-reservation-bad-inode-fix.patch
ext3 reservations: bad_inode fix

ext3_reservation_discard_race_fix.patch
ext3 reservation discard race fix

clean-up-asm-pgalloch-include.patch
Clean up asm/pgalloc.h include

clean-up-asm-pgalloch-include-2.patch
Clean up asm/pgalloc.h include

clean-up-asm-pgalloch-include-3.patch
Clean up asm/pgalloc.h include 3

ppc64-uninline-__pte_free_tlb.patch
ppc64: uninline __pte_free_tlb()

input-tsdev-fixes.patch
tsdev.c fixes

fix-scancode-keycode-scancode-conversion-for-265.patch
Fix scancode->keycode->scancode conversion

fealnx-mac-address-and-other-issues.patch
Fealnx. Mac address and other issues

reiserfs-group-alloc-9.patch
reiserfs: block allocator optimizations

reiserfs-block-allocator-should-not-inherit-packing-locality.patch
reiserfs: block allocator should not inherit "packing locality 1"

reiserfs-remove-debugging-warning-from-block-allocator.patch
reiserfs: remove debugging warning from block allocator

reiserfs-group-alloc-9-build-fix.patch
reiserfs-group-alloc-9 build fix

reiserfs-search_reada-5.patch
reiserfs: btree readahead

reiserfs-data-logging-support.patch
reiserfs data logging support

force-config_regparm-to-y.patch
Force CONFIG_REGPARM to `y'

hugetlb_shm_group-sysctl-gid-0-fix.patch
hugetlb_shm_group sysctl-gid-0-fix

idr-overflow-fixes.patch
Fixes for idr code

idr-remove-counter.patch
idr: remove counter bits from id's

idr-fixups.patch
IDR fixups

use-idr_get_new-to-allocate-a-bus-id-in-drivers-i2c-i2c-corec-update-to-new-api.patch
use-idr_get_new-to-allocate-a-bus-id-in-drivers-i2c-i2c-corec-update-to-new-api

rlim-add-rlimit-entry-for-controlling-queued-signals.patch
RLIM: add rlimit entry for controlling queued signals

rlim-add-sigpending-field-to-user_struct.patch
RLIM: add sigpending field to user_struct

rlim-pass-task_struct-in-send_signal.patch
RLIM: pass task_struct in send_signal()

rlim-add-simple-get_uid-helper.patch
RLIM: add simple get_uid() helper

rlim-enforce-rlimits-on-queued-signals.patch
RLIM: enforce rlimits on queued signals

rlim-remove-unused-queued_signals-global-accounting.patch
RLIM: remove unused queued_signals global accounting

rlim-add-rlimit-entry-for-posix-mqueue-allocation.patch
RLIM: add rlimit entry for POSIX mqueue allocation

rlim-add-mq_bytes-to-user_struct.patch
RLIM: add mq_bytes to user_struct

rlim-add-mq_attr_ok-helper.patch
RLIM: add mq_attr_ok() helper

rlim-enforce-rlimits-for-posix-mqueue-allocation.patch
RLIM: enforce rlimits for POSIX mqueue allocation

rlim-adjust-default-mqueue-sizes.patch
RLIM: adjust default mqueue sizes

call-might_sleep-in-tasklet_kill.patch
Call might_sleep() in tasklet_kill

really-ptrace-single-step-2.patch
ptrace single-stepping fix

abs-cleanup.patch
abs() cleanup

add-i386-readq.patch
add i386 readq()/writeq()

hpet-driver.patch
HPET driver

hpet-dont-use-new-major.patch
hpet: don't require a new major

hpet-driver-updates.patch
HPET driver updates

hpet-driver-updates-move-readq.patch
hpet-driver-updates-move-readq

hpet-kconfig-loop-fix.patch
HPET: Fix Kconfig dependency loop

hpet-rtc-dependency-fix.patch
HPET RTC dependency fix

hpet-free_irq-deadlock-fix.patch
hpet-free_irq-deadlock-fix

kill-off-pc9800.patch
Remove PC9800 support

more-pc9800-removal.patch
more PC9800 removal

pc9800-merge-std_resourcesc-back-into-setupc.patch
pc9800: merge std_resources.c back into setup.c

ftruncate-vs-block_write_full_page.patch
ftruncate-vs-block_write_full_page

ext3-retry-allocation-after-transaction-commit-v2.patch
Ext3: Retry allocation after transaction commit (v2)

ext3-retry-allocation-after-transaction-commit-v2-jbd-api.patch
ext3-retry-allocation-after-transaction-commit-v2: implement JBD API

sysfs-leaves-mount.patch
sysfs backing store: add sysfs_dirent

sysfs-leaves-dir.patch
sysfs backing store: add sysfs_dirent

sysfs-leaves-file.patch
sysfs backing store: sysfs_create() changes

sysfs-leaves-bin.patch
sysfs backing store: bin attribute changes

sysfs-leaves-symlink.patch
sysfs backing store: sysfs_create_link changes

sysfs-leaves-misc.patch
sysfs backing store: attribute groups and misc routines

pty-allocation-first-fit.patch
Use first-fit for pty allocation

dynpty-fix.patch
dynamic pty allocation fixes

sync_inodes_sb-debug.patch
sync_inodes_sb-debug

vmscan-handle-synchronous-writepage.patch
vmscan: handle synchronous writepage()

vmscan-handle-synchronous-writepage-fix.patch
vmscan-handle-synchronous-writepage-fix

ramdisk-buffer-uptodate-fix.patch
ramdisk: buffer_uptodate fix

2-3-small-tweaks-to-standard-resource-stuff.patch
small tweaks to standard resource stuff

3-3-same-small-tweaks-x86_64-version.patch
same small resource tweaks, x86_64 version

sis900-fix-phy-transceiver-detection.patch
sis900: Fix PHY transceiver detection

getgroups16-fix.patch
getgroups16() fix

ia32-fault-deadlock-fix-2.patch
ia32: fix deadlocks when oopsing while mmap_sem is held

ppc64-fault-deadlock-fix-2.patch
ppc64: fix deadlocks when oopsing while mmap_sem is held

ext3-htree-rename-fix.patch
ext3: htree rename fix

advansys-basic-highmem-dma-support.patch
advansys: add basic highmem/DMA support

SL0-core-RC6-bk5.patch
symlinks: infrastructure

SL1-ext2-RC6-bk5.patch
symlinks: ext2 conversion

SL2-trivial-RC6-bk5.patch
symlinks: trivial cases

SL3-page-RC6-bk5.patch
symlinks: reuse new helpers

SL4-smb-RC6-bk5.patch
symlinks: smbfs

SL5-xfs-RC6-bk5.patch
symlinks: XFS

SL6-shm-RC6-bk5.patch
symlinks: tmpfs

SL7-befs-RC6-bk5.patch
symlinks: befs

SL8-jffs2-RC6-bk5.patch
symlinks: jffs2

ipr-ppc64-depends.patch
Make ipr.c require ppc

disk-barrier-core.patch
disk barriers: core

disk-barrier-core-tweaks.patch
disk-barrier-core-tweaks

disk-barrier-ide.patch
disk barriers: IDE

disk-barrier-ide-symbol-expoprt.patch
disk-barrier-ide-symbol-expoprt

disk-barrier-ide-warning-fix.patch
disk-barrier ide warning fix

barrier-update.patch
barrier update

disk-barrier-scsi.patch
disk barriers: scsi

disk-barrier-dm.patch
disk barriers: devicemapper

disk-barrier-md.patch
disk barriers: MD

reiserfs-v3-barrier-support.patch
reiserfs v3 barrier support

reiserfs-v3-barrier-support-tweak.patch
reiserfs-v3-barrier-support-tweak

ext3-barrier-support.patch
ext3 barrier support

sync_dirty_buffer-retval.patch
make sync_dirty_buffer() return something useful

jbd-barrier-fallback-on-failure.patch
jbd: barrier fallback on failure

jbd-barrier-fallback-on-failure-fix.patch

x86-stack-dump-fixes.patch
x86 stack dump fixes

check-return-status-of-register-calls-in-i82365.patch
Check return status of register calls in i82365

invalidate_inodes2-mark-pages-notuptodate.patch
invalidate_inodes2(): mark pages not uptodate

reduce-tlb-flushing-during-process-migration.patch
Reduce TLB flushing during process migration

reduce-tlb-flushing-during-process-migration-oops-fix.patch
reduce-tlb-flushing-during-process-migration oops fix

kernel-parameter-parsing-fix.patch
Kernel parameter parsing fix

kernel-parameter-parsing-fix-fix.patch
kernel-parameter-parsing-fix fix

Move-saved_command_line-to-init-mainc.patch
Move saved_command_line to init/main.c
arch/i386/boot/compressed/misc.c warning fixes

reiserfs-v3-logging-bug-for-blocksize-page-size.patch
reiserfs v3 logging bug for blocksize < page size

partition-table-validity-checking.patch
partition table validity checking

read-vs-truncate-race.patch
Fix read() vs truncate race

tulip-driver-deadlocks-on-device-removal.patch
Fix tulip deadlocks on device removal

rcu-lock-update-add-per-cpu-batch-counter.patch
rcu lock update: Add per-cpu batch counter

rcu-lock-update-use-a-sequence-lock-for-starting-batches.patch
rcu lock update: Use a sequence lock for starting batches

rcu-lock-update-code-move-cleanup.patch
rcu lock update: Code move & cleanup

3ware-9000-sata-raid-1.patch
3ware 9000 SATA-RAID driver v2.26.00.009 (1)

3ware-9000-sata-raid-2.patch
3ware 9000 SATA-RAID driver v2.26.00.009 (2)

3ware-9000-driver-update-for-267-rc2-mm2.patch
3ware 9000 driver update

pcm_native-stack-reduction.patch
pcm_native.c stack reduction

cleanups-for-apic.patch
io_apic.c code consolidation

remove-apic_lockup_debug.patch
x86: remove APIC_LOCKUP_DEBUG

remove-io_apic_sync.patch
x86: remove io_apic_sync

vmscan-GFP_NOFS-try-harder.patch
vmscan-GFP_NOFS-try-harder

ach1542-mca-build-fix.patch
ahc1542 !CONFIG_MCA build fix

validate-pm-timer-rate-at-boot-time.patch
Validate PM-Timer rate at boot time

knfsd-1-of-11-fix-nfs3-dentry-encoding.patch
kNFSd: Fix nfs3 dentry encoding

knfsd-2-of-11-nfsd_exp_remove_null_checkpatch.patch
kNFSd: exp_find(): remove null pointer check

knfsd-3-of-11-nfsd_acceptable_typopatch.patch
kNFSd: nfsd_acceptable() typo fix

knfsd-4-of-11-nfsd_xdr_name_encodingpatch.patch
kNFSd: nfsd4 xdr name encoding improvements

knfsd-5-of-11-gss_svc_module_refpatch.patch
kNFSd: gss_svc locking and refcounting fixes

knfsd-5-of-11-gss_svc_module_refpatch-fix.patch
knfsd-5-of-11-gss_svc_module_refpatch-fix

knfsd-5-of-11-gss_svc_module_refpatch-fix2.patch
gss_svc_module_ref typo fix

knfsd-6-of-11-nfsd_gss_rsc_lookup_freepatch.patch
kNFSd: rsc_lookup simplification

knfsd-7-of-11-nfsd-releaselkownerpatch.patch
kNFSd: nfsd4_release_lockowner() oops fix

knfsd-8-of-11-nfsd-getattr-fixpatch.patch
kNFSd: nfsd getattr fix

knfsd-9-of-11-nfsd-setclientid-fixpatch.patch
kNFSd: nfsd4 setclientid fix

knfsd-10-of-11-nfsd-create-fixpatch.patch
kNFSd: nfsd4 file creation fix

knfsd-11-of-11-exporting_doc_typospatch.patch
kNFSd: documentation typo fixes

md-1-of-8-rationalise-device-selection-in-md-multipath.patch
md: rationalise device selection in md/multipath.

md-2-of-8-make-sure-md_check_recovery-will-remove-a-faulty-device-when-nr_pending-hits-0.patch
md: make sure md_check_recovery will remove a faulty device when ->nr_pending hits 0

md-3-of-8-allow-an-md-personality-to-refuse-a-hot-remove-request.patch
md: allow an md personality to refuse a hot-remove request.

md-4-of-8-make-sure-the-size-of-a-raid5-6-array-is-a-multiple-of-the-chunk-size.patch
md: make sure the size of a raid5/6 array is a multiple of the chunk size.

md-5-of-8-handle-hot-add-for-arrays-with-non-persistent-superblocks.patch
md: handle hot-add for arrays with non-persistent superblocks

md-6-of-8-abort-the-resync-of-raid1-there-is-only-one-device.patch
md: abort the resync of raid1 there is only one device.

md-7-of-8-allow-md-arrays-to-be-resized-if-devices-are-large-enough.patch
md: allow md arrays to be resized if devices are large enough.

md-8-of-8-support-reshaping-raid1-arrays-adding-or-removing-drives.patch
md: support reshaping raid1 arrays - adding or removing drives.

md-8-of-8-support-reshaping-raid1-arrays-adding-or-removing-drives-fix.patch
md 8-of-8 fix

enable-suspend-resuming-of-e1000.patch
Enable suspend/resuming of e1000

fix-3c59xc-to-allow-3c905c-100bt-fd.patch
fix 3c59x.c to allow 3c905c 100bT-FD

tty_io-hangup-locking.patch
tty_io.c hangup locking

vmscanc-move-writepage-invocation-into-its-own-function.patch
vmscan.c: move ->writepage invocation into its own function

vmscanc-struct-scan_control.patch
vmscan.c: struct scan_control

first-cut-at-fixing-the-3c59x-power-mismanagment.patch
First cut at fixing the 3c59x power mismanagment

kbuild-specify-default-target-during-configuration.patch
kbuild: Specify default target during configuration

runtime-selection-of-config_paride_epatc8.patch
runtime selection of CONFIG_PARIDE_EPATC8

bsd-accounting-format-rework.patch
BSD accounting format rework

bsd-acct-warning-fix.patch
bsd-acct-warning-fix

iso9660-inodes-beyond-4gb.patch
iso9660: fix handling of inodes beyond 4GB

iso9660-inodes-beyond-4gb-fixes.patch
iso9660-inodes-beyond-4gb-fixes

iso9660-comment-cleanup.patch
iso9660: comment cleanup

perfctr-core.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][1/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: core

perfctr-disabled-build-fix.patch
CONFIG_PERFCTR=n build fix

perfctr-i386.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][2/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: i386

perfctr-x86_64.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][3/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: x86_64

perfctr-ppc.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][4/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: PowerPC

perfctr-virtualised-counters.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][5/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: virtualised counters

perfctr-misc.patch
From: Mikael Pettersson <[email protected]>
Subject: [PATCH][6/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: misc

reference_init.patch
Add reference_init.pl to `make buildcheck' target

sisfb-update-1710.patch
sisfb update 1.7.10

nfs-writepage-fix.patch
Fix nfs writepage behaviour

selinux-check-processed-security-context-length.patch
selinux: check processed security context length

floppy-fix.patch
floppy minor number fix

balance-on-exec-fix.patch
sched: balance-on-exec fix

3c59x-support-for-ati-radeon-9100-igp.patch
3c59x: support for ATI Radeon 9100 IGP

fix-loop-device-cache-handling.patch
Fix loop device cache handling

fix-possible-null-pointer-in-fs-ext3-superc.patch
fix possible NULL pointer in fs/ext3/super.c.

dm_remove_all32.patch
dm: add DM_REMOVE_ALL_32 compat ioctl

ide-dont-put-disks-in-standby-mode-on-halt-on-alpha.patch
ide: don't put disks in standby mode on halt on Alpha

ide-fix-for-generic-ide-pci-module.patch
ide: fix for generic IDE PCI module

ide-ide_pci_device_t-sanitization.patch
ide: ide_pci_device_t sanitization

ide-merge-amd74xxh-into-amd74xxc.patch
ide: merge amd74xx.h into amd74xx.c

ide-add-new-nforce-ide-sata-device-ids-to-amd74xxc.patch
ide: add new nForce IDE/SATA device IDs to amd74xx.c

ide-use-generic-ide_init_hwif_ports-on-m68k.patch
ide: use generic ide_init_hwif_ports() on m68k

ide-use-asm-i386-ideh-as-asm-x86_64-ideh.patch
ide: use <asm-i386/ide.h> as <asm-x86_64/ide.h>

ide-add-ide_arch_obsolete_defaults.patch
ide: add IDE_ARCH_OBSOLETE_DEFAULTS

ide-remove-useless-proc-ide-siimage-from-siimagec.patch
ide: remove useless /proc/ide/siimage from siimage.c

ide-simplify-config_idedma_onlydisk-logic-a-bit.patch
ide: simplify CONFIG_IDEDMA_ONLYDISK logic a bit

mm-oom_killc-trivial-cleanup.patch
mm/oom_kill.c trivial cleanup

use-const-in-timeh-unit-conversion-functions.patch
use const in time.h unit conversion functions

fix-io_getevents-timer-expiry-setting.patch
aio: fix io_getevents() timer expiry setting

move-endif-to-correct-place.patch
move #endif to correct place

hugetlb-msync-fix.patch
hugetlbpage msync() fix

direct-io-hole-fix.patch
direct-io hole fix

nx-267-rc2-bk2-ae.patch
NX (No eXecute) support for x86

nx-267-rc2-bk2-ae-warning-fix.patch
nx-267-rc2-bk2-ae-warning-fix

hugetlb-dtor-reinit.patch
hugetlbpage: reinitialise compound page destructor

mtd-jedec-probe-additions.patch
MTD: add st m50fw0* to jedec_probe.c

use-kern_alert-more-for-oopses.patch
Use KERN_ALERT more for oopses

s390-1-4-core-s390.patch
s390: core

s390-2-4-common-i-o-layer.patch
s390: common i/o layer

s390-3-4-block-device-driver.patch
s390: block device driver

s390-4-4-network-device-driver.patch
s390: network device driver

quota-fix-writing-of-quota-info.patch
quota: fix writing of quota info

fix-for-old-quota-format.patch
quota: fix for old quota format

1-5-device-mapper-dm-ioc.patch
dm-io: device-mapper i/o library for kcopyd

dm-cache-flushing-fix.patch
dm: cache flushing fix

2-5-device-mapper-kcopyd.patch
Device-mapper: kcopyd

2-5-device-mapper-kcopyd-docs.patch
kcopyd commentary

3-5-device-mapper-snapshots.patch
Device-mapper: snapshots

4-5-device-mapper-mirroring.patch
Device-mapper: mirroring

5-5-device-mapper-dm-zero.patch
Device-mapper: dm-zero

dm-zero-flushing-fix.patch
Device-mapper: dm-zero flushing fix

let-serial_8250_acpi-depend-on-acpi_pci-2.patch
let SERIAL_8250_ACPI depend on ACPI_PCI

export-acpi_register_gsi.patch
export acpi_register_gsi()

kill-off-efi_dir-in-efih.patch
kill off efi_dir in efi.h

update-elilo-loader-location-in-kconfig.patch
update elilo loader location in Kconfig

ext3_orphan_del-may-double-decrement-bh-b_count.patch
ext3_orphan_del may double-decrement bh->b_count

submission-of-via-velocitytm-series-adapter-driver.patch
Via "velocity(tm)" series adapter driver

via-velocity-oops-fix.patch
via-velocity oops fix

use-c99-struct-initializer-in-hotcpu_notifier.patch
use c99 struct initializer in hotcpu_notifier

better-names-for-edd-legacy_-fields.patch
Better names for EDD legacy_* fields

use-decimal-instead-of-hex-for-edd-values.patch
Use decimal instead of hex for EDD values

eep-lost-24-change-for-buslogic-info.patch
Lost 2.4 change for BusLogic info

fb-accel-capabilities.patch
fb accel capabilities

rawdev-driver.patch
input: raw access to serio ports (1/2)

sys_io_setup-fix.patch
bug in sys_io_setup

fix-sys-cpumap-for-352-nr_cpus.patch
fix sysfs node cpumap for large NR_CPUS

#1 lore raw

Re: 2.6.7-rc2-mm2 - hpet-dont-use-new-major borked

In the broken out patch set, the patch:

hpet-dont-use-new-major.patch

is junk - no recognizable patch to be applied.

Dropping it from the patch set works - at least
the other patches, including hpet*, apply ok.

Signature · 3 lines
                          I won't rest till it's the best ...
                          Programmer, Linux Scalability
                          Paul Jackson <[email protected]> 1.650.933.1373
#2 lore raw

Re: 2.6.7-rc2-mm2 (compile stats)

In reply to Andrew Morton

Linux 2.6 (mm tree) Compile Statistics (gcc 3.2.2) Warnings/Errors Summary

Kernel bzImage bzImage bzImage modules bzImage modules
(defconfig) (allno) (allyes) (allyes) (allmod) (allmod)
--------------- ---------- -------- -------- -------- -------- --------

2.6.7-rc2-mm2     0w/0e     5w/0e   109w/10e   5w/0e   2w/0e    105w/2e
2.6.7-rc2-mm1     0w/0e    12w/0e   158w/13e   5w/0e   3w/0e    153w/4e
2.6.7-rc1-mm1     0w/0e     6w/0e   108w/0e    5w/0e   2w/0e    104w/0e
2.6.6-mm5         0w/0e     0w/0e   109w/5e    5w/0e   2w/0e    110w/0e
2.6.6-mm4         0w/0e     0w/0e   112w/9e    5w/0e   2w/5e    106w/1e
2.6.6-mm3         3w/9e     0w/0e   120w/26e   5w/0e   2w/0e    114w/10e
2.6.6-mm2         4w/11e    0w/0e   120w/24e   6w/0e   2w/0e    118w/9e
2.6.6-mm1         1w/0e     0w/0e   118w/25e   6w/0e   2w/0e    114w/10e
2.6.6-rc3-mm2     0w/0e     0w/0e   117w/ 0e   8w/0e   2w/0e    116w/0e
2.6.6-rc3-mm1     0w/0e     0w/0e   120w/10e   8w/0e   2w/0e    152w/2e
2.6.6-rc2-mm2     0w/0e     1w/5e   118w/ 0e   8w/0e   3w/0e    118w/0e
2.6.6-rc2-mm1     0w/0e     0w/0e   115w/ 0e   7w/0e   3w/0e    116w/0e
2.6.6-rc1-mm1     0w/0e     0w/7e   122w/ 0e   7w/0e   4w/0e    122w/0e
2.6.5-mm6         0w/0e     0w/0e   123w/ 0e   7w/0e   4w/0e    124w/0e
2.6.5-mm5         0w/0e     0w/0e   119w/ 0e   7w/0e   4w/0e    120w/0e
2.6.5-mm4         0w/0e     0w/0e   120w/ 0e   7w/0e   4w/0e    121w/0e
2.6.5-mm3         0w/0e     1w/0e   121w/12e   7w/0e   3w/0e    123w/0e
2.6.5-mm2         0w/0e     0w/0e   128w/12e   7w/0e   3w/0e    134w/0e
2.6.5-mm1         0w/0e     5w/0e   122w/ 0e   7w/0e   3w/0e    124w/0e
2.6.5-rc3-mm4     0w/0e     0w/0e   124w/ 0e   8w/0e   4w/0e    126w/0e
2.6.5-rc3-mm3     0w/0e     5w/0e   129w/14e   8w/0e   4w/0e    129w/6e
2.6.5-rc3-mm2     0w/0e     5w/0e   130w/14e   8w/0e   4w/0e    129w/6e
2.6.5-rc3-mm1     0w/0e     5w/0e   129w/ 0e   8w/0e   4w/0e    129w/0e
2.6.5-rc2-mm5     0w/0e     5w/0e   130w/ 0e   8w/0e   4w/0e    129w/0e
2.6.5-rc2-mm4     0w/0e     5w/0e   134w/ 0e   8w/0e   3w/0e    133w/0e
2.6.5-rc2-mm3     0w/0e     5w/0e   134w/ 0e   8w/0e   3w/0e    133w/0e
2.6.5-rc2-mm2     0w/0e     5w/0e   137w/ 0e   8w/0e   3w/0e    134w/0e
2.6.5-rc2-mm1     0w/0e     5w/0e   136w/ 0e   8w/0e   3w/0e    134w/0e
2.6.5-rc1-mm2     0w/0e     5w/0e   135w/ 5e   8w/0e   3w/0e    133w/0e
2.6.5-rc1-mm1     0w/0e     5w/0e   135w/ 5e   8w/0e   3w/0e    133w/0e
2.6.4-mm2         1w/2e     5w/2e   144w/10e   8w/0e   3w/2e    144w/0e
2.6.4-mm1         1w/0e     5w/0e   146w/ 5e   8w/0e   3w/0e    144w/0e
2.6.4-rc2-mm1     1w/0e     5w/0e   146w/12e  11w/0e   3w/0e    147w/2e
2.6.4-rc1-mm2     1w/0e     5w/0e   144w/ 0e  11w/0e   3w/0e    145w/0e
2.6.4-rc1-mm1     1w/0e     5w/0e   147w/ 5e  11w/0e   3w/0e    147w/0e
2.6.3-mm4         1w/0e     5w/0e   146w/ 0e   7w/0e   3w/0e    142w/0e
2.6.3-mm3         1w/2e     5w/2e   146w/15e   7w/0e   3w/2e    144w/5e
2.6.3-mm2         1w/8e     5w/0e   140w/ 0e   7w/0e   3w/0e    138w/0e
2.6.3-mm1         1w/0e     5w/0e   143w/ 5e   7w/0e   3w/0e    141w/0e
2.6.3-rc3-mm1     1w/0e     0w/0e   144w/13e   7w/0e   3w/0e    142w/3e
2.6.3-rc2-mm1     1w/0e     0w/265e 144w/ 5e   7w/0e   3w/0e    145w/0e
2.6.3-rc1-mm1     1w/0e     0w/265e 141w/ 5e   7w/0e   3w/0e    143w/0e
2.6.2-mm1         2w/0e     0w/264e 147w/ 5e   7w/0e   3w/0e    173w/0e
2.6.2-rc3-mm1     2w/0e     0w/265e 146w/ 5e   7w/0e   3w/0e    172w/0e
2.6.2-rc2-mm2     0w/0e     0w/264e 145w/ 5e   7w/0e   3w/0e    171w/0e
2.6.2-rc2-mm1     0w/0e     0w/264e 146w/ 5e   7w/0e   3w/0e    172w/0e
2.6.2-rc1-mm3     0w/0e     0w/265e 144w/ 8e   7w/0e   3w/0e    169w/0e
2.6.2-rc1-mm2     0w/0e     0w/264e 144w/ 5e  10w/0e   3w/0e    171w/0e
2.6.2-rc1-mm1     0w/0e     0w/264e 144w/ 5e  10w/0e   3w/0e    171w/0e
2.6.1-mm5         2w/5e     0w/264e 153w/11e  10w/0e   3w/0e    180w/0e
2.6.1-mm4         0w/821e   0w/264e 154w/ 5e   8w/1e   5w/0e    179w/0e
2.6.1-mm3         0w/0e     0w/0e   151w/ 5e  10w/0e   3w/0e    177w/0e
2.6.1-mm2         0w/0e     0w/0e   143w/ 5e  12w/0e   3w/0e    171w/0e
2.6.1-mm1         0w/0e     0w/0e   146w/ 9e  12w/0e   6w/0e    171w/0e
2.6.1-rc2-mm1     0w/0e     0w/0e   149w/ 0e  12w/0e   6w/0e    171w/4e
2.6.1-rc1-mm2     0w/0e     0w/0e   157w/15e  12w/0e   3w/0e    185w/4e
2.6.1-rc1-mm1     0w/0e     0w/0e   156w/10e  12w/0e   3w/0e    184w/2e
2.6.0-mm2         0w/0e     0w/0e   161w/ 0e  12w/0e   3w/0e    189w/0e
2.6.0-mm1         0w/0e     0w/0e   173w/ 0e  12w/0e   3w/0e    212w/0e

Web page with links to complete details:
http://developer.osdl.org/cherry/compile/

John

#3 lore raw
In reply to Andrew Morton
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc2/2.6 .7-rc2-mm2/

SiS framebuffer works here. But my kernel does not boot, it stops at

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb

and right here it stops.

Normally it looks this way:

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb
done

Here is my lspci -vvv output of the USB controllers:

0000:00:03.0 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f) (prog-if 10 [OHCI])
Subsystem: Micro-Star International Co., Ltd.: Unknown device 7010
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-

        Latency: 32 (20000ns max), Cache Line Size: 0x08 (32 bytes)
        Interrupt: pin A routed to IRQ 20
        Region 0: Memory at e2420000 (32-bit, non-prefetchable)

0000:00:03.1 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f) (prog-if 10 [OHCI])
Subsystem: Micro-Star International Co., Ltd.: Unknown device 7010
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-

        Latency: 32 (20000ns max), Cache Line Size: 0x08 (32 bytes)
        Interrupt: pin B routed to IRQ 21
        Region 0: Memory at e2421000 (32-bit, non-prefetchable)

0000:00:03.2 USB Controller: Silicon Integrated Systems [SiS] USB 1.0 Controller (rev 0f) (prog-if 10 [OHCI])
Subsystem: Micro-Star International Co., Ltd.: Unknown device 7010
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-

        Latency: 32 (20000ns max), Cache Line Size: 0x08 (32 bytes)
        Interrupt: pin C routed to IRQ 22
        Region 0: Memory at e2422000 (32-bit, non-prefetchable)

0000:00:03.3 USB Controller: Silicon Integrated Systems [SiS] USB 2.0 Controller (prog-if 20 [EHCI])
Subsystem: Micro-Star International Co., Ltd.: Unknown device 7010
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 32 (20000ns max)
Interrupt: pin D routed to IRQ 23
Region 0: Memory at e2423000 (32-bit, non-prefetchable)
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA
PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-

By the way, with 2.6.6-mm5 (the last working -mm patch on my machine), I get only following PHY messages:

eth0: Realtek RTL8201 PHY transceiver found at address 1.
eth0: Using transceiver found at address 1 as default
eth0: SiS 900 PCI Fast Ethernet at 0xdc00, IRQ 19, 00:10:dc:8f:a9:ac.

with the current 2.6.7-rc2-mm2 patch, I get

eth0: Unknown PHY transceiver found at address 0.
eth0: Realtek RTL8201 PHY transceiver found at address 1.
eth0: Unknown PHY transceiver found at address 2.
eth0: Unknown PHY transceiver found at address 3.
eth0: Unknown PHY transceiver found at address 4.
eth0: Unknown PHY transceiver found at address 5.
eth0: Unknown PHY transceiver found at address 6.
eth0: Unknown PHY transceiver found at address 7.
eth0: Unknown PHY transceiver found at address 8.
eth0: Unknown PHY transceiver found at address 9.
eth0: Unknown PHY transceiver found at address 10.
eth0: Unknown PHY transceiver found at address 11.
eth0: Unknown PHY transceiver found at address 12.
eth0: Unknown PHY transceiver found at address 13.
eth0: Unknown PHY transceiver found at address 14.
eth0: Unknown PHY transceiver found at address 15.
eth0: Unknown PHY transceiver found at address 16.
eth0: Unknown PHY transceiver found at address 17.
eth0: Unknown PHY transceiver found at address 18.
eth0: Unknown PHY transceiver found at address 19.
eth0: Unknown PHY transceiver found at address 20.
eth0: Unknown PHY transceiver found at address 21.
eth0: Unknown PHY transceiver found at address 22.
eth0: Unknown PHY transceiver found at address 23.
eth0: Unknown PHY transceiver found at address 24.
eth0: Unknown PHY transceiver found at address 25.
eth0: Unknown PHY transceiver found at address 26.
eth0: Unknown PHY transceiver found at address 27.
eth0: Unknown PHY transceiver found at address 28.
eth0: Unknown PHY transceiver found at address 29.
eth0: Unknown PHY transceiver found at address 30.
eth0: Unknown PHY transceiver found at address 31.
eth0: Using transceiver found at address 1 as default
eth0: SiS 900 PCI Fast Ethernet at 0xdc00, IRQ 19, 00:10:dc:8f:a9:ac.

It works ok, as the address 1 is used as default, but I just wanted to mention that.

greets dominik

#4 lore raw
Quoted 20 lines · Dominik Karall
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc2/2.6 .7-rc2-mm2/

SiS framebuffer works here. But my kernel does not boot, it stops at

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb

and right here it stops.

Normally it looks this way:

Quoted 9 lines

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb
done

Can you get sysrq-T output?

Can you please grab ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc2/2.6.7-rc2-mm2/broken-out/bk-usb.patch and do

	patch -p1 -i ~/bk-usb.patch

and retest?

#5 lore raw
  GEN     .version
  CHK     include/linux/compile.h
  UPD     include/linux/compile.h
  CC      init/version.o
  LD      init/built-in.o
  LD      .tmp_vmlinux1

arch/i386/kernel/built-in.o(.text+0x996a): In function `acpi_register_gsi':
: undefined reference to `mp_register_gsi'
make: *** [.tmp_vmlinux1] Error 1

CONFIG_ACPI_INTERPRETER missing somehow maybe?

Hope this is the relevant part:
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_CLEAN_COMPILE=y
CONFIG_STANDALONE=y
CONFIG_BROKEN_ON_SMP=y

#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_HOTPLUG is not set
# CONFIG_IKCONFIG is not set
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
CONFIG_KMOD=y

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
CONFIG_MK7=y
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_USE_3DNOW=y
# CONFIG_HPET_TIMER is not set
# CONFIG_HPET_EMULATE_RTC is not set
# CONFIG_SMP is not set
# CONFIG_PREEMPT is not set
# CONFIG_X86_UP_APIC is not set
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_REGPARM is not set

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
# CONFIG_SOFTWARE_SUSPEND is not set
# CONFIG_PM_DISK is not set

#
# ACPI (Advanced Configuration and Power Interface) Support #
# CONFIG_ACPI is not set
CONFIG_ACPI_BOOT=y

#
# APM (Advanced Power Management) BIOS Support
#
CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not set
# CONFIG_APM_CPU_IDLE is not set
# CONFIG_APM_DISPLAY_BLANK is not set
# CONFIG_APM_RTC_IS_GMT is not set
# CONFIG_APM_ALLOW_INTS is not set
CONFIG_APM_REAL_MODE_POWER_OFF=y

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

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

#6 lore raw
In reply to Andrew Morton
Quoted 30 lines · Andrew Morton
Quoted 19 lines · Dominik Karall
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc2 /2.6 .7-rc2-mm2/

SiS framebuffer works here. But my kernel does not boot, it stops at

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb

and right here it stops.

Normally it looks this way:

Quoted 9 lines

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb
done

Quoted 1 line

Can you get sysrq-T output?

As I didn't know whats that command, I googled for it and found that I must hit Alt+SysRq+t and then debug information should be printed out, am I right? But I tried that, and nothing happens. SYSCTL is enabled in the kernel config.
If you really need this output, I would be pleased if anybody can inform me how I can get it. Thanks in advance!

Quoted 8 lines

Can you please grab ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc2/2.6 .7-rc2-mm2/broken-out/bk-usb.patch and do

	patch -p1 -R -i ~/bk-usb.patch

and retest?

I reverted the bk-usb.patch and it works now.

greets dominik

#7 lore raw
Quoted 8 lines · Dominik Karall
Quoted 3 lines

Can you get sysrq-T output?

As I didn't know whats that command, I googled for it and found that I must hit Alt+SysRq+t and then debug information should be printed out, am I right? But I tried that, and nothing happens. SYSCTL is enabled in the kernel config. If you really need this output, I would be pleased if anybody can inform me how I can get it. Thanks in advance!

You must turn on SysRq support in kernel config (CONFIG_MAGIC_SYSRQ=y).

Lenar

#8 lore raw
In reply to Andrew Morton

2.6.7-rc2-mm2 works fine, except for one thing: When my init.d/setserial tries to set the saved state of the serial devices using:

/bin/setserial -z /dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal skip_test

then the machine freezes. The magic sysrq keys don't work; I have to cycle the power...

This happened with 2.6.7-rc2-mm2 and 2.6.7-rc2-mm1, it does work with 2.6.7-rc2-bk2.

Signature · 4 lines
Ralf Hildebrandt (Im Auftrag des Referat V a)   [email protected]
Charite - Universitätsmedizin Berlin            Tel.  +49 (0)30-450 570-155
Gemeinsame Einrichtung von FU- und HU-Berlin    Fax.  +49 (0)30-450 570-916
IT-Zentrum Standort Campus Mitte                          AIM.  ralfpostfix
#9 lore raw
In reply to Dominik Karall
Quoted 15 lines · Dominik Karall
Quoted 2 lines · Andrew Morton

ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc2/2 .6 .7-rc2-mm2/

SiS framebuffer works here. But my kernel does not boot, it stops at

Starting hotplug subsystem:
input
net
pci
sis900: already loaded
8139too: already loaded
ignore pci display device on 01:00.0
usb

Quoted 1 line

and right here it stops.

Does not look like kernel messages to me.
If this happend after init is started, it's easy to track which startup script/program hangs and run strace/gdb/whatever on it.
--
vda

#10 lore raw
In reply to Andrew Morton

On Thu, 03 Jun 2004 01:53:56 -0700
Andrew Morton <[email protected]> wrote:

(snip)

Quoted 3 lines

-nmi-trigger-switch-support-for-debugging.patch

Dropped - was causing various build problems.

I fixed the issue and remade a patch against -mm2.
I have tested various configurations and I have no problem now. A document(proc.txt) is attached too.

Thanks,
Nobuyuki Akiyama

====

arch/i386/kernel/nmi.c +48 -17
diff -Nur linux-2.6.7-rc2-mm2.org/arch/i386/kernel/nmi.c linux-2.6.7-rc2-mm2/arch/i386/kernel/nmi.c
@@ -25,12 +25,15 @@
 #include <linux/module.h>
 #include <linux/nmi.h>
 #include <linux/sysdev.h>
+#include <linux/sysctl.h>
 
 #include <asm/smp.h>
 #include <asm/mtrr.h>
 #include <asm/mpspec.h>
 #include <asm/nmi.h>
 
+#include "mach_traps.h"
+
 #ifdef CONFIG_KGDB
 #include <asm/kgdb.h>
 #ifdef CONFIG_SMP
@@ -42,6 +45,8 @@
 unsigned int nmi_watchdog = NMI_NONE;
 #endif
 
+int unknown_nmi_panic;
+
 static unsigned int nmi_hz = HZ;
 static unsigned int nmi_perfctr_msr;	/* the MSR to reset in NMI handler */
 static unsigned int nmi_p4_cccr_val;
@@ -436,8 +441,6 @@
 	nmi_active = 1;
 }
 
-static spinlock_t nmi_print_lock = SPIN_LOCK_UNLOCKED;
-
 /*
  * the best way to detect whether a CPU has a 'hard lockup' problem
  * is to check it's local APIC timer IRQ counts. If they are not
@@ -472,6 +475,8 @@
 int tune_watchdog = 5*HZ;
 #endif
 
+extern void die_nmi(struct pt_regs *, const char *msg);
+
 void nmi_watchdog_tick (struct pt_regs * regs)
 {
 
@@ -502,21 +507,8 @@
 			alert_counter[cpu] = 0;
 		}
 #endif
-		if (alert_counter[cpu] == 5*nmi_hz) {
-			spin_lock(&nmi_print_lock);
-			/*
-			 * We are in trouble anyway, lets at least try
-			 * to get a message out.
-			 */
-			bust_spinlocks(1);
-			printk("NMI Watchdog detected LOCKUP on CPU%d, eip %08lx, registers:\n", cpu, regs->eip);
-			show_registers(regs);
-			printk("console shuts up ...\n");
-			console_silent();
-			spin_unlock(&nmi_print_lock);
-			bust_spinlocks(0);
-			do_exit(SIGSEGV);
-		}
+		if (alert_counter[cpu] == 5*nmi_hz)
+			die_nmi(regs, "NMI Watchdog detected LOCKUP");
 	} else {
 		last_irq_sums[cpu] = sum;
 		alert_counter[cpu] = 0;
@@ -543,6 +535,45 @@
 	}
 }
 
+static int unknown_nmi_panic_callback(struct pt_regs *regs, int cpu)
+{
+	unsigned char reason = get_nmi_reason();
+	char buf[64];
+
+	if (!(reason & 0xc0)) {
+		sprintf(buf, "NMI received for unknown reason %02x\n", reason);
+		die_nmi(regs, buf);
+	}
+	return 0;
+}
+
+/*
+ * proc handler for /proc/sys/kernel/unknown_nmi_panic
+ */
+int proc_unknown_nmi_panic(ctl_table *table, int write,
+                struct file *file, void __user *buffer, size_t *length)
+{
+	int old_state;
+
+	old_state = unknown_nmi_panic;
+	proc_dointvec(table, write, file, buffer, length);
+	if (!!old_state == !!unknown_nmi_panic)
+		return 0;
+
+	if (unknown_nmi_panic) {
+		if (reserve_lapic_nmi() < 0) {
+			unknown_nmi_panic = 0;
+			return -EBUSY;
+		} else {
+			set_nmi_callback(unknown_nmi_panic_callback);
+		}
+	} else {
+		release_lapic_nmi();
+		unset_nmi_callback();
+	}
+	return 0;
+}
+
 EXPORT_SYMBOL(nmi_active);
 EXPORT_SYMBOL(nmi_watchdog);
 EXPORT_SYMBOL(reserve_lapic_nmi);
arch/i386/kernel/traps.c +21 -0
diff -Nur linux-2.6.7-rc2-mm2.org/arch/i386/kernel/traps.c linux-2.6.7-rc2-mm2/arch/i386/kernel/traps.c
@@ -547,6 +547,27 @@
 	printk("Do you have a strange power saving mode enabled?\n");
 }
 
+static spinlock_t nmi_print_lock = SPIN_LOCK_UNLOCKED;
+
+void die_nmi (struct pt_regs *regs, const char *msg)
+{
+	spin_lock(&nmi_print_lock);
+	/*
+	* We are in trouble anyway, lets at least try
+	* to get a message out.
+	*/
+	bust_spinlocks(1);
+	printk(msg);
+	printk(" on CPU%d, eip %08lx, registers:\n",
+		smp_processor_id(), regs->eip);
+	show_registers(regs);
+	printk("console shuts up ...\n");
+	console_silent();
+	spin_unlock(&nmi_print_lock);
+	bust_spinlocks(0);
+	do_exit(SIGSEGV);
+}
+
 static void default_do_nmi(struct pt_regs * regs)
 {
 	unsigned char reason = get_nmi_reason();
include/linux/sysctl.h +1 -0
diff -Nur linux-2.6.7-rc2-mm2.org/include/linux/sysctl.h linux-2.6.7-rc2-mm2/include/linux/sysctl.h
@@ -133,6 +133,7 @@
 	KERN_NGROUPS_MAX=63,	/* int: NGROUPS_MAX */
 	KERN_SPARC_SCONS_PWROFF=64, /* int: serial console power-off halt */
 	KERN_HZ_TIMER=65,	/* int: hz timer on or off */
+	KERN_UNKNOWN_NMI_PANIC=66, /* int: unknown nmi panic flag */
 };
 
 
kernel/sysctl.c +16 -0
diff -Nur linux-2.6.7-rc2-mm2.org/kernel/sysctl.c linux-2.6.7-rc2-mm2/kernel/sysctl.c
@@ -63,6 +63,12 @@
 extern int printk_ratelimit_jiffies;
 extern int printk_ratelimit_burst;
 
+#if defined(CONFIG_X86_LOCAL_APIC)
+extern int unknown_nmi_panic;
+extern int proc_unknown_nmi_panic(ctl_table *, int, struct file *,
+				  void __user *, size_t *);
+#endif
+
 /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */
 static int maxolduid = 65535;
 static int minolduid;
@@ -618,6 +624,16 @@
 		.mode		= 0444,
 		.proc_handler	= &proc_dointvec,
 	},
+#if defined(CONFIG_X86_LOCAL_APIC)
+	{
+		.ctl_name       = KERN_UNKNOWN_NMI_PANIC,
+		.procname       = "unknown_nmi_panic",
+		.data           = &unknown_nmi_panic,
+		.maxlen         = sizeof (int),
+		.mode           = 0644,
+		.proc_handler   = &proc_unknown_nmi_panic,
+	},
+#endif
 	{ .ctl_name = 0 }
 };
 

====

proc.txt renamed from proc.txt.orig +14 -0
@@ -1109,6 +1109,20 @@
 The location  where  the  modprobe  binary  is  located.  The kernel uses this
 program to load modules on demand.
 
+unknown_nmi_panic
+-----------------
+
+The value in this file affects behavior of handling NMI. When the value is
+non-zero, unknown NMI is trapped and then panic occurs. At that time, kernel
+debugging information is displayed on console.
+
+NMI switch that most IA32 servers have fires unknown NMI up, for example.
+If a system hangs up, try pressing the NMI switch.
+
+[NOTE]
+   This function and oprofile share a NMI callback. Therefore this function
+   cannot be enabled when oprofile is activated.
+
 2.4 /proc/sys/vm - The virtual memory subsystem
 -----------------------------------------------
 
#11 lore raw
In reply to Andrew Morton
Quoted 1 line · Andrew Morton

bk-acpi.patch

Doesn't compile if you disable ACPI, since mp_register_gsi is guarded by

#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)

but used in arch/i386/kernel/acpi/boot.c if CONFIG_X86_IO_APIC is set alone. I have to disable ACPI on this box still, otherwise it crashes very hard immediately after displaying ACPI banner.

Signature · 1 line
Jens Axboe
#12 lore raw
Quoted 10 lines · Jens Axboe
Quoted 1 line · Andrew Morton

bk-acpi.patch

Doesn't compile if you disable ACPI, since mp_register_gsi is guarded by

#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)

but used in arch/i386/kernel/acpi/boot.c if CONFIG_X86_IO_APIC is set alone. I have to disable ACPI on this box still, otherwise it crashes very hard immediately after displaying ACPI banner.

"Crashes very hard" I would like to know more. Does the box have an IOAPIC?
If no, does it boot with "nolapic"?
If yes, does this patch help?
http://bugme.osdl.org/show_bug.cgi?id=1269

thanks,
-Len

#13 lore raw
Quoted 8 lines · Len Brown
Quoted 7 lines · Jens Axboe
Quoted 1 line · Andrew Morton

bk-acpi.patch

Doesn't compile if you disable ACPI, since mp_register_gsi is guarded by

#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)

Quoted 7 lines
Quoted 3 lines

but used in arch/i386/kernel/acpi/boot.c if CONFIG_X86_IO_APIC is set alone. I have to disable ACPI on this box still, otherwise it crashes very hard immediately after displaying ACPI banner.

"Crashes very hard" I would like to know more.
Does the box have an IOAPIC?
If no, does it boot with "nolapic"?

I think you already know all the details, I discussed it with you some weeks ago :-). Let me know if you don't have the thread, and I'll bounce it to you.

I'll try nolapic, haven't tried that.

Quoted 2 lines

If yes, does this patch help?
http://bugme.osdl.org/show_bug.cgi?id=1269

Will check, thanks.

Signature · 1 line
Jens Axboe
#14 lore raw
In reply to Andrew Morton
Quoted 3 lines

+bsd-acct-warning-fix.patch

Fix warning in the BSD accounting patch

Thanks for educating me one this.

I vaguely remember someone wrote on lkml that defining variables in blocks was bad because some gcc version wouldn't deal well with it. This was just at the time I wrote these lines, so I refrained from it in spite of the warning. OTOH, this is so very basic C that I cannot imagine gcc getting it wrong.

There is one other mistake in the BSD accounting patch, fixed below (thanks to Peter Lundkvist for reporting).

Then there's the thing with units of time not exactly corresponding to USER_HZ anymore.

And it seems this didn't get much outside testing yet, since I've only recently seen the first download of the userspace tools. Well, BSD accounting isn't too exciting these days...

I'll probably roll up another version before this can hit mainline.

Tim

include/linux/acct.h +1 -1
@@ -165,7 +165,7 @@ static inline u64 jiffies_64_to_AHZ(u64 
 {
 #if HZ == AHZ
 	/* do nothing */
-#elseif (HZ % AHZ)==0
+#elif (HZ % AHZ)==0
 	do_div(x, HZ / AHZ);
 #else
 	x *= AHZ;
#15 lore raw

2.6.7-rc2-mm2: compile error with VIDEO_CX88=y and gcc 2.95

In reply to Andrew Morton

FYI:

The following compile error with CONFIG_VIDEO_CX88=y when using gcc 2.95 is still present in both 2.6.7-rc2 and 2.6.7-rc2-mm2:

<-- snip -->

...
LD .tmp_vmlinux1
drivers/built-in.o(.text+0x372a76): In function `set_tvaudio':
: undefined reference to __ucmpdi2' drivers/built-in.o(.text+0x372a90): In function set_tvaudio':
: undefined reference to __ucmpdi2' drivers/built-in.o(.text+0x372aa3): In function set_tvaudio':
: undefined reference to __ucmpdi2' drivers/built-in.o(.text+0x372aba): In function set_tvaudio':
: undefined reference to __ucmpdi2' drivers/built-in.o(.text+0x372ada): In function set_tvaudio':
: undefined reference to __ucmpdi2' drivers/built-in.o(.text+0x372af4): more undefined references to __ucmpdi2' follow
make: *** [.tmp_vmlinux1] Error 1

<-- snip -->

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#16 lore raw
In reply to Andrew Morton
Quoted 4 lines · Andrew Morton

- As soon as I merged Andrey's big dmi cleanup patches everyone started madly patching dmi_scan.c. The subsequent reject storm forced me to drop them.

Could you apply attached patch (only exports DMI check functions) instead of them ? With this patch applied these "mad patchers" will have an alternative to pushing their crap^H^H^Hhanges into dmi_scan.c

I tried to make this patch as nonintrusive as possible.

Best regards.

Signature · 2 lines
Andrey Panin		| Linux and UNIX system administrator
[email protected]		| PGP key: wwwkeys.pgp.net
arch/i386/kernel/dmi_scan.c +55 -56
diff -urpN -X /usr/share/dontdiff linux-2.6.7-rc1-mm1.vanilla/arch/i386/kernel/dmi_scan.c linux-2.6.7-rc1-mm1/arch/i386/kernel/dmi_scan.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <linux/pm.h>
 #include <asm/system.h>
+#include <linux/dmi.h>
 #include <linux/bootmem.h>
 
 unsigned long dmi_broken;
@@ -139,21 +140,6 @@ static int __init dmi_iterate(void (*dec
 	return -1;
 }
 
-
-enum
-{
-	DMI_BIOS_VENDOR,
-	DMI_BIOS_VERSION,
-	DMI_BIOS_DATE,
-	DMI_SYS_VENDOR,
-	DMI_PRODUCT_NAME,
-	DMI_PRODUCT_VERSION,
-	DMI_BOARD_VENDOR,
-	DMI_BOARD_NAME,
-	DMI_BOARD_VERSION,
-	DMI_STRING_MAX
-};
-
 static char *dmi_ident[DMI_STRING_MAX];
 
 /*
@@ -176,26 +162,11 @@ static void __init dmi_save_ident(struct
 }
 
 /*
- *	DMI callbacks for problem boards
+ * Ugly compatibility crap.
  */
-
-struct dmi_strmatch
-{
-	u8 slot;
-	char *substr;
-};
-
-#define NONE	255
-
-struct dmi_blacklist
-{
-	int (*callback)(struct dmi_blacklist *);
-	char *ident;
-	struct dmi_strmatch matches[4];
-};
-
-#define NO_MATCH	{ NONE, NULL}
-#define MATCH(a,b)	{ a, b }
+#define dmi_blacklist	dmi_system_id
+#define NO_MATCH	{ DMI_NONE, NULL}
+#define MATCH		DMI_MATCH
 
 /* 
  * Reboot options and system auto-detection code provided by
@@ -1072,9 +1043,6 @@ static __initdata struct dmi_blacklist d
 
 static __init void dmi_check_blacklist(void)
 {
-	struct dmi_blacklist *d;
-	int i;
-		
 #ifdef	CONFIG_ACPI_BOOT
 #define	ACPI_BLACKLIST_CUTOFF_YEAR	2001
 
@@ -1096,25 +1064,7 @@ static __init void dmi_check_blacklist(v
 		}
 	}
 #endif
-
-	d=&dmi_blacklist[0];
-	while(d->callback)
-	{
-		for(i=0;i<4;i++)
-		{
-			int s = d->matches[i].slot;
-			if(s==NONE)
-				continue;
-			if(dmi_ident[s] && strstr(dmi_ident[s], d->matches[i].substr))
-				continue;
-			/* No match */
-			goto fail;
-		}
-		if(d->callback(d))
-			return;
-fail:			
-		d++;
-	}
+ 	dmi_check_system(dmi_blacklist);
 }
 
 	
@@ -1181,3 +1131,52 @@ void __init dmi_scan_machine(void)
 }
 
 EXPORT_SYMBOL(is_unsafe_smbus);
+
+
+/**
+ *	dmi_check_system - check system DMI data
+ *	@list: array of dmi_system_id structures to match against
+ *
+ *	Walk the blacklist table running matching functions until someone
+ *	returns non zero or we hit the end. Callback function is called for
+ *	each successfull match. Returns the number of matches.
+ */
+int dmi_check_system(struct dmi_system_id *list)
+{
+	int i, count = 0;
+	struct dmi_system_id *d = list;
+
+	while (d->ident) {
+		for (i = 0; i < ARRAY_SIZE(d->matches); i++) {
+			int s = d->matches[i].slot;
+			if (s == DMI_NONE)
+				continue;
+			if (dmi_ident[s] && strstr(dmi_ident[s], d->matches[i].substr))
+				continue;
+			/* No match */
+			goto fail;
+		}
+		if (d->callback && d->callback(d))
+			break;
+		count++;
+fail:		d++;
+	}
+
+	return count;
+}
+
+EXPORT_SYMBOL(dmi_check_system);
+
+/**
+ *	dmi_get_system_info - return DMI data value
+ *	@field: data index (see enum dmi_filed)
+ *
+ *	Returns one DMI data value, can be used to perform
+ *	complex DMI data checks.
+ */
+char * dmi_get_system_info(int field)
+{
+	return dmi_ident[field];
+}
+
+EXPORT_SYMBOL(dmi_get_system_info);
include/linux/dmi.h +47 -0

47 lines not on this page · raw message

A message that is not in the archive (sent off-list or not yet received): [email protected]

#18 lore raw
Quoted 5 lines · Andrew Morton
Quoted 2 lines · Andrey Panin

Could you apply attached patch (only exports DMI check functions) instead of them ?

I'll need a better description of what it does, please.

This patch creates and exports 2 functions which can be used by the rest of kernel code to perform DMI data checks:

- dmi_check_system() function checks system DMI data against
given blacklist table and on each match runs corresponding callback function;

- dmi_get_system_info() function returns DMI data value.
Useful for people wanting more complex DMI data check than simple string match.

Also filling unused match entries with NO_MATCH made optional, but existing NO_MATCH occurences are left intact, so people are free to continue dmi_scan.c patching without massive reject problems.

Best regards.

Signature · 2 lines
Andrey Panin		| Linux and UNIX system administrator
[email protected]		| PGP key: wwwkeys.pgp.net

A message that is not in the archive (sent off-list or not yet received): [email protected]

#20 lore raw
Quoted 7 lines · Andrew Morton
Quoted 6 lines · Andrey Panin
Quoted 4 lines · Andrew Morton
Quoted 2 lines · Andrey Panin

Could you apply attached patch (only exports DMI check functions) instead of them ?

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

I'll need a better description of what it does, please.

This patch creates and exports 2 functions which can be used by the rest of kernel code to perform DMI data checks:

Thanks. Could you please regenerate a new diff? The last one I had doesn't seem to apply.

Patch rediffed agains 2.6.7-rc2-mm2 attached.

Signature · 2 lines
Andrey Panin		| Linux and UNIX system administrator
[email protected]		| PGP key: wwwkeys.pgp.net
arch/i386/kernel/dmi_scan.c +55 -56
diff -urpN -X /usr/share/dontdiff linux-2.6.7-rc2-mm2.vanilla/arch/i386/kernel/dmi_scan.c linux-2.6.7-rc2-mm2/arch/i386/kernel/dmi_scan.c
@@ -10,6 +10,7 @@
 #include <asm/io.h>
 #include <linux/pm.h>
 #include <asm/system.h>
+#include <linux/dmi.h>
 #include <linux/bootmem.h>
 
 unsigned long dmi_broken;
@@ -142,21 +143,6 @@ static int __init dmi_iterate(void (*dec
 	return -1;
 }
 
-
-enum
-{
-	DMI_BIOS_VENDOR,
-	DMI_BIOS_VERSION,
-	DMI_BIOS_DATE,
-	DMI_SYS_VENDOR,
-	DMI_PRODUCT_NAME,
-	DMI_PRODUCT_VERSION,
-	DMI_BOARD_VENDOR,
-	DMI_BOARD_NAME,
-	DMI_BOARD_VERSION,
-	DMI_STRING_MAX
-};
-
 static char *dmi_ident[DMI_STRING_MAX];
 
 /*
@@ -179,26 +165,11 @@ static void __init dmi_save_ident(struct
 }
 
 /*
- *	DMI callbacks for problem boards
+ * Ugly compatibility crap.
  */
-
-struct dmi_strmatch
-{
-	u8 slot;
-	char *substr;
-};
-
-#define NONE	255
-
-struct dmi_blacklist
-{
-	int (*callback)(struct dmi_blacklist *);
-	char *ident;
-	struct dmi_strmatch matches[4];
-};
-
-#define NO_MATCH	{ NONE, NULL}
-#define MATCH(a,b)	{ a, b }
+#define dmi_blacklist	dmi_system_id
+#define NO_MATCH	{ DMI_NONE, NULL}
+#define MATCH		DMI_MATCH
 
 /* 
  * Reboot options and system auto-detection code provided by
@@ -1078,9 +1049,6 @@ static __initdata struct dmi_blacklist d
 
 static __init void dmi_check_blacklist(void)
 {
-	struct dmi_blacklist *d;
-	int i;
-		
 #ifdef	CONFIG_ACPI_BOOT
 #define	ACPI_BLACKLIST_CUTOFF_YEAR	2001
 
@@ -1102,25 +1070,7 @@ static __init void dmi_check_blacklist(v
 		}
 	}
 #endif
-
-	d=&dmi_blacklist[0];
-	while(d->callback)
-	{
-		for(i=0;i<4;i++)
-		{
-			int s = d->matches[i].slot;
-			if(s==NONE)
-				continue;
-			if(dmi_ident[s] && strstr(dmi_ident[s], d->matches[i].substr))
-				continue;
-			/* No match */
-			goto fail;
-		}
-		if(d->callback(d))
-			return;
-fail:			
-		d++;
-	}
+ 	dmi_check_system(dmi_blacklist);
 }
 
 	
@@ -1187,3 +1137,52 @@ void __init dmi_scan_machine(void)
 }
 
 EXPORT_SYMBOL(is_unsafe_smbus);
+
+
+/**
+ *	dmi_check_system - check system DMI data
+ *	@list: array of dmi_system_id structures to match against
+ *
+ *	Walk the blacklist table running matching functions until someone
+ *	returns non zero or we hit the end. Callback function is called for
+ *	each successfull match. Returns the number of matches.
+ */
+int dmi_check_system(struct dmi_system_id *list)
+{
+	int i, count = 0;
+	struct dmi_system_id *d = list;
+
+	while (d->ident) {
+		for (i = 0; i < ARRAY_SIZE(d->matches); i++) {
+			int s = d->matches[i].slot;
+			if (s == DMI_NONE)
+				continue;
+			if (dmi_ident[s] && strstr(dmi_ident[s], d->matches[i].substr))
+				continue;
+			/* No match */
+			goto fail;
+		}
+		if (d->callback && d->callback(d))
+			break;
+		count++;
+fail:		d++;
+	}
+
+	return count;
+}
+
+EXPORT_SYMBOL(dmi_check_system);
+
+/**
+ *	dmi_get_system_info - return DMI data value
+ *	@field: data index (see enum dmi_filed)
+ *
+ *	Returns one DMI data value, can be used to perform
+ *	complex DMI data checks.
+ */
+char * dmi_get_system_info(int field)
+{
+	return dmi_ident[field];
+}
+
+EXPORT_SYMBOL(dmi_get_system_info);
include/linux/dmi.h +47 -0

47 lines not on this page · raw message

#21 lore raw
Quoted 5 lines · Andrey Panin
Quoted 3 lines

Thanks. Could you please regenerate a new diff? The last one I had doesn't seem to apply.

Patch rediffed agains 2.6.7-rc2-mm2 attached.

Thanks, that works.

It would be good if you could convert a couple of the existing dmi checks over to this API. That way people can see how to use them and we know that the new code is getting some exercise.

Choosing some commonly-used table entries would be best.

#22 lore raw
Quoted 5 lines · Andrew Morton
Quoted 4 lines · Andrey Panin
Quoted 3 lines

Thanks. Could you please regenerate a new diff? The last one I had doesn't seem to apply.

Quoted 8 lines
Quoted 1 line

Patch rediffed agains 2.6.7-rc2-mm2 attached.

Thanks, that works.

It would be good if you could convert a couple of the existing dmi checks over to this API. That way people can see how to use them and we know that the new code is getting some exercise.
Choosing some commonly-used table entries would be best.

Do you remember the reason of dropping my previous DMI patchset ? ;)

I can do it again, but this conversion will lead to new reject horrors, due to changes in cursed dmi_blacklist array.

Best regards.

Signature · 2 lines
Andrey Panin		| Linux and UNIX system administrator
[email protected]		| PGP key: wwwkeys.pgp.net

A message that is not in the archive (sent off-list or not yet received): [email protected]

#24 lore raw
Quoted 9 lines · Andrew Morton
Quoted 6 lines · Andrey Panin

Do you remember the reason of dropping my previous DMI patchset ? ;)

I can do it again, but this conversion will lead to new reject horrors, due to changes in cursed dmi_blacklist array.

Not the whole thing. Just a couple of examples.

Ok, first example attached. Port HP Pavilion irq workaround to new DMI probing.

Signature · 2 lines
Andrey Panin		| Linux and UNIX system administrator
[email protected]		| PGP key: wwwkeys.pgp.net
arch/i386/kernel/dmi_scan.c +0 -25
diff -urpN -X /usr/share/dontdiff linux-2.6.7-rc2-mm2.vanilla/arch/i386/kernel/dmi_scan.c linux-2.6.7-rc2-mm2/arch/i386/kernel/dmi_scan.c
@@ -317,23 +317,6 @@ static __init int disable_smbus(struct d
 }
 
 /*
- * Work around broken HP Pavilion Notebooks which assign USB to
- * IRQ 9 even though it is actually wired to IRQ 11
- */
-static __init int fix_broken_hp_bios_irq9(struct dmi_blacklist *d)
-{
-#ifdef CONFIG_PCI
-	extern int broken_hp_bios_irq9;
-	if (broken_hp_bios_irq9 == 0)
-	{
-		broken_hp_bios_irq9 = 1;
-		printk(KERN_INFO "%s detected - fixing broken IRQ routing\n", d->ident);
-	}
-#endif
-	return 0;
-}
-
-/*
  *  Check for clue free BIOS implementations who use
  *  the following QA technique
  *
@@ -823,14 +806,6 @@ static __initdata struct dmi_blacklist d
 			NO_MATCH, NO_MATCH
 			} },
 	 
-	{ fix_broken_hp_bios_irq9, "HP Pavilion N5400 Series Laptop", {
-			MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
-			MATCH(DMI_BIOS_VERSION, "GE.M1.03"),
-			MATCH(DMI_PRODUCT_VERSION, "HP Pavilion Notebook Model GE"),
-			MATCH(DMI_BOARD_VERSION, "OmniBook N32N-736")
-			} },
- 
-
 	/*
 	 *	Generic per vendor APM settings
 	 */
arch/i386/pci/irq.c +31 -1
diff -urpN -X /usr/share/dontdiff linux-2.6.7-rc2-mm2.vanilla/arch/i386/pci/irq.c linux-2.6.7-rc2-mm2/arch/i386/pci/irq.c
@@ -12,6 +12,7 @@
 #include <linux/slab.h>
 #include <linux/interrupt.h>
 #include <linux/irq.h>
+#include <linux/dmi.h>
 #include <asm/io.h>
 #include <asm/smp.h>
 #include <asm/io_apic.h>
@@ -22,7 +23,7 @@
 #define PIRQ_SIGNATURE	(('$' << 0) + ('P' << 8) + ('I' << 16) + ('R' << 24))
 #define PIRQ_VERSION 0x0100
 
-int broken_hp_bios_irq9;
+static int broken_hp_bios_irq9;
 
 static struct irq_routing_table *pirq_table;
 
@@ -893,6 +894,33 @@ static void __init pcibios_fixup_irqs(vo
 	}
 }
 
+/*
+ * Work around broken HP Pavilion Notebooks which assign USB to
+ * IRQ 9 even though it is actually wired to IRQ 11
+ */
+static int __init fix_broken_hp_bios_irq9(struct dmi_system_id *d)
+{
+	if (!broken_hp_bios_irq9) {
+		broken_hp_bios_irq9 = 1;
+		printk(KERN_INFO "%s detected - fixing broken IRQ routing\n", d->ident);
+	}
+	return 0;
+}
+
+static struct dmi_system_id __initdata pciirq_dmi_table[] = {
+	{
+		.callback = fix_broken_hp_bios_irq9,
+		.ident = "HP Pavilion N5400 Series Laptop",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
+			DMI_MATCH(DMI_BIOS_VERSION, "GE.M1.03"),
+			DMI_MATCH(DMI_PRODUCT_VERSION, "HP Pavilion Notebook Model GE"),
+			DMI_MATCH(DMI_BOARD_VERSION, "OmniBook N32N-736"),
+		},
+	},
+	{ }
+};
+
 static int __init pcibios_irq_init(void)
 {
 	DBG("PCI: IRQ init\n");
@@ -900,6 +928,8 @@ static int __init pcibios_irq_init(void)
 	if (pcibios_enable_irq || raw_pci_ops == NULL)
 		return 0;
 
+	dmi_check_system(pciirq_dmi_table);
+
 	pirq_table = pirq_find_routing_table();
 
 #ifdef CONFIG_PCI_BIOS
arch/i386/pci/visws.c +0 -2
diff -urpN -X /usr/share/dontdiff linux-2.6.7-rc2-mm2.vanilla/arch/i386/pci/visws.c linux-2.6.7-rc2-mm2/arch/i386/pci/visws.c
@@ -15,8 +15,6 @@
 #include "pci.h"
 
 
-int broken_hp_bios_irq9;
-
 extern struct pci_raw_ops pci_direct_conf1;
 
 static int pci_visws_enable_irq(struct pci_dev *dev) { return 0; }