linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* 2.6.0-test9-mm2
@ 2003-11-05  6:55 Andrew Morton
  2003-11-05 12:30 ` 2.6.0-test9-mm2 Alexander Hoogerhuis
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Andrew Morton @ 2003-11-05  6:55 UTC (permalink / raw)
  To: linux-kernel, linux-mm


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


- Various random fixes.  Maybe about half of these are 2.6.0-worthy.

- Some improvements to the anticipatory IO scheduler and more readahead
  tweaks should help some of those database benchmarks.

  The anticipatory scheduler is still a bit behind the deadline scheduler
  in these random seeky loads - it most likely always will be.

- "A new driver for the ethernet interface of the NVIDIA nForce chipset,
  licensed under GPL."

  Testing of this would be appreciated.  Send any reports to linux-kernel
  or netdev@oss.sgi.com and Manfred will scoop them up, thanks.


- I shall be offline for a couple of days.




Changes since 2.6.0-test9-mm1:


 linus.patch

 Latest Linus tree

-might_sleep-suppression.patch

 Dropped - Linus fixed the vm86 might_sleep() warning for real.

+as-badness-warning-fix.patch
+as-request-poisoning.patch
+as-new-process-estimation.patch
+as-cooperative-thinktime.patch

 Anticipatory scheduler performance work.

+scale-nr_requests.patch

 Increase the initial disk request queue size if the disk is using deep Tag
 Command Queueing.

+local_bh_enable-warning-fix.patch

 Fiddle with the debug warnings in local_bh_enable()

+ohci-locking-fix.patch

 Partially address some USB locking problems.

+disable-ide-tcq.patch

 Disable IDE TCQ in config.  It's not working right yet.

+request-module-char-dev-fix.patch

 Fix autoloading of the loop driver module.

+loop-remove-blkdev-special-case.patch

 Loop driver rework: treat block-backed loop in an identical manner to
 file-backed loop.

+loop-highmem.patch
+loop-highmem-fixes.patch

 Switch the loop<->cryptolooop interface to use page/offset rather than
 kmap+virtaddr.

+via-quirk-fix.patch

 VIA oops fix

+cdc-acm-softirq-rx.patch

 USB locking fix

+forcedeth.patch

 nForce ethernet driver

+raid1-recovery-fix.patch

 Fix RAID1 recovery.

+journal_remove_journal_head-assertion-fix.patch

 Fix and ext3 assertion failure.

+x86_64-tss-limit-fix.patch

 x86_64 fix

+reiserfs-pinned-buffer-fix.patch

 reiserfs pinned buffer fix

+proc-pid-maps-output-fix.patch

 Fix /proc/pid/maps display for deleted files (needs work)

+atomic_dec-debug.patch

 "Verifies that all "atomic_dec_and_test()" users never see a negative value
 (which would be bad)."

+sis900-pm-support.patch

 Power management support for sis900 driver

+drm-agp-module-dependency-fix.patch

 Maybe fix DRM<->AGP module dependencies so things autoload nicely.

+8139too-locking-fix.patch

 Fiddle with 8139too locking.

+ia32-wp-test-cleanup.patch

 Simplify the ia32 WP bug detection code.

+hugetlb-needs-pse.patch

 Disable hugetlbfs if the CPU doesn't support large pages.

+powermate-payload-size-fix.patch

 Fix the powermate driver for newer devices.

+4g4g-KERNEL_DS-usercopy-fix.patch

 Fix for the 4G/4G split patch.

+readahead-simplification.patch

 Readahead performance fix.





All 192 patches

linus.patch

mm.patch
  add -mmN to EXTRAVERSION

kgdb-ga.patch
  kgdb stub for ia32 (George Anzinger's one)
  kgdbL warning fix

kgdb-buff-too-big.patch
  kgdb buffer overflow fix

kgdb-warning-fix.patch
  kgdbL warning fix

kgdb-build-fix.patch

kgdb-spinlock-fix.patch

kgdb-fix-debug-info.patch
  kgdb: CONFIG_DEBUG_INFO fix

kgdb-cpumask_t.patch

kgdb-x86_64-fixes.patch
  x86_64 fixes

kgdb-over-ethernet.patch
  kgdb-over-ethernet patch

kgdb-over-ethernet-fixes.patch
  kgdb-over-ethernet fixlets

kgdb-CONFIG_NET_POLL_CONTROLLER.patch
  kgdb: replace CONFIG_KGDB with CONFIG_NET_RX_POLL in net drivers

kgdb-handle-stopped-NICs.patch
  kgdb: handle netif_stopped NICs

eepro100-poll-controller.patch

tlan-poll_controller.patch

tulip-poll_controller.patch

tg3-poll_controller.patch
  kgdb: tg3 poll_controller

8139too-poll_controller.patch
  8139too poll controller

kgdb-eth-smp-fix.patch
  kgdb-over-ethernet: fix SMP

kgdb-eth-reattach.patch

kgdb-skb_reserve-fix.patch
  kgdb-over-ethernet: skb_reserve() fix

must-fix.patch

should-fix.patch

must-fix-update-01.patch
  must fix lists update

RD1-cdrom_ioctl-B6.patch

RD2-ioctl-B6.patch

RD2-ioctl-B6-fix.patch
  RD2-ioctl-B6 fixes

RD3-cdrom_open-B6.patch

RD4-open-B6.patch

RD5-cdrom_release-B6.patch

RD6-release-B6.patch

RD7-presto_journal_close-B6.patch

RD8-f_mapping-B6.patch

RD9-f_mapping2-B6.patch

RD10-i_sem-B6.patch

RD11-f_mapping3-B6.patch

RD12-generic_osync_inode-B6.patch

RD13-bd_acquire-B6.patch

RD14-generic_write_checks-B6.patch

RD15-I_BDEV-B6.patch

RD16-rest-B6.patch

invalidate_inodes-speedup.patch
  invalidate_inodes speedup

invalidate_inodes-speedup-fixes-2.patch
  more invalidate_inodes speedup fixes

serio-01-renaming.patch
  serio: rename serio_[un]register_slave_port to __serio_[un]register_port

serio-02-race-fix.patch
  serio: possible race between port removal and kseriod

serio-03-blacklist.patch
  Add black list to handler<->device matching

serio-04-synaptics-cleanup.patch
  Synaptics: code cleanup

serio-05-reconnect-facility.patch
  serio: reconnect facility

serio-06-synaptics-use-reconnect.patch
  Synaptics: use serio_reconnect

acpi_off-fix.patch
  fix acpi=off

cfq-4.patch
  CFQ io scheduler
  CFQ fixes

config_spinline.patch
  uninline spinlocks for profiling accuracy.

ppc64-bar-0-fix.patch
  Allow PCI BARs that start at 0

ppc64-reloc_hide.patch

sym-do-160.patch
  make the SYM driver do 160 MB/sec

input-use-after-free-checks.patch
  input layer debug checks

aic7xxx-parallel-build-fix.patch
  fix parallel builds for aic7xxx

ramdisk-cleanup.patch

intel8x0-cleanup.patch
  intel8x0 cleanups

pdflush-diag.patch

kobject-oops-fixes.patch
  fix oopses is kobject parent is removed before child

futex-uninlinings.patch
  futex uninlining

zap_page_range-debug.patch
  zap_page_range() debug

call_usermodehelper-retval-fix-3.patch
  Make call_usermodehelper report exit status

asus-L5-fix.patch
  Asus L5 framebuffer fix

jffs-use-daemonize.patch

tulip-NAPI-support.patch
  tulip NAPI support

tulip-napi-disable.patch
  tulip NAPI: disable poll in close

get_user_pages-handle-VM_IO.patch

ia32-MSI-support.patch
  Updated ia32 MSI Patches

ia32-MSI-support-tweaks.patch

ia32-efi-support.patch
  EFI support for ia32

ia32-efi-asm-warning-fix.patch
  efi warning fix

ia32-efi-support-mem-equals-fix.patch

CONFIG_ACPI_EFI-defaults-off.patch

ia32-efi-support-warning-fixes.patch

ia32-efi-support-tidy.patch

ia32-efi-other-arch-fix.patch
  fix EFI for ppc64, ia64

efi-constant-sizing-fix.patch
  efi: warning fixes

ia32-efi-config-option.patch
  ia32 EFI: Add CONFIG_EFI

ia32-efi-config-option-tweaks.patch

ia32-efi-config-help-update.patch
  efi: Update Kconfig help

ia64-CONFIG_EFI-update.patch
  efi update patch (ia64)

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

SGI-IOC4-IDE-chipset-support.patch
  Add support for SGI's IOC4 chipset

sparc32-sched_clock.patch

pcibios_test_irq-fix.patch
  Fix pcibios test IRQ handler return

fixmap-in-proc-pid-maps.patch
  report user-readable fixmap area in /proc/PID/maps

i82365-sysfs-ordering-fix.patch
  Fix init_i82365 sysfs ordering oops

pci_set_power_state-might-sleep.patch

compat_ioctl-cleanup.patch
  cleanup of compat_ioctl functions

fix-sqrt.patch
  sqrt() fixes

scale-min_free_kbytes.patch
  scale the initial value of min_free_kbytes

cdrom-allocation-try-harder.patch
  Use __GFP_REPEAT for cdrom buffer

sym-2.1.18f.patch

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

extra-buffer-diags.patch

nosysfs.patch

constant_test_bit-doesnt-like-zwanes-gcc.patch
  gcc bug workaround for constant_test_bit()

slab-leak-detector.patch
  slab leak detector

early-serial-registration-fix.patch
  serial console registration bugfix

3c527-smp-update.patch
  SMP support on 3c527 net driver

3c527-race-fix.patch

ext3-latency-fix.patch
  ext3 scheduling latency fix

videobuf_waiton-race-fix.patch

firmware-kernel_thread-on-demand.patch
  Remove workqueue usage from request_firmware_async()

loop-autoloading-fix.patch
  Fix loop module auto loading

loop-module-alias.patch
  loop needs MODULE_ALIAS_BLOCK

cmpci-set_fs-fix.patch
  cmpci.c: remove pointless set_fs()

dentry-bloat-fix-2.patch
  Fix dcache and icache bloat with deep directories

nls-config-fixes.patch
  NSL config fixes

proc_pid_lookup-vs-exit-race-fix.patch
  Fix proc_pid_lookup vs exit race

gcc-Os-if-embedded.patch
  Add `gcc -Os' config option

