Re: *** ANNOUNCEMENT *** LVM 0.9.1 beta1 available at www.sistina.com

2001-01-12 Thread Anton Blanchard
Hi, a tarball of the Linux Logical Volume Manager 0.9.1 beta1 is available now at http://www.sistina.com/ for download (Follow the "LVM download page" link). Have a look at 2.4, arch/sparc64/kernel/ioctl32.c Would it be possible to clean up the ioctl interface so we dont need such

Re: *** ANNOUNCEMENT *** LVM 0.9.1 beta1 available at www.sistina.com

2001-01-12 Thread Anton Blanchard
Hi, What is the reason for all this? Alignment/wordsize/other? If you look at the IOP10 code, much of the in-core data structs were changed to int or long, so this sparc code may not be necessary. It may in fact be damaging, because I don't know if any of the LVM developers even know it

Re: Updated zerocopy patch up on kernel.org

2001-01-12 Thread Anton Blanchard
Nothing interesting or new, just merges up with the latest 2.4.1-pre1 patch from Linus. ftp.kernel.org:/pub/linux/kernel/people/davem/zerocopy-2.4.1p1-1.diff.gz I haven't had any reports from anyone, which must mean that it is working perfectly fine and adds no new bugs, testers

[PATCH] pcnet32 one liner

2001-01-13 Thread Anton Blanchard
Hi, The code below is suspect. Anton diff -r -u --new-file --exclude-from=/home/anton/kernel/exclude linux/drivers/net/pcnet32.c linux_work/drivers/net/pcnet32.c --- linux/drivers/net/pcnet32.c Tue Dec 12 14:27:56 2000 +++ linux_work/drivers/net/pcnet32.cTue Jan 9 15:12:20 2001 @@

Re: [linux-lvm] Re: *** ANNOUNCEMENT *** LVM 0.9.1 beta1 available at www.sistina.com

2001-01-13 Thread Anton Blanchard
The longs are the biggest problem AFAICS. long is 64bit on sparc64 and 32bit on sparc32... Embedding pointers in ioctls is much worse. When this happens we basically end up duplicating the ioctl parsing code (this code courtesy of jakub's sharp mind, but it would be nice not to require this

Re: sparc10 with 512M of RAM hangs on boot

2001-01-13 Thread Anton Blanchard
every kernel after 2.4.0-test5 hangs my sparc10 at the same spot. Has anyone looked into this? here is screen output: Yep I know about this but need to iron out another bug with the patches before I commit them. Anton - To unsubscribe from this list: send the line "unsubscribe linux-kernel"

Re: Caches, page coloring, virtual indexed caches, and more

2001-01-15 Thread Anton Blanchard
Hi, shared mmap. This is the important one. Since we have a logical backing store this is easy to handle. We just enforce that the virtual address in a process that we mmap something to must match the logical address to VIRT_INDEX_BITS. The effect is the same as a larger page size

Re: Caches, page coloring, virtual indexed caches, and more

2001-01-15 Thread Anton Blanchard
At least for sparc it's already supported. Right now I don't feel like looking into the 2.4 solution but checkout srmmu_vac_update_mmu_cache in the 2.2 kernel. I killed that hack now that we align all shared mmaps to the same virtual colour :) Anton - To unsubscribe from this list: send

Re: Caches, page coloring, virtual indexed caches, and more

2001-01-16 Thread Anton Blanchard
Hi, Where do you do this? And how do you handle the case of aliases with kseg, the giant kernel mapping. Aliases between user and kernel mappings of a page are handled by flush_page_to_ram the old interface) or {copy,clear}_user_page, flush_dcache_page and update_mmu_cache (new interface).

Re: Caches, page coloring, virtual indexed caches, and more

2001-01-16 Thread Anton Blanchard
Did you find any software that breaks due to the additional restriction on the virtual addresses of mappings? Not yet. A good test of shared mmap coherency is a recent samba (2.2 and above) that uses tdb. Tdb relies on shared mmaps heavily and uncovered the bug when running on a dual

Re: Is sendfile all that sexy?

2001-01-25 Thread Anton Blanchard
No plans for samba to use sendfile? Even better make it a tux-like module? (that would enable Netware-Linux like performance with the standard kernel... would be cool afterall ;) I have patches for samba to do sendfile. Making a tux module does not make sense to me, especially since we are

Re: Is sendfile all that sexy?

