Patch to optimize "bare" critical sections
Marcel Moolenaar
marcel at xcllnt.net
Tue Nov 23 19:26:22 PST 2004
On Nov 23, 2004, at 1:31 PM, John Baldwin wrote:
> On Tuesday 23 November 2004 03:00 pm, John Baldwin wrote:
>> Basically, I have a patch to divorce the interrupt disable/deferring
>> to
>> only happen inside of spinlocks using a new spinlock_enter/exit() API
>> (where a spinlock_enter/exit includes a critical section as well) but
>> that
>> plain critical sections won't have to do such a thing. I've tested
>> it on
>> i386, alpha, and sparc64 already, and it has also been tested on arm.
>> I'm
>> unable to get a cross-built powerpc kernel to link (linker dies with a
>> signal 6), but the compile did finish. I have cross-compiled ia64 and
>> amd64
>> successfully, but have not run tested due to ENOHARDWARE. So, I would
>> appreciate it if a few folks could try the patch out on ppc, ia64, and
>> amd64 to make sure it works ok. Thanks.
>>
>> http://www.FreeBSD.org/~jhb/spinlock.patch
>
> *cough* Ahem, http://www.FreeBSD.org/~jhb/patches/spinlock.patch
>
> Sorry about that.
The patch doesn't apply cleanly. Can you create a patch against HEAD
and not your lock branch?
Rejects are:
Hmm... The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|--- //depot/projects/smpng/sys/kern/kern_mutex.c 2004/11/15
20:20:33
|+++ //depot/user/jhb/lock/kern/kern_mutex.c 2004/11/17 16:42:34
--------------------------
Patching file sys/kern/kern_mutex.c using Plan A...
Hunk #1 failed at 602.
Hunk #2 failed at 630.
2 out of 2 hunks failed--saving rejects to sys/kern/kern_mutex.c.rej
Hmm... The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|--- //depot/projects/smpng/sys/sys/mutex.h 2004/08/18 16:47:14
|+++ //depot/user/jhb/lock/sys/mutex.h 2004/11/04 23:48:43
--------------------------
Patching file sys/sys/mutex.h using Plan A...
Hunk #1 succeeded at 164 (offset -3 lines).
Hunk #2 failed at 176.
Hunk #3 succeeded at 194 (offset -11 lines).
Hunk #4 succeeded at 212 with fuzz 2 (offset -4 lines).
Hunk #5 failed at 220.
2 out of 5 hunks failed--saving rejects to sys/sys/mutex.h.rej
--
Marcel Moolenaar USPA: A-39004 marcel at xcllnt.net
More information about the freebsd-amd64
mailing list