gcc-Os-if-embedded-better-help.patch

aic7xxx-sleep-in-spinlock-fix.patch

ia64-ia32-missing-compat-syscalls.patch
  From: Arun Sharma <arun.sharma@intel.com>
  Subject: Missing compat syscalls in ia64

vm86-sysenter-fix.patch
  Fix sysenter disabling in vm86 mode

gettimeofday-resolution-fix.patch
  gettimeofday resolution fix

refill_counter-overflow-fix.patch
  vmscan: reset refill_counter after refilling the inactive list

verbose-timesource.patch
  be verbose about the time source

as-badness-warning-fix.patch
  AS: handle non-block requests

as-regression-fix.patch
  Fix IO scheduler regression

as-request-poisoning.patch
  AS: request poisoning

as-new-process-estimation.patch
  AS: new process estimation

as-cooperative-thinktime.patch
  AS: thinktime improvement

scale-nr_requests.patch
  scale nr_requests with TCQ depth

3c509-mca-fix.patch
  3c509 MCA compile fix

truncate_inode_pages-check.patch

ext2-allocation-fix.patch
  ext2 block allocation race fix

local_bh_enable-warning-fix.patch

ohci-locking-fix.patch

disable-ide-tcq.patch
  Disable IDE Tagged Command Queueing

request-module-char-dev-fix.patch
  MODULE_ALIAS patch for ALSA

loop-remove-blkdev-special-case.patch

loop-highmem.patch
  remove useless highmem bounce from loop/cryptoloop

loop-highmem-fixes.patch

via-quirk-fix.patch
  Fix oops in quirk_via_bridge

cdc-acm-softirq-rx.patch
  cdc-acm: move rx processing to softirq

forcedeth.patch
  forcedeth: nForce ethernet driver

raid1-recovery-fix.patch
  Fix RAID1 recovery

journal_remove_journal_head-assertion-fix.patch
  JBD: fix assertion failure

x86_64-tss-limit-fix.patch
  Fix TSS limit on x86-64

reiserfs-pinned-buffer-fix.patch
  reiserfs pinned buffer fix

proc-pid-maps-output-fix.patch
  Restore /proc/pid/maps formatting

atomic_dec-debug.patch
  atomic_dec debug

sis900-pm-support.patch
  Add PM support to sis900 network driver

drm-agp-module-dependency-fix.patch
  DRM/AGP module dependency fix

8139too-locking-fix.patch
  8139too locking fix

ia32-wp-test-cleanup.patch
  ia32 WP test cleanup

hugetlb-needs-pse.patch
  ia32: hugetlb needs pse

powermate-payload-size-fix.patch
  Griffin Powermate fix

keyboard-repeat-rate-setting-fix.patch
  keyboard repeat rate setting fix

list_del-debug.patch
  list_del debug check

print-build-options-on-oops.patch

show_task-free-stack-fix.patch
  show_task() fix and cleanup

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

lockmeter.patch

printk-oops-mangle-fix.patch
  disentangle printk's whilst oopsing on SMP

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

4g4g-athlon-prefetch-handling-fix.patch

4g4g-wp-test-fix.patch
  Fix 4G/4G and WP test lockup

4g4g-KERNEL_DS-usercopy-fix.patch
  4G/4G KERNEL_DS usercopy again

ppc-fixes.patch
  make mm4 compile on ppc

aic7xxx_old-oops-fix.patch

O_DIRECT-race-fixes-rollup.patch
  DIO fixes forward port and AIO-DIO fix
  O_DIRECT race fixes comments
  O_DRIECT race fixes fix fix fix
  DIO locking rework

O_DIRECT-race-fixes-rework-XFS-fix.patch
  O_DIRECT XFS fix

O_DIRECT-race-fixes-rework-XFS-fix-fix.patch

readahead-multiple-fixes.patch
  readahead: multipole performance fixes

readahead-simplification.patch
  readahead simplification

aio-sysctl-parms.patch
  aio sysctl parms

aio-01-retry.patch
  AIO: Core retry infrastructure
  Fix aio process hang on EINVAL
  AIO: flush workqueues before destroying ioctx'es
  AIO: hold the context lock across unuse_mm
  task task_lock in use_mm()

4g4g-aio-hang-fix.patch
  Fix AIO and 4G-4G hang

aio-refcounting-fix.patch
  aio ref count in io_submit_one

aio-retry-elevated-refcount.patch
  aio: extra ref count during retry

aio-splice-runlist.patch
  Splice AIO runlist for fairer handling of multiple io contexts

aio-02-lockpage_wq.patch
  AIO: Async page wait

aio-03-fs_read.patch
  AIO: Filesystem aio read

aio-04-buffer_wq.patch
  AIO: Async buffer wait
  lock_buffer_wq fix

aio-05-fs_write.patch
  AIO: Filesystem aio write

aio-06-bread_wq.patch
  AIO: Async block read

aio-07-ext2getblk_wq.patch
  AIO: Async get block for ext2

O_SYNC-speedup-2.patch
  speed up O_SYNC writes

O_SYNC-speedup-2-f_mapping-fixes.patch

aio-09-o_sync.patch
  aio O_SYNC
  AIO: fix a BUG
  Unify o_sync changes for aio and regular writes
  aio-O_SYNC-fix bits got lost
  aio: writev nr_segs fix
  More AIO O_SYNC related fixes

aio-09-o_sync-f_mapping-fixes.patch

gang_lookup_next.patch
  Change the page gang lookup API

aio-gang_lookup-fix.patch
  AIO gang lookup fixes

aio-O_SYNC-short-write-fix.patch
  Fix for O_SYNC short writes

aio-12-readahead.patch
  AIO: readahead fixes
  aio O_DIRECT no readahead
  Unified page range readahead for aio and regular reads

aio-12-readahead-f_mapping-fix.patch

aio-readahead-speedup.patch
  Readahead issues and AIO read speedup




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

* Re: 2.6.0-test9-mm2
  2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
@ 2003-11-05 12:30 ` Alexander Hoogerhuis
  2003-11-05 16:10 ` 2.6.0-test9-mm2 (compile stats) John Cherry
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 15+ messages in thread
From: Alexander Hoogerhuis @ 2003-11-05 12:30 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-mm

Andrew Morton <akpm@osdl.org> writes:
>
> [SNIP]
>

FWIW, it compiles nicely, runs nicely and as with -mm1, I haven't
really found problems I can't blame myself for (seems to go bonk from
time to time with vmware modules, likewise with the orinoco-usb
driver, but without those it is very nice :)

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

