LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* 2.6.6-rc3-mm2
@ 2004-05-05  8:31 Andrew Morton
  2004-05-05  8:46 ` 2.6.6-rc3-mm2 Fabio Coatti
                   ` (11 more replies)
  0 siblings, 12 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-05  8:31 UTC (permalink / raw)
  To: linux-kernel


ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6.6-rc3-mm2/

- Lots of little fixes and updates.  Nothing really major.

- The huge memory leak from 2.6.6-rc3-mm1 is fixed.




Changes since 2.6.6-rc3-mm2:


 linus.patch
 bk-acpi.patch
 bk-agpgart.patch
 bk-alsa.patch
 bk-cifs.patch
 bk-cpufreq.patch
 bk-driver-core.patch
 bk-drm.patch
 bk-i2c.patch
 bk-input.patch
 bk-libata.patch
 bk-netdev.patch
 bk-ntfs.patch
 bk-pci.patch
 bk-scsi.patch
 bk-usb.patch

 Latest versions of various development trees

-cifs-build-fix.patch
-nfs-printk-warning-fix.patch
-efivars-sysfs-fix.patch
-dvbfix-adapter-module-removal-bug.patch
-s390-oprofile-config-cleanup.patch
-make-ikconfig-quiet.patch
-ppc64-shmget-translation-bugfix.patch
-aic7xxx-deadlock-fix.patch
-aic7xxx-section-fix.patch
-string_h-needs-compiler_h.patch
-new-set-of-input-patches-synaptics-cleanup.patch
-new-set-of-input-patches-synaptics-middle-button-support.patch
-new-set-of-input-patches-dont-change-max-proto.patch
-new-set-of-input-patches-atkbd-soften-accusation.patch
-new-set-of-input-patches-atkbd-trailing-whitespace.patch
-new-set-of-input-patches-atkbd-use-bitfields.patch
-new-set-of-input-patches-atkbd-timeout-complaints.patch
-new-set-of-input-patches-psmouse-rescan-on-hotplug.patch
-new-set-of-input-patches-psmouse-reconnect-after-error.patch
-new-set-of-input-patches-psmouse-add-protocol_handler.patch
-new-set-of-input-patches-psmouse-sliced-commands.patch
-new-set-of-input-patches-atkbd-reconnect-probe.patch
-new-set-of-input-patches-allow-disabling-psaux.patch
-new-set-of-input-patches-serio-whitespace.patch
-new-set-of-input-patches-serio-open-close-optional.patch

 Merged

+page_mapping-race-fix.patch

 Avoid a possible BUG in the rmap code.

+fealnx-bogon-fix.patch

 Locking fix

+rmap-9-page_add_anon_rmap-bug-fix.patch

 Fix a BUG in the rmap code

+rmap-anonhd-locking-fix.patch

 Fix a race in the rmap code

+small-numa-api-fixups.patch

 Fixes against the NUMA API

+vm_area_struct-size-comment.patch
+rmapc-comment-style-fixups.patch
+rmap-20-i_mmap_shared-into-i_mmap.patch
+rmap-21-try_to_unmap_one-mapcount.patch
+rmap-22-flush_dcache_mmap_lock.patch
+rmap-23-empty-flush_dcache_mmap_lock.patch

 More VM/rmap work

+partial-prefetch-for-vma_prio_tree_next.patch

 Might speed up the prio-tree code.

+fix-deadlock-in-journalled-quota-fix.patch

 Fix fix-deadlock-in-journalled-quota.patch

+ppc-ppc64-cleanup-ppc970-cpu-initialization.patch
+benh-credits-update.patch
+ppc32-add-missing-dma_mapping_error.patch

 ppc things

-selinux-inode-race-trap.patch

 No longer needed

+sched-ppc64-sched-domain-support-fix.patch

 Fix sched-ppc64-sched-domain-support.patch

+sched-kthread_stop_race_fix.patch

 Fix a race in kthread_stop()

+fixes-in-32-bit-ioctl-emulation-code.patch

 fs/compat.c locking fixes

+binfmt_misc-credentials-fixes-2.patch

 Fixes against binfmt_misc-credentials.patch

-fix-acer-travelmate-360-interrupt-routing.patch

 I was asked to drop this.

+ext3-reservation-bad-inode-fix.patch

 ext3 reservation code fix

+autofs-locking-fix.patch
+autofs4-race-fix.patch

 Fixes against the autofs4 patches

+ext3-error-handling-fixes.patch

 Fix some error-path code in ext3/namei,c

+re-open-descriptors-closed-on-exec-by-selinux-to.patch

 SELinux fix

+cyclades-maintainers-update.patch

 MAINTAINERS update

+laptop-mode-mutt-noatime-doc-update.patch

 Documentation

-bssprot.patch
-bssprot-sparc-fix.patch
-bssprot-cleanup.patch
-bssprot-more-fixes.patch

 Dropped.  These were causing pain and Wine userspace can work around it.  We
 should fix this though.

+shrink_slab-handle-GFP_NOFS-fix.patch

 Fix ghastly VFS cache leak.

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

 reiserfs tidyup.

+tdfxfbc-warning-fix.patch

 Fix warnings in the tdfx driver

 ia64-cpuhotplug-core_kernel_init.patch
 ia64-cpuhotplug-init_removal.patch
 ia64-cpuhotplug-sysfs_ia64.patch
 ia64-cpuhotplug-irq_affinity_fix.patch
 ia64-cpuhotplug-palinfo.patch

 Updated

-ia64-cpuhotplug-hotcpu.patch
-ia64-cpuhotplug-cpu_present_map.patch

 Dropped.  ia64-cpuhotplug-cpu_present_map.patch interacts fatally with the
 sched-domains code.

+cmpci-update.patch

 Update the cmpci.c OSS driver

+i2o-subsystem-fixing-and-cleanup-for-26-i2o-config-cleanpatch.patch
+i2o-subsystem-fixing-and-cleanup-for-26-i2o-passthrupatch.patch
+i2o-subsystem-fixing-and-cleanup-for-26-i2o_block-cleanuppatch.patch
+i2o-subsystem-fixing-and-cleanup-for-26-i2o-64-bit-fixpatch.patch
+i2o-subsystem-fixing-and-cleanup-for-26-i2o-makefile-cleanuppatch.patch

 i2o fixes/cleanups

+dentry-and-inode-cache-hash-algorithm-performance-changes.patch

 Bettern hashing functions for the dentry and inode caches

+fix-mtd-suspend-resume.patch

 PM fix in MTD

+remove-blk_queue_bounce-messages.patch

 Kill some printks

+fix-deadlock-in-__create_workqueue-2.patch

 Fix a deadlock in the workqueue code

+throttle-p4-thermal-warnings.patch

 Less log output.

+i82365c-warning-fix.patch

 Fix a warning

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

 re-enable interrupts while spinning in spin_lcok_irq() on ia32.

+make-4k-stacks-permanent.patch

 Fill my inbox.

+worker_thread-race-fix.patch

 Fix wakeup race in the workqueue code.

+force-config_regparm-to-y.patch

 Remove the CONFIG_REGPARM option.

+kernel-syscalls-retval-fix.patch
+remove-errno-refs.patch
+ia64-remove-errno-refs.patch

 Fiddle with kernel syscalls and remove the global `errno' variable.  I
 actually meant to drop this because we'll be doing it differently.

+warn-when-smp_call_function-is-called-with-interrupts-disabled.patch

 smp_call_function() is deadlocky if the caller has disabled interrupts

+initio-ini-9x00u-uw-error-handling-in-26.patch

 Fix a scsi driver

+fixup-68360-module-refcounting.patch

 Fix module refcounting in this driver.

+missing-closing-n-in-printk.patch

 Fix a printk.

+intermezzo-stack-reduction.patch

 Reduce stack usage in intermezzo

+lance-racal-interlan-fix.patch

 Fix the lance net driver for one type of NIC.

+gcc-340-fixes-for-266-rc3-x86_64-kernel.patch

 Fix the x86_64 port for gcc-3.4

+fix-warn_on-on-xfs-module-unload.patch

 prevent a warning when xfs.ko is unloaded.

+ppc64-use-generic-ipc-syscall-translation.patch

 PPC64 code consolidation

+proc-sys-kernel-vermagic.patch

 Add /proc/sys/kernel/vermagic so that package installers can work out how
 the kernel was built (soliciting feedback on this one).

+ramdisk-size-warning-fix.patch

 Fix an assembler warning

+cyclades-cleanups.patch
+cyclades-cleanups-cleanups.patch

 Clean up the cyclades driver

+nforce-disconnect-fix.patch

 Fix the nforce2 horrors.

+delete-posix-conformance-testing-by-unifix-message.patch

 Kill another boot-time printk.

+jiffies-to-clockt-fix_a1.patch

 Timekeeping accuracy fixes.

+readahead-private.patch

 Prevent concurrent reads against the same fd from screwing with the
 readahead state.

+static-define_per_cpu-vs-modules-2.patch

 Work around relative address displacement problems on s390.

+introduce-asm--8253pith.patch
+use-pit_tick_rate-in-spkrc.patch
+use-clock_tick_rate.patch

 Fiddle with the PIT code to make it more friendly to non-PC machines.

+netpoll-attributions.patch

 Update the attributions in netpoll.c

+265-es7000-subarch-update-for-generic-arch.patch

 Make es7000 a real subarch

+new-i2c-video-decoder-calls.patch
+new-i2c-video-decoder-calls-saa7111.patch

 i2c cleanups/fixes

+get_thread_area-macros.patch

 Fix the get_thread_area() macros

+update-documentation-mdtxt.patch

 MD documentation update

+invalid-notify_changesymlink-in-nfsd.patch

 Fix notofy_change() in knfsd.

+bfs-filesystem-read-past-the-end-of-dir.patch

 BFS fix

+simplify-mqueue_inode_info-messages-allocation.patch

 Fix a leak in the posix message queue code.

+filtered-wakeups-core.patch
+filtered-buffer_head-wakeups.patch
+filtered-buffer_head-wakeups-tweaks.patch
+wake-one-pg_locked-bh_lock-semantics.patch
+wake-one-pg_locked-bh_lock-semantics-tweaks.patch

 More efficient sleeps and and wakeups, use them in the VFS.




All 332 patches:

linus.patch

page_mapping-race-fix.patch
  page_mapping race fix

bk-acpi.patch

bk-agpgart.patch

bk-alsa.patch

bk-cifs.patch

bk-cpufreq.patch

bk-driver-core.patch

bk-drm.patch

bk-i2c.patch

bk-input.patch

bk-libata.patch

bk-netdev.patch

bk-ntfs.patch

bk-pci.patch

bk-scsi.patch

bk-usb.patch

mm.patch
  add -mmN to EXTRAVERSION

frame-pointer-based-stack-dumps.patch
  x86: stack dumps using frame pointers

frame-pointer-based-stack-dumps-tweaks.patch
  frame-pointer-based-stack-dumps-tweaks

fealnx-bogon-fix.patch
  fealnx.c spinlock fix

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

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

rmap-7-object-based-rmap.patch
  rmap 7 object-based rmap

ia64-rmap-build-fix.patch
  ia64 rmap build fix

rmap-8-unmap-nonlinear.patch
  rmap 8 unmap nonlinear

slab-panic.patch
  slab: consolidate panic code

rmap-9-remove-pte_chains.patch
  rmap 9 remove pte_chains

rmap-9-page_add_anon_rmap-bug-fix.patch
  page_add_anon_rmap BUG fix

rmap-10-add-anonmm-rmap.patch
  rmap 10 add anonmm rmap

rmap-anonhd-locking-fix.patch
  rmap anonhd locking fix

rmap-11-mremap-moves.patch
  rmap 11 mremap moves

rmap-12-pgtable-remove-rmap.patch
  rmap 12 pgtable remove rmap

rmap-13-include-asm-deletions.patch
  rmap 13 include/asm deletions

i_shared_lock.patch
  Convert i_shared_sem back to a spinlock
  i_shared_lock fix 1
  i_shared_lock fix 2
  i_shared_lock mremap fix

rmap-14-i_shared_lock-fixes.patch
  rmap 14: i_shared_lock fixes

numa-api-x86_64.patch
  numa api: -64 support
  numa api: Bitmap bugfix

numa-api-i386.patch
  numa api: Add i386 support

numa-api-ia64.patch
  numa api: Add IA64 support

numa-api-core.patch
  numa api: Core NUMA API code
  numa api: docs and policy_vma() locking fix
  numa-api-core-tweaks
  Some fixes for NUMA API
  From: Matthew Dobson <colpatch@us.ibm.com>
  Subject: [PATCH] include/linux/gfp.h cleanup for NUMA API
  numa-api-core bitmap_clear fixes

mpol-in-copy_vma.patch
  mpol in copy_vma

numa-api-core-slab-panic.patch
  numa-api-core-slab-panic

numa-api-statistics-2.patch
  Re-add NUMA API statistics

numa-api-vma-policy-hooks.patch
  numa api: Add VMA hooks for policy
  numa-api-vma-policy-hooks fix

numa-api-shared-memory-support.patch
  numa api: Add shared memory support
  numa-api-shared-memory-support-tweaks

small-numa-api-fixups.patch
  small numa api fixups

numa-api-statistics.patch
  numa api: Add statistics

numa-api-anon-memory-policy.patch
  numa api: Add policy support to anonymous  memory

rmap-15-vma_adjust.patch
  rmap 15: vma_adjust

rmap-16-pretend-prio_tree.patch
  rmap 16: pretend prio_tree

rmap-17-real-prio_tree.patch
  rmap 17: real prio_tree

rmap-18-i_mmap_nonlinear.patch
  rmap 18: i_mmap_nonlinear

rmap-19-arch-prio_tree.patch
  rmap 19: arch prio_tree

vm_area_struct-size-comment.patch
  vm_area_struct size comment

rmapc-comment-style-fixups.patch
  rmap.c comment/style fixups

rmap-20-i_mmap_shared-into-i_mmap.patch
  rmap 20 i_mmap_shared into i_mmap

rmap-21-try_to_unmap_one-mapcount.patch
  rmap 21 try_to_unmap_one mapcount

rmap-22-flush_dcache_mmap_lock.patch
  rmap 22 flush_dcache_mmap_lock

rmap-23-empty-flush_dcache_mmap_lock.patch
  rmap 23 empty flush_dcache_mmap_lock

partial-prefetch-for-vma_prio_tree_next.patch
  partial prefetch for vma_prio_tree_next

fix-deadlock-in-journalled-quota.patch
  Fix deadlock in journalled quota

fix-deadlock-in-journalled-quota-fix.patch
  fix-deadlock-in-journalled-quota fix

mips-update.patch
  MIPS update

mips-fix-mips-26-fb-setup.patch
  mips: fix 2.6 fb setup

mips-simplify-expression.patch
  mips: Simplify expression

mips-newport-driver-fixes.patch
  mips: newport driver fixes

mips-remove-video_type_sni_rm.patch
  mips: remove VIDEO_TYPE_SNI_RM

mips-gbe-video-driver.patch
  mips: GBE Video Driver

mips-add-missing-ip22-zilog-bit.patch
  mips: add missing IP22 Zilog bit

mips-64-bit-mips-needs-compat-stuff.patch
  mips: 64-bit MIPS needs compat stuff

mips-remove-dz-driver.patch
  mips: remove dz driver

mips-sgiwd93-26-fixes-and-crapectomy.patch
  mips: sgiwd93 2.6 fixes and crapectomy

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

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

ppc-ppc64-cleanup-ppc970-cpu-initialization.patch
  ppc/ppc64: Cleanup PPC970 CPU initialization

benh-credits-update.patch
  Fix my address in CREDITS

ppc32-add-missing-dma_mapping_error.patch
  ppc32: Add missing [pci_]dma_mapping_error()

ppc64-reloc_hide.patch

invalidate_inodes-speedup.patch
  invalidate_inodes speedup
  more invalidate_inodes speedup fixes

config_spinline.patch
  uninline spinlocks for profiling accuracy.

pdflush-diag.patch

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

pci_set_power_state-might-sleep.patch

CONFIG_STANDALONE-default-to-n.patch
  Make CONFIG_STANDALONE default to N

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

local_bh_enable-warning-fix.patch

Move-saved_command_line-to-init-mainc.patch
  Move saved_command_line to init/main.c

sched-run_list-cleanup.patch
  small scheduler cleanup

sched-find_busiest_node-resolution-fix.patch
  sched: improved resolution in find_busiest_node

sched-domains.patch
  sched: scheduler domain support

sched-domain-debugging.patch
  sched_domain debugging

sched-domain-balancing-improvements.patch
  scheduler domain balancing improvements

sched-sibling-map-to-cpumask.patch
  sched: cpu_sibling_map to cpu_mask

sched-domains-i386-ht.patch
  sched: implement domains for i386 HT

sched-no-drop-balance.patch
  sched: handle inter-CPU jiffies skew

sched-directed-migration.patch
  sched_balance_exec(): don't fiddle with the cpus_allowed mask

sched-group-power.patch
  sched-group-power

sched-domains-use-cpu_possible_map.patch
  sched_domains: use cpu_possible_map

sched-smt-nice-handling.patch
  sched: SMT niceness handling

sched-local-load.patch
  sched: add local load metrics

sched-process-migration-speedup.patch
  Reduce TLB flushing during process migration

sched-trivial.patch
  sched: trivial fixes, cleanups

sched-hotplug-cpu-sched_balance_exec-fix.patch
  Hotplug CPU sched_balance_exec Fix

sched-wakebalance-fixes.patch
  sched: wakeup balancing fixes

sched-imbalance-fix.patch
  sched: fix imbalance calculations

sched-altix-tune1.patch
  sched: altix tuning

sched-fix-activelb.patch
  sched: oops fix

sched-ppc64-sched-domain-support.patch
  ppc64: sched-domain support

sched-ppc64-sched-domain-support-fix.patch
  ARCH_HAS_SCHED_WAKE_BALANCE doesnt exist

sched-domain-setup-lock.patch
  sched: fix setup races

sched-minor-cleanups.patch
  sched: minor cleanups

sched-inline-removals.patch
  sched: uninlinings

sched-move-cold-task.patch
  sched: move cold task in mysteriouis ways

sched-migrate-shortcut.patch
  sched: add migration shortcut

sched-more-sync-wakeups.patch
  sched: extend sync wakeups

sched-boot-fix.patch
  sched: lock cpu_attach_domain for hotplug

sched-cleanups.patch
  sched: cleanups

sched-damp-passive-balance.patch
  sched: passive balancing damping

sched-cpu-load-cleanup.patch
  sched: cpu load management cleanup

sched-balance-context.patch
  sched: balance-on-clone

sched-less-idle.patch
  sched: reduce idle time

sched-wake_up-speedup.patch
  sched: micro-optimisation for wake_up

sched-smt-domain-race.patch
  sched: Look at another CPU's domain

sched-move-migrate_all_tasks-to-cpu_dead-handling.patch
  Move migrate_all_tasks to CPU_DEAD handling

sched-move-migrate_all_tasks-to-cpu_dead-handling-up-fix.patch
  sched-move-migrate_all_tasks-to-cpu_dead-handling-up-fix

sched-move-migrate_all_tasks-to-cpu_dead-handling-unlikely-cleanup.patch
  Move migrate_all_tasks to CPU_DEAD handling: unlikely() cleanup

sched-sys_sched_getaffinity_lock_cpu_hotplug.patch
  sched_getaffinity vs cpu hotplug race fix

sched-kthread_stop_race_fix.patch
  migration_thread() race fix

schedstats.patch
  sched: scheduler statistics

fixes-in-32-bit-ioctl-emulation-code.patch
  Fixes in 32 bit ioctl emulation code

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

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

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

use-soft-float.patch
  Use -msoft-float

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

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

binfmt_misc-credentials-fixes.patch
  binfmt_misc-credentials cleanups and fixes

binfmt_misc-credentials-fixes-2.patch
  More binfmt_misc-credentials fixes

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

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

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

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

siimage-update.patch
  ide: update for siimage driver

nmi_watchdog-local-apic-fix.patch
  Fix nmi_watchdog=2 and P4 HT

nmi-1-hz-2.patch
  reduce NMI watchdog call frequency with local APIC.

shm-do_munmap-check.patch

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

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

logitech-keyboard-fix.patch
  2.6.5-rc2 keyboard breakage

stack-reductions-nfsread.patch
  stack reductions: nfs read

speed-up-sata.patch
  speed up SATA

advansys-fix.patch
  advansys check_region() fix

journal_add_journal_head-debug.patch
  journal_add_journal_head-debug

nfs-O_DIRECT-fixes.patch
  NFS: O_DIRECT fixes

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

cciss-logical-device-queues.patch
  cciss: per logical device queues

sk98lin-buggy-vpd-workaround.patch
  net/sk98lin: correct buggy VPD in ASUS MB

unplug-can-sleep.patch
  unplug functions can sleep

firestream-warnings.patch
  firestream warnings

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

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

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

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

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

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

ext3-lazy-discard-reservation-window-patch.patch
  ext3 lazy discard reservation window patch

ext3-discard-reservation-in-last-iput-fix-patch.patch
  ext3 discard reservation in last iput fix patch

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

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

ext3-bogus-enospc-fix.patch
  Fix ext3 bogus ENOSPC

sched-in_sched_functions.patch
  sched: in_sched_functions() cleanup

sysfs-d_fsdata-race-fix-2.patch
  kobject/sysfs race fix

0-autofs4-2.6.0-signal-20040405.patch
  autofs: dnotify + autofs may create signal/restart syscall loop

add-omitted-autofs4-super-block-field.patch
  add omitted autofs4 super block field

1-autofs4-2.6.4-cleanup-20040405.patch
  autofs: printk cleanups

2-autofs4-2.6.4-fill_super-20040405.patch

3-autofs4-2.6.0-bkl-20040405.patch
  autofs: locking rework

4-autofs4-2.6.0-expire-20040405.patch
  autofs: expiry refcount fixes

4-autofs4-260-expire-20040405-fix.patch
  4-autofs4-2.6.0-expire-20040405 locking fix

4-autofs4-260-expire-20040405-fix-fix.patch
  autofs expiry fix

4-autofs4-2.6.0-expire-20040405-may_umount_tree-cleanup.patch
  autofs4: may_umount_tree() cleanup

5-autofs4-2.6.0-readdir-20040405.patch
  autofs: readdir fixes

umount-after-bad-chdir.patch
  fix umount after bad chdir

autofs4-fix-handling-of-chdir-and-chroot.patch
  autofs4: fix handling of chdir and chroot

6-autofs4-2.6.0-may_umount-20040405.patch
  autofs: add ioctl to query unmountability

7-autofs4-2.6.0-extra-20040405.patch
  autofs: readdir futureproofing

autofs-locking-fix.patch
  autofs locking fix

autofs4-race-fix.patch
  autofs4 race fix

ext3-error-handling-fixes.patch
  ext3 error handling fixes

re-open-descriptors-closed-on-exec-by-selinux-to.patch
  selinux: reopen descriptors closed on exec to /dev/null

cyclades-maintainers-update.patch
  cyclades MAINTAINERS update

laptop-mode-mutt-noatime-doc-update.patch
  Laptop Mode doc update

as-increase-batch-expiry.patch
  AS: increase batch expiry intervals

consolidate-sys32_readv-and-sys32_writev.patch
  Consolidate sys32_readv and sys32_writev

consolidate-do_execve32.patch
  Consolidate do_execve32

consolidate-sys32_select.patch
  Consolidate sys32_select

consolidate-sys32_nfsservctl.patch
  Consolidate sys32_nfsservctl

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

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

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

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

es7000-subarch-update-2.patch
  es7000 subarch update

input-tsdev-fixes.patch
  tsdev.c fixes

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

use-less-stack-in-ide_unregister.patch
  use less stack in ide_unregister

psmouse-fix-mouse-hotplugging.patch
  psmouse: fix mouse hotplugging

neomagic-driver-update.patch
  Neomagic driver update.

neomagic-driver-update-fix.patch
  neomagic-driver-update fix

kernel_ppc8xx_misc.patch
  ppc32: ppc8xx build fixes

remove-bootsect_helper-and-a-comment-fix-iii.patch
  Remove bootsect_helper and a comment fix

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

remove-some-unused-variables-in-s2io.patch
  remove some unused variables in s2io

new-version-of-early-cpu-detect.patch
  New version of early CPU detect

new-version-of-early-cpu-detect-fix.patch
  new-version-of-early-cpu-detect-fix

radeon-garbled-screen-fix.patch
  radeonfb: fix garbled screen

writepage-retval-warning.patch
  writepage-retval-warning

shrink_slab-handle-GFP_NOFS.patch
  shrink_slab: improved handling of GFP_NOFS allocations

shrink_slab-handle-GFP_NOFS-fix.patch
  shrink_slab-handle-GFP_NOFS-fix

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

use-dos_extended_partition.patch
  partitioning cleanup: use DOS_EXTENDED_PARTITION

reiserfs-commit-default-fix.patch
  From: Bart Samwel <bart@samwel.tk>
  Subject: [PATCH] Reiserfs commit default fix

reiserfs-acl-mknod.patch
  reiserfs: acl device node initialization

reiserfs-xattrs-04.patch
  reiserfs: xattr support

reiserfs-acl-02.patch
  reiserfs: ACL support

reiserfs-trusted-02.patch
  reiserfs: support trusted xattrs

reiserfs-selinux-02.patch
  reiserfs: selinux support

reiserfs-xattr-locking-02.patch
  reiserfs: xattr locking fixes

reiserfs-quota.patch
  reiserfs: quota support

reiserfs-permission.patch
  reiserfs: xattr permission fix

reiserfs-warning.patch
  reiserfs: add device info to diagnostic messages

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

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

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

reiserfs-search_reada-5.patch
  reiserfs: btree readahead

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

problems-with-atkbd_command--atkbd_interrupt-interaction.patch
  Problems with atkbd_command & atkbd_interrupt interaction

mptfusion-depends-on-scsi.patch
  mptfusion depends on scsi

mark-config_mac_serial-drivers-macintosh-macserialc-as-broken.patch
  Mark CONFIG_MAC_SERIAL (drivers/macintosh/macserial.c) as broken

radeon-fb-screen-corruption-fix.patch
  radeonfb display corruption fix

tridentfbc-warning-fix.patch
  video/tridentfb.c warning fix

hgafbc-warning-fix.patch
  video/hgafb.c warning fix

tdfxfbc-warning-fix.patch
  video/tdfxfb.c warning fix

imsttfbc-warning-fix.patch
  video/imsttfb.c. warning fix

fbdev-logo-handling-fix.patch
  fbdev: clean up logo handling

fbdev-redundant-prows-calculation-removal.patch
  fbdev: remove redundant p->vrows calculation

fbdev-remove-redundant-local.patch
  fbdev: remove redundant local

fbdev-access_align-default.patch
  fbdev: set a default access_align value

fix-null-ptr-dereference-in-pm2fb_probe-2.patch
  Fix NULL-ptr dereference in pm2fb_probe

virtual-fbdev-updates.patch
  Virtual fbdev updates

vesa-fbdev-update.patch
  Vesa Fbdev update

vesa-fbdev-update-fix.patch
  Vesa Fbdev update fix

sis-agp-updates.patch
  SIS AGP updates

new-asiliant-framebuffer-driver.patch
  New Asiliant framebuffer driver.

fbcon-and-unimap.patch
  Fix fbcon and unimap

videodev-handle-class_register-failure.patch
  videodev: handle class_register() failure

8139too-suspend-fix.patch
  8139too not running s3 suspend/resume pci fix

acpiphp_glue-oops-fix.patch
  acpiphp_glue.c oops fix

clear_backing_dev_congested.patch
  clear_baking_dev_congested

dpt_i2o.patch
  Fix dpt_i2o

find_user-locking.patch
  find_user-locking

improve-laptop-modes-block_dump-output.patch
  Improve laptop mode's block_dump output

com90xx_message.patch
  com90xx error message patch: check_region() gone

parport_doc_arg.patch
  Kill a warning while making pdfdocs.

kernel-api-docs.patch
  Kill some 'No description found...' warnings. (kernel-api.sgml)

allow-architectures-to-reenable-interrupts-on-contended-spinlocks.patch
  Allow architectures to reenable interrupts on contended spinlocks

allow-architectures-to-reenable-interrupts-on-contended-spinlocks-fix.patch
  allow-architectures-to-reenable-interrupts-on-contended-spinlocks-fix

only-print-tainted-message-once.patch
  Only Print Taint Message Once

ia64-cpuhotplug-core_kernel_init.patch
  oa64 cpu hotplug: core kernel initialisation

ia64-cpuhotplug-init_removal.patch
  ia64 cpu hotplug: init section fixes

ia64-cpuhotplug-sysfs_ia64.patch
  ia64 cpu hotplug: sysfs additions

ia64-cpuhotplug-irq_affinity_fix.patch
  ia64 cpu hotplug: IRQ affinity work

ia64-cpuhotplug-palinfo.patch
  ia64 cpu hotplug: /proc rework

blk_start_queue-use-kblockd.patch
  blk_start_queue() should use kblockd

module-ref-counting-for-vt-console-drivers.patch
  Module ref counting for vt console drivers

edd-follow-sysfs-convention-module_version-remove-dead-scsi-symlink.patch
  EDD: follow sysfs convention, MODULE_VERSION, remove dead SCSI symlink

cmpci-update.patch
  cmpci OSS driver update

i2o-subsystem-fixing-and-cleanup-for-26-i2o-config-cleanpatch.patch
  I2O subsystem fixing and cleanup for 2.6 - i2o-config-clean.patch

i2o-subsystem-fixing-and-cleanup-for-26-i2o-passthrupatch.patch
  I2O subsystem fixing and cleanup for 2.6 - i2o-passthru.patch

i2o-subsystem-fixing-and-cleanup-for-26-i2o_block-cleanuppatch.patch
  I2O subsystem fixing and cleanup for 2.6 - i2o_block-cleanup.patch

i2o-subsystem-fixing-and-cleanup-for-26-i2o-64-bit-fixpatch.patch
  I2O subsystem fixing and cleanup for 2.6 - i2o-64-bit-fix.patch

i2o-subsystem-fixing-and-cleanup-for-26-i2o-makefile-cleanuppatch.patch
  I2O subsystem fixing and cleanup for 2.6 - i2o-makefile-cleanup.patch

dentry-and-inode-cache-hash-algorithm-performance-changes.patch
  dentry and inode cache hash algorithm performance changes.

fix-mtd-suspend-resume.patch
  From: Russell King <rmk@arm.linux.org.uk>
  Subject: [MTD] Fix MTD suspend/resume

remove-blk_queue_bounce-messages.patch
  remove blk_queue_bounce() printks

fix-deadlock-in-__create_workqueue-2.patch
  a

throttle-p4-thermal-warnings.patch
  throttle P4 thermal warnings

i82365c-warning-fix.patch
  pcmcia/i82365.c warning fix

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

make-4k-stacks-permanent.patch
  make-4k-stacks-permanent

worker_thread-race-fix.patch
  worker_thread-race-fix

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

kernel-syscalls-retval-fix.patch
  a

remove-errno-refs.patch
  remove-errno-refs

ia64-remove-errno-refs.patch
  ia64-remove-errno-refs

warn-when-smp_call_function-is-called-with-interrupts-disabled.patch
  Warn when smp_call_function() is called with interrupts disabled

initio-ini-9x00u-uw-error-handling-in-26.patch
  Initio INI-9X00U/UW error handling

fixup-68360-module-refcounting.patch
  fixup 68360 module refcounting

missing-closing-n-in-printk.patch
  missing closing n in printk

intermezzo-stack-reduction.patch
  intermezzos stack usage reduction

lance-racal-interlan-fix.patch
  lance.c: fix for card with signature 0x52 0x49

gcc-340-fixes-for-266-rc3-x86_64-kernel.patch
  gcc-3.4.0 fixes for 2.6.6-rc3 x86_64 kernel

fix-warn_on-on-xfs-module-unload.patch
  fix WARN_ON on XFS module unload

ppc64-use-generic-ipc-syscall-translation.patch
  ppc64: use generic ipc syscall translation

proc-sys-kernel-vermagic.patch
  add /proc/sys/kernel/vermagic

ramdisk-size-warning-fix.patch
  fix ramdisk size assembler warning

cyclades-cleanups.patch
  cyclades cleanups

cyclades-cleanups-cleanups.patch
  cyclades cleanups cleanups

nforce-disconnect-fix.patch
  nforce2 C1 halt disconnect fix

delete-posix-conformance-testing-by-unifix-message.patch
  delete "POSIX conformance testing by UNIFIX" message

jiffies-to-clockt-fix_a1.patch
  jiffies-to-clockt fix

readahead-private.patch
  hack2

static-define_per_cpu-vs-modules-2.patch
  static DEFINE_PER_CPU vs. modules

introduce-asm--8253pith.patch
  CLOCK_TICK_RATE: introduce asm-*/8253pit.h, #define PIT_TICK_RATE constant.

use-pit_tick_rate-in-spkrc.patch
  CLOCK_TICK_RATE: use PIT_TICK_RATE in *spkr.c

use-clock_tick_rate.patch
  CLOCK_TICK_RATE: use CLOCK_TICK_RATE

netpoll-attributions.patch
  netpoll attributions

265-es7000-subarch-update-for-generic-arch.patch
  es7000 subarch update for generic arch

new-i2c-video-decoder-calls.patch
  new i2c video decoder calls

new-i2c-video-decoder-calls-saa7111.patch
  new i2c video decoder calls: saa7111 driver

get_thread_area-macros.patch
  get_thread_area macro fixes

update-documentation-mdtxt.patch
  update Documentation/md.txt

invalid-notify_changesymlink-in-nfsd.patch
  Invalid notify_change(symlink, [ATTR_MODE]) in nfsd

bfs-filesystem-read-past-the-end-of-dir.patch
  bfs filesystem read past the end of dir

simplify-mqueue_inode_info-messages-allocation.patch
  simplify mqueue_inode_info->messages allocation

filtered-wakeups-core.patch
  filtered wakeups: core

filtered-buffer_head-wakeups.patch
  filtered buffer_head wakeups

filtered-buffer_head-wakeups-tweaks.patch
  filtered-buffer_head-wakeups-tweaks

wake-one-pg_locked-bh_lock-semantics.patch
  wake-one PG_locked/BH_Lock semantics

wake-one-pg_locked-bh_lock-semantics-tweaks.patch
  wake-one-pg_locked-bh_lock-semantics-tweaks



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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
@ 2004-05-05  8:46 ` Fabio Coatti
  2004-05-05  9:07 ` 2.6.6-rc3-mm2 Onur Kucuk
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 94+ messages in thread
From: Fabio Coatti @ 2004-05-05  8:46 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Alle 10:31, mercoledì 5 maggio 2004, hai scritto:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6
>.6-rc3-mm2/

hm.. I've found only 2.6.6-rc3-mm3.gz  in 
http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6.6-rc3-mm2/

Wrong filename?


-- 
Fabio Coatti       http://www.ferrara.linux.it/members/cova     
Ferrara Linux Users Group           http://ferrara.linux.it
GnuPG fp:9765 A5B6 6843 17BC A646  BE8C FA56 373A 5374 C703
Old SysOps never die... they simply forget their password.


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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
  2004-05-05  8:46 ` 2.6.6-rc3-mm2 Fabio Coatti
