mono.git
8 years agoMerge pull request #2353 from ludovic-henry/fix-servicemodel-15153
monojenkins [Wed, 16 Dec 2015 13:55:04 +0000 (13:55 +0000)]
Merge pull request #2353 from ludovic-henry/fix-servicemodel-15153

Add test and merge #1879

@monojenkins merge

8 years agoMerge pull request #2351 from ludovic-henry/fix-socket-36941
monojenkins [Wed, 16 Dec 2015 11:35:02 +0000 (11:35 +0000)]
Merge pull request #2351 from ludovic-henry/fix-socket-36941

[socket] Add test for SocketOptionName.MulticastTimeToLive

8 years agoMerge pull request #2345 from akoeplinger/xbuild14
Marek Safar [Wed, 16 Dec 2015 11:13:07 +0000 (12:13 +0100)]
Merge pull request #2345 from akoeplinger/xbuild14

Bump xbuild script to 14.0 and a few other fixes

8 years agoAdd test for bug #15153
Mark Mikofski [Tue, 16 Jun 2015 18:44:02 +0000 (11:44 -0700)]
Add test for bug #15153

8 years ago[socket] Add test for SocketOptionName.MulticastTimeToLive
Ludovic Henry [Tue, 15 Dec 2015 21:25:43 +0000 (21:25 +0000)]
[socket] Add test for SocketOptionName.MulticastTimeToLive

8 years agoMerge pull request #2354 from xmcclure/ugh-no-gdi
Andi McClure [Wed, 16 Dec 2015 03:38:31 +0000 (22:38 -0500)]
Merge pull request #2354 from xmcclure/ugh-no-gdi

Fix Microsoft.Build.Tasks make check on OS X

8 years agoFix Microsoft.Build.Tasks make check on OS X
Andi McClure [Tue, 15 Dec 2015 22:23:31 +0000 (17:23 -0500)]
Fix Microsoft.Build.Tasks make check on OS X

The mcs/class/Microsoft.Build.Tasks make check contains a test whose
goal is to verify that Microsoft.Build.Evaluation.Project can run a
MSBuild code fragment which has an assembly reference. The assembly
referenced in the test is System.Drawing. However on many systems
System.Drawing does not work without special setup. The test should
reference a different assembly (I picked System.Runtime.Serialization)
because ensuring System.Drawing is working isn't relevant to the test.

8 years agoMerge pull request #2346 from xmcclure/proxy-load-fail
Andi McClure [Tue, 15 Dec 2015 21:39:09 +0000 (16:39 -0500)]
Merge pull request #2346 from xmcclure/proxy-load-fail

Let GetTransparentProxy fail clean on load error (bug 36848)

8 years ago[scripts] Bump xbuild script to 14.0
Alexander Köplinger [Tue, 15 Dec 2015 18:44:43 +0000 (19:44 +0100)]
[scripts] Bump xbuild script to 14.0

This means we'll use xbuild 14.0 by default, which allows users to build projects with ToolsVersion=14.0

8 years ago[xbuild] Add new TargetFrameworkVersion entries in Microsoft.Common.targets
Alexander Köplinger [Tue, 15 Dec 2015 18:43:01 +0000 (19:43 +0100)]
[xbuild] Add new TargetFrameworkVersion entries in Microsoft.Common.targets

Add the new 4.5.2, 4.6 and 4.6.1 versions to Microsoft.Common.targets so xbuild doesn't print "warning : TargetFrameworkVersion 'v4.6.1' not supported by this toolset".

Additionally I found a bug in the target where "and" was used instead of "or" which means the condition was never true, fixed as well.

8 years agoLet GetTransparentProxy fail clean on load error (bug 36848)
Andi McClure [Tue, 15 Dec 2015 18:47:56 +0000 (13:47 -0500)]
Let GetTransparentProxy fail clean on load error (bug 36848)

icall for Remoting.RealProxy.GetTransparentProxy can sometimes attempt
to load an invalid class which is not previously loaded. Currently,
this leads to an assert failure in mono_class_proxy_vtable which does
not expect to be getting an invalid proxy class as input. Fix is for
the icall to load the class early and raise on failure.

A test is included.

8 years agoMerge pull request #2338 from BogdanovKirill/httpwritefix3
monojenkins [Tue, 15 Dec 2015 17:43:22 +0000 (17:43 +0000)]
Merge pull request #2338 from BogdanovKirill/httpwritefix3

[HttpConnection] Bug fix: HttpListener's "IgnoreWriteExceptions" property value is ignored when "Expect: 100-Continue" header set in request

That problem was discussed previously here: https://github.com/mono/mono/pull/2300
I want to offer alternative solution now.

8 years agoMerge pull request #2344 from ludovic-henry/fix-servicemodel-flakiness
monojenkins [Tue, 15 Dec 2015 16:00:03 +0000 (16:00 +0000)]
Merge pull request #2344 from ludovic-henry/fix-servicemodel-flakiness