* Re: 2.6.0-test9-mm2 (compile stats)
  2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
  2003-11-05 12:30 ` 2.6.0-test9-mm2 Alexander Hoogerhuis
@ 2003-11-05 16:10 ` John Cherry
  2003-11-05 17:02 ` 2.6.0-test9-mm2 Alistair John Strachan
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 15+ messages in thread
From: John Cherry @ 2003-11-05 16:10 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-mm

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.0-test9-mm2    0w/0e     0w/0e   172w/ 0e  12w/0e   3w/0e    211w/1e
2.6.0-test9-mm1    0w/0e     0w/0e   179w/ 1e  12w/0e   3w/0e    213w/1e
2.6.0-test8-mm1    0w/0e     0w/0e   183w/ 1e  13w/0e   3w/0e    223w/1e
2.6.0-test7-mm1    0w/0e     1w/0e   176w/ 1e   9w/0e   3w/0e    231w/1e
2.6.0-test6-mm4    0w/0e     1w/0e   179w/ 1e   9w/0e   3w/0e    234w/1e
2.6.0-test6-mm3    0w/0e     1w/0e   178w/ 1e   9w/0e   3w/0e    252w/2e
2.6.0-test6-mm2    0w/0e     1w/0e   179w/ 1e   9w/0e   3w/0e    252w/2e
2.6.0-test6-mm1    0w/0e     1w/0e   179w/ 1e   9w/0e   3w/0e    252w/2e

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

Version information for host [ cherrypit.pdx.osdl.net ]
 gcc:    3.2.2
 patch:  2.5.4

Kernel version: 2.6.0-test9-mm2
Kernel build: 
   Making bzImage (defconfig): 0 warnings, 0 errors
   Making modules (defconfig): 0 warnings, 0 errors
   Making bzImage (allnoconfig): 0 warnings, 0 errors
   Making bzImage (allyesconfig): 172 warnings, 0 errors
   Making modules (allyesconfig): 12 warnings, 0 errors
   Making bzImage (allmodconfig): 3 warnings, 0 errors
   Making modules (allmodconfig): 211 warnings, 0 errors

Building directories:
   Building fs/adfs: clean
   Building fs/affs: clean
   Building fs/afs: clean
   Building fs/autofs: clean
   Building fs/autofs4: clean
   Building fs/befs: clean
   Building fs/bfs: clean
   Building fs/cifs: clean
   Building fs/coda: clean
   Building fs/cramfs: clean
   Building fs/devfs: clean
   Building fs/devpts: clean
   Building fs/efs: clean
   Building fs/exportfs: clean
   Building fs/ext2: clean
   Building fs/ext3: clean
   Building fs/fat: clean
   Building fs/freevxfs: clean
   Building fs/hfs: clean
   Building fs/hpfs: clean
   Building fs/hugetlbfs: clean
   Building fs/intermezzo: clean
   Building fs/isofs: clean
   Building fs/jbd: clean
   Building fs/jffs: clean
   Building fs/jffs2: clean
   Building fs/jfs: clean
   Building fs/lockd: clean
   Building fs/minix: clean
   Building fs/msdos: clean
   Building fs/ncpfs: clean
   Building fs/nfs: clean
   Building fs/nfsd: clean
   Building fs/nls: clean
   Building fs/ntfs: clean
   Building fs/partitions: clean
   Building fs/proc: clean
   Building fs/qnx4: clean
   Building fs/ramfs: clean
   Building fs/reiserfs: clean
   Building fs/romfs: clean
   Building fs/smbfs: clean
   Building fs/sysfs: clean
   Building fs/sysv: clean
   Building fs/udf: clean
   Building fs/ufs: clean
   Building fs/vfat: clean
   Building fs/xfs: clean
   Building drivers/i2c: clean
   Building drivers/net: 31 warnings, 0 errors
   Building drivers/media: 1 warnings, 0 errors
   Building drivers/base: clean
   Building drivers/pci: clean
   Building drivers/eisa: clean
   Building drivers/isdn: clean
   Building drivers/char: 1 warnings, 0 errors
   Building drivers/acpi: clean
   Building drivers/serial: 1 warnings, 0 errors
   Building drivers/fc4: clean
   Building drivers/parport: clean
   Building drivers/mtd: 23 warnings, 0 errors
   Building drivers/usb: clean
   Building drivers/block: 1 warnings, 0 errors
   Building drivers/pcmcia: 3 warnings, 0 errors
   Building drivers/input: clean
   Building drivers/atm: clean
   Building drivers/ide: 30 warnings, 0 errors
   Building drivers/pnp: clean
   Building drivers/oprofile: clean
   Building drivers/ieee1394: clean
   Building drivers/cdrom: 3 warnings, 0 errors
   Building drivers/md: clean
   Building drivers/message: 1 warnings, 0 errors
   Building drivers/cpufreq: clean
   Building drivers/sbus: clean
   Building drivers/bluetooth: clean
   Building drivers/telephony: 5 warnings, 0 errors
   Building drivers/zorro: clean
   Building drivers/acorn: clean
   Building drivers/tc: clean
   Building drivers/mca: clean
   Building drivers/nubus: clean
   Building drivers/misc: clean
   Building drivers/dio: clean
   Building drivers/scsi/aacraid: clean
   Building drivers/scsi/aic7xxx: clean
   Building drivers/scsi/pcmcia: 4 warnings, 0 errors
   Building drivers/scsi/sym53c8xx_2: clean
   Building drivers/video/aty: 3 warnings, 0 errors
   Building drivers/video/console: 2 warnings, 0 errors
   Building drivers/video/i810: clean
   Building drivers/video/logo: clean
   Building drivers/video/matrox: 5 warnings, 0 errors
   Building drivers/video/riva: clean
   Building drivers/video/sis: 1 warnings, 0 errors
   Building sound/core: clean
   Building sound/drivers: clean
   Building sound/i2c: clean
   Building sound/isa: 3 warnings, 0 errors
   Building sound/oss: 33 warnings, 0 errors
   Building sound/pci: clean
   Building sound/pcmcia: clean
   Building sound/synth: clean
   Building sound/usb: clean
   Building arch/i386: clean
   Building crypto: clean
   Building lib: clean
   Building net: 9 warnings, 0 errors
   Building security: clean
   Building sound: clean
   Building usr: clean
   Building fs: clean
   Building drivers/video: 8 warnings, 0 errors
   Building drivers/scsi: 44 warnings, 0 errors
   Building drivers/net: 0 warnings, 1 errors


Error Summary (individual module builds):

   drivers/net: 0 warnings, 1 errors


Warning Summary (individual module builds):

   drivers/block: 1 warnings, 0 errors
   drivers/cdrom: 3 warnings, 0 errors
   drivers/char: 1 warnings, 0 errors
   drivers/ide: 30 warnings, 0 errors
   drivers/media: 1 warnings, 0 errors
   drivers/message: 1 warnings, 0 errors
   drivers/mtd: 23 warnings, 0 errors
   drivers/net: 31 warnings, 0 errors
   drivers/pcmcia: 3 warnings, 0 errors
   drivers/scsi/pcmcia: 4 warnings, 0 errors
   drivers/scsi: 44 warnings, 0 errors
   drivers/serial: 1 warnings, 0 errors
   drivers/telephony: 5 warnings, 0 errors
   drivers/video/aty: 3 warnings, 0 errors
   drivers/video/console: 2 warnings, 0 errors
   drivers/video/matrox: 5 warnings, 0 errors
   drivers/video/sis: 1 warnings, 0 errors
   drivers/video: 8 warnings, 0 errors
   net: 9 warnings, 0 errors
   sound/isa: 3 warnings, 0 errors
   sound/oss: 33 warnings, 0 errors


Error List:

make[1]: [arch/i386/boot/bzImage] Error 1 (ignored)
make[2]: [drivers/net/wan/wanxlfw.inc] Error 127 (ignored)


Warning List:

arch/i386/kernel/cpu/cpufreq/powernow-k8.c:38:2: warning: #warning this
driver has not been tested on a preempt system
arch/i386/kernel/cpu/cpufreq/powernow-k8.c:938:2: warning: #warning
pol->policy is in undefined state here
drivers/cdrom/aztcd.c:379: warning: `pa_ok' defined but not used
drivers/cdrom/isp16.c:124: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/cdrom/mcdx.h:180:2: warning: #warning You have not edited mcdx.h
drivers/cdrom/mcdx.h:181:2: warning: #warning Perhaps irq and i/o
settings are wrong.
drivers/cdrom/sjcd.c:1700: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/char/applicom.c:522:2: warning: #warning "Je suis stupide. DW. -
copy*user in cli"
drivers/char/applicom.c:67: warning: `applicom_pci_tbl' defined but not
used
drivers/char/watchdog/alim1535_wdt.c:320: warning: `ali_pci_tbl' defined
but not used
drivers/ide/ide-probe.c:1326: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/ide-probe.c:1353: warning: `MOD_DEC_USE_COUNT' is deprecated
(declared at include/linux/module.h:494)
drivers/ide/ide-tape.c:6213: warning: duplicate `const'
drivers/ide/ide.c:2470: warning: implicit declaration of function
`pnpide_init'
drivers/ide/legacy/ide-cs.c:365: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/legacy/ide-cs.c:411: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/ide/pci/aec62xx.c:533: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/alim15x3.c:869: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/amd74xx.c:451: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/cmd64x.c:755: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/cs5520.c:294: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/cs5530.c:416: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/cy82c693.c:437: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/hpt34x.c:334: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/hpt366.c:1223: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/ns87415.c:228: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/opti621.c:364: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/pdc202xx_new.c:631: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/pdc202xx_old.c:925: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/piix.c:746: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/rz1000.c:65: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/sc1200.c:557: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/serverworks.c:804: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/siimage.c:1174: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/sis5513.c:956: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/slc90e66.c:376: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/triflex.c:227: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/ide/pci/trm290.c:378: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/ide/pci/trm290.c:406: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
drivers/ide/pci/via82cxxx.c:618: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/input/gameport/ns558.c:121: warning: `check_region' is
deprecated (declared at include/linux/ioport.h:119)
drivers/input/gameport/ns558.c:80: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/media/common/saa7146_vbi.c:6: warning: `vbi_workaround' defined
but not used
drivers/media/video/zoran_card.c:149: warning: `zr36067_pci_tbl' defined
but not used
drivers/message/fusion/mptscsih.c:6922: warning: `mptscsih_setup'
defined but not used
drivers/message/i2o/i2o_block.c:1506: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/mtd/chips/amd_flash.c:783: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/mtd/chips/cfi_cmdset_0001.c:381: warning: unsigned int format,
different type arg (arg 2)
drivers/mtd/chips/cfi_cmdset_0001.c:965: warning: unsigned int format,
different type arg (arg 2)
drivers/mtd/chips/cfi_cmdset_0002.c:1157: warning: unsigned int format,
different type arg (arg 4)
drivers/mtd/chips/cfi_cmdset_0002.c:513: warning: unsigned int format,
different type arg (arg 4)
drivers/mtd/chips/cfi_cmdset_0002.c:651: warning: unsigned int format,
different type arg (arg 4)
drivers/mtd/chips/cfi_cmdset_0002.c:977: warning: unsigned int format,
different type arg (arg 4)
drivers/mtd/chips/cfi_cmdset_0020.c:1139: warning: unsigned int format,
different type arg (arg 3)
drivers/mtd/chips/cfi_cmdset_0020.c:1288: warning: unsigned int format,
different type arg (arg 3)
drivers/mtd/chips/cfi_cmdset_0020.c:493: warning: unsigned int format,
different type arg (arg 3)
drivers/mtd/chips/cfi_cmdset_0020.c:853: warning: unsigned int format,
different type arg (arg 3)
drivers/mtd/chips/sharp.c:157: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/mtd/cmdlinepart.c:344: warning: `mtdpart_setup' defined but not
used
drivers/mtd/devices/doc2000.c:567: warning: assignment from incompatible
pointer type
drivers/mtd/devices/doc2000.c:568: warning: assignment from incompatible
pointer type
drivers/mtd/devices/doc2001.c:376: warning: assignment from incompatible
pointer type
drivers/mtd/devices/doc2001.c:377: warning: assignment from incompatible
pointer type
drivers/mtd/nftlcore.c:354: warning: passing arg 7 of pointer to
function makes pointer from integer without a cast
drivers/mtd/nftlcore.c:358: warning: passing arg 7 of pointer to
function makes pointer from integer without a cast
drivers/mtd/nftlcore.c:363: warning: passing arg 7 of pointer to
function makes pointer from integer without a cast
drivers/mtd/nftlcore.c:632: warning: passing arg 7 of pointer to
function makes pointer from integer without a cast
drivers/mtd/nftlcore.c:696: warning: passing arg 7 of pointer to
function makes pointer from integer without a cast
drivers/mtd/nftlmount.c:220: warning: passing arg 7 of pointer to
function makes pointer from integer without a cast
drivers/net/3c515.c:529: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
drivers/net/acenic.c:135: warning: `acenic_pci_tbl' defined but not used
drivers/net/arcnet/arc-rimi.c:319: warning: `dev_alloc' is deprecated
(declared at include/linux/netdevice.h:525)
drivers/net/arcnet/com20020-isa.c:152: warning: `dev_alloc' is
deprecated (declared at include/linux/netdevice.h:525)
drivers/net/arcnet/com20020-pci.c:71: warning: `dev_alloc' is deprecated
(declared at include/linux/netdevice.h:525)
drivers/net/arcnet/com90io.c:385: warning: `dev_alloc' is deprecated
(declared at include/linux/netdevice.h:525)
drivers/net/arcnet/com90xx.c:146: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/net/arcnet/com90xx.c:412: warning: `dev_alloc' is deprecated
(declared at include/linux/netdevice.h:525)
drivers/net/arcnet/com90xx.c:609: warning: `dev_alloc' is deprecated
(declared at include/linux/netdevice.h:525)
drivers/net/dgrs.c:124: warning: `dgrs_pci_tbl' defined but not used
drivers/net/eepro.c:575: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
drivers/net/ewrk3.c:1291: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/net/ewrk3.c:1335: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/net/hp100.c:288: warning: `hp100_pci_tbl' defined but not used
drivers/net/hp100.c:385: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
drivers/net/hp100.c:432: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
drivers/net/hp100.c:463: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
drivers/net/hp100.c:471: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
drivers/net/sk98lin/skaddr.c:1092: warning: `ReturnCode' might be used
uninitialized in this function
drivers/net/sk98lin/skaddr.c:1624: warning: `ReturnCode' might be used
uninitialized in this function
drivers/net/skfp/skfddi.c:185: warning: `skfddi_pci_tbl' defined but not
used
drivers/net/tokenring/smctr.c:3494: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/net/tokenring/smctr.c:733: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/net/tulip/winbond-840.c:149: warning: `version' defined but not
used
drivers/net/wan/cycx_drv.c:430: warning: long unsigned int format, u32
arg (arg 2)
drivers/net/wan/farsync.c:1316: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/net/wan/farsync.c:1329: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/net/wan/hostess_sv11.c:125: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/net/wan/hostess_sv11.c:157: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/net/wan/lmc/lmc_main.c:1063: warning: `check_region' is
deprecated (declared at include/linux/ioport.h:119)
drivers/net/wan/lmc/lmc_main.c:1184: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/net/wan/lmc/lmc_main.c:1355: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/net/wan/pc300_drv.c:3168: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/net/wan/pc300_drv.c:3204: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/net/wan/sbni.c:308: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/pcmcia/i82365.c:680: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/pcmcia/i82365.c:817: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/pcmcia/tcic.c:340: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:1003: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:1008: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:700: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:704: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:708: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:712: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:716: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:720: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:973: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:988: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:993: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/BusLogic.c:998: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/NCR5380.c:396: warning: `phases' defined but not used
drivers/scsi/NCR5380.c:699: warning: `NCR5380_probe_irq' defined but not
used
drivers/scsi/NCR5380.c:756: warning: `NCR5380_print_options' defined but
not used
drivers/scsi/NCR53c406a.c:611: warning: `NCR53c406a_setup' defined but
not used
drivers/scsi/NCR53c406a.c:660: warning: initialization from incompatible
pointer type
drivers/scsi/NCR53c406a.c:669: warning: `wait_intr' defined but not used
drivers/scsi/advansys.c:10006: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/advansys.c:4622: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/aha152x.c:396: warning: `id_table' defined but not used
drivers/scsi/aha152x.c:793: warning: `aha152x_setup' defined but not
used
drivers/scsi/aha152x.c:852: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/aha152x.c:870: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/atp870u.c:2350: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/atp870u.c:2422: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/cpqfcTSinit.c:1583: warning: unused variable `timeout'
drivers/scsi/cpqfcTSinit.c:1584: warning: unused variable `retries'
drivers/scsi/cpqfcTSinit.c:1585: warning: unused variable `scsi_cdb'
drivers/scsi/cpqfcTSinit.c:471: warning: `my_ioctl_done' defined but not
used
drivers/scsi/dtc.c:187: warning: `dtc_setup' defined but not used
drivers/scsi/eata_pio.c:596: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/fd_mcs.c:300: warning: `fd_mcs_setup' defined but not used
drivers/scsi/fd_mcs.c:311: warning: initialization from incompatible
pointer type
drivers/scsi/fd_mcs.h:27: warning: `fd_mcs_command' declared `static'
but never defined
drivers/scsi/fdomain.c:763: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/g_NCR5380.c:926: warning: `id_table' defined but not used
drivers/scsi/gdth.c:881: warning: `gdthtable' defined but not used
drivers/scsi/inia100.h:70: warning: `inia100_detect' declared `static'
but never defined
drivers/scsi/inia100.h:71: warning: `inia100_release' declared `static'
but never defined
drivers/scsi/inia100.h:72: warning: `inia100_queue' declared `static'
but never defined
drivers/scsi/inia100.h:73: warning: `inia100_abort' declared `static'
but never defined
drivers/scsi/inia100.h:74: warning: `inia100_device_reset' declared
`static' but never defined
drivers/scsi/inia100.h:75: warning: `inia100_bus_reset' declared
`static' but never defined
drivers/scsi/libata-core.c:2133: warning: `ata_qc_push' defined but not
used
drivers/scsi/psi240i.c:713: warning: initialization from incompatible
pointer type
drivers/scsi/psi240i.c:714: warning: initialization from incompatible
pointer type
drivers/scsi/sym53c416.c:627: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/sym53c416.c:715: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/scsi/wd7000.c:1611: warning: `wd7000_abort' defined but not used
drivers/serial/8250.c:693: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/telephony/ixj.c:7737: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/telephony/ixj.c:7799: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/telephony/ixj.c:7835: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
drivers/telephony/ixj.h:41: warning: `ixj_h_rcsid' defined but not used
drivers/usb/class/usb-midi.h:150: warning: `usb_midi_ids' defined but
not used
drivers/video/aty/aty128fb.c:2335: warning: `aty128fb_exit' defined but
not used
drivers/video/aty/aty128fb.c:254: warning: `mode' defined but not used
drivers/video/aty/aty128fb.c:256: warning: `nomtrr' defined but not used
drivers/video/console/mdacon.c:374: warning: `MOD_INC_USE_COUNT' is
deprecated (declared at include/linux/module.h:482)
drivers/video/console/mdacon.c:384: warning: `MOD_DEC_USE_COUNT' is
deprecated (declared at include/linux/module.h:494)
drivers/video/hgafb.c:452: warning: `hgafb_fillrect' defined but not
used
drivers/video/hgafb.c:472: warning: `hgafb_copyarea' defined but not
used
drivers/video/hgafb.c:502: warning: `hgafb_imageblit' defined but not
used
drivers/video/imsttfb.c:1089: warning: `imsttfb_load_cursor_image'
defined but not used
drivers/video/imsttfb.c:1159: warning: `imstt_set_cursor' defined but
not used
drivers/video/matrox/matroxfb_base.c:1250: warning: `inverse' defined
but not used
drivers/video/matrox/matroxfb_g450.c:129: warning: duplicate `const'
drivers/video/matrox/matroxfb_g450.c:130: warning: duplicate `const'
drivers/video/matrox/matroxfb_maven.c:347: warning: duplicate `const'
drivers/video/matrox/matroxfb_maven.c:348: warning: duplicate `const'
drivers/video/sis/sis_main.c:622: warning: unused variable `reg'
drivers/video/tdfxfb.c:1005: warning: `tdfxfb_cursor' defined but not
used
drivers/video/tdfxfb.c:198: warning: `inverse' defined but not used
drivers/video/tdfxfb.c:199: warning: `mode_option' defined but not used
drivers/video/tridentfb.c:455: warning: `tridentfb_fillrect' defined but
not used
drivers/video/tridentfb.c:473: warning: `tridentfb_copyarea' defined but
not used
include/linux/ixjuser.h:45: warning: `ixjuser_h_rcsid' defined but not
used
include/linux/mca-legacy.h:12:2: warning: #warning "MCA legacy - please
move your driver to the new sysfs api"
net/decnet/dn_nsp_in.c:805: warning: `skb_linearize' is deprecated
(declared at include/linux/skbuff.h:1136)
net/decnet/dn_route.c:638: warning: `skb_linearize' is deprecated
(declared at include/linux/skbuff.h:1136)
net/ipv4/ipcomp.c:189: warning: `skb_linearize' is deprecated (declared
at include/linux/skbuff.h:1136)
net/ipv4/ipcomp.c:72: warning: `skb_linearize' is deprecated (declared
at include/linux/skbuff.h:1136)
net/ipv6/ipcomp6.c:174: warning: `skb_linearize' is deprecated (declared
at include/linux/skbuff.h:1136)
net/ipv6/ipcomp6.c:61: warning: `skb_linearize' is deprecated (declared
at include/linux/skbuff.h:1136)
net/ipv6/netfilter/ip6_tables.c:349: warning: `skb_linearize' is
deprecated (declared at include/linux/skbuff.h:1136)
net/ipv6/netfilter/ip6table_mangle.c:162: warning: `skb_linearize' is
deprecated (declared at include/linux/skbuff.h:1136)
net/wanrouter/wanmain.c:729: warning: `dev_get' is deprecated (declared
at include/linux/netdevice.h:514)
sound/isa/opti9xx/opti92x-ad1848.c:1670: warning: `check_region' is
deprecated (declared at include/linux/ioport.h:119)
sound/isa/opti9xx/opti92x-ad1848.c:1686: warning: `check_region' is
deprecated (declared at include/linux/ioport.h:119)
sound/isa/opti9xx/opti92x-ad1848.c:314: warning: `check_region' is
deprecated (declared at include/linux/ioport.h:119)
sound/oss/ad1848.c:1580: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/ad1848.c:2530: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/ad1848.c:2967: warning: `id_table' defined but not used
sound/oss/cmpci.c:1465: warning: unused variable `s'
sound/oss/cmpci.c:2865: warning: `cmpci_pci_tbl' defined but not used
sound/oss/cs4232.c:141: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/cs4232.c:193: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/gus_card.c:76: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/gus_card.c:78: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/gus_card.c:93: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/gus_card.c:94: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/mad16.c:322: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/maui.c:307: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/mpu401.c:1217: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/msnd.c:74: warning: `MOD_INC_USE_COUNT' is deprecated
(declared at include/linux/module.h:482)
sound/oss/msnd.c:95: warning: `MOD_DEC_USE_COUNT' is deprecated
(declared at include/linux/module.h:494)
sound/oss/msnd_pinnacle.c:1123: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
sound/oss/msnd_pinnacle.c:1811: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
sound/oss/opl3sa.c:114: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/opl3sa.c:122: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/pss.c:1004: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/pss.c:191: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/pss.c:640: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/pss.c:710: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/sb_common.c:1224: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
sound/oss/sb_common.c:523: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
sound/oss/sgalaxy.c:89: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/sgalaxy.c:97: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/sscape.c:1113: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/sscape.c:1132: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/sscape.c:1137: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/sscape.c:737: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)
sound/oss/trix.c:147: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/trix.c:292: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/trix.c:85: warning: `check_region' is deprecated (declared at
include/linux/ioport.h:119)
sound/oss/wavfront.c:2426: warning: `check_region' is deprecated
(declared at include/linux/ioport.h:119)
sound/oss/wf_midi.c:788: warning: `check_region' is deprecated (declared
at include/linux/ioport.h:119)





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