@ 2004-05-05  9:07 ` Onur Kucuk
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 94+ messages in thread
From: Onur Kucuk @ 2004-05-05  9:07 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel


On Wed, 5 May 2004 01:31:35 -0700
Andrew Morton <akpm@osdl.org> wrote:

> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6.6-rc3-mm2/


ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6.6-rc3-mm2/2.6.6-rc3-mm3.gz


 File name does not match


-- 
 Onur Kucuk                                        Knowledge speaks,   
 <onur.--.-.delipenguen.net>                       but wisdom listens  


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
@ 2004-05-05 11:10   ` Ralf Hildebrandt
  2004-05-05 11:13   ` Jan-Benedict Glaw
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 94+ messages in thread
From: Ralf Hildebrandt @ 2004-05-05 11:10 UTC (permalink / raw)
  To: Linux Kernel ML

* Dominik Karall <dominik.karall@gmx.net>:
> On Wednesday 05 May 2004 10:31, you wrote:
> > +make-4k-stacks-permanent.patch
> >
> >  Fill my inbox.
> 
> Hi Andrew!
> 
> Is there any reason why this patch was applied? Because NVidia users can't 
> work with the original drivers now without removing this patch every time.

Yes, this really sucks (you can choose which "this" I mean)

-- 
Ralf Hildebrandt (Im Auftrag des Referat V a)   Ralf.Hildebrandt@charite.de
Charite - Universitätsmedizin Berlin            Tel.  +49 (0)30-450 570-155
Gemeinsame Einrichtung von FU- und HU-Berlin    Fax.  +49 (0)30-450 570-916
IT-Zentrum Standort Campus Mitte                          AIM.  ralfpostfix

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
  2004-05-05  8:46 ` 2.6.6-rc3-mm2 Fabio Coatti
  2004-05-05  9:07 ` 2.6.6-rc3-mm2 Onur Kucuk
@ 2004-05-05 11:12 ` Dominik Karall
  2004-05-05 11:10   ` Ralf Hildebrandt
                     ` (4 more replies)
  2004-05-05 13:31 ` 2.6.6-rc3-mm2 [delete-posix-...-unifix-message] Paul Jackson
                   ` (8 subsequent siblings)
  11 siblings, 5 replies; 94+ messages in thread
From: Dominik Karall @ 2004-05-05 11:12 UTC (permalink / raw)
  To: Andrew Morton, Linux Kernel ML

On Wednesday 05 May 2004 10:31, you wrote:
> +make-4k-stacks-permanent.patch
>
>  Fill my inbox.

Hi Andrew!

Is there any reason why this patch was applied? Because NVidia users can't 
work with the original drivers now without removing this patch every time.

greets Dominik

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
  2004-05-05 11:10   ` Ralf Hildebrandt
@ 2004-05-05 11:13   ` Jan-Benedict Glaw
  2004-05-05 11:24   ` Arjan van de Ven
                     ` (2 subsequent siblings)
  4 siblings, 0 replies; 94+ messages in thread
From: Jan-Benedict Glaw @ 2004-05-05 11:13 UTC (permalink / raw)
  To: Linux Kernel ML

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

On Wed, 2004-05-05 13:12:30 +0200, Dominik Karall <dominik.karall@gmx.net>
wrote in message <200405051312.30626.dominik.karall@gmx.net>:
> On Wednesday 05 May 2004 10:31, you wrote:
> > +make-4k-stacks-permanent.patch
> >
> >  Fill my inbox.
> 
> Is there any reason why this patch was applied? Because NVidia users can't 
> work with the original drivers now without removing this patch every time.

Wrong place to ask:)  Go, ask NVidia for a solution. Their driver would
long be working with 4K stacks if they had open-sourced it...

MfG, JBG

-- 
   Jan-Benedict Glaw       jbglaw@lug-owl.de    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
   ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
  2004-05-05 11:10   ` Ralf Hildebrandt
  2004-05-05 11:13   ` Jan-Benedict Glaw
@ 2004-05-05 11:24   ` Arjan van de Ven
  2004-05-05 11:30   ` Andrew Morton
  2004-05-05 18:22   ` Valdis.Kletnieks
  4 siblings, 0 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-05 11:24 UTC (permalink / raw)
  To: Dominik Karall; +Cc: Andrew Morton, Linux Kernel ML

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

On Wed, 2004-05-05 at 13:12, Dominik Karall wrote:
> On Wednesday 05 May 2004 10:31, you wrote:
> > +make-4k-stacks-permanent.patch
> >
> >  Fill my inbox.
> 
> Hi Andrew!
> 
> Is there any reason why this patch was applied? Because NVidia users 
 
nvidia users can use the nv driver instead? And/Or ask the nvidia binary
only people for a fixed driver ?

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
                     ` (2 preceding siblings ...)
  2004-05-05 11:24   ` Arjan van de Ven
@ 2004-05-05 11:30   ` Andrew Morton
  2004-05-05 12:09     ` Rene Herman
                       ` (2 more replies)
  2004-05-05 18:22   ` Valdis.Kletnieks
  4 siblings, 3 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-05 11:30 UTC (permalink / raw)
  To: Dominik Karall; +Cc: linux-kernel

Dominik Karall <dominik.karall@gmx.net> wrote:
>
> On Wednesday 05 May 2004 10:31, you wrote:
> > +make-4k-stacks-permanent.patch
> >
> >  Fill my inbox.
> 
> Hi Andrew!
> 
> Is there any reason why this patch was applied? Because NVidia users can't 
> work with the original drivers now without removing this patch every time.
> 

We need to push this issue along quickly.  The single-page stack generally
gives us a better kernel and having the stack size configurable creates
pain.

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:30   ` Andrew Morton
@ 2004-05-05 12:09     ` Rene Herman
  2004-05-05 16:47     ` Steve Lord
  2004-05-05 20:31     ` Bill Davidsen
  2 siblings, 0 replies; 94+ messages in thread
From: Rene Herman @ 2004-05-05 12:09 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

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

Andrew Morton wrote:

> We need to push this issue along quickly.  The single-page stack generally
> gives us a better kernel and having the stack size configurable creates
> pain.

Hi. No idea if you want this. Not seeing 4KSTACKS in there made me recheck.

Rene.

[-- Attachment #2: linux-2.6.6-rc3-mm2_vermagic-4kstacks.diff --]
[-- Type: text/plain, Size: 456 bytes --]

# restore 4KSTACKS to VERMAGIC

--- linux-2.6.6-rc3-mm2/include/asm-i386/module.h.orig	2004-05-05 13:51:29.000000000 +0200
+++ linux-2.6.6-rc3-mm2/include/asm-i386/module.h	2004-05-05 13:52:26.000000000 +0200
@@ -60,11 +60,7 @@
 #define MODULE_REGPARM ""
 #endif
 
-#ifdef CONFIG_4KSTACKS
 #define MODULE_STACKSIZE "4KSTACKS "
-#else
-#define MODULE_STACKSIZE ""
-#endif
 
 #define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_REGPARM MODULE_STACKSIZE
 

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

* Re: 2.6.6-rc3-mm2 [delete-posix-...-unifix-message]
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (2 preceding siblings ...)
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
@ 2004-05-05 13:31 ` Paul Jackson
  2004-05-05 15:33 ` 2.6.6-rc3-mm2 Christoph Hellwig
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 94+ messages in thread
From: Paul Jackson @ 2004-05-05 13:31 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

The broken out patch:

  delete-posix-conformance-testing-by-unifix-message.patch

is empty, except for the comment.

The actual change is missing in:

 1) the ftp directory 2.6.6-rc3-mm2/broken-out
 2) the broken-out tarball 2.6.6-rc3-mm2-broken-out.tar.bz2
 3) the monolithich patch 2.6.6-rc3-mm2.bz2

Presumably something like the following patch is intended:

========================== begin snip ==========================
From: "Randy.Dunlap" <rddunlap@osdl.org>

There is a general desire to reduce the quantity of noisy and/or
outdated kernel boot-time messages...

Suggested by Andi Kleen.

Ulrich's (old) comments:
http://www.nsa.gov/selinux/list-archive/0107/0525.cfm

Certifying Linux (Linux Journal):
http://www.linuxjournal.com/article.php?sid=0131


Index: 2.6.6-rc3-mm2/init/main.c
===================================================================
--- 2.6.6-rc3-mm2.orig/init/main.c	2004-05-05 06:11:32.000000000 -0700
+++ 2.6.6-rc3-mm2/init/main.c	2004-05-05 06:27:12.000000000 -0700
@@ -521,7 +521,6 @@
 	proc_root_init();
 #endif
 	check_bugs();
-	printk("POSIX conformance testing by UNIFIX\n");
 
 	/* 
 	 *	We count on the initial thread going ok 
========================== end snip ==========================

-- 
                          I won't rest till it's the best ...
                          Programmer, Linux Scalability
                          Paul Jackson <pj@sgi.com> 1.650.933.1373

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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (3 preceding siblings ...)
  2004-05-05 13:31 ` 2.6.6-rc3-mm2 [delete-posix-...-unifix-message] Paul Jackson
@ 2004-05-05 15:33 ` Christoph Hellwig
  2004-05-05 17:59   ` 2.6.6-rc3-mm2 Arnd Bergmann
  2004-05-05 16:06 ` 2.6.6-rc3-mm2 Paul Jackson
                   ` (6 subsequent siblings)
  11 siblings, 1 reply; 94+ messages in thread
From: Christoph Hellwig @ 2004-05-05 15:33 UTC (permalink / raw)
  To: Andrew Morton, arnd; +Cc: linux-kernel

On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
>static-define_per_cpu-vs-modules-2.patch
> 
>  Work around relative address displacement problems on s390.

I'm not happy with this one.  It prevents perfectly valid optimizations
that become more important with modern compilers because of s390 brokenness.

Of the options listed in the patch description (why the heck didn't it ever
make it to a mailinglist??) the options to avoid the static effect in s390
code looks most appealing but hard to implement to me, and if it doesn't
work out we'll probably have to do the STATIC_DEFINE_PER_CPU variant.


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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (4 preceding siblings ...)
  2004-05-05 15:33 ` 2.6.6-rc3-mm2 Christoph Hellwig
@ 2004-05-05 16:06 ` Paul Jackson
  2004-05-05 16:40   ` 2.6.6-rc3-mm2 Christoph Hellwig
  2004-05-05 20:16   ` 2.6.6-rc3-mm2 R. J. Wysocki
  2004-05-05 17:10 ` 2.6.6-rc3-mm2 (compile stats) John Cherry
                   ` (5 subsequent siblings)
  11 siblings, 2 replies; 94+ messages in thread
From: Paul Jackson @ 2004-05-05 16:06 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

This doesn't build for ia64 sn2_defconfig (probably not for numa in general).
One of Andi's patches, numa-api-vma-policy-hooks.patch, is missing four
#includes of linux/mempolicy.h.

I have posted an updated version of that patch on Andi's numa thread of a
month ago - cc'd to akpm.

With this updated patch, this configuration builds.

-- 
                          I won't rest till it's the best ...
                          Programmer, Linux Scalability
                          Paul Jackson <pj@sgi.com> 1.650.933.1373

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

* Re: 2.6.6-rc3-mm2
  2004-05-05 16:06 ` 2.6.6-rc3-mm2 Paul Jackson
@ 2004-05-05 16:40   ` Christoph Hellwig
  2004-05-05 16:49     ` 2.6.6-rc3-mm2 Paul Jackson
  2004-05-05 20:16   ` 2.6.6-rc3-mm2 R. J. Wysocki
  1 sibling, 1 reply; 94+ messages in thread
From: Christoph Hellwig @ 2004-05-05 16:40 UTC (permalink / raw)
  To: Paul Jackson; +Cc: Andrew Morton, linux-kernel

On Wed, May 05, 2004 at 09:06:05AM -0700, Paul Jackson wrote:
> This doesn't build for ia64 sn2_defconfig (probably not for numa in general).
> One of Andi's patches, numa-api-vma-policy-hooks.patch, is missing four
> #includes of linux/mempolicy.h.

That's actually my fault most likely.  The removal of mempolicy.h from sched.h
and mm.h will need adjustments in quite a few arch files.


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:30   ` Andrew Morton
  2004-05-05 12:09     ` Rene Herman
@ 2004-05-05 16:47     ` Steve Lord
  2004-05-05 18:48       ` Felipe Alfaro Solana
                         ` (2 more replies)
  2004-05-05 20:31     ` Bill Davidsen
  2 siblings, 3 replies; 94+ messages in thread
From: Steve Lord @ 2004-05-05 16:47 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Dominik Karall, linux-kernel

Andrew Morton wrote:
> Dominik Karall <dominik.karall@gmx.net> wrote:
> 
>>On Wednesday 05 May 2004 10:31, you wrote:
>>
>>>+make-4k-stacks-permanent.patch
>>>
>>> Fill my inbox.
>>
>>Hi Andrew!
>>
>>Is there any reason why this patch was applied? Because NVidia users can't 
>>work with the original drivers now without removing this patch every time.
>>
> 
> 
> We need to push this issue along quickly.  The single-page stack generally
> gives us a better kernel and having the stack size configurable creates
> pain.

Is it less pain than making something like a memory allocation which comes
out of a deep stack? Say, nfs server -> filesystem -> lvm/raid -> fiber channel,
which itself does something like a writepage into an nfs filesystem and ends
up in the networking stack? OK, getting back into the filesystem on a
memory allocation from the block layer should not happen, but you could
certainly be down in the bowels of the first filesystem when this happens.

There are other combinations which worry me. I do wonder how close to the
edge some of these are living now and cutting them off at the knees, stack
wise, is going to bite later. How many folks run the mm kernel in production
server environments?

Maybe there should be a competition to see how convoluted a stack you can
generate out of the kernel ;-)

Steve




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

* Re: 2.6.6-rc3-mm2
  2004-05-05 16:40   ` 2.6.6-rc3-mm2 Christoph Hellwig
@ 2004-05-05 16:49     ` Paul Jackson
  0 siblings, 0 replies; 94+ messages in thread
From: Paul Jackson @ 2004-05-05 16:49 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: akpm, linux-kernel

> That's actually my fault most likely.

Aha - we just arrived at the same conclusion - must be right ;).

-- 
                          I won't rest till it's the best ...
                          Programmer, Linux Scalability
                          Paul Jackson <pj@sgi.com> 1.650.933.1373

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

* Re: 2.6.6-rc3-mm2 (compile stats)
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (5 preceding siblings ...)
  2004-05-05 16:06 ` 2.6.6-rc3-mm2 Paul Jackson
@ 2004-05-05 17:10 ` John Cherry
  2004-05-05 17:33 ` 2.6.6-rc3-mm2 [sparc, sparc64, mips syscall broken] Paul Jackson
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 94+ messages in thread
From: John Cherry @ 2004-05-05 17:10 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

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

Kernel            bzImage   bzImage  bzImage  modules  bzImage  modules
                (defconfig) (allno) (allyes) (allyes) (allmod) (allmod)
--------------- ---------- -------- -------- -------- -------- --------
2.6.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] 94+ messages in thread

* Re: 2.6.6-rc3-mm2 [sparc, sparc64, mips syscall broken]
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (6 preceding siblings ...)
  2004-05-05 17:10 ` 2.6.6-rc3-mm2 (compile stats) John Cherry
@ 2004-05-05 17:33 ` Paul Jackson
  2004-05-05 23:29 ` 2.6.6-rc3-mm2: vermagic compile error if CONFIG_MODULES=n Adrian Bunk
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 94+ messages in thread
From: Paul Jackson @ 2004-05-05 17:33 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

She doesn't build for sparc64 either (using crosstool).  And I'd
wager a pretty penny this applies to sparc and mips as well.

The patch kernel-syscalls-retval-fix.patch is missing a bunch of
semicolons.  Several lines that look like:

	__syscall_return(type, __res) \

should instead be:

	__syscall_return(type, __res); \

Here's the 2.6.6-rc3-mm2 kernel-syscalls-retval-fix.patch updated with
this change, for all three sparc, sparc64, and mips.  I am only able to
test build sparc64, and unable to test boot any of this.  With this
change, sparc64 built.

============================ snip ============================



Index: 2.6.6-rc3-mm2/include/asm-alpha/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-alpha/unistd.h	2004-05-05 09:35:45.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-alpha/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -378,8 +378,12 @@
 
 #if defined(__GNUC__)
 
+#ifdef __KERNEL__
+#define _syscall_return(type)	return ((type) _sc_ret)
+#else
 #define _syscall_return(type)						\
 	return (_sc_err ? errno = _sc_ret, _sc_ret = -1L : 0), (type) _sc_ret
+#endif
 
 #define _syscall_clobbers						\
 	"$1", "$2", "$3", "$4", "$5", "$6", "$7", "$8",			\
Index: 2.6.6-rc3-mm2/include/asm-arm26/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-arm26/unistd.h	2004-05-05 09:33:36.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-arm26/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -277,6 +277,9 @@
 #define __syscall(name) "swi\t" __sys1(__NR_##name) "\n\t"
 #endif
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res)					\
 do {									\
 	if ((unsigned long)(res) >= (unsigned long)(-125)) {		\
@@ -285,6 +288,7 @@
 	}								\
 	return (type) (res);						\
 } while (0)
+#endif
 
 #define _syscall0(type,name)						\
 type name(void) {							\
Index: 2.6.6-rc3-mm2/include/asm-arm/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-arm/unistd.h	2004-05-05 09:33:34.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-arm/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -324,6 +324,9 @@
 #endif
 #endif
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res)					\
 do {									\
 	if ((unsigned long)(res) >= (unsigned long)(-125)) {		\
@@ -332,6 +335,7 @@
 	}								\
 	return (type) (res);						\
 } while (0)
+#endif
 
 #define _syscall0(type,name)						\
 type name(void) {							\
Index: 2.6.6-rc3-mm2/include/asm-h8300/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-h8300/unistd.h	2004-05-05 09:33:42.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-h8300/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -276,6 +276,9 @@
 /* user-visible error numbers are in the range -1 - -122: see
    <asm-m68k/errno.h> */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res) \
 do { \
 	if ((unsigned long)(res) >= (unsigned long)(-125)) { \
@@ -287,6 +290,7 @@
 	} \
 	return (type) (res); \
 } while (0)
+#endif
 
 #define _syscall0(type, name)							\
 type name(void)									\
Index: 2.6.6-rc3-mm2/include/asm-i386/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-i386/unistd.h	2004-05-05 09:33:43.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-i386/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -293,6 +293,9 @@
 
 /* user-visible error numbers are in the range -1 - -124: see <asm-i386/errno.h> */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res) \
 do { \
 	if ((unsigned long)(res) >= (unsigned long)(-125)) { \
@@ -301,6 +304,7 @@
 	} \
 	return (type) (res); \
 } while (0)
