bugGuile - Bugs: bug #27268, `longjmp'-related segfaults on...

 
 

bug #27268: `longjmp'-related segfaults on `ia64-linux-gnu' (1.8.7 and 1.9.2)

Submitted by:  Ludovic Courtès <civodul>
Submitted on:  Mon 17 Aug 2009 12:37:44 PM UTC  
 
Category: NoneSeverity: 3 - Normal
Item Group: NoneStatus: None
Privacy: PublicAssigned to: None
Open/Closed: Open

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

 Spam posted by annaanna1
 Spam posted by an anonymous
Mon 17 Aug 2009 12:37:44 PM UTC, original submission:

`./check-guile' segfaults once every 3 runs or so on `ia64-linux-gnu':

#v+
...
Running syntax.test
UNRESOLVED: syntax.test: while: in empty environment: empty body
UNRESOLVED: syntax.test: while: in empty environment: initially false
UNRESOLVED: syntax.test: while: in empty environment: iterating
Running threads.test
Running time.test
Segmentation fault (core dumped)
#v-

GDB shows this:

#v+
(gdb) bt full
#0 0x20000000000a7581 in scm_ia64_longjmp (JB=0x2000000004914720, VAL=6066712) at continuations.c:238
No locals.
#1 0x20000000001a4230 in scm_ithrow (key=0x600000000000aea0, args=0x20000000049c9210, noreturn=3) at throw.c:824
pre_unwind = <value optimized out>
jbr = <value optimized out>
jmpbuf = (SCM) 0x2000000003190080
wind_goal = (SCM) 0x20000000049c9160
dynpair = <value optimized out>
winds = <value optimized out>
#2 0x20000000000be160 in scm_error_scm (key=0x600000000000aea0, subr=0x2000000003190120, message=0x2000000003190160, args=0x20000000049c91c0, data=0x20000000049c91d0) at error.c:92
No locals.
#3 0x20000000000be260 in scm_error (key=0x600000000000aea0, subr=<value optimized out>, message=0x20000000001d4a50 "~A", args=0x20000000049c91c0, rest=0x20000000049c91d0) at error.c:58
No locals.
#4 0x20000000000be980 in scm_syserror (subr=0x2000000000220270 "gmtime") at error.c:148
err = (SCM) 0x12e
#5 0x2000000000163ce0 in scm_gmtime (time=<value optimized out>) at stime.c:475
itime = 128849018887
bd_buf = {tm_sec = 7, tm_min = 30, tm_hour = 15, tm_mday = 19, tm_mon = 0, tm_year = 219248568, tm_wday = 0, tm_yday = 18, tm_isdst = 0, tm_gmtoff = 0, tm_zone = 0x200000000066b4f8 "GMT"}
#6 0x20000000000c9ab0 in ceval (x=0x404, env=0x20000000049c9180) at eval.c:4139
proc = (SCM) 0x2000000000728070
arg1 = (SCM) 0x2000000000728070
_PRETTY_FUNCTION_ = "ceval"
#7 0x20000000000db150 in scm_call_0 (proc=0x20000000049c90d0) at eval.c:4666
No locals.
#8 0x20000000001a44b0 in scm_body_thunk (body_data=<value optimized out>) at throw.c:355
No locals.
#9 0x20000000001a5430 in scm_c_catch (tag=0x104, body=Cannot access memory at address 0x100000002
) at throw.c:203
jbr = {buf = {ctx = {_u = {_mc = {sc_flags = 0, sc_nat = 0, sc_stack = {ss_sp = 0x0, ss_flags = 0, ss_size = 0}, sc_ip = 0, sc_cfm = 0, sc_um = 0, sc_ar_rsc = 0, sc_ar_bsp = 2305843009281951128,
sc_ar_rnat = 0, sc_ar_ccv = 0, sc_ar_unat = 0, sc_ar_fpsr = 2674341019140927, sc_ar_pfs = 13835058055282165521, sc_ar_lc = 0, sc_pr = 1675841, sc_br = {2305843009215419232, 0, 0, 0, 0, 0, 0, 0},
sc_gr = {0, 2305843009220248120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2305843009290323696, 0 <repeats 19 times>}, sc_fr = {{u = {bits = {0, 0}}} <repeats 127 times>, {u = {bits = {2305843009214019032,
2305843009214173070}}}}, sc_rbs_base = 2305843009214136696, sc_loadrs = 2305843009214078952, sc_ar25 = 21474836480, sc_ar26 = 4294967978, sc_rsvd = {2305843009213693957, 0,
2305843009213693953, 1, 4294967295, 2305843009215954896, 2305843009214078952, 2305843009214019032, 0, 0, 0, 0}, sc_mask = 0}, _uc = {_pad = {0, 0, 0, 0, 0, 0, 0, 0, 0, 2305843009281951128, 0, 0, 0,
2674341019140927, 13835058055282165521, 0, 1675841, 2305843009215419232, 0, 0, 0, 0, 0, 0, 0}, _link = 0x0}}}, fresh = 0}, throw_tag = 0x600000000000aea0, retval = 0x20000000049c9210}
jmpbuf = (SCM) 0x2000000003190080
answer = <value optimized out>
pre_unwind = {handler = 0, handler_data = 0x20000000049151f8, running = 0, lazy_catch_p = 0}
#10 0x20000000001a5a90 in scm_catch_with_pre_unwind_handler (key=0x104, thunk=0x20000000049c90d0, handler=0x20000000049c90f0, pre_unwind_handler=0x204) at throw.c:587
c = {tag = 0x104, body_proc = 0x20000000049c90d0}
#11 0x2000000000101fa0 in scm_gsubr_apply (args=0x404) at gsubr.c:223
v = {0x104, 0x20000000049c90d0, 0x20000000049c90f0, 0x204, 0x60000000005c8738, 0x20000000006ec6a0, 0x0, 0x200000000071eff0, 0x20000000049c9100, 0x0}
typ = 6066704
i = 2305843009290335008
#12 0x20000000000cec10 in scm_apply (proc=0x20000000006f74f0, arg1=0x2000000000720860, args=0x20000000049c9120) at eval.c:4932
No locals.
#13 0x20000000000c8260 in ceval (x=0x2000000000f90e00, env=0x20000000049c90b0) at eval.c:4411
arg2 = (SCM) 0x20000000049c90d0
proc = <value optimized out>
arg1 = (SCM) 0x104
_PRETTY_FUNCTION_ = "ceval"
#14 0x20000000000db150 in scm_call_0 (proc=0x2000000000f8fd30) at eval.c:4666
No locals.
#15 0x20000000001a44b0 in scm_body_thunk (body_data=<value optimized out>) at throw.c:355
No locals.
#16 0x20000000001a5430 in scm_c_catch (tag=0x104, body=Cannot access memory at address 0x100000002
) at throw.c:203
jbr = {buf = {ctx = {_u = {_mc = {sc_flags = 0, sc_nat = 0, sc_stack = {ss_sp = 0x0, ss_flags = 0, ss_size = 0}, sc_ip = 0, sc_cfm = 0, sc_um = 0, sc_ar_rsc = 0, sc_ar_bsp = 2305843009281950504,
sc_ar_rnat = 0, sc_ar_ccv = 0, sc_ar_unat = 0, sc_ar_fpsr = 2674341019140927, sc_ar_pfs = 13835058055282165521, sc_ar_lc = 0, sc_pr = 1675841, sc_br = {2305843009215419232, 0, 0, 0, 0, 0, 0, 0},
sc_gr = {0, 2305843009220248120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2305843009290326640, 0 <repeats 19 times>}, sc_fr = {{u = {bits = {0, 0}}} <repeats 128 times>}, sc_rbs_base = 0, sc_loadrs = 0,
sc_ar25 = 0, sc_ar26 = 0, sc_rsvd = {0 <repeats 12 times>}, sc_mask = 0}, _uc = {_pad = {0, 0, 0, 0, 0, 0, 0, 0, 0, 2305843009281950504, 0, 0, 0, 2674341019140927, 13835058055282165521, 0, 1675841,
2305843009215419232, 0, 0, 0, 0, 0, 0, 0}, _link = 0x0}}}, fresh = 0}, throw_tag = 0x0, retval = 0x0}
jmpbuf = (SCM) 0x2000000003190060
answer = <value optimized out>
pre_unwind = {handler = 0, handler_data = 0x2000000004915d78, running = 0, lazy_catch_p = 0}
#17 0x20000000001a5a90 in scm_catch_with_pre_unwind_handler (key=0x104, thunk=0x2000000000f8fd30, handler=0x2000000000a33c40, pre_unwind_handler=0x204) at throw.c:587
c = {tag = 0x104, body_proc = 0x2000000000f8fd30}
#18 0x20000000001a5b40 in scm_catch (key=0x104, thunk=0x2000000000f8fd30, handler=0x2000000000a33c40) at throw.c:601
No locals.
#19 0x20000000001a2480 in really_launch (d=0x60000fffffff9398) at threads.c:778
thunk = (SCM) 0x2000000000f8fd30
handler = (SCM) 0x2000000000a33c40
#20 0x20000000000a6c80 in c_body (d=<value optimized out>) at continuations.c:349
No locals.
#21 0x20000000001a5430 in scm_c_catch (tag=0x104, body=Cannot access memory at address 0x100000002
) at throw.c:203
jbr = {buf = {ctx = {_u = {_mc = {sc_flags = 0, sc_nat = 0, sc_stack = {ss_sp = 0x0, ss_flags = 0, ss_size = 0}, sc_ip = 0, sc_cfm = 0, sc_um = 0, sc_ar_rsc = 0, sc_ar_bsp = 2305843009281950176,
sc_ar_rnat = 0, sc_ar_ccv = 0, sc_ar_unat = 0, sc_ar_fpsr = 2674341019140927, sc_ar_pfs = 13835058055282165521, sc_ar_lc = 0, sc_pr = 1675841, sc_br = {2305843009215419232, 0, 0, 0, 0, 0,
2305843009281949984, 0}, sc_gr = {0, 2305843009220248120, 2674341019140927, 13835058055282164359, 0, 0, 0, 0, 0, 0, 0, 0, 2305843009290329456, 0, 0, 2305843009220248120, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2305843009290329600, 0, 0, 0, 0, 0}, sc_fr = {{u = {bits = {0, 0}}} <repeats 128 times>}, sc_rbs_base = 0, sc_loadrs = 0, sc_ar25 = 0, sc_ar26 = 0, sc_rsvd = {0 <repeats 12 times>}, sc_mask = 0},
_uc = {_pad = {0, 0, 0, 0, 0, 0, 0, 0, 0, 2305843009281950176, 0, 0, 0, 2674341019140927, 13835058055282165521, 0, 1675841, 2305843009215419232, 0, 0, 0, 0, 0, 2305843009281949984, 0}, _link = 0x0}}},
fresh = 0}, throw_tag = 0x0, retval = 0x0}
jmpbuf = (SCM) 0x2000000003190040
answer = <value optimized out>
pre_unwind = {handler = 0x200000000004bdb0, handler_data = 0x0, running = 0, lazy_catch_p = 0}
#22 0x20000000000a73b0 in scm_i_with_continuation_barrier (body=0x20000000006ef310, body_data=0x2000000004916870, handler=0x20000000006ef320, handler_data=0x2000000004916870,
pre_unwind_handler=0x200000000004bdb0, pre_unwind_handler_data=0x0) at continuations.c:325
stack_item = 39
old_controot = (SCM) 0x20000000049c9020
old_contbase = (SCM_STACKITEM *) 0x2000000004916890
old_lastframe = (scm_t_debug_frame *) 0x0
#23 0x20000000000a74e0 in scm_c_with_continuation_barrier (func=0x20000000006efa10, data=0x60000fffffff9398) at continuations.c:367
c_data = {func = 0x20000000006efa10, data = 0x60000fffffff9398, result = 0x2000000003190020}
#24 0x20000000001a2730 in scm_i_with_guile_and_parent (func=0x20000000006efa10, data=0x60000fffffff9398, parent=0x6000000000007380) at threads.c:733
res = (void *) 0x20000000006efa10
really_entered = 1
base_item = 0
#25 0x20000000001a2890 in launch_thread (d=<value optimized out>) at threads.c:788
No locals.
#26 0x200000000040b7d0 in start_thread () from /lib/libpthread.so.0
No symbol table info available.
#27 0x20000000005d5320 in __clone2 () from /lib/libc.so.6.1
No symbol table info available.
(gdb) info threads
3 process 18135 0xa000000000010721 in __kernel_syscall_via_break ()
2 process 18440 0xa000000000010721 in __kernel_syscall_via_break ()

  • 1 process 18508 0x20000000000a7581 in scm_ia64_longjmp (JB=0x2000000004914720, VAL=6066712) at continuations.c:238