* Re: 2.6.0-test9-mm2
  2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
  2003-11-05 12:30 ` 2.6.0-test9-mm2 Alexander Hoogerhuis
  2003-11-05 16:10 ` 2.6.0-test9-mm2 (compile stats) John Cherry
@ 2003-11-05 17:02 ` Alistair John Strachan
  2003-11-05 23:07 ` 2.6.0-test9-mm2 Martin J. Bligh
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 15+ messages in thread
From: Alistair John Strachan @ 2003-11-05 17:02 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-mm, netdev

On Wednesday 05 November 2003 06:55, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.0-test9/2
>.6.0-test9-mm2/
>
>
> - Various random fixes.  Maybe about half of these are 2.6.0-worthy.
>
> - Some improvements to the anticipatory IO scheduler and more readahead
>   tweaks should help some of those database benchmarks.
>
>   The anticipatory scheduler is still a bit behind the deadline scheduler
>   in these random seeky loads - it most likely always will be.
>
> - "A new driver for the ethernet interface of the NVIDIA nForce chipset,
>   licensed under GPL."
>
>   Testing of this would be appreciated.  Send any reports to linux-kernel
>   or netdev@oss.sgi.com and Manfred will scoop them up, thanks.
>

I tried the force driver on my nForce2 machine and although it mostly works 
(DHCP works, I can receive mail over the interface, etc..) it doesn't seem to 
handle really bulky loads. For example, I'm running an FTP server on the 
machine (proftpd), and although FTP navigation works just fine, transferring 
large files just causes the transfer to hang indefinitely.