+#endif
 
 /* XXX - _foo needs to be __foo, while __NR_bar could be _NR_bar. */
 #define _syscall0(type,name) \
Index: 2.6.6-rc3-mm2/include/asm-m68knommu/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-m68knommu/unistd.h	2004-05-05 09:33:46.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-m68knommu/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -226,17 +226,18 @@
 /* user-visible error numbers are in the range -1 - -122: see
    <asm-m68k/errno.h> */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res) \
 do { \
 	if ((unsigned long)(res) >= (unsigned long)(-125)) { \
-	/* avoid using res which is declared to be in register d0; \
-	   errno might expand to a function call and clobber it.  */ \
-		int __err = -(res); \
-		errno = __err; \
+		errno = -(res); \
 		res = -1; \
 	} \
 	return (type) (res); \
 } while (0)
+#endif
 
 #define _syscall0(type, name)							\
 type name(void)									\
@@ -248,11 +249,7 @@
 			: "=g" (__res)						\
 			: "i" (__NR_##name)					\
 			: "cc", "%d0");						\
-  if ((unsigned long)(__res) >= (unsigned long)(-125)) {				\
-    errno = -__res;								\
-    __res = -1;									\
-  }										\
-  return (type)__res;								\
+  __syscall_return(type, __res);						\
 }
 
 #define _syscall1(type, name, atype, a)						\
@@ -267,11 +264,7 @@
 			: "i" (__NR_##name),					\
 			  "g" ((long)a)						\
 			: "cc", "%d0", "%d1");					\
-  if ((unsigned long)(__res) >= (unsigned long)(-125)) {				\
-    errno = -__res;								\
-    __res = -1;									\
-  }										\
-  return (type)__res;								\
+  __syscall_return(type, __res);						\
 }
 
 #define _syscall2(type, name, atype, a, btype, b)				\
@@ -288,11 +281,7 @@
 			  "a" ((long)a),					\
 			  "g" ((long)b)						\
 			: "cc", "%d0", "%d1", "%d2");				\
-  if ((unsigned long)(__res) >= (unsigned long)(-125)) {				\
-    errno = -__res;								\
-    __res = -1;									\
-  }										\
-  return (type)__res;								\
+  __syscall_return(type, __res);						\
 }
 
 #define _syscall3(type, name, atype, a, btype, b, ctype, c)			\
@@ -311,11 +300,7 @@
 			  "a" ((long)b),					\
 			  "g" ((long)c)						\
 			: "cc", "%d0", "%d1", "%d2", "%d3");			\
-  if ((unsigned long)(__res) >= (unsigned long)(-125)) {				\
-    errno = -__res;								\
-    __res = -1;									\
-  }										\
-  return (type)__res;								\
+  __syscall_return(type, __res);						\
 }
 
 #define _syscall4(type, name, atype, a, btype, b, ctype, c, dtype, d)		\
@@ -337,11 +322,7 @@
 			  "g" ((long)d)						\
 			: "cc", "%d0", "%d1", "%d2", "%d3",			\
 			  "%d4");						\
-  if ((unsigned long)(__res) >= (unsigned long)(-125)) {				\
-    errno = -__res;								\
-    __res = -1;									\
-  }										\
-  return (type)__res;								\
+  __syscall_return(type, __res);						\
 }
 
 #define _syscall5(type, name, atype, a, btype, b, ctype, c, dtype, d, etype, e)	\
@@ -365,11 +346,7 @@
 			  "g" ((long)e)						\
 			: "cc", "%d0", "%d1", "%d2", "%d3",			\
 			  "%d4", "%d5");					\
-  if ((unsigned long)(__res) >= (unsigned long)(-125)) {				\
-    errno = -__res;								\
-    __res = -1;									\
-  }										\
-  return (type)__res;								\
+  __syscall_return(type, __res);						\
 }
 
 
Index: 2.6.6-rc3-mm2/include/asm-m68k/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-m68k/unistd.h	2004-05-05 09:33:46.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-m68k/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -244,6 +244,9 @@
 /* user-visible error numbers are in the range -1 - -124: see
    <asm-m68k/errno.h> */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res) \
 do { \
 	if ((unsigned long)(res) >= (unsigned long)(-125)) { \
@@ -255,6 +258,7 @@
 	} \
 	return (type) (res); \
 } while (0)
+#endif
 
 #define _syscall0(type,name) \
 type name(void) \
Index: 2.6.6-rc3-mm2/include/asm-mips/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-mips/unistd.h	2004-05-05 09:35:58.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-mips/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -820,6 +820,16 @@
 
 #ifndef __ASSEMBLY__
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
+do { \
+	if (__a3 == 0) \
+		return (type)(res); \
+	errno = res; \
+	return -1; \
+} while (0)
+
 /* XXX - _foo needs to be __foo, while __NR_bar could be _NR_bar. */
 #define _syscall0(type,name) \
 type name(void) \
@@ -837,10 +847,7 @@
 	: "i" (__NR_##name) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 /*
@@ -864,10 +871,7 @@
 	: "r" (__a0), "i" (__NR_##name) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #define _syscall2(type,name,atype,a,btype,b) \
@@ -888,10 +892,7 @@
 	: "r" (__a0), "r" (__a1), "i" (__NR_##name) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #define _syscall3(type,name,atype,a,btype,b,ctype,c) \
@@ -913,10 +914,7 @@
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #define _syscall4(type,name,atype,a,btype,b,ctype,c,dtype,d) \
@@ -938,10 +936,7 @@
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #if (_MIPS_SIM == _MIPS_SIM_ABI32)
@@ -974,10 +969,7 @@
 	  "m" ((unsigned long)e) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \
@@ -1006,10 +998,7 @@
 	  "m" ((unsigned long)e), "m" ((unsigned long)f) \
 	: "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */
@@ -1036,10 +1025,7 @@
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name) \
 	: "$2","$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \
@@ -1064,10 +1050,7 @@
 	  "i" (__NR_##name) \
 	: "$2","$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24"); \
 	\
-	if (__a3 == 0) \
-		return (type) __v0; \
-	errno = __v0; \
-	return -1; \
+	__syscall_return(type, __v0); \
 }
 
 #endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
Index: 2.6.6-rc3-mm2/include/asm-parisc/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-parisc/unistd.h	2004-05-05 09:33:49.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-parisc/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -739,6 +739,17 @@
 
 #define SYS_ify(syscall_name)   __NR_##syscall_name
 
+#ifdef __KERNEL__
+#define __syscall_return __sys_res
+#else
+#define __syscall_return					\
+        if (__sys_res >= (unsigned long)-4095) {		\
+		errno = -__sys_res;				\
+                __sys_res = (unsigned long)-1;			\
+        }							\
+        __sys_res;						\
+#endif
+
 /* The system call number MUST ALWAYS be loaded in the delay slot of
    the ble instruction, or restarting system calls WILL NOT WORK.  See
    arch/parisc/kernel/signal.c - dhd, 2000-07-26 */
@@ -755,11 +766,7 @@
 			  );                                    \
                 __sys_res = __res;                              \
         }                                                       \
-        if (__sys_res >= (unsigned long)-4095) {                \
-		errno = -__sys_res;				\
-                __sys_res = (unsigned long)-1;                 \
-        }                                                       \
-        __sys_res;                                              \
+	__syscall_return					\
 })
 
 #define K_LOAD_ARGS_0()
Index: 2.6.6-rc3-mm2/include/asm-ppc64/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-ppc64/unistd.h	2004-05-05 09:33:51.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-ppc64/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -286,6 +286,19 @@
 
 #ifndef __ASSEMBLY__
 
+#ifdef __KERNEL__
+#define __syscall_return						\
+	if (__sc_err & 0x10000000)					\
+		__sc_ret = - __sc_ret;
+#else
+#define __syscall_return						\
+	if (__sc_err & 0x10000000)					\
+	{								\
+		errno = __sc_ret;					\
+		__sc_ret = -1;						\
+	}
+#endif
+
 /* On powerpc a system call basically clobbers the same registers like a
  * function call, with the exception of LR (which is needed for the
  * "sc; bnslr" sequence) and CR (where only CR0.SO is clobbered to signal
@@ -317,11 +330,7 @@
 		__sc_ret = __sc_3;					\
 		__sc_err = __sc_0;					\
 	}								\
-	if (__sc_err & 0x10000000)					\
-	{								\
-		errno = __sc_ret;					\
-		__sc_ret = -1;						\
-	}								\
+	__syscall_return						\
 	return (type) __sc_ret
 
 #define __sc_loadargs_0(name, dummy...)					\
Index: 2.6.6-rc3-mm2/include/asm-ppc/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-ppc/unistd.h	2004-05-05 09:33:49.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-ppc/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -277,6 +277,19 @@
 
 #define __NR(n)	#n
 
+#ifdef __KERNEL__
+#define __syscall_return						\
+	if (__sc_err & 0x10000000)					\
+		__sc_ret = - __sc_ret;
+#else
+#define __syscall_return						\
+	if (__sc_err & 0x10000000)					\
+	{								\
+		errno = __sc_ret;					\
+		__sc_ret = -1;						\
+	}
+#endif
+
 /* On powerpc a system call basically clobbers the same registers like a
  * function call, with the exception of LR (which is needed for the
  * "sc; bnslr" sequence) and CR (where only CR0.SO is clobbered to signal
@@ -307,11 +320,7 @@
 		__sc_ret = __sc_3;					\
 		__sc_err = __sc_0;					\
 	}								\
-	if (__sc_err & 0x10000000)					\
-	{								\
-		errno = __sc_ret;					\
-		__sc_ret = -1;						\
-	}								\
+	__syscall_return						\
 	return (type) __sc_ret
 
 #define __sc_loadargs_0(name, dummy...)					\
Index: 2.6.6-rc3-mm2/include/asm-s390/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-s390/unistd.h	2004-05-05 09:35:45.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-s390/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -360,6 +360,9 @@
 
 /* user-visible error numbers are in the range -1 - -122: see <asm-s390/errno.h> */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res)			     \
 do {							     \
 	if ((unsigned long)(res) >= (unsigned long)(-125)) { \
@@ -368,6 +371,7 @@
 	}						     \
 	return (type) (res);				     \
 } while (0)
+#endif
 
 #define _svc_clobber "1", "cc", "memory"
 
Index: 2.6.6-rc3-mm2/include/asm-sh/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-sh/unistd.h	2004-05-05 09:33:51.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-sh/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -286,6 +286,9 @@
 
 /* user-visible error numbers are in the range -1 - -124: see <asm-sh/errno.h> */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res) \
 do { \
 	if ((unsigned long)(res) >= (unsigned long)(-124)) { \
@@ -297,6 +300,7 @@
 	} \
 	return (type) (res); \
 } while (0)
+#endif
 
 /* XXX - _foo needs to be __foo, while __NR_bar could be _NR_bar. */
 #define _syscall0(type,name) \
Index: 2.6.6-rc3-mm2/include/asm-sparc64/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-sparc64/unistd.h	2004-05-05 09:33:53.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-sparc64/unistd.h	2004-05-05 10:02:44.000000000 -0700
@@ -303,6 +303,16 @@
  *          find a free slot in the 0-282 range.
  */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
+#define __syscall_return(type, res)		\
+	if (res >= 0)				\
+		return (type)res;		\
+	errno = -res;				\
+	return -1;
+#endif
+
 #define _syscall0(type,name) \
 type name(void) \
 { \
@@ -314,10 +324,7 @@
 		      : "=r" (__res)\
 		      : "r" (__g1) \
 		      : "o0", "cc"); \
-if (__res >= 0) \
-    return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall1(type,name,type1,arg1) \
@@ -332,10 +339,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__g1) \
 		      : "cc"); \
-if (__res >= 0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall2(type,name,type1,arg1,type2,arg2) \
@@ -351,10 +355,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__g1) \
 		      : "cc"); \
-if (__res >= 0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
@@ -371,10 +372,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
 		      : "cc"); \
-if (__res>=0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall4(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
@@ -392,10 +390,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
 		      : "cc"); \
-if (__res>=0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 } 
 
 #define _syscall5(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
@@ -415,10 +410,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
 		      : "cc"); \
-if (__res>=0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 #ifdef __KERNEL_SYSCALLS__
 
Index: 2.6.6-rc3-mm2/include/asm-sparc/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-sparc/unistd.h	2004-05-05 09:33:52.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-sparc/unistd.h	2004-05-05 10:02:24.000000000 -0700
@@ -302,6 +302,16 @@
  *          find a free slot in the 0-282 range.
  */
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
+#define __syscall_return(type, res)		\
+	if (res < -255 || res >= 0)		\
+		return (type)res;		\
+	errno = -res;				\
+	return -1;
+#endif
+
 #define _syscall0(type,name) \
 type name(void) \
 { \
@@ -315,10 +325,7 @@
 		      : "=r" (__res)\
 		      : "r" (__g1) \
 		      : "o0", "cc"); \
-if (__res < -255 || __res >= 0) \
-    return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall1(type,name,type1,arg1) \
@@ -335,10 +342,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__g1) \
 		      : "cc"); \
-if (__res < -255 || __res >= 0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall2(type,name,type1,arg1,type2,arg2) \
@@ -356,10 +360,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__g1) \
 		      : "cc"); \
-if (__res < -255 || __res >= 0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
@@ -378,10 +379,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
 		      : "cc"); \
-if (__res < -255 || __res>=0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 
 #define _syscall4(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
@@ -401,10 +399,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
 		      : "cc"); \
-if (__res < -255 || __res>=0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 } 
 
 #define _syscall5(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
@@ -426,10 +421,7 @@
 		      : "=r" (__res), "=&r" (__o0) \
 		      : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
 		      : "cc"); \
-if (__res < -255 || __res>=0) \
-	return (type) __res; \
-errno = -__res; \
-return -1; \
+	__syscall_return(type, __res); \
 }
 #ifdef __KERNEL_SYSCALLS__
 
