* 2.6.8.1-mm1
@ 2004-08-16 21:37 Andrew Morton
2004-08-16 21:47 ` 2.6.8.1-mm1 Christoph Hellwig
` (9 more replies)
0 siblings, 10 replies; 38+ messages in thread
From: Andrew Morton @ 2004-08-16 21:37 UTC (permalink / raw)
To: linux-kernel
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
- perfctr is ready to be merged up, but there are concerns that it
duplicates perfmon capabilities, and that perfmon may be a better base from
which to start. Am waiting for the dust to settle on that front.
- The packet-writing patches should be ready to go, but I haven't even
looked at them yet, and am not sure that anyone else has reviewed the code.
- Added the kprobes facility.
Generally we prefer to not merge infrastructure into the kernel unless it
has in-kernel users. kprobes is exceptional, in that its applications are
all custom-written to solve a particular problem.
One problem we face with kprobes is that there is no easy way in which it
can receive runtime (or regression) testing.
This patchset does include an application (a network packet tracer) but
it's not obvious that we should retain that in the kernel.
- This kernel probably still has the ia64 scheduler startup bug, although it
works For Me.
- If people have significant patches in here, please regression test them to
make sure everything landed OK, thanks.
Changes since 2.6.8-rc4-mm1:
linus.patch
bk-acpi.patch
bk-agpgart.patch
bk-alsa.patch
bk-arm.patch
bk-dma-declare-coherent-memory.patch
bk-cpufreq.patch
bk-driver-core.patch
bk-drm.patch
bk-ieee1394.patch
bk-input.patch
bk-kbuild.patch
bk-libata.patch
bk-netdev.patch
bk-ntfs.patch
bk-pci.patch
bk-pnp.patch
bk-power.patch
bk-scsi.patch
bk-usb.patch
Latest versions of external trees
-bk-netdev-axnet_cs-fix.patch
-bk-netdev-hp-plus-fix.patch
-fa311-mac-address-fix.patch
-268-rc2-mm1-link-errors.patch
-drm-optimisation.patch
-add-bus-dependencies-to-two-scsi-drivers.patch
-cdrom-mo-drive-open-write-fix.patch
-qla2xxx-allocation-mode-fix.patch
-scsi-gdth-kill-define-__devinitdata.patch
-remove-spaces-from-pci-ide-pci_drivername-field.patch
Merged
-sysfs-backing-store-add-sysfs_dirent-to-sysfs-dentry.patch
-sysfs-backing-store-use-sysfs_dirent-tree-for-readdir-etc.patch
-sysfs-backing-store-free-sysfs_dirent-on-file-removal.patch
-sysfs-backing-store-change-sysfs_file_operations.patch
+sysfs-backing-store-prepare-file_operations.patch
+sysfs-backing-store-add-sysfs_dirent.patch
+sysfs-backing-store-use-sysfs_dirent-tree-in-removal.patch
+sysfs-backing-store-use-sysfs_dirent-tree-in-dir-file_operations.patch
sysfs-backing-store-stop-pinning-dentries-inodes-for-leaves.patch
New version of the sysfs-backed-by-kobject space-saving patches
+i2c-keywestc-build-fix.patch
+ipr-build-fix.patch
Build fixes for external trees
+nmi-build-fix-2.patch
Build fix
+i386_exception_notifiers.patch
+kprobes-base.patch
+kprobes-unset-fix.patch
+kprobes-func-args.patch
+kprobes-build-fix.patch
+network-packet-tracer-module-using-kprobes-interface.patch
kprobes, plus an application thereof.
+kgdb-is-incompatible-with-kprobes.patch
Plaster over kprobes/kgdb incompatibilities
+ppc32-make-ppc40x-large-tlb-mapping-optional.patch
+ppc32-handle-misaligned-string-multiple-insns.patch
+ppc32-emulate-obsolete-instructions.patch
+ppc32-emulate-obsolete-instructions-fix.patch
+ppc32-add-docs-for-ppc-noltlbs-and-nobats-parameters.patch
ppc32 updates
+ppc64-reduce-stack-overflow-warning-threshold.patch
+ppc64-remove-old-asm-offsets.patch
+ppc64-set-time-related-systemcfg-fields.patch
+ppc64-include-profilec-in-kernel-irqc.patch
+ppc64-1-4-use-platform-numbering-of-cpus-for-hypervisor-calls.patch
+ppc64-2-4-use-cpu_present_map-in-ppc64.patch
+ppc64-3-4-rework-secondary-smt-thread-setup-at-boot.patch
+ppc64-4-4-remove-unnecessary-cpu-maps.patch
+ppc64-power4-oprofile-update.patch
+ppc64-disable-oprofile-debug-messages.patch
+ppc64-allow-oprofile-module-to-be-safely-unloaded.patch
+ppc64-add-missing-export_symbols-for-oprofile.patch
+ppc64-fix-oprofile-error-messages.patch
+ppc64-set-tbl-it_type-in-iommu-code.patch
+ibmveth-module-tag-fixes.patch
+ibmveth-race-fix.patch
+ibmveth-hypervisor-retval-fix.patch
+ibmveth-hypervisor-memory-barrier.patch
ppc64 updates
+final-ide-barrier-bug.patch
Fix another final bug in the IDE barrier code.
-perfctr-ppc32-sysctl-warning-fix.patch
This was in the wrong place.
+perfctr-smp-hang-fix.patch
perfctr fix.
-sched-single-array.patch
Drop this experimental patch. Was inconclusive.
+legacy_va_layout-docs-fix.patch
+legacy_va_layout-compile-error-with-sysctl=n.patch
More fixes for /proc/sys/vm/legacy_va_layout
-posix-locking-fix-to-posix_same_owner.patch
-posix-locking-fix-to-locking-code.patch
-posix-locking-fix-up-nfs4statec.patch
-posix-locking-fix-up-lockd.patch
-posix-locking-fl_owner_t-to-pid-mapping.patch
+posix-locking-posix_same_owner-fixes.patch
+posix-locking-hook-functions.patch
+posix-locking-nfsv4-server.patch
+posix-locking-lockd-fixes.patch
+posix-locking-lifetime-fixes.patch
+posix-locking-move-file-lock-fields.patch
+posix-locking-filesystems-call-posix_lock_file.patch
Updated posix file locking fixes
+get-blockdev-size-right-in-pktcdvd-after-switching-discs.patch
+speed-up-the-cdrw-packet-writing-driver.patch
+cdrom-buffer-size-fix.patch
packet-writing fixes
+uml-updates.patch
+uml-fixes.patch
UML fixes
+include-compilerh-in-videodevh.patch
Build fix
+altix-system-controller-fixes.patch
Altix driver update
+iteraid-warning-fix.patch
+iteraid-pci_enable_device-for-irq-routing.patch
ITE RAID driver fixes
-consolidate-prof_cpu_mask.patch
-profile_pc.patch
-profile_pc-fix.patch
-profile_pc-fix-2.patch
-profile_pc-fix-3.patch
-proc_pc-alpha-fix.patch
-profile_tick.patch
-profile-tick-fix.patch
-early-profiling-oops-fix.patch
-move-profile-operations.patch
-prof_pc-proc-fixes.patch
-prof-fix-create_proc_profile.patch
-make-private-profile-state-static.patch
-make-prof_buffer-atomic_t.patch
+profile-consolidate-prof_cpu_mask.patch
+profile-introduce-profile_pc.patch
+profile-consolidate-hit-count-increments-in-profile_tick.patch
+profile-move-profile_operations.patch
+profile-make-private-profile-state-static.patch
+profile-make-prof_buffer-atomic_t.patch
+remove-iseries-profiling.patch
Reconsolidate the kernel profiling cleanup patch series
+ipmi-driver-updates.patch
IPMI fixes and features
+dio-pages-in-io-accounting-fix.patch
direct-io fix
+consolidated-readahead-fixes.patch
pagecache readahead tuneup.
+kill-clone_idletask-fix.patch
Fix up kill-clone_idletask.patch
+fix-i386-x86_64-idle-routine-selection-comment-updates.patch
Comments for fix-i386-x86_64-idle-routine-selection.patch
+use-posix-headers-in-sumversionc.patch
Cross-building fix
+x86-esr-print-quietness.patch
Quieten some boot-time printks
+intel8x0c-sound-use-pci_vendor_id-rather-than-bare-numbers.patch
sound driver cleanups
+fix-rxrpc-compile-errors-with-sysctl=n.patch
build fix
+typo-fixes-for-cpufreq.patch
Fix some tpyos
+dnotify-autofs-may-create-signal-restart-syscall-loop.patch
check for the right signals in autofs
+ix86x86_64-cpu-features.patch
Display more x86 CPU features in /proc/cpuinfo
+libfs-move-transaction-file-ops-into-libfs.patch
libfs consolidation
+dont-print-per-cpu-delay-loop-calibration.patch
boot-time printk removals.
+fix-sn_console-for-config_smp=n.patch
SN build fix
+via-velocity-wrong-module-name-in-kconfig-documentation.patch
Kconfig help fix
+reduce-ptyc-ifdef-clutter.patch
Code cleanup
+bug-on-inconsistant-dcache-tree-in-may_delete.patch
VFS debug check
+using-get_cycles-for-add_timer_randomness.patch
Speed up the random driver
+remove-dead-config_kernel_elf-kconfig-entry.patch
Kconfig cleanup
+fix-some-comments-about-epoch-in-arch-alpha-kernel-timec.patch
Comment fixes
+small-simplification-for-two-security-dependencies.patch
security Kconfig cleanups
+configurable-selinux-bootparam-value.patch
Make the default value of selinux_enabled Kconfigurable
+fix-typos-in-security-securityc.patch
Fix more tpyos
+use-simple_read_from_buffer-in-selinuxfs.patch
+use-simple_read_from_buffer-in-proc_info_read-and-proc_pid_attr_read.patch
Code consolidation
+fw-new-linux-268-rc4-mm1-ipv6-in-ipv6-undefined-references.patch
ipv6 build fix
+ttys0-vs-ttys00-confusion.patch
Fix tty device naming
+reduce-size-of-struct-buffer_head-on-64bit.patch
+reduce-size-of-struct-dentry-on-64bit.patch
+remove-cacheline-alignment-from-inode-slabs.patch
Reduce struct sizes on 64-bit machines.
+waitid-system-call.patch
+waitid-system-call-update.patch
+waitid-ia64-build-fix.patch
+waitid-system-call-cleanups.patch
sys_waitid()
+read-cpumasks-every-time-when-exporting-through-sysfs.patch
Make sysfs cpumap contents reflect current reality.
+centralize-i386-constants.patch
Code cleanup
+fix-permissions-on-module_param-usage.patch
+module-parameters-in-sysfs-for-built-in-modules.patch
+remove-module_parm-from-main-part-of-kernel.patch
Module system fixes
+filemap_index_overflow.patch
Don't read an extra pagecache page in the VFS file reading code
+synclinkc-replace-syncppp-with-genhdlc.patch
+synclinkmpc-replace-syncppp-with-genhdlc.patch
+synclink_csc-replace-syncppp-with-genhdlc.patch
Code consolidation in the synclink drivers
+reiserfs-xattr-acl-fixes.patch
reiserfs xattr/acl fixes
+files-up-to-4-gb-support-for-iso9660-filesystems.patch
Fix iso9660 handling of large files
+selinux-add-null-device-node-to-selinuxfs-remove-open_devnull.patch
+selinux-revalidate-access-to-controlling-tty.patch
+selinux-defer-inode-security-initialization.patch
+selinux-fix-name_bind-audit.patch
SELinux updates
All 611 patches:
linus.patch
procfs-taskname-locking.patch
proc fs task name locking fix
fix-reading-string-module-parameters-in-sysfs.patch
fix reading string module parameters in sysfs
sysfs-backing-store-prepare-file_operations.patch
sysfs backing store - prepare sysfs_file_operations helpers
sysfs-backing-store-add-sysfs_dirent.patch
sysfs backing store - add sysfs_direct structure
sysfs-backing-store-use-sysfs_dirent-tree-in-removal.patch
sysfs backing store: use sysfs_dirent based tree in file removal
sysfs-backing-store-use-sysfs_dirent-tree-in-dir-file_operations.patch
sysfs backing store: use sysfs_dirent based tree in dir file operations
sysfs-backing-store-stop-pinning-dentries-inodes-for-leaves.patch
sysfs backing store: stop pinning dentries/inodes for leaf entries
bk-acpi.patch
bk-agpgart.patch
bk-alsa.patch
bk-arm.patch
bk-dma-declare-coherent-memory.patch
bk-cpufreq.patch
bk-driver-core.patch
bk-drm.patch
bk-ieee1394.patch
bk-input.patch
bk-kbuild.patch
bk-libata.patch
bk-netdev.patch
bk-ntfs.patch
bk-pci.patch
bk-pnp.patch
bk-power.patch
bk-scsi.patch
bk-usb.patch
mm.patch
add -mmN to EXTRAVERSION
mm-swsusp-make-sure-we-do-not-return-to-userspace-where-image-is-on-disk.patch
-mm swsusp: make sure we do not return to userspace where image is on disk
mm-swsusp-copy_page-is-harmfull.patch
-mm swsusp: copy_page is harmfull
sound-control-build-fix.patch
sound/core/control.c build fix
i2c-keywestc-build-fix.patch
i2c-keywest.c build fix
ipr-build-fix.patch
ipr.c build fix
nmi-trigger-switch-support-for-debuggingupdated.patch
NMI trigger switch support for debugging(updated)
nmi-trigger-switch-support-for-debuggingupdated-fix.patch
nmi-trigger-switch-support-for-debuggingupdated-fix
nmi-build-fix.patch
nmi-build-fix
nmi-build-fix-2.patch
more NMI build fixes
make-i386-die-more-resilient-against-recursive-errors.patch
Make i386 die() more resilient against recursive errors
i386_exception_notifiers.patch
i386 exceptions notifier for kprobes
kprobes-base.patch
kprobes base patch
kprobes-unset-fix.patch
kprobes: fix things when CONFIG_KPROBES is unset
kprobes-func-args.patch
Jumper Probes to provide function arguments
kprobes-build-fix.patch
kprobes build fix
network-packet-tracer-module-using-kprobes-interface.patch
Network packet tracer module using kprobes interface.
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
Fix stack overflow test for non-8k stacks
kgdb-ga.patch fix for i386 single-step into sysenter
fix TRAP_BAD_SYSCALL_EXITS on i386
add TRAP_BAD_SYSCALL_EXITS config for i386
kgdb-is-incompatible-with-kprobes.patch
kgdb-is-incompatible-with-kprobes
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-ia64-support.patch
IA64 kgdb support
ia64 kgdb repair and cleanup
ia64 kgdb fix
kgdb-ia64-fixes.patch
kgdb: ia64 fixes
make-tree_lock-an-rwlock.patch
make mapping->tree_lock an rwlock
must-fix.patch
must fix lists update
must fix list update
mustfix update
must-fix update
mustfix lists
ppc32-remove-hardcoded-offsets-from-ppc-asm.patch
ppc32: remove hardcoded offsets from ppc asm
ppc32-optimize-fix-timer_interrupt-loop.patch
ppc32: optimize/fix timer_interrupt loop
ppc32-make-ppc40x-large-tlb-mapping-optional.patch
ppc32: make PPC40x large tlb mapping optional
ppc32-handle-misaligned-string-multiple-insns.patch
ppc32: handle misaligned string/multiple insns
ppc32-emulate-obsolete-instructions.patch
ppc32: emulate obsolete instructions
ppc32-emulate-obsolete-instructions-fix.patch
ppc32-emulate-obsolete-instructions fix
ppc32-add-docs-for-ppc-noltlbs-and-nobats-parameters.patch
ppc32: add docs for noltlbs and nobats parameters
ppc64-reduce-stack-overflow-warning-threshold.patch
ppc64: reduce stack overflow warning threshold
ppc64-remove-old-asm-offsets.patch
ppc64: remove old asm offsets
ppc64-set-time-related-systemcfg-fields.patch
ppc64: set time-related systemcfg fields
ppc64-include-profilec-in-kernel-irqc.patch
ppc64: include profile.c in kernel/irq.c
ppc64-1-4-use-platform-numbering-of-cpus-for-hypervisor-calls.patch
ppc64: use platform numbering of cpus for hypervisor calls.
ppc64-2-4-use-cpu_present_map-in-ppc64.patch
ppc64: use cpu_present_map in ppc64
ppc64-3-4-rework-secondary-smt-thread-setup-at-boot.patch
ppc64: rework secondary SMT thread setup at boot
ppc64-4-4-remove-unnecessary-cpu-maps.patch
ppc64: remove unnecessary cpu maps
ppc64-power4-oprofile-update.patch
ppc64: POWER4 oprofile update
ppc64-disable-oprofile-debug-messages.patch
ppc64: disable oprofile debug messages
ppc64-allow-oprofile-module-to-be-safely-unloaded.patch
ppc64: allow oprofile module to be safely unloaded
ppc64-add-missing-export_symbols-for-oprofile.patch
ppc64: add missing EXPORT_SYMBOLS for oprofile
ppc64-fix-oprofile-error-messages.patch
ppc64: Fix oprofile error messages
ppc64-set-tbl-it_type-in-iommu-code.patch
ppc64: set tbl->it_type in iommu code
ibmveth-module-tag-fixes.patch
ibmveth: module tag fixes
ibmveth-race-fix.patch
ibmveth: race fixes
ibmveth-hypervisor-retval-fix.patch
ibmveth: hypervisor return value fix
ibmveth-hypervisor-memory-barrier.patch
ibmveth: add memory barrier for hypervisor synchronisation
ppc64-reloc_hide.patch
invalidate_inodes-speedup.patch
invalidate_inodes speedup
more invalidate_inodes speedup fixes
dev-mem-restriction-patch.patch
/dev/mem restriction patch
get_user_pages-handle-VM_IO.patch
fix get_user_pages() against mappings of /dev/mem
pid_max-fix.patch
Bug when setting pid_max > 32k
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 ifdef cleanup patch
ext3 reservation max window size check patch
ext3 reservation file ioctl fix
ext3-reservation-default-on.patch
ext3 reservation: default to on
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 reservations: bad_inode fix
ext3 reservation discard race fix
really-ptrace-single-step-2.patch
ptrace single-stepping fix
ipr-ppc64-depends.patch
Make ipr.c require ppc
disk-barrier-core.patch
disk barriers: core
disk-barrier-core-tweaks
disk-barrier-ide.patch
disk barriers: IDE
disk-barrier-ide-symbol-expoprt
disk-barrier ide warning fix
barrier-update.patch
barrier update
barrier-flushing-fix.patch
barrier flushing fix
final-ide-barrier-bug.patch
final ide barrier bug!
disk-barrier-scsi.patch
disk barriers: scsi
disk-barrier-dm.patch
disk barriers: devicemapper
disk-barrier-md.patch
disk barriers: MD
barrier-md-fix.patch
barriers: md fix
2-2-md-multipathing-fixes.patch
md: fix multipath for readhead requests
reiserfs-v3-barrier-support.patch
reiserfs v3 barrier support
reiserfs-v3-barrier-support-tweak
sync_dirty_buffer-retval.patch
make sync_dirty_buffer() return something useful
ext3-barrier-support.patch
ext3 barrier support
jbd-barrier-fallback-on-failure.patch
jbd: barrier fallback on failure
ide-print-failed-opcode.patch
ide: print failed opcode on IO errors
From: Jens Axboe <axboe@suse.de>
Subject: Re: ide errors in 7-rc1-mm1 and later
add-bh_eopnotsupp-for-testing.patch
add BH_Eopnotsupp for testing async barrier failures
handle-async-barrier-failures.patch
Handle async barrier failures
blk_queue_free_tags-fix.patch
blk_queue_free_tags() fix
blk_resize_tags-fix.patch
blk_resize_tags() fix
blk_queue_tags_resize_failure.patch
handle blk_queue_tags_resize() allocation failures
multipath-readahead-fix-fix.patch
multipath readahead fix fix
tty_io-hangup-locking.patch
tty_io.c hangup locking
perfctr-core.patch
From: Mikael Pettersson <mikpe@csd.uu.se>
Subject: [PATCH][1/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: core
CONFIG_PERFCTR=n build fix
From: Mikael Pettersson <mikpe@csd.uu.se>
Subject: [PATCH][6/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: misc
perfctr-i386.patch
From: Mikael Pettersson <mikpe@csd.uu.se>
Subject: [PATCH][2/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: i386
perfctr #if/#ifdef cleanup
perfctr Dothan support
perfctr x86_tests build fix
perfctr-x86-init-bug.patch
perfctr x86 init bug
perfctr-k8-fix-for-internal-benchmarking-code.patch
perfctr: K8 fix for internal benchmarking code
perfctr-x86-update.patch
perfctr x86 update
perfctr-x86_64.patch
From: Mikael Pettersson <mikpe@csd.uu.se>
Subject: [PATCH][3/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: x86_64
perfctr-ppc.patch
From: Mikael Pettersson <mikpe@csd.uu.se>
Subject: [PATCH][4/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: PowerPC
perfctr ppc32 update
perfctr update 4/6: PPC32 cleanups
perfctr-ppc32-buglet-fix.patch
perfctr ppc32 buglet fix
perfctr-virtualised-counters.patch
From: Mikael Pettersson <mikpe@csd.uu.se>
Subject: [PATCH][5/6] perfctr-2.7.3 for 2.6.7-rc1-mm1: virtualised counters
perfctr update 6/6: misc minor cleanups
perfctr update 3/6: __user annotations
perfctr-cpus_complement-fix
perfctr cpumask cleanup
perfctr-ifdef-cleanup.patch
perfctr ifdef cleanup
perfctr-update-2-6-kconfig-related-updates.patch
perfctr update 2/6: Kconfig-related updates
perfctr-update-5-6-reduce-stack-usage.patch
perfctr update 5/6: reduce stack usage
perfctr-low-level-documentation.patch
perfctr low-level documentation
perfctr-documentation-update.patch
perfctr documentation update
perfctr-inheritance-1-3-driver-updates.patch
perfctr inheritance 1/3: driver updates
perfctr-inheritance-illegal-sleep-bug.patch
perfctr inheritance illegal sleep bug
perfctr-inheritance-2-3-kernel-updates.patch
perfctr inheritance 2/3: kernel updates
perfctr-inheritance-3-3-documentation-updates.patch
perfctr inheritance 3/3: documentation updates
perfctr-inheritance-locking-fix.patch
perfctr inheritance locking fix
perfctr-smp-hang-fix.patch
perfctr SMP hang fix
ext3-online-resize-patch.patch
ext3: online resizing
ext3-online-resize-warning-fix.patch
ext3-online-resize-warning-fix
sched-timeslice-fix.patch
sched: fix timeslice calculations for HZ=1000.
sched-clean-init-idle.patch
sched: cleanup init_idle()
sched-clean-fork.patch
sched: cleanup, improve sched <=> fork APIs
sched-clean-fork-rename-wake_up_new_process-wake_up_new_task.patch
sched: rename wake_up_new_process -> wake_up_new_task
kernelthread-idle-fix-2.patch
kernel thread idle fix
sched-misc-cleanups-2.patch
sched: misc cleanups #2
sched-unlikely-rt_task.patch
sched: make rt_task unlikely
sched-misc.patch
sched: sched misc changes
sched-misc-fix-rt.patch
sched: fix RT scheduling & interactivity estimator
sched-no-balance-clone.patch
sched: disable balance on clone
sched-remove-balance-clone.patch
sched: remove balance on clone
sched-fork-hotplug-cleanuppatch.patch
sched: fork hotplug hanling cleanup
sched-consolidate-sched-domains.patch
sched: consolidate sched domains
sched-consolidate-sched-domains-ppc64-fix.patch
sched-consolidate-sched-domains ppc64 fix
sched-consolidate-domains-fix.patch
sched: fix for sched-consolidate-domains
sched-consolidate-domains-fix-2.patch
another sched consolidate domains fix
sched-domain-node-span-4.patch
sched: limit cpuspan of node scheduler domains
sched-merge-fix.patch
sched: merge fix
sched-domain-node-span-4-warning-fix.patch
sched-domain-node-span-4-warning-fix
sched-isolated-sched-domains.patch
sched: isolated sched domains
sched-isolated-sched-domains-fix.patch
sched-isolated-sched-domains-fix
create-cpu_sibling_map-for-ppc64.patch
Create cpu_sibling_map for PPC64
create-cpu_sibling_map-for-ppc64-fix.patch
create-cpu_sibling_map-for-ppc64-fix
sched-adjust-p4-per-cpu-gain.patch
sched: adjust p4 per-cpu gain
schedstat-v10.patch
scheduler statistics
sched-init_idle-fork_by_hand-consolidation.patch
sched: consolidate init_idle() and fork_by_hand()
sched-sparc32-fix.patch
sched: sparc32 fixes
sched-sparc32-fix-fix.patch
sun4d fork_idle() fix
schedstat-up-fix.patch
schedstat: UP fix
SMP fix --
for_each_domain() is not defined if not CONFIG_SMP, so show_schedstat
needed a couple of extra ifdefs.
Signed-off-by: Rick Lindsley <ricklind@us.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
sched-whitespace-cleanups.patch
sched: whitespace cleanups
sched-nonlinear-timeslicespatch.patch
sched: nonlinear timeslices
memory-backed-inodes-fix.patch
memory-backed inodes fix
ext3_bread-cleanup.patch
ext3_bread() cleanup
flexible-mmap-2.6.7-mm3-A8.patch
i386 virtual memory layout rework
flexible-mmap-bug-fix.patch
flexible-mmap BUG fix
flexible-mmap-updatepatch-267-mm5.patch
flexible-mmap update
sysctl-tunable-for-flexmmap.patch
sysctl tunable for flexmmap
legacy_va_layout-docs.patch
legacy_va_layout docs
legacy_va_layout-docs-fix.patch
legacy_va_layout-docs-fix
legacy_va_layout-compile-error-with-sysctl=n.patch
legacy_va_layout compile error with SYSCTL=n
flex-mmap-for-s390x.patch
flex mmap for s390(x)
pcmcia-implement-driver-model-support.patch
pcmcia: implement driver model support
pcmcia-update-network-drivers.patch
pcmcia: update network drivers
pcmcia-update-wireless-drivers.patch
pcmcia: update wireless drivers
pcmcia-fix-eject-lockup.patch
pcmcia: fix eject lockup
pcmcia-add-hotplug-support.patch
pcmcia: add *hotplug support
posix-locking-posix_same_owner-fixes.patch
posix locking: posix_same_owner() fixes
posix-locking-hook-functions.patch
posix locking: add hook functions
posix-locking-nfsv4-server.patch
posix locking: nfsv4 server updates
posix-locking-lockd-fixes.patch
posix locking: NLM: fix lockd to use the new posix locking callbacks
posix-locking-lifetime-fixes.patch
posix locking: ->fl_owner lifetime fixes
posix-locking-move-file-lock-fields.patch
posix locking: move file_lock fields
posix-locking-filesystems-call-posix_lock_file.patch
posix locking: make filesystems call posix_lock_file()
dvdrw-support-for-267-bk13.patch
DVD+RW support for 2.6.7-bk13
cdrw-packet-writing-support-for-267-bk13.patch
CDRW packet writing support
packet-remove-warning.patch
packet: remove #warning
packet-door-unlock.patch
packet writing: door unlocking fix
pkt_lock_door() warning fix
dvd-rw-packet-writing-update.patch
Packet writing support for DVD-RW and DVD+RW discs.
fix-race-in-pktcdvd-kernel-thread-handling.patch
Fix race in pktcdvd kernel thread handling
fix-open-close-races-in-pktcdvd.patch
Fix open/close races in pktcdvd
packet-writing-review-fixups.patch
packet writing: review fixups
get-blockdev-size-right-in-pktcdvd-after-switching-discs.patch
Get blockdev size right in pktcdvd after switching discs
remove-pkt_dev-from-struct-pktcdvd_device.patch
Remove pkt_dev from struct pktcdvd_device
packet-writing-docco.patch
packet writing documentation
trivial-cdrw-packet-writing-doc-update.patch
Trivial CDRW packet writing doc update
convert-packet-writing-to-seq_file.patch
packet writing: convert to seq_file
control-pktcdvd-with-an-auxiliary-character-device.patch
Control pktcdvd with an auxiliary character device
Subject: Re: 2.6.8-rc2-mm2
control-pktcdvd-with-an-auxiliary-character-device-fix.patch
control-pktcdvd-with-an-auxiliary-character-device-fix
simplified-request-size-handling-in-cdrw-packet-writing.patch
Simplified request size handling in CDRW packet writing
fix-setting-of-maximum-read-speed-in-cdrw-packet-writing.patch
Fix setting of maximum read speed in CDRW packet writing
speed-up-the-cdrw-packet-writing-driver.patch
Speed up the cdrw packet writing driver
cdrom-buffer-size-fix.patch
cdrom: buffer sizing fix
r8169_napi-help-text-2.patch
R8169_NAPI help text
no-sysgood-for-ptrace-singlestep.patch
Don't use SYSGOOD for ptrace singlestep
err2-6-hashbin_remove_this-locking-fix.patch
err2-6: hashbin_remove_this() locking fix
dm-use-idr.patch
devicemapper: use an IDR tree for tracking minors
ipc-1-3-add-refcount-to-ipc_rcu_alloc.patch
ipc: Add refcount to ipc_rcu_alloc
ipc-2-3-remove-sem_revalidate.patch
ipc: remove sem_revalidate
ipc-3-3-enforce-semvmx-limit-for-undo.patch
ipc: enforce SEMVMX limit for undo
cleanup-of-ipc-msgc.patch
cleanup of ipc/msg.c
sk98lin-procfs-fix.patch
sk98lin procfs fix
cpufreq-driver-for-nforce2-kernel-267.patch
cpufreq driver for nForce2
allow-modular-ide-pnp.patch
allow modular ide-pnp
uml-base-patch.patch
uml: Uml base patch
uml-sched-update.patch
uml-sched-update
rename-uml-console-device.patch
uml: rename console_device
uml-readds-just-for-now-ghashh-for-uml.patch
uml: Readds (just for now) ghash.h for UML
uml-avoid-that-gcc-breaks-uml-with-unit-at-a-time-compilation-mode.patch
uml: Avoid that gcc breaks UML with "unit at a time" compilation mode.
uml-fixes-an-host-fd-leak-caused-by-hostfs.patch
uml: Fixes an host fd leak caused by hostfs.
uml-adds-legacy_pty-config-option.patch
uml: Adds LEGACY_PTY config option
uml-makes-make-help-arch=um-work.patch
uml: Makes "make help ARCH=um" work.
uml-fixes-fixdepc-to-support-arch-um-include-uml-configh.patch
uml: Fixes "fixdep.c" to support arch/um/include/uml-config.h.
uml-kill-useless-warnings.patch
uml: Kill useless warnings
uml-avoids-compile-failure-when-host-misses-tkill.patch
uml: Avoids compile failure when host misses tkill().
uml-reduces-code-in-_user-files-by-moving-it-in-_kern-files-if-already-possible.patch
uml: Reduces code in *_user files, by moving it in _kern files if already possible.
uml-fixes-raw-and-uses-it-in-check_one_sigio-also-fixes-a-silly-panic-eintr-returned-by-call.patch
uml: Fixes raw() and uses it in check_one_sigio; also fixes a silly panic (EINTR returned by call).
uml-folds-hostaudio_userc-into-hostaudio_kernc.patch
uml: Folds hostaudio_user.c into hostaudio_kern.c.
uml-use-ptrace_scemu-the-so-called-sysemu-to-reduce-syscall-cost.patch
uml: Use PTRACE_SCEMU (the so-called SYSEMU) to reduce syscall cost.
uml-adds-the-nosysemu-command-line-parameter-to-disable-sysemu.patch
uml: Adds the "nosysemu" command line parameter to disable SYSEMU
uml-adds-proc-sysemu-to-toggle-sysemu-usage.patch
uml: Adds /proc/sysemu to toggle SYSEMU usage.
uml-fix-for-sysemu-patches.patch
uml: Fix for sysemu patches
uml-handles-correctly-errno-==-eintr-in-lots-of-places.patch
uml: Handles correctly errno == EINTR in lots of places.
uml-adds-some-exports.patch
uml: Adds some exports
uml-avoids-a-panic-for-a-legal-situation.patch
uml: Avoids a panic for a legal situation
uml-removes-dead-code-in-trap_kernc.patch
uml: Removes dead code in trap_kern.c
uml-make-malloc-call-vmalloc-if-needed-needed-for-hostfs-on-26-host.patch
uml: Make malloc() call vmalloc if needed. Needed for hostfs on 2.6 host.
uml-little-kmalloc.patch
uml: little-kmalloc
uml-fix-os_process_pc-and-os_process_parent-for-corner-cases.patch
uml: Fix os_process_pc and os_process_parent for corner cases.
uml-remove-a-group-of-unused-bh-functions.patch
uml: remove a group of unused bh functions
uml-updates.patch
UML updates
uml-fixes.patch
UML fixes
fix-warnings-in-net-irda.patch
sparse: fix warnings in net/irda/*
i810_audio-fix-the-error-path-of-resource-management.patch
i810_audio: Fix the error path of resource management
fix-drivers-isdn-hisax-avm_pcic-build-warning-when.patch
Fix drivers/isdn/hisax/avm_pci.c build warning when !CONFIG_ISAPNP
idr-stale-comment.patch
idr.c: remove stale comment
idr-comments-updates.patch
idr comments updates
schedule-profiling.patch
schedule() profiling
From: Arjan van de Ven <arjanv@redhat.com>
Subject: Re: schedule profileing
add-a-few-might_sleep-checks.patch
Add a few might_sleep() checks
add-a-few-might_sleep-checks-fix.patch
add-a-few-might_sleep-checks fix
even-more-might_sleep-checks.patch
even more might_sleep() checks
tmpfs-atomicity-fix.patch
tmpfs atomicity fix
release_task-may-sleep.patch
permit sleeping in release_task()
crc16-renaming-in-via-velocity-ethernet-driver.patch
CRC16 renaming in VIA Velocity ethernet driver
per_cpu-per_cpu-cpu_gdt_table.patch
percpu: cpu_gdt_table
per_cpu-per_cpu-cpu_gdt_table-fix.patch
per_cpu-per_cpu-cpu_gdt_table-fix
per_cpu-per_cpu-init_tss.patch
percpu: init_tss
per_cpu-per_cpu-cpu_tlbstate.patch
percpu: cpu_tlbstate
gcc35-alps_tdlb7.c.patch
gcc-3.5 fixes
gcc35-always-inline.patch
gcc-3.5 fixes
gcc35-auerswald.c.patch
gcc-3.5 fixes
gcc35-dabusb.c.patch
gcc-3.5 fixes
gcc35-ds.c.patch
gcc-3.5 fixes
gcc35-fixmap.h.patch
gcc-3.5: fixmap.h fix
gcc35-mtrr.h.patch
gcc-3.5 fixes
gcc35-sonypi.patch
gcc-3.5 fixes
gcc35-sp887x.c.patch
gcc-3.5 fixes
gcc35-tda1004x.c.patch
gcc-3.5 fixes
gcc35-transport.h.patch
gcc-3.5 fixes
gcc35-ufs_fs.h.patch
gcc-3.5 fixes
gcc35-videodev.c.patch
gcc-3.5 fixes
gcc35-wavefront_fx.c.patch
gcc-3.5 fixes
dev-zero-vs-hugetlb-mappings.patch
/dev/zero vs hugetlb mappings.
hugetlbfs-private-mappings.patch
hugetlbfs private mappings
net-kconfig-crc16-fix.patch
net/Kconfig crc16 warning fix
preset-loops_per_jiffy-for-faster-booting.patch
preset loops_per_jiffy for faster booting
define-inline-as-__attribute__always_inline-also-for-gcc-=-34.patch
#define inline as __attribute__((always_inline)) also for gcc >= 3.4
gcc-34-and-broken-inlining.patch
clean up __always_inline__ usage
handle-undefined-symbols.patch
Fail if vmlinux contains undefined symbols
sparc32-ignore-undefined-symbols-with-3-or-more-leading-underscores.patch
sparc32: ignore undefined symbols with 3 or more leading underscores
split-generic_file_aio_write-into-buffered-and-direct-i-o-parts.patch
split generic_file_aio_write into buffered and direct I/O parts
making-i-dhash_entries-cmdline-work-as-it-use-to.patch
Make i/dhash_entries cmdline work as it use to.
making-i-dhash_entries-cmdline-work-as-it-use-to-fix.patch
making-i-dhash_entries-cmdline-work-as-it-use-to-fix
jbd-recovery-latency-fix.patch
jbd recovery latency fix
truncate_inode_pages-latency-fix.patch
truncate_inode_pages-latency-fix
journal_clean_checkpoint_list-latency-fix.patch
journal_clean_checkpoint_list latency fix
journal_clean_checkpoint_list-latency-fix-fix.patch
journal_clean_checkpoint_list-latency-fix-fix
kjournald-smp-latency-fix.patch
kjournald-smp-latency-fix
unmap_vmas-smp-latency-fix.patch
unmap_vmas-smp-latency-fix
__cleanup_transaction-latency-fix.patch
__cleanup_transaction-latency-fix
prune_dcache-latency-fix.patch
prune_dcache-latency-fix
filemap_sync-latency-fix.patch
filemap_sync-latency-fix
slab-latency-fix.patch
slab-latency-fix
get_user_pages-latency-fix.patch
get_user_pages-latency-fix
send_IPI_mask_bitmask-build-fix.patch
send_IPI_mask_bitmask() build fix
e1000-build-fix.patch
e1000 build fix
e1000-inlining-fix.patch
e1000 inlining fix
pty_write-latency-fix.patch
pty_write-latency-fix
enable-all-events-for-initramfs.patch
Enable all events for initramfs
arch-i386-kernel-smpc-gcc341-inlining-fix.patch
arch/i386/kernel/smp.c gcc341 inlining fix
268-rc2-mm2-warning-on-numa-q.patch
warning on NUMA-Q
was-removal-of-sync-in-panic.patch
remove sync() from panic
move-cache_reap-out-of-timer-context.patch
Move cache_reap out of timer context
move-cache_reap-out-of-timer-context-fix.patch
move-cache_reap-out-of-timer-context-fix
gettimeofday-nanoseconds-patch-makes-it-possible-for-the-posix-timer.patch
gettimeofday nanoseconds patch
x86-64-singlestep-through-sigreturn-system-call-2.patch
Fix x86-64 singlestep through sigreturn system call
create-nodemask_t.patch
Create nodemask_t
some-random-nodemask-fix.patch
nodemask fix
nodemask-build-fix.patch
nodemask build fix
add-ixdp2x01-board-support-to-cs89x0-driver.patch
Add IXDP2x01 board support to CS89x0 driver
remove-dead-prototypes.patch
remove dead prototypes
s390-use-include-asm-generic-dma-mapping-brokenh.patch
s390: Use include/asm-generic/dma-mapping-broken.h
cdrom-get_last_written-fix.patch
Subject: cdrom.c get_last_written fixup
get_random_bytes-returns-the-same-on-every-boot.patch
get_random_bytes() returns the same on every boot
locking-optimization-for-cache_reap.patch
slab: locking optimization for cache_reap
b44-add-47xx-support.patch
b44: add 47xx support
signal-race-fix.patch
signal handling race fix
signal-race-fix-ia64.patch
signal-race-fix: ia64
signal-race-fix-s390.patch
signal-race fixes for s390
signal-race-fix-s390-fix.patch
s390 signal handling fixes
signal-race-fix-x86_64.patch
signal-race-fixes: x86-64 support
signal-race-fix-x86_64-fix.patch
x86_64 signal handling fix
ppc-signal-handling-fixes.patch
ppc signal handling fixes
signal-race-fixes-sparc-sparc64.patch
signal handling race fixes: sparc and sparc64
signal-race-fixes-ppc64.patch
pPC64 signal race fix patch
signal-race-fix-alpha.patch
alpha signal race fixes
process-aggregates.patch
Process Aggregates (PAGG)
process-aggregates-warning-fix.patch
process-aggregates warning fix
process-aggregates-macro-fix.patch
process-aggregates macro fix
allow-x86_64-to-reenable-interrupts-on-contention.patch
Allow x86_64 to reenable interrupts on contention
move-pit-code-to-timer_pit.patch
x86: move PIT code to timer_pit
move-pit-code-to-timer_pit-warning-fix.patch
move-pit-code-to-timer_pit-warning-fix
i2o-build_99.patch
i20 rewrite
i2o-build_99-gcc295-fixes.patch
i2o-build_99-gcc295-fixes
i2o-resync-with-post-266-changes.patch
i2o: resync with post-2.6.6 changes
i2o-resync-with-post-266-changes-2.patch
i2o: more resyncing with post-2.6.6 changes
i2o-devfs-fix.patch
i2o devfs fix
apic-output-reduction.patch
IO-APIC debug message reduction
fix-ide-probe-double-detection.patch
Fix ide probe double detection
fix-smm-failures-on-e750x-systems.patch
fix SMM failures on E750x systems
serial-cs-and-unusable-port-size-ranges.patch
serial-cs and unusable port size ranges
make-shrinker_sem-an-rwsem.patch
make shrinker_sem an rwsem
vlan-support-for-3c59x-3c90x.patch
VLAN support for 3c59x/3c90x
break-out-zone-free-list-initialization.patch
break out zone free list initialization
radeonfb-cleanup-and-little-fixes.patch
radeonfb: cleanup and little fixes
rivafb-i2c-fixes.patch
Rivafb I2C fixes
fbmon-edd-blacklist.patch
fbcom: EDD-based blacklisting
fbcon-differentiate-bits_per_pixel-from-color-depth.patch
fbcon: ifferentiate bits_per_pixel from color depth
fbcon-differentiate-bits_per_pixel-from-color-depth-fixup.patch
fbcon-differentiate-bits_per_pixel-from-color-depth-fixup
fbcon-differentiate-bits_per_pixel-from-color-depth-export.patch
fbcon-differentiate-bits_per_pixel-from-color-depth-export
fbdev-set-color-fields-correctly.patch
fbdev: set color fields correctly
fbdev-attn-maintainers-set-correct-hardware-capabilities.patch
fbdev: ATTN: Maintainers - Set correct hardware capabilities
rivafb-do-not-tap-vga-ports-if-not-x86.patch
rivafb: Do not tap VGA ports if not X86
i810fb-fixes.patch
i810fb fixes
i810fb-fixes-2.patch
i810fb fixes #2
fbdev-find-correct-logo-for-directcolor-24bpp.patch
fbdev: find correct logo for directcolor < 24bpp
rivafb-kill-riva_chip_info-and-riva_chips.patch
rivafb: kill riva_chip_info and riva_chips
include-compilerh-in-videodevh.patch
include "compiler.h" in videodev.h
net-smc9194c-fix-inline-compile-errors-fwd.patch
net/smc9194.c: fix gcc-3.5 inline compile errors
net-hamachic-remove-bogus-inline-at-function-prototype.patch
net/hamachi.c: gcc-3.5 build fixes
scsi-qla2xxx-fix-inline-compile-errors.patch
qla2xxx gcc-3.5 fixes
net-rrunnerc-fix-inline-compile-error.patch
net/rrunner.c: gcc-3.5 fixes
istallion-remove-inlines.patch
istallion: gcc-3.5 fixes
mxserc-fix-inlines-fwd.patch
mxser.c: gcc-3.5 fixes
radio-maestroc-remove-an-inline-fwd.patch
radio-maestro.c: gcc-3.5 fixes
net-tulip-dmfec-fix-inline-compile-errors-fwd.patch
net/tulip/dmfe.c: gcc-3.5 fixes
fix-inlining-errors-in-drivers-scsi-aic7xxx-aic79xx_osmc.patch
inlining errors in drivers/scsi/aic7xxx/aic79xx_osm.c
fix-inline-related-gcc-34-build-failures-in.patch
fix inline related gcc 3.4 build failures in drivers/net/wan/dscc4.c
igxb_main-gcc-34-build-fix.patch
ixgb_main.c: fix inline compile errors
ext2_readdir-filp-f_pos-fix.patch
ext2_readdir() filp->f_pos fix
do_general_protection-doesnt-disable-irq.patch
do_general_protection doesn't disable irq
proc_pid_cmdline-race-fix.patch
proc_pid_cmdline() race fix
support-for-exar-xr17c158-octal-uart.patch
Support for Exar XR17C158 Octal UART
x86_64-merge-2.patch
New x86-64 merge
x86_64-merge-2-build-fix.patch
x86_64-merge-2 build fix
fix-o=-compilation-on-x86-64.patch
Fix O= compilation on x86-64
ia64-swiotlb-fixes.patch
ia64: Various swiotlb fixes
ia64-swiotlb-fixes-fix.patch
ia64: more swiotlb fixes
altix-system-controller-communication-driver.patch
Altix system controller communication driver
snsc-build-fix.patch
snsc-build-fix
more-altix-system-controller-changes.patch
More Altix system controller changes
altix-system-controller-fixes.patch
Altix system controller fixes
move-duplicate-bug-and-warn_on-bits-to-asm-generic.patch
move duplicate BUG and WARN_ON bits to asm-generic
move-duplicate-bug-and-warn_on-bits-to-asm-generic-fix.patch
Fix missing backslash in asm-generic/bug.h
fix-con_buf_size-usage.patch
Fix CON_BUF_SIZE usage
vprintk-support.patch
vprintk support
vprintk-for-ext2-errors.patch
vprintk for ext2 errors
vprintk-for-ext3-errors.patch
vprintk for ext3 errors
prio_tree-kill-vma_prio_tree_init.patch
prio_tree: kill vma_prio_tree_init()
prio_tree-iterator-vma_prio_tree_next-cleanup.patch
prio_tree: iterator + vma_prio_tree_next cleanup
rcu-cpu-offline-cleanup.patch
RCU - cpu-offline-cleanup
rcu-rcu-cpu-offline-fix.patch
RCU - cpu offline fix
rcu-low-latency-rcu.patch
RCU: low latency rcu
rcu-clean-up-code.patch
rcu: clean up code
rcu-fix-spaces-in-rcupdateh.patch
rcu: fix spaces in rcupdate.h
rcu-introduce-call_rcu_bh.patch
rcu: introduce call_rcu_bh()
rcu-use-call_rcu_bh-in-route-cache.patch
rcu: use call_rcu_bh() in route cache
rcu-document-rcu-api.patch
rcu: document RCU api
rcu-abstracted-rcu-dereferencing.patch
rcu: abstracted RCU dereferencing
alpha-print-the-symbol-of-pc-and-ra-during-oops.patch
alpha: print the symbol of pc and ra during Oops
first-next_cpu-returns-values-nr_cpus.patch
first/next_cpu returns values > NR_CPUS
first-next_cpu-returns-values-nr_cpus-fix.patch
first-next_cpu-returns-values-nr_cpus fix
add-support-for-it8212-ide-controllers.patch
Add support for IT8212 IDE controllers
drivers-net-wan-cycx_x25c189-warning-conflicting-types.patch
drivers/net/wan/cycx_x25.c:189: warning: conflicting types for built-in function 'log2'
watchdog-fix-warning-defined-but-not-used.patch
watchdog: fix warning "defined but not used"
i386-hotplug-cpu.patch
i386 Hotplug CPU
token-based-thrashing-control.patch
token based thrashing control
token-based-thrashing-control-remove-debug.patch
token-based-thrashing-control-remove-debug
token-based-load-control-no-swap-build-fix.patch
laod control: fix the build with CONFIG_SWAP=n
writeback-page-range-hint.patch
Writeback page range hint
fix-writeback-page-range-to-use-exact-limits.patch
Fix writeback page range to use exact limits
mpage-writepages-range-limit-fix.patch
mpage writepages range limit fix
filemap_fdatawrite-range-interface.patch
filemap_fdatawrite range interface
concurrent-o_sync-write-support.patch
Concurrent O_SYNC write support
nfsd-force-server-side-tcp-when-nfsv4-enabled.patch
nfsd: force server-side TCP when NFSv4 enabled
nfsd-nfsd-is-missing-a-put_group_info-in-the-auth_null.patch
nfsd: nfsd is missing a put_group_info in the auth_null
nfsd-make-cache_init-initialize-reference-count-to-1.patch
nfsd: make cache_init initialize reference count to 1
nfsd-simplify-auth_domain_lookup.patch
nfsd: simplify auth_domain_lookup
nfsd-fix-ip_map-cache-reference-count-leak.patch
nfsd: fix ip_map cache reference count leak.
nfsd-basic-v4-acl-definitions.patch
nfsd: basic v4 ACL definitions
nfsd-posix-nfsv4-acl-translation-for-nfsd.patch
nfsd: POSIX<->NFSv4 acl translation for nfsd
nfsd-acl-support-for-the-nfsv4-server.patch
nfsd: ACL support for the NFSv4 server
cdrom-event-notification-fixes.patch
cdrom event notification fixes
new-device-driver-to-enable-the-ibm-multiport-serial-adapter.patch
new device driver to enable the IBM Multiport Serial Adapter
iteraid.patch
ITE RAID driver
iteraid-cleanup.patch
iteraid cleanup
iteraid-warning-fix.patch
iteraid warning fix
iteraid-pci_enable_device-for-irq-routing.patch
iteraid: pci_enable_device() for IRQ routing
kill-udf-registration-unregistration-messages.patch
kill UDF registration/unregistration messages
sparc-remove-undefined-symbol.patch
sparc: remove undefined symbol
nbd-fix-struct-request-race-condition.patch
nbd: fix struct request race condition
profile-consolidate-prof_cpu_mask.patch
profiling: consolidate prof_cpu_mask
profile-introduce-profile_pc.patch
profiling: introduce profile_pc()
profile-consolidate-hit-count-increments-in-profile_tick.patch
profiling: consolidate hit count increments in profile_tick()
profile-move-profile_operations.patch
profiling: move profile_operations
profile-make-private-profile-state-static.patch
profiling: make private profile state static
profile-make-prof_buffer-atomic_t.patch
profiling: make prof_buffer atomic_t
remove-iseries-profiling.patch
ppc64: remove iseries profiling
ipmi-watchdog-patch.patch
IPMI Watchdog handling updates
ipmi-driver-updates.patch
IPMI driver updates
dio-bio-sizing-fix.patch
direct-io: size the BIOs more accurately
dio-pages-in-io-accounting-fix.patch
DIO pages-in-io accounting fix
is_err-is-unlikely.patch
mark IS_ERR as unlikely()
is_err-unlikeliness-cleanup.patch
IS_ERR() unlikeliness cleanup
igxb-speedup.patch
igxb-speedup
fix-netpoll-cleanup-on-abort-without-dev.patch
Fix netpoll cleanup on abort without dev
add-missing-watchdog-compatible_ioctls.patch
add missing watchdog COMPATIBLE_IOCTLs
aioc-rename-struct-timeout-to-struct-aio_timeout.patch
aio.c: rename 'struct timeout' to 'struct aio_timeout'
fix-compiling-oldconfig-with-gcc-35.patch
fix compiling oldconfig with gcc-3.5
dont-pass-mem_map-into-init-functions.patch
don't pass mem_map into init functions
dont-pass-mem_map-into-init-functions-ia64-fix.patch
don't pass mem_map into init functions: ia64 fix
dont-pass-mem_map-into-init-functions-arches.patch
don't pass mem_map into init functions: other architectures
dont-pass-mem_map-into-init-functions-ia64-fix-2.patch
dont-pass-mem_map-into-init-functions-ia64-fix-2
dont-pass-mem_map-into-init-functions-x86_64-fix.patch
dont-pass-mem_map-into-init-functions x86_64 fix
dont-pass-mem_map-into-init-functions-x86-fix.patch
dont-pass-mem_map-into-init-functions x86 fix
dont-pass-mem_map-into-init-functions-even-more-fixes.patch
dont-pass-mem_map-into-init-functions more fixes
might-sleep-in-atomic-while-dumping-elf.patch
fix might-sleep-in-atomic while dumping elf
awe_wave-oss-too-much-__exit.patch
awe_wave (OSS): too much __exit
serialize-access-to-ide-devices.patch
serialize access to ide devices
mark-loop_change_fd-as-an-ulong-compat-ioctl.patch
mark LOOP_CHANGE_FD as an ULONG compat ioctl
readahead-simplification.patch
readahead: simplify recent fixes
consolidated-readahead-fixes.patch
readahead fixes
mlock-as-user-for-268-rc2-mm2.patch
rlimit-based mlocks for unprivileged users
mlock-as-user-fixes.patch
mlock-as-user fixes
increase-mlock-limit-to-32k.patch
increase per-user mlock limit default to 32k
increase-mlock-limit-to-32k-cleanup.patch
increase mlock limit to 32k cleanup
idt77252c-add-missing-pci_enable_device.patch
idt77252.c: add missing pci_enable_device()
ip2mainc-add-missing-pci_enable_device.patch
ip2main.c: add missing pci_enable_device()
tpam_mainc-add-missing-pci_enable_device.patch
tpam_main.c: add missing pci_enable_device()
ibmasm-add-missing-pci_enable_device.patch
ibmasm: add missing pci_enable_device()
hp100c-add-missing-pci_enable_device.patch
hp100.c: add missing pci_enable_device()
ioc3-ethc-add-missing-pci_enable_device.patch
ioc3-eth.c: add missing pci_enable_device()
de4x5c-add-missing-pci_enable_device.patch
de4x5.c: add missing pci_enable_device()
cpqfc-add-missing-pci_enable_device.patch
cpqfc: add missing pci_enable_device()
remove-unconditional-pci-acpi-irq-routing.patch
remove unconditional PCI ACPI IRQ routing
add-pci_fixup_enable-pass.patch
pci: add pci_fixup_enable pass
fix-gcc-35-compile-issue-in-mm-mempolicyc.patch
Fix gcc 3.5 compile issue in mm/mempolicy.c
eata_pio-warning-fix.patch
eata_pio.c warning fix
via-agpc-resume-suspend-support.patch
via-agp.c resume/suspend support
disable-atykb-warning.patch
disable atykb "too many keys pressed" warning
collected-aio-retry-fixes-and-enhancements.patch
AIO: retry infrastructure fixes and enhancements
collected-aio-retry-fixes-and-enhancements-cleanup.patch
collected-aio-retry-fixes-and-enhancements-cleanup
aio-splice-runlist-for-fairness-across-io-contexts.patch
AIO: Splice runlist for fairness across io contexts
aio-workqueue-context-switch-reduction.patch
AIO: workqueue context switch reduction
x86_64-numa-emulation.patch
x86_64: emulate NUMA on non-NUMA hardware
make-max_init_args-25.patch
Make MAX_INIT_ARGS 32
wireless-extension-v17-for-linus.patch
Wireless Extension v17 for Linus
wireless-drivers-update-for-we-17.patch
Wireless drivers update for WE-17
request_region-for-winbond-and-smsc-parport-drivers.patch
request_region for winbond and smsc parport drivers
knfsd-server-permissions-fix.patch
knfsd: fix server permission handling
make-md-no-device-warning-kern_warning.patch
md: make MD no device warning KERN_WARNING
ia64-dma_mapping-fix.patch
ia64: dma_mapping fix
automatically-enable-bigsmp-on-big-hp-machines.patch
Automatically enable bigsmp on big HP machines
rss-ulimit-enforcement.patch
RSS ulimit enforcement
fix-proc-pid-statm-documentation.patch
Fix /proc/pid/statm documentation
cciss-update-fixes-to-32-64-bit-conversions.patch
cciss: fixes to 32/64-bit conversions
cciss-updates-zero-out-buffer-in-passthru-ioctls-for-hp.patch
cciss: zero out buffer in passthru ioctls for HP utilities
cciss-updates-proc-fixes-for-268-rc3.patch
cciss: /proc fixes
cciss-updates-cylinder-calculation-fix-for-268-rc3.patch
cciss: cylinder calculation fix
cciss-updates-id-change-for-v100-controller-for-268-rc3.patch
cciss: id change for V100 controller
cciss-updates-pdev-intr-fix-for-268-rc3.patch
cciss: pdev->intr fix
cciss-update-7-read_ahead-bumped-to-1024.patch
cciss: read_ahead bumped to 1024
cciss-update-8-maintainers-update-for-hp.patch
cciss update 8 maintainers update for HP
cciss-congig-dependency-fix.patch
cciss /proc dependency fix
rmaplock-1-5-pageanon-in-mapping.patch
rmaplock: PageAnon in mapping
rmaplock-2-5-kill-page_map_lock.patch
rmaplock: kill page_map_lock
rmaplock-3-5-slab_destroy_by_rcu.patch
rmaplock: SLAB_DESTROY_BY_RCU
rmaplock-4-5-mm-lock-ordering.patch
rmaplock: mm lock ordering
rmaplock-5-5-swapoff-use-anon_vma.patch
rmaplock: swapoff use anon_vma
x86-bitopsh-commentary-on-instruction-reordering.patch
x86 bitops.h commentary on instruction reordering
clarify-get_task_mm-mmgrab.patch
clarify get_task_mm (mmgrab)
simple-fs-stop-ve-dentries.patch
simple fs stop -ve dentries
8139too-rx-fifo-overflow-recovery.patch
8139too: Rx fifo/overflow recovery
8139too-be-sure-to-progress-durin-rtl8139_rx.patch
8139too: be sure to progress durin rtl8139_rx()
via-velocity-more-inetaddr_notifier-fix.patch
via-velocity: more inetaddr_notifier fix
vm-tune-writeback.patch
vm: writeout watermark tuning
alloc-pages-watermark-fixes.patch
vm: alloc_pages watermark fixes
alloc-pages-priority-tuning.patch
alloc_pages priority tuning
fix-d_path-errors.patch
Correctly handle d_path error returns
emu10k1-maintainer-update.patch
emu10k1 maintainer update
ptr_ok-cleanup.patch
x86: remove hard-coded numbers from ptr_ok()
mpage_readpage-unable-to-handle-bigger-requests.patch
Fix mpage_readpage() for big requests
mpage_readpage-unable-to-handle-bigger-requests-warning-fix.patch
mpage_readpage-unable-to-handle-bigger-requests warning fix
improve-speed-of-freeing-bootmem.patch
improve speed of freeing bootmem
implement-in-kernel-keys-keyring-management.patch
implement in-kernel keys & keyring management
implement-in-kernel-keys-keyring-management-afs-workaround.patch
implement-in-kernel-keys-keyring-management afs workaround
consolidate-clone_idletask-masking.patch
sched: consolidate CLONE_IDLETASK masking
kill-clone_idletask.patch
kill CLONE_IDLETASK
kill-clone_idletask-fix.patch
kill-clone_idletask fix
oprofile-xscale-fixes-for-pxa270-xscale2.patch
OProfile/XScale fixes for PXA270/XScale2
remove-magic-1-from-shm-segment-count.patch
remove magic +1 from shm segment count
268-rc3-jffs2-unable-to-read-filesystems.patch
jffs2 unable to read filesystems
via-rhine-suspend-resume-support.patch
via-rhine: suspend/resume support
via-rhine-de-isolate-phy.patch
via-rhine: de-isolate PHY
via-rhine-small-fixes.patch
via-rhine: small fixes
fix-i386-x86_64-idle-routine-selection.patch
fix i386/x86_64 idle routine selection
fix-i386-x86_64-idle-routine-selection-comment-updates.patch
fix-i386-x86_64-idle-routine-selection comment updates
video-mode-handling-linked-list-of-video-modes.patch
Video Mode Handling - Linked list of video modes
video-mode-handling-linked-list-of-video-modes-build-fix.patch
video-mode-handling-linked-list-of-video-modes-build-fix
video-mode-handling-save-per-display-graphics-display-settings.patch
Video Mode Handling - Save per-display graphics/display settings
video-mode-handling-delete-entries-from-mode-list.patch
Video Mode Handling - Delete entries from mode list
video-mode-handling-reduce-memory-footprint-of-fbdev.patch
Video Mode Handling - Reduce memory footprint of fbdev
x86-pae-swapspace-expansion.patch
x86 PAE swapspace expansion
executable-hugetlb-pages.patch
hugetlb: permit executable mappings
knfsd-fix-brokenness-with-fsid=-export-option.patch
kNFSd: fix brokenness with fsid= export option
md-fix-problems-with-checksum-handling-in-md-superblocks.patch
md: fix problems with checksum handling in MD superblocks.
sk98lin-no-procfs-build-fix.patch
sk98lin/skge.c doesn't compile with PROC_FS=n
fix-net-hamradio-dmascc-with-gcc-34-fwd.patch
fix net/hamradio/dmascc with gcc 3.4
fix-warnings-in-es7000.patch
Fix warnings in es7000
reduce-aacraid-namespace-pollution.patch
reduce aacraid namespace polution
reduce-bkl-usage-in-do_coredump.patch
Reduce bkl usage in do_coredump
ide-do-spin-up-for-all-platforms.patch
IDE: do spin up for all platforms
apm_infodisabled-fix.patch
apm_info.disabled fix
267-rc3-mm2-inlining-failures.patch
fix inlining failures
qlogic-isp2x00-remove-needless-busyloop.patch
QLogic ISP2x00: remove needless busyloop
high2lowuid-warning-fix.patch
hige2lowuid warning fixes
new-cpu_has_-flags.patch
New cpu_has_ flags
get_nodes-mask-miscalculation.patch
Fix get_nodes() mask miscalculation
use-posix-headers-in-sumversionc.patch
Use posix headers in sumversion.c
x86-esr-print-quietness.patch
x86: quieten the "ESR value" printks
intel8x0c-sound-use-pci_vendor_id-rather-than-bare-numbers.patch
intel8x0.c sound: use PCI_VENDOR_ID* rather than bare numbers
fix-rxrpc-compile-errors-with-sysctl=n.patch
fix rxrpc compile errors with SYSCTL=n
typo-fixes-for-cpufreq.patch
Typo fixes for cpufreq
dnotify-autofs-may-create-signal-restart-syscall-loop.patch
dnotify + autofs may create signal/restart syscall loop
ix86x86_64-cpu-features.patch
ix86,x86_64 cpu features
libfs-move-transaction-file-ops-into-libfs.patch
libfs: move transaction file ops into libfs
dont-print-per-cpu-delay-loop-calibration.patch
don't print per-cpu delay loop calibration
fix-sn_console-for-config_smp=n.patch
fix sn_console for CONFIG_SMP=n
via-velocity-wrong-module-name-in-kconfig-documentation.patch
via-velocity: wrong module name in Kconfig documentation
reduce-ptyc-ifdef-clutter.patch
reduce pty.c ifdef clutter
bug-on-inconsistant-dcache-tree-in-may_delete.patch
BUG() on inconsistant dcache tree in may_delete
using-get_cycles-for-add_timer_randomness.patch
Using get_cycles for add_timer_randomness
remove-dead-config_kernel_elf-kconfig-entry.patch
ppc32: remove dead CONFIG_KERNEL_ELF Kconfig entry
fix-some-comments-about-epoch-in-arch-alpha-kernel-timec.patch
fix some comments about epoch in arch/alpha/kernel/time.c
small-simplification-for-two-security-dependencies.patch
small simplification for two SECURITY dependencies
configurable-selinux-bootparam-value.patch
configurable SELinux bootparam value
fix-typos-in-security-securityc.patch
Fix typos in security/security.c
use-simple_read_from_buffer-in-selinuxfs.patch
use simple_read_from_buffer in selinuxfs
use-simple_read_from_buffer-in-proc_info_read-and-proc_pid_attr_read.patch
use simple_read_from_buffer in proc_info_read and proc_pid_attr_read
fw-new-linux-268-rc4-mm1-ipv6-in-ipv6-undefined-references.patch
Fix IPv6-in-IPv6 undefined references
ttys0-vs-ttys00-confusion.patch
Fix ttyS0 vs. ttyS00 confusion
reduce-size-of-struct-buffer_head-on-64bit.patch
reduce size of struct buffer_head on 64bit
reduce-size-of-struct-dentry-on-64bit.patch
reduce size of struct dentry on 64bit
waitid-system-call.patch
waitid system call
waitid-system-call-update.patch
waitid system call update
waitid-ia64-build-fix.patch
waitid-ia64-build-fix
waitid-system-call-cleanups.patch
waitid-system-call cleanups
remove-cacheline-alignment-from-inode-slabs.patch
remove cacheline alignment from inode slabs
read-cpumasks-every-time-when-exporting-through-sysfs.patch
Read cpumasks every time when exporting through sysfs
centralize-i386-constants.patch
Centralize i386 Constants
fix-permissions-on-module_param-usage.patch
Fix Permissions on module_param Usage
module-parameters-in-sysfs-for-built-in-modules.patch
Move param section out of init area, for export of built-in module params
remove-module_parm-from-main-part-of-kernel.patch
Remove MODULE_PARM from main part of kernel
filemap_index_overflow.patch
fix pagecache reading off-by-one
synclinkc-replace-syncppp-with-genhdlc.patch
synclink.c: replace syncppp with genhdlc
synclinkmpc-replace-syncppp-with-genhdlc.patch
synclinkmp.c: replace syncppp with genhdlc
synclink_csc-replace-syncppp-with-genhdlc.patch
synclink_cs.c: replace syncppp with genhdlc
reiserfs-xattr-acl-fixes.patch
reiserfs: xattr/acl fixes
files-up-to-4-gb-support-for-iso9660-filesystems.patch
Fix access of files up to 4 GB support for ISO9660 filesystems
selinux-add-null-device-node-to-selinuxfs-remove-open_devnull.patch
SELinux: add null device node to selinuxfs, remove open_devnull
selinux-revalidate-access-to-controlling-tty.patch
SELinux: revalidate access to controlling tty
selinux-defer-inode-security-initialization.patch
SElinux; defer inode security initialization
selinux-fix-name_bind-audit.patch
SELinux: fix name_bind audit
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
@ 2004-08-16 21:47 ` Christoph Hellwig
2004-08-17 13:20 ` 2.6.8.1-mm1 Frediano Ziglio
2004-08-18 23:57 ` 2.6.8.1-mm1 Peter Osterlund
2004-08-16 22:30 ` 2.6.8.1-mm1 Bartlomiej Zolnierkiewicz
` (8 subsequent siblings)
9 siblings, 2 replies; 38+ messages in thread
From: Christoph Hellwig @ 2004-08-16 21:47 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> - The packet-writing patches should be ready to go, but I haven't even
> looked at them yet, and am not sure that anyone else has reviewed the code.
It's still messing with the elevator setting directly which is a no-go.
That's not the packet-writing drivers fault but needs solving first.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 22:30 ` 2.6.8.1-mm1 Bartlomiej Zolnierkiewicz
@ 2004-08-16 21:51 ` Alan Cox
0 siblings, 0 replies; 38+ messages in thread
From: Alan Cox @ 2004-08-16 21:51 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz; +Cc: Andrew Morton, Linux Kernel Mailing List
On Llu, 2004-08-16 at 23:30, Bartlomiej Zolnierkiewicz wrote:
> Please don't push this upstream, it duplicates _a lot_ of functionality
> present in drivers/ide / libata (Alan Cox has native drivers/ide driver,
> although I would still prefer libata based driver) and contains code for RAID
> metadata handling which should belong to user-space.
Some of the metadata handling is needed kernel side. I'm hoping we can
avoid most of it with the drive hotplug code. The corner case causing
the problem is when no arrays are configured so there is no device/hwif
present.
I looked at the libata stuff - it's part of the reason I sent Jeff the
error dump/translate patch but right now libata is woefully ignorant of
a large number of IDE/EIDE/ATA considerations.
Alan
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
2004-08-16 21:47 ` 2.6.8.1-mm1 Christoph Hellwig
@ 2004-08-16 22:30 ` Bartlomiej Zolnierkiewicz
2004-08-16 21:51 ` 2.6.8.1-mm1 Alan Cox
2004-08-16 23:25 ` 2.6.8.1-mm1 Arkadiusz Miskiewicz
` (7 subsequent siblings)
9 siblings, 1 reply; 38+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-08-16 22:30 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
Hi,
On Monday 16 August 2004 23:37, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8
>.1-mm1
> iteraid.patch
> ITE RAID driver
Please don't push this upstream, it duplicates _a lot_ of functionality
present in drivers/ide / libata (Alan Cox has native drivers/ide driver,
although I would still prefer libata based driver) and contains code for RAID
metadata handling which should belong to user-space.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
2004-08-16 21:47 ` 2.6.8.1-mm1 Christoph Hellwig
2004-08-16 22:30 ` 2.6.8.1-mm1 Bartlomiej Zolnierkiewicz
@ 2004-08-16 23:25 ` Arkadiusz Miskiewicz
2004-08-16 23:39 ` 2.6.8.1-mm1 Martin J. Bligh
` (6 subsequent siblings)
9 siblings, 0 replies; 38+ messages in thread
From: Arkadiusz Miskiewicz @ 2004-08-16 23:25 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
On Monday 16 of August 2004 23:37, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8
>.1-mm1
Hmm, no orinoco_cs drver (long awaited) update?
patches were on lkml here
http://urloogle.com/AG/
--
Arkadiusz Miśkiewicz CS at FoE, Wroclaw University of Technology
arekm.pld-linux.org, 1024/3DB19BBD, JID: arekm.jabber.org, PLD/Linux
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (2 preceding siblings ...)
2004-08-16 23:25 ` 2.6.8.1-mm1 Arkadiusz Miskiewicz
@ 2004-08-16 23:39 ` Martin J. Bligh
2004-08-17 1:32 ` 2.6.8.1-mm1 Nathan Lynch
2004-08-17 3:07 ` 2.6.8.1-mm1 William Lee Irwin III
` (5 subsequent siblings)
9 siblings, 1 reply; 38+ messages in thread
From: Martin J. Bligh @ 2004-08-16 23:39 UTC (permalink / raw)
To: Andrew Morton, linux-kernel
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
make install from this config file:
ftp://ftp.kernel.org/pub/linux/kernel/people/mbligh/config/config.numaq
results in this failure:
make: *** No rule to make target `.tmp_kallsyms2.S', needed by `.tmp_kallsyms2.o'. Stop.
gcc 2.95.4 ... 2.6.8.1 compiles fine. I have a feeling that people have discussed
this before - apologies if so, but I can't find the answer in my logs -sorry.
M.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 23:39 ` 2.6.8.1-mm1 Martin J. Bligh
@ 2004-08-17 1:32 ` Nathan Lynch
2004-08-17 6:59 ` 2.6.8.1-mm1 Sam Ravnborg
0 siblings, 1 reply; 38+ messages in thread
From: Nathan Lynch @ 2004-08-17 1:32 UTC (permalink / raw)
To: Martin J. Bligh; +Cc: Andrew Morton, linux-kernel
On Mon, 2004-08-16 at 18:39, Martin J. Bligh wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
>
> make install from this config file:
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/mbligh/config/config.numaq
>
> results in this failure:
>
> make: *** No rule to make target `.tmp_kallsyms2.S', needed by `.tmp_kallsyms2.o'. Stop.
I hit the same thing on ppc64 with gcc 3.3.2-ish. Doing a non-parallel
make (i.e. without -j) seems to work around it for me.
Nathan
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (3 preceding siblings ...)
2004-08-16 23:39 ` 2.6.8.1-mm1 Martin J. Bligh
@ 2004-08-17 3:07 ` William Lee Irwin III
2004-08-17 3:09 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 5:59 ` 2.6.8.1-mm1 Nathan Lynch
` (4 subsequent siblings)
9 siblings, 1 reply; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 3:07 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> - This kernel probably still has the ia64 scheduler startup bug, although it
> works For Me.
AIUI that was fixed by kill-clone-idletask-fix.patch
-- wli
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 3:07 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 3:09 ` William Lee Irwin III
2004-08-17 3:19 ` 2.6.8.1-mm1 Andrew Morton
0 siblings, 1 reply; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 3:09 UTC (permalink / raw)
To: Andrew Morton, linux-kernel
On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
>> - This kernel probably still has the ia64 scheduler startup bug, although it
>> works For Me.
On Mon, Aug 16, 2004 at 08:07:48PM -0700, William Lee Irwin III wrote:
> AIUI that was fixed by kill-clone-idletask-fix.patch
How did you compile on ia64? I get:
make: *** No rule to make target `.tmp_kallsyms3.S', needed by `.tmp_kallsyms3.o'. Stop.
-- wli
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 3:09 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 3:19 ` Andrew Morton
2004-08-17 3:41 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 14:38 ` 2.6.8.1-mm1 (compile stats) John Cherry
0 siblings, 2 replies; 38+ messages in thread
From: Andrew Morton @ 2004-08-17 3:19 UTC (permalink / raw)
To: William Lee Irwin III; +Cc: linux-kernel
William Lee Irwin III <wli@holomorphy.com> wrote:
>
> On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> >> - This kernel probably still has the ia64 scheduler startup bug, although it
> >> works For Me.
>
> On Mon, Aug 16, 2004 at 08:07:48PM -0700, William Lee Irwin III wrote:
> > AIUI that was fixed by kill-clone-idletask-fix.patch
>
> How did you compile on ia64? I get:
I suspect I got lucky.
> make: *** No rule to make target `.tmp_kallsyms3.S', needed by `.tmp_kallsyms3.o'. Stop.
>
People are saying that `make -j1' will work around this.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 3:19 ` 2.6.8.1-mm1 Andrew Morton
@ 2004-08-17 3:41 ` William Lee Irwin III
2004-08-17 4:16 ` 2.6.8.1-mm1 Nick Piggin
2004-08-17 14:38 ` 2.6.8.1-mm1 (compile stats) John Cherry
1 sibling, 1 reply; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 3:41 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
William Lee Irwin III <wli@holomorphy.com> wrote:
>> How did you compile on ia64? I get:
On Mon, Aug 16, 2004 at 08:19:15PM -0700, Andrew Morton wrote:
> I suspect I got lucky.
> People are saying that `make -j1' will work around this.
Comes up fine on Altix, so it appears kill-clone_idletask-fix.patch
took care of everything.
-- wli
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 3:41 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 4:16 ` Nick Piggin
0 siblings, 0 replies; 38+ messages in thread
From: Nick Piggin @ 2004-08-17 4:16 UTC (permalink / raw)
To: William Lee Irwin III; +Cc: Andrew Morton, linux-kernel, Ingo Molnar
William Lee Irwin III wrote:
>William Lee Irwin III <wli@holomorphy.com> wrote:
>
>>>How did you compile on ia64? I get:
>>>
>
>On Mon, Aug 16, 2004 at 08:19:15PM -0700, Andrew Morton wrote:
>
>>I suspect I got lucky.
>>People are saying that `make -j1' will work around this.
>>
>
>Comes up fine on Altix, so it appears kill-clone_idletask-fix.patch
>took care of everything.
>
>
Can the sched stuff in -mm go to Linus soon then? The earlier in
this cycle the better, I think.
Any boot problems introduced by the cleanup stuff shouldn't be too
hard to track down, and the simplifications are worth the possible
breakage IMO.
The scheduler behavioural change is restricted to introducing child
runs last for CLONE_VM clones, and removing balance-on-clone. Both
should be improvements on most real world threaded apps, and have
been in -mm long enough to get as much test coverage as they ever
will.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (4 preceding siblings ...)
2004-08-17 3:07 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 5:59 ` Nathan Lynch
2004-08-17 7:19 ` 2.6.8.1-mm1 Rusty Russell
2004-08-17 11:38 ` 2.6.8.1-mm1 Srivatsa Vaddagiri
2004-08-17 6:20 ` 2.6.8.1-mm1 William Lee Irwin III
` (3 subsequent siblings)
9 siblings, 2 replies; 38+ messages in thread
From: Nathan Lynch @ 2004-08-17 5:59 UTC (permalink / raw)
To: Andrew Morton; +Cc: lkml, Zwane Mwaikambo, Srivatsa Vaddagiri, Rusty Russell
I can consistently hit this BUG_ON in migration_call's CPU_DEAD handling
by doing:
while true ; do
echo 0 > /sys/devices/system/cpu/cpu1/online
echo 1 > /sys/devices/system/cpu/cpu1/online
done
and then starting a kernel build. It seems to take less than 20
minutes. I can also recreate it on ppc64, but only with
CONFIG_PREEMPT=y (I haven't tried without preempt on i386 yet).
kernel BUG at kernel/sched.c:4035!
invalid operand: 0000 [#1]
PREEMPT SMP
Modules linked in:
CPU: 0
EIP: 0060:[<c0122b1b>] Not tainted VLI
EFLAGS: 00010202 (2.6.8.1-mm1)
EIP is at migration_call+0x1bb/0x300
eax: 00000001 ebx: c1410f60 ecx: 00000000 edx: deee8ec8
esi: deee8000 edi: 00000001 ebp: deee8ee0 esp: deee8eb8
ds: 007b es: 007b ss: 0068
Process bash (pid: 2956, threadinfo=deee8000 task=df448150)
Stack: deee8ed4 de6f6630 de6f6630 deee8ed4 00000296 deee8ee4 00000296 c04a5b78
00000001 00000006 deee8ef4 c0136928 deee8000 00000001 c04a7a40 deee8f2c
c01405ac c01a8d79 c04f5700 00000000 deee8000 00000001 00000001 000000ff
Call Trace:
[<c01082ea>] show_stack+0x7a/0x90
[<c0108472>] show_registers+0x152/0x1c0
[<c01086a0>] die+0x110/0x200
[<c0108b99>] do_invalid_op+0xe9/0xf0
[<c0107ed9>] error_code+0x2d/0x38
[<c0136928>] notifier_call_chain+0x28/0x50
[<c01405ac>] cpu_down+0x11c/0x230
[<c02a5d98>] store_online+0x38/0x40
[<c02a3117>] sysdev_store+0x37/0x40
[<c01a8b8e>] flush_write_buffer+0x2e/0x40
[<c01a8bea>] sysfs_write_file+0x4a/0x60
[<c016b362>] vfs_write+0xa2/0x100
[<c016b471>] sys_write+0x41/0x70
[<c010746f>] syscall_call+0x7/0xb
Code: 0b cd 0f 6f 54 43 c0 eb 8e c7 04 24 6f 34 43 c0 b8 54 2a 12 c0 89 44 24 04
e8 e2 3f 00 00 0f 0b 89 00 82 d4 42 c0 e9 4a ff ff ff <0f> 0b c3 0f 6f 54 43 c0
e9 2c ff ff ff e8 53 87 2f 00 e9 17 ff
Nathan
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (5 preceding siblings ...)
2004-08-17 5:59 ` 2.6.8.1-mm1 Nathan Lynch
@ 2004-08-17 6:20 ` William Lee Irwin III
2004-08-17 6:40 ` 2.6.8.1-mm1 sam
2004-08-17 7:05 ` 2.6.8.1-mm1 Nathan Lynch
` (2 subsequent siblings)
9 siblings, 1 reply; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 6:20 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> handle-undefined-symbols.patch
> Fail if vmlinux contains undefined symbols
> sparc32-ignore-undefined-symbols-with-3-or-more-leading-underscores.patch
> sparc32: ignore undefined symbols with 3 or more leading underscores
Okay, this patch has officially made my shitlist along with whatever
introduced the second check. The following appears to be necessary to
get sparc64 to link, which of course clashes wildly with the UML
changes to get *it* to link.
And why the Hell are we checking twice??? Check #2 lagging behind
check #1 wrt. updates caused a relatively large amount of pain as I had
to scour the whole damn tree for where the Hell check #2 was happening
and that on a relatively slow box as my faster sparc64 box is down until
ambient temperature regulation issues are mitigated by weather.
This scripting crap is fragile and nightmarish. We should probably be
examining the ELF bits directly in C.
-- wli
Index: mm1-2.6.8.1/Makefile
===================================================================
--- mm1-2.6.8.1.orig/Makefile 2004-08-16 21:09:23.000000000 -0700
+++ mm1-2.6.8.1/Makefile 2004-08-16 23:06:39.530357000 -0700
@@ -542,8 +542,29 @@
$(if $($(quiet)cmd_vmlinux__), \
echo ' $($(quiet)cmd_vmlinux__)' &&) \
$(cmd_vmlinux__); \
- if $(OBJDUMP) --syms $@ | $(AWK) '$$4!~/^___.*/ { print $$0 }' \
- | egrep -q '^([^R]|R[^E]|RE[^G])[^w]*\*UND\*'; then \
+ if $(OBJDUMP) --syms $@ \
+ | $(AWK) 'BEGIN { \
+ status = 1 \
+ } \
+ $$4 !~ /^___.*/ && $$1 !~ /^REG.*/ { \
+ for (i = 0; i < NF; ++i) { \
+ if ($$i == "*UND*") { \
+ for (j = i - 1; j >= 0; --j) { \
+ if ($$j == "w") \
+ break; \
+ } \
+ if (j < 0) { \
+ printf "undefined!!\n"; \
+ print $$0; \
+ status = 0 \
+ } \
+ } \
+ } \
+ } \
+ END { \
+ exit status \
+ }'; \
+ then \
echo 'ldchk: $@: final image has undefined symbols:'; \
$(NM) $@ | sed 's/^ *U \(.*\)/ \1/p;d'; \
$(RM) -f $@; \
Index: mm1-2.6.8.1/scripts/mksysmap
===================================================================
--- mm1-2.6.8.1.orig/scripts/mksysmap 2004-08-16 21:07:48.000000000 -0700
+++ mm1-2.6.8.1/scripts/mksysmap 2004-08-16 23:07:40.852035000 -0700
@@ -18,9 +18,31 @@
# they are used by the sparc BTFIXUP logic - and is assumed to be undefined.
-if [ "`$NM -u $1 | grep -v ' ___'`" != "" ]; then
- echo "$1: error: undefined symbol(s) found:"
- $NM -u $1 | grep -v ' ___'
+if $(OBJDUMP) --syms $@ \
+ | $(AWK) 'BEGIN { \
+ status = 1 \
+ } \
+ $$4 !~ /^___.*/ && $$1 !~ /^REG.*/ { \
+ for (i = 0; i < NF; ++i) { \
+ if ($$i == "*UND*") { \
+ for (j = i - 1; j >= 0; --j) { \
+ if ($$j == "w") \
+ break; \
+ } \
+ if (j < 0) { \
+ printf "undefined!!\n"; \
+ print $$0; \
+ status = 0 \
+ } \
+ } \
+ } \
+ } \
+ END { \
+ exit status \
+ }'; \
+ then
+ echo "$1: error: undefined symbol(s) found:"
+ $NM -u $1 | grep -v ' ___'
exit 1
fi
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 6:59 ` 2.6.8.1-mm1 Sam Ravnborg
@ 2004-08-17 6:25 ` Martin J. Bligh
2004-08-17 6:38 ` 2.6.8.1-mm1 Andrew Morton
2004-08-17 7:00 ` 2.6.8.1-mm1 William Lee Irwin III
1 sibling, 1 reply; 38+ messages in thread
From: Martin J. Bligh @ 2004-08-17 6:25 UTC (permalink / raw)
To: Sam Ravnborg, Nathan Lynch; +Cc: Andrew Morton, linux-kernel
> On Mon, Aug 16, 2004 at 08:32:24PM -0500, Nathan Lynch wrote:
>> On Mon, 2004-08-16 at 18:39, Martin J. Bligh wrote:
>> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
>> >
>> > make install from this config file:
>> >
>> > ftp://ftp.kernel.org/pub/linux/kernel/people/mbligh/config/config.numaq
>> >
>> > results in this failure:
>> >
>> > make: *** No rule to make target `.tmp_kallsyms2.S', needed by `.tmp_kallsyms2.o'. Stop.
>>
>> I hit the same thing on ppc64 with gcc 3.3.2-ish. Doing a non-parallel
>> make (i.e. without -j) seems to work around it for me.
> Fix below:
>
> Sam
>
> ===== Makefile 1.516 vs edited =====
> --- 1.516/Makefile 2004-08-12 23:09:08 +02:00
> +++ edited/Makefile 2004-08-16 23:40:09 +02:00
> @@ -600,6 +600,9 @@
> .tmp_vmlinux3: $(vmlinux-objs) .tmp_kallsyms2.o arch/$(ARCH)/kernel/vmlinux.lds FORCE
> $(call if_changed_rule,vmlinux__)
>
> +# Needs to visit scripts/ before $(KALLSYMS) can be used.
> +$(KALLSYMS): scripts ;
> +
> endif
>
> # Finally the vmlinux rule
Well ... that worked - thanks. But NUMA is still FITH.
arch/i386/mm/discontig.c: In function `zone_sizes_init':
arch/i386/mm/discontig.c:422: warning: passing arg 3 of `free_area_init_node' from incompatible pointer type
arch/i386/mm/discontig.c:422: warning: passing arg 4 of `free_area_init_node' makes pointer from integer without a cast
arch/i386/mm/discontig.c:422: warning: passing arg 5 of `free_area_init_node' makes integer from pointer without a cast
arch/i386/mm/discontig.c:422: too few arguments to function `free_area_init_node'
arch/i386/mm/discontig.c:430: warning: passing arg 3 of `free_area_init_node' from incompatible pointer type
arch/i386/mm/discontig.c:430: warning: passing arg 4 of `free_area_init_node' makes pointer from integer without a cast
arch/i386/mm/discontig.c:430: warning: passing arg 5 of `free_area_init_node' makes integer from pointer without a cast
arch/i386/mm/discontig.c:430: too few arguments to function `free_area_init_node'
make[1]: *** [arch/i386/mm/discontig.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [arch/i386/mm] Error 2
make: *** Waiting for unfinished jobs....
larry:~/linux/2.6.8.1-mm1#
Which looks rather like the problem that this patch fixed (cut & pasted, sorry ....)
--- mm2-2.6.8-rc3.orig/arch/i386/mm/discontig.c 2004-08-08 15:39:24.000000000 -0
700
+++ mm2-2.6.8-rc3/arch/i386/mm/discontig.c 2004-08-09 01:18:30.750614368 -0
700
@@ -418,15 +418,15 @@
* remapped KVA area - mbligh
*/
if (!nid)
- free_area_init_node(nid, NODE_DATA(nid), 0,
- zones_size, start, zholes_size);
+ free_area_init_node(nid, NODE_DATA(nid),
+ zones_size, start, zholes_size);
else {
unsigned long lmem_map;
lmem_map = (unsigned long)node_remap_start_vaddr[nid];
lmem_map += sizeof(pg_data_t) + PAGE_SIZE - 1;
lmem_map &= PAGE_MASK;
- free_area_init_node(nid, NODE_DATA(nid),
- (struct page *)lmem_map, zones_size,
+ NODE_DATA(nid)->node_mem_map = (struct page *)lmem_map;
+ free_area_init_node(nid, NODE_DATA(nid), zones_size,
start, zholes_size);
}
}
Except that's already applied ... Andrew - did you back out the one this was fixing?
If so, I presume this one needs to die too ... backing it out by hand seems to fix
compilation, at least. (dont-pass-mem_map-into-init-functions-x86-fix.patch)
M.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 6:25 ` 2.6.8.1-mm1 Martin J. Bligh
@ 2004-08-17 6:38 ` Andrew Morton
0 siblings, 0 replies; 38+ messages in thread
From: Andrew Morton @ 2004-08-17 6:38 UTC (permalink / raw)
To: Martin J. Bligh; +Cc: sam, nathanl, linux-kernel
"Martin J. Bligh" <mbligh@aracnet.com> wrote:
>
> Well ... that worked - thanks. But NUMA is still FITH.
>
>
> arch/i386/mm/discontig.c: In function `zone_sizes_init':
> arch/i386/mm/discontig.c:422: warning: passing arg 3 of `free_area_init_node' from incompatible pointer type
> arch/i386/mm/discontig.c:422: warning: passing arg 4 of `free_area_init_node' makes pointer from integer without a cast
> arch/i386/mm/discontig.c:422: warning: passing arg 5 of `free_area_init_node' makes integer from pointer without a cast
> arch/i386/mm/discontig.c:422: too few arguments to function `free_area_init_node'
> arch/i386/mm/discontig.c:430: warning: passing arg 3 of `free_area_init_node' from incompatible pointer type
> arch/i386/mm/discontig.c:430: warning: passing arg 4 of `free_area_init_node' makes pointer from integer without a cast
> arch/i386/mm/discontig.c:430: warning: passing arg 5 of `free_area_init_node' makes integer from pointer without a cast
> arch/i386/mm/discontig.c:430: too few arguments to function `free_area_init_node'
> make[1]: *** [arch/i386/mm/discontig.o] Error 1
Oh crap - I seem to have misread a backout patch from Dave as a fix, so
most-but-not-all of that damn patch is reverted. If you back out
dont-pass-mem_map-into-init-functions-even-more-fixes.patch it should work
OK.
I'll drop the whole thing.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 6:20 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 6:40 ` sam
0 siblings, 0 replies; 38+ messages in thread
From: sam @ 2004-08-17 6:40 UTC (permalink / raw)
To: William Lee Irwin III; +Cc: Andrew Morton, linux-kernel
> On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
>> handle-undefined-symbols.patch
>> Fail if vmlinux contains undefined symbols
>> sparc32-ignore-undefined-symbols-with-3-or-more-leading-underscores.patch
>> sparc32: ignore undefined symbols with 3 or more leading underscores
>
> Okay, this patch has officially made my shitlist along with whatever
> introduced the second check. The following appears to be necessary to
> get sparc64 to link, which of course clashes wildly with the UML
> changes to get *it* to link.
rmk's ldchk in top-level Makefile needs to be backed out. The check
for undefined symbols are now moved to the mksysmap script.
The patch doing this was on top of Linus's tree therefore the confusion.
But I see this check causing almost only pain, so I hope during the
weekend to come up with something that allow us to specify
the final link rule in the arch Makefile.
Something like:
*/built-in.o =>
vmlinux.o
=>
kallsyms steps
=>
arch specific link rule (vmlinux-arch.o)
=>
vmlinux
Challenge here is to make it elegant without causing changes for
architectures that do not need it.
The arm can have the dreadful "check for undefined symbols" if needed.
> This scripting crap is fragile and nightmarish. We should probably be
> examining the ELF bits directly in C.
I started looking into this but backed out in fear of doing
too much duplicated work.
If we do a kernel elf-tool then it should cover
also the need for btfixup.
Sam
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 1:32 ` 2.6.8.1-mm1 Nathan Lynch
@ 2004-08-17 6:59 ` Sam Ravnborg
2004-08-17 6:25 ` 2.6.8.1-mm1 Martin J. Bligh
2004-08-17 7:00 ` 2.6.8.1-mm1 William Lee Irwin III
0 siblings, 2 replies; 38+ messages in thread
From: Sam Ravnborg @ 2004-08-17 6:59 UTC (permalink / raw)
To: Nathan Lynch; +Cc: Martin J. Bligh, Andrew Morton, linux-kernel
On Mon, Aug 16, 2004 at 08:32:24PM -0500, Nathan Lynch wrote:
> On Mon, 2004-08-16 at 18:39, Martin J. Bligh wrote:
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
> >
> > make install from this config file:
> >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/mbligh/config/config.numaq
> >
> > results in this failure:
> >
> > make: *** No rule to make target `.tmp_kallsyms2.S', needed by `.tmp_kallsyms2.o'. Stop.
>
> I hit the same thing on ppc64 with gcc 3.3.2-ish. Doing a non-parallel
> make (i.e. without -j) seems to work around it for me.
Fix below:
Sam
===== Makefile 1.516 vs edited =====
--- 1.516/Makefile 2004-08-12 23:09:08 +02:00
+++ edited/Makefile 2004-08-16 23:40:09 +02:00
@@ -600,6 +600,9 @@
.tmp_vmlinux3: $(vmlinux-objs) .tmp_kallsyms2.o arch/$(ARCH)/kernel/vmlinux.lds FORCE
$(call if_changed_rule,vmlinux__)
+# Needs to visit scripts/ before $(KALLSYMS) can be used.
+$(KALLSYMS): scripts ;
+
endif
# Finally the vmlinux rule
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 6:59 ` 2.6.8.1-mm1 Sam Ravnborg
2004-08-17 6:25 ` 2.6.8.1-mm1 Martin J. Bligh
@ 2004-08-17 7:00 ` William Lee Irwin III
2004-08-17 7:05 ` 2.6.8.1-mm1 William Lee Irwin III
1 sibling, 1 reply; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 7:00 UTC (permalink / raw)
To: Sam Ravnborg; +Cc: Nathan Lynch, Andrew Morton, linux-kernel
On Mon, Aug 16, 2004 at 08:32:24PM -0500, Nathan Lynch wrote:
>> I hit the same thing on ppc64 with gcc 3.3.2-ish. Doing a non-parallel
>> make (i.e. without -j) seems to work around it for me.
On Tue, Aug 17, 2004 at 08:59:01AM +0200, Sam Ravnborg wrote:
> Fix below:
The result of this appears to be:
$ time make -s -j16 rpm
Building target platforms: x86_64
Building for target x86_64
Executing(%prep): /bin/sh -e /mnt/rpmbuild/tmp/rpm-tmp.55854
+ umask 022
+ cd /mnt/rpmbuild/BUILD
+ cd /mnt/rpmbuild/BUILD
+ rm -rf kernel-2.6.8.1mm1
+ /usr/bin/gzip -dc /home/wli/kernel-2.6.8.1mm1.tar.gz
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd kernel-2.6.8.1mm1
++ /usr/bin/id -u
+ '[' 1000 = 0 ']'
++ /usr/bin/id -u
+ '[' 1000 = 0 ']'
+ /bin/chmod -Rf a+rX,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /mnt/rpmbuild/tmp/rpm-tmp.95241
+ umask 022
+ cd /mnt/rpmbuild/BUILD
+ /bin/rm -rf /var/tmp/kernel-2.6.8.1mm1-root
++ dirname /var/tmp/kernel-2.6.8.1mm1-root
+ /bin/mkdir -p /var/tmp
+ /bin/mkdir /var/tmp/kernel-2.6.8.1mm1-root
+ cd kernel-2.6.8.1mm1
+ make clean
make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule.
+ make -j16
make[2]: warning: -jN forced in submake: disabling jobserver mode.
CHK include/linux/version.h
UPD include/linux/version.h
SYMLINK include/asm -> include/asm-x86_64
SPLIT include/linux/autoconf.h -> include/config/*
cc1: error: output filename specified twice
make[2]: *** [scripts/kallsyms] Error 1
make[2]: *** Waiting for unfinished jobs....
error: Bad exit status from /mnt/rpmbuild/tmp/rpm-tmp.95241 (%build)
RPM build errors:
Bad exit status from /mnt/rpmbuild/tmp/rpm-tmp.95241 (%build)
make[1]: *** [rpm] Error 1
make: *** [rpm] Error 2
make -s -j16 rpm 38.38s user 9.50s system 81% cpu 58.513 total
-- wli
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 7:00 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 7:05 ` William Lee Irwin III
0 siblings, 0 replies; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 7:05 UTC (permalink / raw)
To: Sam Ravnborg, Nathan Lynch, Andrew Morton, linux-kernel
On Mon, Aug 16, 2004 at 08:32:24PM -0500, Nathan Lynch wrote:
>>> I hit the same thing on ppc64 with gcc 3.3.2-ish. Doing a non-parallel
>>> make (i.e. without -j) seems to work around it for me.
On Tue, Aug 17, 2004 at 08:59:01AM +0200, Sam Ravnborg wrote:
>> Fix below:
>
On Tue, Aug 17, 2004 at 12:00:11AM -0700, William Lee Irwin III wrote:
> The result of this appears to be:
Never mind, the semicolon was essential.
-- wli
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (6 preceding siblings ...)
2004-08-17 6:20 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 7:05 ` Nathan Lynch
2004-08-17 13:39 ` 2.6.8.1-mm1 Zwane Mwaikambo
2004-08-17 12:54 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 21:59 ` ldchk -> arch/arm/Makefile? [Was: 2.6.8.1-mm1] Sam Ravnborg
9 siblings, 1 reply; 38+ messages in thread
From: Nathan Lynch @ 2004-08-17 7:05 UTC (permalink / raw)
To: Andrew Morton; +Cc: lkml, Zwane Mwaikambo
> i386-hotplug-cpu.patch
> i386 Hotplug CPU
i386 seems to want something like this to avoid crashing in
find_busiest_group... looks like there's a short window in fixup_irqs
where interrupts are enabled while we're taking a cpu down.
Unable to handle kernel NULL pointer dereference at virtual address 00000008
printing eip:
c011eb2d
*pde = 00000000
Oops: 0000 [#1]
SMP
Modules linked in:
CPU: 1
EIP: 0060:[<c011eb2d>] Not tainted VLI
EFLAGS: 00010002 (2.6.8.1-mm1)
EIP is at find_busiest_group+0x1cd/0x350
eax: db4cfec0 ebx: 00000000 ecx: 00000080 edx: 00000000
esi: 0000007d edi: c05d3460 ebp: db4cfea0 esp: db4cfe54
ds: 007b es: 007b ss: 0068
Process kstopmachine (pid: 3527, threadinfo=db4cf000 task=c157a030)
Stack: c014cb31 dff9bba0 c05b7000 00000000 00000001 00000080 00000000 00004000
00000080 c05d346c 00000000 c05d3460 db4cfec0 00000001 c14119e0 00000001
c14119e0 c1410f60 00000001 db4cfedc c011edad 00000001 dfb70130 dfb70130
Call Trace:
[<c010815a>] show_stack+0x7a/0x90
[<c01082e2>] show_registers+0x152/0x1c0
[<c0108501>] die+0x101/0x1e0
[<c011be11>] do_page_fault+0x301/0x5d1
[<c0107d4d>] error_code+0x2d/0x38
[<c011edad>] load_balance+0x3d/0x280
[<c011f381>] rebalance_tick+0xa1/0xb0
[<c011f4a1>] scheduler_tick+0x111/0x4c0
[<c0118612>] smp_apic_timer_interrupt+0xe2/0xf0
[<c0107cd2>] apic_timer_interrupt+0x1a/0x20
[<c0117e66>] __cpu_disable+0x16/0x30
[<c013d654>] take_cpu_down+0x24/0x50
[<c0143b53>] do_stop+0x63/0x70
[<c013c1a5>] kthread+0xa5/0xb0
[<c0105375>] kernel_thread_helper+0x5/0x10
Code: 02 0f af d6 39 d0 0f 86 05 01 00 00 8b 5d cc 89 ca 8b 45 d4 29 da 29 c8 39
c2 0f 47 d0 8b 45 e4 89 10 8b 5d e0 8b 4b 08 8b 5d dc <8b> 43 08 39 c8 0f 47 c1
0f af c2 8b 55 e4 c1 e8 07 83 f8 7e 89
Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com>
Index: 2.6.8.1-mm1/arch/i386/kernel/apic.c
===================================================================
--- 2.6.8.1-mm1.orig/arch/i386/kernel/apic.c
+++ 2.6.8.1-mm1/arch/i386/kernel/apic.c
@@ -1138,7 +1138,8 @@
* interrupt lock, which is the WrongThing (tm) to do.
*/
irq_enter();
- smp_local_timer_interrupt(®s);
+ if (!cpu_is_offline(cpu))
+ smp_local_timer_interrupt(®s);
irq_exit();
}
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 5:59 ` 2.6.8.1-mm1 Nathan Lynch
@ 2004-08-17 7:19 ` Rusty Russell
2004-08-17 8:45 ` [patch] new-task-fix.patch, 2.6.8.1-mm1 Ingo Molnar
2004-08-17 11:38 ` 2.6.8.1-mm1 Srivatsa Vaddagiri
1 sibling, 1 reply; 38+ messages in thread
From: Rusty Russell @ 2004-08-17 7:19 UTC (permalink / raw)
To: Nathan Lynch
Cc: Andrew Morton, lkml - Kernel Mailing List, Zwane Mwaikambo,
Srivatsa Vaddagiri, Nick Piggin, Ingo Molnar
On Tue, 2004-08-17 at 15:59, Nathan Lynch wrote:
> I can consistently hit this BUG_ON in migration_call's CPU_DEAD handling
> by doing:
>
> while true ; do
> echo 0 > /sys/devices/system/cpu/cpu1/online
> echo 1 > /sys/devices/system/cpu/cpu1/online
> done
>
> and then starting a kernel build. It seems to take less than 20
> minutes. I can also recreate it on ppc64, but only with
> CONFIG_PREEMPT=y (I haven't tried without preempt on i386 yet).
Hmm, can you figure out what patch in -mm breaks it?
Looking through 2.6.8.1-mm1, I see this code which doesn't make sense:
if (likely(cpu == this_cpu)) {
...
} else {
runqueue_t *this_rq = cpu_rq(this_cpu);
/*
* Not the local CPU - must adjust timestamp. This should
* get optimised away in the !CONFIG_SMP case.
*/
p->timestamp = (p->timestamp - this_rq->timestamp_last_tick)
+ rq->timestamp_last_tick;
__activate_task(p, rq);
if (TASK_PREEMPTS_CURR(p, rq))
resched_task(rq->curr);
current->sleep_avg = JIFFIES_TO_NS(CURRENT_BONUS(current) *
PARENT_PENALTY / 100 * MAX_SLEEP_AVG / MAX_BONUS);
schedstat_inc(rq, wunt_moved);
}
if (unlikely(cpu != this_cpu)) {
task_rq_unlock(rq, &flags);
rq = task_rq_lock(current, &flags);
}
current->sleep_avg = JIFFIES_TO_NS(CURRENT_BONUS(current) *
PARENT_PENALTY / 100 * MAX_SLEEP_AVG / MAX_BONUS);
task_rq_unlock(rq, &flags);
}
So, first off, the statements under "if (unlikely(cpu != this_cpu))" can
be folded into the previous block, since that's under the same test.
Secondly, why is sleep_avg being set twice to the same thing, and why
are we happy to adjust it the first time without holding the rq lock for
current, but the second time we make sure we are holding the rq lock?
recalc_task_prio seems happy to adjust a tasks ->sleep_avg without
holding any lock at all...
Rusty.
--
Anyone who quotes me in their signature is an idiot -- Rusty Russell
^ permalink raw reply [flat|nested] 38+ messages in thread
* [patch] new-task-fix.patch, 2.6.8.1-mm1
2004-08-17 7:19 ` 2.6.8.1-mm1 Rusty Russell
@ 2004-08-17 8:45 ` Ingo Molnar
2004-08-17 11:35 ` Nick Piggin
0 siblings, 1 reply; 38+ messages in thread
From: Ingo Molnar @ 2004-08-17 8:45 UTC (permalink / raw)
To: Rusty Russell
Cc: Nathan Lynch, Andrew Morton, lkml - Kernel Mailing List,
Zwane Mwaikambo, Srivatsa Vaddagiri, Nick Piggin
[-- Attachment #1: Type: text/plain, Size: 1116 bytes --]
* Rusty Russell <rusty@rustcorp.com.au> wrote:
> Looking through 2.6.8.1-mm1, I see this code which doesn't make sense:
> So, first off, the statements under "if (unlikely(cpu != this_cpu))"
> can be folded into the previous block, since that's under the same
> test. Secondly, why is sleep_avg being set twice to the same thing,
> and why are we happy to adjust it the first time without holding the
> rq lock for current, but the second time we make sure we are holding
> the rq lock? [...]
agreed, this is a bug - the code has rotten somewhat. The attached patch
fixes it. I've also cleaned up the locking and added this_rq, to make
clear when and how we are hopping from one runqueue to another. (this
cleanup would have made the original bug more obvious as well.)
This comes after sched-nonlinear-timeslicespatch.patch in 2.6.8.1-mm1.
Tested on x86.
> [...] recalc_task_prio seems happy to adjust a tasks ->sleep_avg
> without holding any lock at all...
this is not true - we always update ->avg_sleep while holding the lock.
recalc_task_prio() is stricly called with p's runqueue lock held.
Ingo
[-- Attachment #2: new-task-fix.patch --]
[-- Type: text/plain, Size: 1650 bytes --]
Rusty noticed that we update the parent ->avg_sleep without holding the
runqueue lock. Also the code needed cleanups.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
--- linux/kernel/sched.c.orig
+++ linux/kernel/sched.c
@@ -1344,7 +1344,7 @@ void fastcall wake_up_new_task(task_t *
{
unsigned long flags;
int this_cpu, cpu;
- runqueue_t *rq;
+ runqueue_t *rq, *this_rq;
rq = task_rq_lock(p, &flags);
cpu = task_cpu(p);
@@ -1386,8 +1386,15 @@ void fastcall wake_up_new_task(task_t *
} else
/* Run child last */
__activate_task(p, rq);
+ /*
+ * We skip the following code due to cpu == this_cpu
+ *
+ * task_rq_unlock(rq, &flags);
+ * this_rq = task_rq_lock(current, &flags);
+ */
+ this_rq = rq;
} else {
- runqueue_t *this_rq = cpu_rq(this_cpu);
+ this_rq = cpu_rq(this_cpu);
/*
* Not the local CPU - must adjust timestamp. This should
@@ -1399,18 +1406,17 @@ void fastcall wake_up_new_task(task_t *
if (TASK_PREEMPTS_CURR(p, rq))
resched_task(rq->curr);
- current->sleep_avg = JIFFIES_TO_NS(CURRENT_BONUS(current) *
- PARENT_PENALTY / 100 * MAX_SLEEP_AVG / MAX_BONUS);
schedstat_inc(rq, wunt_moved);
- }
-
- if (unlikely(cpu != this_cpu)) {
+ /*
+ * Parent and child are on different CPUs, now get the
+ * parent runqueue to update the parent's ->sleep_avg:
+ */
task_rq_unlock(rq, &flags);
- rq = task_rq_lock(current, &flags);
+ this_rq = task_rq_lock(current, &flags);
}
current->sleep_avg = JIFFIES_TO_NS(CURRENT_BONUS(current) *
PARENT_PENALTY / 100 * MAX_SLEEP_AVG / MAX_BONUS);
- task_rq_unlock(rq, &flags);
+ task_rq_unlock(this_rq, &flags);
}
/*
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [patch] new-task-fix.patch, 2.6.8.1-mm1
2004-08-17 8:45 ` [patch] new-task-fix.patch, 2.6.8.1-mm1 Ingo Molnar
@ 2004-08-17 11:35 ` Nick Piggin
0 siblings, 0 replies; 38+ messages in thread
From: Nick Piggin @ 2004-08-17 11:35 UTC (permalink / raw)
To: Ingo Molnar
Cc: Rusty Russell, Nathan Lynch, Andrew Morton,
lkml - Kernel Mailing List, Zwane Mwaikambo, Srivatsa Vaddagiri
Ingo Molnar wrote:
>* Rusty Russell <rusty@rustcorp.com.au> wrote:
>
>
>
>>Looking through 2.6.8.1-mm1, I see this code which doesn't make sense:
>>
>>
>
>
>
>>So, first off, the statements under "if (unlikely(cpu != this_cpu))"
>>can be folded into the previous block, since that's under the same
>>test. Secondly, why is sleep_avg being set twice to the same thing,
>>and why are we happy to adjust it the first time without holding the
>>rq lock for current, but the second time we make sure we are holding
>>the rq lock? [...]
>>
>>
>
>agreed, this is a bug - the code has rotten somewhat. The attached patch
>fixes it. I've also cleaned up the locking and added this_rq, to make
>clear when and how we are hopping from one runqueue to another. (this
>cleanup would have made the original bug more obvious as well.)
>
>This comes after sched-nonlinear-timeslicespatch.patch in 2.6.8.1-mm1.
>Tested on x86.
>
>
>
Looks OK to me. Thanks Ingo, Rusty.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 5:59 ` 2.6.8.1-mm1 Nathan Lynch
2004-08-17 7:19 ` 2.6.8.1-mm1 Rusty Russell
@ 2004-08-17 11:38 ` Srivatsa Vaddagiri
2004-08-17 17:53 ` 2.6.8.1-mm1 Andrew Morton
1 sibling, 1 reply; 38+ messages in thread
From: Srivatsa Vaddagiri @ 2004-08-17 11:38 UTC (permalink / raw)
To: Nathan Lynch; +Cc: Andrew Morton, lkml, Zwane Mwaikambo, Rusty Russell
I found this to be due to task leak in exit code. In release_task:
a. Task is removed from task-list (unhash_process)
b. More processing is done (like proc_pid_flush etc)
before task finally dies.
The problem is the task can get preempted between a and b. In that window
its CPU can die and migrate_all_tasks will not migrate the task (since
it is not on the list). This will cause the task to be forever stuck
to the dead cpu.
One option is not to remove the task until the last minute (when
it calls schedule). Rusty however felt that release_task can be
called from __put_task_struct, which will avoid the problem we have
now. He is most likely going to send a patch for the same.
On Tue, Aug 17, 2004 at 12:59:02AM -0500, Nathan Lynch wrote:
> I can consistently hit this BUG_ON in migration_call's CPU_DEAD handling
> by doing:
>
> while true ; do
> echo 0 > /sys/devices/system/cpu/cpu1/online
> echo 1 > /sys/devices/system/cpu/cpu1/online
> done
>
> and then starting a kernel build. It seems to take less than 20
> minutes. I can also recreate it on ppc64, but only with
> CONFIG_PREEMPT=y (I haven't tried without preempt on i386 yet).
>
> kernel BUG at kernel/sched.c:4035!
> invalid operand: 0000 [#1]
> PREEMPT SMP
> Modules linked in:
> CPU: 0
> EIP: 0060:[<c0122b1b>] Not tainted VLI
> EFLAGS: 00010202 (2.6.8.1-mm1)
> EIP is at migration_call+0x1bb/0x300
> eax: 00000001 ebx: c1410f60 ecx: 00000000 edx: deee8ec8
> esi: deee8000 edi: 00000001 ebp: deee8ee0 esp: deee8eb8
> ds: 007b es: 007b ss: 0068
> Process bash (pid: 2956, threadinfo=deee8000 task=df448150)
> Stack: deee8ed4 de6f6630 de6f6630 deee8ed4 00000296 deee8ee4 00000296 c04a5b78
> 00000001 00000006 deee8ef4 c0136928 deee8000 00000001 c04a7a40 deee8f2c
> c01405ac c01a8d79 c04f5700 00000000 deee8000 00000001 00000001 000000ff
> Call Trace:
> [<c01082ea>] show_stack+0x7a/0x90
> [<c0108472>] show_registers+0x152/0x1c0
> [<c01086a0>] die+0x110/0x200
> [<c0108b99>] do_invalid_op+0xe9/0xf0
> [<c0107ed9>] error_code+0x2d/0x38
> [<c0136928>] notifier_call_chain+0x28/0x50
> [<c01405ac>] cpu_down+0x11c/0x230
> [<c02a5d98>] store_online+0x38/0x40
> [<c02a3117>] sysdev_store+0x37/0x40
> [<c01a8b8e>] flush_write_buffer+0x2e/0x40
> [<c01a8bea>] sysfs_write_file+0x4a/0x60
> [<c016b362>] vfs_write+0xa2/0x100
> [<c016b471>] sys_write+0x41/0x70
> [<c010746f>] syscall_call+0x7/0xb
> Code: 0b cd 0f 6f 54 43 c0 eb 8e c7 04 24 6f 34 43 c0 b8 54 2a 12 c0 89 44 24 04
> e8 e2 3f 00 00 0f 0b 89 00 82 d4 42 c0 e9 4a ff ff ff <0f> 0b c3 0f 6f 54 43 c0
> e9 2c ff ff ff e8 53 87 2f 00 e9 17 ff
>
> Nathan
>
--
Thanks and Regards,
Srivatsa Vaddagiri,
Linux Technology Center,
IBM Software Labs,
Bangalore, INDIA - 560017
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (7 preceding siblings ...)
2004-08-17 7:05 ` 2.6.8.1-mm1 Nathan Lynch
@ 2004-08-17 12:54 ` William Lee Irwin III
2004-08-17 14:15 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 21:59 ` ldchk -> arch/arm/Makefile? [Was: 2.6.8.1-mm1] Sam Ravnborg
9 siblings, 1 reply; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 12:54 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
> - perfctr is ready to be merged up, but there are concerns that it
> duplicates perfmon capabilities, and that perfmon may be a better base from
> which to start. Am waiting for the dust to settle on that front.
> - The packet-writing patches should be ready to go, but I haven't even
> looked at them yet, and am not sure that anyone else has reviewed the code.
> - Added the kprobes facility.
Hmm. Got this on a JS20.
Elapsed time since release of system processors: 0 mins 32 secs
Config file read, 1024 bytes
Welcome
Welcome to yaboot version 1.3.10
Enter "help" to get some basic usage information
boot:
mm1-2.6.8.1 2.4.21-wired * 2.4.21-147-pseries64
2.4.21-EL-pseries64 wli-2.6.6-rc3-mm1 mm2-2.6.6-rc3
virgin-2.6.6-rc3 virgin-2.6.5
boot: mm1-2.6.8.1
Please wait, loading kernel...
Elf64 kernel loaded...
Looking for displays
OF stdout is : /vdevice/vty@0
Opening displays...
Hypertas detected, assuming LPAR !
instantiating rtas at 0x0000000007a4e000...rtas_ram_size = 2ea000
fixed_base_addr = 7a4e000
code_base_addr = 7ad8000
Code Image Load Complete.
registered vars:
name addr size hash align
-------------------------------- ---------------- ---- ---- -----
glob_rtas_trace_buf : 0000000007a97100 65552 7 0
perf_tools_corr_token_ptr : 0000000007aabd00 8 7 0
prtas_was_interrupted : 0000000007aa8100 4 9 1
callperf : 0000000007aa8400 12320 9 1
pglob_os_term_state : 0000000007aab700 4 12 1
hypStopWatch : 0000000007aa7400 1800 14 8
prtas_in_progress : 0000000007aa7e00 4 20 1
bufferstatus : 0000000007aac000 40 30 1
last_error_log : 0000000007aac500 1024 30 0
perf_tools_buff : 0000000007aaba00 88 31 0
nmi_work_buffer : 0000000007aad000 4096 31 12
done
0000000000000000 : booting cpu /cpus/PowerPC,970@0
0000000000000001 : starting cpu /cpus/PowerPC,970@1... ... done
Calling quiesce ...
returning from prom_init
firmware_features = 0x11ff7f
Starting Linux PPC64 2.6.8.1-mm1
-----------------------------------------------------
naca = 0xc000000000004000
naca->pftSize = 0x18
naca->debug_switch = 0x0
naca->interrupt_controller = 0x2
systemcfg = 0xc000000000005000
systemcfg->processorCount = 0x2
systemcfg->physicalMemorySize = 0x3d000000
systemcfg->dCacheL1LineSize = 0x80
systemcfg->iCacheL1LineSize = 0x80
htab_data.htab = 0x0000000000000000
htab_data.num_ptegs = 0x20000
-----------------------------------------------------
[boot]0100 MM Init
[boot]0100 MM Init Done
Trap instruction interrupt : Invalid Instruction
[0x0]dummy:
+0x00000000: 00000000 invalid
hdb(0)>
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:47 ` 2.6.8.1-mm1 Christoph Hellwig
@ 2004-08-17 13:20 ` Frediano Ziglio
2004-08-18 23:57 ` 2.6.8.1-mm1 Peter Osterlund
1 sibling, 0 replies; 38+ messages in thread
From: Frediano Ziglio @ 2004-08-17 13:20 UTC (permalink / raw)
To: Christoph Hellwig, petero2, axboe, Andrew Morton; +Cc: linux-kernel
Il lun, 2004-08-16 alle 23:47, Christoph Hellwig ha scritto:
> On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> > - The packet-writing patches should be ready to go, but I haven't even
> > looked at them yet, and am not sure that anyone else has reviewed the code.
>
> It's still messing with the elevator setting directly which is a no-go.
> That's not the packet-writing drivers fault but needs solving first.
>
I tried 2.6.8.1-mm1 ASAP and DVD+/-RW works very well.
I even used two drives together (a CD writer and a DVD writer).
Compiling kernel (using 2.6.8.1 + Petero Patch, cd not used) I got this
error using mkinitrd
Unable to handle kernel NULL pointer dereference at virtual address
00000050
printing eip:
e0abd8a6
*pde = 00000000
Oops: 0000 [#1]
Modules linked in: loop ext3 jbd nls_iso8859_1 nls_cp437 vfat fat floppy
ipv6 parport_pc lp parport autofs4 sunrpc
forcedeth 3c59x ipt_REJECT ipt_state ip_conntrack iptable_filter
ip_tables dm_mod usblp ohci_hcd ehci_hcd button battery asus_acpi ac
reiserfs aic7xxx sd_mod scsi_mod
CPU: 0
EIP: 0060:[<e0abd8a6>] Not tainted
EFLAGS: 00010286 (2.6.8)
EIP is at lo_open+0x6/0x30 [loop]
eax: 00000000 ebx: dc8eec00 ecx: e0abd8a0 edx: deef3560
esi: dff5ea00 edi: dff5ea00 ebp: e0abec00 esp: d00abf10
ds: 007b es: 007b ss: 0068
Process nash (pid: 4595, threadinfo=d00aa000 task=deea37b0)
Stack: c0156119 c0155cff c0155c10 dff5ea0c deef3560 00000000 deef3560
c9595a0c
dff5ea00 d535fbcc c01563f5 deef3560 c9595a0c dff63f20 c014e6c6
ffffffe9
d00abf68 00000000 d1056000 d00aa000 c014e5bc d00abf68 d535fbcc
dff63f20
Call Trace:
[<c0156119>] do_open+0xe9/0x300
[<c0155cff>] bdget+0xdf/0xf0
[<c0155c10>] bdev_set+0x0/0x10
[<c01563f5>] blkdev_open+0x25/0x60
[<c014e6c6>] dentry_open+0x106/0x1a0
[<c014e5bc>] filp_open+0x4c/0x50
[<c014e788>] get_unused_fd+0x28/0xb0
[<c014e8ad>] sys_open+0x4d/0xa0
[<c0105d29>] sysenter_past_esp+0x52/0x71
Code: 8b 40 50 8b 40 38 8d 88 08 01 00 00 ff 88 08 01 00 00 0f 88
I got some error using cdrwtool (it seems to send an ABORT, perhaps
cause it expect that recorder write at 12x ?? I have a 2x CD
rewriter...). I don't know it this information it's useful
scsi0:0:5:0: Attempting to queue an ABORT message
CDB: 0x25 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0
scsi0: At time of recovery, card was not paused
>>>>>>>>>>>>>>>>>> Dump Card State Begins <<<<<<<<<<<<<<<<<
scsi0: Dumping Card State in Message-in phase, at SEQADDR 0x43
Card was paused
ACCUM = 0x0, SINDEX = 0x3, DINDEX = 0x8c, ARG_2 = 0x0
HCNT = 0x0 SCBPTR = 0x0
SCSISIGI[0x0] ERROR[0x0] SCSIBUSL[0x0] LASTPHASE[0xe0]
SCSISEQ[0x12] SBLKCTL[0x2] SCSIRATE[0x0] SEQCTL[0x10]
SEQ_FLAGS[0x0] SSTAT0[0x5] SSTAT1[0xa] SSTAT2[0x0]
SSTAT3[0x0] SIMODE0[0x0] SIMODE1[0xa4] SXFRCTL0[0x80]
DFCNTRL[0x0] DFSTATUS[0x29]
STACK: 0x0 0x150 0xf3 0xed
SCB count = 4
Kernel NEXTQSCB = 3
Card NEXTQSCB = 2
QINFIFO entries: 2
Waiting Queue entries:
Disconnected Queue entries:
QOUTFIFO entries:
Sequencer Free SCB List: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Sequencer SCB Info:
0 SCB_CONTROL[0xc0] SCB_SCSIID[0x57] SCB_LUN[0x0] SCB_TAG[0xff]
1 SCB_CONTROL[0x88] SCB_SCSIID[0x37] SCB_LUN[0x0] SCB_TAG[0xff]
2 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
3 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
4 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
5 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
6 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
7 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
8 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
9 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
10 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
11 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
12 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
13 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
14 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
15 SCB_CONTROL[0x0] SCB_SCSIID[0xff] SCB_LUN[0xff] SCB_TAG[0xff]
Pending list:
2 SCB_CONTROL[0x40] SCB_SCSIID[0x57] SCB_LUN[0x0]
Kernel Free SCB list: 1 0
Untagged Q(5): 2
DevQ(0:3:0): 0 waiting
DevQ(0:5:0): 0 waiting
<<<<<<<<<<<<<<<<< Dump Card State Ends >>>>>>>>>>>>>>>>>>
scsi0:0:5:0: Cmd aborted from QINFIFO
aic7xxx_abort returns 0x2002
Trying to mount an iso cd with packet writing I got some warnings
(system continue to be stable)
cdrom: This disc doesn't have any tracks I recognize!
cdrom: This disc doesn't have any tracks I recognize!
cdrom: This disc doesn't have any tracks I recognize!
cdrom: This disc doesn't have any tracks I recognize!
cdrom: This disc doesn't have any tracks I recognize!
Device not ready. Make sure there is a disc in the drive.
Device not ready. Make sure there is a disc in the drive.
cdrom: This disc doesn't have any tracks I recognize!
pktcdvd: writer pktcdvd0 mapped to sr1
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 20 00
00 20 00
Info fld=0x20 (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 128
Buffer I/O error on device pktcdvd0, logical block 16
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 22 00
00 1e 00
Info fld=0x22 (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 136
Buffer I/O error on device pktcdvd0, logical block 17
SCSI error : <0 0 5 0> return code = 0x8000002
Info fld=0x0, Current sr1: sense key Aborted Command
end_request: I/O error, dev sr1, sector 144
Buffer I/O error on device pktcdvd0, logical block 18
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 26 00
00 1a 00
Info fld=0x26 (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 152
Buffer I/O error on device pktcdvd0, logical block 19
SCSI error : <0 0 5 0> return code = 0x8000002
Info fld=0x0, Current sr1: sense key Aborted Command
end_request: I/O error, dev sr1, sector 160
Buffer I/O error on device pktcdvd0, logical block 20
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 20 00
00 02 00
Info fld=0x20 (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 128
Buffer I/O error on device pktcdvd0, logical block 16
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 2a 00
00 16 00
Info fld=0x2a (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 168
Buffer I/O error on device pktcdvd0, logical block 21
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 2c 00
00 14 00
Info fld=0x2c (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 176
Buffer I/O error on device pktcdvd0, logical block 22
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 2e 00
00 12 00
Info fld=0x2e (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 184
Buffer I/O error on device pktcdvd0, logical block 23
...
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 3c 00
00 04 00
Info fld=0x3c (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 240
Buffer I/O error on device pktcdvd0, logical block 30
scsi0: ERROR on channel 0, id 5, lun 0, CDB: Read (10) 00 00 00 00 3e 00
00 02 00
Info fld=0x3e (nonstd), Current sr1: sense key Medium Error
Additional sense: No seek complete
end_request: I/O error, dev sr1, sector 248
Buffer I/O error on device pktcdvd0, logical block 31
pktcdvd: inserted media is CD-RW
pktcdvd: Fixed packets, 32 blocks, Mode-2 disc
pktcdvd: Max. media speed: 2
pktcdvd: write speed 2
pktcdvd: 549888kB available on disc
FAT: bogus number of reserved sectors
VFS: Can't find a valid FAT filesystem on dev pktcdvd0.
freddy77
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 7:05 ` 2.6.8.1-mm1 Nathan Lynch
@ 2004-08-17 13:39 ` Zwane Mwaikambo
0 siblings, 0 replies; 38+ messages in thread
From: Zwane Mwaikambo @ 2004-08-17 13:39 UTC (permalink / raw)
To: Nathan Lynch; +Cc: Andrew Morton, lkml
On Tue, 17 Aug 2004, Nathan Lynch wrote:
> i386 seems to want something like this to avoid crashing in
> find_busiest_group... looks like there's a short window in fixup_irqs
> where interrupts are enabled while we're taking a cpu down.
> Index: 2.6.8.1-mm1/arch/i386/kernel/apic.c
> ===================================================================
> --- 2.6.8.1-mm1.orig/arch/i386/kernel/apic.c
> +++ 2.6.8.1-mm1/arch/i386/kernel/apic.c
> @@ -1138,7 +1138,8 @@
> * interrupt lock, which is the WrongThing (tm) to do.
> */
> irq_enter();
> - smp_local_timer_interrupt(®s);
> + if (!cpu_is_offline(cpu))
> + smp_local_timer_interrupt(®s);
> irq_exit();
Hmm i really am trying to avoid that, thats why we also mask the APIC
timer after fixup_irqs, can we try tackling that instead?
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 12:54 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 14:15 ` William Lee Irwin III
0 siblings, 0 replies; 38+ messages in thread
From: William Lee Irwin III @ 2004-08-17 14:15 UTC (permalink / raw)
To: Andrew Morton, linux-kernel
On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8.1/2.6.8.1-mm1
On Tue, Aug 17, 2004 at 05:54:59AM -0700, William Lee Irwin III wrote:
> Hmm. Got this on a JS20.
> Elapsed time since release of system processors: 0 mins 32 secs
[...]
A firmware upgrade seems to have taken care of this.
-- wli
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1 (compile stats)
2004-08-17 3:19 ` 2.6.8.1-mm1 Andrew Morton
2004-08-17 3:41 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 14:38 ` John Cherry
1 sibling, 0 replies; 38+ messages in thread
From: John Cherry @ 2004-08-17 14:38 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
Linux 2.6 (mm tree) Compile Statistics (gcc 3.2.2)
Kernel bzImage bzImage bzImage modules bzImage modules
(defconfig) (allno) (allyes) (allyes) (allmod) (allmod)
--------------- ---------- -------- -------- -------- -------- --------
2.6.8.1-mm1 0w/0e 0w/0e 78w/0e 4w/0e 1w/0e 74w/0e
2.6.8-rc4-mm1 0w/0e 0w/5e 81w/0e 4w/0e 1w/0e 75w/0e
2.6.8-rc3-mm2 1w/7e 0w/5e 82w/8e 4w/0e 2w/8e 75w/0e
2.6.8-rc3-mm1 0w/0e 1w/5e 81w/9e 4w/0e 1w/0e 75w/0e
2.6.8-rc2-mm2 0w/0e 4w/5e 87w/9e 4w/0e 1w/0e 80w/0e
2.6.8-rc2-mm1 0w/0e 0w/0e 83w/9e 3w/0e 1w/0e 81w/0e
2.6.8-rc1-mm1 0w/0e 0w/0e 88w/9e 5w/0e 1w/0e 87w/0e
2.6.7-mm7 0w/0e 0w/0e 89w/9e 5w/0e 1w/0e 84w/0e
2.6.7-mm6 0w/0e 0w/0e 85w/9e 5w/0e 1w/0e 80w/0e
2.6.7-mm5 0w/0e 0w/0e 92w/0e 5w/0e 1w/0e 87w/0e
2.6.7-mm4 0w/0e 0w/0e 94w/0e 5w/0e 1w/0e 89w/0e
2.6.7-mm3 0w/0e 0w/0e 90w/6e 5w/0e 1w/0e 86w/0e
2.6.7-mm2 0w/0e 0w/0e 109w/0e 7w/0e 1w/0e 106w/0e
2.6.7-mm1 0w/0e 5w/0e 108w/0e 5w/0e 1w/0e 104w/0e
2.6.7-rc3-mm2 0w/0e 5w/0e 105w/10e 5w/0e 2w/0e 100w/2e
2.6.7-rc3-mm1 0w/0e 5w/0e 104w/10e 5w/0e 2w/0e 100w/2e
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
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 11:38 ` 2.6.8.1-mm1 Srivatsa Vaddagiri
@ 2004-08-17 17:53 ` Andrew Morton
2004-08-18 1:04 ` 2.6.8.1-mm1 Rusty Russell
0 siblings, 1 reply; 38+ messages in thread
From: Andrew Morton @ 2004-08-17 17:53 UTC (permalink / raw)
To: vatsa; +Cc: nathanl, linux-kernel, zwane, rusty, Ingo Molnar
Srivatsa Vaddagiri <vatsa@in.ibm.com> wrote:
>
> I found this to be due to task leak in exit code. In release_task:
>
> a. Task is removed from task-list (unhash_process)
> b. More processing is done (like proc_pid_flush etc)
> before task finally dies.
>
> The problem is the task can get preempted between a and b.
It seems wrong that a task can be preempted so late in its lifetime. We're
just asking for nasty bugs by permitting that.
^ permalink raw reply [flat|nested] 38+ messages in thread
* ldchk -> arch/arm/Makefile? [Was: 2.6.8.1-mm1]
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
` (8 preceding siblings ...)
2004-08-17 12:54 ` 2.6.8.1-mm1 William Lee Irwin III
@ 2004-08-17 21:59 ` Sam Ravnborg
9 siblings, 0 replies; 38+ messages in thread
From: Sam Ravnborg @ 2004-08-17 21:59 UTC (permalink / raw)
To: Andrew Morton, Russell King; +Cc: linux-kernel
Hi Andrew.
The following two patches can be dropped from -mm. The functionality has
moved to scripts/mksysmap
handle-undefined-symbols.patch
Fail if vmlinux contains undefined symbols
sparc32-ignore-undefined-symbols-with-3-or-more-leading-underscores.patch
sparc32: ignore undefined symbols with 3 or more leading underscores
On the topic of undefined symbols only certain ARM tool-chains
actually have this problem.
Russell - would it be possible to move the check to arch/arm/Makefile?
Assuming people always build zImage or one of the other arch specific targets.
This check have so far caused much more pain than it ought to do - so
if we could move it to where it really matters would be better.
Sam
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-17 17:53 ` 2.6.8.1-mm1 Andrew Morton
@ 2004-08-18 1:04 ` Rusty Russell
2004-08-18 17:36 ` 2.6.8.1-mm1 Nathan Lynch
0 siblings, 1 reply; 38+ messages in thread
From: Rusty Russell @ 2004-08-18 1:04 UTC (permalink / raw)
To: Andrew Morton
Cc: Srivatsa Vaddagiri, nathanl, lkml - Kernel Mailing List,
Zwane Mwaikambo, Ingo Molnar
On Wed, 2004-08-18 at 03:53, Andrew Morton wrote:
> Srivatsa Vaddagiri <vatsa@in.ibm.com> wrote:
> >
> > I found this to be due to task leak in exit code. In release_task:
> >
> > a. Task is removed from task-list (unhash_process)
> > b. More processing is done (like proc_pid_flush etc)
> > before task finally dies.
> >
> > The problem is the task can get preempted between a and b.
>
> It seems wrong that a task can be preempted so late in its lifetime. We're
> just asking for nasty bugs by permitting that.
Indeed, but recent changes mean we need to be able to sleep
(proc_pid_flush) after we've unlinked the task.
IMHO, the best solution is to side-step the release_task-on-yourself
case which has been traditionally problematic anyway (remember the
SIGXCPU problem?) and do the release_task from finish_task_switch if the
parent isn't going to do it.
Ingo, I don't understand this comment in exit_notify;
/*
* Get a reference to it so that we can set the state
* as the last step. The state-setting only matters if the
* current task is releasing itself, to trigger the final
* put_task_struct() in finish_task_switch(). (thread self-reap)
*/
get_task_struct(tsk);
The flags, not the state, is checked in finish_task_switch: we must not
hit schedule with the PF_DEAD flag set, but the state should be OK?
I also don't see the need for get_task_struct(). Am I missing
something?
Thanks,
Rusty.
Name: Don't Sleep After We're Out Of Task List
Status: Booted on 2.6.8.1-mm1
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored)
Version: -mm
Ingo recently accidentally broke CPU hotplug by enabling preemption
around release_task(), which can be called on the current task if the
parent isn't interested.
The problem is, the task can be preempted and then the CPU can go
down: it's not in the task list any more, and so it won't get migrated
after the CPU goes down. It stays on the down CPU, which triggers a
BUG_ON.
We have had previous problems with tasks releasing themselves:
oprofile has a comment about it, and we had the case of trying to
deliver SIGXCPU in the timer tick to the current task which had called
release_task(). This patch shuffles the self-reaping off to
finish_task_switch, so there's never a running task which isn't in the
task list, except idle threads.
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .28758-linux-2.6.8.1-mm1/include/linux/sched.h .28758-linux-2.6.8.1-mm1.updated/include/linux/sched.h
--- .28758-linux-2.6.8.1-mm1/include/linux/sched.h 2004-08-17 11:32:33.000000000 +1000
+++ .28758-linux-2.6.8.1-mm1.updated/include/linux/sched.h 2004-08-18 09:34:24.000000000 +1000
@@ -610,6 +610,7 @@ do { if (atomic_dec_and_test(&(tsk)->usa
#define PF_STARTING 0x00000002 /* being created */
#define PF_EXITING 0x00000004 /* getting shut down */
#define PF_DEAD 0x00000008 /* Dead */
+#define PF_SELFREAP 0x00000010 /* Never a zombie, must be released */
#define PF_FORKNOEXEC 0x00000040 /* forked but didn't exec */
#define PF_SUPERPRIV 0x00000100 /* used super-user privileges */
#define PF_DUMPCORE 0x00000200 /* dumped core */
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .28758-linux-2.6.8.1-mm1/kernel/exit.c .28758-linux-2.6.8.1-mm1.updated/kernel/exit.c
--- .28758-linux-2.6.8.1-mm1/kernel/exit.c 2004-08-17 11:32:33.000000000 +1000
+++ .28758-linux-2.6.8.1-mm1.updated/kernel/exit.c 2004-08-18 10:10:26.000000000 +1000
@@ -756,8 +756,8 @@ static void exit_notify(struct task_stru
state = TASK_ZOMBIE;
if (tsk->exit_signal == -1 && tsk->ptrace == 0)
state = TASK_DEAD;
- else
- tsk->state = state;
+ tsk->state = state;
+
/*
* Clear these here so that update_process_times() won't try to deliver
* itimer, profile or rlimit signals to this task while it is in late exit.
@@ -766,14 +766,6 @@ static void exit_notify(struct task_stru
tsk->it_prof_value = 0;
tsk->rlim[RLIMIT_CPU].rlim_cur = RLIM_INFINITY;
- /*
- * Get a reference to it so that we can set the state
- * as the last step. The state-setting only matters if the
- * current task is releasing itself, to trigger the final
- * put_task_struct() in finish_task_switch(). (thread self-reap)
- */
- get_task_struct(tsk);
-
write_unlock_irq(&tasklist_lock);
list_for_each_safe(_p, _n, &ptrace_dead) {
@@ -782,18 +774,12 @@ static void exit_notify(struct task_stru
release_task(t);
}
- /* If the process is dead, release it - nobody will wait for it */
- if (state == TASK_DEAD) {
- release_task(tsk);
- write_lock_irq(&tasklist_lock);
- tsk->state = state;
- _raw_write_unlock(&tasklist_lock);
- local_irq_enable();
- } else
- preempt_disable();
-
+ preempt_disable();
+ /* PF_DEAD says drop ref after we schedule. */
tsk->flags |= PF_DEAD;
- put_task_struct(tsk);
+ /* PF_SELFREAP says there's no parent to wait4() for us. */
+ if (state == TASK_DEAD)
+ tsk->flags |= PF_SELFREAP;
}
asmlinkage NORET_TYPE void do_exit(long code)
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .28758-linux-2.6.8.1-mm1/kernel/sched.c .28758-linux-2.6.8.1-mm1.updated/kernel/sched.c
--- .28758-linux-2.6.8.1-mm1/kernel/sched.c 2004-08-17 11:32:34.000000000 +1000
+++ .28758-linux-2.6.8.1-mm1.updated/kernel/sched.c 2004-08-18 09:35:29.000000000 +1000
@@ -1480,8 +1480,11 @@ static void finish_task_switch(task_t *p
finish_arch_switch(rq, prev);
if (mm)
mmdrop(mm);
- if (unlikely(prev_task_flags & PF_DEAD))
+ if (unlikely(prev_task_flags & PF_DEAD)) {
+ if (prev_task_flags & PF_SELFREAP)
+ release_task(prev);
put_task_struct(prev);
+ }
}
/**
--
Anyone who quotes me in their signature is an idiot -- Rusty Russell
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-18 1:04 ` 2.6.8.1-mm1 Rusty Russell
@ 2004-08-18 17:36 ` Nathan Lynch
0 siblings, 0 replies; 38+ messages in thread
From: Nathan Lynch @ 2004-08-18 17:36 UTC (permalink / raw)
To: Rusty Russell
Cc: Andrew Morton, Srivatsa Vaddagiri, lkml - Kernel Mailing List,
Zwane Mwaikambo, Ingo Molnar
On Tue, 2004-08-17 at 20:04, Rusty Russell wrote:
> Name: Don't Sleep After We're Out Of Task List
> Status: Booted on 2.6.8.1-mm1
> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (authored)
> Version: -mm
I tried this and I see might_sleep warnings from proc_pid_flush during
boot and during the test:
Debug: sleeping function called from invalid context at
fs/proc/base.c:1532
in_atomic():1, irqs_disabled():0
[<c0108317>] dump_stack+0x17/0x20
[<c0123196>] __might_sleep+0xb6/0xe0
[<c01a2985>] proc_pid_flush+0x15/0x40
[<c0128066>] release_task+0x1a6/0x270
[<c011f49c>] finish_task_switch+0xac/0xe0
[<c041acea>] schedule+0x53a/0xa70
[<c041be29>] schedule_timeout+0xb9/0xc0
[<c0180ebe>] do_select+0x18e/0x2f0
[<c01812e3>] sys_select+0x293/0x4e0
[<c010746f>] syscall_call+0x7/0xb
And I still hit the same BUG_ON when running the test:
kernel BUG at kernel/sched.c:4038!
invalid operand: 0000 [#1]
PREEMPT SMP
Modules linked in:
CPU: 0
EIP: 0060:[<c0122b2b>] Not tainted VLI
EFLAGS: 00010202 (2.6.8.1-mm1)
EIP is at migration_call+0x1bb/0x300
eax: 00000001 ebx: c1410f60 ecx: 00000000 edx: dea71ec8
esi: dea71000 edi: 00000001 ebp: dea71ee0 esp: dea71eb8
ds: 007b es: 007b ss: 0068
Process bash (pid: 2956, threadinfo=dea71000 task=de4f0210)
Stack: dea71ed4 de4f07f0 de4f07f0 dea71ed4 00000296 dea71ee4 00000296 c04a5b78
00000001 00000006 dea71ef4 c01368c8 dea71000 00000001 c04a7a40 dea71f2c
c014054c c01a8d19 c04f5700 00000000 dea71000 00000001 00000001 000000ff
Call Trace:
[<c01082ea>] show_stack+0x7a/0x90
[<c0108472>] show_registers+0x152/0x1c0
[<c01086a0>] die+0x110/0x200
[<c0108b99>] do_invalid_op+0xe9/0xf0
[<c0107ed9>] error_code+0x2d/0x38
[<c01368c8>] notifier_call_chain+0x28/0x50
[<c014054c>] cpu_down+0x11c/0x230
[<c02a5d38>] store_online+0x38/0x40
[<c02a30b7>] sysdev_store+0x37/0x40
[<c01a8b2e>] flush_write_buffer+0x2e/0x40
[<c01a8b8a>] sysfs_write_file+0x4a/0x60
[<c016b302>] vfs_write+0xa2/0x100
[<c016b411>] sys_write+0x41/0x70
[<c010746f>] syscall_call+0x7/0xb
Code: 0b d0 0f 0f 54 43 c0 eb 8e c7 04 24 0f 34 43 c0 b8 64 2a 12 c0 89 44 24 04
e8 e2 3f 00 00 0f 0b 89 00 22 d4 42 c0 e9 4a ff ff ff <0f> 0b c6 0f 0f 54 43 c0
e9 2c ff ff ff e8 e3 86 2f 00 e9 17 ff
Anything else I can try?
Nathan
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-16 21:47 ` 2.6.8.1-mm1 Christoph Hellwig
2004-08-17 13:20 ` 2.6.8.1-mm1 Frediano Ziglio
@ 2004-08-18 23:57 ` Peter Osterlund
2004-08-19 9:45 ` 2.6.8.1-mm1 Christoph Hellwig
1 sibling, 1 reply; 38+ messages in thread
From: Peter Osterlund @ 2004-08-18 23:57 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: Andrew Morton, linux-kernel
Christoph Hellwig <hch@infradead.org> writes:
> On Mon, Aug 16, 2004 at 02:37:10PM -0700, Andrew Morton wrote:
> > - The packet-writing patches should be ready to go, but I haven't even
> > looked at them yet, and am not sure that anyone else has reviewed the code.
>
> It's still messing with the elevator setting directly which is a no-go.
> That's not the packet-writing drivers fault but needs solving first.
That can actually be avoided by letting the packet driver itself keep
track of how many unfinished bios there are in the CD request queue.
This is straightforward to implement. The only small complication is
that incoming read requests need to be cloned so that the packet
driver can use a private bi_end_io function.
Signed-off-by: Peter Osterlund <petero2@telia.com>
---
linux-petero/drivers/block/pktcdvd.c | 100 +++++++++++++++++++----------------
linux-petero/include/linux/pktcdvd.h | 9 ++-
2 files changed, 65 insertions(+), 44 deletions(-)
diff -puN drivers/block/pktcdvd.c~packet-stacked-bio drivers/block/pktcdvd.c
--- linux/drivers/block/pktcdvd.c~packet-stacked-bio 2004-08-19 01:41:09.487329088 +0200
+++ linux-petero/drivers/block/pktcdvd.c 2004-08-19 01:41:09.493328176 +0200
@@ -71,34 +71,17 @@ static struct pktcdvd_device *pkt_devs[M
static struct proc_dir_entry *pkt_proc;
static int pkt_major;
static struct semaphore ctl_mutex; /* Serialize open/close/setup/teardown */
+static mempool_t *psd_pool;
-static struct pktcdvd_device *pkt_find_dev(request_queue_t *q)
+static void pkt_bio_finished(struct pktcdvd_device *pd)
{
- int i;
-
- for (i = 0; i < MAX_WRITERS; i++) {
- struct pktcdvd_device *pd = pkt_devs[i];
- if (pd && bdev_get_queue(pd->bdev) == q)
- return pd;
- }
-
- return NULL;
-}
-
-static void pkt_lowlevel_elv_completed_req_fn(request_queue_t *q, struct request *req)
-{
- struct pktcdvd_device *pd = pkt_find_dev(q);
- BUG_ON(!pd);
-
- if (elv_queue_empty(q)) {
+ BUG_ON(atomic_read(&pd->cdrw.pending_bios) <= 0);
+ if (atomic_dec_and_test(&pd->cdrw.pending_bios)) {
VPRINTK("pktcdvd: queue empty\n");
atomic_set(&pd->iosched.attention, 1);
wake_up(&pd->wqueue);
}
-
- if (pd->cdrw.elv_completed_req_fn)
- pd->cdrw.elv_completed_req_fn(q, req);
}
static void pkt_bio_init(struct bio *bio)
@@ -561,7 +544,7 @@ static void pkt_iosched_process_queue(st
if (pd->iosched.writing) {
if (high_prio_read || (!writes_queued && reads_queued)) {
- if (!elv_queue_empty(q)) {
+ if (atomic_read(&pd->cdrw.pending_bios) > 0) {
VPRINTK("pktcdvd: write, waiting\n");
break;
}
@@ -570,7 +553,7 @@ static void pkt_iosched_process_queue(st
}
} else {
if (!reads_queued && writes_queued) {
- if (!elv_queue_empty(q)) {
+ if (atomic_read(&pd->cdrw.pending_bios) > 0) {
VPRINTK("pktcdvd: read, waiting\n");
break;
}
@@ -607,6 +590,7 @@ static void pkt_iosched_process_queue(st
}
}
+ atomic_inc(&pd->cdrw.pending_bios);
generic_make_request(bio);
}
}
@@ -714,6 +698,7 @@ static int pkt_end_io_read(struct bio *b
atomic_inc(&pkt->run_sm);
wake_up(&pd->wqueue);
}
+ pkt_bio_finished(pd);
return 0;
}
@@ -731,6 +716,7 @@ static int pkt_end_io_packet_write(struc
pd->stats.pkt_ended++;
+ pkt_bio_finished(pd);
atomic_dec(&pkt->io_wait);
atomic_inc(&pkt->run_sm);
wake_up(&pd->wqueue);
@@ -1996,14 +1982,10 @@ static int pkt_open_dev(struct pktcdvd_d
goto out_putdev;
}
}
- spin_lock_irq(q->queue_lock);
- pd->cdrw.elv_completed_req_fn = q->elevator.elevator_completed_req_fn;
- q->elevator.elevator_completed_req_fn = pkt_lowlevel_elv_completed_req_fn;
- spin_unlock_irq(q->queue_lock);
if (write) {
if ((ret = pkt_open_write(pd)))
- goto restore_queue;
+ goto out_putdev;
/*
* Some CDRW drives can not handle writes larger than one packet,
* even if the size is a multiple of the packet size.
@@ -2018,17 +2000,13 @@ static int pkt_open_dev(struct pktcdvd_d
}
if ((ret = pkt_set_segment_merging(pd, q)))
- goto restore_queue;
+ goto out_putdev;
if (write)
printk("pktcdvd: %lukB available on disc\n", lba << 1);
return 0;
-restore_queue:
- spin_lock_irq(q->queue_lock);
- q->elevator.elevator_completed_req_fn = pd->cdrw.elv_completed_req_fn;
- spin_unlock_irq(q->queue_lock);
out_putdev:
blkdev_put(pd->bdev);
out:
@@ -2041,18 +2019,12 @@ out:
*/
static void pkt_release_dev(struct pktcdvd_device *pd, int flush)
{
- request_queue_t *q;
-
if (flush && pkt_flush_cache(pd))
DPRINTK("pktcdvd: %s not flushing cache\n", pd->name);
pkt_lock_door(pd, 0);
- q = bdev_get_queue(pd->bdev);
pkt_set_speed(pd, MAX_SPEED, MAX_SPEED);
- spin_lock_irq(q->queue_lock);
- q->elevator.elevator_completed_req_fn = pd->cdrw.elv_completed_req_fn;
- spin_unlock_irq(q->queue_lock);
blkdev_put(pd->bdev);
}
@@ -2118,6 +2090,32 @@ static int pkt_close(struct inode *inode
return ret;
}
+
+static void *psd_pool_alloc(int gfp_mask, void *data)
+{
+ return kmalloc(sizeof(struct packet_stacked_data), gfp_mask);
+}
+
+static void psd_pool_free(void *ptr, void *data)
+{
+ kfree(ptr);
+}
+
+static int pkt_end_io_read_cloned(struct bio *bio, unsigned int bytes_done, int err)
+{
+ struct packet_stacked_data *psd = bio->bi_private;
+ struct pktcdvd_device *pd = psd->pd;
+
+ if (bio->bi_size)
+ return 1;
+
+ bio_put(bio);
+ bio_endio(psd->bio, psd->bio->bi_size, err);
+ mempool_free(psd, psd_pool);
+ pkt_bio_finished(pd);
+ return 0;
+}
+
static int pkt_make_request(request_queue_t *q, struct bio *bio)
{
struct pktcdvd_device *pd;
@@ -2134,12 +2132,19 @@ static int pkt_make_request(request_queu
}
/*
- * quick remap a READ
+ * Clone READ bios so we can have our own bi_end_io callback.
*/
if (bio_data_dir(bio) == READ) {
- bio->bi_bdev = pd->bdev;
+ struct bio *cloned_bio = bio_clone(bio, GFP_NOIO);
+ struct packet_stacked_data *psd = mempool_alloc(psd_pool, GFP_NOIO);
+
+ psd->pd = pd;
+ psd->bio = bio;
+ cloned_bio->bi_bdev = pd->bdev;
+ cloned_bio->bi_private = psd;
+ cloned_bio->bi_end_io = pkt_end_io_read_cloned;
pd->stats.secs_r += bio->bi_size >> 9;
- pkt_queue_bio(pd, bio, 1);
+ pkt_queue_bio(pd, cloned_bio, 1);
return 0;
}
@@ -2323,6 +2328,7 @@ static int pkt_seq_show(struct seq_file
seq_printf(m, "\nQueue state:\n");
seq_printf(m, "\tbios queued:\t\t%d\n", pd->bio_queue_size);
+ seq_printf(m, "\tbios pending:\t\t%d\n", atomic_read(&pd->cdrw.pending_bios));
seq_printf(m, "\tcurrent sector:\t\t0x%llx\n", (unsigned long long)pd->current_sector);
pkt_count_states(pd, states);
@@ -2391,6 +2397,7 @@ static int pkt_new_dev(struct pktcdvd_de
pkt_init_queue(pd);
+ atomic_set(&pd->cdrw.pending_bios, 0);
pd->cdrw.thread = kthread_run(kcdrwd, pd, "%s", pd->name);
if (IS_ERR(pd->cdrw.thread)) {
printk("pktcdvd: can't start kernel thread\n");
@@ -2658,10 +2665,14 @@ int pkt_init(void)
{
int ret;
+ psd_pool = mempool_create(PSD_POOL_SIZE, psd_pool_alloc, psd_pool_free, NULL);
+ if (!psd_pool)
+ return -ENOMEM;
+
ret = register_blkdev(pkt_major, "pktcdvd");
if (ret < 0) {
printk("pktcdvd: Unable to register block device\n");
- return ret;
+ goto out2;
}
if (!pkt_major)
pkt_major = ret;
@@ -2681,6 +2692,8 @@ int pkt_init(void)
out:
unregister_blkdev(pkt_major, "pktcdvd");
+out2:
+ mempool_destroy(psd_pool);
return ret;
}
@@ -2689,6 +2702,7 @@ void pkt_exit(void)
remove_proc_entry("pktcdvd", proc_root_driver);
misc_deregister(&pkt_misc);
unregister_blkdev(pkt_major, "pktcdvd");
+ mempool_destroy(psd_pool);
}
MODULE_DESCRIPTION("Packet writing layer for CD/DVD drives");
diff -puN include/linux/pktcdvd.h~packet-stacked-bio include/linux/pktcdvd.h
--- linux/include/linux/pktcdvd.h~packet-stacked-bio 2004-08-19 01:41:09.488328936 +0200
+++ linux-petero/include/linux/pktcdvd.h 2004-08-19 01:41:09.493328176 +0200
@@ -141,7 +141,7 @@ struct packet_cdrw
struct list_head pkt_active_list;
spinlock_t active_list_lock; /* Serialize access to pkt_active_list */
struct task_struct *thread;
- elevator_completed_req_fn *elv_completed_req_fn;
+ atomic_t pending_bios;
};
/*
@@ -231,6 +231,13 @@ struct pkt_rb_node {
struct bio *bio;
};
+struct packet_stacked_data
+{
+ struct bio *bio; /* Original read request bio */
+ struct pktcdvd_device *pd;
+};
+#define PSD_POOL_SIZE 64
+
struct pktcdvd_device
{
struct block_device *bdev; /* dev attached */
_
--
Peter Osterlund - petero2@telia.com
http://w1.894.telia.com/~u89404340
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-18 23:57 ` 2.6.8.1-mm1 Peter Osterlund
@ 2004-08-19 9:45 ` Christoph Hellwig
2004-08-20 5:44 ` 2.6.8.1-mm1 Peter Osterlund
0 siblings, 1 reply; 38+ messages in thread
From: Christoph Hellwig @ 2004-08-19 9:45 UTC (permalink / raw)
To: Peter Osterlund; +Cc: Christoph Hellwig, Andrew Morton, linux-kernel
On Thu, Aug 19, 2004 at 01:57:09AM +0200, Peter Osterlund wrote:
> That can actually be avoided by letting the packet driver itself keep
> track of how many unfinished bios there are in the CD request queue.
> This is straightforward to implement. The only small complication is
> that incoming read requests need to be cloned so that the packet
> driver can use a private bi_end_io function.
Neat, this looks pretty good. Other comments on the pkt driver (not related
to this patch):
in the blockdev ->open/->release->ioctl you can get your private data
from inode->i_bdev->bd_disk->private_data instead of doing the lookup.
You still have a little to much dev_t handling in your driver for my
taste, I'm going to take a look soon.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-19 9:45 ` 2.6.8.1-mm1 Christoph Hellwig
@ 2004-08-20 5:44 ` Peter Osterlund
2004-08-20 6:03 ` 2.6.8.1-mm1 Christoph Hellwig
0 siblings, 1 reply; 38+ messages in thread
From: Peter Osterlund @ 2004-08-20 5:44 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: Andrew Morton, linux-kernel
Christoph Hellwig <hch@infradead.org> writes:
> On Thu, Aug 19, 2004 at 01:57:09AM +0200, Peter Osterlund wrote:
> > That can actually be avoided by letting the packet driver itself keep
> > track of how many unfinished bios there are in the CD request queue.
> > This is straightforward to implement. The only small complication is
> > that incoming read requests need to be cloned so that the packet
> > driver can use a private bi_end_io function.
>
> Neat, this looks pretty good. Other comments on the pkt driver (not related
> to this patch):
>
> in the blockdev ->open/->release->ioctl you can get your private data
> from inode->i_bdev->bd_disk->private_data instead of doing the lookup.
The release/ioctl functions should be no problems to convert, but how
do I prevent pkt_open() and pkt_remove_dev() from racing against each
other with your suggestion? Currently this is handled by the ctl_mutex
and the fact that pkt_find_dev_from_minor() returns NULL if the packet
device has gone away.
--
Peter Osterlund - petero2@telia.com
http://w1.894.telia.com/~u89404340
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: 2.6.8.1-mm1
2004-08-20 5:44 ` 2.6.8.1-mm1 Peter Osterlund
@ 2004-08-20 6:03 ` Christoph Hellwig
0 siblings, 0 replies; 38+ messages in thread
From: Christoph Hellwig @ 2004-08-20 6:03 UTC (permalink / raw)
To: Peter Osterlund; +Cc: Andrew Morton, linux-kernel
On Fri, Aug 20, 2004 at 07:44:47AM +0200, Peter Osterlund wrote:
> The release/ioctl functions should be no problems to convert, but how
> do I prevent pkt_open() and pkt_remove_dev() from racing against each
> other with your suggestion? Currently this is handled by the ctl_mutex
> and the fact that pkt_find_dev_from_minor() returns NULL if the packet
> device has gone away.
If you call del_gendisk early enough the blocklayer will synchrnoize
them for you. It looks like you'll have to move del_gendisk a little up
for that, though.
^ permalink raw reply [flat|nested] 38+ messages in thread
end of thread, other threads:[~2004-08-20 6:03 UTC | newest]
Thread overview: 38+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-16 21:37 2.6.8.1-mm1 Andrew Morton
2004-08-16 21:47 ` 2.6.8.1-mm1 Christoph Hellwig
2004-08-17 13:20 ` 2.6.8.1-mm1 Frediano Ziglio
2004-08-18 23:57 ` 2.6.8.1-mm1 Peter Osterlund
2004-08-19 9:45 ` 2.6.8.1-mm1 Christoph Hellwig
2004-08-20 5:44 ` 2.6.8.1-mm1 Peter Osterlund
2004-08-20 6:03 ` 2.6.8.1-mm1 Christoph Hellwig
2004-08-16 22:30 ` 2.6.8.1-mm1 Bartlomiej Zolnierkiewicz
2004-08-16 21:51 ` 2.6.8.1-mm1 Alan Cox
2004-08-16 23:25 ` 2.6.8.1-mm1 Arkadiusz Miskiewicz
2004-08-16 23:39 ` 2.6.8.1-mm1 Martin J. Bligh
2004-08-17 1:32 ` 2.6.8.1-mm1 Nathan Lynch
2004-08-17 6:59 ` 2.6.8.1-mm1 Sam Ravnborg
2004-08-17 6:25 ` 2.6.8.1-mm1 Martin J. Bligh
2004-08-17 6:38 ` 2.6.8.1-mm1 Andrew Morton
2004-08-17 7:00 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 7:05 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 3:07 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 3:09 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 3:19 ` 2.6.8.1-mm1 Andrew Morton
2004-08-17 3:41 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 4:16 ` 2.6.8.1-mm1 Nick Piggin
2004-08-17 14:38 ` 2.6.8.1-mm1 (compile stats) John Cherry
2004-08-17 5:59 ` 2.6.8.1-mm1 Nathan Lynch
2004-08-17 7:19 ` 2.6.8.1-mm1 Rusty Russell
2004-08-17 8:45 ` [patch] new-task-fix.patch, 2.6.8.1-mm1 Ingo Molnar
2004-08-17 11:35 ` Nick Piggin
2004-08-17 11:38 ` 2.6.8.1-mm1 Srivatsa Vaddagiri
2004-08-17 17:53 ` 2.6.8.1-mm1 Andrew Morton
2004-08-18 1:04 ` 2.6.8.1-mm1 Rusty Russell
2004-08-18 17:36 ` 2.6.8.1-mm1 Nathan Lynch
2004-08-17 6:20 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 6:40 ` 2.6.8.1-mm1 sam
2004-08-17 7:05 ` 2.6.8.1-mm1 Nathan Lynch
2004-08-17 13:39 ` 2.6.8.1-mm1 Zwane Mwaikambo
2004-08-17 12:54 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 14:15 ` 2.6.8.1-mm1 William Lee Irwin III
2004-08-17 21:59 ` ldchk -> arch/arm/Makefile? [Was: 2.6.8.1-mm1] Sam Ravnborg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox