ia64/xen-unstable

view extras/mini-os/minios-x86_64.lds @ 5867:932fc8a1b38d

# HG changeset patch
# User Rusty Russell <rusty@rustcorp.com.au>
# Node ID a92163adedcfcff0d05c965d09da747f3c8aa13e
# Parent 63ab20781afa311300f3a8e832744292014ea7f6

Remove ill-conceived concept of watches blocking reply on connection which did write/mkdir/rm/setperm etc.
This causes deadlocks in real life, and I can't see a sane way of avoiding them: it is reasonable for someone to ignore watch notifications while doing other actions, and that means that we can do other writes. These writes can block pending other watchers; if one of these is the process blocked awaiting our ack, we deadlock.

diff -r 63ab20781afa -r a92163adedcf tools/xenstore/xenstored_core.c
author cl349@firebug.cl.cam.ac.uk
date Tue Jul 26 13:11:01 2005 +0000 (2005-07-26)
parents 2d4c4c4574f2
children f6507937cb7c
line source
1 OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
2 OUTPUT_ARCH(i386:x86-64)
3 ENTRY(_start)
4 SECTIONS
5 {
6 . = 0xFFFFFFFF00000000;
7 _text = .; /* Text and read-only data */
8 .text : {
9 *(.text)
10 *(.gnu.warning)
11 } = 0x9090
13 _etext = .; /* End of text section */
15 .rodata : { *(.rodata) *(.rodata.*) }
17 .data : { /* Data */
18 *(.data)
19 CONSTRUCTORS
20 }
22 _edata = .; /* End of data section */
24 . = ALIGN(8192); /* init_task */
25 .data.init_task : { *(.data.init_task) }
27 . = ALIGN(4096);
28 .data.page_aligned : { *(.data.idt) }
30 . = ALIGN(32);
31 .data.cacheline_aligned : { *(.data.cacheline_aligned) }
33 __bss_start = .; /* BSS */
34 .bss : {
35 *(.bss)
36 }
37 _end = . ;
39 /* Sections to be discarded */
40 /DISCARD/ : {
41 *(.text.exit)
42 *(.data.exit)
43 *(.exitcall.exit)
44 }
46 /* Stabs debugging sections. */
47 .stab 0 : { *(.stab) }
48 .stabstr 0 : { *(.stabstr) }
49 .stab.excl 0 : { *(.stab.excl) }
50 .stab.exclstr 0 : { *(.stab.exclstr) }
51 .stab.index 0 : { *(.stab.index) }
52 .stab.indexstr 0 : { *(.stab.indexstr) }
53 .comment 0 : { *(.comment) }
54 }