Index: 2.6.6-rc3-mm2/include/asm-v850/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-v850/unistd.h	2004-05-05 09:33:54.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-v850/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -245,6 +245,9 @@
 #define __builtin_expect(x, expected_value) (x)
 #endif
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res)					      \
   do {									      \
 	  /* user-visible error numbers are in the range -1 - -124:	      \
@@ -255,7 +258,7 @@
 	  }								      \
 	  return (type) (res);						      \
   } while (0)
-
+#endif
 
 #define _syscall0(type, name)						      \
 type name (void)							      \
Index: 2.6.6-rc3-mm2/include/asm-x86_64/unistd.h
===================================================================
--- 2.6.6-rc3-mm2.orig/include/asm-x86_64/unistd.h	2004-05-05 09:35:55.000000000 -0700
+++ 2.6.6-rc3-mm2/include/asm-x86_64/unistd.h	2004-05-05 09:36:24.000000000 -0700
@@ -560,6 +560,9 @@
 
 #define __syscall_clobber "r11","rcx","memory" 
 
+#ifdef __KERNEL__
+#define __syscall_return(type, res) return ((type)(res))
+#else
 #define __syscall_return(type, res) \
 do { \
 	if ((unsigned long)(res) >= (unsigned long)(-127)) { \
@@ -568,6 +571,7 @@
 	} \
 	return (type) (res); \
 } while (0)
+#endif
 
 #ifndef __KERNEL_SYSCALLS__
 
============================ snip ============================


-- 
                          I won't rest till it's the best ...
                          Programmer, Linux Scalability
                          Paul Jackson <pj@sgi.com> 1.650.933.1373

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

* Re: 2.6.6-rc3-mm2
  2004-05-05 15:33 ` 2.6.6-rc3-mm2 Christoph Hellwig
@ 2004-05-05 17:59   ` Arnd Bergmann
  0 siblings, 0 replies; 94+ messages in thread
From: Arnd Bergmann @ 2004-05-05 17:59 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Andrew Morton, linux-kernel, Martin Schwidefsky

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

On Wednesday 05 May 2004 17:33, Christoph Hellwig wrote:
> On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
> >static-define_per_cpu-vs-modules-2.patch
> > 
> >  Work around relative address displacement problems on s390.
> 
> I'm not happy with this one.  It prevents perfectly valid optimizations
> that become more important with modern compilers because of s390 brokenness.
> 
> Of the options listed in the patch description (why the heck didn't it ever
> make it to a mailinglist??) the options to avoid the static effect in s390
> code looks most appealing but hard to implement to me, and if it doesn't
> work out we'll probably have to do the STATIC_DEFINE_PER_CPU variant.

When I prepared that patch, I was certain that the bug was not s390
specific, as it now turned out to be. The reason is that only on s390, the
kernel virtual address space for builtin code is the same as the physical
address space while modules are loaded to the vmalloc area, which may be >32
bit apart.

For exported symbols, we work around this by compiling modules with -fpic,
which does not work for per_cpu relocations.

Martin was now able to do a similar workaround for these by loading the
address through inline assembly without affecting the other architectures,
following a suggestion by Richard Henderson. This is his patch:

Force the use of a 64 bit relocation to access the per_cpu__##var
variables and fix a problem in the module loader regarding GOTENT and 
GOTPLTENT relocs.

diff -urN linux-2.6/arch/s390/kernel/module.c linux-2.6-s390/arch/s390/kernel/module.c
--- linux-2.6/arch/s390/kernel/module.c	Sun Apr  4 05:38:13 2004
+++ linux-2.6-s390/arch/s390/kernel/module.c	Wed May  5 19:40:22 2004
@@ -277,7 +277,8 @@
 			*(unsigned int *) loc = val;
 		else if (r_type == R_390_GOTENT ||
 			 r_type == R_390_GOTPLTENT)
-			*(unsigned int *) loc = val >> 1;
+			*(unsigned int *) loc =
+				(val + (Elf_Addr) me->module_core - loc) >> 1;
 		else if (r_type == R_390_GOT64 ||
 			 r_type == R_390_GOTPLT64)
 			*(unsigned long *) loc = val;
diff -urN linux-2.6/include/asm-s390/percpu.h linux-2.6-s390/include/asm-s390/percpu.h
--- linux-2.6/include/asm-s390/percpu.h	Sun Apr  4 05:38:20 2004
+++ linux-2.6-s390/include/asm-s390/percpu.h	Wed May  5 19:40:22 2004
@@ -5,10 +5,26 @@
 #include <asm/lowcore.h>
 
 /*
- * s390 uses the generic implementation for per cpu data, with the exception that
- * the offset of the cpu local data area is cached in the cpu's lowcore memory
+ * For builtin kernel code s390 uses the generic implementation for
+ * per cpu data, with the exception that the offset of the cpu local
+ * data area is cached in the cpu's lowcore memory
+ * For 64 bit module code s390 forces the use of a GOT slot for the
+ * address of the per cpu variable. This is needed because the module
+ * may be more than 4G above the per cpu area.
  */
+#if defined(__s390x__) && defined(MODULE)
+#define __get_got_cpu_var(var,offset) \
+  (*({ unsigned long *__ptr; \
+       asm ( "larl %0,per_cpu__"#var"@GOTENT" : "=a" (__ptr) ); \
+       ((typeof(&per_cpu__##var))((*__ptr) + offset)); \
+    }))
+#undef __get_cpu_var
+#define __get_cpu_var(var) __get_got_cpu_var(var,S390_lowcore.percpu_offset)
+#undef per_cpu
+#define per_cpu(var,cpu) __get_got_cpu_var(var,__per_cpu_offset[cpu])
+#else
 #undef __get_cpu_var
 #define __get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, S390_lowcore.percpu_offset))
+#endif
 
 #endif /* __ARCH_S390_PERCPU__ */

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK) 
  2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
                     ` (3 preceding siblings ...)
  2004-05-05 11:30   ` Andrew Morton
@ 2004-05-05 18:22   ` Valdis.Kletnieks
  2004-05-05 21:51     ` Jörn Engel
  4 siblings, 1 reply; 94+ messages in thread
From: Valdis.Kletnieks @ 2004-05-05 18:22 UTC (permalink / raw)
  To: Dominik Karall; +Cc: Andrew Morton, Linux Kernel ML

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

On Wed, 05 May 2004 13:12:30 +0200, Dominik Karall <dominik.karall@gmx.net>  said:

> Is there any reason why this patch was applied? Because NVidia users can't 
> work with the original drivers now without removing this patch every time.

The NVidia users will also have to back out the regparm patch, or insert
'asmlinkage' on all the appropriate definitions in the glue code.  Note that
the patches on www.minion.de already fix this for the 5341 drivers as of
03/24/2004.

In any case, even though I'm one of those NVidia users, I'm OK with the
patch being in there - anybody who's clued enough to build and run a -mm
kernel shouldn't have much trouble figuring out how to build it with 2 patches
reverted.

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 16:47     ` Steve Lord
@ 2004-05-05 18:48       ` Felipe Alfaro Solana
  2004-05-05 19:51       ` Arjan van de Ven
  2004-05-06 17:44       ` Max Valdez
  2 siblings, 0 replies; 94+ messages in thread
From: Felipe Alfaro Solana @ 2004-05-05 18:48 UTC (permalink / raw)
  To: Steve Lord; +Cc: Andrew Morton, Dominik Karall, Kernel Mailinglist

On Wed, 2004-05-05 at 18:47, Steve Lord wrote:

> There are other combinations which worry me. I do wonder how close to the
> edge some of these are living now and cutting them off at the knees, stack
> wise, is going to bite later. How many folks run the mm kernel in production
> server environments?

Me... Although the servers aren't critical. However, I know I'm a
minority...


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 16:47     ` Steve Lord
  2004-05-05 18:48       ` Felipe Alfaro Solana
@ 2004-05-05 19:51       ` Arjan van de Ven
  2004-05-05 19:56         ` Steve Lord
  2004-05-05 19:59         ` Arjan van de Ven
  2004-05-06 17:44       ` Max Valdez
  2 siblings, 2 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-05 19:51 UTC (permalink / raw)
  To: Steve Lord; +Cc: Andrew Morton, Dominik Karall, linux-kernel

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


> Is it less pain than making something like a memory allocation which comes
> out of a deep stack? Say, nfs server -> filesystem -> lvm/raid -> fiber channel,
> which itself does something like a writepage into an nfs filesystem and ends
> up in the networking stack? OK, getting back into the filesystem on a
> memory allocation from the block layer should not happen, but you could
> certainly be down in

it's not really much different than the 2.4 kernel already has.
In 2.4 you have a 8Kb stack of which

First 1600 bytes (+/-) are for the task struct
about 4Kb of user context stack
>= 2Kb stack which is needed for irq context (both soft and hard)

In 2.6 with this patch you have

32 bytes for thread info
4Kb minus 32 bytes for context stack
SEPARATE softirq stack of 4K
SEPARATE hardirq stack of 4K

so in a way you have MORE stack space than in 2.4.

Now I'll fully admit the 2Kb is somewhat of a stochast, you only hit it
if you have iptable rules and 2 nic irq's arriving on the same cpu at an
unfortionate moment, but that doesn't mean it's a safe situation.


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 19:51       ` Arjan van de Ven
@ 2004-05-05 19:56         ` Steve Lord
  2004-05-05 19:59         ` Arjan van de Ven
  1 sibling, 0 replies; 94+ messages in thread
From: Steve Lord @ 2004-05-05 19:56 UTC (permalink / raw)
  To: arjanv; +Cc: Andrew Morton, Dominik Karall, linux-kernel

Arjan van de Ven wrote:
>>Is it less pain than making something like a memory allocation which comes
>>out of a deep stack? Say, nfs server -> filesystem -> lvm/raid -> fiber channel,
>>which itself does something like a writepage into an nfs filesystem and ends
>>up in the networking stack? OK, getting back into the filesystem on a
>>memory allocation from the block layer should not happen, but you could
>>certainly be down in
> 
> 
> it's not really much different than the 2.4 kernel already has.
> In 2.4 you have a 8Kb stack of which
> 
> First 1600 bytes (+/-) are for the task struct
> about 4Kb of user context stack
> 
>>= 2Kb stack which is needed for irq context (both soft and hard)
> 
> 
> In 2.6 with this patch you have
> 
> 32 bytes for thread info
> 4Kb minus 32 bytes for context stack
> SEPARATE softirq stack of 4K
> SEPARATE hardirq stack of 4K
> 
> so in a way you have MORE stack space than in 2.4.
> 
> Now I'll fully admit the 2Kb is somewhat of a stochast, you only hit it
> if you have iptable rules and 2 nic irq's arriving on the same cpu at an
> unfortionate moment, but that doesn't mean it's a safe situation.
> 

I agree with that, but that combination had a heck of a lot of soak time
on it. This stack crunching exercise is happening fairly early on in a
stable kernel series, that makes me nervous. A lot of new code showed up
in the meantime during 2.5 development which changed many of these
code paths.

You can do static code analysis and say which functions are stack hogs and
rework them, but the dynamic analysis is really hard to do for all possibly
combinations. Doing the dynamic analysis on someones production fileserver may
not be the wisest move ever made.

Steve


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 19:51       ` Arjan van de Ven
  2004-05-05 19:56         ` Steve Lord
@ 2004-05-05 19:59         ` Arjan van de Ven
  1 sibling, 0 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-05 19:59 UTC (permalink / raw)
  To: Steve Lord; +Cc: Andrew Morton, Dominik Karall, linux-kernel

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


> 
> Now I'll fully admit the 2Kb is somewhat of a stochast, you only hit it
> if you have iptable rules and 2 nic irq's arriving on the same cpu at an
> unfortionate moment, but that doesn't mean it's a safe situation.

s/safe/safer than 2.6/

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: 2.6.6-rc3-mm2
  2004-05-05 16:06 ` 2.6.6-rc3-mm2 Paul Jackson
  2004-05-05 16:40   ` 2.6.6-rc3-mm2 Christoph Hellwig
@ 2004-05-05 20:16   ` R. J. Wysocki
  2004-05-06  1:51     ` 2.6.6-rc3-mm2 Paul Jackson
  1 sibling, 1 reply; 94+ messages in thread
From: R. J. Wysocki @ 2004-05-05 20:16 UTC (permalink / raw)
  To: Paul Jackson; +Cc: linux-kernel

On Wednesday 05 of May 2004 18:06, Paul Jackson wrote:
> This doesn't build for ia64 sn2_defconfig (probably not for numa in
> general). One of Andi's patches, numa-api-vma-policy-hooks.patch, is
> missing four #includes of linux/mempolicy.h.
>
> I have posted an updated version of that patch on Andi's numa thread of a
> month ago - cc'd to akpm.
>
> With this updated patch, this configuration builds.

Can you, please, send it again?  I can't find that one (well, my fault, but 
anyway ...),

RJW

-- 
Rafael J. Wysocki,
SiSK
[tel. (+48) 605 053 693]
----------------------------
For a successful technology, reality must take precedence over public 
relations, for nature cannot be fooled.
					-- Richard P. Feynman



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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 11:30   ` Andrew Morton
  2004-05-05 12:09     ` Rene Herman
  2004-05-05 16:47     ` Steve Lord
@ 2004-05-05 20:31     ` Bill Davidsen
  2004-05-05 23:04       ` Bartlomiej Zolnierkiewicz
  2004-05-06 10:09       ` Helge Hafting
  2 siblings, 2 replies; 94+ messages in thread
From: Bill Davidsen @ 2004-05-05 20:31 UTC (permalink / raw)
  To: linux-kernel

Andrew Morton wrote:
> Dominik Karall <dominik.karall@gmx.net> wrote:
> 
>>On Wednesday 05 May 2004 10:31, you wrote:
>>
>>>+make-4k-stacks-permanent.patch
>>>
>>> Fill my inbox.
>>
>>Hi Andrew!
>>
>>Is there any reason why this patch was applied? Because NVidia users can't 
>>work with the original drivers now without removing this patch every time.
>>
> 
> 
> We need to push this issue along quickly.  The single-page stack generally
> gives us a better kernel and having the stack size configurable creates
> pain.

Add my voice to those who don't think 4k stacks are a good idea as a 
default, they break some things and seem to leave other paths (as others 
have noted) on the edge. I'm not sure what you have in mind as a "better 
kernel" but I'd rather have a worse kernel and not have to check 4k 
stack as a possible problem before looking at other things if I get bad 
behaviour.

Reliability first, performance later. We've lived with the config for a 
while, pain there is better than pain at runtime.

-- 
    -bill davidsen (davidsen@tmr.com)
"The secret to procrastination is to put things off until the
  last possible moment - but no longer"  -me

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 18:22   ` Valdis.Kletnieks
@ 2004-05-05 21:51     ` Jörn Engel
  2004-05-06 15:18       ` Valdis.Kletnieks
  0 siblings, 1 reply; 94+ messages in thread
From: Jörn Engel @ 2004-05-05 21:51 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Dominik Karall, Andrew Morton, Linux Kernel ML

On Wed, 5 May 2004 14:22:02 -0400, Valdis.Kletnieks@vt.edu wrote:
> On Wed, 05 May 2004 13:12:30 +0200, Dominik Karall <dominik.karall@gmx.net>  said:
> 
> > Is there any reason why this patch was applied? Because NVidia users can't 
> > work with the original drivers now without removing this patch every time.
> 
> The NVidia users will also have to back out the regparm patch, or insert
> 'asmlinkage' on all the appropriate definitions in the glue code.  Note that
> the patches on www.minion.de already fix this for the 5341 drivers as of
> 03/24/2004.
> 
> In any case, even though I'm one of those NVidia users, I'm OK with the
> patch being in there - anybody who's clued enough to build and run a -mm
> kernel shouldn't have much trouble figuring out how to build it with 2 patches
> reverted.

I disagree.  -mm is the testing ground for -linus.  If this patch
would only break the nvidia module, I couldn't care less.  But
breaking it in such a way that random kernel memory gets corrupted,
which can soon backfire to the filesystem as well?  That's not what
most people understand when calling something "stable".

If this goes in, we should at least detect the nvidia module and
refuse to load it.  Maybe do the same for other modules as well or
refuse to load any module that doesn't somehow state to be ok with 4k
stacks.  Details don't matter, as long as the filesystems survive.

Jörn

-- 
Das Aufregende am Schreiben ist es, eine Ordnung zu schaffen, wo
vorher keine existiert hat.
-- Doris Lessing

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 20:31     ` Bill Davidsen
@ 2004-05-05 23:04       ` Bartlomiej Zolnierkiewicz
  2004-05-06 12:55         ` Norberto Bensa
  2004-05-09 17:00         ` Bill Davidsen
  2004-05-06 10:09       ` Helge Hafting
  1 sibling, 2 replies; 94+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-05-05 23:04 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: linux-kernel

On Wednesday 05 of May 2004 22:31, Bill Davidsen wrote:
> Andrew Morton wrote:
> > Dominik Karall <dominik.karall@gmx.net> wrote:
> >>On Wednesday 05 May 2004 10:31, you wrote:
> >>>+make-4k-stacks-permanent.patch
> >>>
> >>> Fill my inbox.
> >>
> >>Hi Andrew!
> >>
> >>Is there any reason why this patch was applied? Because NVidia users
> >> can't work with the original drivers now without removing this patch
> >> every time.
> >
> > We need to push this issue along quickly.  The single-page stack
> > generally gives us a better kernel and having the stack size configurable
> > creates pain.
>
> Add my voice to those who don't think 4k stacks are a good idea as a
> default, they break some things and seem to leave other paths (as others
> have noted) on the edge. I'm not sure what you have in mind as a "better
> kernel" but I'd rather have a worse kernel and not have to check 4k
> stack as a possible problem before looking at other things if I get bad
> behaviour.
>
> Reliability first, performance later. We've lived with the config for a
> while, pain there is better than pain at runtime.

Opposite opinion here.

If you want 100% reliability you shouldn't use -mm in the first place.

Making 4kb stacks default in -mm is very good idea so it will get necessary
testing and fixing before being integrated into mainline.

Please also note that users of binary only modules always have choice:
- new kernels without binary only modules
- old kernels with binary only modules

It is really that simple.

Regards,
Bartlomiej


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

* 2.6.6-rc3-mm2: vermagic compile error if CONFIG_MODULES=n
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (7 preceding siblings ...)
  2004-05-05 17:33 ` 2.6.6-rc3-mm2 [sparc, sparc64, mips syscall broken] Paul Jackson
@ 2004-05-05 23:29 ` Adrian Bunk
  2004-05-06 14:53 ` 2.6.6-rc3-mm2 Antonio Dolcetta
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 94+ messages in thread
From: Adrian Bunk @ 2004-05-05 23:29 UTC (permalink / raw)
  To: Andrew Morton, dev; +Cc: linux-kernel

On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
>...
> Changes since 2.6.6-rc3-mm2:
>...
> +proc-sys-kernel-vermagic.patch
> 
>  Add /proc/sys/kernel/vermagic so that package installers can work out how
>  the kernel was built (soliciting feedback on this one).
>...

linux/vermagic.h now references a variable in kernel/module.c.

Since this file is only included for CONFIG_MODULES=y, CONFIG_MODULES=n 
results in the following compile error:

<--  snip  -->

...
  LD      .tmp_vmlinux1
kernel/built-in.o(.data+0xc54): undefined reference to `vermagic'
make: *** [.tmp_vmlinux1] Error 1

<--  snip  -->

cu
Adrian

-- 

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


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

* Re: 2.6.6-rc3-mm2
  2004-05-05 20:16   ` 2.6.6-rc3-mm2 R. J. Wysocki
@ 2004-05-06  1:51     ` Paul Jackson
  2004-05-06 19:38       ` 2.6.6-rc3-mm2 R. J. Wysocki
  0 siblings, 1 reply; 94+ messages in thread
From: Paul Jackson @ 2004-05-06  1:51 UTC (permalink / raw)
  To: R. J. Wysocki; +Cc: linux-kernel

> Can you, please, send it again?

I was asleep - sorry.  Looks like Andrew already replied to another
query from yourself related to this, 5 or 6 hours ago, with
the proper patch - adding some #include's of linux/mempolicy.h.

Are you ok now?

-- 
                          I won't rest till it's the best ...
                          Programmer, Linux Scalability
                          Paul Jackson <pj@sgi.com> 1.650.933.1373

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 20:31     ` Bill Davidsen
  2004-05-05 23:04       ` Bartlomiej Zolnierkiewicz
@ 2004-05-06 10:09       ` Helge Hafting
  2004-05-06 12:54         ` Bill Davidsen
  1 sibling, 1 reply; 94+ messages in thread
From: Helge Hafting @ 2004-05-06 10:09 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: linux-kernel

Bill Davidsen wrote:

> Andrew Morton wrote:
>
>>
>> We need to push this issue along quickly.  The single-page stack 
>> generally
>> gives us a better kernel and having the stack size configurable creates
>> pain.
>
>
> Add my voice to those who don't think 4k stacks are a good idea as a 
> default, they break some things and seem to leave other paths (as 
> others have noted) on the edge. I'm not sure what you have in mind as 
> a "better kernel" but I'd rather have a worse kernel and not have to 
> check 4k stack as a possible problem before looking at other things if 
> I get bad behaviour. 

I think 4k stacks is perfectly ok for mm, as mm is an experimental
testing ground anyway.  Not everything in mm goes into the next 2.6.x.


Wether 4k goes into some 2.6 release or waits for 2.7 is another debate.

Helge Hafting

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 10:09       ` Helge Hafting
@ 2004-05-06 12:54         ` Bill Davidsen
  0 siblings, 0 replies; 94+ messages in thread
From: Bill Davidsen @ 2004-05-06 12:54 UTC (permalink / raw)
  To: Helge Hafting; +Cc: linux-kernel

On Thu, 6 May 2004, Helge Hafting wrote:

> Bill Davidsen wrote:
> 
> > Andrew Morton wrote:
> >
> >>
> >> We need to push this issue along quickly.  The single-page stack 
> >> generally
> >> gives us a better kernel and having the stack size configurable creates
> >> pain.
> >
> >
> > Add my voice to those who don't think 4k stacks are a good idea as a 
> > default, they break some things and seem to leave other paths (as 
> > others have noted) on the edge. I'm not sure what you have in mind as 
> > a "better kernel" but I'd rather have a worse kernel and not have to 
> > check 4k stack as a possible problem before looking at other things if 
> > I get bad behaviour. 
> 
> I think 4k stacks is perfectly ok for mm, as mm is an experimental
> testing ground anyway.  Not everything in mm goes into the next 2.6.x.
> 
> 
> Wether 4k goes into some 2.6 release or waits for 2.7 is another debate.

I think it's fine as an option, but taking it out of config and making it
an immutable part of the kernel is probably undesirable. It appears to be
a small gain (nothing I can easily measure), and a larger risk. I'd like
that to be an optional risk, like many other things in the kernel,
available to be used if the last drop of size or performance is desired.

Does someone has any numbers showing what this gains? I didn't see
anything obvious when I tried it, so it's either very small or only in
some case(s) I didn't try.

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 23:04       ` Bartlomiej Zolnierkiewicz
@ 2004-05-06 12:55         ` Norberto Bensa
  2004-05-06 13:33           ` Bartlomiej Zolnierkiewicz
  2004-05-09 17:00         ` Bill Davidsen
  1 sibling, 1 reply; 94+ messages in thread
From: Norberto Bensa @ 2004-05-06 12:55 UTC (permalink / raw)
  To: Bartlomiej Zolnierkiewicz; +Cc: Bill Davidsen, linux-kernel

Bartlomiej Zolnierkiewicz wrote:
> Making 4kb stacks default in -mm is very good idea so it will get necessary
> testing and fixing before being integrated into mainline.

Then let us test with _AND_ without 4KSTACKS.

I love the -mm three, but I use a nvidia GFX card too. Making 4KSTACkS 
permanent excludes me from more testing.

Best regards,
Norberto

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 12:55         ` Norberto Bensa
@ 2004-05-06 13:33           ` Bartlomiej Zolnierkiewicz
  2004-05-06 18:47             ` Norberto Bensa
  0 siblings, 1 reply; 94+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-05-06 13:33 UTC (permalink / raw)
  To: Norberto Bensa; +Cc: Bill Davidsen, linux-kernel

On Thursday 06 of May 2004 14:55, Norberto Bensa wrote:
> Bartlomiej Zolnierkiewicz wrote:
> > Making 4kb stacks default in -mm is very good idea so it will get
> > necessary testing and fixing before being integrated into mainline.
>
> Then let us test with _AND_ without 4KSTACKS.

You are free to remove this patch from your kernel. 8)

> I love the -mm three, but I use a nvidia GFX card too. Making 4KSTACkS
> permanent excludes me from more testing.

We currently need testing for 4KSTACKS.  Please also note that your testing
with binary modules loaded has limited value as you should always reproduce
problem w/o binary modules before reporting problem.

Regards,
Bartlomiej


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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (8 preceding siblings ...)
  2004-05-05 23:29 ` 2.6.6-rc3-mm2: vermagic compile error if CONFIG_MODULES=n Adrian Bunk
@ 2004-05-06 14:53 ` Antonio Dolcetta
  2004-05-06 15:12   ` 2.6.6-rc3-mm2 Andrew Morton
  2004-05-06 21:46 ` 2.6.6-rc3-mm2 Bruce Guenter
  2004-05-08 18:31 ` 2.6.6-rc3-mm2 Joseph Fannin
  11 siblings, 1 reply; 94+ messages in thread
From: Antonio Dolcetta @ 2004-05-06 14:53 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

On Wed, 5 May 2004 01:31:35 -0700
Andrew Morton <akpm@osdl.org> wrote:

> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6.6-rc3-mm2/
> 
> - Lots of little fixes and updates.  Nothing really major.
> 
> - The huge memory leak from 2.6.6-rc3-mm1 is fixed.
> 
> 


something has broken the b44 module,
modprobe b44 fails with:
FATAL: Error inserting b44 (/lib/modules/2.6.6-rc3-mm2/kernel/drivers/net/b44.ko): Unknown symbol in module, or unknown parameter (see dmesg)

dmesg contains the line:
b44: Unknown symbol generic_mii_ioctl


	Antonio

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

* Re: 2.6.6-rc3-mm2
  2004-05-06 14:53 ` 2.6.6-rc3-mm2 Antonio Dolcetta
@ 2004-05-06 15:12   ` Andrew Morton
  2004-05-06 15:56     ` 2.6.6-rc3-mm2 Antonio Dolcetta
  0 siblings, 1 reply; 94+ messages in thread
From: Andrew Morton @ 2004-05-06 15:12 UTC (permalink / raw)
  To: Antonio Dolcetta; +Cc: linux-kernel

Antonio Dolcetta <adolcetta@infracom.it> wrote:
>
> something has broken the b44 module,
>  modprobe b44 fails with:
>  FATAL: Error inserting b44 (/lib/modules/2.6.6-rc3-mm2/kernel/drivers/net/b44.ko): Unknown symbol in module, or unknown parameter (see dmesg)
> 
>  dmesg contains the line:
>  b44: Unknown symbol generic_mii_ioctl

Please config that your .config does not set CONFIG_MII?


 25-akpm/drivers/net/Kconfig |    1 +
 1 files changed, 1 insertion(+)

diff -puN drivers/net/Kconfig~b44-needs-mii drivers/net/Kconfig
--- 25/drivers/net/Kconfig~b44-needs-mii	2004-05-06 08:12:07.298682840 -0700
+++ 25-akpm/drivers/net/Kconfig	2004-05-06 08:12:15.841384152 -0700
@@ -1309,6 +1309,7 @@ config APRICOT
 config B44
 	tristate "Broadcom 4400 ethernet support (EXPERIMENTAL)"
 	depends on NET_PCI && PCI && EXPERIMENTAL
+	select MII
 	help
 	  If you have a network (Ethernet) controller of this type, say Y and
 	  read the Ethernet-HOWTO, available from

_


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

* Re: 2.6.6-rc3-mm2 (4KSTACK) 
  2004-05-05 21:51     ` Jörn Engel
@ 2004-05-06 15:18       ` Valdis.Kletnieks
  2004-05-06 15:40         ` Arjan van de Ven
                           ` (2 more replies)
  0 siblings, 3 replies; 94+ messages in thread
From: Valdis.Kletnieks @ 2004-05-06 15:18 UTC (permalink / raw)
  To: Jörn Engel; +Cc: Dominik Karall, Andrew Morton, Linux Kernel ML

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

On Wed, 05 May 2004 23:51:36 +0200, =?iso-8859-1?Q?J=F6rn?= Engel said:

> I disagree.  -mm is the testing ground for -linus.  If this patch
> would only break the nvidia module, I couldn't care less.

OK.. I need to clarify - I'm OK on the patch being *in -mm* precisely *because*
it's a testing ground.  Anybody who's running a -mm kernel should have the
technical savvy to deal with the issue by reverting the one patch in question,
and to recover if it eats their file system (Yes, I'm running 2.6.6-rc3-mm2 and
the NVidia driver as I type.  No, making it work wasn't a problem.  Yes, I spin
everything needed to rebuild out to CD/RW at least once a week, just because it
*is* a -mm kernel. ;)

It's a Good Idea to do this in -mm, to flush out all the binary modules that
are known to have issues with this (have we identified anybody other than NVidia
that actually *has* a problem)?

It's probably a Bad Idea to push this to Linus before the vendors that have
significant market-impact issues (again - anybody other than NVidia here?)
have gotten their stuff cleaned up...


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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 15:18       ` Valdis.Kletnieks
@ 2004-05-06 15:40         ` Arjan van de Ven
  2004-05-06 16:29           ` Valdis.Kletnieks
                             ` (2 more replies)
  2004-05-06 16:03         ` 2.6.6-rc3-mm2 (4KSTACK) Malte Schröder
  2004-05-06 17:05         ` Matt Mackall
  2 siblings, 3 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-06 15:40 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Andrew Morton, Linux Kernel ML

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


> It's probably a Bad Idea to push this to Linus before the vendors that have
> significant market-impact issues (again - anybody other than NVidia here?)
> have gotten their stuff cleaned up...

Ok I don't want to start a flamewar but... Do we want to hold linux back
until all binary only module vendors have caught up ??



[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: 2.6.6-rc3-mm2
  2004-05-06 15:12   ` 2.6.6-rc3-mm2 Andrew Morton
@ 2004-05-06 15:56     ` Antonio Dolcetta
  2004-05-06 17:26       ` 2.6.6-rc3-mm2 Adrian Bunk
  0 siblings, 1 reply; 94+ messages in thread
From: Antonio Dolcetta @ 2004-05-06 15:56 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

On Thu, 6 May 2004 08:12:58 -0700
Andrew Morton <akpm@osdl.org> wrote:

> Antonio Dolcetta <adolcetta@infracom.it> wrote:
> >
> > something has broken the b44 module,
> >  modprobe b44 fails with:
> >  FATAL: Error inserting b44 (/lib/modules/2.6.6-rc3-mm2/kernel/drivers/net/b44.ko): Unknown symbol in module, or unknown parameter (see dmesg)
> > 
> >  dmesg contains the line:
> >  b44: Unknown symbol generic_mii_ioctl
> 
> Please config that your .config does not set CONFIG_MII?
> 
> 

I enabled the Media Independent Interface and it works perfectly
Sorry for the noise
 

	Antonio

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 15:18       ` Valdis.Kletnieks
  2004-05-06 15:40         ` Arjan van de Ven
@ 2004-05-06 16:03         ` Malte Schröder
  2004-05-06 16:13           ` Valdis.Kletnieks
  2004-05-06 17:05         ` Matt Mackall
  2 siblings, 1 reply; 94+ messages in thread
From: Malte Schröder @ 2004-05-06 16:03 UTC (permalink / raw)
  To: Valdis.Kletnieks
  Cc: Jörn Engel, Dominik Karall, Andrew Morton, Linux Kernel ML

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

On Thu, 06 May 2004 11:18:10 -0400
Valdis.Kletnieks@vt.edu wrote:

> On Wed, 05 May 2004 23:51:36 +0200, =?iso-8859-1?Q?J=F6rn?= Engel said:
> 
> > I disagree.  -mm is the testing ground for -linus.  If this patch
> > would only break the nvidia module, I couldn't care less.
> 
> OK.. I need to clarify - I'm OK on the patch being *in -mm* precisely *because*
> it's a testing ground.  Anybody who's running a -mm kernel should have the
> technical savvy to deal with the issue by reverting the one patch in question,
> and to recover if it eats their file system (Yes, I'm running 2.6.6-rc3-mm2 and
> the NVidia driver as I type.  No, making it work wasn't a problem.  Yes, I spin
> everything needed to rebuild out to CD/RW at least once a week, just because it
> *is* a -mm kernel. ;)
> 
> It's a Good Idea to do this in -mm, to flush out all the binary modules that
> are known to have issues with this (have we identified anybody other than NVidia
> that actually *has* a problem)?
I use 2.6.6-rc3  w/ 4k-stack enabled (-mm is a bit too experimental for my taste ;) ), ATIs binary-module is working w/o problems.
but IIRC I had to disable REGPARMS.

> 
> It's probably a Bad Idea to push this to Linus before the vendors that have
> significant market-impact issues (again - anybody other than NVidia here?)
> have gotten their stuff cleaned up...
> 
> 


-- 
---------------------------------------
Malte Schröder
MalteSch@gmx.de
ICQ# 68121508
---------------------------------------


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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK) 
  2004-05-06 16:03         ` 2.6.6-rc3-mm2 (4KSTACK) Malte Schröder
@ 2004-05-06 16:13           ` Valdis.Kletnieks
  0 siblings, 0 replies; 94+ messages in thread
From: Valdis.Kletnieks @ 2004-05-06 16:13 UTC (permalink / raw)
  To: MalteSch; +Cc: Linux Kernel ML

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

On Thu, 06 May 2004 18:03:14 +0200, Malte =?ISO-8859-1?B?U2NocvZkZXI=?= said:

> I use 2.6.6-rc3  w/ 4k-stack enabled (-mm is a bit too experimental for my =
> taste ;) ), ATIs binary-module is working w/o problems.
> but IIRC I had to disable REGPARMS.

Alternatively, www.minion.de has a patch against the 5341 drivers that makes
it work with the regparms (basically, it sticks an asmlinkage in all the right
places)....

http://www.minion.de/files/NVIDIA_kernel-1.0-5341-2.6.diff

Of course, if you hit problems running a 3rd party patch against a mostly-binary
driver, you're on your own... ;)

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK) 
  2004-05-06 15:40         ` Arjan van de Ven
@ 2004-05-06 16:29           ` Valdis.Kletnieks
  2004-05-07  9:50             ` Helge Hafting
  2004-05-07  0:37           ` Paul Jakma
  2004-05-10 19:49           ` Bill Davidsen
  2 siblings, 1 reply; 94+ messages in thread
From: Valdis.Kletnieks @ 2004-05-06 16:29 UTC (permalink / raw)
  To: arjanv; +Cc: Andrew Morton, Linux Kernel ML

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

On Thu, 06 May 2004 17:40:33 +0200, Arjan van de Ven said:
> Ok I don't want to start a flamewar but... Do we want to hold linux back
> until all binary only module vendors have caught up ??

No.. I merely suggested that coordinating with as few as possibly one vendor to
clean their module up might minimize the pain considerably.  NVidia is aware of
the issue, and rumor has it that the 6xxx series of Linux drivers are targeted
for the end of May and will have a fix for the 4K stack (which is an issue for
the Fedora Core 2 release already) since they need to push out a revision to
support the 6800 series cards anyhow....




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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 15:18       ` Valdis.Kletnieks
  2004-05-06 15:40         ` Arjan van de Ven
  2004-05-06 16:03         ` 2.6.6-rc3-mm2 (4KSTACK) Malte Schröder
@ 2004-05-06 17:05         ` Matt Mackall
  2 siblings, 0 replies; 94+ messages in thread
From: Matt Mackall @ 2004-05-06 17:05 UTC (permalink / raw)
  To: Valdis.Kletnieks
  Cc: J?rn Engel, Dominik Karall, Andrew Morton, Linux Kernel ML

On Thu, May 06, 2004 at 11:18:10AM -0400, Valdis.Kletnieks@vt.edu wrote:
> It's a Good Idea to do this in -mm, to flush out all the binary
> modules that are known to have issues with this (have we identified
> anybody other than NVidia that actually *has* a problem)?

Anything that uses current() or the like will be unhappy, though it
may work half the time. So just about anything binary-only is liable
to hit it. We can catch most of this by adding "4KSTACKS" to the
global build flags, but I think stuff like the Nvidia wrapper layer
shoots itself in the foot here by silently ignoring this check.

-- 
Matt Mackall : http://www.selenic.com : Linux development and consulting

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

* Re: 2.6.6-rc3-mm2
  2004-05-06 15:56     ` 2.6.6-rc3-mm2 Antonio Dolcetta
@ 2004-05-06 17:26       ` Adrian Bunk
  0 siblings, 0 replies; 94+ messages in thread
From: Adrian Bunk @ 2004-05-06 17:26 UTC (permalink / raw)
  To: Antonio Dolcetta; +Cc: Andrew Morton, linux-kernel

On Thu, May 06, 2004 at 05:56:30PM +0200, Antonio Dolcetta wrote:
> On Thu, 6 May 2004 08:12:58 -0700
> Andrew Morton <akpm@osdl.org> wrote:
> 
> > Antonio Dolcetta <adolcetta@infracom.it> wrote:
> > >
> > > something has broken the b44 module,
> > >  modprobe b44 fails with:
> > >  FATAL: Error inserting b44 (/lib/modules/2.6.6-rc3-mm2/kernel/drivers/net/b44.ko): Unknown symbol in module, or unknown parameter (see dmesg)
> > > 
> > >  dmesg contains the line:
> > >  b44: Unknown symbol generic_mii_ioctl
> > 
> > Please config that your .config does not set CONFIG_MII?
> > 
> > 
> 
> I enabled the Media Independent Interface and it works perfectly
> Sorry for the noise

Why sorry?

You found a bug in the kernel, and Andrew has posted a patch to fix this 
bug in future kernel releases.

> 	Antonio

cu
Adrian

-- 

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


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 16:47     ` Steve Lord
  2004-05-05 18:48       ` Felipe Alfaro Solana
  2004-05-05 19:51       ` Arjan van de Ven
@ 2004-05-06 17:44       ` Max Valdez
  2 siblings, 0 replies; 94+ messages in thread
From: Max Valdez @ 2004-05-06 17:44 UTC (permalink / raw)
  To: linux-kernel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I do

and  Ihave nvidia video card :-), last couple of week been running 2.6.5 
because of the problem with the module nvidia.o and teh 4STACK thing

But as soon as I get to compile the new mm kernel, and reboot, will continue 
to work on a mm like the last months.

Actually I've been using mm kernels most of the time since AC patches stoped 
when Alan left to his Ph.D., or what ever he's doing right now.

Max
- -- 
Linux garaged 2.6.5-rc2-mm3 #1 Fri Mar 26 11:07:16 CST 2004 i686 Intel(R) 
Pentium(R) 4 CPU 2.80GHz GenuineIntel GNU/Linux
- -----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GS/S d- s: a-29 C++(+++) ULAHI+++ P+ L++>+++ E--- W++ N* o-- K- w++++ O- M-- 
V-- PS+ PE Y-- PGP++ t- 5- X+ R tv++ b+ DI+++ D- G++ e++ h+ r+ z**
- ------END GEEK CODE BLOCK------
gpg-key: http://garaged.homeip.net/gpg-key.txt
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAmnmNNNkpVEFxW78RAm+5AJ0c5/U5nmrzFFh9aS0p3iGBcwZVlgCdGMx9
1CwtWd5W01omEDfWO6iHpVk=
=KM7C
-----END PGP SIGNATURE-----

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 13:33           ` Bartlomiej Zolnierkiewicz
@ 2004-05-06 18:47             ` Norberto Bensa
  0 siblings, 0 replies; 94+ messages in thread
From: Norberto Bensa @ 2004-05-06 18:47 UTC (permalink / raw)
  To: Bartlomiej Zolnierkiewicz; +Cc: Bill Davidsen, linux-kernel

Bartlomiej Zolnierkiewicz wrote:
> > Then let us test with _AND_ without 4KSTACKS.
>
> You are free to remove this patch from your kernel. 8)

I already do ;-)

That was not my point.

Thanks anyway,
Norberto

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

* Re: 2.6.6-rc3-mm2
  2004-05-06  1:51     ` 2.6.6-rc3-mm2 Paul Jackson
