All of lore.kernel.org
 help / color / mirror / Atom feed
* 2.6.3-mm3
@ 2004-02-23  1:22 Andrew Morton
  2004-02-23  1:43 ` 2.6.3-mm3 Nick Piggin
                   ` (11 more replies)
  0 siblings, 12 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-23  1:22 UTC (permalink / raw)
  To: linux-kernel



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


- Added Roman's HFS rewrite and HFS+ filesystem implementation

- Device Mapper update.  This adds support for a multipath target and seems
  fairly significant.

- Big s390 update.  This includes rework against net devices, block devices
  and sysfs interfaces.   Please Cc Martin Schwidefsky on review comments ;)

- A fairly large update to the ide-scsi error handling.  If you use
  ide-scsi, please beat on this.

- A patch to the NFS client which teaches NFS to play nicely with the
  VM/VFS writer throttling framework.  Should improve interactivity
  and overall balancing niceness when performing heavy NFS write activity.

- Some VM work against slab shrinking and interzone balancing.  Relevant
  to highmem machines.

- m68k and ppc64 updates




Changes since 2.6.3-mm2:


 linus.patch
 bk-alsa.patch
 bk-netdev.patch
 bk-input.patch
 bk-acpi.patch
 bk-i2c.patch
 bk-driver-core.patch
 bk-scsi.patch

 Latest versions of external trees

-mips-megapatch.patch
-alsa-vx_core-locking-fix.patch

 Merged

+ppc64-remove-dump_regs.patch
+ppc64-lmbpatch.patch
+ppc64-flushfix.patch
+ppc64-duplicate_prototype.patch
+ppc64-promfix.patch
+ppc64-log-eeh-errors.patch
+ppc64-log-rtas-error.patch
+ppc64-CROSS32-env-2.6.1.patch
+ppc64-linux-2.5.archhelp.patch
+ppc64-oops-flags.patch
+ppc64-debug-stack-usage.patch
+ppc64-funit-at-a-time.patch
+ppc64-970fx.patch
+ppc64-rtas_token.patch
+ppc64-vio-header.patch
+ppc64-upfix.patch
+ppc64-saved-command-line.patch
+ppc64-cpu-spinup-fixes.patch
+ppc64-smp-message-pass.patch
+ppc64-rtasd_cleanup.patch
+ppc64-stackoverflow.patch
+ppc64-remove-get-user.patch
+ppc64-cpus-in-sysfs.patch
+ppc64-stab-static.patch
+ppc64-stab-optimise.patch
+ppc64-irq_per_cpu.patch
+ppc64-iseries-makefile.patch
+ppc64-get_SP.patch
+ppc64-prom-interrupts.patch
+ppc64-fix-numa-on-non-numa.patch
+ppc64-oops-formatting-cleanups.patch
+ppc64-restore-cpu-names.patch

 PPC64 fixes/updates

+hfs-rewrite.patch

 Big HFS filesystem rewrite

+hfsplus-support.patch

 HFS+ filesystem

+add-MODULE_VERSION-macro.patch

 Add the MODULE_VERSION macro: expose the version of a module in sysfs.

+rename-MODULE_VERSION.patch

 Fix it.

+serial-02-fixups-fixes.patch

 Touchup for serial-02-fixups.patch

+nfs-reconnect-fix.patch

 Fix an NFS stale handle problem

+instrument-highmem-page-reclaim.patch

 Split /proc/vmstats:pgsteal into pgsteal_hi and pgsteal_lo.  To measure
 highmem reclaim rates and lowmem reclaim rates separately.

+shrink_slab-for-all-zones.patch

 Shrink slab in response to reclaim pressure against any zone.

+zone-balancing-fix.patch
+zone-balancing-batching.patch

 Fix up the inter-zone reclaim balancing

-add-syscalls_h-shmat-fix.patch
-add-syscalls_h.patch
-add-syscalls_h-fixes.patch
-add-syscalls-update.patch
-add-syscalls_h-3.patch
-add-syscalls_h-4.patch
-add-syscalls_h-6.patch
-add-syscalls_h-7.patch
-add-syscalls_h-8.patch
-add-syscalls_h-9.patch
-add-syscalls_h-10.patch
-add_syscalls-compat-ipc-fix.patch
-add-syscalls_h-x86_64-unistd-warning-fix.patch
-add-syscalls_h-kinit.patch

 Folded into add-syscalls_h.patch

+add_syscalls-compat-ipc-fix.patch

 Fix up the generic ipc/compat code

+compat-ipc-syscalls-fixes.patch

 Teach the generic ipc/compat code about syscalls.h

+add-syscalls_h-kinit.patch

 Teach initramfs-kinit_command.patch about syscalls.h

+parport-09-track-used-ports-fix.patch

 Build fix for parport-09-track-used-ports.patch

+m68k-391.patch
+m68k-392.patch
+m68k-393.patch
+m68k-394.patch
+m68k-395.patch
+m68k-396.patch
+m68k-397.patch
+m68k-398.patch
+m68k-399.patch
+m68k-400.patch
+m68k-401.patch
+m68k-402.patch
+m68k-403.patch
+m68k-404.patch
+m68k-405.patch
+m68k-406.patch
+m68k-408.patch
+m68k-409.patch
+m68k-411.patch
+m68k-412.patch
+m68k-413.patch
+m68k-414.patch
+m68k-415.patch

 m68k update

+security-oops-fix.patch

 Fix an oops in the selinux code

+resource-allocation-reporting-fix.patch

 Sanify some error messages

+pci_request_regions-printk-fix.patch

 Ditto

+introduce-bus_bridge_ctl-member.patch

 'This patch introduces the "bridge_ctl" member of pci_bus, which allows
  architectures to tweak the bridge control register (eg, for setting fast
  back to back modes etc) in pcibios_fixup_bus().'

+ufs2-01.patch

 Read-only support for the UFS2 filesystem

+dm-01-endio-method.patch
+dm-02-remove-v1-ioctl-interface.patch
+dm-02-compat_ioctl-fix.patch
+dm-03-list_for_each_entry-audit.patch
+dm-04-default-queue-limits-fix.patch
+dm-05-list-targets-command.patch
+dm-06-multipath-target.patch

 Device Mapper update

+s390-01-general-update.patch
+s390-02-common-io-layer.patch
+s390-03-console-driver.patch
+s390-04-compat_timer_settime.patch
+s390-05-ctc-net-driver.patch
+s390-06-lcs-net-driver.patch
+s390-07-iucv-net-driver.patch
+s390-08-dasd-driver.patch
+s390-09-virtual-timer-interface.patch
+s390-10-zvm-monitor-stream.patch
+s390-11-collaborative-memory-management.patch
+s390-12-cannel-measurement-block-interface.patch
+s390-zfcp-host-adapter.patch
+s390-dcss-block-driver.patch

 s390 updates

+alder-insert_resource-fix.patch
+alder-io_apic-quirk.patch

 Fixes for the Intel Alder motherboard

+janitor-jffs-checks.patch

 Handle ooms.

+video-use-min-max.patch
+telephony-min-max-fix.patch

 nuke some private min()and max() implementations

+ide-scsi-error-handling-fixes.patch

 ide-scsi error handling fixes

+ISDN-v110-fix.patch

 V.110 fix

+fb_console_init-fix.patch

 Prevent fb_console_init from being called twice.

+nfs-write-throttling.patch

 Integrate the NFS client into the VM/VFSwrite throttling framework.

+poll-select-longer-timeouts.patch
+poll-select-range-check-fix.patch
+poll-select-handle-large-timeouts.patch

 poll/select time interval fixes/improvements

+zwane-is-floppy-maintainer-now.patch

 Fix a floppy oops

+ide-io-CONFIG_LBD-fix.patch

 Fix IDE for CONFIG_LBD

+efi-warning-fixes.patch

 Fix some warnings

+remove-x86-THREAD_SIZE-assumptions.patch

 Remove hard-coded assumptions about 8k stacks

+x86-printk-fix.patch

 Fix a printk

+pcmcia-debugging-rework-1.patch
+cs_err-compile-fix.patch
+pcmcia-debugging-rework-2.patch

 Rework the PCMCIA debugging code

+remove-LDFLAGS_BLOB.patch

 hm, this shouldn't be here.

+distribute-early-allocations-across-nodes.patch

 Distribute the early-in-boot memory allocations across nodes on NUMA
 machines.

+x86_64-naming-fix.patch

 Get the naming of the ia32e CPUs right

+powernow-frequency-handling-fix.patch

 Fix powernow-k8 cpufreq driver

+require-make-3-79-1.patch

 Old versions of make are segfaulting.  We require 2.79.1 or later.

+i2c-with-debug-oops-fix.patch

 Fix an oops in the i2s drivers when debug is enabled

+4g4g-THREAD_SIZE-fixes.patch

 Remove a "stack is 8k" assumption from the 4g/4g patch






All 290 patches

linus.patch

bk-alsa.patch

bk-netdev.patch

bk-input.patch

bk-acpi.patch

bk-i2c.patch

bk-driver-core.patch

bk-scsi.patch

mm.patch
  add -mmN to EXTRAVERSION

input-2wheel-mouse-fix.patch
  input: 2-wheel mouse fix

input-2wheel-mouse-fix-fix.patch
  From: Adrian Bunk <bunk@fs.tum.de>
  Subject: [patch] 2.6.2-mm1: fix warning introduced by input-2wheel-mouse-fix

dmapool-needs-pci.patch
  dmapool needs CONFIG_PCI

acpi-utils-warning-fix.patch
  acpi/utils.c warning fix

acpi-sleep-warning-fix.patch
  drivers/acpi/sleep/proc.c warnings

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)

kgdboe-netpoll.patch
  kgdb-over-ethernet via netpoll

kgdboe-non-ia32-build-fix.patch

kgdb-warning-fixes.patch
  kgdb warning fixes

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

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

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

psmouse-drop-timed-out-bytes.patch
  psmouse: log and discard timed out bytes

ppc64-remove-dump_regs.patch
  ppc64: remove dump_regs

ppc64-lmbpatch.patch
  [ppc64] cleanup lmb code

ppc64-flushfix.patch
  ppc64: Potentially avoid an atomic operation in switch_mm.

ppc64-duplicate_prototype.patch
  ppc64: Remove duplicate pcibios_scan_all_fns definition

ppc64-promfix.patch
  ppc64: Fix for ppc64 SMT enablement bug provided by Jimi Xenidis and Michael Day

ppc64-log-eeh-errors.patch
  ppc64: add rtas slot-error-detail information

ppc64-log-rtas-error.patch

ppc64-CROSS32-env-2.6.1.patch
  Allow CROSS32_COMPILE to be set via environment variable

ppc64-linux-2.5.archhelp.patch
  ppc64: Add a ppc64 archhelp.

ppc64-oops-flags.patch
  ppc64: print useful flags in oops, like x86

ppc64-debug-stack-usage.patch
  ppc64: Add DEBUG_STACK_USAGE

ppc64-funit-at-a-time.patch
  ppc64: Add -funit-at-a-time

ppc64-970fx.patch
  Add 970FX entry into the cputable.

ppc64-rtas_token.patch
  ppc64: Fix for valid nvram rtas tokens.

ppc64-vio-header.patch
  fix naming collision with asm-ppc64/vio.h

ppc64-upfix.patch
  ppc64: fix warning and compile error without CONFIG_SMP

ppc64-saved-command-line.patch
  ppc64: fix cmd_line bugs

ppc64-cpu-spinup-fixes.patch
  ppc64 cpu spinup fixes

ppc64-smp-message-pass.patch
  ppc64: remove useless smp_message_pass args

ppc64-rtasd_cleanup.patch
  ppc64: This cleans up the rtasd logic, and also makes it hotplug CPU safe.

ppc64-stackoverflow.patch
  ppc64: Add stack overflow debugging

ppc64-remove-get-user.patch
  ppc64: remove get_users in backtrace code

ppc64-cpus-in-sysfs.patch
  Add cpus and NUMA memory nodes to sysfs. Also add cpu physical id.

ppc64-stab-static.patch
  ppc64: Make a number of segment table functions static.

ppc64-stab-optimise.patch
  ppc64: Clean up per cpu usage in segment table code.

ppc64-irq_per_cpu.patch
  ppc64: PER_CPU irq optimisations

ppc64-iseries-makefile.patch
  ppc64: don't link some non iSeries stuff

ppc64-get_SP.patch
  ppc64: Fix __get_SP()

ppc64-prom-interrupts.patch
  ppc64: set err to -ENODEV when a new node doesn't have "interrupt" property.

ppc64-fix-numa-on-non-numa.patch
  fix for NUMA kernel on non NUMA machine

ppc64-oops-formatting-cleanups.patch
  trivial oops formatting cleanups

ppc64-restore-cpu-names.patch
  ppc64: restore cpu names

ppc64-tulip-build-fix.patch
  ppc64: fix de4x5 build

ppc64-reloc_hide.patch

hfs-rewrite.patch

hfsplus-support.patch

add-MODULE_VERSION-macro.patch
  Add a MODULE_VERSION macro

rename-MODULE_VERSION.patch
  rename other MODULE_VERSION users

invalidate_inodes-speedup.patch
  invalidate_inodes speedup
  more invalidate_inodes speedup fixes

cfq-4.patch
  CFQ io scheduler
  CFQ fixes

config_spinline.patch
  uninline spinlocks for profiling accuracy.

pdflush-diag.patch

zap_page_range-debug.patch
  zap_page_range() debug

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

support-zillions-of-scsi-disks.patch
  support many SCSI disks

pci_set_power_state-might-sleep.patch

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

extra-buffer-diags.patch

CONFIG_SYSFS.patch
  From: Pat Mochel <mochel@osdl.org>
  Subject: [PATCH] Add CONFIG_SYSFS

CONFIG_SYSFS-boot-from-disk-fix.patch

slab-leak-detector.patch
  slab leak detector

scale-nr_requests.patch
  scale nr_requests with TCQ depth

truncate_inode_pages-check.patch

local_bh_enable-warning-fix.patch

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

sched-domains.patch
  sched: scheduler domain support
  sched: fix for NR_CPUS > BITS_PER_LONG
  sched: clarify find_busiest_group
  sched: find_busiest_group arithmetic fix

sched-clock-fixes.patch
  fix sched_clock()

sched-sibling-map-to-cpumask.patch
  sched: cpu_sibling_map to cpu_mask
  p4-clockmod sibling_map fix
  p4-clockmod: handle more than two siblings

sched-domains-i386-ht.patch
  sched: implement domains for i386 HT
  sched: Fix CONFIG_SMT oops on UP
  sched: fix SMT + NUMA bug
  Change arch_init_sched_domains to use cpu_online_map
  Fix build with NR_CPUS > BITS_PER_LONG

sched-domain-tweak.patch
  i386-sched-domain code consolidation

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-domain-debugging.patch
  sched_domain debugging

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

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

sched-group-power-warning-fixes.patch
  sched-group-power warning fixes

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

ppc64-cpu_vm_mask-fix.patch
  ppc64: cpu_vm_mask fix

ide-siimage-seagate.patch

ide-ali-UDMA6-support.patch
  IDE: Add support of UDMA6 on ALi rev > 0xc4

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

laptop-mode-2.patch
  laptop-mode for 2.6, version 6
  Documentation/laptop-mode.txt
  laptop-mode documentation updates
  Laptop mode documentation addition

laptop-mode-2-tweaks.patch

laptop-mode-simplification.patch
  laptop mode simplification

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

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

DRM-cvs-update.patch
  DRM cvs update

drm-include-fix.patch

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

hotplugcpu-generalise-bogolock.patch
  Atomic Hotplug CPU: Generalize Bogolock

hotplugcpu-generalise-bogolock-fix-for-kthread-stop-using-signals.patch

hotplugcpu-use-bogolock-in-modules.patch
  Atomic Hotplug CPU: Use Bogolock in module.c

hotplugcpu-core.patch
  Atomic Hotplug CPU: Hotplug CPU Core

hotplugcpu-core-fix-for-kthread-stop-using-signals.patch

migrate_to_cpu-dependency-fix.patch
  migrate_to_cpu() dependency fix

hotplugcpu-core-drain_local_pages-fix.patch
  split drain_local_pages

hotplugcpu-rcupdate-many-cpus-fix.patch
  CPU hotplug, rcupdate high NR_CPUS fix

serial-02-fixups.patch
  serial fixups (untested)
  serial-02 fixes
  serial-02 fixes

serial-02-fixups-fixes.patch

serial-03-fixups.patch
  more serial driver fixups
  serial-03 fixes
  serial-03 fixes

nfs-31-attr.patch
  NFSv2/v3/v4: New attribute revalidation code

nfs-reconnect-fix.patch

instrument-highmem-page-reclaim.patch
  vm: separate instrumentation for highmem and lowmem page stealing

blk_congestion_wait-return-remaining.patch
  return remaining jiffies from blk_congestion_wait()

vmscan-remove-priority.patch
  mm/vmscan.c: remove unused priority argument.

kswapd-throttling-fixes.patch
  kswapd throttling fixes

vm-dont-rotate-active-list.patch
  vmscan: avoid rotation of the active list

vm-dont-rotate-active-list-padding.patch
  vmscan: align scan_page per node

vm-lru-info.patch
  vmscan: make better use of referenced info

vm-shrink-zone.patch
  vmscan: several tuneups

vm-shrink-zone-div-by-0-fix.patch

vm-tune-throttle.patch
  vmscan: delay throttling a little

shrink_slab-for-all-zones.patch
  vm: scan slab in response to highmem scanning

zone-balancing-fix.patch
  vmscan: zone balancing fix

zone-balancing-batching.patch
  vmscan: fix inter-zone reclaim balancing

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

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

sleep_on-needs_lock_kernel.patch
  sleep_on(): check for lock_kernel

i830-agp-pm-fix.patch
  Intel i830 AGP fix

x86_64-make-xconfig-fix.patch
  Fix make xconfig on /lib64 systems

nfs-server-in-root_server_path.patch
  Pull NFS server address out of root_server_path

add-syscalls_h-shmat-fix.patch
  fix shmat

add-syscalls_h.patch
  add syscalls.h

compat-signal-noarch-2004-01-29.patch
  Generic 32-bit compat for copy_siginfo_to_user

compat-signal-ppc64-2004-01-29.patch

compat-signal-ia64-2004-01-29.patch

compat-generic-ipc-emulation.patch
  generic 32 bit emulation for System-V IPC

compat-generic-ipc-emulation-s390.patch
  use generic IPC emulation on s390

compat-generic-ipc-emulation-x86_64.patch
  use generic IPC emulation on x86_64

compat-generic-ipc-emulation-ia64.patch
  common ipc compat syscalls: ia64

add_syscalls-compat-ipc-fix.patch
  fix compat-ipc code for syscalls.h

compat-ipc-syscalls-fixes.patch
  common ipc compat syscalls fixes

nfs-d_drop-lowmem.patch
  NFS: handle nfs_fhget() error

initramfs-kinit_command.patch
  initramfs: look for /sbin/init

add-syscalls_h-kinit.patch

centaur-crypto-core-support.patch
  First steps toward VIA crypto support

adaptive-lazy-readahead.patch
  adaptive lazy readahead

stop_machine-warning-fix.patch

nfs-avoid-i_size_write.patch
  NFS: avoid unlocked i_size_write()

ext3-journalled-quotas.patch
  ext3: Journalled quotas

ext3-journalled-quotas-warning-fix.patch

ext3-journalled-quotas-cleanups.patch

dynamic-pty-allocation.patch
  dynamic pty allocation

sysfs_remove_dir-race-fix.patch
  sysfs_remove_dir-vs-dcache_readdir race fix

sysfs_remove_subdir-dentry-leak-fix.patch
  Fix dentry refcounting in sysfs_remove_group()

fbdev-cursor-1.patch
  fbdev cursor part 1.

cursor-fix.patch
  cursor fix.

expanded-pci-config-space.patch
  Expanded PCI config space

per-node-rss-tracking.patch
  Track per-node RSS for NUMA

aic7xxx-deadlock-fix.patch
  aic7xxx deadlock fix

futex_wait-debug.patch
  futex_wait debug

module_exit-deadlock-fix.patch
  module unload deadlock fix

nbd-rmmod-oops-fix.patch
  NBD rmmod oops fix

tulip-printk-cleanup.patch
  tulip printk cleanup

parport-01-move-exports.patch
  parport: move exports

parport-02-use-module_init.patch
  parport: use module_init() for low-level driver init

parport-03-sysctls-use-module_init.patch
  parport: use module_init() for sysctl registration

parport-04-move-option-parsing.patch
  parport: move parport_pc option parsing

parport-irq-warning-fix.patch
  parport warning fixes

parport-05-parport_pc_probe_port-fixes.patch
  parport: sanitize parport_pc_probe_port()

parport-06-refcounting-fixes.patch
  parport: refcounting fixes

parport-07-unregister-fixes.patch
  parport: parport_unregister_port() splitups abd fixes

parport-08-parport_announce-cleanups.patch
  parport: parport_announce_port() cleanup

parport-09-track-used-ports.patch
  parport: parport_pc(): keep track of ports

parport-09-track-used-ports-fix.patch

parport-10-sunbpp-track-ports.patch
  parport: parport_sunbpp(): keep track of ports

parport-11-remove-parport_enumerate.patch
  parport: remove parport_enumerate()

parport-12-driver-list-cleanup.patch
  parport: use list.h for driver list

m68k-391.patch
  m68k: offsets.h generation

m68k-392.patch
  m68k: mm init warning

m68k-393.patch
  m68k: Sun-3 console fix

m68k-394.patch
  m68k: Sun-3 LANCE Ethernet

m68k-395.patch
  m68k: Sun-3 missing sbus_readl()

m68k-396.patch
  m68k: Atari name clashes

m68k-397.patch
  m68k: M68k MCA cleanup

m68k-398.patch
  m68k: Atari Pamsnet warning

m68k-399.patch
  m68k: M68k uses drivers/Kconfig

m68k-400.patch
  m68k: Amifb modedb bug

m68k-401.patch
  m68k: M68k configuration

m68k-402.patch
  m68k: arch/m68k/mm/Makefile cleanup

m68k-403.patch
  m68k: Amiga A2065 Ethernet new driver model

m68k-404.patch
  m68k: Amiga Ariadne Ethernet new driver model

m68k-405.patch
  m68k: Amiga Hydra Ethernet new driver model

m68k-406.patch
  m68k: Amiga Zorro8390 Ethernet new driver model

m68k-408.patch
  m68k: M68k module loader

m68k-409.patch
  m68k: M68k call trace output

m68k-411.patch
  m68k: M68k cmpxchg

m68k-412.patch
  m68k: M68k FPU emu broken link

m68k-413.patch
  m68k: Mac IOP spelling

m68k-414.patch
  m68k: Dummy dma mapping

m68k-415.patch
  m68k: M68k core spelling

sysctl-nlen-check.patch
  add range checking to sys_sysctl()

dm-crypt-cryptoloop-docco.patch
  Kconfig help: dm-crypto && cryptoloop

nbd-set_capacity-fix.patch
  nbd: fix set_capacity call

nbd-cleanups.patch
  nbd: remove PARANOIA and other cleanups

sysv-ipc-cond_syscall-cleanup.patch
  cleanup condsyscall for sysv ipc

hitachi-scsi_devinfo-fix.patch
  Add Hitachi 9960 Storage on SCSI devlist as BLIST_SPARSELUN|BLIST_LARGELUN

ipmi-warning-fixes.patch
  IPMI warning fixes

mtrr-init-section-fixes.patch
  mtrr: init section usage

dm-crypt-cipher-digest.patch
  dm-crypt: add digest-based iv generation mode

superblock-fixes.patch
  super block fixes

CodingStyle-fixes.patch
  Fixes to CodingStyle

ia32e-GDT-fix.patch
  Another x86-64 fix for problems from the recent merge

zoran-refcounting-fixes.patch
  fix module reference counting in zoran driver

ext3-schedule-inside-lock-fix.patch
  ext3: fix scheduling-in-spinlock bug

dgrs-uninitialised-var-fix.patch
  dgrs: fix use of uninitialised local variable

nfs-mount-error-recovery.patch
  nfs mount-time oops fixes

selinux-inode-race-trap.patch
  Try to diagnose Bug 2153

ext3-dirty-debug-patch.patch
  ext3 debug patch

NGROUPS_MAX-sysctl.patch
  Report NGROUPS_MAX via a sysctl (read-only)

ia64-check_pgt_cache-warning-fix.patch
  ia64: fix sched.c compile warning

security-oops-fix.patch
  security oops fix

resource-allocation-reporting-fix.patch
  Report meaningful error for failed resource allocation

pci_request_regions-printk-fix.patch
  Don't report pci_request_regions() failure twice

introduce-bus_bridge_ctl-member.patch
  Introduce bus->bridge_ctl member

ufs2-01.patch
  read-only support for UFS2

dm-01-endio-method.patch
  dm: endio method

dm-02-remove-v1-ioctl-interface.patch
  dm: remove v1 ioctl interface

dm-02-compat_ioctl-fix.patch
  fix compat ioctls for DM V1 ioctl removal

dm-03-list_for_each_entry-audit.patch
  dm: list_for_each_entry audit

dm-04-default-queue-limits-fix.patch
  dm: default queue limits

dm-05-list-targets-command.patch
  dm: list targets cmd

dm-06-multipath-target.patch
  dm: multipath target

s390-01-general-update.patch
  s390: general update.

s390-02-common-io-layer.patch
  s390: common i/o layer.

s390-03-console-driver.patch
  s390: console driver.

s390-04-compat_timer_settime.patch
  s390: compat_timer_settime.

s390-05-ctc-net-driver.patch
  s390: CTC network driver.

s390-06-lcs-net-driver.patch
  s390: LCS network driver.

s390-07-iucv-net-driver.patch
  s390: IUCV network driver.

s390-08-dasd-driver.patch
  s390: DASD device driver.

s390-09-virtual-timer-interface.patch
  s390: virtual timer interface.

s390-10-zvm-monitor-stream.patch
  s390: z/VM monitor stream.

s390-11-collaborative-memory-management.patch
  s390: collaborative memory management.

s390-12-cannel-measurement-block-interface.patch
  s390: channel measurement block interface.

s390-zfcp-host-adapter.patch
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  Subject: [PATCH] s390 (13/14): zfcp host adapter.