Removing the driver and using NVIDIA's proprietary driver allows me to 
transfer via FTP properly.

-- 
Cheers,
Alistair.

personal:   alistair()devzero!co!uk
university: s0348365()sms!ed!ac!uk
student:    CS/AI Undergraduate
contact:    7/10 Darroch Court,
            University of Edinburgh.

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

* Re: 2.6.0-test9-mm2
  2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
                   ` (2 preceding siblings ...)
  2003-11-05 17:02 ` 2.6.0-test9-mm2 Alistair John Strachan
@ 2003-11-05 23:07 ` Martin J. Bligh
  2003-11-10 23:06 ` 2.6.0-test9-mm2 - AIO tests still gets slab corruption Daniel McNeil
  2003-11-11 17:25 ` 2.6.0-test9-mm2 Daniel Drake
  5 siblings, 0 replies; 15+ messages in thread
From: Martin J. Bligh @ 2003-11-05 23:07 UTC (permalink / raw)
  To: Andrew Morton, linux-kernel, linux-mm

Seems to work fine on my box. Nothing very interesting from a performance
perspective, but it does seem a touch faster than mainline on kernbench.
NFI why ;-)

Kernbench: (make -j N vmlinux, where N = 2 x num_cpus)
                              Elapsed      System        User         CPU
              2.6.0-test9       45.28      100.19      568.01     1474.75
          2.6.0-test9-mm2       44.83      100.79      567.74     1491.00
         2.6.0-test9-mjb1       43.73       80.19      559.91     1463.25

Kernbench: (make -j N vmlinux, where N = 16 x num_cpus)
                              Elapsed      System        User         CPU
              2.6.0-test9       46.17      122.20      571.58     1501.00
          2.6.0-test9-mm2       45.89      120.39      570.67     1504.75
         2.6.0-test9-mjb1       43.52       89.98      562.91     1500.50

Kernbench: (make -j vmlinux, maximal tasks)
                              Elapsed      System        User         CPU
              2.6.0-test9       45.84      120.14      570.93     1507.00
          2.6.0-test9-mm2       44.21      118.81      571.28     1566.00
         2.6.0-test9-mjb1       43.73       87.19      564.39     1488.50


DISCLAIMER: SPEC(tm) and the benchmark name SDET(tm) are registered
trademarks of the Standard Performance Evaluation Corporation. This 
benchmarking was performed for research purposes only, and the run results
are non-compliant and not-comparable with any published results.

Results are shown as percentages of the first set displayed

SDET 1  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         1.2%
          2.6.0-test9-mm2        98.3%         2.3%
         2.6.0-test9-mjb1       112.2%         1.8%

SDET 2  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         2.0%
          2.6.0-test9-mm2       103.8%         1.8%
         2.6.0-test9-mjb1       116.4%         0.6%

SDET 4  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         0.9%
          2.6.0-test9-mm2       102.6%         1.0%
         2.6.0-test9-mjb1       120.5%         0.6%

SDET 8  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         0.4%
          2.6.0-test9-mm2        98.9%         0.4%
         2.6.0-test9-mjb1       123.7%         0.2%

SDET 16  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         0.8%
          2.6.0-test9-mm2       100.6%         0.9%
         2.6.0-test9-mjb1       127.6%         0.0%

SDET 32  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         0.3%
          2.6.0-test9-mm2        99.8%         0.3%
         2.6.0-test9-mjb1       125.9%         0.5%

SDET 64  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         0.4%
          2.6.0-test9-mm2        99.7%         0.4%
         2.6.0-test9-mjb1       127.6%         0.9%

SDET 128  (see disclaimer)
                           Throughput    Std. Dev
              2.6.0-test9       100.0%         0.1%
          2.6.0-test9-mm2        99.0%         0.3%
         2.6.0-test9-mjb1       127.7%         0.2%


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

* Re: 2.6.0-test9-mm2 - AIO tests still gets slab corruption
  2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
                   ` (3 preceding siblings ...)
  2003-11-05 23:07 ` 2.6.0-test9-mm2 Martin J. Bligh
@ 2003-11-10 23:06 ` Daniel McNeil
  2003-11-10 23:42   ` Andrew Morton
  2003-11-11 17:25 ` 2.6.0-test9-mm2 Daniel Drake
  5 siblings, 1 reply; 15+ messages in thread
From: Daniel McNeil @ 2003-11-10 23:06 UTC (permalink / raw)
  To: Andrew Morton, Suparna Bhattacharya
  Cc: Linux Kernel Mailing List, linux-mm, linux-aio

Andrew,

test9-mm2 is still getting slab corruption with AIO:

Maximal retry count.  Bytes done 0
Slab corruption: start=dc70f91c, expend=dc70f9eb, problemat=dc70f91c
Last user: [<c0192fa3>](__aio_put_req+0xbf/0x200)
Data: 00 01 10 00 00 02 20 00 *********6C ******************************A5
Next: 71 F0 2C .A3 2F 19 C0 71 F0 2C .********************
slab error in check_poison_obj(): cache `kiocb': object was modified after freeing

With suparna's retry-based-aio-dio patch, there are no kernel messages
and the tests do not see any uninitialized data.

Any reason not to add suparna's patch to -mm to fix these problems?

Thanks,

Daniel


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

* Re: 2.6.0-test9-mm2 - AIO tests still gets slab corruption
  2003-11-10 23:06 ` 2.6.0-test9-mm2 - AIO tests still gets slab corruption Daniel McNeil
@ 2003-11-10 23:42   ` Andrew Morton
  2003-11-11 15:02     ` Suparna Bhattacharya
  2003-11-11 18:01     ` [PATCH 2.6.0-test9] AIO-ref-count.patch Daniel McNeil
  0 siblings, 2 replies; 15+ messages in thread
From: Andrew Morton @ 2003-11-10 23:42 UTC (permalink / raw)
  To: Daniel McNeil; +Cc: suparna, linux-kernel, linux-mm, linux-aio

Daniel McNeil <daniel@osdl.org> wrote:
>
> Andrew,
> 
> test9-mm2 is still getting slab corruption with AIO:

Why?

> Maximal retry count.  Bytes done 0
> Slab corruption: start=dc70f91c, expend=dc70f9eb, problemat=dc70f91c
> Last user: [<c0192fa3>](__aio_put_req+0xbf/0x200)
> Data: 00 01 10 00 00 02 20 00 *********6C ******************************A5
> Next: 71 F0 2C .A3 2F 19 C0 71 F0 2C .********************
> slab error in check_poison_obj(): cache `kiocb': object was modified after freeing
> 
> With suparna's retry-based-aio-dio patch, there are no kernel messages
> and the tests do not see any uninitialized data.
> 
> Any reason not to add suparna's patch to -mm to fix these problems?

It relies on infrastructure which is not present in Linus's kernel.  We
should only be interested in fixing mainline 2.6.x.

Furthermore I'd like to see the direct-vs-buffered locking fixes fully
implemented against Linus's tree, not -mm.  They're almost there, but are
not quite complete.  Running off and making it dependent on the retry
infrastructure is not really helpful.


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

* Re: 2.6.0-test9-mm2 - AIO tests still gets slab corruption
  2003-11-10 23:42   ` Andrew Morton
@ 2003-11-11 15:02     ` Suparna Bhattacharya
  2003-11-12 20:10       ` Daniel McNeil
  2003-11-11 18:01     ` [PATCH 2.6.0-test9] AIO-ref-count.patch Daniel McNeil
  1 sibling, 1 reply; 15+ messages in thread
From: Suparna Bhattacharya @ 2003-11-11 15:02 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Daniel McNeil, linux-kernel, linux-mm, linux-aio