@ 2004-05-06 19:38       ` R. J. Wysocki
  0 siblings, 0 replies; 94+ messages in thread
From: R. J. Wysocki @ 2004-05-06 19:38 UTC (permalink / raw)
  To: Paul Jackson; +Cc: linux-kernel

On Thursday 06 of May 2004 03:51, Paul Jackson wrote:
> > Can you, please, send it again?
>
> I was asleep - sorry.  Looks like Andrew already replied to another
> query from yourself related to this, 5 or 6 hours ago, with
> the proper patch - adding some #include's of linux/mempolicy.h.
>
> Are you ok now?

Yes, I am (sorry, I couldn't confirm this earlier).

-- 
Rafael J. Wysocki,
SiSK
[tel. (+48) 605 053 693]
----------------------------
For a successful technology, reality must take precedence over public 
relations, for nature cannot be fooled.
					-- Richard P. Feynman



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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (9 preceding siblings ...)
  2004-05-06 14:53 ` 2.6.6-rc3-mm2 Antonio Dolcetta
@ 2004-05-06 21:46 ` Bruce Guenter
  2004-05-07  2:52   ` 2.6.6-rc3-mm2 Andrew Morton
  2004-05-08 18:31 ` 2.6.6-rc3-mm2 Joseph Fannin
  11 siblings, 1 reply; 94+ messages in thread
From: Bruce Guenter @ 2004-05-06 21:46 UTC (permalink / raw)
  To: linux-kernel

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

On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
> Move-saved_command_line-to-init-mainc.patch
>   Move saved_command_line to init/main.c

This patch appears to be breaking serial console for me.  Reverting this
patch with patch -R makes it work again.  I can't tell from the contents
of the patch why it causes problems, but it does.  I'd be happy to
provide any further details if required.
-- 
Bruce Guenter <bruceg@em.ca> http://em.ca/~bruceg/ http://untroubled.org/
OpenPGP key: 699980E8 / D0B7 C8DD 365D A395 29DA  2E2A E96F B2DC 6999 80E8

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 15:40         ` Arjan van de Ven
  2004-05-06 16:29           ` Valdis.Kletnieks
@ 2004-05-07  0:37           ` Paul Jakma
  2004-05-07  2:50             ` Andrew Morton
  2004-05-07  6:51             ` Arjan van de Ven
  2004-05-10 19:49           ` Bill Davidsen
  2 siblings, 2 replies; 94+ messages in thread
From: Paul Jakma @ 2004-05-07  0:37 UTC (permalink / raw)
  To: Arjan van de Ven; +Cc: Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

On Thu, 6 May 2004, Arjan van de Ven wrote:

> Ok I don't want to start a flamewar but... Do we want to hold linux
> back until all binary only module vendors have caught up ??

What about normal linux modules though? Eg, NFS (most likely):

	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121804

regards,
-- 
Paul Jakma	paul@clubi.ie	paul@jakma.org	Key ID: 64A2FF6A
	warning: do not ever send email to spam@dishone.st
Fortune:
Disraeli was pretty close: actually, there are Lies, Damn lies, Statistics,
Benchmarks, and Delivery dates.

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  0:37           ` Paul Jakma
@ 2004-05-07  2:50             ` Andrew Morton
  2004-05-07  3:44               ` Paul Jakma
  2004-05-07  6:51             ` Arjan van de Ven
  1 sibling, 1 reply; 94+ messages in thread
From: Andrew Morton @ 2004-05-07  2:50 UTC (permalink / raw)
  To: Paul Jakma; +Cc: arjanv, Valdis.Kletnieks, linux-kernel

Paul Jakma <paul@clubi.ie> wrote:
>
> On Thu, 6 May 2004, Arjan van de Ven wrote:
> 
>  > Ok I don't want to start a flamewar but... Do we want to hold linux
>  > back until all binary only module vendors have caught up ??
> 
>  What about normal linux modules though? Eg, NFS (most likely):
> 
>  	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121804

That's a misdiagnosis.  The problem here is that the kernel is taking a
pagefault within show_trace(), and the pagefault handler calls
show_trace().  It has gone infinitely recursive.

The bug is unrelated to the stack size.  It is in show_trace() or
thereabouts.  That code tries to protect itself from recursive faults, but
it's a vendor kernel and may be different from the public tree.

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

* Re: 2.6.6-rc3-mm2
  2004-05-06 21:46 ` 2.6.6-rc3-mm2 Bruce Guenter
@ 2004-05-07  2:52   ` Andrew Morton
  2004-05-07  4:16     ` 2.6.6-rc3-mm2 Rusty Russell
  0 siblings, 1 reply; 94+ messages in thread
From: Andrew Morton @ 2004-05-07  2:52 UTC (permalink / raw)
  To: Bruce Guenter; +Cc: linux-kernel, Rusty Russell

Bruce Guenter <bruceg@em.ca> wrote:
>
> On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
> > Move-saved_command_line-to-init-mainc.patch
> >   Move saved_command_line to init/main.c
> 
> This patch appears to be breaking serial console for me.  Reverting this
> patch with patch -R makes it work again.  I can't tell from the contents
> of the patch why it causes problems, but it does.  I'd be happy to
> provide any further details if required.

Thanks for narrowing it down - I'd been meaning to look into the serial
console problem.

Rusty, can you have a ponder please?

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  2:50             ` Andrew Morton
@ 2004-05-07  3:44               ` Paul Jakma
  2004-05-07  3:58                 ` Andrew Morton
  0 siblings, 1 reply; 94+ messages in thread
From: Paul Jakma @ 2004-05-07  3:44 UTC (permalink / raw)
  To: Andrew Morton; +Cc: arjanv, Valdis.Kletnieks, linux-kernel

On Thu, 6 May 2004, Andrew Morton wrote:

> That's a misdiagnosis.  The problem here is that the kernel is
> taking a pagefault within show_trace(), and the pagefault handler
> calls show_trace().  It has gone infinitely recursive.

That happens after the initial stack overflow with a trace (from what
i could discern before it scrolled into oblivion) in NFS -> IP path
similar to the other non-recursive trace, see below.

> The bug is unrelated to the stack size.  It is in show_trace() or
> thereabouts.  That code tries to protect itself from recursive
> faults, but it's a vendor kernel and may be different from the
> public tree.

Fair enough but have a look at the other fault from that bug though:

	https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=99855&action=view 

That one did not recurse for some reason.

regards,
-- 
Paul Jakma	paul@clubi.ie	paul@jakma.org	Key ID: 64A2FF6A
	warning: do not ever send email to spam@dishone.st
Fortune:
The program isn't debugged until the last user is dead.

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  3:44               ` Paul Jakma
@ 2004-05-07  3:58                 ` Andrew Morton
  2004-05-07  7:05                   ` Arjan van de Ven
  2004-05-07 15:26                   ` Martin J. Bligh
  0 siblings, 2 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-07  3:58 UTC (permalink / raw)
  To: Paul Jakma; +Cc: arjanv, Valdis.Kletnieks, linux-kernel

Paul Jakma <paul@clubi.ie> wrote:
>
> Fair enough but have a look at the other fault from that bug though:
> 
>  	https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=99855&action=view 
> 
>  That one did not recurse for some reason.

OK.

So we're 50 to 60 levels deep in function calls there and simply ran out
of 4k stack.

Based on this and upon the few other feedbackings I've had on this issue it
seems that the 4k stack experiment will come back saying "no".

Thanks.

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

* Re: 2.6.6-rc3-mm2
  2004-05-07  2:52   ` 2.6.6-rc3-mm2 Andrew Morton
@ 2004-05-07  4:16     ` Rusty Russell
  2004-05-07 16:05       ` 2.6.6-rc3-mm2 Bruce Guenter
  2004-05-07 20:13       ` 2.6.6-rc3-mm2 R. J. Wysocki
  0 siblings, 2 replies; 94+ messages in thread
From: Rusty Russell @ 2004-05-07  4:16 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Bruce Guenter, lkml - Kernel Mailing List

On Fri, 2004-05-07 at 12:52, Andrew Morton wrote:
> Bruce Guenter <bruceg@em.ca> wrote:
> >
> > On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
> > > Move-saved_command_line-to-init-mainc.patch
> > >   Move saved_command_line to init/main.c
> > 
> > This patch appears to be breaking serial console for me.  Reverting this
> > patch with patch -R makes it work again.  I can't tell from the contents
> > of the patch why it causes problems, but it does.  I'd be happy to
> > provide any further details if required.
> 
> Thanks for narrowing it down - I'd been meaning to look into the serial
> console problem.
> 
> Rusty, can you have a ponder please?

Works for me: I use serial console.  Config please.

Rusty.
-- 
Anyone who quotes me in their signature is an idiot -- Rusty Russell


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  0:37           ` Paul Jakma
  2004-05-07  2:50             ` Andrew Morton
@ 2004-05-07  6:51             ` Arjan van de Ven
  2004-05-07 15:13               ` Dave Jones
  2004-05-07 19:45               ` Paul Jakma
  1 sibling, 2 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-07  6:51 UTC (permalink / raw)
  To: Paul Jakma; +Cc: Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

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


On Fri, May 07, 2004 at 01:37:54AM +0100, Paul Jakma wrote:
> On Thu, 6 May 2004, Arjan van de Ven wrote:
> 
> > Ok I don't want to start a flamewar but... Do we want to hold linux
> > back until all binary only module vendors have caught up ??
> 
> What about normal linux modules though? Eg, NFS (most likely):
> 
> 	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121804

NFSv4 has a > 1Kb stack user; Dave Jones has a fix pending for that...

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  3:58                 ` Andrew Morton
@ 2004-05-07  7:05                   ` Arjan van de Ven
  2004-05-07 15:26                   ` Martin J. Bligh
  1 sibling, 0 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-07  7:05 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Paul Jakma, Valdis.Kletnieks, linux-kernel

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


On Thu, May 06, 2004 at 08:58:38PM -0700, Andrew Morton wrote:
> Paul Jakma <paul@clubi.ie> wrote:
> >
> > Fair enough but have a look at the other fault from that bug though:
> > 
> >  	https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=99855&action=view 
> > 
> >  That one did not recurse for some reason.
> 
> OK.
> 
> So we're 50 to 60 levels deep in function calls there and simply ran out
> of 4k stack.


no that call trace is AFTER you overflow, eg wrong stack

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 16:29           ` Valdis.Kletnieks
@ 2004-05-07  9:50             ` Helge Hafting
  0 siblings, 0 replies; 94+ messages in thread
From: Helge Hafting @ 2004-05-07  9:50 UTC (permalink / raw)
  To: Valdis.Kletnieks; +Cc: Linux Kernel ML

Valdis.Kletnieks@vt.edu wrote:

>On Thu, 06 May 2004 17:40:33 +0200, Arjan van de Ven said:
>  
>
>>Ok I don't want to start a flamewar but... Do we want to hold linux back
>>until all binary only module vendors have caught up ??
>>    
>>
>
>No.. I merely suggested that coordinating with as few as possibly one vendor to
>clean their module up might minimize the pain considerably.  
>

I don't see much of a problem.  So what if Linus puts 4k stacks in 2.6.6 
tomorrow?
It won't kill linux for all those nvidia users.  They'll simply have to 
stop at 2.6.5
until nvidia catch up.  Not much of a problem, considering how the majority
still runs various versions of 2.4.x.

Helge Hafting

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  6:51             ` Arjan van de Ven
@ 2004-05-07 15:13               ` Dave Jones
  2004-05-07 15:47                 ` Steve Lord
  2004-05-07 19:45               ` Paul Jakma
  1 sibling, 1 reply; 94+ messages in thread
From: Dave Jones @ 2004-05-07 15:13 UTC (permalink / raw)
  To: Arjan van de Ven
  Cc: Paul Jakma, Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

On Fri, May 07, 2004 at 08:51:05AM +0200, Arjan van de Ven wrote:
 > 
 > On Fri, May 07, 2004 at 01:37:54AM +0100, Paul Jakma wrote:
 > > On Thu, 6 May 2004, Arjan van de Ven wrote:
 > > 
 > > > Ok I don't want to start a flamewar but... Do we want to hold linux
 > > > back until all binary only module vendors have caught up ??
 > > 
 > > What about normal linux modules though? Eg, NFS (most likely):
 > > 
 > > 	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121804
 > 
 > NFSv4 has a > 1Kb stack user; Dave Jones has a fix pending for that...

Hmm, this one maybe?
 
		Dave

--- linux-2.6.5/net/sunrpc/auth_gss/auth_gss.c~	2004-05-05 13:34:31.000000000 +0100
+++ linux-2.6.5/net/sunrpc/auth_gss/auth_gss.c	2004-05-05 13:33:05.000000000 +0100
@@ -429,10 +429,8 @@ gss_pipe_upcall(struct file *filp, struc
 static ssize_t
 gss_pipe_downcall(struct file *filp, const char *src, size_t mlen)
 {
-	char buf[1024];
 	struct xdr_netobj obj = {
 		.len	= mlen,
-		.data	= buf,
 	};
 	struct inode *inode = filp->f_dentry->d_inode;
 	struct rpc_inode *rpci = RPC_I(inode);
@@ -448,11 +446,19 @@ gss_pipe_downcall(struct file *filp, con
 	int err;
 	int gss_err;
 
-	if (mlen > sizeof(buf))
+	obj.data = kmalloc(1024, GFP_KERNEL);
+	if (!obj.data)
+		return -ENOMEM;
+
+	if (mlen > 1024) {
+		kfree (obj.data);
 		return -ENOSPC;
-	left = copy_from_user(buf, src, mlen);
-	if (left)
+	}
+	left = copy_from_user(obj.data, src, mlen);
+	if (left) {
+		kfree (obj.data);
 		return -EFAULT;
+	}
 	clnt = rpci->private;
 	atomic_inc(&clnt->cl_users);
 	auth = clnt->cl_auth;
@@ -477,12 +483,14 @@ gss_pipe_downcall(struct file *filp, con
 	} else
 		spin_unlock(&gss_auth->lock);
 	rpc_release_client(clnt);
+	kfree (obj.data);
 	return mlen;
 err:
 	if (ctx)
 		gss_destroy_ctx(ctx);
 	rpc_release_client(clnt);
 	dprintk("RPC: gss_pipe_downcall returning %d\n", err);
+	kfree (obj.data);
 	return err;
 }
 

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  3:58                 ` Andrew Morton
  2004-05-07  7:05                   ` Arjan van de Ven
@ 2004-05-07 15:26                   ` Martin J. Bligh
  2004-05-07 19:41                     ` Andrew Morton
  1 sibling, 1 reply; 94+ messages in thread
From: Martin J. Bligh @ 2004-05-07 15:26 UTC (permalink / raw)
  To: Andrew Morton, Paul Jakma; +Cc: arjanv, Valdis.Kletnieks, linux-kernel

--Andrew Morton <akpm@osdl.org> wrote (on Thursday, May 06, 2004 20:58:38 -0700):

> Paul Jakma <paul@clubi.ie> wrote:
>> 
>> Fair enough but have a look at the other fault from that bug though:
>> 
>>  	https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=99855&action=view 
>> 
>>  That one did not recurse for some reason.
> 
> OK.
> 
> So we're 50 to 60 levels deep in function calls there and simply ran out
> of 4k stack.
> 
> Based on this and upon the few other feedbackings I've had on this issue it
> seems that the 4k stack experiment will come back saying "no"

There's two problems with that stack .... 

1. it seems to have the IRQ on it as well as normal traffic instead of 
using the separate irqstacks ... why isn't that working?

2 nfs_writepage_sync is a known stack-abuser ;-) 1632 bytes on PPC64 at least
(from Anton's data). Maybe it's that struct nfs_write_data ?

M.


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 15:13               ` Dave Jones
@ 2004-05-07 15:47                 ` Steve Lord
  2004-05-07 15:59                   ` Arjan van de Ven
  0 siblings, 1 reply; 94+ messages in thread
From: Steve Lord @ 2004-05-07 15:47 UTC (permalink / raw)
  To: Dave Jones
  Cc: Arjan van de Ven, Paul Jakma, Valdis.Kletnieks, Andrew Morton,
	Linux Kernel ML

Dave Jones wrote:
> On Fri, May 07, 2004 at 08:51:05AM +0200, Arjan van de Ven wrote:
>  > 
>  > On Fri, May 07, 2004 at 01:37:54AM +0100, Paul Jakma wrote:
>  > > On Thu, 6 May 2004, Arjan van de Ven wrote:
>  > > 
>  > > > Ok I don't want to start a flamewar but... Do we want to hold linux
>  > > > back until all binary only module vendors have caught up ??
>  > > 
>  > > What about normal linux modules though? Eg, NFS (most likely):
>  > > 
>  > > 	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121804
>  > 
>  > NFSv4 has a > 1Kb stack user; Dave Jones has a fix pending for that...
> 
> Hmm, this one maybe?
>  
> 		Dave
> 