[tests] Fix more System.ServiceModel flakiness

@monojenkins: automerge

8 years ago[tests] Fix more System.ServiceModel flakiness
Ludovic Henry [Tue, 15 Dec 2015 14:27:22 +0000 (14:27 +0000)]
[tests] Fix more System.ServiceModel flakiness

8 years agoMerge pull request #2343 from ludovic-henry/threads-cleanup
monojenkins [Tue, 15 Dec 2015 13:29:58 +0000 (13:29 +0000)]
Merge pull request #2343 from ludovic-henry/threads-cleanup

[automerge][threads] Various cleanups

None

8 years ago[threads] Add mono_thread_info_usleep function
Ludovic Henry [Tue, 15 Dec 2015 11:59:27 +0000 (11:59 +0000)]
[threads] Add mono_thread_info_usleep function

8 years ago[threads] Bring mono_thread_info_safe_suspend_and_run code together
Ludovic Henry [Tue, 15 Dec 2015 11:58:21 +0000 (11:58 +0000)]
[threads] Bring mono_thread_info_safe_suspend_and_run code together

8 years ago[threads] Remove dead code
Ludovic Henry [Tue, 15 Dec 2015 11:45:33 +0000 (11:45 +0000)]
[threads] Remove dead code

8 years agoMerge pull request #2340 from ludovic-henry/fix-servicemodel-flakiness
monojenkins [Tue, 15 Dec 2015 02:35:02 +0000 (02:35 +0000)]
Merge pull request #2340 from ludovic-henry/fix-servicemodel-flakiness

Merge pull request #2340 from ludovic-henry/fix-servicemodel-flakiness

[tests] Attempt at fixing System.ServiceModel.Dispatcher.Bug32886.Bug32886_Test flakiness

8 years ago[tests] Attempt at fixing System.ServiceModel.Dispatcher.Bug32886.Bug32886_Test flakiness
Ludovic Henry [Mon, 14 Dec 2015 17:08:55 +0000 (17:08 +0000)]
[tests] Attempt at fixing System.ServiceModel.Dispatcher.Bug32886.Bug32886_Test flakiness

8 years agoMerge pull request #2306 from migueldeicaza/master
Alexis Christoforides [Mon, 14 Dec 2015 20:05:28 +0000 (15:05 -0500)]
Merge pull request #2306 from migueldeicaza/master

[mono/driver] On OSX, increase the number of file handles available.

8 years agoMerge pull request #2341 from ludovic-henry/fix-threadpool-max-worker
monojenkins [Mon, 14 Dec 2015 19:04:11 +0000 (19:04 +0000)]
Merge pull request #2341 from ludovic-henry/fix-threadpool-max-worker

Merge pull request #2341 from ludovic-henry/fix-threadpool-max-worker

[automerge][threadpool] Fix various threadpool issues

Tests results:
 - ARM soft float Linux: pending
 - i386 Windows: pending
 - i386 Linux: success
 - ARM hard float Linux: pending
 - AMD64 Linux: success
 - i386 OSX (Proprietary): failure

8 years ago[threadpool] Saner default for max number of worker threads on android and ios
Ludovic Henry [Mon, 14 Dec 2015 12:12:48 +0000 (12:12 +0000)]
[threadpool] Saner default for max number of worker threads on android and ios

8 years ago[threadpool] Limit number of threads created per second
Ludovic Henry [Mon, 14 Dec 2015 11:56:32 +0000 (11:56 +0000)]
[threadpool] Limit number of threads created per second

8 years ago[threadpool] Fix overflow of max number of worker threads
Ludovic Henry [Mon, 14 Dec 2015 10:29:45 +0000 (10:29 +0000)]
[threadpool] Fix overflow of max number of worker threads

In case all threads would wait on a Sleep or a Wait, the monitor thread would simply increase the number of max working thread, up to the point it would overflow the number of max worker threads.

8 years agoMerge pull request #2218 from mono/assignProjectConfigurtionFix
Marek Safar [Mon, 14 Dec 2015 14:37:18 +0000 (15:37 +0100)]
Merge pull request #2218 from mono/assignProjectConfigurtionFix

AssignProjectConfigurtion task fix

8 years agoBump reference souces to include fix for #36786
Marek Safar [Mon, 14 Dec 2015 12:29:53 +0000 (13:29 +0100)]
Bump reference souces to include fix for #36786

8 years ago[mcs] test update to work on 64bit mono
Marek Safar [Mon, 14 Dec 2015 10:57:34 +0000 (11:57 +0100)]
[mcs] test update to work on 64bit mono

8 years agoMerge pull request #2334 from iainx/handle-comma
Marek Safar [Mon, 14 Dec 2015 08:50:30 +0000 (09:50 +0100)]
Merge pull request #2334 from iainx/handle-comma

[mcs] Handle commas inside quotes correctly

8 years ago[mcs] Handle commas inside quotes correctly
iain holmes [Fri, 11 Dec 2015 22:38:09 +0000 (22:38 +0000)]
[mcs] Handle commas inside quotes correctly

OpenLiveWriter's build files break due to incorrectly parsing (".",",") as three arguments: a . and two " instead of two: a . and a ,

This is the error:

OpenLiveWriter/writer.build.targets: error : Error executing task WriteLinesToFile: Error converting Property named 'Lines' with value '#define FILE_VERSION $(BuildVersion.Replace(".",","));#define PRODUCT_VERSION $(BuildVersion)' to type Microsoft.Build.Framework.ITaskItem[]: Method 'Replace(., , )' arguments cannot be evaluated'

This patch ignores , as a separator character if it is inside ""

8 years ago[HttpConnection] Bug fix: HttpListener's "IgnoreWriteExceptions" property value is...
bogdanov [Tue, 8 Dec 2015 09:00:21 +0000 (14:00 +0500)]
[HttpConnection] Bug fix: HttpListener's "IgnoreWriteExceptions" property value is ignored when "Expect: 100-Continue" header set in request

The problem is connected with "Listener" property of "context" object. It is null in "GetResponseStream" method, when it's called internally from "FinishInitialization" method of "HttpListenerRequest" class. This problem is possible only in situation when we have "Expect: 100-Continue" header from http client.

This change is released under the MIT license.

8 years agoMerge pull request #2335 from iainx/implement-mir
Marek Safar [Sun, 13 Dec 2015 07:19:33 +0000 (08:19 +0100)]
Merge pull request #2335 from iainx/implement-mir

Microsoft.Build.Engine] Implement ConvertToITaskItemArray

8 years ago[acceptance-tests] Bump coreclr and ms-test-suite repos
Alexander Köplinger [Sun, 13 Dec 2015 01:55:08 +0000 (02:55 +0100)]
[acceptance-tests] Bump coreclr and ms-test-suite repos

Brings in similar fixes to those repos like in e6cf61f920b6ec1c6ecb67bcbe226256d6dc4db7

8 years ago[corlib] Fix String.PadLeft/Right tests and add a new test for large string
Alexander Köplinger [Sun, 13 Dec 2015 00:33:05 +0000 (01:33 +0100)]
[corlib] Fix String.PadLeft/Right tests and add a new test for large string

We didn't catch the regression that is fixed in a780c52749695141c2037a5828808a82880292f6
because the tests didn't check the actual string or that an OOM is raised.

Add a new test for creating a large string (which works on 64bit Mono) to test a similar
codepath.

8 years agoMicrosoft.Build.Engine] Implement ConvertToITaskItemArray
iain holmes [Sat, 12 Dec 2015 22:18:53 +0000 (22:18 +0000)]
Microsoft.Build.Engine] Implement ConvertToITaskItemArray

Create a TaskItem containing the result of the invocation

8 years agoRevert "[System]: Add _HelperAsyncResults.cs from the referencesource."
Martin Baulig [Sat, 12 Dec 2015 17:39:20 +0000 (12:39 -0500)]
Revert "[System]: Add _HelperAsyncResults.cs from the referencesource."

This reverts commit c6d239fa790ef48d932d1243d002253101648f7f.

(cherry picked from commit cfc81a28ab232777959d5abc43292b88d3359efa)

8 years ago[mcs] Improve a780c52749695141c2037a5828808a82880292f6 to not emit extra conversion...
Marek Safar [Sat, 12 Dec 2015 10:05:19 +0000 (11:05 +0100)]
[mcs] Improve a780c52749695141c2037a5828808a82880292f6 to not emit extra conversion for constant values

8 years agoMerge pull request #2311 from mlancione/master
Ludovic Henry [Fri, 11 Dec 2015 19:10:14 +0000 (19:10 +0000)]
Merge pull request #2311 from mlancione/master

[System.Windows.Forms] Locking Window Handle List

8 years agoMerge pull request #1916 from ludovic-henry/iolayer-remove-sharedhandle
Rodrigo Kumpera [Fri, 11 Dec 2015 17:25:46 +0000 (12:25 -0500)]
Merge pull request #1916 from ludovic-henry/iolayer-remove-sharedhandle

[io-layer] Remove shared handles cross process support

8 years ago[threadpool] Fix GetAvailableThreads test
Ludovic Henry [Fri, 11 Dec 2015 10:26:51 +0000 (10:26 +0000)]
[threadpool] Fix GetAvailableThreads test

8 years ago[mcs] Extend int to native int when doing pointer arithmetic on it. Fixes #36839
Marek Safar [Fri, 11 Dec 2015 16:53:31 +0000 (17:53 +0100)]
[mcs] Extend int to native int when doing pointer arithmetic on it. Fixes #36839