On Mon, Nov 10, 2003 at 03:42:32PM -0800, Andrew Morton wrote:
> Daniel McNeil <daniel@osdl.org> wrote:
> >
> > Andrew,
> > 
> > test9-mm2 is still getting slab corruption with AIO:
> 
> Why?
> 
> > Maximal retry count.  Bytes done 0
> > Slab corruption: start=dc70f91c, expend=dc70f9eb, problemat=dc70f91c
> > Last user: [<c0192fa3>](__aio_put_req+0xbf/0x200)
> > Data: 00 01 10 00 00 02 20 00 *********6C ******************************A5
> > Next: 71 F0 2C .A3 2F 19 C0 71 F0 2C .********************
> > slab error in check_poison_obj(): cache `kiocb': object was modified after freeing
> > 
> > With suparna's retry-based-aio-dio patch, there are no kernel messages
> > and the tests do not see any uninitialized data.
> > 
> > Any reason not to add suparna's patch to -mm to fix these problems?
> 
> It relies on infrastructure which is not present in Linus's kernel.  We
> should only be interested in fixing mainline 2.6.x.
> 
> Furthermore I'd like to see the direct-vs-buffered locking fixes fully
> implemented against Linus's tree, not -mm.  They're almost there, but are
> not quite complete.  Running off and making it dependent on the retry
> infrastructure is not really helpful.
> 

It was just easier to do this in a non-kludgy way, if we used the
retry infrastructure. Here's why:

For fixing some of the cases, we run into a situation when we've 
already submitted some of the I/O as AIO (with AIO callbacks set up)
by the time we realise that we actually need to wait for that to 
complete synchronously before falling back to buffered i/o (otherwise
we can corrupt file data). 

With the retry model it is only the actual wait that occurs 
differently for AIO and Sync I/O, not the submission. So we 
can simply switch to be synchronous at the latter stage.

Having done that, though, I was actually working on trying 
to find a way to do this that could hold for the mainline as well
(i.e. without using retry infrastructure). The attached patch has 
some special casing tweaks that might do the job; it 
modifies the AIO-DIO callback to wakeup the caller synchronously 
instead of issuing an aio_complete in such situations. 

However the existing aio-dio tests do not seem to exercise some 
of those code paths, so I haven't had a chance to verify 
if it really works for that case (i.e. A single AIO-DIO request 
overwriting an allocated region followed by a hole).

The patch should apply to 2.6.0-test9-mm2.

Regards
Suparna

-- 
Suparna Bhattacharya (suparna@in.ibm.com)
Linux Technology Center
IBM Software Labs, India


--- pure-mm/fs/direct-io.c	2003-10-30 14:22:51.000000000 +0530
+++ linux-2.6.0-test9-mm2/fs/direct-io.c	2003-10-31 17:09:35.000000000 +0530
@@ -209,7 +209,7 @@
  */
 static void dio_complete(struct dio *dio, loff_t offset, ssize_t bytes)
 {
-	if (dio->end_io)
+	if (dio->end_io && dio->result)
 		dio->end_io(dio->inode, offset, bytes, dio->map_bh.b_private);
 	if (dio->needs_locking)
 		up_read(&dio->inode->i_alloc_sem);
@@ -225,8 +225,14 @@
 		if (dio->is_async) {
 			dio_complete(dio, dio->block_in_file << dio->blkbits,
 					dio->result);
-			aio_complete(dio->iocb, dio->result, 0);
-			kfree(dio);
+			/* Complete AIO later if falling back to buffered i/o */
+			if (dio->result != -ENOTBLK) {
+				aio_complete(dio->iocb, dio->result, 0);
+				kfree(dio);
+			} else {
+				if (dio->waiter)
+					wake_up_process(dio->waiter);
+			}
 		}
 	}
 }
@@ -877,8 +883,6 @@
 	int ret2;
 	size_t bytes;
 
-	dio->is_async = !is_sync_kiocb(iocb);
-
 	dio->bio = NULL;
 	dio->inode = inode;
 	dio->rw = rw;
@@ -969,10 +973,11 @@
 		dio_bio_submit(dio);
 
 	/*
-	 * All new block allocations have been performed.  We can let i_sem
-	 * go now.
+	 * All block lookups have been performed. For READ requests
+	 * we can let i_sem go now that its achieved its purpose
+	 * of protecting us from looking up uninitialized blocks.
 	 */
-	if (dio->needs_locking)
+	if ((rw == READ) && dio->needs_locking)
 		up(&dio->inode->i_sem);
 
 	/*
@@ -982,8 +987,30 @@
 	if (dio->is_async) {
 		if (ret == 0)
 			ret = dio->result;	/* Bytes written */
+		if (ret == -ENOTBLK) {
+			/*
+			 * The request will be reissued via buffered I/O
+			 * when we return; Any I/O already issued
+			 * effectively becomes redundant.
+			 */
+			dio->result = ret;
+			dio->waiter = current;
+		}
 		finished_one_bio(dio);		/* This can free the dio */
 		blk_run_queues();
+		if (ret == -ENOTBLK) {
+			/*
+			 * Wait for already issued I/O to drain out and
+			 * release its references to user-space pages
+			 * before returning to fallback on buffered I/O
+			 */
+			while (atomic_read(&dio->bio_count)) {
+				set_current_state(TASK_UNINTERRUPTIBLE);
+				io_schedule();
+			}
+			set_current_state(TASK_RUNNING);
+			dio->waiter = NULL;
+		}
 	} else {
 		finished_one_bio(dio);
 		ret2 = dio_await_completion(dio);
@@ -1003,6 +1029,9 @@
 				ret = i_size - offset;
 		}
 		dio_complete(dio, offset, ret);
+		/* We could have also come here on an AIO file extend */
+		if (!is_sync_kiocb(iocb) && (ret != -ENOTBLK))
+			aio_complete(iocb, ret, 0);
 		kfree(dio);
 	}
 	return ret;
@@ -1029,6 +1058,7 @@
 	unsigned bdev_blkbits = 0;
 	unsigned blocksize_mask = (1 << blkbits) - 1;
 	ssize_t retval = -EINVAL;
+	loff_t end = offset;
 	struct dio *dio;
 	int needs_locking;
 
@@ -1047,6 +1077,7 @@
 	for (seg = 0; seg < nr_segs; seg++) {
 		addr = (unsigned long)iov[seg].iov_base;
 		size = iov[seg].iov_len;
+		end += size;
 		if ((addr & blocksize_mask) || (size & blocksize_mask))  {
 			if (bdev)
 				 blkbits = bdev_blkbits;
@@ -1081,11 +1112,17 @@
 		down_read(&inode->i_alloc_sem);
 	}
 	dio->needs_locking = needs_locking;
+	/*
+	 * For file extending writes updating i_size before data
+	 * writeouts complete can expose uninitialized blocks. So
+	 * even for AIO, we need to wait for i/o to complete before
+	 * returning in this case.
+	 */
+	dio->is_async = !is_sync_kiocb(iocb) && !((rw == WRITE) &&
+		(end > i_size_read(inode)));
 
 	retval = direct_io_worker(rw, iocb, inode, iov, offset,
 				nr_segs, blkbits, get_blocks, end_io, dio);
-	if (needs_locking && rw == WRITE)
-		down(&inode->i_sem);
 out:
 	return retval;
 }

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

* Re: 2.6.0-test9-mm2
  2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
                   ` (4 preceding siblings ...)
  2003-11-10 23:06 ` 2.6.0-test9-mm2 - AIO tests still gets slab corruption Daniel McNeil
@ 2003-11-11 17:25 ` Daniel Drake
  2003-11-12  1:18   ` 2.6.0-test9-mm2 Nick Piggin
  5 siblings, 1 reply; 15+ messages in thread
From: Daniel Drake @ 2003-11-11 17:25 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-mm

I've been getting a couple of audio skips with 2.6.0-test9-mm2. Haven't heard a 
skip since test4 or so, so I'm assuming this is a result of the IO scheduler tweaks.

Here's how I can produce a skip:
Running X, general usage (e.g. couple of xterms, an emacs, maybe a 
mozilla-thunderbird)
I switch to the first virtual console with Ctrl+Alt+F1. I then switch back to X 
with Alt+F7. As X is redrawing the screen, the audio skips once.
This happens most of the time, but its easier to reproduce when i am compiling 
something, and also when I cycle through the virtual consoles before switching 
back to X.

System:
AMD XP2600+
nForce2 motherboard
512MB RAM
nvidia GeForce4 Ti4800

Audio being played through the intel8x0 alsa module.
I use the nvidia binary graphics driver with X.

XMMS 1.2.8
XFree 4.3.0

If theres any other info I can give, please tell me and I'll do my best to help out.

Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.0-test9/2.6.0-test9-mm2/
> 
> 
> - Various random fixes.  Maybe about half of these are 2.6.0-worthy.
> 
> - Some improvements to the anticipatory IO scheduler and more readahead
>   tweaks should help some of those database benchmarks.
> 
>   The anticipatory scheduler is still a bit behind the deadline scheduler
>   in these random seeky loads - it most likely always will be.
> 
> - "A new driver for the ethernet interface of the NVIDIA nForce chipset,
>   licensed under GPL."
> 
>   Testing of this would be appreciated.  Send any reports to linux-kernel
>   or netdev@oss.sgi.com and Manfred will scoop them up, thanks.
> 
> 
> - I shall be offline for a couple of days.


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

* [PATCH 2.6.0-test9] AIO-ref-count.patch
  2003-11-10 23:42   ` Andrew Morton
  2003-11-11 15:02     ` Suparna Bhattacharya
@ 2003-11-11 18:01     ` Daniel McNeil
  1 sibling, 0 replies; 15+ messages in thread
From: Daniel McNeil @ 2003-11-11 18:01 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Suparna Bhattacharya, Linux Kernel Mailing List, linux-mm, linux-aio

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

Andrew,

If you do not want to go with the retry-based AIO in mm, here is
the AIO ref count patch against 2.6.0-test9.  This is a bit different
than the version in -mm, but accomplishes the same thing -- the submit
path holds an extra reference until just before returning.  This fixes
the referencing a free kiocb.

Without this patch on test9 (with PAGEALLOC_DEBUG), I get:
 
Unable to handle kernel paging request at virtual address df4fbf90
 printing eip:
c0143dc4
*pde = 0007f067
*pte = 1f4fb000
Oops: 0002 [#1]
CPU:    1
EIP:    0060:[<c0143dc4>]    Not tainted
EFLAGS: 00210287
EIP is at generic_file_aio_write_nolock+0x936/0xbbd
eax: 019d0000   ebx: 06400000   ecx: df4fbf90   edx: 00000000
esi: 00000000   edi: e700de88   ebp: df533eb4   esp: df533dc0
ds: 007b   es: 007b   ss: 0068
Process aiodio_sparse (pid: 1824, threadinfo=df532000 task=e66e29b0)
Stack: 00000001 df4fbf58 df533ecc 019c0000 00000000 00000001 00000001 df533e04
       00200286 c148fc10 00000000 00200286 db234d94 df533e18 f7a89218 019d0000
       00000000 df533e18 c011dd46 f65dbdf8 ffffffff 00000041 df533e50 00010000
Call Trace:
 [<c011dd46>] kernel_map_pages+0x28/0x5d
 [<c0144162>] generic_file_aio_write+0x86/0xa4
 [<c01a12d7>] ext3_file_write+0x3f/0xcc
 [<c018c948>] io_submit_one+0x2b5/0x2f7
 [<c018ca67>] sys_io_submit+0xdd/0x143
 [<c010a6c7>] syscall_call+0x7/0xb


I'm working on the other AIO fixes against mainline.

Thanks,

Daniel

[-- Attachment #2: 2.6.0-test9-aio-refcnt.patch --]
[-- Type: text/plain, Size: 1693 bytes --]

--- linux-2.6.0-test9/fs/aio.c	2003-10-25 11:43:33.000000000 -0700
+++ linux-2.6.0-test9.aio-refcnt/fs/aio.c	2003-11-10 18:05:34.151193068 -0800
@@ -376,6 +376,11 @@ void __put_ioctx(struct kioctx *ctx)
  *	Allocate a slot for an aio request.  Increments the users count
  * of the kioctx so that the kioctx stays around until all requests are
  * complete.  Returns NULL if no requests are free.
+ *
+ * Returns with kiocb->users set to 2.  The io submit code path holds
+ * an extra reference while submitting the i/o.
+ * This prevents races between the aio code path referencing the
+ * req (after submitting it) and aio_complete() freeing the req.
  */
 static struct kiocb *FASTCALL(__aio_get_req(struct kioctx *ctx));
 static struct kiocb *__aio_get_req(struct kioctx *ctx)
@@ -389,7 +394,7 @@ static struct kiocb *__aio_get_req(struc
 		return NULL;
 
 	req->ki_flags = 1 << KIF_LOCKED;
-	req->ki_users = 1;
+	req->ki_users = 2;
 	req->ki_key = 0;
 	req->ki_ctx = ctx;
 	req->ki_cancel = NULL;
@@ -1009,7 +1014,7 @@ int io_submit_one(struct kioctx *ctx, st
 	if (unlikely(!file))
 		return -EBADF;
 
-	req = aio_get_req(ctx);
+	req = aio_get_req(ctx);		/* returns with 2 references to req */
 	if (unlikely(!req)) {
 		fput(file);
 		return -EAGAIN;
@@ -1069,13 +1074,15 @@ int io_submit_one(struct kioctx *ctx, st
 		ret = -EINVAL;
 	}
 
+	aio_put_req(req);	/* drop extra ref to req */
 	if (likely(-EIOCBQUEUED == ret))
 		return 0;
-	aio_complete(req, ret, 0);
+	aio_complete(req, ret, 0);	/* will drop i/o ref to req */
 	return 0;
 
 out_put_req:
-	aio_put_req(req);
+	aio_put_req(req);	/* drop extra ref to req */
+	aio_put_req(req);	/* drop i/o ref to req */
 	return ret;
 }
 

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

* Re: 2.6.0-test9-mm2
  2003-11-11 17:25 ` 2.6.0-test9-mm2 Daniel Drake
@ 2003-11-12  1:18   ` Nick Piggin
  2003-11-12  3:45     ` 2.6.0-test9-mm2 Mike Fedyk
  0 siblings, 1 reply; 15+ messages in thread
From: Nick Piggin @ 2003-11-12  1:18 UTC (permalink / raw)
  To: Daniel Drake; +Cc: Andrew Morton, linux-kernel, linux-mm



Daniel Drake wrote:

> I've been getting a couple of audio skips with 2.6.0-test9-mm2. 
> Haven't heard a skip since test4 or so, so I'm assuming this is a 
> result of the IO scheduler tweaks.
>
> Here's how I can produce a skip:
> Running X, general usage (e.g. couple of xterms, an emacs, maybe a 
> mozilla-thunderbird)
> I switch to the first virtual console with Ctrl+Alt+F1. I then switch 
> back to X with Alt+F7. As X is redrawing the screen, the audio skips 
> once.
> This happens most of the time, but its easier to reproduce when i am 
> compiling something, and also when I cycle through the virtual 
> consoles before switching back to X.


Unlikely to be an IO scheduler change.

Switching from X to console or back can cause high CPU scheduling
latencies. I haven't tried to discover why.



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

* Re: 2.6.0-test9-mm2
  2003-11-12  1:18   ` 2.6.0-test9-mm2 Nick Piggin
@ 2003-11-12  3:45     ` Mike Fedyk
  0 siblings, 0 replies; 15+ messages in thread
From: Mike Fedyk @ 2003-11-12  3:45 UTC (permalink / raw)
  To: Nick Piggin; +Cc: Daniel Drake, Andrew Morton, linux-kernel, linux-mm

On Wed, Nov 12, 2003 at 12:18:33PM +1100, Nick Piggin wrote:
> Switching from X to console or back can cause high CPU scheduling
> latencies. I haven't tried to discover why.

I've heard that it's because of the locking in the tty layer.

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

* Re: 2.6.0-test9-mm2 - AIO tests still gets slab corruption
  2003-11-11 15:02     ` Suparna Bhattacharya
@ 2003-11-12 20:10       ` Daniel McNeil
  2003-11-13 11:29         ` Suparna Bhattacharya
  0 siblings, 1 reply; 15+ messages in thread
From: Daniel McNeil @ 2003-11-12 20:10 UTC (permalink / raw)
  To: Suparna Bhattacharya
  Cc: Andrew Morton, Linux Kernel Mailing List, linux-mm, linux-aio

Suparna,

I ran some AIO tests on your lastest patch and do not get any slab
corruptions.  However, when I used different i/o sizes (the default is
64k), it looks like the AIOs never complete.  I updated my tests to add
more debug output (with -d option).  As usual, the tests are here:
http://developer.osdl.org/daniel/AIO/TESTS/

FYI, '-r' sets the readsize.
     '-w' sets the writesize.
     '-s' sets the filesize.

The tests hang waiting for the AIO writes to complete.  I had to hit
^c to get out of the tests.  No messages on the console.

Examples:

$ ./aiodio_sparse -d -s 180k -r 18k -w 18k
io_submit() return 10
aiodio_sparse: 10 i/o in flight
child 2223, read loop count 0
child 2223, read loop count 10

(The writes never complete)

$ ./aiodio_sparse -dd -s 180k -r 18k -w 11k
child 2128, read loop count 0
io_submit() return 16
aiodio_sparse: 16 i/o in flight
aiodio_sparse: offset 180224 filesize 184320 inflight 16
aiodio_sparse: io_getevent() returned 1
aiodio_sparse: io_getevent() res 11264 res2 0
io_submit() return 1
child 2128, read loop count 10

(1 write returns, then no more)

$ ~/AIO/AIO_TESTS/aiodio_sparse -dd -s 160k -r 18k -w 18k
[....]
io_submit() return 1
aiodio_sparse: offset 349184 filesize 1793024 inflight 16
aiodio_sparse: io_getevent() returned 1
aiodio_sparse: io_getevent() res 11264 res2 0
io_submit() return 1
aiodio_sparse: offset 360448 filesize 1793024 inflight 16
child 2300, read loop count 20
child 2300, read loop count 30

(writes complete for a while and then stop).

Let me know if you want me to test something else.

Thanks,

Daniel


On Tue, 2003-11-11 at 07:02, Suparna Bhattacharya wrote:
> On Mon, Nov 10, 2003 at 03:42:32PM -0800, Andrew Morton wrote:
> > Daniel McNeil <daniel@osdl.org> wrote:
> > >
> > > Andrew,
> > > 
> > > test9-mm2 is still getting slab corruption with AIO:
> > 
> > Why?
> > 
> > > Maximal retry count.  Bytes done 0
> > > Slab corruption: start=dc70f91c, expend=dc70f9eb, problemat=dc70f91c
> > > Last user: [<c0192fa3>](__aio_put_req+0xbf/0x200)
> > > Data: 00 01 10 00 00 02 20 00 *********6C ******************************A5
> > > Next: 71 F0 2C .A3 2F 19 C0 71 F0 2C .********************
> > > slab error in check_poison_obj(): cache `kiocb': object was modified after freeing
> > > 
> > > With suparna's retry-based-aio-dio patch, there are no kernel messages
> > > and the tests do not see any uninitialized data.
> > > 
> > > Any reason not to add suparna's patch to -mm to fix these problems?
> > 
> > It relies on infrastructure which is not present in Linus's kernel.  We
> > should only be interested in fixing mainline 2.6.x.
> > 
> > Furthermore I'd like to see the direct-vs-buffered locking fixes fully
> > implemented against Linus's tree, not -mm.  They're almost there, but are
> > not quite complete.  Running off and making it dependent on the retry
> > infrastructure is not really helpful.
> > 
> 
> It was just easier to do this in a non-kludgy way, if we used the
> retry infrastructure. Here's why:
> 
> For fixing some of the cases, we run into a situation when we've 
> already submitted some of the I/O as AIO (with AIO callbacks set up)
> by the time we realise that we actually need to wait for that to 
> complete synchronously before falling back to buffered i/o (otherwise
> we can corrupt file data). 
> 
> With the retry model it is only the actual wait that occurs 
> differently for AIO and Sync I/O, not the submission. So we 
> can simply switch to be synchronous at the latter stage.
> 
> Having done that, though, I was actually working on trying 
> to find a way to do this that could hold for the mainline as well
> (i.e. without using retry infrastructure). The attached patch has 
> some special casing tweaks that might do the job; it 
> modifies the AIO-DIO callback to wakeup the caller synchronously 
> instead of issuing an aio_complete in such situations. 
> 
> However the existing aio-dio tests do not seem to exercise some 
> of those code paths, so I haven't had a chance to verify 
> if it really works for that case (i.e. A single AIO-DIO request 
> overwriting an allocated region followed by a hole).
> 
> The patch should apply to 2.6.0-test9-mm2.
> 
> Regards
> Suparna


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

* Re: 2.6.0-test9-mm2 - AIO tests still gets slab corruption
  2003-11-12 20:10       ` Daniel McNeil
@ 2003-11-13 11:29         ` Suparna Bhattacharya
  0 siblings, 0 replies; 15+ messages in thread
From: Suparna Bhattacharya @ 2003-11-13 11:29 UTC (permalink / raw)
  To: Daniel McNeil
  Cc: Andrew Morton, Linux Kernel Mailing List, linux-mm, linux-aio

On Wed, Nov 12, 2003 at 12:10:34PM -0800, Daniel McNeil wrote:
> Suparna,
> 
> I ran some AIO tests on your lastest patch and do not get any slab
> corruptions.  However, when I used different i/o sizes (the default is
> 64k), it looks like the AIOs never complete.  I updated my tests to add
> more debug output (with -d option).  As usual, the tests are here:
> http://developer.osdl.org/daniel/AIO/TESTS/

Thanks for unearthing this. 
The i/o size combinations you tried involve partial block i/o
which appear to be triggering a situation where a request spans an 
allocated region followed by a hole, just the case that I wanted 
to see :)

If I correctly understand what is going on, it seems appropriate
to make the fall through to buffered i/o skip the portion
which was written out by already submitted DIO requests -- i.e. to
carry on from where DIO broke off with -ENOTBLK, rather than issue
the entire write from the beginning. That should help address this 
problem. It means that we need to be able to return how much
got written out when we hit -ENOTBLK .... that's a slight change in 
return semantics - thus needs thinking through. 
I had considered doing this earlier, but at that time I didn't see 
a specific problem that would arise if we didn't.  
Have to work on a patch ...

Regards
Suparna

> 
> FYI, '-r' sets the readsize.
>      '-w' sets the writesize.
>      '-s' sets the filesize.
> 
> The tests hang waiting for the AIO writes to complete.  I had to hit
> ^c to get out of the tests.  No messages on the console.
> 
> Examples:
> 
> $ ./aiodio_sparse -d -s 180k -r 18k -w 18k
> io_submit() return 10
> aiodio_sparse: 10 i/o in flight
> child 2223, read loop count 0
> child 2223, read loop count 10
> 
> (The writes never complete)
> 
> $ ./aiodio_sparse -dd -s 180k -r 18k -w 11k
> child 2128, read loop count 0
> io_submit() return 16
> aiodio_sparse: 16 i/o in flight
> aiodio_sparse: offset 180224 filesize 184320 inflight 16
> aiodio_sparse: io_getevent() returned 1
> aiodio_sparse: io_getevent() res 11264 res2 0
> io_submit() return 1
> child 2128, read loop count 10
> 
> (1 write returns, then no more)
> 
> $ ~/AIO/AIO_TESTS/aiodio_sparse -dd -s 160k -r 18k -w 18k
> [....]
> io_submit() return 1
> aiodio_sparse: offset 349184 filesize 1793024 inflight 16
> aiodio_sparse: io_getevent() returned 1
> aiodio_sparse: io_getevent() res 11264 res2 0
> io_submit() return 1
> aiodio_sparse: offset 360448 filesize 1793024 inflight 16
> child 2300, read loop count 20
> child 2300, read loop count 30
> 
> (writes complete for a while and then stop).
> 
> Let me know if you want me to test something else.
> 
> Thanks,
> 
> Daniel
> 
> 
> On Tue, 2003-11-11 at 07:02, Suparna Bhattacharya wrote:
> > On Mon, Nov 10, 2003 at 03:42:32PM -0800, Andrew Morton wrote:
> > > Daniel McNeil <daniel@osdl.org> wrote:
> > > >
> > > > Andrew,
> > > > 
> > > > test9-mm2 is still getting slab corruption with AIO:
> > > 
> > > Why?
> > > 
> > > > Maximal retry count.  Bytes done 0
> > > > Slab corruption: start=dc70f91c, expend=dc70f9eb, problemat=dc70f91c
> > > > Last user: [<c0192fa3>](__aio_put_req+0xbf/0x200)
> > > > Data: 00 01 10 00 00 02 20 00 *********6C ******************************A5
> > > > Next: 71 F0 2C .A3 2F 19 C0 71 F0 2C .********************
> > > > slab error in check_poison_obj(): cache `kiocb': object was modified after freeing
> > > > 
> > > > With suparna's retry-based-aio-dio patch, there are no kernel messages
> > > > and the tests do not see any uninitialized data.
> > > > 
> > > > Any reason not to add suparna's patch to -mm to fix these problems?
> > > 
> > > It relies on infrastructure which is not present in Linus's kernel.  We
> > > should only be interested in fixing mainline 2.6.x.
> > > 
> > > Furthermore I'd like to see the direct-vs-buffered locking fixes fully
> > > implemented against Linus's tree, not -mm.  They're almost there, but are
> > > not quite complete.  Running off and making it dependent on the retry
> > > infrastructure is not really helpful.
> > > 
> > 
> > It was just easier to do this in a non-kludgy way, if we used the
> > retry infrastructure. Here's why:
> > 
> > For fixing some of the cases, we run into a situation when we've 
> > already submitted some of the I/O as AIO (with AIO callbacks set up)
> > by the time we realise that we actually need to wait for that to 
> > complete synchronously before falling back to buffered i/o (otherwise
> > we can corrupt file data). 
> > 
> > With the retry model it is only the actual wait that occurs 
> > differently for AIO and Sync I/O, not the submission. So we 
> > can simply switch to be synchronous at the latter stage.
> > 
> > Having done that, though, I was actually working on trying 
> > to find a way to do this that could hold for the mainline as well
> > (i.e. without using retry infrastructure). The attached patch has 
> > some special casing tweaks that might do the job; it 
> > modifies the AIO-DIO callback to wakeup the caller synchronously 
> > instead of issuing an aio_complete in such situations. 
> > 
> > However the existing aio-dio tests do not seem to exercise some 
> > of those code paths, so I haven't had a chance to verify 
> > if it really works for that case (i.e. A single AIO-DIO request 
> > overwriting an allocated region followed by a hole).
> > 
> > The patch should apply to 2.6.0-test9-mm2.
> > 
> > Regards
> > Suparna
> 
> --
> To unsubscribe, send a message with 'unsubscribe linux-aio' in
> the body to majordomo@kvack.org.  For more info on Linux AIO,
> see: http://www.kvack.org/aio/
> Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a>

-- 
Suparna Bhattacharya (suparna@in.ibm.com)
Linux Technology Center
IBM Software Labs, India


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

* Re: 2.6.0-test9-mm2
@ 2003-11-05 19:49 Bradley Chapman
  0 siblings, 0 replies; 15+ messages in thread
From: Bradley Chapman @ 2003-11-05 19:49 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Mr. Morton,

This patch: +drm-agp-module-dependency-fix.patch

has broken the radeon DRM driver under 2.6.0-test9-mm2. Enclosed is an e-mail I
sent to the dri-devel sourceforge list:

<snip>

I'm having problems using te DRI radeon driver in the 2.6.0-test9-mm2
kernel tree. When X is started, the kernel outputs these messages:

[drm:radeon_cp_init] *ERROR* radeon_cp_init called without lock held
[drm:radeon_unlock] *ERROR* Process 1083 using kernel context 0

The driver did not do this under 2.6.0-test9-mm1.

Interesting parts of dmesg (under 2.6.0-test9-mm2):

Linux agpgart interface v0.100 (c) Dave Jones
agpgart: Detected an Intel i845 Chipset.
agpgart: Maximum main memory to use for agp memory: 439M
agpgart: AGP aperture is 64M @ 0xec000000
[drm] Initialized radeon 1.9.0 20020828 on minor 0

I am using XFree86-4.3.0-42 from Fedora Core.

</snip>

Diffing the drivers/char/drm trees produces this, which I assume is the patch
you applied:

diff -urN linux-2.6.0-test9-mm1/drivers/char/drm/drm_agpsupport.h
linux-2.6.0-test9-mm2/drivers/char/drm/drm_agpsupport.h
--- linux-2.6.0-test9-mm1/drivers/char/drm/drm_agpsupport.h     2003-10-17
22:42:52.000000000 +0100
+++ linux-2.6.0-test9-mm2/drivers/char/drm/drm_agpsupport.h     2003-11-05
08:45:46.000000000 +0000
@@ -37,8 +37,8 @@
 #if __REALLY_HAVE_AGP


-#define DRM_AGP_GET (drm_agp_t *)inter_module_get("drm_agp")
-#define DRM_AGP_PUT inter_module_put("drm_agp")
+#define DRM_AGP_GET symbol_get(agp_drm)
+#define DRM_AGP_PUT symbol_put(agp_drm)

 /**
  * Pointer to the drm_agp_t structure made available by the agpgart module.

I've had some responses from dri-devel so far, but right now I'm running
2.6.0-test9-mm1, which works perfectly fine.

What now?

TIA

Brad

=====
Brad Chapman

Permanent e-mail: kakadu_croc@yahoo.com

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree

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

end of thread, other threads:[~2003-11-13 11:23 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-11-05  6:55 2.6.0-test9-mm2 Andrew Morton
2003-11-05 12:30 ` 2.6.0-test9-mm2 Alexander Hoogerhuis
2003-11-05 16:10 ` 2.6.0-test9-mm2 (compile stats) John Cherry
2003-11-05 17:02 ` 2.6.0-test9-mm2 Alistair John Strachan
2003-11-05 23:07 ` 2.6.0-test9-mm2 Martin J. Bligh
2003-11-10 23:06 ` 2.6.0-test9-mm2 - AIO tests still gets slab corruption Daniel McNeil
2003-11-10 23:42   ` Andrew Morton
2003-11-11 15:02     ` Suparna Bhattacharya
2003-11-12 20:10       ` Daniel McNeil
2003-11-13 11:29         ` Suparna Bhattacharya
2003-11-11 18:01     ` [PATCH 2.6.0-test9] AIO-ref-count.patch Daniel McNeil
2003-11-11 17:25 ` 2.6.0-test9-mm2 Daniel Drake
2003-11-12  1:18   ` 2.6.0-test9-mm2 Nick Piggin
2003-11-12  3:45     ` 2.6.0-test9-mm2 Mike Fedyk
2003-11-05 19:49 2.6.0-test9-mm2 Bradley Chapman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).