2001-01-25 Thread Anton Blanchard
Do you have it at a URL? The patch is small so I have attached it to this email. It should apply to the samba CVS tree. Remember this is still a hack and I need to add code to ensure the file is not truncated and we sendfile() less than we promised. (After talking to tridge and davem, this

Re: Is sendfile all that sexy?

2001-01-26 Thread Anton Blanchard
Hi Dave, How are the VB withdrawal symptoms going? :) Anton, why are you always returning -1 (which means error for the smb_message[] array functions) when using sendfile? Returning -1 tells the higher level code that we actually sent the bytes out ourselves and not to bother doing it.

Re: [UPDATE] Zerocopy, last one today I promise :-)

2001-01-25 Thread Anton Blanchard
o If sock_writepage is called on path via device without SG support, the cooked up sock_sendmsg() call needs to switch to KERNEL_DS. Discovered and fixed by Ingo Molnar. Good catch. This does show that not too many people are testing this all that thoroughly :-) Basically, any

Re: Support for 802.11 cards?

2001-01-28 Thread Anton Blanchard
Hi, Last I knew (straight from the Lucent people), the ISA bridge card worked fine and the PCI card did NOT work at all. I've since confirmed that, first hand, myself (I currently have the ISA bridge in operation) on the 2.2 kernels. The ISA bridge also works on the 2.4 kernels

Re: Unable to compile cvs kernel on Sparc

2001-05-14 Thread Anton Blanchard
That's right, sparc32 currently has no active maintainer and the tree will continue to be broken until we have one. Stick with 2.2.x if you want a working sparc32 kernel. ppc64 has me occupied at the moment, I'll get around to fixing sun4m when I find the time. sun4c however is horribly

Re: 2.4.0-test8-pre1 on SPARC: Warning patch (take 2)

2000-08-31 Thread Anton Blanchard
(Hint: Fix this up so it uses the correct types for all the sbus DMA interfaces on sparc32 and I'll have no problems with the patch. Sparc64 already does this all correctly.) My iommu patches do this. Maybe I'll take a stiff drink and add them in :) Anton - To unsubscribe

Re: Sparc 32 plans?

2000-09-04 Thread Anton Blanchard
Hi, Are there any advances in getting sparc 32 working again with 2.4.0-testX? I tried test7 today and it reports something about free_bootmem then reboots. You mentioned it was a sun4c on the sparclinux list. sun4c is badly out of date and I don't have the time to fix it at the moment. If

Re: Compilation failure on Alpha with test8-pre[2-6]

2000-09-08 Thread Anton Blanchard
Great. I'll apply the patch and see where the next breakage is :-P I believe there was a problem in the netfilter code (net/ipv4/netfilter/ipt_REJECT.c, lines 67-68) with the selection of which xchg() to use (either __xchg_u32() or __xchg_u64()as detailed in include/asm-alpha/system.h)

getname breaks POSIX tests on 8k page size

2000-09-17 Thread Anton Blanchard
Hi, On 8k page size machines, we should fail with -ENAMETOOLONG if the path length is greater than PATH_MAX. Here is the fix. As a plus we don't waste 4k of memory on these machines. Cheers, Anton diff -ru --exclude=CVS linux/fs/dcache.c linux_sparc32/fs/dcache.c --- linux/fs/dcache.c Mon

Re: NMI Watchdog detected LOCKUP on CPU1 (stext_lock)(2.4.0-test9-pre2)

2000-09-21 Thread Anton Blanchard
Yes, SYSRQ+P should definetly show the stack trace. And on SMP it would be nice to backtrace all cpus. (perhaps make this another sysrq option) Anton - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at

SparcLinux on Sun E10000

2000-09-27 Thread Anton Blanchard
Patches for Sun E1 are in the current vger cvs, details for accessing this can be found at http://vger.samba.org/. You too can have a linux box that compiles kernels in 20 seconds. I have set up some information at: http://linuxcare.com.au/anton/e1/ Thanks to Craig Armour [EMAIL

Re: Bottom Handles/soft irqs/timer interrupts/SMP .....

2000-09-29 Thread Anton Blanchard
2nd Question: Is there a sane way to queue an operation to be done in each specific CPU? smp_call_function(). The slab code was using smp_call_function until davem fixed it. On sparc blocking interrupts does not block the reception of cpu cross calls, so you cannot do

Re: 2.2.18pre13 and sun4c

2000-10-01 Thread Anton Blanchard
Patience :) In Alan's announce, he said some changes were made to udelay() that would require non-x86 to do some mods. I'm sure by pre14 these will be merged in (or soon thereafter). Indeed, Im merging it into the vger tree as we speak :) I'll forward patches to Alan shortly. Anton - To

Re: 2.4.0-test9-pre8 on SPARC build failure

2000-10-04 Thread Anton Blanchard
That fix is already in the vger sparc cvs kernel tree... just remove the definition of pcibios_present() in pcic.c and you should be fine... "Why hasn't it been merged over to Linus" is my question then... I sent sparc diffs to Linus yesterday and it is in 2.4.0-test9. Anton - To