8 years agoTypo error
mlancione [Fri, 11 Dec 2015 14:21:16 +0000 (09:21 -0500)]
Typo error

Fixing a compiler error.

8 years ago[io-layer] Remove shared handles cross process support
Ludovic Henry [Mon, 6 Jul 2015 20:33:37 +0000 (17:33 -0300)]
[io-layer] Remove shared handles cross process support

8 years agoMerge pull request #2327 from akoeplinger/fix-msvc
João Matos [Thu, 10 Dec 2015 23:04:27 +0000 (23:04 +0000)]
Merge pull request #2327 from akoeplinger/fix-msvc

[msvc] Fix casts that result in an error when building with VS

8 years agoFix endless recursion in XmlCompiledTransform on mobile
Marek Habersack [Thu, 10 Dec 2015 21:01:52 +0000 (22:01 +0100)]
Fix endless recursion in XmlCompiledTransform on mobile

One of the XmlCompiledTransform overloads called itself recursively,
leading to either a stack overflow or segfault

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=36436

8 years ago[msvc] Fix casts that result in an error when building with VS
Alexander Köplinger [Thu, 10 Dec 2015 20:33:30 +0000 (21:33 +0100)]
[msvc] Fix casts that result in an error when building with VS

Those showed up after the recent C++ compliance commit.

8 years ago[System]: Add _HelperAsyncResults.cs from the referencesource.
Martin Baulig [Thu, 10 Dec 2015 20:22:51 +0000 (15:22 -0500)]
[System]: Add _HelperAsyncResults.cs from the referencesource.

(cherry picked from commit 17e92c87759edcee72a06659e8a0790cf72e5190)

8 years ago[jit] Better error message for a gsharing assert.
Rodrigo Kumpera [Thu, 10 Dec 2015 19:37:21 +0000 (14:37 -0500)]
[jit] Better error message for a gsharing assert.

8 years ago[configure] Bump mono version.D
Rodrigo Kumpera [Thu, 10 Dec 2015 19:13:59 +0000 (14:13 -0500)]
[configure] Bump mono version.D

8 years agoFixed Windows MinGW build and avoid leakage of io-layer types.
João Matos [Thu, 10 Dec 2015 18:13:57 +0000 (18:13 +0000)]
Fixed Windows MinGW build and avoid leakage of io-layer types.

8 years ago[corlib]: Cleanup X509Certificate and move the implementation-specific bits into...
Martin Baulig [Thu, 10 Dec 2015 01:49:39 +0000 (20:49 -0500)]
[corlib]: Cleanup X509Certificate and move the implementation-specific bits into a separate class.

(cherry picked from commit b82b0b8402297854bcceccc4329703024c5aad63)

8 years ago[threadpool] Fix System.Web tests failures
Ludovic Henry [Thu, 10 Dec 2015 16:54:13 +0000 (16:54 +0000)]
[threadpool] Fix System.Web tests failures

8 years agoMerge pull request #2310 from lambdageek/dev/bug-36305
Aleksey Kliger (λgeek) [Thu, 10 Dec 2015 16:13:43 +0000 (11:13 -0500)]
Merge pull request #2310 from lambdageek/dev/bug-36305