s390-dcss-block-driver.patch
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  Subject: [PATCH] s390 (14/14): DCSS block device driver.

alder-insert_resource-fix.patch
  Make insert_resource work for alder IOAPIC resources

alder-io_apic-quirk.patch
  add the Intel Alder IO-APIC PCI device to quirks

janitor-jffs-checks.patch
  From: "Randy.Dunlap" <rddunlap@osdl.org>
  Subject: [janitor] JFFS checks

video-use-min-max.patch
  janitor: media: use kernel min/max

telephony-min-max-fix.patch
  telephony: use kernel min/max

ide-scsi-error-handling-fixes.patch
  ide-scsi error handling fixes

ISDN-v110-fix.patch
  Fix ISDN v.110.

fb_console_init-fix.patch
  fb_console_init fix

nfs-write-throttling.patch
  Add write throttling to NFS client

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

zwane-is-floppy-maintainer-now.patch
  floppy oops fix(?)

ide-io-CONFIG_LBD-fix.patch
  ide-io.c: CONFIG_LBD fix

efi-warning-fixes.patch
  Fix fs/partitions/efi.cprintk warnings

remove-x86-THREAD_SIZE-assumptions.patch
  x86: remove THREAD_SIZE assumption cleanups

x86-printk-fix.patch
  cosmetic printk fix

pcmcia-debugging-rework-1.patch
  Overhaul PCMCIA debugging (1)

cs_err-compile-fix.patch
  pcmcia: workaround for gcc-2.95 bug in cs_err()

pcmcia-debugging-rework-2.patch
  Overhaul PCMCIA debugging (2)

remove-LDFLAGS_BLOB.patch
  Remove LDFLAGS_BLOB

distribute-early-allocations-across-nodes.patch
  Manfred's patch to distribute boot allocations across nodes

x86_64-naming-fix.patch
  better menu label/help for intel x86-64

powernow-frequency-handling-fix.patch
  powernow-k8 frequency handling fix

require-make-3-79-1.patch
  Require GNU Make version 3.79.1 or later

i2c-with-debug-oops-fix.patch
  Another oops in i2c-core with debug

list_del-debug.patch
  list_del debug check

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

lockmeter.patch

ia64-lockmeter-fix.patch

lockmeter-2.2-cruft.patch
  lockmeter.h: remove kernel 2.2 #ifdef (i386 + alpha)

4g-2.6.0-test2-mm2-A5.patch
  4G/4G split patch
  4G/4G: remove debug code
  4g4g: pmd fix
  4g/4g: fixes from Bill
  4g4g: fpu emulation fix
  4g/4g usercopy atomicity fix
  4G/4G: remove debug code
  4g4g: pmd fix
  4g/4g: fixes from Bill
  4g4g: fpu emulation fix
  4g/4g usercopy atomicity fix
  4G/4G preempt on vstack
  4G/4G: even number of kmap types
  4g4g: fix __get_user in slab
  4g4g: Remove extra .data.idt section definition
  4g/4g linker error (overlapping sections)
  4G/4G: remove debug code
  4g4g: pmd fix
  4g/4g: fixes from Bill
  4g4g: fpu emulation fix
  4g4g: show_registers() fix
  4g/4g usercopy atomicity fix
  4g4g: debug flags fix
  4g4g: Fix wrong asm-offsets entry
  cyclone time fixmap fix
  4G/4G preempt on vstack
  4G/4G: even number of kmap types
  4g4g: fix __get_user in slab
  4g4g: Remove extra .data.idt section definition
  4g/4g linker error (overlapping sections)
  4G/4G: remove debug code
  4g4g: pmd fix
  4g/4g: fixes from Bill
  4g4g: fpu emulation fix
  4g4g: show_registers() fix
  4g/4g usercopy atomicity fix
  4g4g: debug flags fix
  4g4g: Fix wrong asm-offsets entry
  cyclone time fixmap fix
  use direct_copy_{to,from}_user for kernel access in mm/usercopy.c
  4G/4G might_sleep warning fix
  4g/4g pagetable accounting fix
  Fix 4G/4G and WP test lockup
  4G/4G KERNEL_DS usercopy again
  Fix 4G/4G X11/vm86 oops
  Fix 4G/4G athlon triplefault
  4g4g SEP fix
  Fix 4G/4G split fix for pre-pentiumII machines
  4g/4g PAE ACPI low mappings fix
  zap_low_mappings() cannot be __init
  4g/4g: remove printk at boot

4g4g-THREAD_SIZE-fixes.patch

4g4g-locked-userspace-copy.patch
  Do a locked user-space copy for 4g/4g

ppc-fixes.patch
  make mm4 compile on ppc

O_DIRECT-race-fixes-rollup.patch
  O_DIRECT data exposure fixes

O_DIRECT-ll_rw_block-vs-block_write_full_page-fix.patch
  Fix race between ll_rw_block() and block_write_full_page()

blockdev-direct-io-speedup.patch
  blockdev direct-io speedups

O_DIRECT-vs-buffered-fix.patch
  Fix O_DIRECT-vs-buffered data exposure bug

dio-aio-fixes.patch
  direct-io AIO fixes

aio-fallback-bio_count-race-fix-2.patch
  AIO+DIO bio_count race fix




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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
@ 2004-02-23  1:43 ` Nick Piggin
  2004-02-23  1:55   ` 2.6.3-mm3 Andrew Morton
  2004-02-23  2:19 ` 2.6.3-mm3 Christoph Hellwig
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  1:43 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel



Andrew Morton wrote:

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

URL is of course,
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/

This still doesn't shrink slab correctly on highmem machines
because you dropped my patch :(

A better way, IMO, is use mine instead of shrink_slab-for-all-zones.patch

Your other VM patches look good though.


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

* Re: 2.6.3-mm3
  2004-02-23  1:43 ` 2.6.3-mm3 Nick Piggin
@ 2004-02-23  1:55   ` Andrew Morton
  2004-02-23  2:02     ` 2.6.3-mm3 Nick Piggin
  2004-02-23  2:51     ` 2.6.3-mm3 Nick Piggin
  0 siblings, 2 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-23  1:55 UTC (permalink / raw)
  To: Nick Piggin; +Cc: linux-kernel

Nick Piggin <piggin@cyberone.com.au> wrote:
>
> 
> 
> Andrew Morton wrote:
> 
> >
> >ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm2/
> >
> >
> 
> URL is of course,
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/

Yes, thanks.

> This still doesn't shrink slab correctly on highmem machines
> because you dropped my patch :(

First, one needs to define "correctly".

Certainly, it is not "solves the alleged updatedb problem".

The design behind the slab shrinking is to reclaim slab in response to
memory demand.  Not in response to lowmem demand.  With all the scaling,
accounting-for-seeks-and-locality, etc.



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

* Re: 2.6.3-mm3
  2004-02-23  1:55   ` 2.6.3-mm3 Andrew Morton
@ 2004-02-23  2:02     ` Nick Piggin
  2004-02-23  2:51     ` 2.6.3-mm3 Nick Piggin
  1 sibling, 0 replies; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  2:02 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel



Andrew Morton wrote:

>Nick Piggin <piggin@cyberone.com.au> wrote:
>
>>
>>
>>Andrew Morton wrote:
>>
>>
>>>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm2/
>>>
>>>
>>>
>>URL is of course,
>>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/
>>
>
>Yes, thanks.
>
>
>>This still doesn't shrink slab correctly on highmem machines
>>because you dropped my patch :(
>>
>
>First, one needs to define "correctly".
>
>Certainly, it is not "solves the alleged updatedb problem".
>
>

No, I think this is a non-problem.

>The design behind the slab shrinking is to reclaim slab in response to
>memory demand.  Not in response to lowmem demand.  With all the scaling,
>accounting-for-seeks-and-locality, etc.
>
>

That should come out in the wash with my patch anyway, because
it causes lowmem LRU pressure to assert a *lot* more slab pressure.
So highmem pressure should cause a similar amount of slab pressure
with either patch, it just comes about in different ways.

But allocations from lowmem will not shrink the slab nearly enough
with your patch because it shrinks by a percent of all pages.


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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
  2004-02-23  1:43 ` 2.6.3-mm3 Nick Piggin
@ 2004-02-23  2:19 ` Christoph Hellwig
  2004-02-23  2:52 ` 2.6.3-mm3 Joshua Kwan
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 73+ messages in thread
From: Christoph Hellwig @ 2004-02-23  2:19 UTC (permalink / raw)
  To: Andrew Morton, schwidefsky; +Cc: linux-kernel

On Sun, Feb 22, 2004 at 05:22:00PM -0800, Andrew Morton wrote:
> - Big s390 update.  This includes rework against net devices, block devices
>   and sysfs interfaces.   Please Cc Martin Schwidefsky on review comments ;)

Adding the HBA API ioctl crap to zfcp is not acceptable, the qlogic ioctls
already were shot down for the same reason.

Btw, please send scsi patch to linux-scsi please.


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

* Re: 2.6.3-mm3
  2004-02-23  1:55   ` 2.6.3-mm3 Andrew Morton
  2004-02-23  2:02     ` 2.6.3-mm3 Nick Piggin
@ 2004-02-23  2:51     ` Nick Piggin
  2004-02-23  3:04       ` 2.6.3-mm3 Nick Piggin
  1 sibling, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  2:51 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel



Andrew Morton wrote:

>Nick Piggin <piggin@cyberone.com.au> wrote:
>
>>
>>
>>Andrew Morton wrote:
>>
>>
>>>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm2/
>>>
>>>
>>>
>>URL is of course,
>>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/
>>
>
>Yes, thanks.
>
>
>>This still doesn't shrink slab correctly on highmem machines
>>because you dropped my patch :(
>>
>
>First, one needs to define "correctly".
>
>Certainly, it is not "solves the alleged updatedb problem".
>
>The design behind the slab shrinking is to reclaim slab in response to
>memory demand.  Not in response to lowmem demand.  With all the scaling,
>accounting-for-seeks-and-locality, etc.
>
>

That is the wrong design. That is basically just circumventing
zone balancing, and it shows because you don't balance slab vs
lowmem properly.

Lowmem pagecache vs highmem pagecache should be balanced correctly?
I think it is with your other patches.

Lowmem pagecache vs slab should be balanced correctly with my patch.

Therefore highmem vs slab will be balanced correctly.

Is that a good proof?


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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
  2004-02-23  1:43 ` 2.6.3-mm3 Nick Piggin
  2004-02-23  2:19 ` 2.6.3-mm3 Christoph Hellwig
@ 2004-02-23  2:52 ` Joshua Kwan
  2004-02-23  3:34 ` 2.6.3-mm3 Joshua Kwan
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 73+ messages in thread
From: Joshua Kwan @ 2004-02-23  2:52 UTC (permalink / raw)
  To: linux-kernel

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

On Sun, Feb 22, 2004 at 05:22:00PM -0800, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/

The change made to scripts/Makefile to rake in sumversion.o requires
this change to not break parallel builds:

--- scripts/Makefile~	2004-02-22 18:50:39.000000000 -0800
+++ scripts/Makefile	2004-02-22 18:51:06.000000000 -0800
@@ -24,7 +24,7 @@
 
 # dependencies on generated files need to be listed explicitly
 
-$(obj)/modpost.o $(obj)/file2alias.o: $(obj)/elfconfig.h
+$(addprefix $(obj)/,$(modpost-objs)): $(obj)/elfconfig.h
 
 quiet_cmd_elfconfig = MKELF   $@
       cmd_elfconfig = $(obj)/mk_elfconfig $(ARCH) < $< > $@

Seems they all depend on elfconfig.h being there, so made it a general
dependency.

-- 
Joshua Kwan

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

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

* Re: 2.6.3-mm3
  2004-02-23  2:51     ` 2.6.3-mm3 Nick Piggin
@ 2004-02-23  3:04       ` Nick Piggin
  2004-02-23  8:08         ` 2.6.3-mm3 Nick Piggin
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  3:04 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel



Nick Piggin wrote:

>
> Lowmem pagecache vs highmem pagecache should be balanced correctly?
> I think it is with your other patches.
>
> Lowmem pagecache vs slab should be balanced correctly with my patch.
>
> Therefore highmem vs slab will be balanced correctly.
>
> Is that a good proof?
>
>

Well no, because you can construct a similar "proof" for your
patch because I assume balancing between zones is a two way
operation :P. Actually, lowmem pressure does not assert highmem
pressure which is the point where your balancing fails.


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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (2 preceding siblings ...)
  2004-02-23  2:52 ` 2.6.3-mm3 Joshua Kwan
@ 2004-02-23  3:34 ` Joshua Kwan
  2004-02-23 18:09 ` [patch] 2.6.3-mm3: ALSA miXart driver doesn't compile Adrian Bunk
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 73+ messages in thread
From: Joshua Kwan @ 2004-02-23  3:34 UTC (permalink / raw)
  To: linux-kernel

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

On Sun, Feb 22, 2004 at 05:22:00PM -0800, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm2/

Rusty's patch 'add-MODULE_VERSION-macro.patch' is missing a change that
results in modules_install installing all of the modules AND their
constituent source files into /lib/modules. The change, which did appear
in Makefile.modpost correctly, follows here.

--- scripts/Makefile.modinst~	2004-02-22 19:31:28.000000000 -0800
+++ scripts/Makefile.modinst	2004-02-22 19:31:49.000000000 -0800
@@ -9,7 +9,7 @@
 
 #
 
-__modules := $(shell cat /dev/null $(wildcard $(MODVERDIR)/*.mod))
+__modules := $(shell head -q -n1 $(wildcard $(MODVERDIR)/*.mod))
 modules := $(patsubst %.o,%.ko,$(wildcard $(__modules:.ko=.o)))
 
 ifneq ($(filter-out $(modules),$(__modules)),)
 
-- 
Joshua Kwan

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

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

* Re: 2.6.3-mm3
  2004-02-23  3:04       ` 2.6.3-mm3 Nick Piggin
@ 2004-02-23  8:08         ` Nick Piggin
  2004-02-23  8:48           ` [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3) Nick Piggin
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  8:08 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel



Nick Piggin wrote:

>
>
> Nick Piggin wrote:
>
>>
>> Lowmem pagecache vs highmem pagecache should be balanced correctly?
>> I think it is with your other patches.
>>
>> Lowmem pagecache vs slab should be balanced correctly with my patch.
>>
>> Therefore highmem vs slab will be balanced correctly.
>>
>> Is that a good proof?
>>
>>
>
> Well no, because you can construct a similar "proof" for your
> patch because I assume balancing between zones is a two way
> operation :P. Actually, lowmem pressure does not assert highmem
> pressure which is the point where your balancing fails.
>
>

Humph. OK you're right. The above is of course right when all
else is equal, however slab can only be allocated from lowmem
while pagecache can come from anywhere.

So if you have 500MB of slab and 100MB of cache in lowmem, but
10000MB cache in highmem, lowmem pressure should be shrinking
more cache than slab.

Nick


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

* [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23  8:08         ` 2.6.3-mm3 Nick Piggin
@ 2004-02-23  8:48           ` Nick Piggin
  2004-02-23  8:59             ` Andrew Morton
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  8:48 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

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



Nick Piggin wrote:

>
> Humph. OK you're right.


Aha but you've broken something! Tell me I'm still useful.


[-- Attachment #2: vm-fix-all_zones_ok.patch --]
[-- Type: text/plain, Size: 799 bytes --]

 linux-2.6-npiggin/mm/vmscan.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff -puN mm/vmscan.c~vm-fix-all_zones_ok mm/vmscan.c
--- linux-2.6/mm/vmscan.c~vm-fix-all_zones_ok	2004-02-23 19:44:06.000000000 +1100
+++ linux-2.6-npiggin/mm/vmscan.c	2004-02-23 19:45:10.000000000 +1100
@@ -1008,10 +1008,12 @@ static int balance_pgdat(pg_data_t *pgda
 
 			if (nr_pages)		/* Software suspend */
 				to_reclaim = min(to_free, SWAP_CLUSTER_MAX*8);
-			else			/* Zone balancing */
+			else {			/* Zone balancing */
 				to_reclaim = zone->reclaim_batch;
+				if (zone->pages_high < zone->free_pages)
+					all_zones_ok = 0;
+			}
 
-			all_zones_ok = 0;
 			zone->temp_priority = priority;
 			reclaimed = shrink_zone(zone, GFP_KERNEL,
 					to_reclaim, &nr_scanned, ps, priority);

_

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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23  8:48           ` [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3) Nick Piggin
@ 2004-02-23  8:59             ` Andrew Morton
  2004-02-23  9:21               ` Nick Piggin
  2004-02-23 22:47               ` Chris Wedgwood
  0 siblings, 2 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-23  8:59 UTC (permalink / raw)
  To: Nick Piggin; +Cc: linux-kernel

Nick Piggin <piggin@cyberone.com.au> wrote:
>
> 
> 
> Nick Piggin wrote:
> 
> >
> > Humph. OK you're right.
> 
> 
> Aha but you've broken something!

I'm a microsoft spy.

> Tell me I'm still useful.

You're still useful.

> diff -puN mm/vmscan.c~vm-fix-all_zones_ok mm/vmscan.c
> --- linux-2.6/mm/vmscan.c~vm-fix-all_zones_ok	2004-02-23 19:44:06.000000000 +1100
> +++ linux-2.6-npiggin/mm/vmscan.c	2004-02-23 19:45:10.000000000 +1100
> @@ -1008,10 +1008,12 @@ static int balance_pgdat(pg_data_t *pgda
>  
>  			if (nr_pages)		/* Software suspend */
>  				to_reclaim = min(to_free, SWAP_CLUSTER_MAX*8);
> -			else			/* Zone balancing */
> +			else {			/* Zone balancing */
>  				to_reclaim = zone->reclaim_batch;
> +				if (zone->pages_high < zone->free_pages)
> +					all_zones_ok = 0;
> +			}

I wouldna spotted that in a million years.  That all_zones_ok code was a
bitch to test and really needs retesting.

We used to have <= in there actually:

		to_reclaim = zone->pages_high-zone->free_pages;
		if (to_reclaim <= 0)
			continue;

We've never clearly defined whether pages_high == free_pages means the zone
is under limits.  According to __alloc_pages() it means that the zone is
not under limits, so you've fixed two bugs there.


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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23  8:59             ` Andrew Morton
@ 2004-02-23  9:21               ` Nick Piggin
  2004-02-23  9:24                 ` Andrew Morton
  2004-02-23 16:23                 ` Bill Davidsen
  2004-02-23 22:47               ` Chris Wedgwood
  1 sibling, 2 replies; 73+ messages in thread
From: Nick Piggin @ 2004-02-23  9:21 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel



Andrew Morton wrote:

>Nick Piggin <piggin@cyberone.com.au> wrote:
>
>>
>>
>>Nick Piggin wrote:
>>
>>
>>>Humph. OK you're right.
>>>
>>
>>Aha but you've broken something!
>>
>
>I'm a microsoft spy.
>
>

Well their code is public domain now, so you needn't put in all
the good bits by yourself.

>>Tell me I'm still useful.
>>
>
>You're still useful.
>
>
>>diff -puN mm/vmscan.c~vm-fix-all_zones_ok mm/vmscan.c
>>--- linux-2.6/mm/vmscan.c~vm-fix-all_zones_ok	2004-02-23 19:44:06.000000000 +1100
>>+++ linux-2.6-npiggin/mm/vmscan.c	2004-02-23 19:45:10.000000000 +1100
>>@@ -1008,10 +1008,12 @@ static int balance_pgdat(pg_data_t *pgda
>> 
>> 			if (nr_pages)		/* Software suspend */
>> 				to_reclaim = min(to_free, SWAP_CLUSTER_MAX*8);
>>-			else			/* Zone balancing */
>>+			else {			/* Zone balancing */
>> 				to_reclaim = zone->reclaim_batch;
>>+				if (zone->pages_high < zone->free_pages)
>>+					all_zones_ok = 0;
>>+			}
>>
>
>I wouldna spotted that in a million years.  That all_zones_ok code was a
>bitch to test and really needs retesting.
>
>

all_zones_ok is actually now the only way you can really stop
scanning (yes, you eventually run out of priority).

I suspect you mean zone->all_unreclaimable?


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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23  9:21               ` Nick Piggin
@ 2004-02-23  9:24                 ` Andrew Morton
  2004-02-23 16:23                 ` Bill Davidsen
  1 sibling, 0 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-23  9:24 UTC (permalink / raw)
  To: Nick Piggin; +Cc: linux-kernel

Nick Piggin <piggin@cyberone.com.au> wrote:
>
> >I wouldna spotted that in a million years.  That all_zones_ok code was a
>  >bitch to test and really needs retesting.
>  >
>  >
> 
>  all_zones_ok is actually now the only way you can really stop
>  scanning (yes, you eventually run out of priority).
> 
>  I suspect you mean zone->all_unreclaimable?

yes.

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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23  9:21               ` Nick Piggin
  2004-02-23  9:24                 ` Andrew Morton
@ 2004-02-23 16:23                 ` Bill Davidsen
  1 sibling, 0 replies; 73+ messages in thread
From: Bill Davidsen @ 2004-02-23 16:23 UTC (permalink / raw)
  To: Nick Piggin; +Cc: linux-kernel

Nick Piggin wrote:
> 
> 
> Andrew Morton wrote:

>> I'm a microsoft spy.
>>
>>
> 
> Well their code is public domain now, so you needn't put in all
> the good bits by yourself.

Not public domain, just open source. ;-)

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

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

* [patch] 2.6.3-mm3: ALSA miXart driver doesn't compile
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (3 preceding siblings ...)
  2004-02-23  3:34 ` 2.6.3-mm3 Joshua Kwan
@ 2004-02-23 18:09 ` Adrian Bunk
  2004-02-23 18:58 ` 2.6.3-mm3 (compile stats) John Cherry
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 73+ messages in thread
From: Adrian Bunk @ 2004-02-23 18:09 UTC (permalink / raw)
  To: Andrew Morton, perex, alsa; +Cc: linux-kernel, alsa-devel

On Sun, Feb 22, 2004 at 05:22:00PM -0800, Andrew Morton wrote:
>...
> Changes since 2.6.3-mm2:
>...
>  bk-alsa.patch
>...
>  Latest versions of external trees
>...

I got four compile errors like the following in the miXart driver:

<--  snip  -->

...
  CC      sound/pci/mixart/mixart.o
In file included from sound/pci/mixart/mixart.c:33:
sound/pci/mixart/mixart.h:95: field `msg_taskq' has incomplete type
In file included from sound/pci/mixart/mixart.c:35:
sound/pci/mixart/mixart_core.h:602: parse error before 
`snd_mixart_interrupt'
sound/pci/mixart/mixart_core.h:602: warning: type defaults to `int' in 
declaration of `snd_mixart_interrupt'
sound/pci/mixart/mixart_core.h:602: warning: data definition has no type 
or storage class
sound/pci/mixart/mixart.c: In function `snd_mixart_hw_params':
sound/pci/mixart/mixart.c:604: warning: unsigned int format, different 
type arg (arg 5)
sound/pci/mixart/mixart.c: In function `snd_mixart_free':
sound/pci/mixart/mixart.c:1043: warning: implicit declaration of 
function `free_irq'
sound/pci/mixart/mixart.c: In function `snd_mixart_probe':
sound/pci/mixart/mixart.c:1301: warning: implicit declaration of 
function `request_irq'
sound/pci/mixart/mixart.c:1325: warning: implicit declaration of 
function `tasklet_init'
make[3]: *** [sound/pci/mixart/mixart.o] Error 1

<--  snip  -->

The patch below fixes these issues for me.

cu
Adrian


--- linux-2.6.3-mm3/sound/pci/mixart/mixart.c.old	2004-02-23 18:28:08.000000000 +0100
+++ linux-2.6.3-mm3/sound/pci/mixart/mixart.c	2004-02-23 18:28:27.000000000 +0100
@@ -23,6 +23,7 @@
 
 #include <sound/driver.h>
 #include <linux/init.h>
+#include <linux/interrupt.h>
 #include <sound/core.h>
 #define SNDRV_GET_ID
 #include <sound/initval.h>
--- linux-2.6.3-mm3/sound/pci/mixart/mixart_core.c.old	2004-02-23 18:30:18.000000000 +0100
+++ linux-2.6.3-mm3/sound/pci/mixart/mixart_core.c	2004-02-23 18:30:38.000000000 +0100
@@ -20,6 +20,7 @@
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
  */
 
+#include <linux/interrupt.h>
 #include <sound/driver.h>
 #include <sound/core.h>
 #include "mixart.h"
--- linux-2.6.3-mm3/sound/pci/mixart/mixart_hwdep.c.old	2004-02-23 18:32:49.000000000 +0100
+++ linux-2.6.3-mm3/sound/pci/mixart/mixart_hwdep.c	2004-02-23 18:33:01.000000000 +0100
@@ -20,6 +20,7 @@
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
  */
 
+#include <linux/interrupt.h>
 #include <sound/driver.h>
 #include <sound/core.h>
 #include "mixart.h"
--- linux-2.6.3-mm3/sound/pci/mixart/mixart_mixer.c.old	2004-02-23 18:34:42.000000000 +0100
+++ linux-2.6.3-mm3/sound/pci/mixart/mixart_mixer.c	2004-02-23 18:34:57.000000000 +0100
@@ -23,6 +23,7 @@
 #include <sound/driver.h>
 #include <linux/time.h>
 #include <linux/init.h>
+#include <linux/interrupt.h>
 #include <sound/core.h>
 #include "mixart.h"
 #include "mixart_core.h"

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

* Re: 2.6.3-mm3 (compile stats)
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (4 preceding siblings ...)
  2004-02-23 18:09 ` [patch] 2.6.3-mm3: ALSA miXart driver doesn't compile Adrian Bunk
@ 2004-02-23 18:58 ` John Cherry
  2004-02-23 20:00   ` Sam Ravnborg
  2004-02-24 22:22 ` 2.6.3-mm3 Mike Fedyk
                   ` (5 subsequent siblings)
  11 siblings, 1 reply; 73+ messages in thread
From: John Cherry @ 2004-02-23 18:58 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

The defconfig build is failing with 2.6.3-mm3...

In file included from scripts/sumversion.c:6:
scripts/modpost.h:12:23: elfconfig.h: No such file or directory

The allyesconfig build fails in sound/pci/mixart/mixart.c with...

In file included from sound/pci/mixart/mixart.c:33:
sound/pci/mixart/mixart.h:95: field `msg_taskq' has incomplete type
sound/pci/mixart/mixart.h:127: confused by earlier errors, bailing out

----------------------------------------------------------------------

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

* Re: 2.6.3-mm3 (compile stats)
  2004-02-23 18:58 ` 2.6.3-mm3 (compile stats) John Cherry
@ 2004-02-23 20:00   ` Sam Ravnborg
  0 siblings, 0 replies; 73+ messages in thread
From: Sam Ravnborg @ 2004-02-23 20:00 UTC (permalink / raw)
  To: John Cherry; +Cc: Andrew Morton, linux-kernel

On Mon, Feb 23, 2004 at 10:58:45AM -0800, John Cherry wrote:
> 
> In file included from scripts/sumversion.c:6:
> scripts/modpost.h:12:23: elfconfig.h: No such file or directory
Missing dependency broke build with parallel builds. Rusty has it fixed
in latest version.

	Sam

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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23  8:59             ` Andrew Morton
  2004-02-23  9:21               ` Nick Piggin
@ 2004-02-23 22:47               ` Chris Wedgwood
  2004-02-24  4:11                 ` Nick Piggin
  1 sibling, 1 reply; 73+ messages in thread
From: Chris Wedgwood @ 2004-02-23 22:47 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Nick Piggin, linux-kernel

On Mon, Feb 23, 2004 at 12:59:48AM -0800, Andrew Morton wrote:

> We've never clearly defined whether pages_high == free_pages means
> the zone is under limits.  According to __alloc_pages() it means
> that the zone is not under limits, so you've fixed two bugs there.

FWIW 2.6.3-mm3 with the above fix right now seems to behave much
better in my non-contrived cases than previous kernels I've tested
with.



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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-23 22:47               ` Chris Wedgwood
@ 2004-02-24  4:11                 ` Nick Piggin
  2004-02-24  9:12                   ` Chris Wedgwood
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-24  4:11 UTC (permalink / raw)
  To: Chris Wedgwood; +Cc: Andrew Morton, linux-kernel



Chris Wedgwood wrote:

>On Mon, Feb 23, 2004 at 12:59:48AM -0800, Andrew Morton wrote:
>
>
>>We've never clearly defined whether pages_high == free_pages means
>>the zone is under limits.  According to __alloc_pages() it means
>>that the zone is not under limits, so you've fixed two bugs there.
>>
>
>FWIW 2.6.3-mm3 with the above fix right now seems to behave much
>better in my non-contrived cases than previous kernels I've tested
>with.
>

Out of interest, what is the worst you can make it do with
contrived cases?


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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24  4:11                 ` Nick Piggin
@ 2004-02-24  9:12                   ` Chris Wedgwood
  2004-02-24  9:22                     ` Andrew Morton
  0 siblings, 1 reply; 73+ messages in thread
From: Chris Wedgwood @ 2004-02-24  9:12 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

On Tue, Feb 24, 2004 at 03:11:40PM +1100, Nick Piggin wrote:

> Out of interest, what is the worst you can make it do with
> contrived cases?

700MB slab used.


  --cw

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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24  9:12                   ` Chris Wedgwood
@ 2004-02-24  9:22                     ` Andrew Morton
  2004-02-24  9:30                       ` Chris Wedgwood
  2004-02-24 20:55                       ` Rik van Riel
  0 siblings, 2 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-24  9:22 UTC (permalink / raw)
  To: Chris Wedgwood; +Cc: piggin, linux-kernel

Chris Wedgwood <cw@f00f.org> wrote:
>
> On Tue, Feb 24, 2004 at 03:11:40PM +1100, Nick Piggin wrote:
> 
> > Out of interest, what is the worst you can make it do with
> > contrived cases?
> 
> 700MB slab used.
> 

Sigh.  There is absolutely nothing wrong with having a large slab cache. 
And there is nothing necessarily right about having a small one.

Sorry, but your comment is information-free.


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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24  9:22                     ` Andrew Morton
@ 2004-02-24  9:30                       ` Chris Wedgwood
  2004-02-24  9:37                         ` Andrew Morton
  2004-02-24 20:55                       ` Rik van Riel
  1 sibling, 1 reply; 73+ messages in thread
From: Chris Wedgwood @ 2004-02-24  9:30 UTC (permalink / raw)
  To: Andrew Morton; +Cc: piggin, linux-kernel

On Tue, Feb 24, 2004 at 01:22:22AM -0800, Andrew Morton wrote:

> Sigh.  There is absolutely nothing wrong with having a large slab
> cache.

Unless the slab contains useful data (ie. dentries that will actually
be accessed is some useful amount of time) then arguably those pages
are better used for the page-cache.

> And there is nothing necessarily right about having a small one.

Oh, I'm not claiming one is more right than the other.  The issue for
me is updatedb or even bk clone a few times will cause the slab to
swell with dentries and related contents that never seems to shrink
without forcing swapping.

> Sorry, but your comment is information-free.

I just notice I'm getting debugging output (call traces) for page
allocation failures which I've not seem before.  I was getting these
(swapper: page allocation failure. order:2, mode:0x20) after beating
things to see how bad things will get for Nick.

In this case slab is consuming so much low memory we're getting
allocation failures which was making networking choppy.


  --cw

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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24  9:30                       ` Chris Wedgwood
@ 2004-02-24  9:37                         ` Andrew Morton
  0 siblings, 0 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-24  9:37 UTC (permalink / raw)
  To: Chris Wedgwood; +Cc: piggin, linux-kernel

Chris Wedgwood <cw@f00f.org> wrote:
>
> I just notice I'm getting debugging output (call traces) for page
>  allocation failures which I've not seem before.  I was getting these
>  (swapper: page allocation failure. order:2, mode:0x20) after beating
>  things to see how bad things will get for Nick.

Order *two*?  That's four physically contiguous pages.  We haven't got a
snowball's chance of satisfying an order-2 GFP_ATOMIC allocation for
networking.

What's the call backtrace on these failures?


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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24  9:22                     ` Andrew Morton
  2004-02-24  9:30                       ` Chris Wedgwood
@ 2004-02-24 20:55                       ` Rik van Riel
  2004-02-24 22:36                         ` Andrew Morton
  1 sibling, 1 reply; 73+ messages in thread
From: Rik van Riel @ 2004-02-24 20:55 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Chris Wedgwood, piggin, linux-kernel

On Tue, 24 Feb 2004, Andrew Morton wrote:
> Chris Wedgwood <cw@f00f.org> wrote:
> > On Tue, Feb 24, 2004 at 03:11:40PM +1100, Nick Piggin wrote:
> > 
> > > Out of interest, what is the worst you can make it do with
> > > contrived cases?
> > 
> > 700MB slab used.
> 
> Sigh.  There is absolutely nothing wrong with having a large slab cache. 
> And there is nothing necessarily right about having a small one.

Could it be that the lower zone protection stuff simply means
that Chris's system only ever allocates page cache and anonymous
memory from his 600 MB highmem, leaving the 900 MB lowmem for
the slab cache to roam freely ?

I guess highmem allocations really should put some pressure on
lowmem, even when there is enough lowmem free, because otherwise
you end up effectively not using half of the memory on 1.5-2 GB
systems for paging ...

-- 
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it." - Brian W. Kernighan


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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (5 preceding siblings ...)
  2004-02-23 18:58 ` 2.6.3-mm3 (compile stats) John Cherry
@ 2004-02-24 22:22 ` Mike Fedyk
  2004-02-24 22:30   ` 2.6.3-mm3 Andrew Morton
  2004-02-25  0:26 ` 2.6.3-mm3 hangs on boot x440 (scsi?) john stultz
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-24 22:22 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/

Hi,

I have 2.6.3 on the 1.5GB RAM server that started the "large slab" thread.

Which patches should I apply from -mm to test for improvements?

Do these below have any dependencies not listed?

> vmscan-remove-priority.patch
>   mm/vmscan.c: remove unused priority argument.
> 
> kswapd-throttling-fixes.patch
>   kswapd throttling fixes
> 
> vm-dont-rotate-active-list.patch
>   vmscan: avoid rotation of the active list
> 
> vm-dont-rotate-active-list-padding.patch
>   vmscan: align scan_page per node
> 
> vm-lru-info.patch
>   vmscan: make better use of referenced info
> 
> vm-shrink-zone.patch
>   vmscan: several tuneups
> 
> vm-shrink-zone-div-by-0-fix.patch
> 
> vm-tune-throttle.patch
>   vmscan: delay throttling a little
> 
> shrink_slab-for-all-zones.patch
>   vm: scan slab in response to highmem scanning
> 

> zone-balancing-fix.patch
>   vmscan: zone balancing fix
> 
> zone-balancing-batching.patch
>   vmscan: fix inter-zone reclaim balancing
> 
What about Nick's fix up patch for the two patches above?  Should I 
include that one also?

Thanks,

Mike


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

* Re: 2.6.3-mm3
  2004-02-24 22:22 ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-24 22:30   ` Andrew Morton
  2004-02-25 21:27     ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-24 22:30 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: linux-kernel

Mike Fedyk <mfedyk@matchmail.com> wrote:
>
> Andrew Morton wrote:
> > 
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/
> 
> Hi,
> 
> I have 2.6.3 on the 1.5GB RAM server that started the "large slab" thread.
> 
> Which patches should I apply from -mm to test for improvements?

Just apply the mm3 rollup patch.

> Do these below have any dependencies not listed?

Probably not.  If they apply ten they'll work.

> What about Nick's fix up patch for the two patches above?  Should I 
> include that one also?

yes.

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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24 20:55                       ` Rik van Riel
@ 2004-02-24 22:36                         ` Andrew Morton
  2004-02-24 22:41                           ` Rik van Riel
  0 siblings, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-24 22:36 UTC (permalink / raw)
  To: Rik van Riel; +Cc: cw, piggin, linux-kernel

Rik van Riel <riel@redhat.com> wrote:
>
> On Tue, 24 Feb 2004, Andrew Morton wrote:
> > Chris Wedgwood <cw@f00f.org> wrote:
> > > On Tue, Feb 24, 2004 at 03:11:40PM +1100, Nick Piggin wrote:
> > > 
> > > > Out of interest, what is the worst you can make it do with
> > > > contrived cases?
> > > 
> > > 700MB slab used.
> > 
> > Sigh.  There is absolutely nothing wrong with having a large slab cache. 
> > And there is nothing necessarily right about having a small one.
> 
> Could it be that the lower zone protection stuff simply means
> that Chris's system only ever allocates page cache and anonymous
> memory from his 600 MB highmem, leaving the 900 MB lowmem for
> the slab cache to roam freely ?

The lower-zone protection code will only preserve an extra megabyte or so
of the normal zone in response to __GFP_HIGHMEM allocations, so it won't be
coming into play here.

I'd prefer to replace the lower-zone/incremental-min code with 2.4's
watermark code.  It's pretty much equivalent, but makes the calculations
once-only and it is easier to observe and understand its effects.  But
there's too much work going on in there to make this change at present.


> I guess highmem allocations really should put some pressure on
> lowmem, even when there is enough lowmem free, because otherwise
> you end up effectively not using half of the memory on 1.5-2 GB
> systems for paging ...

Yup.  With the current -mm patches the reclaim rate from lowmem and highmem
is nicely proportional to each zone's size for pagecache-heavy workloads. 
For lowmem-intensive workloads the reclaim rate from lowmem is higher, as
one would expect.  It seems to be working OK now.


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

* Re: [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3)
  2004-02-24 22:36                         ` Andrew Morton
@ 2004-02-24 22:41                           ` Rik van Riel
  0 siblings, 0 replies; 73+ messages in thread
From: Rik van Riel @ 2004-02-24 22:41 UTC (permalink / raw)
  To: Andrew Morton; +Cc: cw, piggin, linux-kernel

On Tue, 24 Feb 2004, Andrew Morton wrote:

> > I guess highmem allocations really should put some pressure on
> > lowmem, even when there is enough lowmem free, because otherwise
> > you end up effectively not using half of the memory on 1.5-2 GB
> > systems for paging ...
> 
> Yup.  With the current -mm patches the reclaim rate from lowmem and highmem
> is nicely proportional to each zone's size for pagecache-heavy workloads. 
> For lowmem-intensive workloads the reclaim rate from lowmem is higher, as
> one would expect.  It seems to be working OK now.

OK, that should do the trick.

-- 
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it." - Brian W. Kernighan


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

* 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (6 preceding siblings ...)
  2004-02-24 22:22 ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-25  0:26 ` john stultz
  2004-02-25  1:06   ` Andrew Morton
  2004-02-25  1:15 ` [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch Daniel McNeil
                   ` (3 subsequent siblings)
  11 siblings, 1 reply; 73+ messages in thread
From: john stultz @ 2004-02-25  0:26 UTC (permalink / raw)
  To: Andrew Morton; +Cc: lkml

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

Andrew,
	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
the following:
 
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
        <Adaptec aic7899 Ultra160 SCSI adapter>                 
        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
                                                                

I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
there as well. 

The problem is not seen using 2.6.3-bk.current

Additionally the problem does not occur on an x445 (which uses
MPT-Fusion, rather then AIC7xxx) w/ -mm1 or -mm3.

Attached is the boot log and .config (from -mm1).

Let me know if there is any additional  debug info you'd like.

thanks
-john

[-- Attachment #2: log.mm1-broke --]
[-- Type: text/plain, Size: 18992 bytes --]

Linux version 2.6.3-mm1 (jstultz@elm3b59) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-24)) #2 SMP Tue Feb 24 18:39:54 EST 2004
BIOS-provided physical RAM map:                    
 BIOS-e820: 0000000000000000 - 000000000009dc00 (usable)
 BIOS-e820: 000000000009dc00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000dffb6ec0 (usable)  
 BIOS-e820: 00000000dffb6ec0 - 00000000dffbf800 (ACPI data)
 BIOS-e820: 00000000dffbf800 - 00000000e0000000 (reserved) 
 BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
 BIOS-e820: 0000000100000000 - 0000000220000000 (usable)  
get_memcfg_from_srat: assigning address to rsdp         
RSD PTR  v0 [IBM   ]                           
Begin SRAT table scan....
CPU 0x00 in proximity domain 0x00
CPU 0x02 in proximity domain 0x00
CPU 0x10 in proximity domain 0x00
CPU 0x12 in proximity domain 0x00
CPU 0x20 in proximity domain 0x01
CPU 0x22 in proximity domain 0x01
CPU 0x30 in proximity domain 0x01
CPU 0x32 in proximity domain 0x01
CPU 0x01 in proximity domain 0x00
CPU 0x03 in proximity domain 0x00
CPU 0x11 in proximity domain 0x00
CPU 0x13 in proximity domain 0x00
CPU 0x21 in proximity domain 0x01
CPU 0x23 in proximity domain 0x01
CPU 0x31 in proximity domain 0x01
CPU 0x33 in proximity domain 0x01
Memory range 0x0 to 0xE0000 (type 0x1) in proximity domain 0x00 enabled
Memory range 0x100000 to 0x120000 (type 0x1) in proximity domain 0x00 enabled
Memory range 0x120000 to 0x220000 (type 0x1) in proximity domain 0x01 enabled
acpi20_parse_srat: Entry length value is zero; can't parse any further!      
pxm bitmap: 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Number of logical nodes in system = 2
Number of memory chunks in system = 3
chunk 0 nid 0 start_pfn 00000000 end_pfn 000e0000
chunk 1 nid 0 start_pfn 00100000 end_pfn 00120000
chunk 2 nid 1 start_pfn 00120000 end_pfn 00220000
Reserving 10752 pages of KVA for lmem_map of node 1
Shrinking node 1 from 2228224 pages to 2217472 pages
Reserving total of 10752 pages for numa KVA remap   
7808MB HIGHMEM available.                        
854MB LOWMEM available.  
min_low_pfn = 1356, max_low_pfn = 218624, highstart_pfn = 229376
Low memory ends at vaddr f5600000                               
node 0 will remap to vaddr f8000000 - f8000000
node 1 will remap to vaddr f5600000 - f8000000
High memory starts at vaddr f8000000          
found SMP MP-table at 0009dd40      
On node 0 totalpages: 1048576 
  DMA zone: 4096 pages, LIFO batch:1
  Normal zone: 214528 pages, LIFO batch:16
  HighMem zone: 829952 pages, LIFO batch:16
BUG: wrong zone alignment, it will crash   
On node 1 totalpages: 1037824           
  DMA zone: 0 pages, LIFO batch:1
  Normal zone: 0 pages, LIFO batch:1
  HighMem zone: 1037824 pages, LIFO batch:16
DMI 2.3 present.                            
IBM machine detected. Enabling interrupts during APM calls.
IBM machine detected. Disabling SMBus accesses.            
IBM eserver xSeries 440 detected: force use of acpi=ht
ACPI: RSDP (v000 IBM                                       ) @ 0x000fdba0
ACPI: RSDT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf780
ACPI: FADT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf700
ACPI: MADT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf580
ACPI: SRAT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf3c0
ACPI: DSDT (v001 IBM    SERVIGIL 0x00001000 INTL 0x02002025) @ 0x00000000
ACPI: Local APIC address 0xfee00000                                      
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Processor #0 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x02] enabled)
Processor #2 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x10] enabled)
Processor #16 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x03] lapic_id[0x12] enabled)
Processor #18 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x04] lapic_id[0x20] enabled)
Processor #32 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x05] lapic_id[0x22] enabled)
Processor #34 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x06] lapic_id[0x30] enabled)
Processor #48 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x07] lapic_id[0x32] enabled)
Processor #50 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x08] lapic_id[0x01] enabled)
Processor #1 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x09] lapic_id[0x03] enabled)
Processor #3 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x0a] lapic_id[0x11] enabled)
Processor #17 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0b] lapic_id[0x13] enabled)
Processor #19 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0c] lapic_id[0x21] enabled)
Processor #33 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0d] lapic_id[0x23] enabled)
Processor #35 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0e] lapic_id[0x31] enabled)
Processor #49 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0f] lapic_id[0x33] enabled)
Processor #51 15:1 APIC version 20                
ACPI: LAPIC_NMI (acpi_id[0x00] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x03] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x04] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x05] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x06] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x07] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x08] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x09] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0a] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0b] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0c] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0d] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0e] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0f] dfl dfl lint[0x1])
ACPI: IOAPIC (id[0x0e] address[0xfec00000] global_irq_base[0x0])
IOAPIC[0]: Assigned apic_id 14                                  
IOAPIC[0]: apic_id 14, version 17, address 0xfec00000, IRQ 0-50
ACPI: IOAPIC (id[0x0d] address[0xfec01000] global_irq_base[0x33])
IOAPIC[1]: Assigned apic_id 13                                   
IOAPIC[1]: apic_id 13, version 17, address 0xfec01000, IRQ 51-101
ACPI: INT_SRC_OVR (bus 0 bus_irq 8 global_irq 8 low edge)        
ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high dfl)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 36 dfl dfl)  
ACPI BALANCE SET                                         
Enabling APIC mode:  Summit.  Using 2 I/O APICs
Using ACPI (MADT) for SMP configuration information
Built 2 zonelists                                  
Initializing CPU#0
Kernel command line: ro root=/dev/sda2 console=ttyS0,115200 console=tty0
PID hash table entries: 4096 (order 12: 32768 bytes)                    
Summit chipset: Starting Cyclone Counter.           
Detected 1501.936 MHz processor.         
Using cyclone for high-res timesource
Console: colour VGA+ 80x25           
Initializing highpages for node 0
Initializing highpages for node 1
Memory: 8292392k/8912896k available (2748k kernel code, 51436k reserved, 1019k data, 300k init, 7470808k highmem)
Calibrating delay loop... 193.53 BogoMIPS
Dentry cache hash table entries: 1048576 (order: 10, 4194304 bytes)
Inode-cache hash table entries: 1048576 (order: 10, 4194304 bytes) 
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)        
CPU: Trace cache: 12K uops, L1 D cache: 8K                
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 0
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.                    
POSIX conformance testing by UNIFIX
CPU0: Intel(R) Genuine CPU 1.50GHz stepping 01
per-CPU timeslice cutoff: 731.51 usecs.       
task migration cache decay timeout: 1 msecs.
enabled ExtINT on CPU#0                     
Leaving ESR disabled.  
Mapping cpu 0 to node 0
Booting processor 1/2 eip 2000
Initializing CPU#1            
masked ExtINT on CPU#1
Leaving ESR disabled. 
Mapping cpu 1 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 1
CPU1: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 2/16 eip 2000               
Initializing CPU#2             
masked ExtINT on CPU#2
Leaving ESR disabled. 
Mapping cpu 2 to node 0
Calibrating delay loop... 199.68 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 8
CPU2: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 3/18 eip 2000               
Initializing CPU#3             
masked ExtINT on CPU#3
Leaving ESR disabled. 
Mapping cpu 3 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 9
CPU3: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 4/32 eip 2000               
Initializing CPU#4             
masked ExtINT on CPU#4
Leaving ESR disabled. 
Mapping cpu 4 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 16
CPU4: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 5/34 eip 2000               
Initializing CPU#5             
masked ExtINT on CPU#5
Leaving ESR disabled. 
Mapping cpu 5 to node 1
Calibrating delay loop... 198.65 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 17
CPU5: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 6/48 eip 2000               
Initializing CPU#6             
masked ExtINT on CPU#6
Leaving ESR disabled. 
Mapping cpu 6 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 24
CPU6: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 7/50 eip 2000               
Initializing CPU#7             
masked ExtINT on CPU#7
Leaving ESR disabled. 
Mapping cpu 7 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 25
CPU7: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 8/1 eip 2000                
Initializing CPU#8            
masked ExtINT on CPU#8
Leaving ESR disabled. 
Mapping cpu 8 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 0
CPU8: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 9/3 eip 2000                
Initializing CPU#9            
masked ExtINT on CPU#9
Leaving ESR disabled. 
Mapping cpu 9 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 1
CPU9: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 10/17 eip 2000              
Initializing CPU#10             
masked ExtINT on CPU#10
Leaving ESR disabled.  
Mapping cpu 10 to node 0
Calibrating delay loop... 199.68 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 8
CPU10: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 11/19 eip 2000               
Initializing CPU#11             
masked ExtINT on CPU#11
Leaving ESR disabled.  
Mapping cpu 11 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 9
CPU11: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 12/33 eip 2000               
Initializing CPU#12             
masked ExtINT on CPU#12
Leaving ESR disabled.  
Mapping cpu 12 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 16
CPU12: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 13/35 eip 2000               
Initializing CPU#13             
masked ExtINT on CPU#13
Leaving ESR disabled.  
Mapping cpu 13 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 17
CPU13: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 14/49 eip 2000               
Initializing CPU#14             
masked ExtINT on CPU#14
Leaving ESR disabled.  
Mapping cpu 14 to node 1
Calibrating delay loop... 198.65 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 24
CPU14: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 15/51 eip 2000               
Initializing CPU#15             
masked ExtINT on CPU#15
Leaving ESR disabled.  
Mapping cpu 15 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 25
CPU15: Intel(R) Genuine CPU 1.50GHz stepping 01
Total of 16 processors activated (3181.05 BogoMIPS).
ENABLING IO-APIC IRQs                               
..TIMER: vector=0x31 pin1=0 pin2=-1
Using local APIC timer interrupts. 
calibrating APIC timer ...        
..... CPU clock speed is 1920.0193 MHz.
..... host bus clock speed is 128.0012 MHz.
checking TSC synchronization across 16 CPUs: 
BIOS BUG: CPU#0 improperly initialized, has 7188724 usecs TSC skew! FIXED.
BIOS BUG: CPU#1 improperly initialized, has 7188733 usecs TSC skew! FIXED.
BIOS BUG: CPU#2 improperly initialized, has 7188728 usecs TSC skew! FIXED.
BIOS BUG: CPU#3 improperly initialized, has 7188726 usecs TSC skew! FIXED.
BIOS BUG: CPU#4 improperly initialized, has -7188732 usecs TSC skew! FIXED.
BIOS BUG: CPU#5 improperly initialized, has -7188732 usecs TSC skew! FIXED.
BIOS BUG: CPU#6 improperly initialized, has -7188720 usecs TSC skew! FIXED.
BIOS BUG: CPU#7 improperly initialized, has -7188731 usecs TSC skew! FIXED.
BIOS BUG: CPU#8 improperly initialized, has 7188727 usecs TSC skew! FIXED. 
BIOS BUG: CPU#9 improperly initialized, has 7188733 usecs TSC skew! FIXED.
BIOS BUG: CPU#10 improperly initialized, has 7188728 usecs TSC skew! FIXED.
BIOS BUG: CPU#11 improperly initialized, has 7188726 usecs TSC skew! FIXED.
BIOS BUG: CPU#12 improperly initialized, has -7188732 usecs TSC skew! FIXED.
BIOS BUG: CPU#13 improperly initialized, has -7188732 usecs TSC skew! FIXED.
BIOS BUG: CPU#14 improperly initialized, has -7188730 usecs TSC skew! FIXED.
BIOS BUG: CPU#15 improperly initialized, has -7188714 usecs TSC skew! FIXED.
Brought up 15 CPUs                                                          
zapping low mappings.
NET: Registered protocol family 16
EISA bus registered               
PCI: PCI BIOS revision 2.10 entry at 0xfd30d, last bus=11
PCI: Using configuration type 1                          
mtrr: v2.0 (20020519)          
ACPI: Subsystem revision 20040211
ACPI: Interpreter disabled.      
SCSI subsystem initialized 
ACPI: ACPI tables contain no PCI IRQ routing entries
PCI: Invalid ACPI-PCI IRQ routing table             
PCI: Probing PCI hardware              
PCI: Probing PCI hardware (bus 00)
PCI: Discovered peer bus 01       
PCI: Discovered peer bus 02
PCI: Discovered peer bus 05
PCI: Discovered peer bus 07
PCI: Discovered peer bus 09
PCI BIOS passed nonexistent PCI bus 0!
PCI BIOS passed nonexistent PCI bus 0!
PCI BIOS passed nonexistent PCI bus 0!
PCI BIOS passed nonexistent PCI bus 0!
PCI BIOS passed nonexistent PCI bus 1!
PCI BIOS passed nonexistent PCI bus 1!
PCI BIOS passed nonexistent PCI bus 1!
PCI BIOS passed nonexistent PCI bus 5!
Starting balanced_irq                 
highmem bounce pool size: 64 pages
VFS: Disk quotas dquot_6.5.1      
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
PCI: Enabling Via external APIC routing                 
Real Time Clock Driver v1.12           
Linux agpgart interface v0.100 (c) Dave Jones
Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A                                 
Using anticipatory io scheduler         
Floppy drive(s): fd0 is 1.44M  
reset set in interrupt, calling c0289a08
floppy0: no floppy controllers found    
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)                                         
eepro100.c:v1.09j-t 9/29/99 Donald Becker http://www.scyld.com/network/eepro100.html
eepro100.c: $Revision: 1.36 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others
eth0: OEM i82557/i82558 10/100 Ethernet, 00:02:55:64:FF:38, IRQ 3.
  Board assembly 729857-009, Physical connectors present: RJ45    
  Primary interface chip i82555 PHY #1.                       
  General self-test: passed.           
  Serial sub-system self-test: passed.
  Internal registers self-test: passed.
  ROM checksum self-test: passed (0x04f4518b).
tg3.c:v2.6 (February 3, 2004)                 
eth1: Tigon3 [partno(BCM95700A6) rev 7102 PHY(5401)] (PCI:66MHz:64-bit) 10/100/1000BaseT Ethernet 00:02:55:dc:09:34
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: IDE controller at PCI slot 0000:00:05.1                            
VP_IDE: chipset revision 6                     
VP_IDE: not 100% native mode: will probe irqs later
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: VIA vt82c686b (rev 40) IDE UDMA100 controller on pci0000:00:05.1   
    ide0: BM-DMA at 0x0700-0x0707, BIOS settings: hda:pio, hdb:pio      
    ide1: BM-DMA at 0x0708-0x070f, BIOS settings: hdc:pio, hdd:pio
hda: LG CD-ROM CRN-8245B, ATAPI CD/DVD-ROM drive                  
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14             
hda: ATAPI 24X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.20              
ide-floppy driver 0.99.newide       
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
        <Adaptec aic7899 Ultra160 SCSI adapter>                 
        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
                                                                


[-- Attachment #3: config.mm1-broke --]
[-- Type: text/plain, Size: 21611 bytes --]

#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y

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

#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=17
# 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 is not set

#
# Processor type and features
#
# CONFIG_X86_PC is not set
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
CONFIG_X86_SUMMIT=y
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
CONFIG_ACPI_SRAT=y
CONFIG_X86_SUMMIT_NUMA=y
CONFIG_X86_CYCLONE_TIMER=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
CONFIG_MPENTIUM4=y
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
# CONFIG_X86_4G is not set
# CONFIG_X86_SWITCH_PAGETABLES is not set
# CONFIG_X86_4G_VM_LAYOUT is not set
# CONFIG_X86_UACCESS_INDIRECT is not set
# CONFIG_X86_HIGH_ENTRY is not set
# CONFIG_HPET_TIMER is not set
# CONFIG_HPET_EMULATE_RTC is not set
CONFIG_SMP=y
CONFIG_NR_CPUS=32
# CONFIG_SCHED_SMT is not set
CONFIG_PREEMPT=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
# CONFIG_X86_MCE is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
# CONFIG_EDD is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_X86_PAE=y
CONFIG_NUMA=y
CONFIG_DISCONTIGMEM=y
CONFIG_HAVE_ARCH_BOOTMEM_NODE=y
# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
CONFIG_IRQBALANCE=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_BOOT_IOREMAP=y
# CONFIG_REGPARM is not set

#
# Power management options (ACPI, APM)
#
# CONFIG_PM is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_THERMAL is not set
CONFIG_ACPI_ASUS=y
CONFIG_ACPI_TOSHIBA=y
# 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
# CONFIG_ACPI_RELAXED_AML is not set
# CONFIG_X86_PM_TIMER is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

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

#
# PCMCIA/CardBus support
#
# CONFIG_PCMCIA is not set
CONFIG_PCMCIA_PROBE=y

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
# CONFIG_BINFMT_MISC is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
# CONFIG_FW_LOADER is not set

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

#
# Parallel port support
#
# CONFIG_PARPORT is not set

#
# Plug and Play support
#
# CONFIG_PNP is not set

#
# Block devices
#
CONFIG_BLK_DEV_FD=y
# CONFIG_BLK_DEV_XD 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 is not set
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
# CONFIG_LBD is not set

#
# 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 is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
CONFIG_BLK_DEV_IDEFLOPPY=y
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_TASKFILE_IO=y

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_CMD640=y
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
# 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=y
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=y
CONFIG_BLK_DEV_ALI15X3=y
# CONFIG_WDC_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
CONFIG_BLK_DEV_CMD64X=y
# CONFIG_BLK_DEV_TRIFLEX is not set
CONFIG_BLK_DEV_CY82C693=y
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# 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=y
# CONFIG_BLK_DEV_SIIMAGE is not set
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_IDE_CHIPSETS is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_DMA_NONPCI is not set
# 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_MAX_SD_DISKS=256
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
# 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=y
CONFIG_SCSI_LOGGING=y

#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_7000FASST is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AHA152X is not set
# CONFIG_SCSI_AHA1542 is not set
# CONFIG_SCSI_AHA1740 is not set
# CONFIG_SCSI_AACRAID is not set
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
# CONFIG_AIC7XXX_PROBE_EISA_VL is not set
# CONFIG_AIC7XXX_BUILD_FIRMWARE is not set
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_IN2000 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_DTC3280 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_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
CONFIG_SCSI_IPS=y
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_NCR53C406A is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS 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_SIM710 is not set
# CONFIG_SCSI_SYM53C416 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set

#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set

#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set

#
# Fusion MPT device support
#
CONFIG_FUSION=y
CONFIG_FUSION_BOOT=y
CONFIG_FUSION_MAX_SGE=40

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

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Macintosh device drivers
#

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_NETLINK_DEV=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_INET_ECN=y
CONFIG_SYN_COOKIES=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set

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

#
# IP: Netfilter Configuration
#
# CONFIG_IP_NF_CONNTRACK is not set
# CONFIG_IP_NF_QUEUE is not set
# CONFIG_IP_NF_IPTABLES is not set
CONFIG_IP_NF_NAT_NEEDED=y
# CONFIG_IP_NF_ARPTABLES is not set
CONFIG_IP_NF_COMPAT_IPCHAINS=y

#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IPV6_SCTP__=y
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q 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=y
# CONFIG_NET_SCH_HTB is not set
# CONFIG_NET_SCH_HFSC is not set
CONFIG_NET_SCH_CSZ=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=y
CONFIG_NET_CLS_ROUTE4=y
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=y
CONFIG_NET_CLS_U32=y
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
CONFIG_NET_CLS_POLICE=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y

#
# ARCnet devices
#
# CONFIG_ARCNET is not set
CONFIG_DUMMY=y
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set

#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not set
# CONFIG_NET_ISA is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
CONFIG_ADAPTEC_STARFIRE=y
# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
# CONFIG_AC3200 is not set
# CONFIG_APRICOT is not set
CONFIG_B44=y
# CONFIG_FORCEDETH is not set
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
CONFIG_EEPRO100=y
# CONFIG_EEPRO100_PIO is not set
# CONFIG_E100 is not set
# CONFIG_LNE390 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_NE3210 is not set
# CONFIG_ES3210 is not set
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_TLAN is not set
# CONFIG_VIA_RHINE is not set
# CONFIG_NET_POCKET 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_SIS190 is not set
# CONFIG_SK98LIN is not set
CONFIG_TIGON3=y

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set

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

#
# Token Ring devices
#
# CONFIG_TR is not set
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set

#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set

#
# IrDA (infrared) support
#
# CONFIG_IRDA is not set

#
# Bluetooth support
#
# CONFIG_BT 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

#
# 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=y
# 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_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_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
# CONFIG_MOUSE_PC110PAD 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 is not set
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
# CONFIG_SERIAL_8250_MANY_PORTS is not set
# CONFIG_SERIAL_8250_SHARE_IRQ is not set
# 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_QIC02_TAPE is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

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

#
# Ftape, the floppy tape device driver
#
CONFIG_AGP=y
CONFIG_AGP_ALI=y
# CONFIG_AGP_ATI is not set
CONFIG_AGP_AMD=y
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=y
# CONFIG_AGP_NVIDIA is not set
CONFIG_AGP_SIS=y
CONFIG_AGP_SWORKS=y
CONFIG_AGP_VIA=y
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HANGCHECK_TIMER is not set

#
# I2C support
#
# CONFIG_I2C 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

#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
# 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 is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
# CONFIG_QFMT_V2 is not set
CONFIG_QUOTACTL=y
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
# CONFIG_ZISOFS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
# CONFIG_MSDOS_FS is not set
CONFIG_VFAT_FS=y
# 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 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_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

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

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

#
# Native Language Support
#
CONFIG_NLS=y
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=y
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 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=y
CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_IOVIRT is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_SPINLINE is not set
# CONFIG_DEBUG_HIGHMEM is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_LOCKMETER is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_KGDB is not set
# CONFIG_FRAME_POINTER is not set
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y

#
# Security options
#
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Library routines
#
CONFIG_CRC32=y
CONFIG_X86_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y
CONFIG_PC=y

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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-25  0:26 ` 2.6.3-mm3 hangs on boot x440 (scsi?) john stultz
@ 2004-02-25  1:06   ` Andrew Morton
  2004-02-25  1:22     ` john stultz
  2004-02-26 14:40     ` Go Taniguchi
  0 siblings, 2 replies; 73+ messages in thread
From: Andrew Morton @ 2004-02-25  1:06 UTC (permalink / raw)
  To: john stultz; +Cc: linux-kernel

john stultz <johnstul@us.ibm.com> wrote:
>
> 	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
> the following:
>  
> scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
>         <Adaptec aic7899 Ultra160 SCSI adapter>                 
>         aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
>                                                                 
> 
> I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> there as well. 

Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
initcall_debug to the boot command just so we know we aren't blaming the
wrong thing.

Apart from that, gosh.  Maybe you could add just linus.patch and
bk-scsi.patch, see if that hangs too?  Or just test the latest linus tree -
the scsi changes were merged this morning.  Thanks.


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

* [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (7 preceding siblings ...)
  2004-02-25  0:26 ` 2.6.3-mm3 hangs on boot x440 (scsi?) john stultz
@ 2004-02-25  1:15 ` Daniel McNeil
  2004-02-25  1:43   ` Andrew Morton
  2004-02-25  2:51 ` 2.6.3-mm3 Mike Fedyk
                   ` (2 subsequent siblings)
  11 siblings, 1 reply; 73+ messages in thread
From: Daniel McNeil @ 2004-02-25  1:15 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Linux Kernel Mailing List, linux-aio

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

Andrew,

This patch moves the serializing of writebacks up one level to before
where the dirty_pages are moved to the io_pages list.  This prevents
writebacks from missing any pages that are moved back to the
dirty list by an SYNC_NONE writeback.  I have not seen this race in
testing -- just by looking at the code.  It also skips the serialization
for blockdevs.

Also this patch changes filemap_fdatawrite() to leave the page on the
locked_pages list until the i/o has finished.  This prevents
parallel filemap_fdatawait()s from missing a page that should be
waited on.  I have not seen this in testing, either.

Thoughts?

Daniel

[-- Attachment #2: 2.6.3-mm3.serialize_writeback_fdatawait.patch --]
[-- Type: text/x-patch, Size: 5756 bytes --]

diff -rup linux-2.6.3-mm3.orig/fs/fs-writeback.c linux-2.6.3-mm3/fs/fs-writeback.c
--- linux-2.6.3-mm3.orig/fs/fs-writeback.c	2004-02-24 14:35:57.783234412 -0800
+++ linux-2.6.3-mm3/fs/fs-writeback.c	2004-02-24 15:13:52.482310450 -0800
@@ -139,6 +139,7 @@ __sync_single_inode(struct inode *inode,
 	struct address_space *mapping = inode->i_mapping;
 	struct super_block *sb = inode->i_sb;
 	int wait = wbc->sync_mode == WB_SYNC_ALL;
+	int blkdev = inode->i_sb == blockdev_superblock;
 
 	BUG_ON(inode->i_state & I_LOCK);
 
@@ -146,6 +147,27 @@ __sync_single_inode(struct inode *inode,
 	dirty = inode->i_state & I_DIRTY;
 	inode->i_state |= I_LOCK;
 	inode->i_state &= ~I_DIRTY;
+	spin_unlock(&inode_lock);
+
+	/*
+	 * Serialize writebacks except for blockdevs
+	 */
+	if (!blkdev) {
+		if (wait) {
+			/*
+			 * Only allow 1 SYNC writeback at a time, to be able
+			 * to wait for all i/o without worrying about racing
+			 * WB_SYNC_NONE writers.
+			 */
+			down_write(&mapping->wb_rwsema);
+		} else {
+			if (!down_read_trylock(&mapping->wb_rwsema))
+			/*
+			 * SYNC writeback already in progress
+			 */
+			goto skip_writeback;
+		}
+	}
 
 	/*
 	 * smp_rmb(); note: if you remove write_lock below, you must add this.
@@ -157,10 +179,17 @@ __sync_single_inode(struct inode *inode,
 	if (wait || !wbc->for_kupdate || list_empty(&mapping->io_pages))
 		list_splice_init(&mapping->dirty_pages, &mapping->io_pages);
 	spin_unlock(&mapping->page_lock);
-	spin_unlock(&inode_lock);
 
 	do_writepages(mapping, wbc);
 
+	if (!blkdev) {
+		if (wait)
+			up_write(&mapping->wb_rwsema);
+		else
+			up_read(&mapping->wb_rwsema);
+	}
+
+skip_writeback:
 	/* Don't write the inode if only I_DIRTY_PAGES was set */
 	if (dirty & (I_DIRTY_SYNC | I_DIRTY_DATASYNC))
 		write_inode(inode, wait);
diff -rup linux-2.6.3-mm3.orig/mm/filemap.c linux-2.6.3-mm3/mm/filemap.c
--- linux-2.6.3-mm3.orig/mm/filemap.c	2004-02-24 12:41:41.290083474 -0800
+++ linux-2.6.3-mm3/mm/filemap.c	2004-02-24 14:34:48.992623430 -0800
@@ -128,6 +128,8 @@ static inline int sync_page(struct page 
 	return 0;
 }
 
+extern struct super_block *blockdev_superblock;
+
 /**
  * filemap_fdatawrite - start writeback against all of a mapping's dirty pages
  * @mapping: address space structure to write
@@ -144,14 +146,39 @@ static int __filemap_fdatawrite(struct a
 		.sync_mode = sync_mode,
 		.nr_to_write = mapping->nrpages * 2,
 	};
+	int blkdev = mapping->host->i_sb == blockdev_superblock;
 
 	if (mapping->backing_dev_info->memory_backed)
 		return 0;
 
+	if (!blkdev) {
+		if (sync_mode == WB_SYNC_NONE) {
+			if (!down_read_trylock(&mapping->wb_rwsema))
+				/*
+				 * SYNC writeback already in progress
+				 */
+				return 0;
+		} else {
+			/*
+			 * Only allow 1 SYNC writeback at a time, to be able
+			 * to wait for all i/o without worrying about racing
+			 * WB_SYNC_NONE writers.
+			 */
+			down_write(&mapping->wb_rwsema);
+		}
+	}
+		
 	spin_lock(&mapping->page_lock);
 	list_splice_init(&mapping->dirty_pages, &mapping->io_pages);
 	spin_unlock(&mapping->page_lock);
 	ret = do_writepages(mapping, &wbc);
+
+	if (!blkdev) {
+		if (sync_mode == WB_SYNC_NONE)
+			up_read(&mapping->wb_rwsema);
+		else
+			up_write(&mapping->wb_rwsema);
+	}
 	return ret;
 }
 
@@ -188,13 +215,24 @@ restart:
 		struct page *page;
 
 		page = list_entry(mapping->locked_pages.next,struct page,list);
-		list_del(&page->list);
-		if (PageDirty(page))
-			list_add(&page->list, &mapping->dirty_pages);
-		else
+		/*
+		 * Leave page on locked list until i/o has finished
+		 * so parallel filemap_fdatawait()s will all see the page.
+		 */
+
+		if (!PageDirty(page) && !PageLocked(page) &&
+		    !PageWriteback(page)) {
+	
+			/*
+			 * The page is checked if locked because it might
+			 * be in process of being setup for writeback with 
+			 * PG_dirty cleared and PG_writeback not set yet.
+			 * The page is not dirty and i/o has finished
+			 * so we can move it to the clean list.
+			 */
+			list_del(&page->list);
 			list_add(&page->list, &mapping->clean_pages);
 
-		if (!PageWriteback(page)) {
 			if (++progress > 32) {
 				if (need_resched()) {
 					spin_unlock(&mapping->page_lock);
@@ -209,10 +247,15 @@ restart:
 		page_cache_get(page);
 		spin_unlock(&mapping->page_lock);
 
-		wait_on_page_writeback(page);
-		if (PageError(page))
-			ret = -EIO;
-
+		lock_page(page);
+		if (PageDirty(page) && mapping->a_ops->writepage) {
+			write_one_page(page, 1);
+		} else {
+			wait_on_page_writeback(page);
+			unlock_page(page);
+		}
+ 		if (PageError(page))
+ 			ret = -EIO;
 		page_cache_release(page);
 		spin_lock(&mapping->page_lock);
 	}
diff -rup linux-2.6.3-mm3.orig/mm/page-writeback.c linux-2.6.3-mm3/mm/page-writeback.c
--- linux-2.6.3-mm3.orig/mm/page-writeback.c	2004-02-24 14:48:41.084633905 -0800
+++ linux-2.6.3-mm3/mm/page-writeback.c	2004-02-24 14:49:20.156550105 -0800
@@ -482,32 +482,9 @@ void __init page_writeback_init(void)
 
 int do_writepages(struct address_space *mapping, struct writeback_control *wbc)
 {
-	int ret;
-	if (wbc->sync_mode == WB_SYNC_NONE) {
-		if (!down_read_trylock(&mapping->wb_rwsema))
-			/*
-			 * SYNC writeback in progress
-			 */
-			return 0;
-	} else {
-		/*
-		 * Only allow 1 SYNC writeback at a time, to be able
-		 * to wait for all i/o without worrying about racing
-		 * WB_SYNC_NONE writers.
-		 */
-		down_write(&mapping->wb_rwsema);
-	}
-
 	if (mapping->a_ops->writepages)
-		ret = mapping->a_ops->writepages(mapping, wbc);
-	else
-		ret = generic_writepages(mapping, wbc);
-	if (wbc->sync_mode == WB_SYNC_NONE) {
-		up_read(&mapping->wb_rwsema);
-	} else {
-		up_write(&mapping->wb_rwsema);
-	}
-	return ret;
+		return mapping->a_ops->writepages(mapping, wbc);
+	return generic_writepages(mapping, wbc);
 }
 
 /**

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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-25  1:06   ` Andrew Morton
@ 2004-02-25  1:22     ` john stultz
  2004-02-25  1:27       ` john stultz
  2004-02-25  1:48       ` Andrew Morton
  2004-02-26 14:40     ` Go Taniguchi
  1 sibling, 2 replies; 73+ messages in thread
From: john stultz @ 2004-02-25  1:22 UTC (permalink / raw)
  To: Andrew Morton; +Cc: lkml

On Tue, 2004-02-24 at 17:06, Andrew Morton wrote:
> john stultz <johnstul@us.ibm.com> wrote:
> >
> > 	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
> > the following:
> >  
> > scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
> >         <Adaptec aic7899 Ultra160 SCSI adapter>                 
> >         aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
> >                                                                 
> > 
> > I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > there as well. 
> 
> Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> initcall_debug to the boot command just so we know we aren't blaming the
> wrong thing.

I was suspecting that patch, unfortunately reverting it doesn't seem to
help.

Here's the initcall_debug output:

ide-floppy driver 0.99.newide
calling initcall 0xc04d6821  
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
        <Adaptec aic7899 Ultra160 SCSI adapter>                 
        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
                                                                

> Apart from that, gosh.  Maybe you could add just linus.patch and
> bk-scsi.patch, see if that hangs too?  Or just test the latest linus tree -
> the scsi changes were merged this morning.  Thanks.

The bk.current that I tested and worked was from about two hours ago.
But I'll spin it again as 4 new changesets have shown up.

thanks
-john


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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-25  1:22     ` john stultz
@ 2004-02-25  1:27       ` john stultz
  2004-02-25  1:48       ` Andrew Morton
  1 sibling, 0 replies; 73+ messages in thread
From: john stultz @ 2004-02-25  1:27 UTC (permalink / raw)
  To: Andrew Morton; +Cc: lkml

On Tue, 2004-02-24 at 17:22, john stultz wrote:
> On Tue, 2004-02-24 at 17:06, Andrew Morton wrote:
> > john stultz <johnstul@us.ibm.com> wrote:
> > >
> > > 	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
> > > the following:
> > >  
> > > scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
> > >         <Adaptec aic7899 Ultra160 SCSI adapter>                 
> > >         aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
> > >                                                                 
> > > 
> > > I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > > there as well. 
> > 
> > Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> > initcall_debug to the boot command just so we know we aren't blaming the
> > wrong thing.
> 
> I was suspecting that patch, unfortunately reverting it doesn't seem to
> help.
> 
> Here's the initcall_debug output:
> 
> ide-floppy driver 0.99.newide
> calling initcall 0xc04d6821  
> scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
>         <Adaptec aic7899 Ultra160 SCSI adapter>                 
>         aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs

Sorry, sent that too quickly. 

[jstultz@elm3b59 linux-2.6.3]$ grep c04d6821 System.map 
c04d6821 t ahc_linux_init

thanks
-john



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

* Re: [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch
  2004-02-25  1:15 ` [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch Daniel McNeil
@ 2004-02-25  1:43   ` Andrew Morton
  2004-02-25 22:56     ` Daniel McNeil
  0 siblings, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-25  1:43 UTC (permalink / raw)
  To: Daniel McNeil; +Cc: linux-kernel, linux-aio

Daniel McNeil <daniel@osdl.org> wrote:
>
> This patch moves the serializing of writebacks up one level to before
> where the dirty_pages are moved to the io_pages list.  This prevents
> writebacks from missing any pages that are moved back to the
> dirty list by an SYNC_NONE writeback.  I have not seen this race in
> testing -- just by looking at the code.  It also skips the serialization
> for blockdevs.
> 
> Also this patch changes filemap_fdatawrite() to leave the page on the
> locked_pages list until the i/o has finished.  This prevents
> parallel filemap_fdatawait()s from missing a page that should be
> waited on.  I have not seen this in testing, either.

hm, OK.  I've converted all the down_read_trylock() things into a sinple
down_read(), to address the pdflush-busywait problem which Hugh identified.

This does mean that pdflush can get blocked by ongoing sync activity but
that's probably insignificant and we have per-spindle pdflush collision
avoidance which will help a bit.

Call me lazy, but could you please work out the ranking of wb_rwsem with
respect to the other VFS locks, update the locking documentation in
mm/filemap.c and make sure that we're actually adhering to it?  Thanks.


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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-25  1:22     ` john stultz
  2004-02-25  1:27       ` john stultz
@ 2004-02-25  1:48       ` Andrew Morton
  2004-02-25 22:15         ` john stultz
  1 sibling, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-25  1:48 UTC (permalink / raw)
  To: john stultz; +Cc: linux-kernel

john stultz <johnstul@us.ibm.com> wrote:
>
> > Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> > initcall_debug to the boot command just so we know we aren't blaming the
> > wrong thing.
> 
> I was suspecting that patch, unfortunately reverting it doesn't seem to
> help.

Bah.  No sysrq-t output?

If you could send me the .config I'll see if I can make it happen on test
box #47.


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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (8 preceding siblings ...)
  2004-02-25  1:15 ` [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch Daniel McNeil
@ 2004-02-25  2:51 ` Mike Fedyk
  2004-02-25  3:09   ` 2.6.3-mm3 Andrew Morton
  2004-02-25 10:47 ` 2.6.3-mm3 sometimes freeze on "sync" Helge Hafting
  2004-02-27 23:34 ` 2.6.3-mm3 john stultz
  11 siblings, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-25  2:51 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/

I have a dual CPU server that won't boot 2.6.3-mm3.  It will however 
boot vanilla 2.6.3.

Right after is says "uncompressing kernel" and "booting" it hangs.

Any patches I should try reverting?  I know it uses aic7xxx, but it 
doesn't even get to that point.  Does ACPI start that early?

model name      : Pentium III (Coppermine)
stepping        : 3
cpu MHz         : 664.913

00:00.0 Host bridge: ServerWorks CNB20LE Host Bridge (rev 05)
00:00.1 Host bridge: ServerWorks CNB20LE Host Bridge (rev 05)
00:02.0 PCI bridge: Intel Corp. 80960RM [i960RM Bridge] (rev 01)
00:08.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 
(rev 08)
00:0e.0 VGA compatible controller: ATI Technologies Inc 3D Rage IIC (rev 7a)
00:0f.0 ISA bridge: ServerWorks OSB4 South Bridge (rev 4f)
00:0f.2 USB Controller: ServerWorks OSB4/CSB5 OHCI USB Controller (rev 04)
01:04.0 SCSI storage controller: Adaptec AHA-2940U2/U2W / 7890/7891 (rev 01)
01:06.0 SCSI storage controller: Adaptec AIC-7880U (rev 02)
02:06.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 
(rev 08)
02:08.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 
(rev 08)

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

* Re: 2.6.3-mm3
  2004-02-25  2:51 ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-25  3:09   ` Andrew Morton
  2004-02-25  3:34     ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-25  3:09 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: linux-kernel

Mike Fedyk <mfedyk@matchmail.com> wrote:
>
>  I have a dual CPU server that won't boot 2.6.3-mm3.  It will however 
>  boot vanilla 2.6.3.
> 
>  Right after is says "uncompressing kernel" and "booting" it hangs.

Please triple-check the .config, then boot with

	earlyprintk=vga

or set up a serial console and boot with

	earlyprintk=serial[,ttySn[,baudrate]]



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

* Re: 2.6.3-mm3
  2004-02-25  3:09   ` 2.6.3-mm3 Andrew Morton
@ 2004-02-25  3:34     ` Mike Fedyk
  0 siblings, 0 replies; 73+ messages in thread
From: Mike Fedyk @ 2004-02-25  3:34 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> Mike Fedyk <mfedyk@matchmail.com> wrote:
> 
>> I have a dual CPU server that won't boot 2.6.3-mm3.  It will however 
>> boot vanilla 2.6.3.
>>
>> Right after is says "uncompressing kernel" and "booting" it hangs.
> 
> 
> Please triple-check the .config, then boot with
> 
> 	earlyprintk=vga
> 
> or set up a serial console and boot with
> 
> 	earlyprintk=serial[,ttySn[,baudrate]]

Brown paper bag time.

I tried booting an Athlon compiled kernel on a PIII. :-/

Mike

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

* Re: 2.6.3-mm3 sometimes freeze on "sync"
  2004-02-25 10:47 ` 2.6.3-mm3 sometimes freeze on "sync" Helge Hafting
@ 2004-02-25  9:39   ` Andrew Morton
  2004-02-26  8:49     ` Helge Hafting
  0 siblings, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-25  9:39 UTC (permalink / raw)
  To: Helge Hafting; +Cc: linux-kernel

Helge Hafting <helgehaf@aitel.hist.no> wrote:
>
> 2.6.3-mm3 (and 2.6.3-mm1) occationally freeze on "sync".

yup. bug.  This should fix.



 mm/page-writeback.c |   28 ++++++++++++----------------
 1 files changed, 12 insertions(+), 16 deletions(-)

diff -puN mm/page-writeback.c~O_DIRECT-vs-buffered-fix-pdflush-hang-fix mm/page-writeback.c
--- 25/mm/page-writeback.c~O_DIRECT-vs-buffered-fix-pdflush-hang-fix	2004-02-24 12:19:55.000000000 -0800
+++ 25-akpm/mm/page-writeback.c	2004-02-24 12:19:55.000000000 -0800
@@ -483,30 +483,26 @@ void __init page_writeback_init(void)
 int do_writepages(struct address_space *mapping, struct writeback_control *wbc)
 {
 	int ret;
-	if (wbc->sync_mode == WB_SYNC_NONE) {
-		if (!down_read_trylock(&mapping->wb_rwsema))
-			/*
-			 * SYNC writeback in progress
-			 */
-			return 0;
-	} else {
-		/*
-		 * Only allow 1 SYNC writeback at a time, to be able
-		 * to wait for all i/o without worrying about racing
-		 * WB_SYNC_NONE writers.
-		 */
+
+	/*
+	 * Only allow 1 SYNC writeback at a time, to be able to wait for all
+	 * I/O without worrying about racing WB_SYNC_NONE writers.
+	 */
+	if (wbc->sync_mode == WB_SYNC_NONE)
+		down_read(&mapping->wb_rwsema);
+	else
 		down_write(&mapping->wb_rwsema);
-	}
 
 	if (mapping->a_ops->writepages)
 		ret = mapping->a_ops->writepages(mapping, wbc);
 	else
 		ret = generic_writepages(mapping, wbc);
-	if (wbc->sync_mode == WB_SYNC_NONE) {
+
+	if (wbc->sync_mode == WB_SYNC_NONE)
 		up_read(&mapping->wb_rwsema);
-	} else {
+	else
 		up_write(&mapping->wb_rwsema);
-	}
+
 	return ret;
 }
 

_


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

* Re: 2.6.3-mm3 sometimes freeze on "sync"
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (9 preceding siblings ...)
  2004-02-25  2:51 ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-25 10:47 ` Helge Hafting
  2004-02-25  9:39   ` Andrew Morton
  2004-02-27 23:34 ` 2.6.3-mm3 john stultz
  11 siblings, 1 reply; 73+ messages in thread
From: Helge Hafting @ 2004-02-25 10:47 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

2.6.3-mm3 (and 2.6.3-mm1) occationally freeze on "sync".
They will run fine for several days, but if I do a sync
they might freeze completely and sysrq+B is the only action
that gets any response after that.  The mouse stops, the
x clock stops, and so on.

I only saw this once in mm1, and thought it might be some
glitch.  But it have happened several times with mm3,
so I'm reporting it.  It even hapopened when I ran sync
immediately after boot+login (in X) just to test.

I use the ext2 filesystem on two IDE drives.  The
root fs is ext2 on a RAID-1 on the same two drives.
I also mount nfs, but no nfs was mounted when I did
the "sync after boot+login" test.

This is the IDE controller, from lspci:
00:02.5 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE]
I also have proc, tmpfs, devpts and sysfs mounted.

The machine is single-cpu, the kernel is compiled without
preempt and with register arguments and frame pointer,
using gcc 3.3.3 from debian testing.

There obviously were no logs after this freeze.

Helge Hafting


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

* Re: 2.6.3-mm3
  2004-02-24 22:30   ` 2.6.3-mm3 Andrew Morton
@ 2004-02-25 21:27     ` Mike Fedyk
  2004-02-26  1:06       ` 2.6.3-mm3 Nick Piggin
  0 siblings, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-25 21:27 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> Mike Fedyk <mfedyk@matchmail.com> wrote:
> 
>>Andrew Morton wrote:
>>
>>>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.3/2.6.3-mm3/
>>
>>Hi,
>>
>>I have 2.6.3 on the 1.5GB RAM server that started the "large slab" thread.
>>
>>Which patches should I apply from -mm to test for improvements?
> 
> 
> Just apply the mm3 rollup patch.

I ended up having to do that. :-/

> 
> 
>>Do these below have any dependencies not listed?
> 
> 
> Probably not.  If they apply ten they'll work.
> 

They won't apply in the order as listed in the -mm3 series file. :(

> 
>>What about Nick's fix up patch for the two patches above?  Should I 
>>include that one also?

I'm running 2.6.3-mm3-486-fazok (nick's patch), and it has improved my 
slab usage greatly.  It was averaging 500MB-700MB slab.  Now slab is 
~230MB, and page cache is ~700MB

See:
http://www.matchmail.com/stats/lrrd/matchmail.com/srv-lnx2600.matchmail.com-memory.html

Is there any way I can get the VM patches against 2.6.3?  I'm not 
comfortable with running -mm3 on this production server, especially 
seeing the "sync hang" bug.

Thanks,

Mike

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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-25  1:48       ` Andrew Morton
@ 2004-02-25 22:15         ` john stultz
  0 siblings, 0 replies; 73+ messages in thread
From: john stultz @ 2004-02-25 22:15 UTC (permalink / raw)
  To: Andrew Morton; +Cc: lkml

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

On Tue, 2004-02-24 at 17:48, Andrew Morton wrote:
> john stultz <johnstul@us.ibm.com> wrote:
> >
> > > Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> > > initcall_debug to the boot command just so we know we aren't blaming the
> > > wrong thing.
> > 
> > I was suspecting that patch, unfortunately reverting it doesn't seem to
> > help.
> 
> Bah.  No sysrq-t output?

alt-sysreq didn't seem to work, but the keyboard seemed dead (no
numlock,etc). Might be the KVM switch causing trouble, though. 

> If you could send me the .config I'll see if I can make it happen on test
> box #47.

Here's the .config again.

thanks
-john



[-- Attachment #2: config.mm1-broke --]
[-- Type: text/plain, Size: 21611 bytes --]

#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y

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

#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=17
# 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 is not set

#
# Processor type and features
#
# CONFIG_X86_PC is not set
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
CONFIG_X86_SUMMIT=y
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
CONFIG_ACPI_SRAT=y
CONFIG_X86_SUMMIT_NUMA=y
CONFIG_X86_CYCLONE_TIMER=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
CONFIG_MPENTIUM4=y
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
# CONFIG_X86_4G is not set
# CONFIG_X86_SWITCH_PAGETABLES is not set
# CONFIG_X86_4G_VM_LAYOUT is not set
# CONFIG_X86_UACCESS_INDIRECT is not set
# CONFIG_X86_HIGH_ENTRY is not set
# CONFIG_HPET_TIMER is not set
# CONFIG_HPET_EMULATE_RTC is not set
CONFIG_SMP=y
CONFIG_NR_CPUS=32
# CONFIG_SCHED_SMT is not set
CONFIG_PREEMPT=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
# CONFIG_X86_MCE is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
# CONFIG_EDD is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_X86_PAE=y
CONFIG_NUMA=y
CONFIG_DISCONTIGMEM=y
CONFIG_HAVE_ARCH_BOOTMEM_NODE=y
# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
CONFIG_IRQBALANCE=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_BOOT_IOREMAP=y
# CONFIG_REGPARM is not set

#
# Power management options (ACPI, APM)
#
# CONFIG_PM is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_THERMAL is not set
CONFIG_ACPI_ASUS=y
CONFIG_ACPI_TOSHIBA=y
# 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
# CONFIG_ACPI_RELAXED_AML is not set
# CONFIG_X86_PM_TIMER is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

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

#
# PCMCIA/CardBus support
#
# CONFIG_PCMCIA is not set
CONFIG_PCMCIA_PROBE=y

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
# CONFIG_BINFMT_MISC is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
# CONFIG_FW_LOADER is not set

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

#
# Parallel port support
#
# CONFIG_PARPORT is not set

#
# Plug and Play support
#
# CONFIG_PNP is not set

#
# Block devices
#
CONFIG_BLK_DEV_FD=y
# CONFIG_BLK_DEV_XD 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 is not set
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
# CONFIG_LBD is not set

#
# 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 is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
CONFIG_BLK_DEV_IDEFLOPPY=y
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_TASKFILE_IO=y

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_CMD640=y
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
# 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=y
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=y
CONFIG_BLK_DEV_ALI15X3=y
# CONFIG_WDC_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
CONFIG_BLK_DEV_CMD64X=y
# CONFIG_BLK_DEV_TRIFLEX is not set
CONFIG_BLK_DEV_CY82C693=y
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# 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=y
# CONFIG_BLK_DEV_SIIMAGE is not set
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_IDE_CHIPSETS is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_DMA_NONPCI is not set
# 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_MAX_SD_DISKS=256
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
# 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=y
CONFIG_SCSI_LOGGING=y

#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_7000FASST is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AHA152X is not set
# CONFIG_SCSI_AHA1542 is not set
# CONFIG_SCSI_AHA1740 is not set
# CONFIG_SCSI_AACRAID is not set
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
# CONFIG_AIC7XXX_PROBE_EISA_VL is not set
# CONFIG_AIC7XXX_BUILD_FIRMWARE is not set
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_IN2000 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_DTC3280 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_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
CONFIG_SCSI_IPS=y
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_NCR53C406A is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS 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_SIM710 is not set
# CONFIG_SCSI_SYM53C416 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set

#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set

#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set

#
# Fusion MPT device support
#
CONFIG_FUSION=y
CONFIG_FUSION_BOOT=y
CONFIG_FUSION_MAX_SGE=40

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

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Macintosh device drivers
#

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_NETLINK_DEV=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_INET_ECN=y
CONFIG_SYN_COOKIES=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set

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

#
# IP: Netfilter Configuration
#
# CONFIG_IP_NF_CONNTRACK is not set
# CONFIG_IP_NF_QUEUE is not set
# CONFIG_IP_NF_IPTABLES is not set
CONFIG_IP_NF_NAT_NEEDED=y
# CONFIG_IP_NF_ARPTABLES is not set
CONFIG_IP_NF_COMPAT_IPCHAINS=y

#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IPV6_SCTP__=y
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q 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=y
# CONFIG_NET_SCH_HTB is not set
# CONFIG_NET_SCH_HFSC is not set
CONFIG_NET_SCH_CSZ=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=y
CONFIG_NET_CLS_ROUTE4=y
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=y
CONFIG_NET_CLS_U32=y
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
CONFIG_NET_CLS_POLICE=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y

#
# ARCnet devices
#
# CONFIG_ARCNET is not set
CONFIG_DUMMY=y
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set

#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not set
# CONFIG_NET_ISA is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
CONFIG_ADAPTEC_STARFIRE=y
# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
# CONFIG_AC3200 is not set
# CONFIG_APRICOT is not set
CONFIG_B44=y
# CONFIG_FORCEDETH is not set
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
CONFIG_EEPRO100=y
# CONFIG_EEPRO100_PIO is not set
# CONFIG_E100 is not set
# CONFIG_LNE390 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_NE3210 is not set
# CONFIG_ES3210 is not set
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_TLAN is not set
# CONFIG_VIA_RHINE is not set
# CONFIG_NET_POCKET 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_SIS190 is not set
# CONFIG_SK98LIN is not set
CONFIG_TIGON3=y

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set

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

#
# Token Ring devices
#
# CONFIG_TR is not set
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set

#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set

#
# IrDA (infrared) support
#
# CONFIG_IRDA is not set

#
# Bluetooth support
#
# CONFIG_BT 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

#
# 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=y
# 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_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_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
# CONFIG_MOUSE_PC110PAD 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 is not set
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
# CONFIG_SERIAL_8250_MANY_PORTS is not set
# CONFIG_SERIAL_8250_SHARE_IRQ is not set
# 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_QIC02_TAPE is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

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

#
# Ftape, the floppy tape device driver
#
CONFIG_AGP=y
CONFIG_AGP_ALI=y
# CONFIG_AGP_ATI is not set
CONFIG_AGP_AMD=y
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=y
# CONFIG_AGP_NVIDIA is not set
CONFIG_AGP_SIS=y
CONFIG_AGP_SWORKS=y
CONFIG_AGP_VIA=y
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HANGCHECK_TIMER is not set

#
# I2C support
#
# CONFIG_I2C 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

#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
# 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 is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
# CONFIG_QFMT_V2 is not set
CONFIG_QUOTACTL=y
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
# CONFIG_ZISOFS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
# CONFIG_MSDOS_FS is not set
CONFIG_VFAT_FS=y
# 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 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_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

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

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

#
# Native Language Support
#
CONFIG_NLS=y
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=y
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 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=y
CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_IOVIRT is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_SPINLINE is not set
# CONFIG_DEBUG_HIGHMEM is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_LOCKMETER is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_KGDB is not set
# CONFIG_FRAME_POINTER is not set
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y

#
# Security options
#
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Library routines
#
CONFIG_CRC32=y
CONFIG_X86_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y
CONFIG_PC=y

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

* Re: [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch
  2004-02-25  1:43   ` Andrew Morton
@ 2004-02-25 22:56     ` Daniel McNeil
  0 siblings, 0 replies; 73+ messages in thread
From: Daniel McNeil @ 2004-02-25 22:56 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Linux Kernel Mailing List, linux-aio

On Tue, 2004-02-24 at 17:43, Andrew Morton wrote:

> 
> hm, OK.  I've converted all the down_read_trylock() things into a sinple
> down_read(), to address the pdflush-busywait problem which Hugh identified.
> 

The other thing we could do is add a wbc->encountered_congestion = 1
if the down_read_trylock() fails and then check for that to prevent
the busywait problem.    

> This does mean that pdflush can get blocked by ongoing sync activity but
> that's probably insignificant and we have per-spindle pdflush collision
> avoidance which will help a bit.
> 
> Call me lazy, but could you please work out the ranking of wb_rwsem with
> respect to the other VFS locks, update the locking documentation in
> mm/filemap.c and make sure that we're actually adhering to it?  Thanks.

Ok. I'm looking at this.

Daniel


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

* Re: 2.6.3-mm3
  2004-02-25 21:27     ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-26  1:06       ` Nick Piggin
  2004-02-26  1:18         ` 2.6.3-mm3 Marc-Christian Petersen
  2004-02-26  1:32         ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 2 replies; 73+ messages in thread
From: Nick Piggin @ 2004-02-26  1:06 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Andrew Morton, linux-kernel



Mike Fedyk wrote:

>>
>>> What about Nick's fix up patch for the two patches above?  Should I 
>>> include that one also?
>>
>
> I'm running 2.6.3-mm3-486-fazok (nick's patch), and it has improved my 
> slab usage greatly.  It was averaging 500MB-700MB slab.  Now slab is 
> ~230MB, and page cache is ~700MB
>

That is a much better sounding ratio. Of course that doesn't mean much
if performance is worse. Slab might be getting reclaimed a little bit
too hard vs pagecache now.

> See:
> http://www.matchmail.com/stats/lrrd/matchmail.com/srv-lnx2600.matchmail.com-memory.html 
>
>
> Is there any way I can get the VM patches against 2.6.3?  I'm not 
> comfortable with running -mm3 on this production server, especially 
> seeing the "sync hang" bug.
>

Well your server wasn't going too badly with 2.6.3, wasn't it? Might
as well just wait for them to get into the the tree.


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

* Re: 2.6.3-mm3
  2004-02-26  1:06       ` 2.6.3-mm3 Nick Piggin
@ 2004-02-26  1:18         ` Marc-Christian Petersen
  2004-02-26  1:28           ` 2.6.3-mm3 Mike Fedyk
  2004-02-26  1:32         ` 2.6.3-mm3 Mike Fedyk
  1 sibling, 1 reply; 73+ messages in thread
From: Marc-Christian Petersen @ 2004-02-26  1:18 UTC (permalink / raw)
  To: linux-kernel; +Cc: Nick Piggin, Mike Fedyk, Andrew Morton

On Thursday 26 February 2004 02:06, Nick Piggin wrote:

Hi,

> >>> What about Nick's fix up patch for the two patches above?  Should I
> >>> include that one also?
> > I'm running 2.6.3-mm3-486-fazok (nick's patch), and it has improved my
> > slab usage greatly.  It was averaging 500MB-700MB slab.  Now slab is
> > ~230MB, and page cache is ~700MB
> That is a much better sounding ratio. Of course that doesn't mean much
> if performance is worse. Slab might be getting reclaimed a little bit
> too hard vs pagecache now.

sorry for not following this thread, but where do I find the mm3 rollup patch 
this thread is talking about? akpm's directory does not contain it, or I am 
blind b/c it isn't named like that or similar ;>

ciao, Marc

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

* Re: 2.6.3-mm3
  2004-02-26  1:18         ` 2.6.3-mm3 Marc-Christian Petersen
@ 2004-02-26  1:28           ` Mike Fedyk
  0 siblings, 0 replies; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  1:28 UTC (permalink / raw)
  To: Marc-Christian Petersen; +Cc: linux-kernel, Nick Piggin, Andrew Morton

Marc-Christian Petersen wrote:
> On Thursday 26 February 2004 02:06, Nick Piggin wrote:
> 
> Hi,
> 
> 
>>>>>What about Nick's fix up patch for the two patches above?  Should I
>>>>>include that one also?
>>>
>>>I'm running 2.6.3-mm3-486-fazok (nick's patch), and it has improved my
>>>slab usage greatly.  It was averaging 500MB-700MB slab.  Now slab is
>>>~230MB, and page cache is ~700MB
>>
>>That is a much better sounding ratio. Of course that doesn't mean much
>>if performance is worse. Slab might be getting reclaimed a little bit
>>too hard vs pagecache now.
> 
> 
> sorry for not following this thread, but where do I find the mm3 rollup patch 
> this thread is talking about? akpm's directory does not contain it, or I am 
> blind b/c it isn't named like that or similar ;>

It's just the regular ~2MB bz2 file you normally get (ie, it's not 
"split-out" like in the directory where all patches are seperate...)

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