Re: 2.4.0-test9-pre8 on SPARC build failure

2000-10-04 Thread Anton Blanchard
Hmmm, somebody tried to enhance config language... The following patch should fix it. Looks good. I committed the same patch to the vger tree yesterday but it has not made it to Linus yet. In fact I forgot to fix sparc32. Thanks! Anton - To unsubscribe from this list: send the line

Re: aaaah! complete lockup 2.4.0-test9 SPARC32

2000-10-04 Thread Anton Blanchard
I just had my box completely lock up under 2.4.0-test9. I had insmodded the dbri.o audio driver, which for some reason was refusing to work, at all. So I rmmodded it, and at that point, the screen flickered once and wham, complete lockup, nothing responds at all, no network, no SysRQ,

Re: aaaah! complete lockup 2.4.0-test9 SPARC32

2000-10-10 Thread Anton Blanchard
Working our way up, Pete noticed that _sparc_free_io() wasn't aligning plen properly... problem solved. While we were there, we noticed a few more problems in the file (misuse of a #define, and poor renaming of copied code). At this point, the dbri driver is properly loadable and

[PATCH] Bug in scsi_merge.c

2000-10-11 Thread Anton Blanchard
Hi, I was chasing up why sparc32 raid is breaking and I noticed a problem with __init_io - We do not memset the entire buffer. This should fix it. Cheers Anton diff -ru linux/drivers/scsi/scsi_merge.c linux_sparc32/drivers/scsi/scsi_merge.c --- linux/drivers/scsi/scsi_merge.c Wed Apr 26

Re: question wrt context switching during disk i/o

2000-10-22 Thread Anton Blanchard
bdflush is broken in current kernels. I posted to linux-mm about this, but Rik et al haven't shown any interest. I normally see bursts of up to around 40K cs/second when doing writes; I hacked a little premption counter into the kernel and verified that they're practially all

Re: 2.4.0-test10pre5: still IDE lockups on HPT366 controller.

2000-10-24 Thread Anton Blanchard
I've made a little progress fighting with bdflush. Can you please try this and see if it helps you? I have still to figure out why, but here, the first bdflush param _must_ be over 75 and under 90 to avoid zillions of context switches. That alone will probably help enough, but I still

Re: rsync over ssh on 2.4.2 to 2.2.18

2001-02-27 Thread Anton Blanchard
Hi, I'm seeing odd behaviour with rsync over ssh between two x86 machines - one if the is an UP PIII (Katmai) running 2.4.2 (isdn-gw) and the other is an UP Pentium 75-200 (pilt-gw) running 2.2.15pre13 with some custom serial driver hacks (for running Amplicon cards with their ISA

Re: kernel lock contention and scalability

2001-03-04 Thread Anton Blanchard
Hi, To discover possible locking limitations to scalability, I have collected locking statistics on a 2-way, 4-way, and 8-way performing as networked database servers. I patched the [48]-way kernels with Kravetz's multiqueue patch in the hope that mitigating runqueue_lock contention

[PATCH]: allow notsc option for buggy cpus