[reflection] Fix MethodInfo.GetBaseDefinition for open constructed types (close #36305)

8 years agoMore code-style changes
mlancione [Thu, 10 Dec 2015 14:22:58 +0000 (09:22 -0500)]
More code-style changes

Fixed a few other code style requirements.

8 years agoCode-style changes
mlancione [Thu, 10 Dec 2015 13:54:22 +0000 (08:54 -0500)]
Code-style changes

Chaged code to match mono coding style.

8 years agoMerge pull request #2305 from ludovic-henry/fix-threadpool-36414
Ludovic Henry [Thu, 10 Dec 2015 11:18:10 +0000 (11:18 +0000)]
Merge pull request #2305 from ludovic-henry/fix-threadpool-36414

[threadpool] Fix get min and available threads icalls

8 years agoMerge pull request #2296 from xmcclure/webrequest-regex
Martin Baulig [Thu, 10 Dec 2015 03:17:21 +0000 (22:17 -0500)]
Merge pull request #2296 from xmcclure/webrequest-regex

Correctly escape proxy domains in WebRequest (bug #36356)

8 years agoMerge pull request #2312 from ArsenShnurkov/bug36724
Alexander Köplinger [Thu, 10 Dec 2015 00:12:19 +0000 (01:12 +0100)]
Merge pull request #2312 from ArsenShnurkov/bug36724

fix for https://bugzilla.xamarin.com/show_bug.cgi?id=36724

8 years agoFix the x86/ppc build.
Zoltan Varga [Wed, 9 Dec 2015 23:57:09 +0000 (18:57 -0500)]
Fix the x86/ppc build.

8 years ago[corlib]: X509Certificate needs to implement IDisposable.
Martin Baulig [Wed, 9 Dec 2015 23:22:29 +0000 (18:22 -0500)]
[corlib]: X509Certificate needs to implement IDisposable.

8 years agoMerge pull request #2288 from evincarofautumn/c++-compat
João Matos [Wed, 9 Dec 2015 23:29:25 +0000 (23:29 +0000)]
Merge pull request #2288 from evincarofautumn/c++-compat

[runtime] Compile cleanly with -Wc++-compat.

8 years ago[runtime] Compile cleanly with -Wc++-compat.
Jon Purdy [Wed, 18 Nov 2015 19:42:01 +0000 (11:42 -0800)]
[runtime] Compile cleanly with -Wc++-compat.

 * Add explicit casts for void pointers and enums.

 * Rename 'class' to 'klass' and 'this' to 'this_obj'.

 * Avoid other C++ keywords by appending an underscore.

 * Change MonoSeqPointInfo to avoid empty struct size warnings.

8 years ago[sdb] Align the location of the MonoContext structure on the stack in the sdb trampol...
Zoltan Varga [Wed, 9 Dec 2015 21:36:36 +0000 (16:36 -0500)]
[sdb] Align the location of the MonoContext structure on the stack in the sdb trampolines on x86, to prevent a possible crash with memcpy.

8 years ago[threadpool] Fix get min and available threads icalls
Ludovic Henry [Tue, 8 Dec 2015 20:49:27 +0000 (20:49 +0000)]
[threadpool] Fix get min and available threads icalls

Fix bug #36414

8 years ago[reflection] Fix MethodInfo.GetBaseDefinition() for open constructed base types.
Aleksey Kliger [Tue, 8 Dec 2015 22:47:10 +0000 (17:47 -0500)]
[reflection] Fix MethodInfo.GetBaseDefinition() for open constructed base types.

When a generic derived class has an open constructed base type, we have
to apply the type arguments in order to find the correct base definition MethodInfo.

8 years agoMerge pull request #2285 from knocte/filesystemwatcher
Alexis Christoforides [Wed, 9 Dec 2015 19:11:41 +0000 (14:11 -0500)]
Merge pull request #2285 from knocte/filesystemwatcher

[FileSystemWatcher] Kill race condition (fixes BXC#10205)

8 years agoFixing Tab Spaces
mlancione [Wed, 9 Dec 2015 19:09:05 +0000 (14:09 -0500)]
Fixing Tab Spaces

Replaced spaces in previous commit with tabs, to follow format of
mono/master.

8 years ago[mkbundle] Fix execution on OS X and Linux
Alexis Christoforides [Wed, 9 Dec 2015 17:46:45 +0000 (12:46 -0500)]
[mkbundle] Fix execution on OS X and Linux

8 years agofix for https://bugzilla.xamarin.com/show_bug.cgi?id=36724
ArsenShnurkov [Wed, 9 Dec 2015 17:58:00 +0000 (20:58 +0300)]
fix for https://bugzilla.xamarin.com/show_bug.cgi?id=36724

8 years ago[reflection] Test case for 36305.
Aleksey Kliger [Wed, 9 Dec 2015 15:30:38 +0000 (10:30 -0500)]
[reflection] Test case for 36305.

When the base type of a generic type is an open constructed generic
type, GetBaseDefinition() must take the instantiation into account while
traversing the class hierarchy.

8 years ago[mono/driver] On OSX, increase the number of file handles available.
Miguel de Icaza [Wed, 9 Dec 2015 02:10:13 +0000 (21:10 -0500)]
[mono/driver] On OSX, increase the number of file handles available.

We just reverted a patch that prevented the FileSystemWatcher from
opening too many file descriptors (200).  That was a band-aid at one
of the spots that opened too many file, as we would exhaust the number
of files, and later abort when some other operation needed files.

The problem is that OSX defaults to 256 file descriptors, and .NET
applications are file descriptor hungry, in fact, many applications
increase their file handled limit before starting.

This patch on OSX will attempt to increase the number of handles
available to 1024 if the number of handles avaialble is less than
that.

The commit that removed the limit was:

2af882232ce4961fdbe1ba0ae36246456bb1fbfb

And it was closed to fix:

#28693

8 years agoMerge pull request #2297 from akoeplinger/msvc-autoupdate-config.h
Alexander Köplinger [Tue, 8 Dec 2015 22:54:10 +0000 (23:54 +0100)]
Merge pull request #2297 from akoeplinger/msvc-autoupdate-config.h

[msvc] Automatically update (win-)config.h with the correct version number

8 years agoDisable partial sharing again, it causes problems on ppc/s390x, and crashes in the...
Zoltan Varga [Tue, 8 Dec 2015 22:21:57 +0000 (17:21 -0500)]
Disable partial sharing again, it causes problems on ppc/s390x, and crashes in the roslyn benchmark:

https://performancebot.mono-project.com/builders/debian-armhf_utilite-desktop_auto-sgen/builds/743/steps/roslyn/logs/stdio

8 years ago[llvm] Use a separate calling convention for gsharedvt methods in llvmonly mode,...
Zoltan Varga [Tue, 8 Dec 2015 22:12:13 +0000 (17:12 -0500)]
[llvm] Use a separate calling convention for gsharedvt methods in llvmonly mode, pass/return everything by ref. Not yet used.

8 years agoMerge pull request #2295 from lambdageek/dev/test-conc-hashtable-coop-fix
Rodrigo Kumpera [Tue, 8 Dec 2015 21:29:33 +0000 (16:29 -0500)]
Merge pull request #2295 from lambdageek/dev/test-conc-hashtable-coop-fix

(test-conc-hashtable.c) Make test work with cooperative suspend

8 years agoMerge pull request #2302 from ludovic-henry/fix-delegate-36640
Ludovic Henry [Tue, 8 Dec 2015 20:33:53 +0000 (20:33 +0000)]
Merge pull request #2302 from ludovic-henry/fix-delegate-36640

[delegate] Fix multicast Method property implementation

8 years ago[runtime] remove debug statements introduced by a0e1dae32ceaf5331f5caf70b659de1392bbbc14
Bernhard Urban [Tue, 8 Dec 2015 19:38:21 +0000 (11:38 -0800)]
[runtime] remove debug statements introduced by a0e1dae32ceaf5331f5caf70b659de1392bbbc14

8 years agoMerge pull request #2304 from BillSeurer/master
João Matos [Tue, 8 Dec 2015 19:31:37 +0000 (19:31 +0000)]
Merge pull request #2304 from BillSeurer/master

[ppc] Temporary fix for power to get builds working.

8 years agoMerge pull request #2301 from ludovic-henry/fix-delegate-36646
Ludovic Henry [Tue, 8 Dec 2015 18:54:41 +0000 (18:54 +0000)]
Merge pull request #2301 from ludovic-henry/fix-delegate-36646

[delegate] Fix multicast remove behaviour

8 years ago[ppc] Temporary fix for power to get builds working.
Bill Seurer [Tue, 8 Dec 2015 18:52:01 +0000 (12:52 -0600)]
[ppc] Temporary fix for power to get builds working.

8 years ago[runtime] Initialize a dynamic_images_mutex.
Zoltan Varga [Tue, 8 Dec 2015 17:18:59 +0000 (12:18 -0500)]
[runtime] Initialize a dynamic_images_mutex.

8 years ago[delegate] Fix multicast remove behaviour
Ludovic Henry [Tue, 8 Dec 2015 15:54:16 +0000 (15:54 +0000)]
[delegate] Fix multicast remove behaviour

The .NET delegate removal semantic is a bit unpredictable. For example, the following (d1 + d2 + d3) - (d1 + d3) is going to return the d123 delegate, and not the d2 delegate as we could have guessed. This is because removal will remove the `list' of delegates as a whole, and not the elements in the list.

The previous implementation would then have a different behavior than the one observed on .NET.

Fixes bug #36646

8 years ago[delegate] Fix multicast Method property implementation
Ludovic Henry [Tue, 8 Dec 2015 16:38:32 +0000 (16:38 +0000)]
[delegate] Fix multicast Method property implementation

.NET returns the method for the last delegate of the multicast delegate.

8 years agoMerge pull request #2299 from lewurm/finalizer_thread
Zoltan Varga [Tue, 8 Dec 2015 16:37:49 +0000 (11:37 -0500)]
Merge pull request #2299 from lewurm/finalizer_thread

[runtime] adding additional assert to highlight source of a race

8 years agoMerge pull request #2298 from akoeplinger/gsnprintf
Zoltan Varga [Tue, 8 Dec 2015 05:58:56 +0000 (00:58 -0500)]
Merge pull request #2298 from akoeplinger/gsnprintf

[metadata] Use g_snprintf instead of snprintf to fix MSVC build

8 years ago[runtime] adding additional assert to highlight source of a race
Bernhard Urban [Tue, 8 Dec 2015 02:04:25 +0000 (02:04 +0000)]
[runtime] adding additional assert to highlight source of a race

We've seen that error for quite some time:

> `* Assertion at ../../mono/utils/mono-os-mutex.h:71, condition `res != EINVAL' not met`

It looks like there's a race between `finalizer_thread()` and `mono_gc_cleanup()` around
`reference_queue_mutex`. The source of the problem is, `finalizer_thread` could end up
being alive, although `mono_gc_cleanup()` made some effort to kill it and then destroys
`reference_queue_mutex`, while the finalizer thread is still using it in
`reference_queue_proccess_all()`.

> $ MONO_GC_DEBUG=bridge=Bridge MONO_GC_PARAMS=minor=split MONO_ENV_OPTIONS=--gc=sgen MONO_PATH=/home/lewurm/monoperf/mono/mcs/class/lib/net_4_x ../../mono/mini/mono sgen-bridge-major-fragmentation.exe --optimize=all --debug
> [...]
> [12/08/2015 01:49:31] done
> Shutting down finalizer thread timed out.
> * Assertion at gc.c:867, condition `finalizer_thread_exited' not met
>
> Stacktrace:
>
>
> Native stacktrace:
>
>
> Debug info from gdb:
>
> [New LWP 7623]
> [New LWP 7622]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
> 0x4043b5f4 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
>   Id   Target Id         Frame
>   3    Thread 0x417ff430 (LWP 7622) "mono" 0x4043b5f4 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
>   2    Thread 0x42573430 (LWP 7623) "Finalizer" 0x0021482a in finalizers_with_predicate (predicate=0x1fd121 <object_in_domain_predicate>, user_data=0x37a348, out_array=0x42572c70, out_size=64, hash_table=0x338f68 <major_finalizable_hash>) at sgen-fin-weak-hash.c:581
> * 1    Thread 0x406c4250 (LWP 7620) "mono" 0x4043b5f4 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
>
> Thread 3 (Thread 0x417ff430 (LWP 7622)):
> #0  0x4043b5f4 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
> #1  0x404371d8 in pthread_cond_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
> #2  0x00242266 in mono_os_cond_wait (cond=0x346e98 <work_cond>, mutex=0x346e80 <lock>) at ../../mono/utils/mono-os-mutex.h:105
> #3  0x00242c1a in thread_func (thread_data=0x0) at sgen-thread-pool.c:118
> #4  0x40433fbc in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
> #5  0x405a0b3c in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>
> Thread 2 (Thread 0x42573430 (LWP 7623)):
> #0  0x0021482a in finalizers_with_predicate (predicate=0x1fd121 <object_in_domain_predicate>, user_data=0x37a348, out_array=0x42572c70, out_size=64, hash_table=0x338f68 <major_finalizable_hash>) at sgen-fin-weak-hash.c:581
> #1  0x00214894 in sgen_gather_finalizers_if (predicate=0x1fd121 <object_in_domain_predicate>, user_data=0x37a348, out_array=0x42572c70, out_size=64) at sgen-fin-weak-hash.c:622
> #2  0x001fd16a in mono_gc_finalizers_for_domain (domain=0x37a348, out_array=0x42572c70, out_size=64) at sgen-mono.c:546
> #3  0x001ca2a4 in finalize_domain_objects (req=0x47ba68) at gc.c:678
> #4  0x001ca3b6 in finalizer_thread (unused=0x0) at gc.c:730
> #5  0x001a1392 in start_wrapper_internal (data=0x3b1100) at threads.c:713
> #6  0x001a1430 in start_wrapper (data=0x3b1100) at threads.c:760
> #7  0x0027097a in inner_start_thread (arg=0xbed58de0) at mono-threads-posix.c:92
> #8  0x40433fbc in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
> #9  0x405a0b3c in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>
> Thread 1 (Thread 0x406c4250 (LWP 7620)):
> #0  0x4043b5f4 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
> #1  0x4043a396 in waitpid () from /lib/arm-linux-gnueabihf/libpthread.so.0
> #2  0x000d1b24 in mono_handle_native_sigsegv (signal=6, ctx=0xbed58a80, info=0xbed58a00) at mini-exceptions.c:2235
> #3  0x00112424 in sigabrt_signal_handler (_dummy=6, _info=0xbed58a00, context=0xbed58a80) at mini-posix.c:218
> #4  <signal handler called>
> #5  0x405248e6 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
> #6  0x405330fe in raise () from /lib/arm-linux-gnueabihf/libc.so.6
> #7  0x40535956 in abort () from /lib/arm-linux-gnueabihf/libc.so.6
> #8  0x00277eaa in monoeg_log_default_handler (log_domain=0x0, log_level=G_LOG_LEVEL_ERROR, message=0x47bb28 "* Assertion at gc.c:867, condition `finalizer_thread_exited' not met\n", unused_data=0x0) at goutput.c:233
> #9  0x00277dca in monoeg_g_logv (log_domain=0x0, log_level=G_LOG_LEVEL_ERROR, format=0x3089b8 "* Assertion at %s:%d, condition `%s' not met\n", args=...) at goutput.c:113
> #10 0x00277e32 in monoeg_assertion_message (format=0x3089b8 "* Assertion at %s:%d, condition `%s' not met\n") at goutput.c:133
> #11 0x001ca786 in mono_gc_cleanup () at gc.c:867
> #12 0x001c1d24 in mono_runtime_cleanup (domain=0x37a348) at appdomain.c:356
> #13 0x0001dec0 in mini_cleanup (domain=0x37a348) at mini-runtime.c:3560
> #14 0x000a672c in mono_main (argc=5, argv=0x358098) at driver.c:2065
> #15 0x00017c4e in mono_main_with_options (argc=5, argv=0x358098) at main.c:20
> #16 0x00017c7e in main (argc=4, argv=0xbed591b4) at main.c:53

=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

8 years agoUpdate Makefile.am with monobt script
João Matos [Tue, 8 Dec 2015 00:29:20 +0000 (00:29 +0000)]
Update Makefile.am with monobt script

8 years ago[metadata] Use g_snprintf instead of snprintf to fix MSVC build
Alexander Köplinger [Tue, 8 Dec 2015 00:17:24 +0000 (01:17 +0100)]
[metadata] Use g_snprintf instead of snprintf to fix MSVC build

The latter only works with Visual Studio 2015 and later. We're still using VS2013 on Jenkins

8 years agoDocument HTTP_PROXY and NO_PROXY environment variables.
Andi McClure [Mon, 7 Dec 2015 22:20:39 +0000 (17:20 -0500)]
Document HTTP_PROXY and NO_PROXY environment variables.

8 years agoMerge pull request #2246 from BrzVlad/feature-concurrent-evacuation
Vlad Brezae [Mon, 7 Dec 2015 22:09:17 +0000 (17:09 -0500)]
Merge pull request #2246 from BrzVlad/feature-concurrent-evacuation

Feature evacuation with concurrent sgen

8 years ago[sgen] Fix binary protocol scan process reference entries
Vlad Brezae [Tue, 10 Nov 2015 14:53:35 +0000 (16:53 +0200)]
[sgen] Fix binary protocol scan process reference entries

The obj pointer can actually point inside the object for big arrays

8 years ago[sgen] Binary protocol entry for mod union cardtable markings
Vlad Brezae [Mon, 9 Nov 2015 17:59:27 +0000 (19:59 +0200)]
[sgen] Binary protocol entry for mod union cardtable markings

8 years ago[sgen] Fix mod union cardtable marking race
Vlad Brezae [Mon, 9 Nov 2015 18:13:35 +0000 (20:13 +0200)]
[sgen] Fix mod union cardtable marking race

When the nursery collector is starting and we have a concurrent collection in progress we need to save the global card table entries to the mod union card tables. When doing so we were marking all the mod union cards with either 0 or 1, so we could lose a mark if the concurrent collector tries to mark the same card at the same time, since the concurrent collector now runs concurrent even with nursery collections. We fix this by never marking with 0.

8 years ago[sgen] Remove pointless prototype
Vlad Brezae [Mon, 2 Nov 2015 22:50:14 +0000 (00:50 +0200)]
[sgen] Remove pointless prototype

8 years ago[sgen] Remove allow synchronous flag for concurrent collection
Vlad Brezae [Mon, 2 Nov 2015 20:08:34 +0000 (22:08 +0200)]
[sgen] Remove allow synchronous flag for concurrent collection

When concurrent, we always handle evacuating blocks, without the need of a synchronous major collection.

8 years ago[sgen] Evacuation for the concurrent collector
Vlad Brezae [Wed, 4 Nov 2015 12:50:44 +0000 (14:50 +0200)]
[sgen] Evacuation for the concurrent collector

The concurrent mark no longer follows references into blocks that are evacuated. The cardtable is marked instead and all the objects will be moved during the finishing pause.

8 years ago[msvc] Automatically update (win-)config.h with the correct version number
Alexander Köplinger [Mon, 7 Dec 2015 01:16:54 +0000 (02:16 +0100)]
[msvc] Automatically update (win-)config.h with the correct version number

A small powershell command grabs the version number from configure.ac and uses it during winsetup.bat,
this way we don't have to manually keep them in sync.

8 years ago[msvc] Add 'include' directory to .gitignore
Alexander Köplinger [Wed, 25 Nov 2015 16:43:36 +0000 (17:43 +0100)]
[msvc] Add 'include' directory to .gitignore

Copying of header files to this directory was introduced in 8c455550ab91f88362c01fcbe64208b8772877e8,
but we don't want to actually check it in.

8 years ago[aot] Fix the encoding/decoding of generic parameters after 835cc6eda9fb6edc6e5177444...
Zoltan Varga [Mon, 7 Dec 2015 21:15:18 +0000 (16:15 -0500)]
[aot] Fix the encoding/decoding of generic parameters after 835cc6eda9fb6edc6e51774443dd6cce853dcea2.

8 years agoCorrectly escape proxy domains in WebRequest (bug #36356)
Andi McClure [Mon, 7 Dec 2015 21:01:51 +0000 (16:01 -0500)]
Correctly escape proxy domains in WebRequest (bug #36356)

Our implementation for System.Net.WebRequest takes proxy exclusions
which are in fileglob (*.example.com) format, and passes them to
System.Net.WebProxy as a "bypass list", which expects Regex format.
This means immediate failure if you have an exclusion with a fileglob,
because WebProxy will throw an exception for bad Regex format.