>  
> -	if (mlen > sizeof(buf))
> +	obj.data = kmalloc(1024, GFP_KERNEL);
> +	if (!obj.data)
> +		return -ENOMEM;
> +
> +	if (mlen > 1024) {

That's what I hate about all of this, just think how much stack that
kmalloc can take in low memory situations.... it might end up in
writepage on another nfs file.... Moving stuff off the stack and
into kmalloc just reduces the possibility of stack overflow, it
does not fix the problem. Having memory reclaim take place inside
the thread which is waiting for memory makes that a pretty hard
problem to fix.

Steve

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 15:47                 ` Steve Lord
@ 2004-05-07 15:59                   ` Arjan van de Ven
  2004-05-07 16:09                     ` J. Bruce Fields
  2004-05-07 16:11                     ` Steve Lord
  0 siblings, 2 replies; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-07 15:59 UTC (permalink / raw)
  To: Steve Lord
  Cc: Dave Jones, Paul Jakma, Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

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

On Fri, May 07, 2004 at 10:47:56AM -0500, Steve Lord wrote:
> >-	if (mlen > sizeof(buf))
> >+	obj.data = kmalloc(1024, GFP_KERNEL);
> >+	if (!obj.data)
> >+		return -ENOMEM;
> >+
> >+	if (mlen > 1024) {
> 
> That's what I hate about all of this, just think how much stack that
> kmalloc can take in low memory situations.... it might end up in
> writepage on another nfs file....

it clearly needs to be GFP_NOFS

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

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

* Re: 2.6.6-rc3-mm2
  2004-05-07  4:16     ` 2.6.6-rc3-mm2 Rusty Russell
@ 2004-05-07 16:05       ` Bruce Guenter
  2004-05-07 20:13       ` 2.6.6-rc3-mm2 R. J. Wysocki
  1 sibling, 0 replies; 94+ messages in thread
From: Bruce Guenter @ 2004-05-07 16:05 UTC (permalink / raw)
  To: lkml - Kernel Mailing List


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

On Fri, May 07, 2004 at 02:16:38PM +1000, Rusty Russell wrote:
> Works for me: I use serial console.  Config please.

Gladly.  I've attached the config for 2.6.6-rc3-mm1, as 2.6.6-rc3-mm2
didn't compile, and I haven't had the time to try it again.  This is on
x86_64 (Opteron) FWIW.
-- 
Bruce Guenter <bruceg@em.ca> http://em.ca/~bruceg/ http://untroubled.org/
OpenPGP key: 699980E8 / D0B7 C8DD 365D A395 29DA  2E2A E96F B2DC 6999 80E8

[-- Attachment #1.2: config-2.6.6-rc3-mm1 --]
[-- Type: text/plain, Size: 19990 bytes --]

#
# Automatically generated make config: don't edit
#
CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_X86_CMPXCHG=y
CONFIG_EARLY_PRINTK=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_GENERIC_ISA_DMA=y

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

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

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

#
# Processor type and features
#
CONFIG_MK8=y
# CONFIG_MPSC is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_L1_CACHE_BYTES=64
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
# CONFIG_MICROCODE is not set
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_MTRR=y
# CONFIG_SMP is not set
# CONFIG_PREEMPT is not set
CONFIG_GART_IOMMU=y
CONFIG_SWIOTLB=y
CONFIG_X86_MCE=y

#
# Power management options
#
# CONFIG_PM is not set

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

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y

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

#
# Device Drivers
#

#
# Generic Driver Options
#

#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set

#
# Parallel port support
#
# CONFIG_PARPORT is not set

#
# Plug and Play support
#

#
# Block devices
#
CONFIG_BLK_DEV_FD=m
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=m
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_CARMEL is not set
CONFIG_BLK_DEV_RAM=m
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_LBD=y

#
# ATA/ATAPI/MFM/RLL support
#
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y

#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_IDEDISK is not set
CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_IDE_TASK_IOCTL is not set
# CONFIG_IDE_TASKFILE_IO is not set

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
# CONFIG_BLK_DEV_CMD640 is not set
CONFIG_BLK_DEV_IDEPCI=y
# CONFIG_IDEPCI_SHARE_IRQ is not set
# CONFIG_BLK_DEV_OFFBOARD is not set
# CONFIG_BLK_DEV_GENERIC is not set
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_ADMA=y
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
# CONFIG_BLK_DEV_ATIIXP is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set

#
# SCSI device support
#
CONFIG_SCSI=y
# CONFIG_SCSI_PROC_FS is not set

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

#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
# CONFIG_SCSI_MULTI_LUN is not set
# CONFIG_SCSI_REPORT_LUNS is not set
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set

#
# SCSI Transport Attributes
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set

#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_MEGARAID is not set
# CONFIG_SCSI_SATA is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_CPQFCTS is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_EATA_PIO is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_QLOGIC_ISP is not set
# CONFIG_SCSI_QLOGIC_FC is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
CONFIG_SCSI_QLA2XXX=y
# CONFIG_SCSI_QLA21XX is not set
# CONFIG_SCSI_QLA22XX is not set
# CONFIG_SCSI_QLA2300 is not set
# CONFIG_SCSI_QLA2322 is not set
# CONFIG_SCSI_QLA6312 is not set
# CONFIG_SCSI_QLA6322 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set

#
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
# CONFIG_MD_LINEAR is not set
# CONFIG_MD_RAID0 is not set
CONFIG_MD_RAID1=y
# CONFIG_MD_RAID5 is not set
# CONFIG_MD_RAID6 is not set
# CONFIG_MD_MULTIPATH is not set
# CONFIG_BLK_DEV_DM is not set

#
# Fusion MPT device support
#
CONFIG_FUSION=y
CONFIG_FUSION_MAX_SGE=40
# CONFIG_FUSION_ISENSE is not set
# CONFIG_FUSION_CTL is not set

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

#
# I2O device support
#

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
# CONFIG_NETLINK_DEV is not set
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y

#
# IP: Virtual Server Configuration
#
# CONFIG_IP_VS is not set
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
CONFIG_INET6_IPCOMP=y
CONFIG_IPV6_TUNNEL=y
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set

#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=m
CONFIG_IP_NF_FTP=m
CONFIG_IP_NF_IRC=m
CONFIG_IP_NF_TFTP=m
CONFIG_IP_NF_AMANDA=m
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_LIMIT=m
CONFIG_IP_NF_MATCH_IPRANGE=m
CONFIG_IP_NF_MATCH_MAC=m
CONFIG_IP_NF_MATCH_PKTTYPE=m
CONFIG_IP_NF_MATCH_MARK=m
CONFIG_IP_NF_MATCH_MULTIPORT=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_DSCP=m
CONFIG_IP_NF_MATCH_AH_ESP=m
CONFIG_IP_NF_MATCH_LENGTH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_TCPMSS=m
CONFIG_IP_NF_MATCH_HELPER=m
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_SAME=m
CONFIG_IP_NF_NAT_LOCAL=y
# CONFIG_IP_NF_NAT_SNMP_BASIC is not set
CONFIG_IP_NF_NAT_IRC=m
CONFIG_IP_NF_NAT_FTP=m
CONFIG_IP_NF_NAT_TFTP=m
CONFIG_IP_NF_NAT_AMANDA=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_DSCP=m
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_CLASSIFY=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_TARGET_TCPMSS=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m
CONFIG_IP_NF_TARGET_NOTRACK=m
CONFIG_IP_NF_RAW=m

#
# IPv6: Netfilter Configuration
#
CONFIG_IP6_NF_QUEUE=m
CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_LIMIT=m
CONFIG_IP6_NF_MATCH_MAC=m
CONFIG_IP6_NF_MATCH_RT=m
CONFIG_IP6_NF_MATCH_OPTS=m
CONFIG_IP6_NF_MATCH_FRAG=m
CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_MULTIPORT=m
CONFIG_IP6_NF_MATCH_OWNER=m
CONFIG_IP6_NF_MATCH_MARK=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_AHESP=m
CONFIG_IP6_NF_MATCH_LENGTH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_TARGET_MARK=m
CONFIG_IP6_NF_RAW=m
CONFIG_XFRM=y
CONFIG_XFRM_USER=m

#
# SCTP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_FASTROUTE is not set
# CONFIG_NET_HW_FLOWCONTROL is not set

#
# QoS and/or fair queueing
#
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
CONFIG_NET_SCH_CSZ=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_DELAY=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_POLICE=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_KGDBOE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NETPOLL_RX is not set
# CONFIG_NETPOLL_TRAP is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set

#
# ARCnet devices
#
# CONFIG_ARCNET is not set

#
# Ethernet (10 or 100Mbit)
#
# CONFIG_NET_ETHERNET is not set

#
# Ethernet (1000 Mbit)
#
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
# CONFIG_SK98LIN is not set
CONFIG_TIGON3=m

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_S2IO is not set

#
# Token Ring devices
#
# CONFIG_TR is not set

#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set

#
# ISDN subsystem
#
# CONFIG_ISDN is not set

#
# Telephony Support
#
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set

#
# Input I/O drivers
#
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PCIPS2 is not set

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

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

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_NR_UARTS=4
# CONFIG_SERIAL_8250_EXTENDED is not set

#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
# CONFIG_LEGACY_PTYS is not set
# CONFIG_QIC02_TAPE is not set

#
# IPMI
#
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_DEVICE_INTERFACE=m
# CONFIG_IPMI_SI is not set
CONFIG_IPMI_WATCHDOG=m

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=y
# CONFIG_NVRAM is not set
CONFIG_RTC=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set

#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
# CONFIG_AGP_INTEL_MCH is not set
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
CONFIG_HANGCHECK_TIMER=m

#
# I2C support
#
CONFIG_I2C=m
CONFIG_I2C_CHARDEV=m

#
# I2C Algorithms
#
# CONFIG_I2C_ALGOBIT is not set
# CONFIG_I2C_ALGOPCF is not set

#
# I2C Hardware Bus support
#
# CONFIG_I2C_ALI1535 is not set
# CONFIG_I2C_ALI1563 is not set
# CONFIG_I2C_ALI15X3 is not set
# CONFIG_I2C_AMD756 is not set
CONFIG_I2C_AMD8111=m
# CONFIG_I2C_I801 is not set
# CONFIG_I2C_I810 is not set
CONFIG_I2C_ISA=m
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
# CONFIG_I2C_PROSAVAGE is not set
# CONFIG_I2C_SAVAGE4 is not set
# CONFIG_SCx200_ACB is not set
# CONFIG_I2C_SIS5595 is not set
# CONFIG_I2C_SIS630 is not set
# CONFIG_I2C_SIS96X is not set
# CONFIG_I2C_VIA is not set
# CONFIG_I2C_VIAPRO is not set
# CONFIG_I2C_VOODOO3 is not set

#
# Hardware Sensors Chip support
#
CONFIG_I2C_SENSOR=m
CONFIG_SENSORS_ADM1021=m
CONFIG_SENSORS_ASB100=m
CONFIG_SENSORS_DS1621=m
CONFIG_SENSORS_FSCHER=m
CONFIG_SENSORS_GL518SM=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM78=m
CONFIG_SENSORS_LM80=m
CONFIG_SENSORS_LM83=m
CONFIG_SENSORS_LM85=m
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_VIA686A=m
CONFIG_SENSORS_W83781D=m
CONFIG_SENSORS_W83L785TS=m
CONFIG_SENSORS_W83627HF=m

#
# Other I2C Chip support
#
CONFIG_SENSORS_EEPROM=m
# CONFIG_SENSORS_PCF8574 is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set

#
# Misc devices
#
# CONFIG_IBM_ASM is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set

#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set

#
# Graphics support
#
# CONFIG_FB is not set
CONFIG_VIDEO_SELECT=y

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y

#
# Sound
#
# CONFIG_SOUND is not set

#
# USB support
#
# CONFIG_USB is not set

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
# CONFIG_SMBIOS is not set

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
# CONFIG_EXT2_FS_SECURITY is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
# CONFIG_EXT3_FS_SECURITY is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
CONFIG_REISERFS_PROC_INFO=y
# CONFIG_REISERFS_FS_XATTR is not set
CONFIG_JFS_FS=m
# CONFIG_JFS_POSIX_ACL is not set
# CONFIG_JFS_DEBUG is not set
CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
# CONFIG_XFS_RT is not set
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_SECURITY is not set
# CONFIG_XFS_POSIX_ACL is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_QUOTA is not set
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m

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

#
# DOS/FAT/NT Filesystems
#
# CONFIG_FAT_FS is not set
# CONFIG_NTFS_FS is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_SYSFS=y
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
# CONFIG_DEVFS_DEBUG is not set
# CONFIG_DEVPTS_FS_XATTR is not set
CONFIG_TMPFS=y
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y

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

#
# Network File Systems
#
CONFIG_NFS_FS=m
CONFIG_NFS_V3=y
# CONFIG_NFS_V4 is not set
# CONFIG_NFS_DIRECTIO is not set
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V4 is not set
# CONFIG_NFSD_TCP is not set
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_SUNRPC=m
# CONFIG_RPCSEC_GSS_KRB5 is not set
# CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_INTERMEZZO_FS is not set
# CONFIG_AFS_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y

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

#
# Profiling support
#
# CONFIG_PROFILING is not set

#
# Kernel hacking
#
# CONFIG_DEBUG_KERNEL is not set
# CONFIG_MAGIC_SYSRQ is not set
CONFIG_SCHEDSTATS=y
# CONFIG_FRAME_POINTER is not set

#
# Security options
#
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
CONFIG_CRYPTO=y
CONFIG_CRYPTO_HMAC=y
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
# CONFIG_CRYPTO_SERPENT is not set
CONFIG_CRYPTO_AES=m
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST6 is not set
# CONFIG_CRYPTO_ARC4 is not set
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_CRC32C=m
# CONFIG_CRYPTO_TEST is not set

#
# Library routines
#
CONFIG_CRC32=y
CONFIG_LIBCRC32C=m
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 15:59                   ` Arjan van de Ven
@ 2004-05-07 16:09                     ` J. Bruce Fields
  2004-05-07 16:11                     ` Steve Lord
  1 sibling, 0 replies; 94+ messages in thread
From: J. Bruce Fields @ 2004-05-07 16:09 UTC (permalink / raw)
  To: Arjan van de Ven
  Cc: Steve Lord, Dave Jones, Paul Jakma, Valdis.Kletnieks,
	Andrew Morton, Linux Kernel ML

On Fri, May 07, 2004 at 05:59:43PM +0200, Arjan van de Ven wrote:
> On Fri, May 07, 2004 at 10:47:56AM -0500, Steve Lord wrote:
> > >-	if (mlen > sizeof(buf))
> > >+	obj.data = kmalloc(1024, GFP_KERNEL);
> > >+	if (!obj.data)
> > >+		return -ENOMEM;
> > >+
> > >+	if (mlen > 1024) {
> > 
> > That's what I hate about all of this, just think how much stack that
> > kmalloc can take in low memory situations.... it might end up in
> > writepage on another nfs file....
> 
> it clearly needs to be GFP_NOFS

The function is question is essentially a write method for a virtual
filesystem (rpc_pipefs) that's used to communicate with some
NFSv4-related daemons.  It isn't called from any of the NFS fileystem
code.

--Bruce Fields

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 15:59                   ` Arjan van de Ven
  2004-05-07 16:09                     ` J. Bruce Fields
@ 2004-05-07 16:11                     ` Steve Lord
  2004-05-07 16:28                       ` Jörn Engel
  1 sibling, 1 reply; 94+ messages in thread
From: Steve Lord @ 2004-05-07 16:11 UTC (permalink / raw)
  To: Arjan van de Ven
  Cc: Dave Jones, Paul Jakma, Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

Arjan van de Ven wrote:
> On Fri, May 07, 2004 at 10:47:56AM -0500, Steve Lord wrote:
> 
>>>-	if (mlen > sizeof(buf))
>>>+	obj.data = kmalloc(1024, GFP_KERNEL);
>>>+	if (!obj.data)
>>>+		return -ENOMEM;
>>>+
>>>+	if (mlen > 1024) {
>>
>>That's what I hate about all of this, just think how much stack that
>>kmalloc can take in low memory situations.... it might end up in
>>writepage on another nfs file....
> 
> 
> it clearly needs to be GFP_NOFS

That was not really my point, consider any memory allocation on the
stack which is being replaced with an allocate to save space. Then replace
the saved stack space with the potential stack space used to
free memory by writing it out via a filesystem. You cannot make all
the allocations in the kernel GFP_NOFS.

Now at least if the memory is allocated high enough up in the
call chain it fixes the problems of a function with a large
stack frame with a deep stack underneath it. It does not fix
anything if the function is already deep in the stack.

All this is doing is papering over the cracks.

Steve



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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 16:11                     ` Steve Lord
@ 2004-05-07 16:28                       ` Jörn Engel
  0 siblings, 0 replies; 94+ messages in thread
From: Jörn Engel @ 2004-05-07 16:28 UTC (permalink / raw)
  To: Steve Lord
  Cc: Arjan van de Ven, Dave Jones, Paul Jakma, Valdis.Kletnieks,
	Andrew Morton, Linux Kernel ML

On Fri, 7 May 2004 11:11:30 -0500, Steve Lord wrote:
> 
> That was not really my point, consider any memory allocation on the
> stack which is being replaced with an allocate to save space. Then replace
> the saved stack space with the potential stack space used to
> free memory by writing it out via a filesystem. You cannot make all
> the allocations in the kernel GFP_NOFS.
> 
> Now at least if the memory is allocated high enough up in the
> call chain it fixes the problems of a function with a large
> stack frame with a deep stack underneath it. It does not fix
> anything if the function is already deep in the stack.
> 
> All this is doing is papering over the cracks.

No, it turns two problems into one.  We have the problem you describe
anyway, there is no point avoiding it here.  It remains unsolved, but
that's just one problem left, not two.

Would it make sense to switch stacks if memory allocation has to free
other memory first?  Sounds a bit insane, but that problem needs a
solution as well.

Jörn

-- 
...one more straw can't possibly matter...
-- Kirby Bakken

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 15:26                   ` Martin J. Bligh
@ 2004-05-07 19:41                     ` Andrew Morton
  0 siblings, 0 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-07 19:41 UTC (permalink / raw)
  To: Martin J. Bligh; +Cc: paul, arjanv, Valdis.Kletnieks, linux-kernel

"Martin J. Bligh" <mbligh@aracnet.com> wrote:
>
> 2 nfs_writepage_sync is a known stack-abuser ;-) 1632 bytes on PPC64 at least
>  (from Anton's data). Maybe it's that struct nfs_write_data ?

 (from Anton's data). Maybe it's that struct nfs_write_data ?


diff -puN fs/nfs/write.c~nfs_writepage_sync-stack-reduction fs/nfs/write.c
--- 25/fs/nfs/write.c~nfs_writepage_sync-stack-reduction	2004-05-07 12:36:51.648098192 -0700
+++ 25-akpm/fs/nfs/write.c	2004-05-07 12:39:41.320304096 -0700
@@ -179,7 +179,13 @@ static int nfs_writepage_sync(struct fil
 {
 	unsigned int	wsize = NFS_SERVER(inode)->wsize;
 	int		result, written = 0;
-	struct nfs_write_data	wdata = {
+	struct nfs_write_data *wdata;
+
+	wdata = kmalloc(sizeof(*wdata), GFP_NOFS);
+	if (!wdata)
+		return -ENOMEM;
+
+	*wdata = (struct nfs_write_data) {
 		.flags		= how,
 		.cred		= NULL,
 		.inode		= inode,
@@ -192,8 +198,8 @@ static int nfs_writepage_sync(struct fil
 			.count		= wsize,
 		},
 		.res		= {
-			.fattr		= &wdata.fattr,
-			.verf		= &wdata.verf,
+			.fattr		= &wdata->fattr,
+			.verf		= &wdata->verf,
 		},
 	};
 
@@ -205,22 +211,22 @@ static int nfs_writepage_sync(struct fil
 	nfs_begin_data_update(inode);
 	do {
 		if (count < wsize)
-			wdata.args.count = count;
-		wdata.args.offset = page_offset(page) + wdata.args.pgbase;
+			wdata->args.count = count;
+		wdata->args.offset = page_offset(page) + wdata->args.pgbase;
 
-		result = NFS_PROTO(inode)->write(&wdata, file);
+		result = NFS_PROTO(inode)->write(wdata, file);
 
 		if (result < 0) {
 			/* Must mark the page invalid after I/O error */
 			ClearPageUptodate(page);
 			goto io_error;
 		}
-		if (result < wdata.args.count)
+		if (result < wdata->args.count)
 			printk(KERN_WARNING "NFS: short write, count=%u, result=%d\n",
-					wdata.args.count, result);
+					wdata->args.count, result);
 
-		wdata.args.offset += result;
-	        wdata.args.pgbase += result;
+		wdata->args.offset += result;
+	        wdata->args.pgbase += result;
 		written += result;
 		count -= result;
 	} while (count);
@@ -234,9 +240,10 @@ static int nfs_writepage_sync(struct fil
 
 io_error:
 	nfs_end_data_update_defer(inode);
-	if (wdata.cred)
-		put_rpccred(wdata.cred);
+	if (wdata->cred)
+		put_rpccred(wdata->cred);
 
+	kfree(wdata);
 	return written ? written : result;
 }
 

_


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07  6:51             ` Arjan van de Ven
  2004-05-07 15:13               ` Dave Jones
@ 2004-05-07 19:45               ` Paul Jakma
  2004-05-07 19:48                 ` Paul Jakma
  1 sibling, 1 reply; 94+ messages in thread
From: Paul Jakma @ 2004-05-07 19:45 UTC (permalink / raw)
  To: Arjan van de Ven; +Cc: Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

On Fri, 7 May 2004, Arjan van de Ven wrote:

> NFSv4 has a > 1Kb stack user; Dave Jones has a fix pending for
> that...

I'm using NFSv3 though.

regards,
-- 
Paul Jakma	paul@clubi.ie	paul@jakma.org	Key ID: 64A2FF6A
	warning: do not ever send email to spam@dishone.st
Fortune:
Never invest your money in anything that eats or needs repainting.
		-- Billy Rose

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-07 19:45               ` Paul Jakma
@ 2004-05-07 19:48                 ` Paul Jakma
  0 siblings, 0 replies; 94+ messages in thread
From: Paul Jakma @ 2004-05-07 19:48 UTC (permalink / raw)
  To: Arjan van de Ven; +Cc: Valdis.Kletnieks, Andrew Morton, Linux Kernel ML

On Fri, 7 May 2004, Paul Jakma wrote:

> On Fri, 7 May 2004, Arjan van de Ven wrote:
> 
> > NFSv4 has a > 1Kb stack user; Dave Jones has a fix pending for
> > that...
> 
> I'm using NFSv3 though.

Well.. the mount itself is NFSv3 at least. The kernel does however
have NFSv4 client support and support for the rpc_pipefs fs.

regards,
-- 
Paul Jakma	paul@clubi.ie	paul@jakma.org	Key ID: 64A2FF6A
	warning: do not ever send email to spam@dishone.st
Fortune:
Forgive and forget.
		-- Cervantes

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

* Re: 2.6.6-rc3-mm2
  2004-05-07  4:16     ` 2.6.6-rc3-mm2 Rusty Russell
  2004-05-07 16:05       ` 2.6.6-rc3-mm2 Bruce Guenter
@ 2004-05-07 20:13       ` R. J. Wysocki
  2004-05-08  6:09         ` 2.6.6-rc3-mm2 Andrew Morton
  1 sibling, 1 reply; 94+ messages in thread
From: R. J. Wysocki @ 2004-05-07 20:13 UTC (permalink / raw)
  To: Rusty Russell, Andrew Morton; +Cc: Bruce Guenter, lkml - Kernel Mailing List

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

On Friday 07 of May 2004 06:16, Rusty Russell wrote:
> On Fri, 2004-05-07 at 12:52, Andrew Morton wrote:
> > Bruce Guenter <bruceg@em.ca> wrote:
> > > On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
> > > > Move-saved_command_line-to-init-mainc.patch
> > > >   Move saved_command_line to init/main.c
> > >
> > > This patch appears to be breaking serial console for me.  Reverting
> > > this patch with patch -R makes it work again.  I can't tell from the
> > > contents of the patch why it causes problems, but it does.  I'd be
> > > happy to provide any further details if required.
> >
> > Thanks for narrowing it down - I'd been meaning to look into the serial
> > console problem.
> >
> > Rusty, can you have a ponder please?
>
> Works for me: I use serial console.  Config please.

As you wish,

RJW

[-- Attachment #2: 2.6.6-rc3-mm2.config --]
[-- Type: text/plain, Size: 27311 bytes --]

#
# Automatically generated make config: don't edit
#
CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_X86_CMPXCHG=y
CONFIG_EARLY_PRINTK=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_GENERIC_ISA_DMA=y

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

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

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

#
# Processor type and features
#
CONFIG_MK8=y
# CONFIG_MPSC is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_L1_CACHE_BYTES=64
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
# CONFIG_MICROCODE is not set
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_MTRR=y
CONFIG_SMP=y
# CONFIG_PREEMPT is not set
CONFIG_K8_NUMA=y
CONFIG_DISCONTIGMEM=y
CONFIG_NUMA=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_NR_CPUS=2
CONFIG_GART_IOMMU=y
CONFIG_SWIOTLB=y
CONFIG_X86_MCE=y

#
# Power management options
#
CONFIG_PM=y
# CONFIG_SOFTWARE_SUSPEND is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
# CONFIG_ACPI_SLEEP is not set
CONFIG_ACPI_AC=y
# CONFIG_ACPI_BATTERY is not set
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_TOSHIBA is not set
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
# CONFIG_PCI_MMCONFIG is not set
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y

#
# PCMCIA/CardBus support
#
# CONFIG_PCMCIA is not set

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_IA32_EMULATION=y
CONFIG_IA32_AOUT=y
CONFIG_COMPAT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_UID16=y

#
# Device Drivers
#

#
# Generic Driver Options
#
# CONFIG_FW_LOADER is not set
# CONFIG_DEBUG_DRIVER is not set

#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set

#
# Parallel port support
#
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
CONFIG_PARPORT_PC_CML1=m
# CONFIG_PARPORT_SERIAL is not set
CONFIG_PARPORT_PC_FIFO=y
CONFIG_PARPORT_PC_SUPERIO=y
CONFIG_PARPORT_OTHER=y
CONFIG_PARPORT_1284=y

#
# Plug and Play support
#

#
# Block devices
#
CONFIG_BLK_DEV_FD=m
# CONFIG_PARIDE is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_CRYPTOLOOP=m
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_CARMEL is not set
# CONFIG_BLK_DEV_RAM is not set
CONFIG_LBD=y

#
# ATA/ATAPI/MFM/RLL support
#
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y

#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_IDEDISK_STROKE=y
CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
CONFIG_BLK_DEV_IDESCSI=m
# CONFIG_IDE_TASK_IOCTL is not set
# CONFIG_IDE_TASKFILE_IO is not set

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
# CONFIG_BLK_DEV_CMD640 is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_OFFBOARD=y
CONFIG_BLK_DEV_GENERIC=y
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_ADMA=y
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
# CONFIG_BLK_DEV_ATIIXP is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_IVB=y
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set

#
# SCSI device support
#
CONFIG_SCSI=y
CONFIG_SCSI_PROC_FS=y

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

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

#
# SCSI Transport Attributes
#
CONFIG_SCSI_SPI_ATTRS=y
# CONFIG_SCSI_FC_ATTRS is not set

#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_MEGARAID is not set
CONFIG_SCSI_SATA=y
# CONFIG_SCSI_SATA_SVW is not set
# CONFIG_SCSI_ATA_PIIX is not set
# CONFIG_SCSI_SATA_PROMISE is not set
# CONFIG_SCSI_SATA_SX4 is not set
CONFIG_SCSI_SATA_SIL=y
# CONFIG_SCSI_SATA_SIS is not set
# CONFIG_SCSI_SATA_VIA is not set
# CONFIG_SCSI_SATA_VITESSE is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_CPQFCTS is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_EATA_PIO is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_PPA is not set
# CONFIG_SCSI_IMM is not set
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
# CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set
# CONFIG_SCSI_QLOGIC_ISP is not set
# CONFIG_SCSI_QLOGIC_FC is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
CONFIG_SCSI_QLA2XXX=y
# CONFIG_SCSI_QLA21XX is not set
# CONFIG_SCSI_QLA22XX is not set
# CONFIG_SCSI_QLA2300 is not set
# CONFIG_SCSI_QLA2322 is not set
# CONFIG_SCSI_QLA6312 is not set
# CONFIG_SCSI_QLA6322 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
CONFIG_SCSI_DEBUG=m

#
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
# CONFIG_MD_LINEAR is not set
# CONFIG_MD_RAID0 is not set
CONFIG_MD_RAID1=y
CONFIG_MD_RAID5=y
# CONFIG_MD_RAID6 is not set
CONFIG_MD_MULTIPATH=m
# CONFIG_BLK_DEV_DM is not set

#
# Fusion MPT device support
#
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#
CONFIG_IEEE1394=m

#
# Subsystem Options
#
# CONFIG_IEEE1394_VERBOSEDEBUG is not set
# CONFIG_IEEE1394_OUI_DB is not set
CONFIG_IEEE1394_EXTRA_CONFIG_ROMS=y
CONFIG_IEEE1394_CONFIG_ROM_IP1394=y

#
# Device Drivers
#

#
# Texas Instruments PCILynx requires I2C
#
CONFIG_IEEE1394_OHCI1394=m

#
# Protocol Drivers
#
CONFIG_IEEE1394_VIDEO1394=m
CONFIG_IEEE1394_SBP2=m
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
CONFIG_IEEE1394_ETH1394=m
CONFIG_IEEE1394_DV1394=m
CONFIG_IEEE1394_RAWIO=m
CONFIG_IEEE1394_CMP=m
CONFIG_IEEE1394_AMDTP=m

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=m
CONFIG_PACKET_MMAP=y
# CONFIG_NETLINK_DEV is not set
CONFIG_UNIX=y
CONFIG_NET_KEY=y
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y

#
# IP: Virtual Server Configuration
#
# CONFIG_IP_VS is not set
# CONFIG_IPV6 is not set
CONFIG_NETFILTER=y
CONFIG_NETFILTER_DEBUG=y

#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_FTP=y
CONFIG_IP_NF_IRC=m
CONFIG_IP_NF_TFTP=m
CONFIG_IP_NF_AMANDA=m
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_LIMIT=m
CONFIG_IP_NF_MATCH_IPRANGE=m
CONFIG_IP_NF_MATCH_MAC=m
CONFIG_IP_NF_MATCH_PKTTYPE=m
CONFIG_IP_NF_MATCH_MARK=m
CONFIG_IP_NF_MATCH_MULTIPORT=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_DSCP=m
CONFIG_IP_NF_MATCH_AH_ESP=m
CONFIG_IP_NF_MATCH_LENGTH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_TCPMSS=m
CONFIG_IP_NF_MATCH_HELPER=m
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_SAME=m
CONFIG_IP_NF_NAT_LOCAL=y
CONFIG_IP_NF_NAT_SNMP_BASIC=m
CONFIG_IP_NF_NAT_IRC=m
CONFIG_IP_NF_NAT_FTP=m
CONFIG_IP_NF_NAT_TFTP=m
CONFIG_IP_NF_NAT_AMANDA=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_DSCP=m
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_CLASSIFY=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_TARGET_TCPMSS=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m
# CONFIG_IP_NF_RAW is not set
CONFIG_XFRM=y
CONFIG_XFRM_USER=m

#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IP_SCTP=m
CONFIG_SCTP_DBG_MSG=y
CONFIG_SCTP_DBG_OBJCNT=y
CONFIG_SCTP_HMAC_NONE=y
# CONFIG_SCTP_HMAC_SHA1 is not set
# CONFIG_SCTP_HMAC_MD5 is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_FASTROUTE is not set
# CONFIG_NET_HW_FLOWCONTROL is not set

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

#
# Network testing
#
CONFIG_NET_PKTGEN=m
# CONFIG_KGDBOE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NETPOLL_RX is not set
# CONFIG_NETPOLL_TRAP is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set

#
# ARCnet devices
#
# CONFIG_ARCNET is not set

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

#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_HP100 is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
CONFIG_AMD8111_ETH=m
# CONFIG_AMD8111E_NAPI is not set
# CONFIG_ADAPTEC_STARFIRE is not set
CONFIG_B44=m
# CONFIG_FORCEDETH is not set
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not set
CONFIG_E100=m
# CONFIG_E100_NAPI is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_8139CP is not set
CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_VIA_RHINE is not set

#
# Ethernet (1000 Mbit)
#
CONFIG_ACENIC=m
# CONFIG_ACENIC_OMIT_TIGON_I is not set
# CONFIG_DL2K is not set
CONFIG_E1000=m
# CONFIG_E1000_NAPI is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
# CONFIG_SK98LIN is not set
CONFIG_TIGON3=m

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_S2IO is not set

#
# Token Ring devices
#
# CONFIG_TR is not set

#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m
# CONFIG_SLIP is not set
# CONFIG_NET_FC is not set
CONFIG_SHAPER=m
# CONFIG_NETCONSOLE is not set

#
# ISDN subsystem
#
# CONFIG_ISDN is not set

#
# Telephony Support
#
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1280
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=1024
CONFIG_INPUT_JOYDEV=m
# CONFIG_INPUT_TSDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set

#
# Input I/O drivers
#
CONFIG_GAMEPORT=m
CONFIG_SOUND_GAMEPORT=m
# CONFIG_GAMEPORT_NS558 is not set
# CONFIG_GAMEPORT_L4 is not set
# CONFIG_GAMEPORT_EMU10K1 is not set
# CONFIG_GAMEPORT_VORTEX is not set
# CONFIG_GAMEPORT_FM801 is not set
# CONFIG_GAMEPORT_CS461x is not set
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
CONFIG_SERIO_PCIPS2=m

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

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

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_ACPI=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
# CONFIG_SERIAL_8250_MANY_PORTS is not set
CONFIG_SERIAL_8250_SHARE_IRQ=y
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
# CONFIG_SERIAL_8250_MULTIPORT is not set
# CONFIG_SERIAL_8250_RSA is not set

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

#
# IPMI
#
CONFIG_IPMI_HANDLER=m
CONFIG_IPMI_PANIC_EVENT=y
# CONFIG_IPMI_PANIC_STRING is not set
CONFIG_IPMI_DEVICE_INTERFACE=m
# CONFIG_IPMI_SI is not set
CONFIG_IPMI_WATCHDOG=m

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=y
CONFIG_NVRAM=m
CONFIG_RTC=y
CONFIG_DTLK=m
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set

#
# Ftape, the floppy tape device driver
#
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
# CONFIG_AGP_INTEL_MCH is not set
CONFIG_DRM=y
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_GAMMA is not set
# CONFIG_DRM_R128 is not set
# CONFIG_DRM_RADEON is not set
# CONFIG_DRM_SIS is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
CONFIG_HANGCHECK_TIMER=m

#
# I2C support
#
# CONFIG_I2C is not set

#
# Misc devices
#
# CONFIG_IBM_ASM is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set

#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set

#
# Graphics support
#
CONFIG_FB=y
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON_OLD is not set
# CONFIG_FB_RADEON is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_VIRTUAL is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_PCI_CONSOLE=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
# CONFIG_FONT_6x11 is not set
# CONFIG_FONT_PEARL_8x8 is not set
# CONFIG_FONT_ACORN_8x8 is not set
# CONFIG_FONT_MINI_4x6 is not set
# CONFIG_FONT_SUN8x16 is not set
# CONFIG_FONT_SUN12x22 is not set

#
# Logo configuration
#
CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_LOGO_LINUX_CLUT224=y

#
# Sound
#
CONFIG_SOUND=m

#
# Advanced Linux Sound Architecture
#
CONFIG_SND=m
CONFIG_SND_BIT32_EMUL=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_DEBUG=y
CONFIG_SND_DEBUG_MEMORY=y
CONFIG_SND_DEBUG_DETECT=y

#
# Generic devices
#
CONFIG_SND_MPU401_UART=m
CONFIG_SND_DUMMY=m
CONFIG_SND_VIRMIDI=m
CONFIG_SND_MTPAV=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m

#
# PCI devices
#
CONFIG_SND_AC97_CODEC=m
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_ATIIXP is not set
# CONFIG_SND_AU8810 is not set
# CONFIG_SND_AU8820 is not set
# CONFIG_SND_AU8830 is not set
# CONFIG_SND_AZT3328 is not set
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_EMU10K1 is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_MIXART is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_HDSP is not set
# CONFIG_SND_TRIDENT is not set
# CONFIG_SND_YMFPCI is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_FM801 is not set
# CONFIG_SND_ICE1712 is not set
# CONFIG_SND_ICE1724 is not set
CONFIG_SND_INTEL8X0=m
# CONFIG_SND_INTEL8X0M is not set
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_VIA82XX is not set
# CONFIG_SND_VX222 is not set

#
# ALSA USB devices
#
# CONFIG_SND_USB_AUDIO is not set

#
# Open Sound System
#
CONFIG_SOUND_PRIME=m
# CONFIG_SOUND_BT878 is not set
# CONFIG_SOUND_CMPCI is not set
# CONFIG_SOUND_EMU10K1 is not set
# CONFIG_SOUND_FUSION is not set
# CONFIG_SOUND_CS4281 is not set
# CONFIG_SOUND_ES1370 is not set
# CONFIG_SOUND_ES1371 is not set
# CONFIG_SOUND_ESSSOLO1 is not set
# CONFIG_SOUND_MAESTRO is not set
# CONFIG_SOUND_MAESTRO3 is not set
CONFIG_SOUND_ICH=m
# CONFIG_SOUND_SONICVIBES is not set
# CONFIG_SOUND_TRIDENT is not set
# CONFIG_SOUND_MSNDCLAS is not set
# CONFIG_SOUND_MSNDPIN is not set
# CONFIG_SOUND_VIA82CXXX is not set
# CONFIG_SOUND_OSS is not set
# CONFIG_SOUND_ALI5455 is not set
# CONFIG_SOUND_FORTE is not set
# CONFIG_SOUND_RME96XX is not set
# CONFIG_SOUND_AD1980 is not set

#
# USB support
#
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set

#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
CONFIG_USB_BANDWIDTH=y
CONFIG_USB_DYNAMIC_MINORS=y

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=m
# CONFIG_USB_EHCI_SPLIT_ISO is not set
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
CONFIG_USB_OHCI_HCD=m
# CONFIG_USB_UHCI_HCD is not set

#
# USB Device Class drivers
#
CONFIG_USB_AUDIO=m
# CONFIG_USB_BLUETOOTH_TTY is not set
# CONFIG_USB_MIDI is not set
# CONFIG_USB_ACM is not set
CONFIG_USB_PRINTER=m
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_DPCM=y
CONFIG_USB_STORAGE_HP8200e=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y

#
# USB Human Interface Devices (HID)
#
CONFIG_USB_HID=m
CONFIG_USB_HIDINPUT=y
# CONFIG_HID_FF is not set
CONFIG_USB_HIDDEV=y

#
# USB HID Boot Protocol drivers
#
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set
# CONFIG_USB_AIPTEK is not set
# CONFIG_USB_WACOM is not set
# CONFIG_USB_KBTAB is not set
# CONFIG_USB_POWERMATE is not set
# CONFIG_USB_MTOUCH is not set
# CONFIG_USB_XPAD is not set
# CONFIG_USB_ATI_REMOTE is not set

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

#
# USB Multimedia devices
#
# CONFIG_USB_DABUSB is not set

#
# Video4Linux support is needed for USB Multimedia device support
#

#
# USB Network adaptors
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET is not set

#
# USB port drivers
#
# CONFIG_USB_USS720 is not set

#
# USB Serial Converter support
#
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
# CONFIG_USB_SERIAL_BELKIN is not set
# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
# CONFIG_USB_SERIAL_EMPEG is not set
# CONFIG_USB_SERIAL_FTDI_SIO is not set
# CONFIG_USB_SERIAL_VISOR is not set
# CONFIG_USB_SERIAL_IPAQ is not set
# CONFIG_USB_SERIAL_IR is not set
# CONFIG_USB_SERIAL_EDGEPORT is not set
# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
# CONFIG_USB_SERIAL_KEYSPAN is not set
# CONFIG_USB_SERIAL_KLSI is not set
# CONFIG_USB_SERIAL_KOBIL_SCT is not set
# CONFIG_USB_SERIAL_MCT_U232 is not set
CONFIG_USB_SERIAL_PL2303=m
# CONFIG_USB_SERIAL_SAFE is not set
# CONFIG_USB_SERIAL_CYBERJACK is not set
# CONFIG_USB_SERIAL_XIRCOM is not set
# CONFIG_USB_SERIAL_OMNINET is not set

#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_TIGL is not set
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_PHIDGETSERVO is not set
CONFIG_USB_TEST=m

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
# CONFIG_SMBIOS is not set

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=m
# CONFIG_REISERFS_CHECK is not set
CONFIG_REISERFS_PROC_INFO=y
# CONFIG_REISERFS_FS_XATTR is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_QUOTA=y
CONFIG_QFMT_V1=y
CONFIG_QFMT_V2=y
CONFIG_QUOTACTL=y
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m

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

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=m
# CONFIG_NTFS_FS is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_SYSFS=y
# CONFIG_DEVFS_FS is not set
CONFIG_DEVPTS_FS_XATTR=y
CONFIG_DEVPTS_FS_SECURITY=y
CONFIG_TMPFS=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_RAMFS=y

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

#
# Network File Systems
#
CONFIG_NFS_FS=m
CONFIG_NFS_V3=y
CONFIG_NFS_V4=y
CONFIG_NFS_DIRECTIO=y
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_SMB_FS=m
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="cp852"
CONFIG_CIFS=m
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_INTERMEZZO_FS is not set
# CONFIG_AFS_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y

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

#
# Profiling support
#
CONFIG_PROFILING=y
CONFIG_OPROFILE=m

#
# Kernel hacking
#
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SLAB is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_INIT_DEBUG is not set
# CONFIG_DEBUG_INFO is not set
CONFIG_SCHEDSTATS=y
# CONFIG_FRAME_POINTER is not set
# CONFIG_IOMMU_DEBUG is not set
# CONFIG_KGDB is not set

#
# Security options
#
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_CAPABILITIES=y
CONFIG_SECURITY_ROOTPLUG=m
CONFIG_SECURITY_SELINUX=y
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
# CONFIG_SECURITY_SELINUX_DISABLE is not set
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_SECURITY_SELINUX_MLS=y

#
# Cryptographic options
#
CONFIG_CRYPTO=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_NULL=m
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_AES=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_MICHAEL_MIC=m
# CONFIG_CRYPTO_CRC32C is not set
CONFIG_CRYPTO_TEST=m

#
# Library routines
#
CONFIG_CRC32=m
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y

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

* Re: 2.6.6-rc3-mm2
  2004-05-07 20:13       ` 2.6.6-rc3-mm2 R. J. Wysocki
@ 2004-05-08  6:09         ` Andrew Morton
       [not found]           ` <200405081329.43017.rjwysocki@sisk.pl>
  2004-05-08 16:59           ` 2.6.6-rc3-mm2 Bruce Guenter
  0 siblings, 2 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-08  6:09 UTC (permalink / raw)
  To: R. J. Wysocki; +Cc: rusty, bruceg, linux-kernel

"R. J. Wysocki" <rjwysocki@sisk.pl> wrote:
>
> On Friday 07 of May 2004 06:16, Rusty Russell wrote:
>  > On Fri, 2004-05-07 at 12:52, Andrew Morton wrote:
>  > > Bruce Guenter <bruceg@em.ca> wrote:
>  > > > On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
>  > > > > Move-saved_command_line-to-init-mainc.patch
>  > > > >   Move saved_command_line to init/main.c
>  > > >
>  > > > This patch appears to be breaking serial console for me.  Reverting
>  > > > this patch with patch -R makes it work again.  I can't tell from the
>  > > > contents of the patch why it causes problems, but it does.  I'd be
>  > > > happy to provide any further details if required.
>  > >
>  > > Thanks for narrowing it down - I'd been meaning to look into the serial
>  > > console problem.
>  > >
>  > > Rusty, can you have a ponder please?
>  >
>  > Works for me: I use serial console.  Config please.
> 
>  As you wish,

Works for me too.  Can you share your kernel boot commandline with us?

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

* Re: 2.6.6-rc3-mm2
       [not found]           ` <200405081329.43017.rjwysocki@sisk.pl>
@ 2004-05-08 11:31             ` Andrew Morton
  2004-05-08 16:25               ` 2.6.6-rc3-mm2 R. J. Wysocki
  2004-05-08 11:43             ` 2.6.6-rc3-mm2 Andrew Morton
  1 sibling, 1 reply; 94+ messages in thread
From: Andrew Morton @ 2004-05-08 11:31 UTC (permalink / raw)
  To: R. J. Wysocki; +Cc: rusty, linux-kernel

"R. J. Wysocki" <rjwysocki@sisk.pl> wrote:
>
> Sute, it's like that:
> 
>  kernel /boot/vmlinuz-2.6.6-rc3-mm2 root=/dev/sdb3 vga=792 hdc=ide-scsi 
>  console=ttyS0,115200 console=tty0
> 

Please try `console=ttyS0'.

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

* Re: 2.6.6-rc3-mm2
       [not found]           ` <200405081329.43017.rjwysocki@sisk.pl>
  2004-05-08 11:31             ` 2.6.6-rc3-mm2 Andrew Morton
@ 2004-05-08 11:43             ` Andrew Morton
  2004-05-08 12:16               ` 2.6.6-rc3-mm2 R. J. Wysocki
  1 sibling, 1 reply; 94+ messages in thread
From: Andrew Morton @ 2004-05-08 11:43 UTC (permalink / raw)
  To: R. J. Wysocki; +Cc: rusty, linux-kernel

"R. J. Wysocki" <rjwysocki@sisk.pl> wrote:
>
> Sute, it's like that:
> 
>  kernel /boot/vmlinuz-2.6.6-rc3-mm2 root=/dev/sdb3 vga=792 hdc=ide-scsi 
>  console=ttyS0,115200 console=tty0
> 

hm, according to the logic in there you should have seen the console
messages on tty0 because it was the last-specified.  That's what happens
here, whether or not Move-saved_command_line-to-init-mainc.patch is
applied.

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

* Re: 2.6.6-rc3-mm2
  2004-05-08 11:43             ` 2.6.6-rc3-mm2 Andrew Morton
@ 2004-05-08 12:16               ` R. J. Wysocki
  0 siblings, 0 replies; 94+ messages in thread
From: R. J. Wysocki @ 2004-05-08 12:16 UTC (permalink / raw)
  To: Andrew Morton; +Cc: rusty, linux-kernel

On Saturday 08 of May 2004 13:43, Andrew Morton wrote:
> "R. J. Wysocki" <rjwysocki@sisk.pl> wrote:
> > Sute, it's like that:
> >
> >  kernel /boot/vmlinuz-2.6.6-rc3-mm2 root=/dev/sdb3 vga=792 hdc=ide-scsi
> >  console=ttyS0,115200 console=tty0
>
> hm, according to the logic in there you should have seen the console
> messages on tty0 because it was the last-specified.  That's what happens
> here, whether or not Move-saved_command_line-to-init-mainc.patch is
> applied.

Well, I've been using this very command line for months, and it worked fine 
before 2.6.6-rc3-mm1.  Anyway, according to Documentation/serial-console.txt:

"You can specify multiple console= options on the kernel command line.
_Output_ _will_ _appear_ _on_ _all_ _of_ _them_ [emphasis mine]. The last 
device will be used when you open /dev/console. So, for example:

        console=ttyS1,9600 console=tty0

defines that opening /dev/console will get you the current foreground
virtual console, and kernel messages will appear on both the VGA
console and the 2nd serial port (ttyS1 or COM2) at 9600 baud."

And that's exactly what I need.  So, the syntax etc. might have changed, but 
shouldn't it be documented accordingly, then?


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

* Re: 2.6.6-rc3-mm2
  2004-05-08 11:31             ` 2.6.6-rc3-mm2 Andrew Morton
@ 2004-05-08 16:25               ` R. J. Wysocki
  0 siblings, 0 replies; 94+ messages in thread
From: R. J. Wysocki @ 2004-05-08 16:25 UTC (permalink / raw)
  To: Andrew Morton; +Cc: rusty, ak, linux-kernel

On Saturday 08 of May 2004 13:31, Andrew Morton wrote:
> "R. J. Wysocki" <rjwysocki@sisk.pl> wrote:
> > Sute, it's like that:
> >
> >  kernel /boot/vmlinuz-2.6.6-rc3-mm2 root=/dev/sdb3 vga=792 hdc=ide-scsi
> >  console=ttyS0,115200 console=tty0
>
> Please try `console=ttyS0'.

I have.  It does not help. :-(

Still, reversing the Move-saved_command_line-to-init-mainc.patch _does_ help, 
even with the above command line.  I guess it's an x86_64-specific issue.


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

* Re: 2.6.6-rc3-mm2
  2004-05-08  6:09         ` 2.6.6-rc3-mm2 Andrew Morton
       [not found]           ` <200405081329.43017.rjwysocki@sisk.pl>
@ 2004-05-08 16:59           ` Bruce Guenter
  2004-05-08 18:46             ` 2.6.6-rc3-mm2 Andrew Morton
  1 sibling, 1 reply; 94+ messages in thread
From: Bruce Guenter @ 2004-05-08 16:59 UTC (permalink / raw)
  To: Andrew Morton; +Cc: rusty, linux-kernel

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

On Fri, May 07, 2004 at 11:09:15PM -0700, Andrew Morton wrote:
> Works for me too.  Can you share your kernel boot commandline with us?

Sure.  I use (in grub):
	kernel /vmlinuz-2.6.6-rc2-mm2 vga=1 ro root=/dev/md15 elevator=deadline console=ttyS0,115200n8
-- 
Bruce Guenter <bruceg@em.ca> http://em.ca/~bruceg/ http://untroubled.org/
OpenPGP key: 699980E8 / D0B7 C8DD 365D A395 29DA  2E2A E96F B2DC 6999 80E8

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

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

* Re: 2.6.6-rc3-mm2
  2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
                   ` (10 preceding siblings ...)
  2004-05-06 21:46 ` 2.6.6-rc3-mm2 Bruce Guenter
@ 2004-05-08 18:31 ` Joseph Fannin
  11 siblings, 0 replies; 94+ messages in thread
From: Joseph Fannin @ 2004-05-08 18:31 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

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

On Wed, May 05, 2004 at 01:31:35AM -0700, Andrew Morton wrote:
> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.6-rc3/2.6.6-rc3-mm2/

> +fix-deadlock-in-journalled-quota-fix.patch
> 
>  Fix fix-deadlock-in-journalled-quota.patch

    This patch seems to be slightly mangled; patch complains if
fs/dquot.c.orig already exists, though it doesn't seem to create such
a file in either case.

> +remove-errno-refs.patch
> +ia64-remove-errno-refs.patch
> 
>  Fiddle with kernel syscalls and remove the global `errno' variable.  I
>  actually meant to drop this because we'll be doing it differently.

    I had to back these two patches out to build for ppc:

  LD      .tmp_vmlinux1
arch/ppc/kernel/built-in.o(.text+0x32a2): In function `execve':
arch/ppc/kernel/entry.S: undefined reference to `errno'
arch/ppc/kernel/built-in.o(.text+0x32a6):arch/ppc/kernel/entry.S:
undefined reference to `errno'
make: *** [.tmp_vmlinux1] Error 1

    Probably just another reason to drop them.  I think I'm about to
find out if I should have backed out the syscall patch too. :)

-- 
Joseph Fannin
jhf@rivenstone.net

"Bull in pure form is rare; there is usually some contamination by data."
    -- William G. Perry

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

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

* Re: 2.6.6-rc3-mm2
  2004-05-08 16:59           ` 2.6.6-rc3-mm2 Bruce Guenter
@ 2004-05-08 18:46             ` Andrew Morton
  0 siblings, 0 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-08 18:46 UTC (permalink / raw)
  To: Bruce Guenter; +Cc: rusty, linux-kernel

Bruce Guenter <bruceg@em.ca> wrote:
>
> On Fri, May 07, 2004 at 11:09:15PM -0700, Andrew Morton wrote:
> > Works for me too.  Can you share your kernel boot commandline with us?
> 
> Sure.  I use (in grub):
> 	kernel /vmlinuz-2.6.6-rc2-mm2 vga=1 ro root=/dev/md15 elevator=deadline console=ttyS0,115200n8

oh, and you're using x86_64 too.

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-05 23:04       ` Bartlomiej Zolnierkiewicz
  2004-05-06 12:55         ` Norberto Bensa
@ 2004-05-09 17:00         ` Bill Davidsen
  2004-05-09 18:25           ` Bartlomiej Zolnierkiewicz
  1 sibling, 1 reply; 94+ messages in thread
From: Bill Davidsen @ 2004-05-09 17:00 UTC (permalink / raw)
  To: linux-kernel

Bartlomiej Zolnierkiewicz wrote:
> On Wednesday 05 of May 2004 22:31, Bill Davidsen wrote:
> 
>>Andrew Morton wrote:
>>
>>>Dominik Karall <dominik.karall@gmx.net> wrote:
>>>
>>>>On Wednesday 05 May 2004 10:31, you wrote:
>>>>
>>>>>+make-4k-stacks-permanent.patch
>>>>>
>>>>>Fill my inbox.
>>>>
>>>>Hi Andrew!
>>>>
>>>>Is there any reason why this patch was applied? Because NVidia users
>>>>can't work with the original drivers now without removing this patch
>>>>every time.
>>>
>>>We need to push this issue along quickly.  The single-page stack
>>>generally gives us a better kernel and having the stack size configurable
>>>creates pain.
>>
>>Add my voice to those who don't think 4k stacks are a good idea as a
>>default, they break some things and seem to leave other paths (as others
>>have noted) on the edge. I'm not sure what you have in mind as a "better
>>kernel" but I'd rather have a worse kernel and not have to check 4k
>>stack as a possible problem before looking at other things if I get bad
>>behaviour.
>>
>>Reliability first, performance later. We've lived with the config for a
>>while, pain there is better than pain at runtime.
> 
> 
> Opposite opinion here.
> 
> If you want 100% reliability you shouldn't use -mm in the first place.
> 
> Making 4kb stacks default in -mm is very good idea so it will get necessary
> testing and fixing before being integrated into mainline.
> 
> Please also note that users of binary only modules always have choice:
> - new kernels without binary only modules
> - old kernels with binary only modules
> 
> It is really that simple.

No it's not that simple, this has nothing to do with binary modules, and 
everything to do with not making 4k stack the only available 
configuration in 2.6. Options are fine, but in a stable kernel series I 
don't think think that the default should change part way into the 
series, and certainly the availability of the original functionality 
shouldn't go away, which is what I read AKPMs original post to state as 
the goal.

Making changes to the kernel which will break existing applications 
seems to be the opposite of "stable." People who want a new kernel for 
fixes don't usually want to have to upgrade and/or rewrite their 
applications. The "we change the system interface everything we fix a 
bug" approach comes from a well-known software company, but shouldn't be 
the way *good* software is done.

-- 
bill davidsen <davidsen@tmr.com>
   CTO TMR Associates, Inc
   Doing interesting things with small computers since 1979

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-09 17:00         ` Bill Davidsen
@ 2004-05-09 18:25           ` Bartlomiej Zolnierkiewicz
  2004-05-11 16:24             ` Bill Davidsen
  0 siblings, 1 reply; 94+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-05-09 18:25 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: linux-kernel

On Sunday 09 of May 2004 19:00, Bill Davidsen wrote:
> Bartlomiej Zolnierkiewicz wrote:
> > On Wednesday 05 of May 2004 22:31, Bill Davidsen wrote:
> >>Andrew Morton wrote:
> >>>Dominik Karall <dominik.karall@gmx.net> wrote:
> >>>>On Wednesday 05 May 2004 10:31, you wrote:
> >>>>>+make-4k-stacks-permanent.patch
> >>>>>
> >>>>>Fill my inbox.
> >>>>
> >>>>Hi Andrew!
> >>>>
> >>>>Is there any reason why this patch was applied? Because NVidia users
> >>>>can't work with the original drivers now without removing this patch
> >>>>every time.
> >>>
> >>>We need to push this issue along quickly.  The single-page stack
> >>>generally gives us a better kernel and having the stack size
> >>> configurable creates pain.
> >>
> >>Add my voice to those who don't think 4k stacks are a good idea as a
> >>default, they break some things and seem to leave other paths (as others
> >>have noted) on the edge. I'm not sure what you have in mind as a "better
> >>kernel" but I'd rather have a worse kernel and not have to check 4k
> >>stack as a possible problem before looking at other things if I get bad
> >>behaviour.
> >>
> >>Reliability first, performance later. We've lived with the config for a
> >>while, pain there is better than pain at runtime.
> >
> > Opposite opinion here.
> >
> > If you want 100% reliability you shouldn't use -mm in the first place.
> >
> > Making 4kb stacks default in -mm is very good idea so it will get
> > necessary testing and fixing before being integrated into mainline.
> >
> > Please also note that users of binary only modules always have choice:
> > - new kernels without binary only modules
> > - old kernels with binary only modules
> >
> > It is really that simple.
>
> No it's not that simple, this has nothing to do with binary modules, and
> everything to do with not making 4k stack the only available
> configuration in 2.6. Options are fine, but in a stable kernel series I
> don't think think that the default should change part way into the
> series, and certainly the availability of the original functionality
> shouldn't go away, which is what I read AKPMs original post to state as
> the goal.

What functionality are you talking about?
We don't care about out of tree kernel code (be it GPL or Proprietary).

> Making changes to the kernel which will break existing applications
> seems to be the opposite of "stable." People who want a new kernel for
> fixes don't usually want to have to upgrade and/or rewrite their
> applications. The "we change the system interface everything we fix a

You don't understand what the patch is really about.

This is kernel stack not the user-space one so
this change can't brake any application.

> bug" approach comes from a well-known software company, but shouldn't be
> the way *good* software is done.

It doesn't change any kernel interface visible to user-space
and stack hungry kernel code needs fixing anyway.

Regards,
Bartlomiej


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-06 15:40         ` Arjan van de Ven
  2004-05-06 16:29           ` Valdis.Kletnieks
  2004-05-07  0:37           ` Paul Jakma
@ 2004-05-10 19:49           ` Bill Davidsen
  2004-05-10 20:31             ` Horst von Brand
  2004-05-11  8:45             ` Helge Hafting
  2 siblings, 2 replies; 94+ messages in thread
From: Bill Davidsen @ 2004-05-10 19:49 UTC (permalink / raw)
  To: linux-kernel

Arjan van de Ven wrote:
>>It's probably a Bad Idea to push this to Linus before the vendors that have
>>significant market-impact issues (again - anybody other than NVidia here?)
>>have gotten their stuff cleaned up...
> 
> 
> Ok I don't want to start a flamewar but... Do we want to hold linux back
> until all binary only module vendors have caught up ??

My questions is, hold it back from what? Having the 4k option is fine, 
it's just eliminating the current default which I think is undesirable. 
I tried 4k stack, I couldn't measure any improvement in anything (as in 
no visible speedup or saving in memory). For an embedded system, where 
space is tight and the code paths well known, sure, but I haven't been 
able to find or generate any objective improvement, other than some 
posts saying smaller is always better. Nothing slows a system down like 
a crash, even if it isn't followed by a restore from backup.

Feel free to point me at some results showing major improvement from 4k 
stacks, I'm open to data.

-- 
    -bill davidsen (davidsen@tmr.com)
"The secret to procrastination is to put things off until the
  last possible moment - but no longer"  -me

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

* Re: 2.6.6-rc3-mm2 (4KSTACK) 
  2004-05-10 19:49           ` Bill Davidsen
@ 2004-05-10 20:31             ` Horst von Brand
  2004-05-11  2:39               ` Andrew Morton
  2004-05-11  8:45             ` Helge Hafting
  1 sibling, 1 reply; 94+ messages in thread
From: Horst von Brand @ 2004-05-10 20:31 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: Linux Kernel Mailing List

Bill Davidsen <davidsen@tmr.com> said:

[...]

> I tried 4k stack, I couldn't measure any improvement in anything (as in 
> no visible speedup or saving in memory).

4K stacks lets the kernel create new threads/processes as long as there is
free memory; with 8K stacks it needs two consecutive free page frames in
physical memory, when memory is fragmented (and large) they are hard to
come by...
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-10 20:31             ` Horst von Brand
@ 2004-05-11  2:39               ` Andrew Morton
  0 siblings, 0 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-11  2:39 UTC (permalink / raw)
  To: Horst von Brand; +Cc: davidsen, linux-kernel

Horst von Brand <vonbrand@inf.utfsm.cl> wrote:
>
> Bill Davidsen <davidsen@tmr.com> said:
> 
> [...]
> 
> > I tried 4k stack, I couldn't measure any improvement in anything (as in 
> > no visible speedup or saving in memory).
> 
> 4K stacks lets the kernel create new threads/processes as long as there is
> free memory; with 8K stacks it needs two consecutive free page frames in
> physical memory, when memory is fragmented (and large) they are hard to
> come by...

This is true to a surprising extent.  A couple of weeks ago I observed my
256MB box freeing over 20MB of pages before it could successfully acquire a
single 1-order page.

That was during an updatedb run.

And a 1-order GFP_NOFS allocation was actually livelocking, because
!__GFP_FS allocations aren't allowed to enter dentry reclaim.  Which is why
VFS caches are now forced to use 0-order allocations.



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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-10 19:49           ` Bill Davidsen
  2004-05-10 20:31             ` Horst von Brand
@ 2004-05-11  8:45             ` Helge Hafting
  2004-05-11 17:59               ` several messages Bill Davidsen
  1 sibling, 1 reply; 94+ messages in thread
From: Helge Hafting @ 2004-05-11  8:45 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: linux-kernel

Bill Davidsen wrote:

> Arjan van de Ven wrote:
>
>>> It's probably a Bad Idea to push this to Linus before the vendors 
>>> that have
>>> significant market-impact issues (again - anybody other than NVidia 
>>> here?)
>>> have gotten their stuff cleaned up...
>>
>>
>>
>> Ok I don't want to start a flamewar but... Do we want to hold linux back
>> until all binary only module vendors have caught up ??
>
>
> My questions is, hold it back from what? Having the 4k option is fine, 
> it's just eliminating the current default which I think is 
> undesirable. I tried 4k stack, I couldn't measure any improvement in 
> anything (as in no visible speedup or saving in memory). 

The memory saving is usually modest: 4k per thread. It might make a 
difference for
those with many thousands of threads.   I believe this is unswappable 
memory,
which is much more valuable than ordinary process memory.

More interesting is that it removes one way for fork() to fail. With 8k 
stacks,
the new process needs to allocate two consecutive pages for those 8k.  That
might be impossible due to fragmentation, even if there are megabytes of 
free
memory. Such a problem usually only shows up after a long time.  Now we 
only need to
allocate a single page, which always works as long as there is any free 
memory at all.

> For an embedded system, where space is tight and the code paths well 
> known, sure, but I haven't been able to find or generate any objective 
> improvement, other than some posts saying smaller is always better. 
> Nothing slows a system down like a crash, even if it isn't followed by 
> a restore from backup.

Consider the case when your server (web/mail/other) fails to fork, and then
you can't login because that requires fork() too.  4k stacks remove this 
scenario,
and is a stability improvement.

Helge Hafting

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-09 18:25           ` Bartlomiej Zolnierkiewicz
@ 2004-05-11 16:24             ` Bill Davidsen
  2004-05-11 23:27               ` Bartlomiej Zolnierkiewicz
  0 siblings, 1 reply; 94+ messages in thread
From: Bill Davidsen @ 2004-05-11 16:24 UTC (permalink / raw)
  To: Bartlomiej Zolnierkiewicz; +Cc: linux-kernel

On Sun, 9 May 2004, Bartlomiej Zolnierkiewicz wrote:

> On Sunday 09 of May 2004 19:00, Bill Davidsen wrote:
> > No it's not that simple, this has nothing to do with binary modules, and
> > everything to do with not making 4k stack the only available
> > configuration in 2.6. Options are fine, but in a stable kernel series I
> > don't think think that the default should change part way into the
> > series, and certainly the availability of the original functionality
> > shouldn't go away, which is what I read AKPMs original post to state as
> > the goal.
> 
> What functionality are you talking about?
> We don't care about out of tree kernel code (be it GPL or Proprietary).

Let me say this one more time, since you keep changing the topic so you
can say that you don't care about something I never mentioned. I am
**NOT** talking about binary modules, I am **NOT** talking about out of
tree code, I am talking about applications which make calls that cause the
**IN TREE** code to use more than 4k.

> 
> > Making changes to the kernel which will break existing applications
> > seems to be the opposite of "stable." People who want a new kernel for
> > fixes don't usually want to have to upgrade and/or rewrite their
> > applications. The "we change the system interface everything we fix a
> 
> You don't understand what the patch is really about.
> 
> This is kernel stack not the user-space one so
> this change can't brake any application.

Right, the kernel code does not contain any places where the data passed
in a system call isn't reflected in stack usage.

> 
> > bug" approach comes from a well-known software company, but shouldn't be
> > the way *good* software is done.
> 
> It doesn't change any kernel interface visible to user-space
> and stack hungry kernel code needs fixing anyway.

And what better way to detect it than to release it in a stable kernel.
Don't bother to say "don't use -mm" AKPM has said it is intended for the
stable kernel, work or not.

===
Third request for info
===
I still haven't seen any objective data showing that there is any
measureable benefit from this, although I agree that smaller is good
practice, I don't think that throwing in a feature in a stable kernel,
which has been reported by others to corrupt data, is the best way to do
it.

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.


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

* Re: several messages
  2004-05-11  8:45             ` Helge Hafting
@ 2004-05-11 17:59               ` Bill Davidsen
  0 siblings, 0 replies; 94+ messages in thread
From: Bill Davidsen @ 2004-05-11 17:59 UTC (permalink / raw)
  To: Horst von Brand, Andrew Morton, Helge Hafting; +Cc: Linux Kernel Mailing List

Thank all of you for this information. This is an interesting way to
overcome the kernel memory fragmentation issue. I would have thought it
was more important to address having the memory so fragmented that there
is no 8k chunk left "even with many megabytes free" as someone wrote.


On Mon, 10 May 2004, Horst von Brand wrote:

> Bill Davidsen <davidsen@tmr.com> said:
> 
> [...]
> 
> > I tried 4k stack, I couldn't measure any improvement in anything (as in 
> > no visible speedup or saving in memory).
> 
> 4K stacks lets the kernel create new threads/processes as long as there is
> free memory; with 8K stacks it needs two consecutive free page frames in
> physical memory, when memory is fragmented (and large) they are hard to
> come by...
> -- 
> Dr. Horst H. von Brand                   User #22616 counter.li.org
> Departamento de Informatica                     Fono: +56 32 654431
> Universidad Tecnica Federico Santa Maria              +56 32 654239
> Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513
> 

On Mon, 10 May 2004, Andrew Morton wrote:

> Horst von Brand <vonbrand@inf.utfsm.cl> wrote:
> >
> > Bill Davidsen <davidsen@tmr.com> said:
> > 
> > [...]
> > 
> > > I tried 4k stack, I couldn't measure any improvement in anything (as in 
> > > no visible speedup or saving in memory).
> > 
> > 4K stacks lets the kernel create new threads/processes as long as there is
> > free memory; with 8K stacks it needs two consecutive free page frames in
> > physical memory, when memory is fragmented (and large) they are hard to
> > come by...
> 
> This is true to a surprising extent.  A couple of weeks ago I observed my
> 256MB box freeing over 20MB of pages before it could successfully acquire a
> single 1-order page.
> 
> That was during an updatedb run.
> 
> And a 1-order GFP_NOFS allocation was actually livelocking, because
> !__GFP_FS allocations aren't allowed to enter dentry reclaim.  Which is why
> VFS caches are now forced to use 0-order allocations.
> 
> 

On Tue, 11 May 2004, Helge Hafting wrote:

> Bill Davidsen wrote:
> 
> > Arjan van de Ven wrote:
> >
> >>> It's probably a Bad Idea to push this to Linus before the vendors 
> >>> that have
> >>> significant market-impact issues (again - anybody other than NVidia 
> >>> here?)
> >>> have gotten their stuff cleaned up...
> >>
> >>
> >>
> >> Ok I don't want to start a flamewar but... Do we want to hold linux back
> >> until all binary only module vendors have caught up ??
> >
> >
> > My questions is, hold it back from what? Having the 4k option is fine, 
> > it's just eliminating the current default which I think is 
> > undesirable. I tried 4k stack, I couldn't measure any improvement in 
> > anything (as in no visible speedup or saving in memory). 
> 
> The memory saving is usually modest: 4k per thread. It might make a 
> difference for
> those with many thousands of threads.   I believe this is unswappable 
> memory,
> which is much more valuable than ordinary process memory.
> 
> More interesting is that it removes one way for fork() to fail. With 8k 
> stacks,
> the new process needs to allocate two consecutive pages for those 8k.  That
> might be impossible due to fragmentation, even if there are megabytes of 
> free
> memory. Such a problem usually only shows up after a long time.  Now we 
> only need to
> allocate a single page, which always works as long as there is any free 
> memory at all.
> 
> > For an embedded system, where space is tight and the code paths well 
> > known, sure, but I haven't been able to find or generate any objective 
> > improvement, other than some posts saying smaller is always better. 
> > Nothing slows a system down like a crash, even if it isn't followed by 
> > a restore from backup.
> 
> Consider the case when your server (web/mail/other) fails to fork, and then
> you can't login because that requires fork() too.  4k stacks remove this 
> scenario,
> and is a stability improvement.
> 
> Helge Hafting
> 

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-11 16:24             ` Bill Davidsen
@ 2004-05-11 23:27               ` Bartlomiej Zolnierkiewicz
  2004-05-11 23:50                 ` Andrew Morton
  0 siblings, 1 reply; 94+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-05-11 23:27 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: linux-kernel

On Tuesday 11 of May 2004 18:24, Bill Davidsen wrote:
> On Sun, 9 May 2004, Bartlomiej Zolnierkiewicz wrote:
> > On Sunday 09 of May 2004 19:00, Bill Davidsen wrote:
> > > No it's not that simple, this has nothing to do with binary modules,
> > > and everything to do with not making 4k stack the only available
> > > configuration in 2.6. Options are fine, but in a stable kernel series I
> > > don't think think that the default should change part way into the
> > > series, and certainly the availability of the original functionality
> > > shouldn't go away, which is what I read AKPMs original post to state as
> > > the goal.
> >
> > What functionality are you talking about?
> > We don't care about out of tree kernel code (be it GPL or Proprietary).
>
> Let me say this one more time, since you keep changing the topic so you
> can say that you don't care about something I never mentioned. I am
> **NOT** talking about binary modules, I am **NOT** talking about out of
> tree code, I am talking about applications which make calls that cause the
> **IN TREE** code to use more than 4k.

No need to flame, I really didn't know what you were talking about.

I agree that this is a very good argument against pushing this
change to mainline quickly (proposed originally by AKPM).

> > > Making changes to the kernel which will break existing applications
> > > seems to be the opposite of "stable." People who want a new kernel for
> > > fixes don't usually want to have to upgrade and/or rewrite their
> > > applications. The "we change the system interface everything we fix a
> >
> > You don't understand what the patch is really about.
> >
> > This is kernel stack not the user-space one so
> > this change can't brake any application.
>
> Right, the kernel code does not contain any places where the data passed
> in a system call isn't reflected in stack usage.

It won't break applications it will break kernel first. ;-)

You need to fix kernel code not the user space.

> > > bug" approach comes from a well-known software company, but shouldn't
> > > be the way *good* software is done.
> >
> > It doesn't change any kernel interface visible to user-space
> > and stack hungry kernel code needs fixing anyway.
>
> And what better way to detect it than to release it in a stable kernel.
> Don't bother to say "don't use -mm" AKPM has said it is intended for the
> stable kernel, work or not.

I see no problem with this approach (this patch in -mm then in linus')
but issues mentioned by you need fixing first.  I'm not proposing to
push it to mainline NOW - it needs to be done CAREFULLY but CAN be
done in 2.6 (i.e. 2.6.15).

I guess this is what we can't agree on.

> ===
> Third request for info
> ===
> I still haven't seen any objective data showing that there is any
> measureable benefit from this, although I agree that smaller is good
> practice, I don't think that throwing in a feature in a stable kernel,
> which has been reported by others to corrupt data, is the best way to do
> it.

There was some evidence from AKPM (and Arjan AFAIR).
[ BTW wasn't the corruption only seen with nvidia module? ]
I think we can prevent it by adding something ala 4kstack flag
to the module.

Regards,
Bartlomiej


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-11 23:27               ` Bartlomiej Zolnierkiewicz
@ 2004-05-11 23:50                 ` Andrew Morton
  2004-05-12  0:05                   ` Valdis.Kletnieks
  2004-05-12 16:07                   ` Bill Davidsen
  0 siblings, 2 replies; 94+ messages in thread
From: Andrew Morton @ 2004-05-11 23:50 UTC (permalink / raw)
  To: Bartlomiej Zolnierkiewicz; +Cc: davidsen, linux-kernel

Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl> wrote:
>
> There was some evidence from AKPM (and Arjan AFAIR).
> [ BTW wasn't the corruption only seen with nvidia module? ]
> I think we can prevent it by adding something ala 4kstack flag
> to the module.

"4KSTACKS" already is present in the module version string.

And RHL is shipping now with 4k stacks, so presumably any disasters
are relatively uncommon...

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

* Re: 2.6.6-rc3-mm2 (4KSTACK) 
  2004-05-11 23:50                 ` Andrew Morton
@ 2004-05-12  0:05                   ` Valdis.Kletnieks
  2004-05-12 16:07                   ` Bill Davidsen
  1 sibling, 0 replies; 94+ messages in thread
From: Valdis.Kletnieks @ 2004-05-12  0:05 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

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

On Tue, 11 May 2004 16:50:13 PDT, Andrew Morton said:

> And RHL is shipping now with 4k stacks, so presumably any disasters
> are relatively uncommon...

I think currently, it's only the people running the -test or -devel Fedora
trees that can get bit - Fedora Core 1 didn't have it, as it was still a
2.4 kernel, and Fedora Core 2 just kicked over from FC 1.92 last night..

And then they'd have to have NVidia cards, and use the NVIdia drivers..

and I suspect that most of the people who are in that group visit either
one of the NVidia forums or www.minion.de, both of which have lots
of tags saying that patch needs reverting...

So right now it's probably NOT biting too many, as only the clueful are
getting into a situation where it's a problem.

Wait a week or two, when .ISO's of FC2 hit the streets. :)

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

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-11 23:50                 ` Andrew Morton
  2004-05-12  0:05                   ` Valdis.Kletnieks
@ 2004-05-12 16:07                   ` Bill Davidsen
  2004-05-12 16:20                     ` Arjan van de Ven
  1 sibling, 1 reply; 94+ messages in thread
From: Bill Davidsen @ 2004-05-12 16:07 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Bartlomiej Zolnierkiewicz, linux-kernel

On Tue, 11 May 2004, Andrew Morton wrote:

> Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl> wrote:
> >
> > There was some evidence from AKPM (and Arjan AFAIR).
> > [ BTW wasn't the corruption only seen with nvidia module? ]
> > I think we can prevent it by adding something ala 4kstack flag
> > to the module.
> 
> "4KSTACKS" already is present in the module version string.
> 
> And RHL is shipping now with 4k stacks, so presumably any disasters
> are relatively uncommon...

RHL and kernel.org have a lot of unshared bugs and features,
unfortunately. I take that information as an encouraging proof of concept,
not a waranty that the kernel.org code will behave in a similar way.

-- 
bill davidsen <davidsen@tmr.com>
  CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-12 16:07                   ` Bill Davidsen
@ 2004-05-12 16:20                     ` Arjan van de Ven
  2004-05-15 19:48                       ` Bill Davidsen
  0 siblings, 1 reply; 94+ messages in thread
From: Arjan van de Ven @ 2004-05-12 16:20 UTC (permalink / raw)
  To: Bill Davidsen; +Cc: Andrew Morton, Bartlomiej Zolnierkiewicz, linux-kernel

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


> > "4KSTACKS" already is present in the module version string.
> > 
> > And Fedora is shipping now with 4k stacks, so presumably any disasters
> > are relatively uncommon...
> 
> Fedora and kernel.org have a lot of unshared bugs and features,
> unfortunately. I take that information as an encouraging proof of concept,
> not a waranty that the kernel.org code will behave in a similar way.

Hey! That's slander of title! :-)
Seriously the difference between the Fedora Core 2 kernel and the
matching kernel.org kernel aren't THAT big. The 4g/4g split patch being
the biggest delta.


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
  2004-05-12 16:20                     ` Arjan van de Ven
@ 2004-05-15 19:48                       ` Bill Davidsen
  0 siblings, 0 replies; 94+ messages in thread
From: Bill Davidsen @ 2004-05-15 19:48 UTC (permalink / raw)
  To: arjanv; +Cc: Andrew Morton, Bartlomiej Zolnierkiewicz, linux-kernel

Arjan van de Ven wrote:
>>>"4KSTACKS" already is present in the module version string.
>>>
>>>And Fedora is shipping now with 4k stacks, so presumably any disasters
>>>are relatively uncommon...
>>
>>Fedora and kernel.org have a lot of unshared bugs and features,
>>unfortunately. I take that information as an encouraging proof of concept,
>>not a waranty that the kernel.org code will behave in a similar way.
> 
> 
> Hey! That's slander of title! :-)
> Seriously the difference between the Fedora Core 2 kernel and the
> matching kernel.org kernel aren't THAT big. The 4g/4g split patch being
> the biggest delta.
> 
I was thinking about the one you charge for... I wouldn't use FCn for 
production on a bet. I was thinking of my RHEL AS3.0 vs. kernel.org, 
which are kernels stable enough for commercial use.

-- 
bill davidsen <davidsen@tmr.com>
   CTO TMR Associates, Inc
   Doing interesting things with small computers since 1979

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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
       [not found]                     ` <1Tgf4-5cp-27@gated-at.bofh.it>
@ 2004-05-07 18:38                       ` Andi Kleen
  0 siblings, 0 replies; 94+ messages in thread
From: Andi Kleen @ 2004-05-07 18:38 UTC (permalink / raw)
  To: Steve Lord; +Cc: arjanv, akpm, linux-kernel

Steve Lord <lord@xfs.org> writes:


> That was not really my point, consider any memory allocation on the
> stack which is being replaced with an allocate to save space. Then replace
> the saved stack space with the potential stack space used to
> free memory by writing it out via a filesystem. You cannot make all
> the allocations in the kernel GFP_NOFS.

I suspect making memory reclamation less multithreaded (doing 
it in specialized threads only) would be actually a good thing.
I remember there were lots of races in the past with too many
memory reclaimers in parallel that were just papered over with
various hacks. Maybe doing it with less threads would make
this all a bit more controlled.

The question is just how many threads it would need and if
any of the existing threads can do the job.

Overall it sounds more like 2.7 material.

-Andi



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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
@ 2004-05-06  9:48 Sid Boyce
  0 siblings, 0 replies; 94+ messages in thread
From: Sid Boyce @ 2004-05-06  9:48 UTC (permalink / raw)
  To: linux-kernel

Not only does it not work, I've cratered two reiserfs installs using 
4KSTACKS and the nvidia driver, once when I didn't know about the 
problem and once when I forgot to reverse the patch. I now always check 
my .config before I start the build. Nvidia like most outfits don't 
react that swiftly to kernel changes.
Regards
Sid.

-- 
Sid Boyce .... Hamradio G3VBV and keen Flyer
Linux Only Shop.


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
@ 2004-05-06  9:12 h.verhagen
  0 siblings, 0 replies; 94+ messages in thread
From: h.verhagen @ 2004-05-06  9:12 UTC (permalink / raw)
  To: linux-kernel

No wonder the nvidia binary module doesn't work with 4K stacks. I'm wondered that it even works with 8KB stacks.
The module seems extremely stack hungry.

[harm@node-d-8d2e c]$ objdump -d /lib/modules/2.4.26/kernel/drivers/video/nvidia.o | ./checkstack.pl
0xb6ff3 _nv002427rm: sub $0x908,%esp             (almost 4K !)
0x7ff93 _nv003775rm: sub $0x64c,%esp             ( ~1-2K)
0x21fd3 _nv000899rm: sub $0x648,%esp
f53f: 81 ec 94 05 00 00 sub $0x594,%esp
_nv003402rm: sub $0x594,%esp
0x10247 _nv003354rm: sub $0x520,%esp
0x42633 _nv003333rm: sub $0x4a8,%esp
0x100bb _nv003353rm: sub $0x490,%esp
0x842ff _nv004811rm: sub $0x41c,%esp          (1K from here)


Kind regards,
Harm


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

* Re: 2.6.6-rc3-mm2 (4KSTACK)
@ 2004-05-06  9:06 h.verhagen
  0 siblings, 0 replies; 94+ messages in thread
From: h.verhagen @ 2004-05-06  9:06 UTC (permalink / raw)
  To: linux-kernel

No wonder the module doesn't work with 4K stacks.
It wonders that it actually  works with 8K stacks :)
The nividia module seems extremely stack hungry. 

[harm@node-d-8d2e c]$ objdump -d /lib/modules/2.4.26/kernel/drivers/video/nvidia.o | ./checkstack.pl
0xb6ff3 _nv002427rm: sub $0x908,%esp          (almost 4K !)
0x7ff93 _nv003775rm: sub $0x64c,%esp          ( ~1-2K)
0x21fd3 _nv000899rm: sub $0x648,%esp
f53f: 81 ec 94 05 00 00 sub $0x594,%esp
_nv003402rm: sub $0x594,%esp
0x10247 _nv003354rm: sub $0x520,%esp
0x42633 _nv003333rm: sub $0x4a8,%esp
0x100bb _nv003353rm: sub $0x490,%esp
0x842ff _nv004811rm: sub $0x41c,%esp          (1K from here)


Regards,
Harm


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

end of thread, other threads:[~2004-05-15 19:41 UTC | newest]

Thread overview: 94+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-05-05  8:31 2.6.6-rc3-mm2 Andrew Morton
2004-05-05  8:46 ` 2.6.6-rc3-mm2 Fabio Coatti
2004-05-05  9:07 ` 2.6.6-rc3-mm2 Onur Kucuk
2004-05-05 11:12 ` 2.6.6-rc3-mm2 (4KSTACK) Dominik Karall
2004-05-05 11:10   ` Ralf Hildebrandt
2004-05-05 11:13   ` Jan-Benedict Glaw
2004-05-05 11:24   ` Arjan van de Ven
2004-05-05 11:30   ` Andrew Morton
2004-05-05 12:09     ` Rene Herman
2004-05-05 16:47     ` Steve Lord
2004-05-05 18:48       ` Felipe Alfaro Solana
2004-05-05 19:51       ` Arjan van de Ven
2004-05-05 19:56         ` Steve Lord
2004-05-05 19:59         ` Arjan van de Ven
2004-05-06 17:44       ` Max Valdez
2004-05-05 20:31     ` Bill Davidsen
2004-05-05 23:04       ` Bartlomiej Zolnierkiewicz
2004-05-06 12:55         ` Norberto Bensa
2004-05-06 13:33           ` Bartlomiej Zolnierkiewicz
2004-05-06 18:47             ` Norberto Bensa
2004-05-09 17:00         ` Bill Davidsen
2004-05-09 18:25           ` Bartlomiej Zolnierkiewicz
2004-05-11 16:24             ` Bill Davidsen
2004-05-11 23:27               ` Bartlomiej Zolnierkiewicz
2004-05-11 23:50                 ` Andrew Morton
2004-05-12  0:05                   ` Valdis.Kletnieks
2004-05-12 16:07                   ` Bill Davidsen
2004-05-12 16:20                     ` Arjan van de Ven
2004-05-15 19:48                       ` Bill Davidsen
2004-05-06 10:09       ` Helge Hafting
2004-05-06 12:54         ` Bill Davidsen
2004-05-05 18:22   ` Valdis.Kletnieks
2004-05-05 21:51     ` Jörn Engel
2004-05-06 15:18       ` Valdis.Kletnieks
2004-05-06 15:40         ` Arjan van de Ven
2004-05-06 16:29           ` Valdis.Kletnieks
2004-05-07  9:50             ` Helge Hafting
2004-05-07  0:37           ` Paul Jakma
2004-05-07  2:50             ` Andrew Morton
2004-05-07  3:44               ` Paul Jakma
2004-05-07  3:58                 ` Andrew Morton
2004-05-07  7:05                   ` Arjan van de Ven
2004-05-07 15:26                   ` Martin J. Bligh
2004-05-07 19:41                     ` Andrew Morton
2004-05-07  6:51             ` Arjan van de Ven
2004-05-07 15:13               ` Dave Jones
2004-05-07 15:47                 ` Steve Lord
2004-05-07 15:59                   ` Arjan van de Ven
2004-05-07 16:09                     ` J. Bruce Fields
2004-05-07 16:11                     ` Steve Lord
2004-05-07 16:28                       ` Jörn Engel
2004-05-07 19:45               ` Paul Jakma
2004-05-07 19:48                 ` Paul Jakma
2004-05-10 19:49           ` Bill Davidsen
2004-05-10 20:31             ` Horst von Brand
2004-05-11  2:39               ` Andrew Morton
2004-05-11  8:45             ` Helge Hafting
2004-05-11 17:59               ` several messages Bill Davidsen
2004-05-06 16:03         ` 2.6.6-rc3-mm2 (4KSTACK) Malte Schröder
2004-05-06 16:13           ` Valdis.Kletnieks
2004-05-06 17:05         ` Matt Mackall
2004-05-05 13:31 ` 2.6.6-rc3-mm2 [delete-posix-...-unifix-message] Paul Jackson
2004-05-05 15:33 ` 2.6.6-rc3-mm2 Christoph Hellwig
2004-05-05 17:59   ` 2.6.6-rc3-mm2 Arnd Bergmann
2004-05-05 16:06 ` 2.6.6-rc3-mm2 Paul Jackson
2004-05-05 16:40   ` 2.6.6-rc3-mm2 Christoph Hellwig
2004-05-05 16:49     ` 2.6.6-rc3-mm2 Paul Jackson
2004-05-05 20:16   ` 2.6.6-rc3-mm2 R. J. Wysocki
2004-05-06  1:51     ` 2.6.6-rc3-mm2 Paul Jackson
2004-05-06 19:38       ` 2.6.6-rc3-mm2 R. J. Wysocki
2004-05-05 17:10 ` 2.6.6-rc3-mm2 (compile stats) John Cherry
2004-05-05 17:33 ` 2.6.6-rc3-mm2 [sparc, sparc64, mips syscall broken] Paul Jackson
2004-05-05 23:29 ` 2.6.6-rc3-mm2: vermagic compile error if CONFIG_MODULES=n Adrian Bunk
2004-05-06 14:53 ` 2.6.6-rc3-mm2 Antonio Dolcetta
2004-05-06 15:12   ` 2.6.6-rc3-mm2 Andrew Morton
2004-05-06 15:56     ` 2.6.6-rc3-mm2 Antonio Dolcetta
2004-05-06 17:26       ` 2.6.6-rc3-mm2 Adrian Bunk
2004-05-06 21:46 ` 2.6.6-rc3-mm2 Bruce Guenter
2004-05-07  2:52   ` 2.6.6-rc3-mm2 Andrew Morton
2004-05-07  4:16     ` 2.6.6-rc3-mm2 Rusty Russell
2004-05-07 16:05       ` 2.6.6-rc3-mm2 Bruce Guenter
2004-05-07 20:13       ` 2.6.6-rc3-mm2 R. J. Wysocki
2004-05-08  6:09         ` 2.6.6-rc3-mm2 Andrew Morton
     [not found]           ` <200405081329.43017.rjwysocki@sisk.pl>
2004-05-08 11:31             ` 2.6.6-rc3-mm2 Andrew Morton
2004-05-08 16:25               ` 2.6.6-rc3-mm2 R. J. Wysocki
2004-05-08 11:43             ` 2.6.6-rc3-mm2 Andrew Morton
2004-05-08 12:16               ` 2.6.6-rc3-mm2 R. J. Wysocki
2004-05-08 16:59           ` 2.6.6-rc3-mm2 Bruce Guenter
2004-05-08 18:46             ` 2.6.6-rc3-mm2 Andrew Morton
2004-05-08 18:31 ` 2.6.6-rc3-mm2 Joseph Fannin
2004-05-06  9:06 2.6.6-rc3-mm2 (4KSTACK) h.verhagen
2004-05-06  9:12 h.verhagen
2004-05-06  9:48 Sid Boyce
     [not found] <1Sq6O-4gJ-25@gated-at.bofh.it>
     [not found] ` <1Sss1-7qC-53@gated-at.bofh.it>
     [not found]   ` <1SzjQ-4EY-21@gated-at.bofh.it>
     [not found]     ` <1SCB0-7kE-11@gated-at.bofh.it>
     [not found]       ` <1SSZ6-3vy-13@gated-at.bofh.it>
     [not found]         ` <1STip-3L3-11@gated-at.bofh.it>
     [not found]           ` <1T1IW-2eH-3@gated-at.bofh.it>
     [not found]             ` <1T7vo-6C2-7@gated-at.bofh.it>
     [not found]               ` <1TfiY-4s1-17@gated-at.bofh.it>
     [not found]                 ` <1TfVX-4T4-51@gated-at.bofh.it>
     [not found]                   ` <1Tg5k-55S-19@gated-at.bofh.it>
     [not found]                     ` <1Tgf4-5cp-27@gated-at.bofh.it>
2004-05-07 18:38                       ` Andi Kleen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).