2001-03-09 Thread Anton Blanchard
Hi, My IBM Thinkpad 600E changes between 100MHz and 400MHz depending if the power is on. This means gettimeofday goes backwards if you boot with the power out (tsc calibrated at 100MHz) and then plug the power in. (tsc is now spinning at 4x speed, so offsets within the HZ timer period are 4x

Re: kernel lock contention and scalability

2001-03-10 Thread Anton Blanchard
Hi, Thanks for looking into postgresql/pgbench related locking. Yes, apparently postgresql uses a synchronization scheme that uses select() to effect delays for backing off while attempting to acquire a lock. However, it seems to me that runqueue lock contention was not entirely due to

Re: sys_sched_yield fast path

2001-03-11 Thread Anton Blanchard
This is the linux thread spinlock acquire : static void __pthread_acquire(int * spinlock) { int cnt = 0; struct timespec tm; while (testandset(spinlock)) { if (cnt MAX_SPIN_COUNT) { sched_yield(); cnt++; } else { tm.tv_sec = 0; tm.tv_nsec

Re: [PATCH]: allow notsc option for buggy cpus

2001-03-11 Thread Anton Blanchard
Intel are being remarkably reluctant on the documentation front. We have the AMD speed change docs, but the intel ones (chipset not cpu based primarily) don't seem to be publically available. In fact the 815M manual looks like someone quite pointedly went through and removed the relevant

Re: sys_sched_yield fast path

2001-03-11 Thread Anton Blanchard
Hi, 2.4.x has changed the scheduler behaviour so that the task that call sched_yield() is not rescheduled by the incoming schedule(). A flag is set ( under certain conditions in SMP ) and the goodness() calculation assign the lower value to the exiting task ( this flag is cleared in

Re: Kernel stress testing coverage

2001-03-15 Thread Anton Blanchard
Hi, Are you talking about the same posix test suite that LSB is using? I've looked into that a little, but here are the two problems I'm wanting to address: 1. How much of the kernel is getting hit on a run of any given test? Even an approximate percentage is fine as long as I can

Re: [PATCH]: Only one memory zone for sparc64

2001-03-16 Thread Anton Blanchard
I'd be surprised if dbench was anything other than disk-bound on most systems. On any of my machines, the standard error of a single dbench run is *way* larger than 1%, and I'd expect to have to run the benchmark a dozen times to get a confidence interval small enough to detect a 1%

spinlock usage - ext2_get_block, lru_list_lock

2001-03-20 Thread Anton Blanchard
Hi, I ported lockmeter to PPC and ran a few dbench runs on a quad CPU F50 here. These runs were made to never hit the disk. The full results can be found here: http://samba.org/~anton/ppc/lockmeter/2.4.3-pre3_hacked/ It was not surprising the BKL was one of the main offenders. Looking at the

Re: [patch] pagecache SMP-scalability patch [was: spinlock usage]

2001-03-21 Thread Anton Blanchard
Hi, http://people.redhat.com/~mingo/smp-pagecache-patches/pagecache-2.4.2-H1 this patch splits up the main scalability offender in non-RAM-limited dbench runs, which is pagecache_lock. The patch was designed and written by David Miller, and is being forward ported / maintained by me.

bdflush way too agressive

2000-11-21 Thread Anton Blanchard
Hi, The current defaults for bdflush make it start async flushing when 20% of buffers are dirty and sync flush when 40% of buffers are dirty. I think these defaults are way off but apparently it is intentional. (sync flushing should be a last ditch effort when free memory is getting low and 40%

Re: test11-pre2 (ksymoops output)

2000-11-21 Thread Anton Blanchard
Unable to handle kernel paging request at virtual address fd00 ... PC; f01a77ac auxio_probe+14c/160 = Basically the first thing we tried to map in (the auxio register) failed. Sounds like the page tables weren't set up properly. It is surely my fault, I'll try and find out why.

[PATCH]: sysctl to tune async and sync bdflush triggers

2000-12-06 Thread Anton Blanchard
Hi, At the moment the synchronous flush trigger for bdflush is hardwired to be double the asynchronous one. This is a pain for people with lots of RAM. This patch adds a new variable to the bdflush sysctl so both can be tuned independently. It also sets the defaults to 40% and 80% for async

[PATCH]: fix for nfs on 64 bit archs.

2000-12-14 Thread Anton Blanchard
Hi, Since we use bitops on wb_flags it needs to be unsigned long. With this fix nfs works on sparc64 again. Anton --- linux/include/linux/nfs_page.h Wed Dec 6 22:19:17 2000 +++ linux_work/include/linux/nfs_page.h Fri Dec 15 14:38:18 2000 @@ -33,8 +33,8 @@ unsigned long

Re: CPU attachent and detachment in a running Linux system

2000-12-20 Thread Anton Blanchard
That's a good point and it would probably work for attachment of cpus, but it won't work for detachment because there are some data structures that need to be updated if a cpu gets detached. For example it would be nice to flush the per-cpu cache of the detached cpu in the slabcache. Then

Re: innd mmap bug in 2.4.0-test12

2000-12-27 Thread Anton Blanchard
This all only matters to things that do shared writable mmap's. Almost nothing does that. innd is (sadly) the only regular thing that uses this, which is why it's always innd that breaks, even if everything else works. btw samba 2.2 makes extensive use of shared writable mmaps (well it

Re: scheduling problem?

2001-01-02 Thread Anton Blanchard
Hi Mike, I am seeing (what I believe is;) severe process CPU starvation in 2.4.0-prerelease. At first, I attributed it to semaphore troubles as when I enable semaphore deadlock detection in IKD and set it to 5 seconds, it triggers 100% of the time on nscd when I do sequential I/O (iozone

Re: Sparc32: Error linking 2.4.0-prerelease

2001-01-03 Thread Anton Blanchard
I get the following errors during the final linking of 2.4.0-prerelease on a Sparc IPX (sun4c). .config available upon request. sun4c is badly broken at the moment for other reasons. However the problems you are seeing should be fixed in cvs. Anton - To unsubscribe from this list: send the

Re: 2.2.19pre5 on sparc64: Missing symbols

2001-01-03 Thread Anton Blanchard
depmod: *** Unresolved symbols in /lib/modules/2.2.19pre5/fs/binfmt_elf.o depmod: get_pte_slow depmod: get_pmd_slow depmod: pgt_quicklists Thanks, fix is in cvs. Anton --- arch/sparc64/kernel/sparc64_ksyms.c.origThu Jan 4 09:04:07 2001 +++

Re: Confirmation request about new 2.4.x. kernel limits

2001-01-04 Thread Anton Blanchard
Hi, I would like to know whether following limits are right for kernel 2.4.x: Max. N. of CPU: 32 (SMP) Max CPUs is 64 on 64 bit architectures (well you have to change NR_CPUS). I am told larger than 32 cpu ultrasparcs have booted linux already. Anton - To

Re: [Linux-IrDA]Re: [IrDA+SMP] Lockup in handle_IRQ_event

2001-01-04 Thread Anton Blanchard
BTW: What i have seen in the ircomm_tty.c (2.2.18): 647 save_flags(flags); 648 cli(); 649 650 skb = self-tx_skb; 651 self-tx_skb = NULL; 652 653 restore_flags(flags); and a lot of other places simply use "save_flags(flags); cli();

Re: [PATCH] 2.4.0-prerelease: preemptive kernel.

2001-01-04 Thread Anton Blanchard
I think a better way to proceed would be to make semaphores a bit more intelligent and turn them into something like adaptive spinlocks and use them more where appropiate (currently using semaphores usually causes lots of context switches where some could probably be avoided). Problem is

Re: Benchmarking 2.2 and 2.4 using hdparm and dbench 1.1

2001-01-04 Thread Anton Blanchard
1) Why does the hdbench numbers go down for 2.4 (only) when 32 MB is used? I fail to see how that matters, especially for the '-T' test. When I did some tests long ago, hdparm was hitting the buffer cache hash table pretty hard in 2.4 compared to 2.2 because it is now smaller. However as

[PATCH] Fix raid5 on sparc

2001-01-09 Thread Anton Blanchard
Hi, On sparc the length of an xor block must be a multiple of 128 bytes. Bad things happen otherwise. Anton Index: xor.c === RCS file: /cvs/linux/drivers/md/xor.c,v retrieving revision 1.3 diff -u -r1.3 xor.c --- xor.c

Re: CVS for kernel

2000-10-24 Thread Anton Blanchard
The mirror at samba.org is too slow It is the only anoncvs available sorry. We'll have to work out the performance problems with this site. Thanks to some help from Tridge, Tim Potter, Hugh Blemings and a machine from linuxcare vger.samba.org should be usable again :) You can now

Re: rdtsc to mili secs?

2000-11-06 Thread Anton Blanchard
fast_gettimeoffset_quotient, see do_fast_gettimeoffset(). Also remember that the TSC may not be available due to the chip era, chip bugs or running SMP with non matched CPU clocks. When I boot my thinkpad 600e off battery and then change to AC power, gettimeofday has a nasty habit of

[PATCH] CPU hot swap for 2.4.3 + s390 support

2001-05-05 Thread Anton Blanchard
Hi, You can find a new version of the hot swap cpu patch at: http://samba.org/~anton/patches/cpu_hotswap-2.4.3-patch The version for s390 (you need to first apply the 2.4.3 kernel patch available on the IBM s390 Linux website) is at:

Re: sparc: Run out of nocached RAM!

2001-05-05 Thread Anton Blanchard
I run kernel 2.4.1 (from the Debian kernel-source-2.4.1-3 package) on an Axil 320 (Dual Hypersparc) with 320MB of RAM, which just died (full lockup) with the message Run out of nocached RAM! being the last message on the screen. Increase SRMMU_NOCACHE_NPAGES in include/asm-sparc/vaddrs.h

Re: [PATCH] Hot swap CPU support for 2.4.1

2001-02-04 Thread Anton Blanchard
Rusty, what would be needed to "hot-add" CPUs ? The PPC version at the moment simply locks a cpu in the idle loop with __cli(); while(1); for cpu down and jumps out of it for cpu up. Good for testing but not very useful. After talking to paulus we will use the RTAS cpu stop and cpu start. In

Re: [PATCH] Hot swap CPU support for 2.4.1@

2001-02-06 Thread Anton Blanchard
Would any special hardware besides a multi-cpu system be necessarey to test this out? You should be able to run it on any SMP machine assuming you write the arch specific code (PPC could be used as an example). Of course it isn't very interesting if the hardware doesn't support hot swap :)

Re: 2.4.x SMP blamed for Xfree 4.0 crashes

2001-02-13 Thread Anton Blanchard
Yes, actually it is... So I'm wrong then, it's not the same problem. A rebuild of the binaries in question should fix it. Anton - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at

Re: Whats the rvmalloc() story?

2001-02-16 Thread Anton Blanchard
I note that at least 5 device drivers have similar implementations of rvmalloc()/rvfree() et al: ieee1394/video1394.c usb/ibmcam.c usb/ov511.c media/video/bttv-driver.c media/video/cpia.c rvmalloc()/rvfree() are functions that are used to allocate large

Re: Samba performance / zero-copy network I/O

2001-02-17 Thread Anton Blanchard
Hmm. Yeah, I think that may be one of the problems (Intel's card isn't supported afaik; if I have to I'll switch to 3com, or hopelessly try to implement support). I'm looking for a patch to implement sendfile in Samba, as Alan suggested. That seems like a good first step. As Alan said,

Re: Whats the rvmalloc() story?

2001-02-17 Thread Anton Blanchard
If you are offering to do this work now, here is a thread worth reading which includes a patch to start from... http://www.uwsg.iu.edu/hypermail/linux/kernel/0002.1/0586.html BTW, Alan Cox sent me the following additional information in a private email. Might as well get this in

Re: uninteruptable sleep

2001-04-07 Thread Anton Blanchard
That happened to me with 2.4.2-ac28 when I tried using DRM. I also got the following messages in syslog. /var/log/messages.1:Mar 31 12:15:04 joker kernel: [drm:r128_do_wait_for_fifo] *ERROR* r128_do_wait_for_fifo failed! You need to replace down(...-mmap_sem), up(...-mmap_sem) with

Re: [PATCH] 3rd try: i386 rw_semaphores fix

2001-04-11 Thread Anton Blanchard
Hi, Here's the RW semaphore patch #3. This time with more asm constraints added. Personally I care about sparc and ppc64 and as such would like to see the slow paths end up in lib/rwsem.c protected by #ifndef __HAVE_ARCH_RWSEM or something like that. If we couldn't get rwsems to work on x86,

Re: [RFC][PATCH] Scalable FD Management using Read-Copy-Update

2001-04-11 Thread Anton Blanchard
This patch provides a very good performance improvement in file descriptor management for SMP linux kernel on a 4-way machine with the expectation of even higher gains on higher end machines. The patch uses the read-copy-update mechanism for Linux, published earlier at the sourceforge

Re: [Lse-tech] Re: [RFC][PATCH] Scalable FD Management using Read-Copy-Update

2001-04-12 Thread Anton Blanchard
Hi, Base (2.4.2) - 100 Average Throughput = 39.628 MB/sec 200 Average Throughput = 22.792 MB/sec Base + files_struct patch - 100 Average Throughput = 39.874 MB/sec 200 Average Throughput = 23.174 MB/sec I found this value quite less

Re: [PATCH] make MADV_FREE lazily free memory

2007-04-16 Thread Anton Blanchard
Hi, Making the pte clean also needs to clear the hardware writable bit on architectures where we do pte dirtying in software. If we don't, we would have corruption problems all over the VM, for example in the code around pte_clean_one :) But as Linus recently said, even hardware

Re: [PATCH] make MADV_FREE lazily free memory

2007-04-16 Thread Anton Blanchard
Hi Jakub, That would mean an additional syscall. Furthermore, if you allocate a big chunk of memory, dirty it, then free (with madvise (MADV_FREE)) it and soon allocate the same size of memory again, it is better to start that with non-dirty memory, it might be that this time you e.g.

Re: PAGE_SIZE Availability Inconsistency

2007-03-08 Thread Anton Blanchard
By the way, it's a massive snafu that the swap area magic number is dependent on PAGE_SIZE. There is absolutely no good reason for that. Agreed, its been a big problem booting between 4kB and 64kB kernels on ppc64. Anton - To unsubscribe from this list: send the line unsubscribe

Re: PAGE_SIZE Availability Inconsistency

2007-03-08 Thread Anton Blanchard
a 64kB kernel with swap space. We may just have to lump it and fix on upgade. Anton -- Our current swap layout has issues with variable page size kernels. Instead of using the page size at runtime, base it on the minimum page size the architecture supports. Signed-off-by: Anton Blanchard [EMAIL

Re: PAGE_SIZE Availability Inconsistency

2007-03-08 Thread Anton Blanchard
Hi, Our current swap layout has issues with variable page size kernels. Instead of using the page size at runtime, base it on the minimum page size the architecture supports. A hacked up patch to userspace utilities to test the kernel patch. BTW It looks like there are some real bugs here:

Re: PAGE_SIZE Availability Inconsistency

2007-03-08 Thread Anton Blanchard
Hi, I might be missing something but doesn't this break every SWAP partition that was created with something other than MIN_PAGE_SIZE? It does. I was thinking we could work around it in ppc64 (64kB is quite new), but I forgot there are options on sparc64 to change the page size :) The other

Re: [patch] epoll use a single inode ...

2007-03-08 Thread Anton Blanchard
Yeah, I'm not at all surprised. Any implementation of prefetch that doesn't just turn into a no-op if the TLB entry doesn't exist (which makes them weaker for *actual* prefetching) will generally have a hard time with a NULL pointer. Exactly because it will try to do a totally unnecessary

Re: [patch] epoll use a single inode ...

2007-03-08 Thread Anton Blanchard
OK, 200 cycles... But what is the cost of the conditional branch you added in prefetch(x) ? Much less than the tablewalk. On ppc64 a tablewalk of an address that is not populated in the hashtable will incur 2 cacheline lookups (primary and secondary buckets). This plus the MMU state machine

Re: [patch] epoll use a single inode ...

2007-03-08 Thread Anton Blanchard
Hi, Well, PowerPC dcbt does prefetch() correctly, it doesn't ever raise exceptions, doesn't have any side effects, takes only enough CPU to decode the address, and is ignored if it would have to do anything other than load the cacheline from RAM. Prefetch streams are halted when

Re: [PATCH] Complain about missing system calls.

2007-03-08 Thread Anton Blanchard
Hi, Most system calls seem to get added to i386 first. This patch automatically generates a warning for any new system call which is implemented on i386 but not the architecture currently being compiled. On PowerPC at the moment, for example, it results in these warnings: Love it! ...

Re: SMP performance degradation with sysbench

2007-03-12 Thread Anton Blanchard
Hi Nick, Anyway, I'll keep experimenting. If anyone from MySQL wants to help look at this, send me a mail (eg. especially with the sched_setscheduler issue, you might be able to do something better). I took a look at this today and figured Id document it:

Re: [PATCH] kthread_should_stop_check_freeze (was: Re: [PATCH -mm 3/7] Freezer: Remove PF_NOFREEZE from rcutorture thread)

2007-03-12 Thread Anton Blanchard
Do not do it, then. Confusion it causes is not worth saving one line of code. You do less typing, but the resulting code is _less_ readable, not more. Then please document it _clearly_ with the kthread code somewhere. The reason I brought this up is I had no idea we had to put the freezer

Re: [PATCH] mm/filemap.c: unconditionally call mark_page_accessed

2007-03-16 Thread Anton Blanchard
Hi, I guess the downside to this is if a reader is reading a large file, or several files, sequentially with a small read size (smaller than PAGE_SIZE), the pages will be marked active after just one read pass. My gut says the benefits of this patch outweigh the cost. I would expect

Re: [PATCH] powerpc minor pagefault optimization with kprobes enabled

2007-03-19 Thread Anton Blanchard
I've attached a patch below the optimizes this code path for powerpc, but the scheme applies to all architectures aswell. It just rips out all the callachin madness, and does as good as it gets in the pagefault handler: NAK, patch on the way to get rid of all the debugger() crap by using

[PATCH] small documentation fix in Documentation/kbuild/modules.txt

2007-03-20 Thread Anton Blanchard
The Makefile fragment in Documentation/kbuild/modules.txt looks to be missing some braces. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] --- diff --git a/Documentation/kbuild/modules.txt b/Documentation/kbuild/modules.txt index 769ee05..1d247d5 100644 --- a/Documentation/kbuild/modules.txt

Re: PAGE_SIZE Availability Inconsistency

2007-03-20 Thread Anton Blanchard
Hi, The advantage would be that it wouldn't require a v3 for platforms for which MIN_PAGE_SIZE == PAGE_SIZE, which accounts for a very large percentage of systems. You still have to look for the darn magic in two places, so there is no reason for it to be different. The problem is if

Re: [PATCH -mm 3/7] Freezer: Remove PF_NOFREEZE from rcutorture thread

2007-03-01 Thread Anton Blanchard
Hi, Remove PF_NOFREEZE from the rcutorture thread, adding a try_to_freeze() call as required. ... @@ -607,6 +607,7 @@ rcu_torture_writer(void *arg) } rcu_torture_current_version++; oldbatch = cur_ops-completed(); + try_to_freeze();

Re: [RFC] Heads up on sys_fallocate()

2007-03-01 Thread Anton Blanchard
That new argument might need to come after fd - ARM has funny requirements on syscall arg padding and layout. FYI the 32bit ppc ABI does too, from arch/powerpc/kernel/sys_ppc32.c: /* * long long munging: * The 32 bit ABI passes long longs in an odd even register pair. */ and the first

Re: [PATCH -mm 3/7] Freezer: Remove PF_NOFREEZE from rcutorture thread

2007-03-02 Thread Anton Blanchard
Hi Paul, We certainly either need to embed try_to_freeze() into kthread_should_stop() or add back the rcu_torture_fakewriter(), and rcu_torture_reader() components of this patch. ;-) One way to embed try_to_freeze() into kthread_should_stop() might be as follows: int

Re: [patch 00/12] Syslets, Threadlets, generic AIO support, v5

2007-03-07 Thread Anton Blanchard
Hi Ingo, this is the v5 release of the syslet/threadlet subsystem: http://redhat.com/~mingo/syslet-patches/ Nice! I tried to port this to ppc64 but found a few problems: The 64bit powerpc ABI has the concept of a TOC (r2) which is used for per function data. This means this wont work:

Re: [patch] epoll use a single inode ...

2007-03-07 Thread Anton Blanchard
Hi, Well, I hope a prefetch(NULL) is OK because we are doing millions of them (see include/linux/list.h :) ) Funny you mention this. We found some noticeable ppc64 regressions when moving the dcache to standard list macros and had to do this to fix it up: static inline void prefetch(const

Re: missing madvise functionality

2007-04-04 Thread Anton Blanchard
Hi, Oh. I was assuming that we'd want to unmap these pages from pagetables and mark then super-easily-reclaimable. So a later touch would incur a minor fault. But you think that we should leave them mapped into pagetables so no such fault occurs. That would be very nice. The issues are

[PATCH] Initialise scatter/gather list in sg driver

2007-10-25 Thread Anton Blanchard
to initialise it before use. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] --- Jens this is against your sg branch. This fixes the fail but Id appreciate a confirmation that it's the right fix :) diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index b5f7c59..4de41bb 100644

[PATCH] Initialise scatter/gather list in ata_sg_setup

2007-10-25 Thread Anton Blanchard
on an uninitialised sg table. Call sg_init_table to initialise it before use. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] --- Jens this is against your sg branch. This fixes the fail but Id appreciate a confirmation that it's the right fix :) diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata

[PATCH] Initialise scatter/gather list in sg driver

2007-10-25 Thread Anton Blanchard
it in sg_build_sgat. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] --- diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c index b5fa4f0..f1871ea 100644 --- a/drivers/scsi/sg.c +++ b/drivers/scsi/sg.c @@ -1652,6 +1652,7 @@ sg_build_sgat(Sg_scatter_hold * schp, const Sg_fd * sfp, int tablesize

Re: [REGRESSION] nfsd crashing with 3.6.0-rc7 on PowerPC

2012-10-03 Thread Anton Blanchard
Hi, Yes. With that patch applied, things work for me again. Thanks Alex, Nish. We can reproduce this on one of our Biminis, looking into it now. Anton -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo

[PATCH] powerpc/iommu: Fix multiple issues with IOMMU pools code

2012-10-03 Thread Anton Blanchard
that the global lock is gone. Reported-by: Alexander Graf ag...@suse.de Signed-off-by: Anton Blanchard an...@samba.org --- There is still an issue with the lazy u3 flushing, but I wanted to get this out for testing. Index: b/arch/powerpc/kernel/iommu.c

[PATCH] Fix timer_stats printout of events/sec

2007-10-01 Thread Anton Blanchard
the bottom three digits of 1000 times the value. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] --- diff --git a/kernel/time/timer_stats.c b/kernel/time/timer_stats.c index 3c38fb5..c36bb7e 100644 --- a/kernel/time/timer_stats.c +++ b/kernel/time/timer_stats.c @@ -327,8 +327,9 @@ static int tstats_show

[PATCH] Hook compat_sys_nanosleep up to high res timer code

2007-10-14 Thread Anton Blanchard
KERNEL_DS. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] --- diff --git a/kernel/compat.c b/kernel/compat.c index 3bae374..46795ac 100644 --- a/kernel/compat.c +++ b/kernel/compat.c @@ -40,62 +40,29 @@ int put_compat_timespec(const struct timespec *ts, struct compat_timespec __user

Re: [PATCH] Hook compat_sys_nanosleep up to high res timer code

2007-10-14 Thread Anton Blanchard
converted to the hrtimer code and so is limited to HZ resolution. The following patch pulls the copy_to_user out of hrtimer_nanosleep and into the callers (common_nsleep, sys_nanosleep and compat_sys_nanosleep) thus avoiding any set_fs(KERNEL_DS) or compat_alloc_userspace tricks. Signed-off-by: Anton

  1   2   3   4   5   6   >