* Re: 2.6.3-mm3
  2004-02-26  1:06       ` 2.6.3-mm3 Nick Piggin
  2004-02-26  1:18         ` 2.6.3-mm3 Marc-Christian Petersen
@ 2004-02-26  1:32         ` Mike Fedyk
  2004-02-26  1:52           ` 2.6.3-mm3 Nick Piggin
  1 sibling, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  1:32 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

Nick Piggin wrote:
> 
> 
> Mike Fedyk wrote:
> 
>>>
>>>> What about Nick's fix up patch for the two patches above?  Should I 
>>>> include that one also?
>>>
>>>
>>
>> I'm running 2.6.3-mm3-486-fazok (nick's patch), and it has improved my 
>> slab usage greatly.  It was averaging 500MB-700MB slab.  Now slab is 
>> ~230MB, and page cache is ~700MB
>>
> 
> That is a much better sounding ratio. Of course that doesn't mean much
> if performance is worse. Slab might be getting reclaimed a little bit
> too hard vs pagecache now.
> 

I'll let you know.  My graphs are looking better, except for one 
instance of Xvnc (for one user -- I'm still tracking that one down) 
hitting a memory grabbing loop that made me kill it.

>> See:
>> http://www.matchmail.com/stats/lrrd/matchmail.com/srv-lnx2600.matchmail.com-memory.html 
>>
>>
>> Is there any way I can get the VM patches against 2.6.3?  I'm not 
>> comfortable with running -mm3 on this production server, especially 
>> seeing the "sync hang" bug.
>>
> 
> Well your server wasn't going too badly with 2.6.3, wasn't it? Might
> as well just wait for them to get into the the tree.

I might as well take out the third 512MB DIMM in that machine then...

Any chance you could post a VM patch roll-up against 2.6.3 for little 
ole me?

Mike

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

* Re: 2.6.3-mm3
  2004-02-26  1:32         ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-26  1:52           ` Nick Piggin
  2004-02-26  2:34             ` 2.6.3-mm3 Mike Fedyk
  2004-02-26  4:56             ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 2 replies; 73+ messages in thread
From: Nick Piggin @ 2004-02-26  1:52 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Andrew Morton, linux-kernel



Mike Fedyk wrote:

> Nick Piggin wrote:
>
>>
>>
>> That is a much better sounding ratio. Of course that doesn't mean much
>> if performance is worse. Slab might be getting reclaimed a little bit
>> too hard vs pagecache now.
>>
>
> I'll let you know.  My graphs are looking better, except for one 
> instance of Xvnc (for one user -- I'm still tracking that one down) 
> hitting a memory grabbing loop that made me kill it.
>

Try to get /proc/meminfo and a sysrq + T trace if something like
this happens.

>>> See:
>>> http://www.matchmail.com/stats/lrrd/matchmail.com/srv-lnx2600.matchmail.com-memory.html 
>>>
>>>
>>> Is there any way I can get the VM patches against 2.6.3?  I'm not 
>>> comfortable with running -mm3 on this production server, especially 
>>> seeing the "sync hang" bug.
>>>
>>
>> Well your server wasn't going too badly with 2.6.3, wasn't it? Might
>> as well just wait for them to get into the the tree.
>
>
> I might as well take out the third 512MB DIMM in that machine then...
>
> Any chance you could post a VM patch roll-up against 2.6.3 for little 
> ole me?
>

It is a bit easier said than done as you might have seen :P And
I'm laz^W^W I happen to not agree with one of Andrew's patches,
so it would go against all my principles ;)

IMO, shrink_slab-for-all-zones.patch and zone-balancing-fix.patch
should be all you need although they won't shrink the slab as
much as mm3. They should be pretty easy to port by hand.


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

* Re: 2.6.3-mm3
  2004-02-26  1:52           ` 2.6.3-mm3 Nick Piggin
@ 2004-02-26  2:34             ` Mike Fedyk
  2004-02-26  2:40               ` 2.6.3-mm3 Nick Piggin
  2004-02-26  4:56             ` 2.6.3-mm3 Mike Fedyk
  1 sibling, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  2:34 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

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

Nick Piggin wrote:
> 
> 
> Mike Fedyk wrote:
> 
>> Nick Piggin wrote:
>>
>>>
>>>
>>> That is a much better sounding ratio. Of course that doesn't mean much
>>> if performance is worse. Slab might be getting reclaimed a little bit
>>> too hard vs pagecache now.
>>>
>>
>> I'll let you know.  My graphs are looking better, except for one 
>> instance of Xvnc (for one user -- I'm still tracking that one down) 
>> hitting a memory grabbing loop that made me kill it.
>>
> 
> Try to get /proc/meminfo and a sysrq + T trace if something like
> this happens.

I'll do that next time.

When did /proc/sysrq-trigger get in the kernel?  forgot about that at 
the time :(

> 
>>>> See:
>>>> http://www.matchmail.com/stats/lrrd/matchmail.com/srv-lnx2600.matchmail.com-memory.html 
>>>>
>>>>
>>>> Is there any way I can get the VM patches against 2.6.3?  I'm not 
>>>> comfortable with running -mm3 on this production server, especially 
>>>> seeing the "sync hang" bug.
>>>>
>>>
>>> Well your server wasn't going too badly with 2.6.3, wasn't it? Might
>>> as well just wait for them to get into the the tree.
>>
>>
>>
>> I might as well take out the third 512MB DIMM in that machine then...
>>
>> Any chance you could post a VM patch roll-up against 2.6.3 for little 
>> ole me?
>>
> 
> It is a bit easier said than done as you might have seen :P And
> I'm laz^W^W I happen to not agree with one of Andrew's patches,
> so it would go against all my principles ;)
> 
> IMO, shrink_slab-for-all-zones.patch and zone-balancing-fix.patch
> should be all you need although they won't shrink the slab as
> much as mm3. They should be pretty easy to port by hand.

OK, I'll give that a try.

Is the attached patch the latest version of your alternative patch 
instead of shrink_slab-for-all-zones.patch?

[-- Attachment #2: vm-shrink-slab-lowmem.patch --]
[-- Type: text/x-patch, Size: 5212 bytes --]

 linux-2.6-npiggin/include/linux/mm.h |    2 -
 linux-2.6-npiggin/mm/page_alloc.c    |   11 ------
 linux-2.6-npiggin/mm/vmscan.c        |   64 ++++++++++++++++++++++++++++-------
 3 files changed, 52 insertions(+), 25 deletions(-)

diff -puN mm/vmscan.c~vm-shrink-slab-lowmem mm/vmscan.c
--- linux-2.6/mm/vmscan.c~vm-shrink-slab-lowmem	2004-02-22 16:35:06.000000000 +1100
+++ linux-2.6-npiggin/mm/vmscan.c	2004-02-22 17:30:53.000000000 +1100
@@ -122,7 +122,25 @@ void remove_shrinker(struct shrinker *sh
 }
 
 EXPORT_SYMBOL(remove_shrinker);
- 
+
+/*
+ * Returns the number of lowmem pages which are on the lru lists
+ */
+static unsigned int nr_lowmem_lru_pages(void)
+{
+	unsigned int pages = 0;
+	struct zone *zone;
+
+	for_each_zone(zone) {
+		if (unlikely(is_highmem(zone)))
+			continue;
+		pages += zone->nr_active + zone->nr_inactive;
+	}
+
+	return pages;
+}
+
+
 #define SHRINK_BATCH 128
 /*
  * Call the shrink functions to age shrinkable caches
@@ -136,6 +154,24 @@ EXPORT_SYMBOL(remove_shrinker);
  * slab to avoid swapping.
  *
  * We do weird things to avoid (scanned*seeks*entries) overflowing 32 bits.
+ *
+ * The formula to work out how much to scan each slab is as follows:
+ * Let S be the number of lowmem LRU pages were scanned (scanned)
+ * Let M be the total number of lowmem LRU pages (pages)
+ * T be the total number of all slab items.
+ * For each slab:
+ * I be number of slab items ((*shrinker->shrinker)(0, gfp_mask))
+ *
+ * "S * M / T" then gives the total number of slab items to scan, N
+ * Then for each slab, "N * T / I" is the number of items to scan for this slab.
+ *
+ * This simplifies to  "S * M / I", or
+ * lowmem lru scanned * items in this slab / total lowmem lru pages
+ *
+ * TODO:
+ * The value of M should be calculated *before* LRU scanning.
+ * Total number of items in each slab should be used, not just freeable ones.
+ * Unfreeable slab items should not count toward the scanning total.
  */
 static int shrink_slab(unsigned long scanned, unsigned int gfp_mask)
 {
@@ -145,14 +181,16 @@ static int shrink_slab(unsigned long sca
 	if (down_trylock(&shrinker_sem))
 		return 0;
 
-	pages = nr_used_zone_pages();
+	pages = nr_lowmem_lru_pages();
 	list_for_each_entry(shrinker, &shrinker_list, list) {
 		unsigned long long delta;
 
 		delta = 4 * scanned / shrinker->seeks;
 		delta *= (*shrinker->shrinker)(0, gfp_mask);
 		do_div(delta, pages + 1);
-		shrinker->nr += delta;
+
+		/* +1 to ensure some scanning gets done */
+		shrinker->nr += delta + 1;
 		if (shrinker->nr > SHRINK_BATCH) {
 			long nr_to_scan = shrinker->nr;
 
@@ -857,7 +895,8 @@ shrink_zone(struct zone *zone, unsigned 
  */
 static int
 shrink_caches(struct zone **zones, int priority, int *total_scanned,
-		int gfp_mask, int nr_pages, struct page_state *ps)
+		int *lowmem_scanned, int gfp_mask, int nr_pages,
+		struct page_state *ps)
 {
 	int ret = 0;
 	int i;
@@ -875,7 +914,10 @@ shrink_caches(struct zone **zones, int p
 
 		ret += shrink_zone(zone, gfp_mask,
 				to_reclaim, &nr_scanned, ps, priority);
+
 		*total_scanned += nr_scanned;
+		if (i < ZONE_HIGHMEM)
+			*lowmem_scanned += nr_scanned;
 		if (ret >= nr_pages)
 			break;
 	}
@@ -915,19 +957,17 @@ int try_to_free_pages(struct zone **zone
 		zones[i]->temp_priority = DEF_PRIORITY;
 
 	for (priority = DEF_PRIORITY; priority >= 0; priority--) {
-		int total_scanned = 0;
+		int total_scanned = 0, lowmem_scanned = 0;
 		struct page_state ps;
 
 		get_page_state(&ps);
 		nr_reclaimed += shrink_caches(zones, priority, &total_scanned,
-						gfp_mask, nr_pages, &ps);
+				&lowmem_scanned, gfp_mask, nr_pages, &ps);
 
-		if (zones[0] - zones[0]->zone_pgdat->node_zones < ZONE_HIGHMEM) {
-			shrink_slab(total_scanned, gfp_mask);
-			if (reclaim_state) {
-				nr_reclaimed += reclaim_state->reclaimed_slab;
-				reclaim_state->reclaimed_slab = 0;
-			}
+		shrink_slab(lowmem_scanned, gfp_mask);
+		if (reclaim_state) {
+			nr_reclaimed += reclaim_state->reclaimed_slab;
+			reclaim_state->reclaimed_slab = 0;
 		}
 
 		if (nr_reclaimed >= nr_pages) {
diff -puN mm/page_alloc.c~vm-shrink-slab-lowmem mm/page_alloc.c
--- linux-2.6/mm/page_alloc.c~vm-shrink-slab-lowmem	2004-02-22 16:35:06.000000000 +1100
+++ linux-2.6-npiggin/mm/page_alloc.c	2004-02-22 17:04:43.000000000 +1100
@@ -772,17 +772,6 @@ unsigned int nr_free_pages(void)
 
 EXPORT_SYMBOL(nr_free_pages);
 
-unsigned int nr_used_zone_pages(void)
-{
-	unsigned int pages = 0;
-	struct zone *zone;
-
-	for_each_zone(zone)
-		pages += zone->nr_active + zone->nr_inactive;
-
-	return pages;
-}
-
 #ifdef CONFIG_NUMA
 unsigned int nr_free_pages_pgdat(pg_data_t *pgdat)
 {
diff -puN include/linux/mm.h~vm-shrink-slab-lowmem include/linux/mm.h
--- linux-2.6/include/linux/mm.h~vm-shrink-slab-lowmem	2004-02-22 16:35:06.000000000 +1100
+++ linux-2.6-npiggin/include/linux/mm.h	2004-02-22 17:04:26.000000000 +1100
@@ -625,8 +625,6 @@ static inline struct vm_area_struct * fi
 
 extern struct vm_area_struct *find_extend_vma(struct mm_struct *mm, unsigned long addr);
 
-extern unsigned int nr_used_zone_pages(void);
-
 extern struct page * vmalloc_to_page(void *addr);
 extern struct page * follow_page(struct mm_struct *mm, unsigned long address,
 		int write);

_

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

* Re: 2.6.3-mm3
  2004-02-26  2:34             ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-26  2:40               ` Nick Piggin
  2004-02-26  2:48                 ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-26  2:40 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Andrew Morton, linux-kernel



Mike Fedyk wrote:

>
> OK, I'll give that a try.
>
> Is the attached patch the latest version of your alternative patch 
> instead of shrink_slab-for-all-zones.patch?
>

Yes that looks like it. I am actually starting to like this patch
again now that lowmem is being properly scanned as a result of
highmem scanning.

But it should be functionally very similar to just scanning slab
on highmem pressure like -mm3 does.


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

* Re: 2.6.3-mm3
  2004-02-26  2:40               ` 2.6.3-mm3 Nick Piggin
@ 2004-02-26  2:48                 ` Mike Fedyk
  2004-02-26  3:05                   ` 2.6.3-mm3 Nick Piggin
  0 siblings, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  2:48 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

Nick Piggin wrote:
> 
> 
> Mike Fedyk wrote:
> 
>>
>> OK, I'll give that a try.
>>
>> Is the attached patch the latest version of your alternative patch 
>> instead of shrink_slab-for-all-zones.patch?
>>
> 
> Yes that looks like it. I am actually starting to like this patch
> again 

Didn't you like what you wrote in the first place ;)

> now that lowmem is being properly scanned as a result of
> highmem scanning.

That's what zone-balancing-fix.patch does, right?

Mike

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

* Re: 2.6.3-mm3
  2004-02-26  2:48                 ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-26  3:05                   ` Nick Piggin
  2004-02-26  3:19                     ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-26  3:05 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Andrew Morton, linux-kernel



Mike Fedyk wrote:

> Nick Piggin wrote:
>
>>
>>
>> Mike Fedyk wrote:
>>
>>>
>>> OK, I'll give that a try.
>>>
>>> Is the attached patch the latest version of your alternative patch 
>>> instead of shrink_slab-for-all-zones.patch?
>>>
>>
>> Yes that looks like it. I am actually starting to like this patch
>> again 
>
>
> Didn't you like what you wrote in the first place ;)
>

Hmm well no, it still reclaims slab too hard. I just forgot
why I didn't like it :P

>> now that lowmem is being properly scanned as a result of
>> highmem scanning.
>
>
> That's what zone-balancing-fix.patch does, right?
>

Yes... but actually the kswapd path needs something similar.
That would be the batching patch, but with a scanning value
derived from the current size of the zone's lrus.

I'd just stick with 2.6.3 for now :)


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

* Re: 2.6.3-mm3
  2004-02-26  3:05                   ` 2.6.3-mm3 Nick Piggin
@ 2004-02-26  3:19                     ` Mike Fedyk
  2004-02-26  3:29                       ` 2.6.3-mm3 Nick Piggin
  0 siblings, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  3:19 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

Nick Piggin wrote:
> 
> 
> Mike Fedyk wrote:
> 
>> Nick Piggin wrote:
>>
>>>
>>>
>>> Mike Fedyk wrote:
>>>
>>>>
>>>> OK, I'll give that a try.
>>>>
>>>> Is the attached patch the latest version of your alternative patch 
>>>> instead of shrink_slab-for-all-zones.patch?
>>>>
>>>
>>> Yes that looks like it. I am actually starting to like this patch
>>> again 
>>
>>
>>
>> Didn't you like what you wrote in the first place ;)
>>
> 
> Hmm well no, it still reclaims slab too hard. I just forgot
> why I didn't like it :P

So, you think vm-shrink-slab-lowmem.patch shrinks slab too much, or 
Andrew's patch (IIRC, those comments were for Andrew's patch...)?

> 
>>> now that lowmem is being properly scanned as a result of
>>> highmem scanning.
>>
>>
>>
>> That's what zone-balancing-fix.patch does, right?
>>
> 
> Yes... but actually the kswapd path needs something similar.
> That would be the batching patch, but with a scanning value
> derived from the current size of the zone's lrus.
> 
> I'd just stick with 2.6.3 for now :)

Hmm, do you think I'd get more slab shrinking with 2.6.3 + 
zone-balancing-fix.patch?

Mike

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

* Re: 2.6.3-mm3
  2004-02-26  3:19                     ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-26  3:29                       ` Nick Piggin
  2004-02-26  4:08                         ` 2.6.3-mm3 Mike Fedyk
  0 siblings, 1 reply; 73+ messages in thread
From: Nick Piggin @ 2004-02-26  3:29 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Andrew Morton, linux-kernel



Mike Fedyk wrote:

>
> So, you think vm-shrink-slab-lowmem.patch shrinks slab too much, or 
> Andrew's patch (IIRC, those comments were for Andrew's patch...)?
>

Mine does.

>
> Hmm, do you think I'd get more slab shrinking with 2.6.3 + 
> zone-balancing-fix.patch?
>


Not really because you shouldn't be hitting the direct reclaim
path. shrink_slab-for-all-zones.patch will help more though.

Nick


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

* Re: 2.6.3-mm3
  2004-02-26  3:29                       ` 2.6.3-mm3 Nick Piggin
@ 2004-02-26  4:08                         ` Mike Fedyk
  0 siblings, 0 replies; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  4:08 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

Nick Piggin wrote:
> 
> 
> Mike Fedyk wrote:
> 
>>
>> So, you think vm-shrink-slab-lowmem.patch shrinks slab too much, or 
>> Andrew's patch (IIRC, those comments were for Andrew's patch...)?
>>
> 
> Mine does.
> 

Won't Andrew's patch scan/shrink the slab more if there is more highmem 
than lowmem?

>>
>> Hmm, do you think I'd get more slab shrinking with 2.6.3 + 
>> zone-balancing-fix.patch?
>>
> 
> 
> Not really because you shouldn't be hitting the direct reclaim
> path. shrink_slab-for-all-zones.patch will help more though.

Sorry, I meant "shrink slab more than 2.6.3 with 2.6.3 + 
zone-balancing-fix.patch".

Since the zones are more balanced, there should be more lowmem scanning 
going on...

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

* Re: 2.6.3-mm3
  2004-02-26  1:52           ` 2.6.3-mm3 Nick Piggin
  2004-02-26  2:34             ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-26  4:56             ` Mike Fedyk
  2004-02-27 19:02               ` 2.6.3-mm3 Mike Fedyk
  1 sibling, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-26  4:56 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Andrew Morton, linux-kernel

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

Nick Piggin wrote:
> IMO, shrink_slab-for-all-zones.patch and zone-balancing-fix.patch
> should be all you need although they won't shrink the slab as
> much as mm3. They should be pretty easy to port by hand.

How does this patch for 2.6.3 look?


[-- Attachment #2: 2.6.3-shrink_slab-for-all-zones.patch --]
[-- Type: text/x-patch, Size: 1275 bytes --]

--- linux-2.6.3/mm/vmscan.c	2004-02-25 20:50:35.000000000 -0800
+++ linux-2.6.3-slab-lofft/mm/vmscan.c	2004-02-25 20:41:45.000000000 -0800
@@ -885,12 +885,10 @@
 
 		/* Take a nap, wait for some writeback to complete */
 		blk_congestion_wait(WRITE, HZ/10);
-		if (zones[0] - zones[0]->zone_pgdat->node_zones < ZONE_HIGHMEM) {
-			shrink_slab(total_scanned, gfp_mask);
-			if (reclaim_state) {
-				nr_reclaimed += reclaim_state->reclaimed_slab;
-				reclaim_state->reclaimed_slab = 0;
-			}
+		shrink_slab(total_scanned, gfp_mask);
+		if (reclaim_state) {
+			nr_reclaimed += reclaim_state->reclaimed_slab;
+			reclaim_state->reclaimed_slab = 0;
 		}
 	}
 	if ((gfp_mask & __GFP_FS) && !(gfp_mask & __GFP_NORETRY))
@@ -962,11 +960,9 @@
 				max_scan = SWAP_CLUSTER_MAX;
 			to_free -= shrink_zone(zone, max_scan, GFP_KERNEL,
 					to_reclaim, &nr_mapped, ps, priority);
-			if (i < ZONE_HIGHMEM) {
-				reclaim_state->reclaimed_slab = 0;
-				shrink_slab(max_scan + nr_mapped, GFP_KERNEL);
-				to_free -= reclaim_state->reclaimed_slab;
-			}
+			reclaim_state->reclaimed_slab = 0;
+			shrink_slab(nr_scanned, GFP_KERNEL);
+			reclaimed += reclaim_state->reclaimed_slab;
 			if (zone->all_unreclaimable)
 				continue;
 			if (zone->pages_scanned > zone->present_pages * 2)

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

* Re: 2.6.3-mm3 sometimes freeze on "sync"
  2004-02-25  9:39   ` Andrew Morton
@ 2004-02-26  8:49     ` Helge Hafting
  2004-02-27 14:49       ` Alexander Hoogerhuis
  0 siblings, 1 reply; 73+ messages in thread
From: Helge Hafting @ 2004-02-26  8:49 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Andrew Morton wrote:
> Helge Hafting <helgehaf@aitel.hist.no> wrote:
> 
>>2.6.3-mm3 (and 2.6.3-mm1) occationally freeze on "sync".
> 
> 
> yup. bug.  This should fix.

This seems to work for me.  I've booted 2.6.3-mm3 with this
patch.  I ran some syncs, then forced the machine to
swap with a big tar and ran some more syncs.  It works.

Is it also in mm4?

Helge Hafting


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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-25  1:06   ` Andrew Morton
  2004-02-25  1:22     ` john stultz
@ 2004-02-26 14:40     ` Go Taniguchi
  2004-02-26 21:26       ` john stultz
  1 sibling, 1 reply; 73+ messages in thread
From: Go Taniguchi @ 2004-02-26 14:40 UTC (permalink / raw)
  To: Andrew Morton; +Cc: john stultz, linux-kernel

Hi,

Andrew Morton wrote:
> john stultz <johnstul@us.ibm.com> wrote:
> 
>>	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
>>the following:
>> 
>>scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
>>        <Adaptec aic7899 Ultra160 SCSI adapter>                 
>>        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
>>                                                                
>>
>>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
>>there as well. 
> 
> 
> Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> initcall_debug to the boot command just so we know we aren't blaming the
> wrong thing.
> 
> Apart from that, gosh.  Maybe you could add just linus.patch and
> bk-scsi.patch, see if that hangs too?  Or just test the latest linus tree -
> the scsi changes were merged this morning.  Thanks.
> 

Problem patch is expanded-pci-config-space.patch.
x440 can not enable acpi by dmi_scan.
expanded-pci-config-space.patch need acpi support.
So, kernel can not get x440's xAPIC interrupt.



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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-26 14:40     ` Go Taniguchi
@ 2004-02-26 21:26       ` john stultz
  2004-02-26 23:02         ` john stultz
  0 siblings, 1 reply; 73+ messages in thread
From: john stultz @ 2004-02-26 21:26 UTC (permalink / raw)
  To: Go Taniguchi; +Cc: Andrew Morton, lkml

On Thu, 2004-02-26 at 06:40, Go Taniguchi wrote:
> Hi,
> 
> Andrew Morton wrote:
> > john stultz <johnstul@us.ibm.com> wrote:
> > 
> >>	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
> >>the following:
> >> 
> >>scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
> >>        <Adaptec aic7899 Ultra160 SCSI adapter>                 
> >>        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
> >>                                                                
> >>
> >>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> >>there as well. 
> > 
> > 
> > Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> > initcall_debug to the boot command just so we know we aren't blaming the
> > wrong thing.
> > 
> > Apart from that, gosh.  Maybe you could add just linus.patch and
> > bk-scsi.patch, see if that hangs too?  Or just test the latest linus tree -
> > the scsi changes were merged this morning.  Thanks.
> > 
> 
> Problem patch is expanded-pci-config-space.patch.
> x440 can not enable acpi by dmi_scan.
> expanded-pci-config-space.patch need acpi support.
> So, kernel can not get x440's xAPIC interrupt.

Wow, thanks for that analysis Go! I'll test it here to confirm. 

The acpi dmi blacklist entry for the x440 slipped in from United Linux's
2.4 kernel (where there were ACPI issues initially), and I don't believe
it is necessary in 2.6. I've got a patch that reverts that change, but I
want to do more testing first.

thanks
-john


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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-26 21:26       ` john stultz
@ 2004-02-26 23:02         ` john stultz
  2004-02-26 23:15           ` Matthew Wilcox
  0 siblings, 1 reply; 73+ messages in thread
From: john stultz @ 2004-02-26 23:02 UTC (permalink / raw)
  To: Go Taniguchi, willy; +Cc: Andrew Morton, lkml

On Thu, 2004-02-26 at 13:26, john stultz wrote:
> On Thu, 2004-02-26 at 06:40, Go Taniguchi wrote:
> > Hi,
> > 
> > Andrew Morton wrote:
> > > john stultz <johnstul@us.ibm.com> wrote:
> > > 
> > >>	Booting 2.6.3-mm3 on an x440 hangs the box during the SCSI probe after
> > >>the following:
> > >> 
> > >>scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
> > >>        <Adaptec aic7899 Ultra160 SCSI adapter>                 
> > >>        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
> > >>                                                                
> > >>
> > >>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > >>there as well. 
> > > 
> > > 
> > > Could you try reverting aic7xxx-deadlock-fix.patch?  Also, add
> > > initcall_debug to the boot command just so we know we aren't blaming the
> > > wrong thing.
> > > 
> > > Apart from that, gosh.  Maybe you could add just linus.patch and
> > > bk-scsi.patch, see if that hangs too?  Or just test the latest linus tree -
> > > the scsi changes were merged this morning.  Thanks.
> > > 
> > 
> > Problem patch is expanded-pci-config-space.patch.
> > x440 can not enable acpi by dmi_scan.
> > expanded-pci-config-space.patch need acpi support.
> > So, kernel can not get x440's xAPIC interrupt.
> 
> Wow, thanks for that analysis Go! I'll test it here to confirm. 

Yep, I've confirmed that backing out the expanded-pci-config-space patch
solves it. Thanks again, Go, for hunting that down! 

Matthew, any ideas why the patch fails if the system has an ACPI
blacklist entry?

thanks
-john


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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-26 23:02         ` john stultz
@ 2004-02-26 23:15           ` Matthew Wilcox
  2004-02-27  0:14             ` john stultz
  2004-02-27  2:25             ` john stultz
  0 siblings, 2 replies; 73+ messages in thread
From: Matthew Wilcox @ 2004-02-26 23:15 UTC (permalink / raw)
  To: john stultz; +Cc: Go Taniguchi, willy, Andrew Morton, lkml

On Thu, Feb 26, 2004 at 03:02:56PM -0800, john stultz wrote:
> On Thu, 2004-02-26 at 13:26, john stultz wrote:
> > On Thu, 2004-02-26 at 06:40, Go Taniguchi wrote:
> > > Hi,
> > > 
> > > Andrew Morton wrote:
> > > > john stultz <johnstul@us.ibm.com> wrote:
> > > >>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > > >>there as well. 
> > > 
> > > Problem patch is expanded-pci-config-space.patch.
> > > x440 can not enable acpi by dmi_scan.
> > > expanded-pci-config-space.patch need acpi support.
> > > So, kernel can not get x440's xAPIC interrupt.
> > 
> > Wow, thanks for that analysis Go! I'll test it here to confirm. 
> 
> Yep, I've confirmed that backing out the expanded-pci-config-space patch
> solves it. Thanks again, Go, for hunting that down! 
> 
> Matthew, any ideas why the patch fails if the system has an ACPI
> blacklist entry?

Hrm.  I was just asked to break out some of the ACPI code rearrangement
from the rest of the patch.  Can you try this patch instead of the
expanded-pci-config-space.patch and tell me whether it continues to fail
for you?

I don't understand why it should make a difference though.  It looks
to me like the current code will also fail to call the HPET code if the
bios is blacklisted.

Index: arch/i386/kernel/acpi/boot.c
===================================================================
RCS file: /var/cvs/linux-2.6/arch/i386/kernel/acpi/boot.c,v
retrieving revision 1.10
diff -u -p -r1.10 boot.c
--- a/arch/i386/kernel/acpi/boot.c	17 Feb 2004 12:51:46 -0000	1.10
+++ b/arch/i386/kernel/acpi/boot.c	26 Feb 2004 16:34:12 -0000
@@ -398,55 +398,10 @@ acpi_find_rsdp (void)
 	return rsdp_phys;
 }
 
-/*
- * acpi_boot_init()
- *  called from setup_arch(), always.
- *	1. maps ACPI tables for later use
- *	2. enumerates lapics
- *	3. enumerates io-apics
- *
- * side effects:
- *	acpi_lapic = 1 if LAPIC found
- *	acpi_ioapic = 1 if IOAPIC found
- *	if (acpi_lapic && acpi_ioapic) smp_found_config = 1;
- *	if acpi_blacklisted() acpi_disabled = 1;
- *	acpi_irq_model=...
- *	...
- *
- * return value: (currently ignored)
- *	0: success
- *	!0: failure
- */
 
-int __init
-acpi_boot_init (void)
+static int acpi_apic_setup(void)
 {
-	int			result = 0;
-
-	if (acpi_disabled && !acpi_ht)
-		 return 1;
-
-	/*
-	 * The default interrupt routing model is PIC (8259).  This gets
-	 * overriden if IOAPICs are enumerated (below).
-	 */
-	acpi_irq_model = ACPI_IRQ_MODEL_PIC;
-
-	/* 
-	 * Initialize the ACPI boot-time table parser.
-	 */
-	result = acpi_table_init();
-	if (result) {
-		acpi_disabled = 1;
-		return result;
-	}
-
-	result = acpi_blacklisted();
-	if (result) {
-		printk(KERN_WARNING PREFIX "BIOS listed in blacklist, disabling ACPI support\n");
-		acpi_disabled = 1;
-		return result;
-	}
+	int result;
 
 #ifdef CONFIG_X86_LOCAL_APIC
 
@@ -506,24 +461,17 @@ acpi_boot_init (void)
 
 	acpi_lapic = 1;
 
-#endif /*CONFIG_X86_LOCAL_APIC*/
+#endif /* CONFIG_X86_LOCAL_APIC */
 
 #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
 
 	/* 
 	 * I/O APIC 
-	 * --------
 	 */
 
-	/*
-	 * ACPI interpreter is required to complete interrupt setup,
-	 * so if it is off, don't enumerate the io-apics with ACPI.
-	 * If MPS is present, it will handle them,
-	 * otherwise the system will stay in PIC mode
-	 */
-	if (acpi_disabled || acpi_noirq) {
+	if (acpi_noirq) {
 		return 1;
-        }
+	}
 
 	/*
  	 * if "noapic" boot option, don't look for IO-APICs
@@ -538,8 +486,7 @@ acpi_boot_init (void)
 	if (!result) {
 		printk(KERN_ERR PREFIX "No IOAPIC entries present\n");
 		return -ENODEV;
-	}
-	else if (result < 0) {
+	} else if (result < 0) {
 		printk(KERN_ERR PREFIX "Error parsing IOAPIC entry\n");
 		return result;
 	}
@@ -576,9 +523,71 @@ acpi_boot_init (void)
 	}
 #endif
 
+	return 0;
+}
+
+/*
+ * acpi_boot_init()
+ *  called from setup_arch(), always.
+ *	1. maps ACPI tables for later use
+ *	2. enumerates lapics
+ *	3. enumerates io-apics
+ *
+ * side effects:
+ *	acpi_lapic = 1 if LAPIC found
+ *	acpi_ioapic = 1 if IOAPIC found
+ *	if (acpi_lapic && acpi_ioapic) smp_found_config = 1;
+ *	if acpi_blacklisted() acpi_disabled = 1;
+ *	acpi_irq_model=...
+ *	...
+ *
+ * return value: (currently ignored)
+ *	0: success
+ *	!0: failure
+ */
+
+int __init
+acpi_boot_init (void)
+{
+	int result, error;
+
+	if (acpi_disabled && !acpi_ht)
+		 return 1;
+
+	/*
+	 * The default interrupt routing model is PIC (8259).  This gets
+	 * overriden if IOAPICs are enumerated (below).
+	 */
+	acpi_irq_model = ACPI_IRQ_MODEL_PIC;
+
+	/* 
+	 * Initialize the ACPI boot-time table parser.
+	 */
+	result = acpi_table_init();
+	if (result) {
+		acpi_disabled = 1;
+		return result;
+	}
+
+	result = acpi_blacklisted();
+	if (result) {
+		printk(KERN_WARNING PREFIX "BIOS listed in blacklist, disabling ACPI support\n");
+		acpi_disabled = 1;
+		return result;
+	}
+
+	error = acpi_apic_setup();
+
 #ifdef CONFIG_HPET_TIMER
-	acpi_table_parse(ACPI_HPET, acpi_parse_hpet);
+	result = acpi_table_parse(ACPI_HPET, acpi_parse_hpet);
+	if (result < 0) {
+		printk(KERN_ERR PREFIX "Error %d parsing HPET\n", result);
+		if (!error)
+			error = result;
+	} else if (result > 1) {
+		printk(KERN_WARNING PREFIX "Multiple HPET tables exist\n");
+	}
 #endif
 
-	return 0;
+	return error;
 }

-- 
"Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception." -- Mark Twain

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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-26 23:15           ` Matthew Wilcox
@ 2004-02-27  0:14             ` john stultz
  2004-02-27  0:58               ` john stultz
  2004-02-27  2:25             ` john stultz
  1 sibling, 1 reply; 73+ messages in thread
From: john stultz @ 2004-02-27  0:14 UTC (permalink / raw)
  To: Matthew Wilcox; +Cc: Go Taniguchi, Andrew Morton, lkml

On Thu, 2004-02-26 at 15:15, Matthew Wilcox wrote:
> On Thu, Feb 26, 2004 at 03:02:56PM -0800, john stultz wrote:
> > On Thu, 2004-02-26 at 13:26, john stultz wrote:
> > > On Thu, 2004-02-26 at 06:40, Go Taniguchi wrote:
> > > > Hi,
> > > > 
> > > > Andrew Morton wrote:
> > > > > john stultz <johnstul@us.ibm.com> wrote:
> > > > >>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > > > >>there as well. 
> > > > 
> > > > Problem patch is expanded-pci-config-space.patch.
> > > > x440 can not enable acpi by dmi_scan.
> > > > expanded-pci-config-space.patch need acpi support.
> > > > So, kernel can not get x440's xAPIC interrupt.
> > > 
> > > Wow, thanks for that analysis Go! I'll test it here to confirm. 
> > 
> > Yep, I've confirmed that backing out the expanded-pci-config-space patch
> > solves it. Thanks again, Go, for hunting that down! 
> > 
> > Matthew, any ideas why the patch fails if the system has an ACPI
> > blacklist entry?
> 
> Hrm.  I was just asked to break out some of the ACPI code rearrangement
> from the rest of the patch.  Can you try this patch instead of the
> expanded-pci-config-space.patch and tell me whether it continues to fail
> for you?

Unfortunately it does still hang with that patch. 

> I don't understand why it should make a difference though.  It looks
> to me like the current code will also fail to call the HPET code if the
> bios is blacklisted.

I'm a bit pressed for time at the moment, so I can't dig too deeply
right now, but I'll happily test any patches you might think will help. 

thanks
-john


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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-27  0:14             ` john stultz
@ 2004-02-27  0:58               ` john stultz
  0 siblings, 0 replies; 73+ messages in thread
From: john stultz @ 2004-02-27  0:58 UTC (permalink / raw)
  To: Matthew Wilcox; +Cc: Go Taniguchi, Andrew Morton, lkml

On Thu, 2004-02-26 at 16:14, john stultz wrote:
> On Thu, 2004-02-26 at 15:15, Matthew Wilcox wrote:
> > On Thu, Feb 26, 2004 at 03:02:56PM -0800, john stultz wrote:
> > > On Thu, 2004-02-26 at 13:26, john stultz wrote:
> > > > On Thu, 2004-02-26 at 06:40, Go Taniguchi wrote:
> > > > > Hi,
> > > > > 
> > > > > Andrew Morton wrote:
> > > > > > john stultz <johnstul@us.ibm.com> wrote:
> > > > > >>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > > > > >>there as well. 
> > > > > 
> > > > > Problem patch is expanded-pci-config-space.patch.
> > > > > x440 can not enable acpi by dmi_scan.
> > > > > expanded-pci-config-space.patch need acpi support.
> > > > > So, kernel can not get x440's xAPIC interrupt.
> > > > 
> > > > Wow, thanks for that analysis Go! I'll test it here to confirm. 
> > > 
> > > Yep, I've confirmed that backing out the expanded-pci-config-space patch
> > > solves it. Thanks again, Go, for hunting that down! 
> > > 
> > > Matthew, any ideas why the patch fails if the system has an ACPI
> > > blacklist entry?
> > 
> > Hrm.  I was just asked to break out some of the ACPI code rearrangement
> > from the rest of the patch.  Can you try this patch instead of the
> > expanded-pci-config-space.patch and tell me whether it continues to fail
> > for you?
> 
> Unfortunately it does still hang with that patch. 

Actually, I took a second to actually look at that patch and I realized
it was just the ACPI changes, rather then just the PCI changes. 

So yes, it seems that the patch narrows down the issue to just the ACPI
changes, which isn't so unfortunate!

thanks
-john



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

* Re: 2.6.3-mm3 hangs on  boot x440 (scsi?)
  2004-02-26 23:15           ` Matthew Wilcox
  2004-02-27  0:14             ` john stultz
@ 2004-02-27  2:25             ` john stultz
  1 sibling, 0 replies; 73+ messages in thread
From: john stultz @ 2004-02-27  2:25 UTC (permalink / raw)
  To: Matthew Wilcox; +Cc: Go Taniguchi, Andrew Morton, lkml

On Thu, 2004-02-26 at 15:15, Matthew Wilcox wrote:
> On Thu, Feb 26, 2004 at 03:02:56PM -0800, john stultz wrote:
> > On Thu, 2004-02-26 at 13:26, john stultz wrote:
> > > On Thu, 2004-02-26 at 06:40, Go Taniguchi wrote:
> > > > Hi,
> > > > 
> > > > Andrew Morton wrote:
> > > > > john stultz <johnstul@us.ibm.com> wrote:
> > > > >>I went back to 2.6.3-mm1 (as it was a smaller diff) and the problem was
> > > > >>there as well. 
> > > > 
> > > > Problem patch is expanded-pci-config-space.patch.
> > > > x440 can not enable acpi by dmi_scan.
> > > > expanded-pci-config-space.patch need acpi support.
> > > > So, kernel can not get x440's xAPIC interrupt.
> > > 
> > > Wow, thanks for that analysis Go! I'll test it here to confirm. 
> > 
> > Yep, I've confirmed that backing out the expanded-pci-config-space patch
> > solves it. Thanks again, Go, for hunting that down! 
> > 
> > Matthew, any ideas why the patch fails if the system has an ACPI
> > blacklist entry?
> 
> Hrm.  I was just asked to break out some of the ACPI code rearrangement
> from the rest of the patch.  Can you try this patch instead of the
> expanded-pci-config-space.patch and tell me whether it continues to fail
> for you?
> 
> I don't understand why it should make a difference though.  It looks
> to me like the current code will also fail to call the HPET code if the
> bios is blacklisted.

Ok, think I found it!



> Index: arch/i386/kernel/acpi/boot.c
> ===================================================================
> RCS file: /var/cvs/linux-2.6/arch/i386/kernel/acpi/boot.c,v
> retrieving revision 1.10
> diff -u -p -r1.10 boot.c
> --- a/arch/i386/kernel/acpi/boot.c	17 Feb 2004 12:51:46 -0000	1.10
> +++ b/arch/i386/kernel/acpi/boot.c	26 Feb 2004 16:34:12 -0000
> @@ -506,24 +461,17 @@ acpi_boot_init (void)
>  
>  	acpi_lapic = 1;
>  
> -#endif /*CONFIG_X86_LOCAL_APIC*/
> +#endif /* CONFIG_X86_LOCAL_APIC */
>  
>  #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
>  
>  	/* 
>  	 * I/O APIC 
> -	 * --------
>  	 */
>  
> -	/*
> -	 * ACPI interpreter is required to complete interrupt setup,
> -	 * so if it is off, don't enumerate the io-apics with ACPI.
> -	 * If MPS is present, it will handle them,
> -	 * otherwise the system will stay in PIC mode
> -	 */
> -	if (acpi_disabled || acpi_noirq) {
> +	if (acpi_noirq) {
>  		return 1;
> -        }
> +	}
>  
>  	/*
>   	 * if "noapic" boot option, don't look for IO-APICs


That chunk shouldn't drop the "if (acpi_disabled ..." bit.
Adding that check back in fixes it for me.

thanks
-john




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

* Re: 2.6.3-mm3 sometimes freeze on "sync"
  2004-02-26  8:49     ` Helge Hafting
@ 2004-02-27 14:49       ` Alexander Hoogerhuis
  0 siblings, 0 replies; 73+ messages in thread
From: Alexander Hoogerhuis @ 2004-02-27 14:49 UTC (permalink / raw)
  To: Helge Hafting; +Cc: Andrew Morton, linux-kernel

Helge Hafting <helgehaf@aitel.hist.no> writes:

> Andrew Morton wrote:
> > Helge Hafting <helgehaf@aitel.hist.no> wrote:
> >
> >>2.6.3-mm3 (and 2.6.3-mm1) occationally freeze on "sync".
> > yup. bug.  This should fix.
> 
> This seems to work for me.  I've booted 2.6.3-mm3 with this
> patch.  I ran some syncs, then forced the machine to
> swap with a big tar and ran some more syncs.  It works.
> 

Just posted in reply to someone else ont he list, but I'm runnign -mm3
with the patch and seeing hangs after mkfs'ing ext3 fs'es on HP
servers with the cciss-driver; roughly 50% chance of it happening on
"umount /dir && mke2fs -j -L /dir /dev/cciss/c0d0p5 && mount /dir".

> Helge Hafting
> 

mvh,
A
-- 
Alexander Hoogerhuis                               | alexh@ihatent.com
CCNP - CCDP - MCNE - CCSE                          | +47 908 21 485
"You have zero privacy anyway. Get over it."  --Scott McNealy

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

* Re: 2.6.3-mm3
  2004-02-26  4:56             ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-27 19:02               ` Mike Fedyk
  2004-02-27 21:57                 ` 2.6.3-mm3 Nick Piggin
  0 siblings, 1 reply; 73+ messages in thread
From: Mike Fedyk @ 2004-02-27 19:02 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Nick Piggin, Andrew Morton, linux-kernel

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

Mike Fedyk wrote:
> Nick Piggin wrote:
> 
>> IMO, shrink_slab-for-all-zones.patch and zone-balancing-fix.patch
>> should be all you need although they won't shrink the slab as
>> much as mm3. They should be pretty easy to port by hand.
> 
> 
> How does this patch for 2.6.3 look?

Never mind, I was brain dead at the time.

This one should be better.

Mike

[-- Attachment #2: 2.6.3-shrink_slab-for-all-zones-2.patch --]
[-- Type: text/x-patch, Size: 1283 bytes --]

--- linux-2.6.3/mm/vmscan.c	2004-02-25 20:50:35.000000000 -0800
+++ linux-2.6.3-slab-lofft/mm/vmscan.c	2004-02-25 20:41:45.000000000 -0800
@@ -885,12 +885,10 @@
 
 		/* Take a nap, wait for some writeback to complete */
 		blk_congestion_wait(WRITE, HZ/10);
-		if (zones[0] - zones[0]->zone_pgdat->node_zones < ZONE_HIGHMEM) {
-			shrink_slab(total_scanned, gfp_mask);
-			if (reclaim_state) {
-				nr_reclaimed += reclaim_state->reclaimed_slab;
-				reclaim_state->reclaimed_slab = 0;
-			}
+		shrink_slab(total_scanned, gfp_mask);
+		if (reclaim_state) {
+			nr_reclaimed += reclaim_state->reclaimed_slab;
+			reclaim_state->reclaimed_slab = 0;
 		}
 	}
 	if ((gfp_mask & __GFP_FS) && !(gfp_mask & __GFP_NORETRY))
@@ -962,11 +960,9 @@
 				max_scan = SWAP_CLUSTER_MAX;
 			to_free -= shrink_zone(zone, max_scan, GFP_KERNEL,
 					to_reclaim, &nr_mapped, ps, priority);
-			if (i < ZONE_HIGHMEM) {
-				reclaim_state->reclaimed_slab = 0;
-				shrink_slab(max_scan + nr_mapped, GFP_KERNEL);
-				to_free -= reclaim_state->reclaimed_slab;
-			}
+			reclaim_state->reclaimed_slab = 0;
+			shrink_slab(max_scan + nr_mapped, GFP_KERNEL);
+			to_free -= reclaim_state->reclaimed_slab;
 			if (zone->all_unreclaimable)
 				continue;
 			if (zone->pages_scanned > zone->present_pages * 2)

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

* Re: 2.6.3-mm3
  2004-02-27 19:02               ` 2.6.3-mm3 Mike Fedyk
@ 2004-02-27 21:57                 ` Nick Piggin
  0 siblings, 0 replies; 73+ messages in thread
From: Nick Piggin @ 2004-02-27 21:57 UTC (permalink / raw)
  To: Mike Fedyk; +Cc: Andrew Morton, linux-kernel



Mike Fedyk wrote:

> Mike Fedyk wrote:
>
>> Nick Piggin wrote:
>>
>>> IMO, shrink_slab-for-all-zones.patch and zone-balancing-fix.patch
>>> should be all you need although they won't shrink the slab as
>>> much as mm3. They should be pretty easy to port by hand.
>>
>>
>>
>> How does this patch for 2.6.3 look?
>
>
> Never mind, I was brain dead at the time.
>
> This one should be better.
>

That should help, yes.


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

* Re: 2.6.3-mm3
  2004-02-23  1:22 2.6.3-mm3 Andrew Morton
                   ` (10 preceding siblings ...)
  2004-02-25 10:47 ` 2.6.3-mm3 sometimes freeze on "sync" Helge Hafting
@ 2004-02-27 23:34 ` john stultz
  2004-02-28  0:06   ` 2.6.3-mm3 Andrew Morton
  11 siblings, 1 reply; 73+ messages in thread
From: john stultz @ 2004-02-27 23:34 UTC (permalink / raw)
  To: Andrew Morton; +Cc: lkml

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

Andrew, 
	I swear, I'll move up to -mm4 soon, but I've got one more issue w/
-mm3. 

When running -mm3 (plus the one-line fix to the expanded-pci-config
patch) to on an x440  w/ 4G enabled, the tg3 driver cannot find my
network card. 

When booting I get:
tg3.c:v2.7 (February 17, 2004)                
tg3: Cannot map device registers, aborting.
tg3: probe of 0000:01:04.0 failed with error -12

Otherwise the system seems to come up fine. 

Disabling CONFIG_ACPI (or CONFIG_X86_4G) makes the problem go away.

Boot log and .config attached. 

thanks
-john


[-- Attachment #2: mm3-4g.tg3.broke.log --]
[-- Type: text/plain, Size: 20912 bytes --]

Linux version 2.6.3-mm3 (jstultz@elm3b59) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-24)) #2 SMP Fri Feb 27 17:39:26 EST 2004
BIOS-provided physical RAM map:                    
 BIOS-e820: 0000000000000000 - 000000000009dc00 (usable)
 BIOS-e820: 000000000009dc00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000dffb6ec0 (usable)  
 BIOS-e820: 00000000dffb6ec0 - 00000000dffbf800 (ACPI data)
 BIOS-e820: 00000000dffbf800 - 00000000e0000000 (reserved) 
 BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
 BIOS-e820: 0000000100000000 - 0000000220000000 (usable)  
get_memcfg_from_srat: assigning address to rsdp         
RSD PTR  v0 [IBM   ]                           
Begin SRAT table scan....
CPU 0x00 in proximity domain 0x00
CPU 0x02 in proximity domain 0x00
CPU 0x10 in proximity domain 0x00
CPU 0x12 in proximity domain 0x00
CPU 0x20 in proximity domain 0x01
CPU 0x22 in proximity domain 0x01
CPU 0x30 in proximity domain 0x01
CPU 0x32 in proximity domain 0x01
CPU 0x01 in proximity domain 0x00
CPU 0x03 in proximity domain 0x00
CPU 0x11 in proximity domain 0x00
CPU 0x13 in proximity domain 0x00
CPU 0x21 in proximity domain 0x01
CPU 0x23 in proximity domain 0x01
CPU 0x31 in proximity domain 0x01
CPU 0x33 in proximity domain 0x01
Memory range 0x0 to 0xE0000 (type 0x1) in proximity domain 0x00 enabled
Memory range 0x100000 to 0x120000 (type 0x1) in proximity domain 0x00 enabled
Memory range 0x120000 to 0x220000 (type 0x1) in proximity domain 0x01 enabled
acpi20_parse_srat: Entry length value is zero; can't parse any further!      
pxm bitmap: 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Number of logical nodes in system = 2
Number of memory chunks in system = 3
chunk 0 nid 0 start_pfn 00000000 end_pfn 000e0000
chunk 1 nid 0 start_pfn 00100000 end_pfn 00120000
chunk 2 nid 1 start_pfn 00120000 end_pfn 00220000
Reserving 10752 pages of KVA for lmem_map of node 1
Shrinking node 1 from 2228224 pages to 2217472 pages
Reserving total of 10752 pages for numa KVA remap   
4768MB HIGHMEM available.                        
3894MB LOWMEM available. 
min_low_pfn = 1354, max_low_pfn = 996864, highstart_pfn = 1007616
Low memory ends at vaddr f5600000                                
node 0 will remap to vaddr f8000000 - f8000000
node 1 will remap to vaddr f5600000 - f8000000
High memory starts at vaddr f8000000          
found SMP MP-table at 0009dd40      
On node 0 totalpages: 1048576 
  DMA zone: 4096 pages, LIFO batch:1
  Normal zone: 913408 pages, LIFO batch:16
  HighMem zone: 131072 pages, LIFO batch:16
BUG: wrong zone alignment, it will crash   
On node 1 totalpages: 1037824           
  DMA zone: 0 pages, LIFO batch:1
  Normal zone: 0 pages, LIFO batch:1
  HighMem zone: 1037824 pages, LIFO batch:16
DMI 2.3 present.                            
IBM machine detected. Enabling interrupts during APM calls.
IBM machine detected. Disabling SMBus accesses.            
IBM eserver xSeries 440 detected: force use of acpi=ht
ACPI: RSDP (v000 IBM                                       ) @ 0x000fdba0
ACPI: RSDT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf780
ACPI: FADT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf700
ACPI: MADT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf580
ACPI: SRAT (v001 IBM    SERVIGIL 0x00001000 IBM  0x45444f43) @ 0xdffbf3c0
ACPI: DSDT (v001 IBM    SERVIGIL 0x00001000 INTL 0x02002025) @ 0x00000000
ACPI: Local APIC address 0xfee00000                                      
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Processor #0 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x02] enabled)
Processor #2 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x10] enabled)
Processor #16 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x03] lapic_id[0x12] enabled)
Processor #18 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x04] lapic_id[0x20] enabled)
Processor #32 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x05] lapic_id[0x22] enabled)
Processor #34 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x06] lapic_id[0x30] enabled)
Processor #48 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x07] lapic_id[0x32] enabled)
Processor #50 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x08] lapic_id[0x01] enabled)
Processor #1 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x09] lapic_id[0x03] enabled)
Processor #3 15:1 APIC version 20                 
ACPI: LAPIC (acpi_id[0x0a] lapic_id[0x11] enabled)
Processor #17 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0b] lapic_id[0x13] enabled)
Processor #19 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0c] lapic_id[0x21] enabled)
Processor #33 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0d] lapic_id[0x23] enabled)
Processor #35 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0e] lapic_id[0x31] enabled)
Processor #49 15:1 APIC version 20                
ACPI: LAPIC (acpi_id[0x0f] lapic_id[0x33] enabled)
Processor #51 15:1 APIC version 20                
ACPI: LAPIC_NMI (acpi_id[0x00] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x03] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x04] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x05] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x06] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x07] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x08] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x09] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0a] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0b] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0c] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0d] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0e] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x0f] dfl dfl lint[0x1])
Using ACPI for processor (LAPIC) configuration information
Intel MultiProcessor Specification v1.4                   
    Virtual Wire compatibility mode.   
OEM ID: IBM ENSW Product ID: VIGIL SMP    APIC at: 0xFEE00000
I/O APIC #14 Version 17 at 0xFEC00000.                       
I/O APIC #13 Version 17 at 0xFEC01000.
Enabling APIC mode:  Summit.  Using 2 I/O APICs
Processors: 16                                 
Built 2 zonelists
mapped 4G/4G trampoline to fffd3000.
Initializing CPU#0                  
Kernel command line: ro root=/dev/sda2 console=ttyS0,115200 console=tty0
PID hash table entries: 4096 (order 12: 32768 bytes)                    
Summit chipset: Starting Cyclone Counter.           
Detected 1500.529 MHz processor.         
Using cyclone for high-res timesource
Console: colour VGA+ 80x25           
Initializing highpages for node 0
Initializing highpages for node 1
Memory: 8292336k/8912896k available (2744k kernel code, 51428k reserved, 1015k data, 300k init, 4675584k highmem)
Calibrating delay loop... 193.53 BogoMIPS
Dentry cache hash table entries: 1048576 (order: 10, 4194304 bytes)
Inode-cache hash table entries: 1048576 (order: 10, 4194304 bytes) 
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)        
CPU: Trace cache: 12K uops, L1 D cache: 8K                
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 0
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.                    
POSIX conformance testing by UNIFIX
CPU0: Intel(R) Genuine CPU 1.50GHz stepping 01
per-CPU timeslice cutoff: 731.50 usecs.       
task migration cache decay timeout: 1 msecs.
enabled ExtINT on CPU#0                     
Leaving ESR disabled.  
Mapping cpu 0 to node 0
Booting processor 1/2 eip 2000
Initializing CPU#1            
masked ExtINT on CPU#1
Leaving ESR disabled. 
Mapping cpu 1 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 1
CPU1: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 2/16 eip 2000               
Initializing CPU#2             
masked ExtINT on CPU#2
Leaving ESR disabled. 
Mapping cpu 2 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 8
CPU2: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 3/18 eip 2000               
Initializing CPU#3             
masked ExtINT on CPU#3
Leaving ESR disabled. 
Mapping cpu 3 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 9
CPU3: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 4/32 eip 2000               
Initializing CPU#4             
masked ExtINT on CPU#4
Leaving ESR disabled. 
Mapping cpu 4 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 16
CPU4: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 5/34 eip 2000               
Initializing CPU#5             
masked ExtINT on CPU#5
Leaving ESR disabled. 
Mapping cpu 5 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 17
CPU5: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 6/48 eip 2000               
Initializing CPU#6             
masked ExtINT on CPU#6
Leaving ESR disabled. 
Mapping cpu 6 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 24
CPU6: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 7/50 eip 2000               
Initializing CPU#7             
masked ExtINT on CPU#7
Leaving ESR disabled. 
Mapping cpu 7 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 25
CPU7: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 8/1 eip 2000                
Initializing CPU#8            
masked ExtINT on CPU#8
Leaving ESR disabled. 
Mapping cpu 8 to node 0
Calibrating delay loop... 199.68 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 0
CPU8: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 9/3 eip 2000                
Initializing CPU#9            
masked ExtINT on CPU#9
Leaving ESR disabled. 
Mapping cpu 9 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 1
CPU9: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 10/17 eip 2000              
Initializing CPU#10             
masked ExtINT on CPU#10
Leaving ESR disabled.  
Mapping cpu 10 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 8
CPU10: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 11/19 eip 2000               
Initializing CPU#11             
masked ExtINT on CPU#11
Leaving ESR disabled.  
Mapping cpu 11 to node 0
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 9
CPU11: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 12/33 eip 2000               
Initializing CPU#12             
masked ExtINT on CPU#12
Leaving ESR disabled.  
Mapping cpu 12 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 16
CPU12: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 13/35 eip 2000               
Initializing CPU#13             
masked ExtINT on CPU#13
Leaving ESR disabled.  
Mapping cpu 13 to node 1
Calibrating delay loop... 198.65 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 17
CPU13: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 14/49 eip 2000               
Initializing CPU#14             
masked ExtINT on CPU#14
Leaving ESR disabled.  
Mapping cpu 14 to node 1
Calibrating delay loop... 198.65 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 24
CPU14: Intel(R) Genuine CPU 1.50GHz stepping 01
Booting processor 15/51 eip 2000               
Initializing CPU#15             
masked ExtINT on CPU#15
Leaving ESR disabled.  
Mapping cpu 15 to node 1
Calibrating delay loop... 199.16 BogoMIPS
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 256K                       
CPU: L3 cache: 512K
CPU: Physical Processor ID: 25
CPU15: Intel(R) Genuine CPU 1.50GHz stepping 01
Total of 16 processors activated (3180.54 BogoMIPS).
ENABLING IO-APIC IRQs                               
..TIMER: vector=0x31 pin1=0 pin2=-1
testing the IO APIC.......................
.................................... done.
Using local APIC timer interrupts.        
calibrating APIC timer ...        
..... CPU clock speed is 1500.0240 MHz.
..... host bus clock speed is 100.0015 MHz.
checking TSC synchronization across 16 CPUs: 
BIOS BUG: CPU#0 improperly initialized, has 7193659 usecs TSC skew! FIXED.
BIOS BUG: CPU#1 improperly initialized, has 7193661 usecs TSC skew! FIXED.
BIOS BUG: CPU#2 improperly initialized, has 7193660 usecs TSC skew! FIXED.
BIOS BUG: CPU#3 improperly initialized, has 7193666 usecs TSC skew! FIXED.
BIOS BUG: CPU#4 improperly initialized, has -7193662 usecs TSC skew! FIXED.
BIOS BUG: CPU#5 improperly initialized, has -7193661 usecs TSC skew! FIXED.
BIOS BUG: CPU#6 improperly initialized, has -7193660 usecs TSC skew! FIXED.
BIOS BUG: CPU#7 improperly initialized, has -7193662 usecs TSC skew! FIXED.
BIOS BUG: CPU#8 improperly initialized, has 7193659 usecs TSC skew! FIXED. 
BIOS BUG: CPU#9 improperly initialized, has 7193661 usecs TSC skew! FIXED.
BIOS BUG: CPU#10 improperly initialized, has 7193660 usecs TSC skew! FIXED.
BIOS BUG: CPU#11 improperly initialized, has 7193660 usecs TSC skew! FIXED.
BIOS BUG: CPU#12 improperly initialized, has -7193662 usecs TSC skew! FIXED.
BIOS BUG: CPU#13 improperly initialized, has -7193664 usecs TSC skew! FIXED.
BIOS BUG: CPU#14 improperly initialized, has -7193663 usecs TSC skew! FIXED.
BIOS BUG: CPU#15 improperly initialized, has -7193653 usecs TSC skew! FIXED.
Brought up 15 CPUs                                                          
zapping low mappings.
NET: Registered protocol family 16
EISA bus registered               
PCI: PCI BIOS revision 2.10 entry at 0xfd30d, last bus=11
PCI: Using configuration type 1                          
mtrr: v2.0 (20020519)          
ACPI: Subsystem revision 20040211
ACPI: Interpreter disabled.      
SCSI subsystem initialized 
ACPI: ACPI tables contain no PCI IRQ routing entries
PCI: Invalid ACPI-PCI IRQ routing table             
PCI: Probing PCI hardware              
PCI: Probing PCI hardware (bus 00)
PCI: Discovered peer bus 01       
PCI: Discovered peer bus 02
PCI: Discovered peer bus 05
PCI: Discovered peer bus 07
PCI: Discovered peer bus 09
PCI->APIC IRQ transform: (B0,I3,P0) -> 39
PCI->APIC IRQ transform: (B0,I4,P0) -> 16
PCI->APIC IRQ transform: (B0,I5,P3) -> 18
PCI->APIC IRQ transform: (B0,I5,P3) -> 18
PCI->APIC IRQ transform: (B1,I3,P0) -> 40
PCI->APIC IRQ transform: (B1,I3,P1) -> 41
PCI->APIC IRQ transform: (B1,I4,P0) -> 42
PCI->APIC IRQ transform: (B5,I4,P0) -> 71
Starting balanced_irq                    
highmem bounce pool size: 64 pages
VFS: Disk quotas dquot_6.5.1      
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
PCI: Enabling Via external APIC routing                 
PCI: Via IRQ fixup for 0000:00:05.2, from 11 to 2
PCI: Via IRQ fixup for 0000:00:05.3, from 11 to 2
Real Time Clock Driver v1.12                     
Linux agpgart interface v0.100 (c) Dave Jones
Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A                                 
Using anticipatory io scheduler         
Floppy drive(s): fd0 is 1.44M  
reset set in interrupt, calling 02289518
floppy0: no floppy controllers found    
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)                                         
eepro100.c:v1.09j-t 9/29/99 Donald Becker http://www.scyld.com/network/eepro100.html
eepro100.c: $Revision: 1.36 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others
eth0: OEM i82557/i82558 10/100 Ethernet, 00:02:55:64:FF:38, IRQ 71.
  Board assembly 729857-009, Physical connectors present: RJ45     
  Primary interface chip i82555 PHY #1.                       
  General self-test: passed.           
  Serial sub-system self-test: passed.
  Internal registers self-test: passed.
  ROM checksum self-test: passed (0x04f4518b).
tg3.c:v2.7 (February 17, 2004)                
tg3: Cannot map device registers, aborting.
tg3: probe of 0000:01:04.0 failed with error -12
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: IDE controller at PCI slot 0000:00:05.1                            
VP_IDE: chipset revision 6                     
VP_IDE: not 100% native mode: will probe irqs later
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: VIA vt82c686b (rev 40) IDE UDMA100 controller on pci0000:00:05.1   
    ide0: BM-DMA at 0x0700-0x0707, BIOS settings: hda:pio, hdb:pio      
    ide1: BM-DMA at 0x0708-0x070f, BIOS settings: hdc:pio, hdd:pio
hda: LG CD-ROM CRN-8245B, ATAPI CD/DVD-ROM drive                  
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14             
hda: ATAPI 24X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.20              
ide-floppy driver 0.99.newide       
aic7xxx: PCI1:3:0 MEM region 0xf0e10000 unavailable. Cannot memory map device.
aic7xxx: PCI1:3:1 MEM region 0xf0e11000 unavailable. Cannot memory map device.
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36              
        <Adaptec aic7899 Ultra160 SCSI adapter>                 
        aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
                                                                
scsi1 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
        <Adaptec aic7899 Ultra160 SCSI adapter>                 
        aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
                                                                
(scsi1:A:13): 160.000MB/s transfers (80.000MHz DT, offset 63, 16bit)
  Vendor: IBM       Model: GNHv1 S2          Rev: 0                 
  Type:   Processor                          ANSI SCSI revision: 02
  Vendor: IBM-ESXS  Model: ST318305LC    !#  Rev: B244             
  Type:   Direct-Access                      ANSI SCSI revision: 03
scsi1:A:13:0: Tagged Queuing enabled.  Depth 253                   
SCSI device sda: 35548320 512-byte hdwr sectors (18201 MB)
SCSI device sda: drive cache: write through               
 sda: sda1 sda2 sda3                       
Attached scsi disk sda at scsi1, channel 0, id 13, lun 0
Fusion MPT base driver 3.00.03                          
Copyright (c) 1999-2003 LSI Logic Corporation
Fusion MPT SCSI Host driver 3.00.03          
mice: PS/2 mouse device common for all mice
serio: i8042 AUX port at 0x60,0x64 irq 12  
input: ImPS/2 Generic Wheel Mouse on isa0060/serio1
serio: i8042 KBD port at 0x60,0x64 irq 1           
input: AT Translated Set 2 keyboard on isa0060/serio0
NET: Registered protocol family 2                    
IP: routing cache hash table of 8192 buckets, 64Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
ip_conntrack version 2.1 (8192 buckets, 65536 max) - 296 bytes per conntrack
NET: Registered protocol family 1                                           
NET: Registered protocol family 17
kjournald starting.  Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.      
Freeing unused kernel memory: 300k freed     

[-- Attachment #3: mm3-4g-tg3.broke.config --]
[-- Type: text/plain, Size: 21671 bytes --]

#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y

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

#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=17
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 is not set

#
# Processor type and features
#
# CONFIG_X86_PC is not set
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
CONFIG_X86_SUMMIT=y
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
CONFIG_ACPI_SRAT=y
CONFIG_X86_SUMMIT_NUMA=y
CONFIG_X86_CYCLONE_TIMER=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
CONFIG_MPENTIUM4=y
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_4G=y
CONFIG_X86_SWITCH_PAGETABLES=y
CONFIG_X86_4G_VM_LAYOUT=y
CONFIG_X86_UACCESS_INDIRECT=y
CONFIG_X86_HIGH_ENTRY=y
# CONFIG_HPET_TIMER is not set
# CONFIG_HPET_EMULATE_RTC is not set
CONFIG_SMP=y
CONFIG_NR_CPUS=32
# CONFIG_SCHED_SMT is not set
CONFIG_PREEMPT=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
# CONFIG_X86_MCE is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
# CONFIG_EDD is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_X86_PAE=y
CONFIG_NUMA=y
CONFIG_DISCONTIGMEM=y
CONFIG_HAVE_ARCH_BOOTMEM_NODE=y
# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
CONFIG_IRQBALANCE=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_BOOT_IOREMAP=y
# CONFIG_REGPARM is not set

#
# Power management options (ACPI, APM)
#
# CONFIG_PM is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_THERMAL is not set
CONFIG_ACPI_ASUS=y
CONFIG_ACPI_TOSHIBA=y
# 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
# CONFIG_ACPI_RELAXED_AML is not set
# CONFIG_X86_PM_TIMER is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

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

#
# PCMCIA/CardBus support
#
# CONFIG_PCMCIA is not set
CONFIG_PCMCIA_PROBE=y

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# Executable file formats
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
# CONFIG_BINFMT_MISC is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
# CONFIG_FW_LOADER is not set

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

#
# Parallel port support
#
# CONFIG_PARPORT is not set

#
# Plug and Play support
#
# CONFIG_PNP is not set

#
# Block devices
#
CONFIG_BLK_DEV_FD=y
# CONFIG_BLK_DEV_XD 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 is not set
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
# CONFIG_LBD is not set
# CONFIG_DCSSBLK is not set

#
# 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 is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
CONFIG_BLK_DEV_IDEFLOPPY=y
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_TASKFILE_IO=y

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_CMD640=y
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
# 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=y
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=y
CONFIG_BLK_DEV_ALI15X3=y
# CONFIG_WDC_ALI15X3 is not set
CONFIG_BLK_DEV_AMD74XX=y
CONFIG_BLK_DEV_CMD64X=y
# CONFIG_BLK_DEV_TRIFLEX is not set
CONFIG_BLK_DEV_CY82C693=y
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# 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=y
# CONFIG_BLK_DEV_SIIMAGE is not set
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_IDE_CHIPSETS is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_DMA_NONPCI is not set
# 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_MAX_SD_DISKS=256
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
# 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=y
CONFIG_SCSI_LOGGING=y

#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_7000FASST is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AHA152X is not set
# CONFIG_SCSI_AHA1542 is not set
# CONFIG_SCSI_AHA1740 is not set
# CONFIG_SCSI_AACRAID is not set
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
# CONFIG_AIC7XXX_PROBE_EISA_VL is not set
# CONFIG_AIC7XXX_BUILD_FIRMWARE is not set
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_IN2000 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_DTC3280 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_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
CONFIG_SCSI_IPS=y
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_NCR53C406A is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS 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_SIM710 is not set
# CONFIG_SCSI_SYM53C416 is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set

#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set

#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set

#
# Fusion MPT device support
#
CONFIG_FUSION=y
CONFIG_FUSION_BOOT=y
CONFIG_FUSION_MAX_SGE=40

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

#
# I2O device support
#
# CONFIG_I2O is not set

#
# Macintosh device drivers
#

#
# Networking support
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_NETLINK_DEV=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_INET_ECN=y
CONFIG_SYN_COOKIES=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set

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

#
# IP: Netfilter Configuration
#
# CONFIG_IP_NF_CONNTRACK is not set
# CONFIG_IP_NF_QUEUE is not set
# CONFIG_IP_NF_IPTABLES is not set
CONFIG_IP_NF_NAT_NEEDED=y
# CONFIG_IP_NF_ARPTABLES is not set
CONFIG_IP_NF_COMPAT_IPCHAINS=y

#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IPV6_SCTP__=y
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q 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=y
# CONFIG_NET_SCH_HTB is not set
# CONFIG_NET_SCH_HFSC is not set
CONFIG_NET_SCH_CSZ=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=y
CONFIG_NET_CLS_ROUTE4=y
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=y
CONFIG_NET_CLS_U32=y
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
CONFIG_NET_CLS_POLICE=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y

#
# ARCnet devices
#
# CONFIG_ARCNET is not set
CONFIG_DUMMY=y
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set

#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not set
# CONFIG_NET_ISA is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
CONFIG_ADAPTEC_STARFIRE=y
# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
# CONFIG_AC3200 is not set
# CONFIG_APRICOT is not set
CONFIG_B44=y
# CONFIG_FORCEDETH is not set
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
CONFIG_EEPRO100=y
# CONFIG_EEPRO100_PIO is not set
# CONFIG_E100 is not set
# CONFIG_LNE390 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_NE3210 is not set
# CONFIG_ES3210 is not set
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_TLAN is not set
# CONFIG_VIA_RHINE is not set
# CONFIG_NET_POCKET 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_SIS190 is not set
# CONFIG_SK98LIN is not set
CONFIG_TIGON3=y

#
# Ethernet (10000 Mbit)
#
# CONFIG_IXGB is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set

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

#
# Token Ring devices
#
# CONFIG_TR is not set
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set

#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set

#
# IrDA (infrared) support
#
# CONFIG_IRDA is not set

#
# Bluetooth support
#
# CONFIG_BT 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

#
# 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=y
# 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_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_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
# CONFIG_MOUSE_PC110PAD 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 is not set
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
# CONFIG_SERIAL_8250_MANY_PORTS is not set
# CONFIG_SERIAL_8250_SHARE_IRQ is not set
# 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_QIC02_TAPE is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

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

#
# Ftape, the floppy tape device driver
#
CONFIG_AGP=y
CONFIG_AGP_ALI=y
# CONFIG_AGP_ATI is not set
CONFIG_AGP_AMD=y
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=y
# CONFIG_AGP_NVIDIA is not set
CONFIG_AGP_SIS=y
CONFIG_AGP_SWORKS=y
CONFIG_AGP_VIA=y
# CONFIG_AGP_EFFICEON is not set
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HANGCHECK_TIMER is not set

#
# I2C support
#
# CONFIG_I2C 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

#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
# 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 is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not set
# CONFIG_QFMT_V2 is not set
CONFIG_QUOTACTL=y
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
# CONFIG_ZISOFS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
# CONFIG_MSDOS_FS is not set
CONFIG_VFAT_FS=y
# 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 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=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V4 is not set
# CONFIG_NFS_DIRECTIO is not set
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V4 is not set
# CONFIG_NFSD_TCP is not set
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=y
CONFIG_SUNRPC=y
# CONFIG_SUNRPC_GSS is not set
CONFIG_SMB_FS=y
# CONFIG_SMB_NLS_DEFAULT is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set

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

#
# Native Language Support
#
CONFIG_NLS=y
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=y
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 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=y
CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_IOVIRT is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_SPINLINE is not set
# CONFIG_DEBUG_HIGHMEM is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_LOCKMETER is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_KGDB is not set
# CONFIG_FRAME_POINTER is not set
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y

#
# Security options
#
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Library routines
#
CONFIG_CRC32=y
CONFIG_X86_SMP=y
CONFIG_X86_HT=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_X86_TRAMPOLINE=y
CONFIG_PC=y

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

* Re: 2.6.3-mm3
  2004-02-27 23:34 ` 2.6.3-mm3 john stultz
@ 2004-02-28  0:06   ` Andrew Morton
  2004-02-28  2:48     ` 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA) john stultz
  0 siblings, 1 reply; 73+ messages in thread
From: Andrew Morton @ 2004-02-28  0:06 UTC (permalink / raw)
  To: john stultz; +Cc: linux-kernel

john stultz <johnstul@us.ibm.com> wrote:
>
> When running -mm3 (plus the one-line fix to the expanded-pci-config
> patch) to on an x440  w/ 4G enabled, the tg3 driver cannot find my
> network card. 
> 
> When booting I get:
> tg3.c:v2.7 (February 17, 2004)                
> tg3: Cannot map device registers, aborting.
> tg3: probe of 0000:01:04.0 failed with error -12
> 
> Otherwise the system seems to come up fine. 
> 
> Disabling CONFIG_ACPI (or CONFIG_X86_4G) makes the problem go away.

Beats me.  Maybe acpi is returning some monstrous reosurce length and we're
running out of kernel virtual space only with the 4g split?

'twould be appreciated if you could stick a few printk's in there and work
out what's happening please.  Check out the pci space base address and
length with and without ACPI?

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

* Re: 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA)
  2004-02-28  0:06   ` 2.6.3-mm3 Andrew Morton
@ 2004-02-28  2:48     ` john stultz
  2004-02-28  3:18       ` Dave Hansen
  2004-02-28  4:34       ` Martin J. Bligh
  0 siblings, 2 replies; 73+ messages in thread
From: john stultz @ 2004-02-28  2:48 UTC (permalink / raw)
  To: Andrew Morton; +Cc: lkml, Martin J. Bligh

On Fri, 2004-02-27 at 16:06, Andrew Morton wrote:
> john stultz <johnstul@us.ibm.com> wrote:
> >
> > When running -mm3 (plus the one-line fix to the expanded-pci-config
> > patch) to on an x440  w/ 4G enabled, the tg3 driver cannot find my
> > network card. 
> > 
> > When booting I get:
> > tg3.c:v2.7 (February 17, 2004)                
> > tg3: Cannot map device registers, aborting.
> > tg3: probe of 0000:01:04.0 failed with error -12
> > 
> > Otherwise the system seems to come up fine. 
> > 
> > Disabling CONFIG_ACPI (or CONFIG_X86_4G) makes the problem go away.
> 
> Beats me.  Maybe acpi is returning some monstrous reosurce length and we're
> running out of kernel virtual space only with the 4g split?
> 
> 'twould be appreciated if you could stick a few printk's in there and work
> out what's happening please.  Check out the pci space base address and
> length with and without ACPI?

The base address and length are the same either way, instead its
__ioremap that's failing at "if(!PageReserved(page))"[ioremap.c:142].

I've also narrowed down the issue to only occur w/ (CONFIG_X86_4G=y &&
CONFIG_NUMA=y) so it looks like its a propblem w/ 4G and discontigmem
together. 

I've also finally moved to -mm4 and reproduced the problem there.

Martin: Any ideas?

-john


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

* Re: 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA)
  2004-02-28  2:48     ` 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA) john stultz
@ 2004-02-28  3:18       ` Dave Hansen
  2004-02-28  4:34       ` Martin J. Bligh
  1 sibling, 0 replies; 73+ messages in thread
From: Dave Hansen @ 2004-02-28  3:18 UTC (permalink / raw)
  To: John Stultz; +Cc: Andrew Morton, lkml

On Fri, 2004-02-27 at 18:48, john stultz wrote:
> On Fri, 2004-02-27 at 16:06, Andrew Morton wrote:
> > john stultz <johnstul@us.ibm.com> wrote:
> > >
> > > When running -mm3 (plus the one-line fix to the expanded-pci-config
> > > patch) to on an x440  w/ 4G enabled, the tg3 driver cannot find my
> > > network card. 
> > > 
> > > When booting I get:
> > > tg3.c:v2.7 (February 17, 2004)                
> > > tg3: Cannot map device registers, aborting.
> > > tg3: probe of 0000:01:04.0 failed with error -12
> > > 
> > > Otherwise the system seems to come up fine. 
> > > 
> > > Disabling CONFIG_ACPI (or CONFIG_X86_4G) makes the problem go away.
> > 
> > Beats me.  Maybe acpi is returning some monstrous reosurce length and we're
> > running out of kernel virtual space only with the 4g split?
> > 
> > 'twould be appreciated if you could stick a few printk's in there and work
> > out what's happening please.  Check out the pci space base address and
> > length with and without ACPI?
> 
> The base address and length are the same either way, instead its
> __ioremap that's failing at "if(!PageReserved(page))"[ioremap.c:142].
> 
> I've also narrowed down the issue to only occur w/ (CONFIG_X86_4G=y &&
> CONFIG_NUMA=y) so it looks like its a propblem w/ 4G and discontigmem
> together. 
> 
> I've also finally moved to -mm4 and reproduced the problem there.

Can you dump out all of the variables in the 
	if (phys_addr < virt_to_phys(high_memory)) {
	...
statement, plus the arguments that ioremap() is getting?

Evidently, it's OK if highmem pages aren't PageReserved(), and I'm
starting to wonder if you've done something rare, like spanned the
highmem boundary with your ioremap().  

We do some weird stuff with that highmem boundary when NUMA is on,
because we remap a bunch of mem_map[] in that area to get it local on
NUMA nodes which might be causing something unexpected.  Take a look and
see if any of the variables that __ioremap() is using correspond to
those that remap_numa_kva() is playing with (from your boot log):
node 0 will remap to vaddr f8000000 - f8000000
node 1 will remap to vaddr f5600000 - f8000000
High memory starts at vaddr f8000000    

It's just a guess.  

-- dave


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

* Re: 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA)
  2004-02-28  2:48     ` 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA) john stultz
  2004-02-28  3:18       ` Dave Hansen
@ 2004-02-28  4:34       ` Martin J. Bligh
  1 sibling, 0 replies; 73+ messages in thread
From: Martin J. Bligh @ 2004-02-28  4:34 UTC (permalink / raw)
  To: john stultz, Andrew Morton; +Cc: lkml

> On Fri, 2004-02-27 at 16:06, Andrew Morton wrote:
>> john stultz <johnstul@us.ibm.com> wrote:
>> > 
>> > When running -mm3 (plus the one-line fix to the expanded-pci-config
>> > patch) to on an x440  w/ 4G enabled, the tg3 driver cannot find my
>> > network card. 
>> > 
>> > When booting I get:
>> > tg3.c:v2.7 (February 17, 2004)                
>> > tg3: Cannot map device registers, aborting.
>> > tg3: probe of 0000:01:04.0 failed with error -12
>> > 
>> > Otherwise the system seems to come up fine. 
>> > 
>> > Disabling CONFIG_ACPI (or CONFIG_X86_4G) makes the problem go away.
>> 
>> Beats me.  Maybe acpi is returning some monstrous reosurce length and we're
>> running out of kernel virtual space only with the 4g split?
>> 
>> 'twould be appreciated if you could stick a few printk's in there and work
>> out what's happening please.  Check out the pci space base address and
>> length with and without ACPI?
> 
> The base address and length are the same either way, instead its
> __ioremap that's failing at "if(!PageReserved(page))"[ioremap.c:142].
> 
> I've also narrowed down the issue to only occur w/ (CONFIG_X86_4G=y &&
> CONFIG_NUMA=y) so it looks like its a propblem w/ 4G and discontigmem
> together. 
> 
> I've also finally moved to -mm4 and reproduced the problem there.
> 
> Martin: Any ideas?

Darren and I worked out that CONFIG_SCHED_SMT seems to be causing problems
in -mjb at least ... you might try turning that off for -mm, and see if 
that helps. Meanwhile, I'll try seeing if any of the updated sched stuff
in -mm works for me ;-)

M.


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

end of thread, other threads:[~2004-02-28  4:34 UTC | newest]

Thread overview: 73+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-02-23  1:22 2.6.3-mm3 Andrew Morton
2004-02-23  1:43 ` 2.6.3-mm3 Nick Piggin
2004-02-23  1:55   ` 2.6.3-mm3 Andrew Morton
2004-02-23  2:02     ` 2.6.3-mm3 Nick Piggin
2004-02-23  2:51     ` 2.6.3-mm3 Nick Piggin
2004-02-23  3:04       ` 2.6.3-mm3 Nick Piggin
2004-02-23  8:08         ` 2.6.3-mm3 Nick Piggin
2004-02-23  8:48           ` [PATCH] vm-fix-all_zones_ok (was Re: 2.6.3-mm3) Nick Piggin
2004-02-23  8:59             ` Andrew Morton
2004-02-23  9:21               ` Nick Piggin
2004-02-23  9:24                 ` Andrew Morton
2004-02-23 16:23                 ` Bill Davidsen
2004-02-23 22:47               ` Chris Wedgwood
2004-02-24  4:11                 ` Nick Piggin
2004-02-24  9:12                   ` Chris Wedgwood
2004-02-24  9:22                     ` Andrew Morton
2004-02-24  9:30                       ` Chris Wedgwood
2004-02-24  9:37                         ` Andrew Morton
2004-02-24 20:55                       ` Rik van Riel
2004-02-24 22:36                         ` Andrew Morton
2004-02-24 22:41                           ` Rik van Riel
2004-02-23  2:19 ` 2.6.3-mm3 Christoph Hellwig
2004-02-23  2:52 ` 2.6.3-mm3 Joshua Kwan
2004-02-23  3:34 ` 2.6.3-mm3 Joshua Kwan
2004-02-23 18:09 ` [patch] 2.6.3-mm3: ALSA miXart driver doesn't compile Adrian Bunk
2004-02-23 18:58 ` 2.6.3-mm3 (compile stats) John Cherry
2004-02-23 20:00   ` Sam Ravnborg
2004-02-24 22:22 ` 2.6.3-mm3 Mike Fedyk
2004-02-24 22:30   ` 2.6.3-mm3 Andrew Morton
2004-02-25 21:27     ` 2.6.3-mm3 Mike Fedyk
2004-02-26  1:06       ` 2.6.3-mm3 Nick Piggin
2004-02-26  1:18         ` 2.6.3-mm3 Marc-Christian Petersen
2004-02-26  1:28           ` 2.6.3-mm3 Mike Fedyk
2004-02-26  1:32         ` 2.6.3-mm3 Mike Fedyk
2004-02-26  1:52           ` 2.6.3-mm3 Nick Piggin
2004-02-26  2:34             ` 2.6.3-mm3 Mike Fedyk
2004-02-26  2:40               ` 2.6.3-mm3 Nick Piggin
2004-02-26  2:48                 ` 2.6.3-mm3 Mike Fedyk
2004-02-26  3:05                   ` 2.6.3-mm3 Nick Piggin
2004-02-26  3:19                     ` 2.6.3-mm3 Mike Fedyk
2004-02-26  3:29                       ` 2.6.3-mm3 Nick Piggin
2004-02-26  4:08                         ` 2.6.3-mm3 Mike Fedyk
2004-02-26  4:56             ` 2.6.3-mm3 Mike Fedyk
2004-02-27 19:02               ` 2.6.3-mm3 Mike Fedyk
2004-02-27 21:57                 ` 2.6.3-mm3 Nick Piggin
2004-02-25  0:26 ` 2.6.3-mm3 hangs on boot x440 (scsi?) john stultz
2004-02-25  1:06   ` Andrew Morton
2004-02-25  1:22     ` john stultz
2004-02-25  1:27       ` john stultz
2004-02-25  1:48       ` Andrew Morton
2004-02-25 22:15         ` john stultz
2004-02-26 14:40     ` Go Taniguchi
2004-02-26 21:26       ` john stultz
2004-02-26 23:02         ` john stultz
2004-02-26 23:15           ` Matthew Wilcox
2004-02-27  0:14             ` john stultz
2004-02-27  0:58               ` john stultz
2004-02-27  2:25             ` john stultz
2004-02-25  1:15 ` [PATCH 2.6.3-mm3] serialize_writeback_fdatawait patch Daniel McNeil
2004-02-25  1:43   ` Andrew Morton
2004-02-25 22:56     ` Daniel McNeil
2004-02-25  2:51 ` 2.6.3-mm3 Mike Fedyk
2004-02-25  3:09   ` 2.6.3-mm3 Andrew Morton
2004-02-25  3:34     ` 2.6.3-mm3 Mike Fedyk
2004-02-25 10:47 ` 2.6.3-mm3 sometimes freeze on "sync" Helge Hafting
2004-02-25  9:39   ` Andrew Morton
2004-02-26  8:49     ` Helge Hafting
2004-02-27 14:49       ` Alexander Hoogerhuis
2004-02-27 23:34 ` 2.6.3-mm3 john stultz
2004-02-28  0:06   ` 2.6.3-mm3 Andrew Morton
2004-02-28  2:48     ` 2.6.3-mm3 (ioremap failure w/ _X86_4G and _NUMA) john stultz
2004-02-28  3:18       ` Dave Hansen
2004-02-28  4:34       ` Martin J. Bligh

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.