* 2.5.64-mm8 @ 2003-03-16 10:42 ` Andrew Morton 0 siblings, 0 replies; 21+ messages in thread From: Andrew Morton @ 2003-03-16 10:42 UTC (permalink / raw) To: linux-kernel, linux-mm ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.64/2.5.64-mm8/ . Several fixes to the anticipatory scheduler. It is the default IO scheduler again. The main thing which was fixed here was an interesting deadlock involving keventd, the I/O scheduler, vfork and request_module(). . I should have mentioned that 2.5.64-mm7 included a CPU scheduler tweak from Mike Galbraith which apparently fixes up the various starvation problems which people have been experiencing. That is also in 2.5.64-mm8. Changes since 2.5.64-mm7: -ppc64-compat-flock.patch -ppc64-eeh-fix.patch -ppc64-socketcall-fix.patch -register-tty_devclass.patch Merged +proc-sys-debug.patch Create /proc/sys/debug/0 ... /proc/sys/debug/5. These appear in the kernel as int proc_sys_debug[8]; These are not used for anyting - it is for ah-hoc debugging convenience. +as-jumbo-fix.patch +as-request_fn-in-timer.patch +as-remove-request-fix.patch Anticipatory scheduler fixes -deadline-default.patch Make the anticipatory scheduler the default again. +unplug-from-timer.patch Call q->unplug_fn direct from timer context rather than via schedule_work(). +ext2-no-lock_super-set-s_dirt.patch +ext2-ialloc-no-lock_super.patch +ext2-ialloc-no-lock_super-fixes.patch Avoid lock_super() in the ext2 inode allocator +pci-update-1.patch Update for Russell's PCI rework. +affs-lock_kernel-fix.patch Missing an unlock_kernel(). (Why didn't any of the checkers notice this?) +lseek-ext2_readdir.patch Remove the lock_kernel()s in ext2_readdir/ext3_readdir +inode_setattr-lock_kernel-removal.patch Remove the lock_kernel() around inode_setattr's vmtruncate() call. +raid0-oops-fix.patch Fix oops in RAID0. All 124 patches: linus.patch Latest from Linus mm.patch add -mmN to EXTRAVERSION kgdb.patch proc-sys-debug.patch create /proc/sys/debug/0 ... 7 noirqbalance-fix.patch Fix noirqbalance config_spinline.patch uninline spinlocks for profiling accuracy. ppc64-reloc_hide.patch ppc64-pci-patch.patch Subject: pci patch ppc64-aio-32bit-emulation.patch 32/64bit emulation for aio ppc64-64-bit-exec-fix.patch Pass the load address into ELF_PLAT_INIT() ppc64-scruffiness.patch Fix some PPC64 compile warnings sym-do-160.patch make the SYM driver do 160 MB/sec config-PAGE_OFFSET.patch Configurable kenrel/user memory split ptrace-flush.patch cache flushing in the ptrace code buffer-debug.patch buffer.c debugging warn-null-wakeup.patch ext3-truncate-ordered-pages.patch ext3: explicitly free truncated pages reiserfs_file_write-5.patch tcp-wakeups.patch Use fast wakeups in TCP/IPV4 rcu-stats.patch RCU statistics reporting ext3-journalled-data-assertion-fix.patch Remove incorrect assertion from ext3 nfs-speedup.patch nfs-oom-fix.patch nfs oom fix sk-allocation.patch Subject: Re: nfs oom nfs-more-oom-fix.patch rpciod-atomic-allocations.patch Make rcpiod use atomic allocations linux-isp.patch isp-update-1.patch remove-unused-congestion-stuff.patch Subject: [PATCH] remove unused congestion stuff as-iosched.patch anticipatory I/O scheduler as-debug-BUG-fix.patch as-eject-BUG-fix.patch AS: don't go BUG during cdrom eject as-jumbo-fix.patch AS: OSDL fixes as-request_fn-in-timer.patch Remove the scheduled_work thing as-remove-request-fix.patch cfq-2.patch CFQ scheduler, #2 unplug-from-timer.patch smalldevfs.patch smalldevfs remap-file-pages-2.5.63-a1.patch Subject: [patch] remap-file-pages-2.5.63-A1 hugh-remap-fix.patch hugh's file-offset-in-pte fix fremap-limit-offsets.patch fremap: limit remap_file_pages() file offsets fremap-all-mappings.patch Make all executable mappings be nonlinear filemap_populate-speedup.patch filemap_populate speedup file-offset-in-pte-x86_64.patch x86_64: support for file offsets in pte's file-offset-in-pte-ppc64.patch objrmap-2.5.62-5.patch object-based rmap objrmap-nonlinear-fixes.patch objrmap fix for nonlinear scheduler-tunables.patch scheduler tunables scheduler-starvation-fixes.patch CPU scheduler starvation fixes timer-cleanup.patch timer code cleanup timer-readdition-fix.patch timer re-addition lockup fix show_task-free-stack-fix.patch show_task() fix and cleanup yellowfin-set_bit-fix.patch yellowfin driver set_bit fix htree-nfs-fix.patch Fix ext3 htree / NFS compatibility problems update_atime-ng.patch inode a/c/mtime modification speedup one-sec-times.patch Implement a/c/time speedup in ext2 & ext3 task_prio-fix.patch simple task_prio() fix set_current_state-fs.patch use set_current_state in fs set_current_state-mm.patch use set_current_state in mm copy_thread-leak-fix.patch Fix memory leak in copy_thread slab_store_user-large-objects.patch slab debug: perform redzoning against larger objects file_list_lock-contention-fix.patch file_list_lock contention fixes tty_files-fixes.patch file->f_list locking in tty_io.c file_list_cleanup.patch file_list cleanup file_list-remove-free_list.patch file_table: remove the private freelist file-list-less-locking.patch file_list: less locking vt_ioctl-stack-use.patch stack reduction in drivers/char/vt_ioctl.c fix-mem-equals.patch Fix mem= options no-mmu-stubs.patch a few missing stubs for !CONFIG_MMU nommu-slab.patch slab changes for !CONFIG_MMU nfs-memleak-fix.patch memleak in fs/nfs/inode.c::nfs_get_sb() ufs-memleak-fix.patch Memleak in fs/ufs/util.c hugetlb-unmap_vmas-fix.patch fix the fix for unmap_vmas & hugepages early-writeback-init.patch Early writeback initialisation posix-timers-update.patch posix timers update e100-memleak-fix.patch Memleak in e100 driver pcmcia-1-kill-get_foo_map.patch pcmcia: 1/6 kill get_*_map pcmcia-2-remove-bus_foo-abstractions.patch pcmcia: 2/6: Remove bus_* abstractions pcmcia-3-add-SOCKET_CARDBUS_CONFIG.patch pcmcia: 3/6: add SOCKET_CARDBUS_CONFIG flag pcmcia-4-add-locking.patch pcmcia: 4/6: Add some locking to rsrc_mgr.c pcmcia-5-add-CONFIG_PCMCIA_PROBE.patch pcmcia 5/6: Introduce CONFIG_PCMCIA_PROBE pcmcia-6-remove-old-cardbus-clients.patch pcmcia: 6/6: Remove support for old cardbus clients oops-counters.patch OOPS instance counters io_apic-DO_ACTION-cleanup.patch io-apic.c: DO_ACTION cleanup ext2-ext3-noatime-fix.patch Ext2/3 noatime and dirsync sometimes ignored oprofile-timer-fix.patch fix oprofile timer race htree-nfs-fix-2.patch htree nfs fix ext2-balloc-fix.patch ext2: block allocation fix ext2-no-lock_super.patch concurrent block allocation for ext2 ext2-no-lock-super-whitespace-fixes.patch ext2-no-lock_super-fix-1.patch ext2-no-lock_super-fix-2.patch ext2-no-lock_super-fix-3.patch ext2-no-lock_super-fix-4.patch ext2-no-lock_super-fix-5.patch ext2-no-lock_super-fix-6.patch ext2-no-lock_super-fix-7.patch ext2-no-lock_super-set-s_dirt.patch ext2 block allocator: set s_dirt ext2-ialloc-no-lock_super.patch concurrent inode allocation for ext2 ext2-ialloc-no-lock_super-fixes.patch ext2: concurrent ialloc fixes brlock-removal-1.patch Brlock removal 1/5 - core brlock-removal-2.patch brlock removal 2/5: remove brlock from snap and vlan brlock-removal-3.patch brlock removal 3/5: remove brlock from bridge brlock-removal-4.patch brlock removal 4/5: removal from ipv4/ipv6 brlock-removal-5.patch brlock removal 5/5: remove brlock code pgd_index-comments.patch pgd_index/pmd_index/pte_index commentary pci-6.patch pci-7.patch pci-8.patch pci-9.patch pci-10.patch pci-11.patch pci-12.patch pci-13.patch pci-14.patch pci-15.patch pci-update-1.patch PCI patches: update proc-sysrq-trigger.patch /proc/sysrq-trigger: trigger sysrq functions via /proc aio-bits-fix.patch kiocbClear should use clear_bit instead of set_bit clean-inode-fix.patch initialise inode->i_rdev affs-lock_kernel-fix.patch affs unlock_kernel() fix lseek-ext2_readdir.patch remove lock_kernel() from readdir implementations. inode_setattr-lock_kernel-removal.patch remove lock_kernel() from inode_setattr's vmtruncate() call raid0-oops-fix.patch fix raid0 oops ^ permalink raw reply [flat|nested] 21+ messages in thread
* 2.5.64-mm8 @ 2003-03-16 10:42 ` Andrew Morton 0 siblings, 0 replies; 21+ messages in thread From: Andrew Morton @ 2003-03-16 10:42 UTC (permalink / raw) To: linux-kernel, linux-mm ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.64/2.5.64-mm8/ . Several fixes to the anticipatory scheduler. It is the default IO scheduler again. The main thing which was fixed here was an interesting deadlock involving keventd, the I/O scheduler, vfork and request_module(). . I should have mentioned that 2.5.64-mm7 included a CPU scheduler tweak from Mike Galbraith which apparently fixes up the various starvation problems which people have been experiencing. That is also in 2.5.64-mm8. Changes since 2.5.64-mm7: -ppc64-compat-flock.patch -ppc64-eeh-fix.patch -ppc64-socketcall-fix.patch -register-tty_devclass.patch Merged +proc-sys-debug.patch Create /proc/sys/debug/0 ... /proc/sys/debug/5. These appear in the kernel as int proc_sys_debug[8]; These are not used for anyting - it is for ah-hoc debugging convenience. +as-jumbo-fix.patch +as-request_fn-in-timer.patch +as-remove-request-fix.patch Anticipatory scheduler fixes -deadline-default.patch Make the anticipatory scheduler the default again. +unplug-from-timer.patch Call q->unplug_fn direct from timer context rather than via schedule_work(). +ext2-no-lock_super-set-s_dirt.patch +ext2-ialloc-no-lock_super.patch +ext2-ialloc-no-lock_super-fixes.patch Avoid lock_super() in the ext2 inode allocator +pci-update-1.patch Update for Russell's PCI rework. +affs-lock_kernel-fix.patch Missing an unlock_kernel(). (Why didn't any of the checkers notice this?) +lseek-ext2_readdir.patch Remove the lock_kernel()s in ext2_readdir/ext3_readdir +inode_setattr-lock_kernel-removal.patch Remove the lock_kernel() around inode_setattr's vmtruncate() call. +raid0-oops-fix.patch Fix oops in RAID0. All 124 patches: linus.patch Latest from Linus mm.patch add -mmN to EXTRAVERSION kgdb.patch proc-sys-debug.patch create /proc/sys/debug/0 ... 7 noirqbalance-fix.patch Fix noirqbalance config_spinline.patch uninline spinlocks for profiling accuracy. ppc64-reloc_hide.patch ppc64-pci-patch.patch Subject: pci patch ppc64-aio-32bit-emulation.patch 32/64bit emulation for aio ppc64-64-bit-exec-fix.patch Pass the load address into ELF_PLAT_INIT() ppc64-scruffiness.patch Fix some PPC64 compile warnings sym-do-160.patch make the SYM driver do 160 MB/sec config-PAGE_OFFSET.patch Configurable kenrel/user memory split ptrace-flush.patch cache flushing in the ptrace code buffer-debug.patch buffer.c debugging warn-null-wakeup.patch ext3-truncate-ordered-pages.patch ext3: explicitly free truncated pages reiserfs_file_write-5.patch tcp-wakeups.patch Use fast wakeups in TCP/IPV4 rcu-stats.patch RCU statistics reporting ext3-journalled-data-assertion-fix.patch Remove incorrect assertion from ext3 nfs-speedup.patch nfs-oom-fix.patch nfs oom fix sk-allocation.patch Subject: Re: nfs oom nfs-more-oom-fix.patch rpciod-atomic-allocations.patch Make rcpiod use atomic allocations linux-isp.patch isp-update-1.patch remove-unused-congestion-stuff.patch Subject: [PATCH] remove unused congestion stuff as-iosched.patch anticipatory I/O scheduler as-debug-BUG-fix.patch as-eject-BUG-fix.patch AS: don't go BUG during cdrom eject as-jumbo-fix.patch AS: OSDL fixes as-request_fn-in-timer.patch Remove the scheduled_work thing as-remove-request-fix.patch cfq-2.patch CFQ scheduler, #2 unplug-from-timer.patch smalldevfs.patch smalldevfs remap-file-pages-2.5.63-a1.patch Subject: [patch] remap-file-pages-2.5.63-A1 hugh-remap-fix.patch hugh's file-offset-in-pte fix fremap-limit-offsets.patch fremap: limit remap_file_pages() file offsets fremap-all-mappings.patch Make all executable mappings be nonlinear filemap_populate-speedup.patch filemap_populate speedup file-offset-in-pte-x86_64.patch x86_64: support for file offsets in pte's file-offset-in-pte-ppc64.patch objrmap-2.5.62-5.patch object-based rmap objrmap-nonlinear-fixes.patch objrmap fix for nonlinear scheduler-tunables.patch scheduler tunables scheduler-starvation-fixes.patch CPU scheduler starvation fixes timer-cleanup.patch timer code cleanup timer-readdition-fix.patch timer re-addition lockup fix show_task-free-stack-fix.patch show_task() fix and cleanup yellowfin-set_bit-fix.patch yellowfin driver set_bit fix htree-nfs-fix.patch Fix ext3 htree / NFS compatibility problems update_atime-ng.patch inode a/c/mtime modification speedup one-sec-times.patch Implement a/c/time speedup in ext2 & ext3 task_prio-fix.patch simple task_prio() fix set_current_state-fs.patch use set_current_state in fs set_current_state-mm.patch use set_current_state in mm copy_thread-leak-fix.patch Fix memory leak in copy_thread slab_store_user-large-objects.patch slab debug: perform redzoning against larger objects file_list_lock-contention-fix.patch file_list_lock contention fixes tty_files-fixes.patch file->f_list locking in tty_io.c file_list_cleanup.patch file_list cleanup file_list-remove-free_list.patch file_table: remove the private freelist file-list-less-locking.patch file_list: less locking vt_ioctl-stack-use.patch stack reduction in drivers/char/vt_ioctl.c fix-mem-equals.patch Fix mem= options no-mmu-stubs.patch a few missing stubs for !CONFIG_MMU nommu-slab.patch slab changes for !CONFIG_MMU nfs-memleak-fix.patch memleak in fs/nfs/inode.c::nfs_get_sb() ufs-memleak-fix.patch Memleak in fs/ufs/util.c hugetlb-unmap_vmas-fix.patch fix the fix for unmap_vmas & hugepages early-writeback-init.patch Early writeback initialisation posix-timers-update.patch posix timers update e100-memleak-fix.patch Memleak in e100 driver pcmcia-1-kill-get_foo_map.patch pcmcia: 1/6 kill get_*_map pcmcia-2-remove-bus_foo-abstractions.patch pcmcia: 2/6: Remove bus_* abstractions pcmcia-3-add-SOCKET_CARDBUS_CONFIG.patch pcmcia: 3/6: add SOCKET_CARDBUS_CONFIG flag pcmcia-4-add-locking.patch pcmcia: 4/6: Add some locking to rsrc_mgr.c pcmcia-5-add-CONFIG_PCMCIA_PROBE.patch pcmcia 5/6: Introduce CONFIG_PCMCIA_PROBE pcmcia-6-remove-old-cardbus-clients.patch pcmcia: 6/6: Remove support for old cardbus clients oops-counters.patch OOPS instance counters io_apic-DO_ACTION-cleanup.patch io-apic.c: DO_ACTION cleanup ext2-ext3-noatime-fix.patch Ext2/3 noatime and dirsync sometimes ignored oprofile-timer-fix.patch fix oprofile timer race htree-nfs-fix-2.patch htree nfs fix ext2-balloc-fix.patch ext2: block allocation fix ext2-no-lock_super.patch concurrent block allocation for ext2 ext2-no-lock-super-whitespace-fixes.patch ext2-no-lock_super-fix-1.patch ext2-no-lock_super-fix-2.patch ext2-no-lock_super-fix-3.patch ext2-no-lock_super-fix-4.patch ext2-no-lock_super-fix-5.patch ext2-no-lock_super-fix-6.patch ext2-no-lock_super-fix-7.patch ext2-no-lock_super-set-s_dirt.patch ext2 block allocator: set s_dirt ext2-ialloc-no-lock_super.patch concurrent inode allocation for ext2 ext2-ialloc-no-lock_super-fixes.patch ext2: concurrent ialloc fixes brlock-removal-1.patch Brlock removal 1/5 - core brlock-removal-2.patch brlock removal 2/5: remove brlock from snap and vlan brlock-removal-3.patch brlock removal 3/5: remove brlock from bridge brlock-removal-4.patch brlock removal 4/5: removal from ipv4/ipv6 brlock-removal-5.patch brlock removal 5/5: remove brlock code pgd_index-comments.patch pgd_index/pmd_index/pte_index commentary pci-6.patch pci-7.patch pci-8.patch pci-9.patch pci-10.patch pci-11.patch pci-12.patch pci-13.patch pci-14.patch pci-15.patch pci-update-1.patch PCI patches: update proc-sysrq-trigger.patch /proc/sysrq-trigger: trigger sysrq functions via /proc aio-bits-fix.patch kiocbClear should use clear_bit instead of set_bit clean-inode-fix.patch initialise inode->i_rdev affs-lock_kernel-fix.patch affs unlock_kernel() fix lseek-ext2_readdir.patch remove lock_kernel() from readdir implementations. inode_setattr-lock_kernel-removal.patch remove lock_kernel() from inode_setattr's vmtruncate() call raid0-oops-fix.patch fix raid0 oops -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 21+ messages in thread
* [patch] 2.5.64-mm8: fs/affs/dir.c doesn't compile 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton (?) @ 2003-03-16 11:45 ` Adrian Bunk -1 siblings, 0 replies; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 11:45 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel On Sun, Mar 16, 2003 at 02:42:39AM -0800, Andrew Morton wrote: >... > +affs-lock_kernel-fix.patch > > Missing an unlock_kernel(). (Why didn't any of the checkers notice this?) >... It seems noone tried to compile the patched file: <-- snip --> ... gcc -Wp,-MD,fs/affs/.dir.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iinclude/asm-i386/mach-default -g -nostdinc -iwithprefix include -DKBUILD_BASENAME=dir -DKBUILD_MODNAME=affs -c -o fs/affs/dir.o fs/affs/dir.c fs/affs/dir.c: In function `affs_readdir': fs/affs/dir.c:81: `ret' undeclared (first use in this function) fs/affs/dir.c:81: (Each undeclared identifier is reported only once fs/affs/dir.c:81: for each function it appears in.) make[2]: *** [fs/affs/dir.o] Error 1 <-- snip --> The following patch solves it: --- linux-2.5.64-mm8/fs/affs/dir.c.old 2003-03-16 12:39:54.000000000 +0100 +++ linux-2.5.64-mm8/fs/affs/dir.c 2003-03-16 12:43:30.000000000 +0100 @@ -78,7 +78,7 @@ if (f_pos == 0) { filp->private_data = (void *)0; if (filldir(dirent, ".", 1, f_pos, inode->i_ino, DT_DIR) < 0) { - ret = 0; + res = 0; goto out; } filp->f_pos = f_pos = 1; cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton @ 2003-03-16 12:21 ` Roman Zippel -1 siblings, 0 replies; 21+ messages in thread From: Roman Zippel @ 2003-03-16 12:21 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm Hi, On Sun, 16 Mar 2003, Andrew Morton wrote: > +affs-lock_kernel-fix.patch > > Missing an unlock_kernel(). (Why didn't any of the checkers notice this?) Could you replace this the patch below? It removes the kernel lock completely and also fixes a bitmap corruption. bye, Roman --- linux/fs/affs/Changes 18 May 2002 12:58:27 -0000 1.1.1.2 +++ linux/fs/affs/Changes 16 Mar 2003 00:35:30 -0000 @@ -28,6 +28,11 @@ Known bugs: Please direct bug reports to: zippel@linux-m68k.org +Version 3.20 +------------ +- kill kernel lock +- fix for a possible bitmap corruption + Version 3.19 ------------ --- linux/fs/affs/bitmap.c 25 May 2002 16:20:39 -0000 1.1.1.8 +++ linux/fs/affs/bitmap.c 16 Mar 2003 00:35:31 -0000 @@ -185,6 +185,8 @@ find_bmap: /* search for the next bmap buffer with free bits */ i = sbi->s_bmap_count; do { + if (--i < 0) + goto err_full; bmap++; bm++; if (bmap < sbi->s_bmap_count) @@ -192,8 +194,6 @@ find_bmap: /* restart search at zero */ bmap = 0; bm = sbi->s_bitmap; - if (--i <= 0) - goto err_full; } while (!bm->bm_free); blk = bmap * sbi->s_bmap_bits; @@ -216,8 +216,8 @@ find_bmap_bit: mask = ~0UL << (bit & 31); blk &= ~31UL; - tmp = be32_to_cpu(*data) & mask; - if (tmp) + tmp = be32_to_cpu(*data); + if (tmp & mask) goto find_bit; /* scan the rest of the buffer */ @@ -230,10 +230,11 @@ find_bmap_bit: goto find_bmap; } while (!(tmp = *data)); tmp = be32_to_cpu(tmp); + mask = ~0; find_bit: /* finally look for a free bit in the word */ - bit = ffs(tmp) - 1; + bit = ffs(tmp & mask) - 1; blk += bit + sbi->s_reserved; mask2 = mask = 1 << (bit & 31); AFFS_I(inode)->i_lastalloc = blk; @@ -266,8 +267,8 @@ err_bh_read: sbi->s_bmap_bh = NULL; sbi->s_last_bmap = ~0; err_full: - pr_debug("failed\n"); up(&sbi->s_bmlock); + pr_debug("failed\n"); return 0; } --- linux/fs/affs/dir.c 11 Nov 2002 18:56:16 -0000 1.1.1.6 +++ linux/fs/affs/dir.c 16 Mar 2003 00:35:31 -0000 @@ -65,8 +65,6 @@ affs_readdir(struct file *filp, void *di int stored; int res; - lock_kernel(); - pr_debug("AFFS: readdir(ino=%lu,f_pos=%lx)\n",inode->i_ino,(unsigned long)filp->f_pos); stored = 0; @@ -162,7 +160,6 @@ readdir_out: affs_brelse(dir_bh); affs_brelse(fh_bh); affs_unlock_dir(inode); - unlock_kernel(); pr_debug("AFFS: readdir()=%d\n", stored); return res; } --- linux/fs/affs/inode.c 18 Nov 2002 18:46:35 -0000 1.1.1.10 +++ linux/fs/affs/inode.c 16 Mar 2003 00:35:31 -0000 @@ -195,11 +195,9 @@ affs_write_inode(struct inode *inode, in if (!inode->i_nlink) // possibly free block return; - lock_kernel(); bh = affs_bread(sb, inode->i_ino); if (!bh) { affs_error(sb,"write_inode","Cannot read block %lu",inode->i_ino); - unlock_kernel(); return; } tail = AFFS_TAIL(sb, bh); @@ -227,7 +225,7 @@ affs_write_inode(struct inode *inode, in affs_fix_checksum(sb, bh); mark_buffer_dirty_inode(bh, inode); affs_brelse(bh); - unlock_kernel(); + affs_free_prealloc(inode); } int @@ -236,8 +234,6 @@ affs_notify_change(struct dentry *dentry struct inode *inode = dentry->d_inode; int error; - lock_kernel(); - pr_debug("AFFS: notify_change(%lu,0x%x)\n",inode->i_ino,attr->ia_valid); error = inode_change_ok(inode,attr); @@ -257,7 +253,6 @@ affs_notify_change(struct dentry *dentry if (!error && (attr->ia_valid & ATTR_MODE)) mode_to_prot(inode); out: - unlock_kernel(); return error; } @@ -265,15 +260,13 @@ void affs_put_inode(struct inode *inode) { pr_debug("AFFS: put_inode(ino=%lu, nlink=%u)\n", inode->i_ino, inode->i_nlink); - lock_kernel(); affs_free_prealloc(inode); if (atomic_read(&inode->i_count) == 1) { + down(&inode->i_sem); if (inode->i_size != AFFS_I(inode)->mmu_private) affs_truncate(inode); - //if (inode->i_nlink) - // affs_clear_inode(inode); + up(&inode->i_sem); } - unlock_kernel(); } void @@ -284,9 +277,7 @@ affs_delete_inode(struct inode *inode) if (S_ISREG(inode->i_mode)) affs_truncate(inode); clear_inode(inode); - lock_kernel(); affs_free_block(inode->i_sb, inode->i_ino); - unlock_kernel(); } void --- linux/fs/affs/namei.c 11 Nov 2002 18:56:17 -0000 1.1.1.8 +++ linux/fs/affs/namei.c 16 Mar 2003 00:35:31 -0000 @@ -218,12 +218,10 @@ affs_lookup(struct inode *dir, struct de pr_debug("AFFS: lookup(\"%.*s\")\n",(int)dentry->d_name.len,dentry->d_name.name); - lock_kernel(); affs_lock_dir(dir); bh = affs_find_entry(dir, dentry); affs_unlock_dir(dir); if (IS_ERR(bh)) { - unlock_kernel(); return ERR_PTR(PTR_ERR(bh)); } if (bh) { @@ -240,12 +238,10 @@ affs_lookup(struct inode *dir, struct de affs_brelse(bh); inode = iget(sb, ino); if (!inode) { - unlock_kernel(); return ERR_PTR(-EACCES); } } dentry->d_op = AFFS_SB(sb)->s_flags & SF_INTL ? &affs_intl_dentry_operations : &affs_dentry_operations; - unlock_kernel(); d_add(dentry, inode); return NULL; } @@ -253,17 +249,10 @@ affs_lookup(struct inode *dir, struct de int affs_unlink(struct inode *dir, struct dentry *dentry) { - int res; pr_debug("AFFS: unlink(dir=%d, \"%.*s\")\n", (u32)dir->i_ino, (int)dentry->d_name.len, dentry->d_name.name); - if (!dentry->d_inode) - return -ENOENT; - - lock_kernel(); - res = affs_remove_header(dentry); - unlock_kernel(); - return res; + return affs_remove_header(dentry); } int @@ -276,12 +265,9 @@ affs_create(struct inode *dir, struct de pr_debug("AFFS: create(%lu,\"%.*s\",0%o)\n",dir->i_ino,(int)dentry->d_name.len, dentry->d_name.name,mode); - lock_kernel(); inode = affs_new_inode(dir); - if (!inode) { - unlock_kernel(); + if (!inode) return -ENOSPC; - } inode->i_mode = mode; mode_to_prot(inode); @@ -294,10 +280,8 @@ affs_create(struct inode *dir, struct de if (error) { inode->i_nlink = 0; iput(inode); - unlock_kernel(); return error; } - unlock_kernel(); return 0; } @@ -310,12 +294,9 @@ affs_mkdir(struct inode *dir, struct den pr_debug("AFFS: mkdir(%lu,\"%.*s\",0%o)\n",dir->i_ino, (int)dentry->d_name.len,dentry->d_name.name,mode); - lock_kernel(); inode = affs_new_inode(dir); - if (!inode) { - unlock_kernel(); + if (!inode) return -ENOSPC; - } inode->i_mode = S_IFDIR | mode; mode_to_prot(inode); @@ -328,10 +309,8 @@ affs_mkdir(struct inode *dir, struct den inode->i_nlink = 0; mark_inode_dirty(inode); iput(inode); - unlock_kernel(); return error; } - unlock_kernel(); return 0; } @@ -357,14 +336,10 @@ affs_symlink(struct inode *dir, struct d pr_debug("AFFS: symlink(%lu,\"%.*s\" -> \"%s\")\n",dir->i_ino, (int)dentry->d_name.len,dentry->d_name.name,symname); - lock_kernel(); maxlen = AFFS_SB(sb)->s_hashsize * sizeof(u32) - 1; - error = -ENOSPC; inode = affs_new_inode(dir); - if (!inode) { - unlock_kernel(); + if (!inode) return -ENOSPC; - } inode->i_op = &affs_symlink_inode_operations; inode->i_data.a_ops = &affs_symlink_aops; @@ -410,7 +385,6 @@ affs_symlink(struct inode *dir, struct d error = affs_add_entry(dir, inode, dentry, ST_SOFTLINK); if (error) goto err; - unlock_kernel(); return 0; @@ -418,7 +392,6 @@ err: inode->i_nlink = 0; mark_inode_dirty(inode); iput(inode); - unlock_kernel(); return error; } @@ -426,23 +399,11 @@ int affs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry) { struct inode *inode = old_dentry->d_inode; - int error; pr_debug("AFFS: link(%u, %u, \"%.*s\")\n", (u32)inode->i_ino, (u32)dir->i_ino, (int)dentry->d_name.len,dentry->d_name.name); - lock_kernel(); - error = affs_add_entry(dir, inode, dentry, ST_LINKFILE); - if (error) { - /* WTF??? */ - inode->i_nlink = 0; - mark_inode_dirty(inode); - iput(inode); - unlock_kernel(); - return error; - } - unlock_kernel(); - return 0; + return affs_add_entry(dir, inode, dentry, ST_LINKFILE); } int @@ -453,21 +414,19 @@ affs_rename(struct inode *old_dir, struc struct buffer_head *bh = NULL; int retval; - lock_kernel(); pr_debug("AFFS: rename(old=%u,\"%*s\" to new=%u,\"%*s\")\n", (u32)old_dir->i_ino, (int)old_dentry->d_name.len, old_dentry->d_name.name, (u32)new_dir->i_ino, (int)new_dentry->d_name.len, new_dentry->d_name.name); - if ((retval = affs_check_name(new_dentry->d_name.name,new_dentry->d_name.len))) - goto done; + retval = affs_check_name(new_dentry->d_name.name,new_dentry->d_name.len); + if (retval) + return retval; /* Unlink destination if it already exists */ if (new_dentry->d_inode) { retval = affs_remove_header(new_dentry); - if (retval) { - unlock_kernel(); + if (retval) return retval; - } } retval = -EIO; @@ -493,6 +452,5 @@ affs_rename(struct inode *old_dir, struc done: mark_buffer_dirty_inode(bh, retval ? old_dir : new_dir); affs_brelse(bh); - unlock_kernel(); return retval; } --- linux/fs/affs/super.c 27 Jan 2003 21:03:20 -0000 1.1.1.15 +++ linux/fs/affs/super.c 16 Mar 2003 00:35:31 -0000 @@ -40,7 +40,6 @@ static void affs_put_super(struct super_block *sb) { struct affs_sb_info *sbi = AFFS_SB(sb); - lock_kernel(); pr_debug("AFFS: put_super()\n"); if (!(sb->s_flags & MS_RDONLY)) { @@ -58,7 +57,6 @@ affs_put_super(struct super_block *sb) affs_brelse(sbi->s_root_bh); kfree(sbi); sb->s_fs_info = NULL; - unlock_kernel(); return; } @@ -67,7 +65,7 @@ affs_write_super(struct super_block *sb) { int clean = 2; struct affs_sb_info *sbi = AFFS_SB(sb); - lock_kernel(); + if (!(sb->s_flags & MS_RDONLY)) { // if (sbi->s_bitmap[i].bm_bh) { // if (buffer_dirty(sbi->s_bitmap[i].bm_bh)) { @@ -81,7 +79,7 @@ affs_write_super(struct super_block *sb) } else sb->s_dirt = 0; - unlock_kernel(); + pr_debug("AFFS: write_super() at %lu, clean=%d\n", get_seconds(), clean); } static kmem_cache_t * affs_inode_cachep; --- linux/fs/affs/symlink.c 11 Nov 2002 18:56:17 -0000 1.1.1.5 +++ linux/fs/affs/symlink.c 16 Mar 2003 00:35:31 -0000 @@ -32,9 +32,7 @@ static int affs_symlink_readpage(struct pr_debug("AFFS: follow_link(ino=%lu)\n",inode->i_ino); err = -EIO; - lock_kernel(); bh = affs_bread(inode->i_sb, inode->i_ino); - unlock_kernel(); if (!bh) goto fail; i = 0; @@ -63,9 +61,7 @@ static int affs_symlink_readpage(struct j++; } link[i] = '\0'; - lock_kernel(); affs_brelse(bh); - unlock_kernel(); SetPageUptodate(page); kunmap(page); unlock_page(page); ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 @ 2003-03-16 12:21 ` Roman Zippel 0 siblings, 0 replies; 21+ messages in thread From: Roman Zippel @ 2003-03-16 12:21 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm Hi, On Sun, 16 Mar 2003, Andrew Morton wrote: > +affs-lock_kernel-fix.patch > > Missing an unlock_kernel(). (Why didn't any of the checkers notice this?) Could you replace this the patch below? It removes the kernel lock completely and also fixes a bitmap corruption. bye, Roman --- linux/fs/affs/Changes 18 May 2002 12:58:27 -0000 1.1.1.2 +++ linux/fs/affs/Changes 16 Mar 2003 00:35:30 -0000 @@ -28,6 +28,11 @@ Known bugs: Please direct bug reports to: zippel@linux-m68k.org +Version 3.20 +------------ +- kill kernel lock +- fix for a possible bitmap corruption + Version 3.19 ------------ --- linux/fs/affs/bitmap.c 25 May 2002 16:20:39 -0000 1.1.1.8 +++ linux/fs/affs/bitmap.c 16 Mar 2003 00:35:31 -0000 @@ -185,6 +185,8 @@ find_bmap: /* search for the next bmap buffer with free bits */ i = sbi->s_bmap_count; do { + if (--i < 0) + goto err_full; bmap++; bm++; if (bmap < sbi->s_bmap_count) @@ -192,8 +194,6 @@ find_bmap: /* restart search at zero */ bmap = 0; bm = sbi->s_bitmap; - if (--i <= 0) - goto err_full; } while (!bm->bm_free); blk = bmap * sbi->s_bmap_bits; @@ -216,8 +216,8 @@ find_bmap_bit: mask = ~0UL << (bit & 31); blk &= ~31UL; - tmp = be32_to_cpu(*data) & mask; - if (tmp) + tmp = be32_to_cpu(*data); + if (tmp & mask) goto find_bit; /* scan the rest of the buffer */ @@ -230,10 +230,11 @@ find_bmap_bit: goto find_bmap; } while (!(tmp = *data)); tmp = be32_to_cpu(tmp); + mask = ~0; find_bit: /* finally look for a free bit in the word */ - bit = ffs(tmp) - 1; + bit = ffs(tmp & mask) - 1; blk += bit + sbi->s_reserved; mask2 = mask = 1 << (bit & 31); AFFS_I(inode)->i_lastalloc = blk; @@ -266,8 +267,8 @@ err_bh_read: sbi->s_bmap_bh = NULL; sbi->s_last_bmap = ~0; err_full: - pr_debug("failed\n"); up(&sbi->s_bmlock); + pr_debug("failed\n"); return 0; } --- linux/fs/affs/dir.c 11 Nov 2002 18:56:16 -0000 1.1.1.6 +++ linux/fs/affs/dir.c 16 Mar 2003 00:35:31 -0000 @@ -65,8 +65,6 @@ affs_readdir(struct file *filp, void *di int stored; int res; - lock_kernel(); - pr_debug("AFFS: readdir(ino=%lu,f_pos=%lx)\n",inode->i_ino,(unsigned long)filp->f_pos); stored = 0; @@ -162,7 +160,6 @@ readdir_out: affs_brelse(dir_bh); affs_brelse(fh_bh); affs_unlock_dir(inode); - unlock_kernel(); pr_debug("AFFS: readdir()=%d\n", stored); return res; } --- linux/fs/affs/inode.c 18 Nov 2002 18:46:35 -0000 1.1.1.10 +++ linux/fs/affs/inode.c 16 Mar 2003 00:35:31 -0000 @@ -195,11 +195,9 @@ affs_write_inode(struct inode *inode, in if (!inode->i_nlink) // possibly free block return; - lock_kernel(); bh = affs_bread(sb, inode->i_ino); if (!bh) { affs_error(sb,"write_inode","Cannot read block %lu",inode->i_ino); - unlock_kernel(); return; } tail = AFFS_TAIL(sb, bh); @@ -227,7 +225,7 @@ affs_write_inode(struct inode *inode, in affs_fix_checksum(sb, bh); mark_buffer_dirty_inode(bh, inode); affs_brelse(bh); - unlock_kernel(); + affs_free_prealloc(inode); } int @@ -236,8 +234,6 @@ affs_notify_change(struct dentry *dentry struct inode *inode = dentry->d_inode; int error; - lock_kernel(); - pr_debug("AFFS: notify_change(%lu,0x%x)\n",inode->i_ino,attr->ia_valid); error = inode_change_ok(inode,attr); @@ -257,7 +253,6 @@ affs_notify_change(struct dentry *dentry if (!error && (attr->ia_valid & ATTR_MODE)) mode_to_prot(inode); out: - unlock_kernel(); return error; } @@ -265,15 +260,13 @@ void affs_put_inode(struct inode *inode) { pr_debug("AFFS: put_inode(ino=%lu, nlink=%u)\n", inode->i_ino, inode->i_nlink); - lock_kernel(); affs_free_prealloc(inode); if (atomic_read(&inode->i_count) == 1) { + down(&inode->i_sem); if (inode->i_size != AFFS_I(inode)->mmu_private) affs_truncate(inode); - //if (inode->i_nlink) - // affs_clear_inode(inode); + up(&inode->i_sem); } - unlock_kernel(); } void @@ -284,9 +277,7 @@ affs_delete_inode(struct inode *inode) if (S_ISREG(inode->i_mode)) affs_truncate(inode); clear_inode(inode); - lock_kernel(); affs_free_block(inode->i_sb, inode->i_ino); - unlock_kernel(); } void --- linux/fs/affs/namei.c 11 Nov 2002 18:56:17 -0000 1.1.1.8 +++ linux/fs/affs/namei.c 16 Mar 2003 00:35:31 -0000 @@ -218,12 +218,10 @@ affs_lookup(struct inode *dir, struct de pr_debug("AFFS: lookup(\"%.*s\")\n",(int)dentry->d_name.len,dentry->d_name.name); - lock_kernel(); affs_lock_dir(dir); bh = affs_find_entry(dir, dentry); affs_unlock_dir(dir); if (IS_ERR(bh)) { - unlock_kernel(); return ERR_PTR(PTR_ERR(bh)); } if (bh) { @@ -240,12 +238,10 @@ affs_lookup(struct inode *dir, struct de affs_brelse(bh); inode = iget(sb, ino); if (!inode) { - unlock_kernel(); return ERR_PTR(-EACCES); } } dentry->d_op = AFFS_SB(sb)->s_flags & SF_INTL ? &affs_intl_dentry_operations : &affs_dentry_operations; - unlock_kernel(); d_add(dentry, inode); return NULL; } @@ -253,17 +249,10 @@ affs_lookup(struct inode *dir, struct de int affs_unlink(struct inode *dir, struct dentry *dentry) { - int res; pr_debug("AFFS: unlink(dir=%d, \"%.*s\")\n", (u32)dir->i_ino, (int)dentry->d_name.len, dentry->d_name.name); - if (!dentry->d_inode) - return -ENOENT; - - lock_kernel(); - res = affs_remove_header(dentry); - unlock_kernel(); - return res; + return affs_remove_header(dentry); } int @@ -276,12 +265,9 @@ affs_create(struct inode *dir, struct de pr_debug("AFFS: create(%lu,\"%.*s\",0%o)\n",dir->i_ino,(int)dentry->d_name.len, dentry->d_name.name,mode); - lock_kernel(); inode = affs_new_inode(dir); - if (!inode) { - unlock_kernel(); + if (!inode) return -ENOSPC; - } inode->i_mode = mode; mode_to_prot(inode); @@ -294,10 +280,8 @@ affs_create(struct inode *dir, struct de if (error) { inode->i_nlink = 0; iput(inode); - unlock_kernel(); return error; } - unlock_kernel(); return 0; } @@ -310,12 +294,9 @@ affs_mkdir(struct inode *dir, struct den pr_debug("AFFS: mkdir(%lu,\"%.*s\",0%o)\n",dir->i_ino, (int)dentry->d_name.len,dentry->d_name.name,mode); - lock_kernel(); inode = affs_new_inode(dir); - if (!inode) { - unlock_kernel(); + if (!inode) return -ENOSPC; - } inode->i_mode = S_IFDIR | mode; mode_to_prot(inode); @@ -328,10 +309,8 @@ affs_mkdir(struct inode *dir, struct den inode->i_nlink = 0; mark_inode_dirty(inode); iput(inode); - unlock_kernel(); return error; } - unlock_kernel(); return 0; } @@ -357,14 +336,10 @@ affs_symlink(struct inode *dir, struct d pr_debug("AFFS: symlink(%lu,\"%.*s\" -> \"%s\")\n",dir->i_ino, (int)dentry->d_name.len,dentry->d_name.name,symname); - lock_kernel(); maxlen = AFFS_SB(sb)->s_hashsize * sizeof(u32) - 1; - error = -ENOSPC; inode = affs_new_inode(dir); - if (!inode) { - unlock_kernel(); + if (!inode) return -ENOSPC; - } inode->i_op = &affs_symlink_inode_operations; inode->i_data.a_ops = &affs_symlink_aops; @@ -410,7 +385,6 @@ affs_symlink(struct inode *dir, struct d error = affs_add_entry(dir, inode, dentry, ST_SOFTLINK); if (error) goto err; - unlock_kernel(); return 0; @@ -418,7 +392,6 @@ err: inode->i_nlink = 0; mark_inode_dirty(inode); iput(inode); - unlock_kernel(); return error; } @@ -426,23 +399,11 @@ int affs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry) { struct inode *inode = old_dentry->d_inode; - int error; pr_debug("AFFS: link(%u, %u, \"%.*s\")\n", (u32)inode->i_ino, (u32)dir->i_ino, (int)dentry->d_name.len,dentry->d_name.name); - lock_kernel(); - error = affs_add_entry(dir, inode, dentry, ST_LINKFILE); - if (error) { - /* WTF??? */ - inode->i_nlink = 0; - mark_inode_dirty(inode); - iput(inode); - unlock_kernel(); - return error; - } - unlock_kernel(); - return 0; + return affs_add_entry(dir, inode, dentry, ST_LINKFILE); } int @@ -453,21 +414,19 @@ affs_rename(struct inode *old_dir, struc struct buffer_head *bh = NULL; int retval; - lock_kernel(); pr_debug("AFFS: rename(old=%u,\"%*s\" to new=%u,\"%*s\")\n", (u32)old_dir->i_ino, (int)old_dentry->d_name.len, old_dentry->d_name.name, (u32)new_dir->i_ino, (int)new_dentry->d_name.len, new_dentry->d_name.name); - if ((retval = affs_check_name(new_dentry->d_name.name,new_dentry->d_name.len))) - goto done; + retval = affs_check_name(new_dentry->d_name.name,new_dentry->d_name.len); + if (retval) + return retval; /* Unlink destination if it already exists */ if (new_dentry->d_inode) { retval = affs_remove_header(new_dentry); - if (retval) { - unlock_kernel(); + if (retval) return retval; - } } retval = -EIO; @@ -493,6 +452,5 @@ affs_rename(struct inode *old_dir, struc done: mark_buffer_dirty_inode(bh, retval ? old_dir : new_dir); affs_brelse(bh); - unlock_kernel(); return retval; } --- linux/fs/affs/super.c 27 Jan 2003 21:03:20 -0000 1.1.1.15 +++ linux/fs/affs/super.c 16 Mar 2003 00:35:31 -0000 @@ -40,7 +40,6 @@ static void affs_put_super(struct super_block *sb) { struct affs_sb_info *sbi = AFFS_SB(sb); - lock_kernel(); pr_debug("AFFS: put_super()\n"); if (!(sb->s_flags & MS_RDONLY)) { @@ -58,7 +57,6 @@ affs_put_super(struct super_block *sb) affs_brelse(sbi->s_root_bh); kfree(sbi); sb->s_fs_info = NULL; - unlock_kernel(); return; } @@ -67,7 +65,7 @@ affs_write_super(struct super_block *sb) { int clean = 2; struct affs_sb_info *sbi = AFFS_SB(sb); - lock_kernel(); + if (!(sb->s_flags & MS_RDONLY)) { // if (sbi->s_bitmap[i].bm_bh) { // if (buffer_dirty(sbi->s_bitmap[i].bm_bh)) { @@ -81,7 +79,7 @@ affs_write_super(struct super_block *sb) } else sb->s_dirt = 0; - unlock_kernel(); + pr_debug("AFFS: write_super() at %lu, clean=%d\n", get_seconds(), clean); } static kmem_cache_t * affs_inode_cachep; --- linux/fs/affs/symlink.c 11 Nov 2002 18:56:17 -0000 1.1.1.5 +++ linux/fs/affs/symlink.c 16 Mar 2003 00:35:31 -0000 @@ -32,9 +32,7 @@ static int affs_symlink_readpage(struct pr_debug("AFFS: follow_link(ino=%lu)\n",inode->i_ino); err = -EIO; - lock_kernel(); bh = affs_bread(inode->i_sb, inode->i_ino); - unlock_kernel(); if (!bh) goto fail; i = 0; @@ -63,9 +61,7 @@ static int affs_symlink_readpage(struct j++; } link[i] = '\0'; - lock_kernel(); affs_brelse(bh); - unlock_kernel(); SetPageUptodate(page); kunmap(page); unlock_page(page); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 21+ messages in thread
* 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton ` (2 preceding siblings ...) (?) @ 2003-03-16 13:02 ` Adrian Bunk 2003-03-16 15:44 ` Adrian Bunk 2003-03-16 18:00 ` Adrian Bunk -1 siblings, 2 replies; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 13:02 UTC (permalink / raw) To: Andrew Morton, Linus Torvalds, chas, linux-atm-general; +Cc: linux-kernel On Sun, Mar 16, 2003 at 02:42:39AM -0800, Andrew Morton wrote: >... > All 124 patches: > > linus.patch > Latest from Linus >... The following problem seems to come from Linus' tree: tx_inuse was removed from struct atm_vcc in include/linux/atmdev.h but drivers/atm/idt77252.c still needs it: <-- snip --> ... gcc -Wp,-MD,drivers/atm/.idt77252.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iinclude/asm-i386/mach-default -g -nostdinc -iwithprefix include -g -DKBUILD_BASENAME=idt77252 -DKBUILD_MODNAME=idt77252 -c -o drivers/atm/idt77252.o drivers/atm/idt77252.c drivers/atm/idt77252.c: In function `alloc_scq': drivers/atm/idt77252.c:669: warning: unsigned int format, different type arg (arg 5) drivers/atm/idt77252.c: In function `push_on_scq': drivers/atm/idt77252.c:733: structure has no member named `tx_inuse' drivers/atm/idt77252.c: In function `idt77252_send_oam': drivers/atm/idt77252.c:2028: structure has no member named `tx_inuse' make[2]: *** [drivers/atm/idt77252.o] Error 1 <-- snip --> cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile 2003-03-16 13:02 ` 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile Adrian Bunk @ 2003-03-16 15:44 ` Adrian Bunk 2003-03-17 15:43 ` [Linux-ATM-General] " chas williams 2003-03-16 18:00 ` Adrian Bunk 1 sibling, 1 reply; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 15:44 UTC (permalink / raw) To: Andrew Morton, Linus Torvalds, chas, linux-atm-general; +Cc: linux-kernel On Sun, Mar 16, 2003 at 02:02:11PM +0100, Adrian Bunk wrote: > On Sun, Mar 16, 2003 at 02:42:39AM -0800, Andrew Morton wrote: > >... > > All 124 patches: > > > > linus.patch > > Latest from Linus > >... > > The following problem seems to come from Linus' tree: > > tx_inuse was removed from struct atm_vcc in include/linux/atmdev.h but > drivers/atm/idt77252.c still needs it: >... The same problem is present in net/atm/pppoatm.c: <-- snip --> ... gcc -Wp,-MD,net/atm/.pppoatm.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iinclude/asm-i386/mach-default -g -nostdinc -iwithprefix include -DKBUILD_BASENAME=pppoatm -DKBUILD_MODNAME=pppoatm -c -o net/atm/pppoatm.o net/atm/pppoatm.c net/atm/pppoatm.c: In function `pppoatm_send': net/atm/pppoatm.c:234: structure has no member named `tx_inuse' make[2]: *** [net/atm/pppoatm.o] Error 1 <-- snip --> cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Linux-ATM-General] Re: 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile 2003-03-16 15:44 ` Adrian Bunk @ 2003-03-17 15:43 ` chas williams 2003-03-18 20:49 ` Adrian Bunk 2003-03-20 8:44 ` David S. Miller 0 siblings, 2 replies; 21+ messages in thread From: chas williams @ 2003-03-17 15:43 UTC (permalink / raw) To: Adrian Bunk; +Cc: Andrew Morton, davem, linux-atm-general, linux-kernel In message <20030316154414.GB10253@fs.tum.de>,Adrian Bunk writes: > tx_inuse was removed from struct atm_vcc in include/linux/atmdev.h but > drivers/atm/idt77252.c still needs it: it doesnt need it -- it just needs to use the right member. the following patch should fix the current errors. i missed these bits during my earlier changes. Index: linux/net/sched/sch_atm.c =================================================================== RCS file: /home/chas/CVSROOT/linux/net/sched/sch_atm.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- linux/net/sched/sch_atm.c 20 Feb 2003 13:46:33 -0000 1.1.1.1 +++ linux/net/sched/sch_atm.c 11 Mar 2003 15:20:25 -0000 1.2 @@ -508,7 +508,7 @@ ATM_SKB(skb)->vcc = flow->vcc; memcpy(skb_push(skb,flow->hdr_len),flow->hdr, flow->hdr_len); - atomic_add(skb->truesize,&flow->vcc->tx_inuse); + atomic_add(skb->truesize,&flow->vcc->sk->wmem_alloc); ATM_SKB(skb)->iovcnt = 0; /* atm.atm_options are already set by atm_tc_enqueue */ (void) flow->vcc->send(flow->vcc,skb); Index: linux/net/atm/pppoatm.c =================================================================== RCS file: /home/chas/CVSROOT/linux/net/atm/pppoatm.c,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 pppoatm.c --- linux/net/atm/pppoatm.c 20 Feb 2003 13:46:30 -0000 1.1.1.1 +++ linux/net/atm/pppoatm.c 15 Mar 2003 14:35:27 -0000 @@ -231,7 +231,7 @@ kfree_skb(skb); return 1; } - atomic_add(skb->truesize, &ATM_SKB(skb)->vcc->tx_inuse); + atomic_add(skb->truesize, &ATM_SKB(skb)->vcc->sk->wmem_alloc); ATM_SKB(skb)->iovcnt = 0; ATM_SKB(skb)->atm_options = ATM_SKB(skb)->vcc->atm_options; DPRINTK("(unit %d): atm_skb(%p)->vcc(%p)->dev(%p)\n", Index: linux/drivers/atm/idt77252.c =================================================================== RCS file: /home/chas/CVSROOT/linux/drivers/atm/idt77252.c,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 idt77252.c --- linux/drivers/atm/idt77252.c 20 Feb 2003 13:45:03 -0000 1.1.1.1 +++ linux/drivers/atm/idt77252.c 16 Mar 2003 13:17:56 -0000 @@ -730,7 +730,7 @@ struct atm_vcc *vcc = vc->tx_vcc; vc->estimator->cells += (skb->len + 47) / 48; - if (atomic_read(&vcc->tx_inuse) > (vcc->sk->sndbuf >> 1)) { + if (atomic_read(&vcc->sk->wmem_alloc) > (vcc->sk->sndbuf >> 1)) { u32 cps = vc->estimator->maxcps; vc->estimator->cps = cps; @@ -2025,7 +2025,7 @@ atomic_inc(&vcc->stats->tx_err); return -ENOMEM; } - atomic_add(skb->truesize + ATM_PDU_OVHD, &vcc->tx_inuse); + atomic_add(skb->truesize + ATM_PDU_OVHD, &vcc->sk->wmem_alloc); ATM_SKB(skb)->iovcnt = 0; memcpy(skb_put(skb, 52), cell, 52); ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Linux-ATM-General] Re: 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile 2003-03-17 15:43 ` [Linux-ATM-General] " chas williams @ 2003-03-18 20:49 ` Adrian Bunk 2003-03-20 8:44 ` David S. Miller 1 sibling, 0 replies; 21+ messages in thread From: Adrian Bunk @ 2003-03-18 20:49 UTC (permalink / raw) To: chas williams; +Cc: Andrew Morton, davem, linux-atm-general, linux-kernel On Mon, Mar 17, 2003 at 10:43:15AM -0500, chas williams wrote: > In message <20030316154414.GB10253@fs.tum.de>,Adrian Bunk writes: > > tx_inuse was removed from struct atm_vcc in include/linux/atmdev.h but > > drivers/atm/idt77252.c still needs it: > > it doesnt need it -- it just needs to use the right member. the following > patch should fix the current errors. i missed these bits during my > earlier changes. >... Thanks, your patch fixes all tx_inuse compilation errors I observed. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [Linux-ATM-General] Re: 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile 2003-03-17 15:43 ` [Linux-ATM-General] " chas williams 2003-03-18 20:49 ` Adrian Bunk @ 2003-03-20 8:44 ` David S. Miller 1 sibling, 0 replies; 21+ messages in thread From: David S. Miller @ 2003-03-20 8:44 UTC (permalink / raw) To: chas; +Cc: bunk, akpm, linux-atm-general, linux-kernel From: chas williams <chas@locutus.cmf.nrl.navy.mil> Date: Mon, 17 Mar 2003 10:43:15 -0500 In message <20030316154414.GB10253@fs.tum.de>,Adrian Bunk writes: > tx_inuse was removed from struct atm_vcc in include/linux/atmdev.h but > drivers/atm/idt77252.c still needs it: it doesnt need it -- it just needs to use the right member. the following patch should fix the current errors. i missed these bits during my earlier changes. Applied, thanks Chas. ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile 2003-03-16 13:02 ` 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile Adrian Bunk 2003-03-16 15:44 ` Adrian Bunk @ 2003-03-16 18:00 ` Adrian Bunk 1 sibling, 0 replies; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 18:00 UTC (permalink / raw) To: Andrew Morton, Linus Torvalds, chas, linux-atm-general; +Cc: linux-kernel On Sun, Mar 16, 2003 at 02:02:11PM +0100, Adrian Bunk wrote: > On Sun, Mar 16, 2003 at 02:42:39AM -0800, Andrew Morton wrote: > >... > > All 124 patches: > > > > linus.patch > > Latest from Linus > >... > > The following problem seems to come from Linus' tree: > > tx_inuse was removed from struct atm_vcc in include/linux/atmdev.h but > drivers/atm/idt77252.c still needs it: >... I got a third (and last since the kernel compilation is now finished) compile error: <-- snip --> ... gcc -Wp,-MD,net/sched/.sch_atm.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iinclude/asm-i386/mach-default -g -nostdinc -iwithprefix include -DKBUILD_BASENAME=sch_atm -DKBUILD_MODNAME=sch_atm -c -o net/sched/sch_atm.o net/sched/sch_atm.c net/sched/sch_atm.c: In function `sch_atm_dequeue': net/sched/sch_atm.c:511: structure has no member named `tx_inuse' make[2]: *** [net/sched/sch_atm.o] Error 1 <-- snip --> cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* [patch] 2.5.64-mm8: miropcm20-rds.c doesn't compile 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton ` (3 preceding siblings ...) (?) @ 2003-03-16 13:43 ` Adrian Bunk -1 siblings, 0 replies; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 13:43 UTC (permalink / raw) To: Andrew Morton, Linus Torvalds, Christoph Hellwig; +Cc: linux-kernel On Sun, Mar 16, 2003 at 02:42:39AM -0800, Andrew Morton wrote: >... > All 124 patches: > > linus.patch > Latest from Linus >... Another compile error that seems to come from Linus' tree: <-- snip --> ... gcc -Wp,-MD,drivers/media/radio/.miropcm20-rds.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iinclude/asm-i386/mach-default -g -nostdinc -iwithprefix include -DKBUILD_BASENAME=miropcm20_rds -DKBUILD_MODNAME=miropcm20_rds -c -o drivers/media/radio/miropcm20-rds.o drivers/media/radio/miropcm20-rds.c drivers/media/radio/miropcm20-rds.c:117: request for member `fops' in something not a structure or union drivers/media/radio/miropcm20-rds.c:117: initializer element is not constant drivers/media/radio/miropcm20-rds.c:117: (near initialization for `rds_miscdev.name') drivers/media/radio/miropcm20-rds.c: In function `miropcm20_rds_init': drivers/media/radio/miropcm20-rds.c:133: parse error before `return' drivers/media/radio/miropcm20-rds.c: In function `miropcm20_rds_cleanup': drivers/media/radio/miropcm20-rds.c:140: parse error before `}' drivers/media/radio/miropcm20-rds.c:145: parse error at end of input drivers/media/radio/miropcm20-rds.c:121: warning: `miropcm20_rds_init' defined but not used make[3]: *** [drivers/media/radio/miropcm20-rds.o] Error 1 <-- snip --> It would be nice if everyone would try to compile the patched files before submitting patches... Below are the trivial fixes: --- linux-2.5.64-mm8/drivers/media/radio/miropcm20-rds.c.old 2003-03-16 14:34:17.000000000 +0100 +++ linux-2.5.64-mm8/drivers/media/radio/miropcm20-rds.c 2003-03-16 14:35:05.000000000 +0100 @@ -113,7 +113,7 @@ static struct miscdevice rds_miscdev = { .minor = MISC_DYNAMIC_MINOR, - .name = "radiotext" + .name = "radiotext", .fops = &rds_fops, }; @@ -128,7 +128,7 @@ error = devfs_mk_symlink(NULL, "v4l/rds/radiotext", 0, "../misc/radiotext", NULL, NULL); if (error) - misc_deregister(&rds_miscdev) + misc_deregister(&rds_miscdev); return error; } @@ -136,7 +136,7 @@ static void __exit miropcm20_rds_cleanup(void) { devfs_remove("v4l/rds/radiotext"); - misc_deregister(&rds_miscdev) + misc_deregister(&rds_miscdev); } module_init(miropcm20_rds_init); cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton @ 2003-03-16 13:49 ` Mike Galbraith -1 siblings, 0 replies; 21+ messages in thread From: Mike Galbraith @ 2003-03-16 13:49 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm At 02:42 AM 3/16/2003 -0800, Andrew Morton wrote: >. I should have mentioned that 2.5.64-mm7 included a CPU scheduler tweak > from Mike Galbraith which apparently fixes up the various starvation > problems which people have been experiencing. That is also in 2.5.64-mm8. (hopefully, soon to be replaced by a groovy Ingo patch) ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 @ 2003-03-16 13:49 ` Mike Galbraith 0 siblings, 0 replies; 21+ messages in thread From: Mike Galbraith @ 2003-03-16 13:49 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm At 02:42 AM 3/16/2003 -0800, Andrew Morton wrote: >. I should have mentioned that 2.5.64-mm7 included a CPU scheduler tweak > from Mike Galbraith which apparently fixes up the various starvation > problems which people have been experiencing. That is also in 2.5.64-mm8. (hopefully, soon to be replaced by a groovy Ingo patch) -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton @ 2003-03-16 17:12 ` Helge Hafting -1 siblings, 0 replies; 21+ messages in thread From: Helge Hafting @ 2003-03-16 17:12 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm mm8 is good, anticipatory scheduling seems to work fine with software raid 0 & 1 now. :-) It seems to boot noticeably quicker than mm2, possibly a result of the memory mapping speedup. Helge Hafting ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 @ 2003-03-16 17:12 ` Helge Hafting 0 siblings, 0 replies; 21+ messages in thread From: Helge Hafting @ 2003-03-16 17:12 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, linux-mm mm8 is good, anticipatory scheduling seems to work fine with software raid 0 & 1 now. :-) It seems to boot noticeably quicker than mm2, possibly a result of the memory mapping speedup. Helge Hafting -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a> ^ permalink raw reply [flat|nested] 21+ messages in thread
* 2.5.64-mm8: link error with CONFIG_NUMA and !CONFIG_SMP 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton ` (6 preceding siblings ...) (?) @ 2003-03-16 19:10 ` Adrian Bunk 2003-03-16 19:32 ` Martin J. Bligh -1 siblings, 1 reply; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 19:10 UTC (permalink / raw) To: Andrew Morton; +Cc: linux-kernel, Martin J. Bligh I get many errors at the final linking when compiling a kernel with CONFIG_NUMA enabled but CONFIG_SMP disabled: <-- snip --> ... /home/bunk/linux/kernel-2.5/linux-2.5.64-mm8/include/asm/topology.h:41: undefined reference to `cpu_2_node' ... <-- snip --> the problem is that include/asm-i386/topology.h says: <-- snip --> ... #ifdef CONFIG_NUMA ... extern volatile int cpu_2_node[]; ... <-- snip --> but cpu_2_node is in arch/i386/kernel/smpboot.c that only gets included with CONFIG_SMP. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8: link error with CONFIG_NUMA and !CONFIG_SMP 2003-03-16 19:10 ` 2.5.64-mm8: link error with CONFIG_NUMA and !CONFIG_SMP Adrian Bunk @ 2003-03-16 19:32 ` Martin J. Bligh 2003-03-16 19:44 ` Martin J. Bligh 0 siblings, 1 reply; 21+ messages in thread From: Martin J. Bligh @ 2003-03-16 19:32 UTC (permalink / raw) To: Adrian Bunk, Andrew Morton; +Cc: linux-kernel > I get many errors at the final linking when compiling a kernel with > CONFIG_NUMA enabled but CONFIG_SMP disabled: Well don't do that then ;-) # Common NUMA Features config NUMA bool "Numa Memory Allocation Support" depends on (HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT && ACPI && !ACPI_HT_ ONLY))) I guess SMP should be added to the dependencies, but the whole things getting a little twisted. Let me try and sort it out properly this afternoon. M. ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8: link error with CONFIG_NUMA and !CONFIG_SMP 2003-03-16 19:32 ` Martin J. Bligh @ 2003-03-16 19:44 ` Martin J. Bligh 2003-03-16 19:58 ` Adrian Bunk 0 siblings, 1 reply; 21+ messages in thread From: Martin J. Bligh @ 2003-03-16 19:44 UTC (permalink / raw) To: Adrian Bunk, Andrew Morton; +Cc: linux-kernel, Andy Whitcroft >> I get many errors at the final linking when compiling a kernel with >> CONFIG_NUMA enabled but CONFIG_SMP disabled: > > Well don't do that then ;-) > > # Common NUMA Features > config NUMA > bool "Numa Memory Allocation Support" > depends on (HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT && ACPI && !ACPI_HT_ > ONLY))) > > I guess SMP should be added to the dependencies, but the whole things > getting a little twisted. Let me try and sort it out properly this afternoon. Ah ... maybe you were referring to the bit when Andy was going to get this working on a standard PC for distros (actually, they still have SMP images, I think ... but still). Not quite finished yet, and Andy's off on vacation ;-) Avoid that combo for now ... will fix soon. M. ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8: link error with CONFIG_NUMA and !CONFIG_SMP 2003-03-16 19:44 ` Martin J. Bligh @ 2003-03-16 19:58 ` Adrian Bunk 0 siblings, 0 replies; 21+ messages in thread From: Adrian Bunk @ 2003-03-16 19:58 UTC (permalink / raw) To: Martin J. Bligh; +Cc: Andrew Morton, linux-kernel, Andy Whitcroft On Sun, Mar 16, 2003 at 11:44:06AM -0800, Martin J. Bligh wrote: > >> I get many errors at the final linking when compiling a kernel with > >> CONFIG_NUMA enabled but CONFIG_SMP disabled: > > > > Well don't do that then ;-) > > > > # Common NUMA Features > > config NUMA > > bool "Numa Memory Allocation Support" > > depends on (HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT && ACPI && !ACPI_HT_ > > ONLY))) > > > > I guess SMP should be added to the dependencies, but the whole things > > getting a little twisted. Let me try and sort it out properly this afternoon. > > Ah ... maybe you were referring to the bit when Andy was going to get this > working on a standard PC for distros (actually, they still have SMP images, I ran into it since -mm adds a " || X86_PC" to the depends line of CONFIG_NUMA. > I think ... but still). Not quite finished yet, and Andy's off on vacation ;-) > Avoid that combo for now ... will fix soon. It's not an extremely urgent problem. > M. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: 2.5.64-mm8 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton ` (7 preceding siblings ...) (?) @ 2003-03-16 19:20 ` Josh McKinney -1 siblings, 0 replies; 21+ messages in thread From: Josh McKinney @ 2003-03-16 19:20 UTC (permalink / raw) To: linux-kernel On approximately Sun, Mar 16, 2003 at 02:42:39AM -0800, Andrew Morton wrote: > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.64/2.5.64-mm8/ > Maybe I am just slow but it seems that -mm8 didn't make it to kernel.org from where I am sitting. -- Josh McKinney | Webmaster: http://joshandangie.org -------------------------------------------------------------------------- Linux, the choice | Mate, this parrot wouldn't VOOM if you put of a GNU generation -o) | four million volts through it! -- Monty Kernel 2.5.64-mm6 /\ | Python on a Athlon-XP _\_v | | ^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2003-03-20 8:36 UTC | newest] Thread overview: 21+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2003-03-16 10:42 2.5.64-mm8 Andrew Morton 2003-03-16 10:42 ` 2.5.64-mm8 Andrew Morton 2003-03-16 11:45 ` [patch] 2.5.64-mm8: fs/affs/dir.c doesn't compile Adrian Bunk 2003-03-16 12:21 ` 2.5.64-mm8 Roman Zippel 2003-03-16 12:21 ` 2.5.64-mm8 Roman Zippel 2003-03-16 13:02 ` 2.5.64-mm8: drivers/atm/idt77252.c doesn't compile Adrian Bunk 2003-03-16 15:44 ` Adrian Bunk 2003-03-17 15:43 ` [Linux-ATM-General] " chas williams 2003-03-18 20:49 ` Adrian Bunk 2003-03-20 8:44 ` David S. Miller 2003-03-16 18:00 ` Adrian Bunk 2003-03-16 13:43 ` [patch] 2.5.64-mm8: miropcm20-rds.c " Adrian Bunk 2003-03-16 13:49 ` 2.5.64-mm8 Mike Galbraith 2003-03-16 13:49 ` 2.5.64-mm8 Mike Galbraith 2003-03-16 17:12 ` 2.5.64-mm8 Helge Hafting 2003-03-16 17:12 ` 2.5.64-mm8 Helge Hafting 2003-03-16 19:10 ` 2.5.64-mm8: link error with CONFIG_NUMA and !CONFIG_SMP Adrian Bunk 2003-03-16 19:32 ` Martin J. Bligh 2003-03-16 19:44 ` Martin J. Bligh 2003-03-16 19:58 ` Adrian Bunk 2003-03-16 19:20 ` 2.5.64-mm8 Josh McKinney
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.