(gdb) thread 2
[Switching to thread 2 (process 18440)]#0 0xa000000000010721 in __kernel_syscall_via_break ()
(gdb) bt
#0 0xa000000000010721 in __kernel_syscall_via_break ()
#1 0x200000000041ceb0 in __GC___libc_read () from /lib/libpthread.so.0
#2 0x2000000000153cd0 in do_read_without_guile (raw_data=0x20000000027851f8) at scmsigs.c:161
#3 0x200000000019f590 in scm_without_guile (func=0x20000000006efe70, data=0x20000000027851f8) at threads.c:745
#4 0x2000000000153a80 in signal_delivery_thread (data=0x2000000002785218) at scmsigs.c:172
#5 0x20000000001a5430 in scm_c_catch (tag=0x104, body=0x20000000004387d0 <__DTOR_END__+8>, body_data=Cannot access memory at address 0x402
) at throw.c:203
#6 0x20000000001a5bb0 in scm_internal_catch (tag=0x104, body=0x20000000006efe60, body_data=0x0, handler=0x200000000004b9e0, handler_data=0x20000000001e5040) at throw.c:217
#7 0x20000000001a20c0 in really_spawn (d=0x60000fffffff9228) at threads.c:865
#8 0x20000000000a6c80 in c_body (d=<value optimized out>) at continuations.c:349
#9 0x20000000001a5430 in scm_c_catch (tag=0x104, body=0x20000000004387d0 <__DTOR_END__+8>, body_data=Cannot access memory at address 0x402
) at throw.c:203
#10 0x20000000000a73b0 in scm_i_with_continuation_barrier (body=0x20000000006ef310, body_data=0x2000000002786870, handler=0x20000000006ef320, handler_data=0x2000000002786870,
pre_unwind_handler=0x200000000004bdb0, pre_unwind_handler_data=0x0) at continuations.c:325
#11 0x20000000000a74e0 in scm_c_with_continuation_barrier (func=0x20000000006ef630, data=0x60000fffffff9228) at continuations.c:367
#12 0x20000000001a2730 in scm_i_with_guile_and_parent (func=0x20000000006ef630, data=0x60000fffffff9228, parent=0x6000000000007380) at threads.c:733
#13 0x20000000001a2810 in spawn_thread (d=<value optimized out>) at threads.c:877
#14 0x200000000040b7d0 in start_thread () from /lib/libpthread.so.0
#15 0x20000000005d5320 in __clone2 () from /lib/libc.so.6.1
(gdb) thread 3
[Switching to thread 3 (process 18135)]#0 0xa000000000010721 in __kernel_syscall_via_break ()
(gdb) bt
#0 0xa000000000010721 in __kernel_syscall_via_break ()
#1 0x20000000004155a0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2 0x200000000019f850 in scm_pthread_cond_wait (cond=0x60000fffffff93e0, mutex=0x60000fffffff93b8) at threads.c:1504
#3 0x20000000001a22c0 in scm_call_with_new_thread (thunk=0x2000000000f8fd30, handler=0x2000000000a33c40) at threads.c:829
#4 0x20000000000c92b0 in ceval (x=0x404, env=0x2000000000f8ffa0) at eval.c:4229
#5 0x20000000000c8660 in ceval (x=0x2000000000f91a30, env=0x2000000000f8ffa0) at eval.c:4212
#6 0x20000000000cc110 in ceval (x=0x2000000000f91870, env=0x2000000000f8ffa0) at eval.c:3397
#7 0x20000000000ccb90 in ceval (x=0x20000000007c7a30, env=0x2000000000f8ffc0) at eval.c:3648
#8 0x20000000000db150 in scm_call_0 (proc=0x2000000000f90080) at eval.c:4666
#9 0x20000000001a44b0 in scm_body_thunk (body_data=<value optimized out>) at throw.c:355
#10 0x20000000001a5430 in scm_c_catch (tag=0x104, body=0x414c4c4f435f434c, body_data=Cannot access memory at address 0x4ce
) at throw.c:203
#11 0x20000000001a5a90 in scm_catch_with_pre_unwind_handler (key=0x104, thunk=0x2000000000f90080, handler=0x2000000000f90060, pre_unwind_handler=0x204) at throw.c:587
#12 0x2000000000101fa0 in scm_gsubr_apply (args=0x404) at gsubr.c:223
#13 0x20000000000cec10 in scm_apply (proc=0x20000000006f74f0, arg1=0x2000000000720860, args=0x2000000000f90030) at eval.c:4932
#14 0x20000000000c8260 in ceval (x=0x20000000007c6bb0, env=0x2000000000f900a0) at eval.c:4411
#15 0x20000000000cc110 in ceval (x=0x20000000007c6ba0, env=0x2000000000f900a0) at eval.c:3397
#16 0x20000000000dc950 in call_closure_1 (proc=0x2000000000f929f0, arg1=0x200000000157ea80) at eval.c:5261
#17 0x20000000000d0250 in scm_for_each (proc=0x2000000000f929f0, arg1=0x2000000000f92990, args=0x404) at eval.c:5553
#18 0x20000000000cbee0 in ceval (x=0x404, env=0x2000000000f92a60) at eval.c:4374
#19 0x20000000000db150 in scm_call_0 (proc=0x2000000000f92af0) at eval.c:4666
#20 0x20000000000e0980 in apply_thunk (thunk=0x2000000000f92af0) at fluids.c:400
#21 0x20000000000e0c90 in scm_c_with_fluid (fluid=0x2000000000760b40, value=0x2000000000f92b10, cproc=0x20000000006efd10, cdata=0x2000000000f92af0) at fluids.c:463
#22 0x20000000000e0d00 in scm_with_fluid (fluid=0x2000000000760b40, value=0x2000000000f92b10, thunk=0x2000000000f92af0) at fluids.c:450
#23 0x20000000000cd060 in ceval (x=0x20000000007dc7c0, env=0x2000000000f92b60) at eval.c:4571
#24 0x20000000000dc030 in scm_primitive_eval_x (exp=0x2000000000f93f30) at eval.c:5921
#25 0x20000000001129b0 in scm_primitive_load (filename=<value optimized out>) at load.c:109
#26 0x20000000000c9ab0 in ceval (x=0x404, env=0x2000000000f9f240) at eval.c:4139
#27 0x20000000000aa130 in scm_start_stack (id=0x200000000074c400, exp=0x200000000070e1b0, env=0x2000000000f9f240) at debug.c:457
#28 0x20000000000aa2c0 in scm_m_start_stack (exp=<value optimized out>, env=0x2000000000f9f240) at debug.c:473
#29 0x20000000000cead0 in scm_apply (proc=0x200000000071d630, arg1=0x200000000070e220, args=0x2000000000f9f230) at eval.c:5019
#30 0x20000000000c7d40 in ceval (x=0x200000000070e220, env=0x2000000000f9f240) at eval.c:4059
#31 0x20000000000db150 in scm_call_0 (proc=0x2000000000f9f2b0) at eval.c:4666
#32 0x20000000000e0980 in apply_thunk (thunk=0x2000000000f9f2b0) at fluids.c:400
#33 0x20000000000e0c90 in scm_c_with_fluid (fluid=0x2000000000741e40, value=0x4, cproc=0x20000000006efd10, cdata=0x2000000000f9f2b0) at fluids.c:463
#34 0x20000000000e0d00 in scm_with_fluid (fluid=0x2000000000741e40, value=0x4, thunk=0x2000000000f9f2b0) at fluids.c:450
#35 0x20000000000cd060 in ceval (x=0x200000000070e170, env=0x2000000000f9f2d0) at eval.c:4571
#36 0x20000000000db150 in scm_call_0 (proc=0x2000000000f9f480) at eval.c:4666
#37 0x20000000000b3890 in scm_dynamic_wind (in_guard=0x2000000000f9f3f0, thunk=0x2000000000f9f480, out_guard=0x2000000000f9f3d0) at dynwind.c:111
#38 0x20000000000cd060 in ceval (x=0x2000000000715ad0, env=0x2000000000f9f410) at eval.c:4571
#39 0x20000000000db150 in scm_call_0 (proc=0x2000000000f9f6a0) at eval.c:4666
#40 0x20000000000e0980 in apply_thunk (thunk=0x2000000000f9f6a0) at fluids.c:400
#41 0x20000000000e0c90 in scm_c_with_fluid (fluid=0x2000000000760b40, value=0x2000000000f9f6e0, cproc=0x20000000006efd10, cdata=0x2000000000f9f6a0) at fluids.c:463
#42 0x20000000000e0d00 in scm_with_fluid (fluid=0x2000000000760b40, value=0x2000000000f9f6e0, thunk=0x2000000000f9f6a0) at fluids.c:450
#43 0x20000000000cd060 in ceval (x=0x20000000007dc7c0, env=0x2000000000f9f700) at eval.c:4571
#44 0x20000000000dc950 in call_closure_1 (proc=0x20000000007dd3b0, arg1=0x2000000000758b60) at eval.c:5261
#45 0x20000000000d0250 in scm_for_each (proc=0x20000000007dd3b0, arg1=0x20000000007defe0, args=0x404) at eval.c:5553
#46 0x20000000000cbee0 in ceval (x=0x404, env=0x20000000007ddac0) at eval.c:4374
#47 0x20000000000cc110 in ceval (x=0x20000000007a3290, env=0x20000000007ddac0) at eval.c:3397
#48 0x20000000000cca90 in ceval (x=0x20000000007da900, env=0x20000000007da990) at eval.c:3368
#49 0x20000000000dc030 in scm_primitive_eval_x (exp=0x20000000007da930) at eval.c:5921
#50 0x20000000000dc130 in scm_eval_x (exp=0x20000000007da930, module_or_state=0x2000000000763120) at eval.c:5956
#51 0x20000000001562d0 in scm_shell (argc=11, argv=0x60000fffffffaf78) at script.c:737
#52 0x40000000000009b0 in inner_main (closure=0x0, argc=11, argv=0x60000fffffffaf78) at guile.c:53
#53 0x200000000010ab70 in invoke_main_func (body_data=0x60000fffffffacc0) at init.c:367
#54 0x20000000000a6c80 in c_body (d=<value optimized out>) at continuations.c:349
#55 0x20000000001a5430 in scm_c_catch (tag=0x104, body=0x414c4c4f435f434c, body_data=Cannot access memory at address 0x4ce
) at throw.c:203
#56 0x20000000000a73b0 in scm_i_with_continuation_barrier (body=0x20000000006ef310, body_data=0x60000fffffffac90, handler=0x20000000006ef320, handler_data=0x60000fffffffac90,
pre_unwind_handler=0x200000000004bdb0, pre_unwind_handler_data=0x0) at continuations.c:325
#57 0x20000000000a74e0 in scm_c_with_continuation_barrier (func=0x20000000006efe20, data=0x60000fffffffacc0) at continuations.c:367
#58 0x20000000001a2730 in scm_i_with_guile_and_parent (func=0x20000000006efe20, data=0x60000fffffffacc0, parent=0x0) at threads.c:733
#59 0x20000000001a28e0 in scm_with_guile (func=0x20000000006efe20, data=0x60000fffffffacc0) at threads.c:721
#60 0x200000000010aaa0 in scm_boot_guile (argc=11, argv=0x60000fffffffaf78, main_func=@0x4000000000000bf0: 0x4000000000000980 <inner_main>, closure=0x0) at init.c:350
#61 0x4000000000000960 in main (argc=11, argv=0x60000fffffffaf78) at guile.c:63
#v-

Ludo'.

Ludovic Courtès <civodul>
Project Administrator

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by annaanna1 (Posted a comment)
  • -unavailable- added by civodul (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    No Changes Have Been Made to This Item

    Back to the top


    Powered by Savane 3.1-cleanup