mono.git
8 years ago[corlib] Fix potential RegisteredWaitHandle resource leak
Ludovic Henry [Tue, 16 Feb 2016 20:46:23 +0000 (20:46 +0000)]
[corlib] Fix potential RegisteredWaitHandle resource leak

If we construct RegisteredWaitHandle with executeOnlyOnce = true, and never call Unregister, we will keep _waitObject.SafeWaitHandle reference count unbalanced. This will lead to never releasing the waitObject handle.

As we only need to ensure that the waitObject handle is alive while in the Wait method, we use the SafeHandle mechanism only there. The 2 possibles scenarios in the Wait method are:
 - waitObject has not been closed: we increment its ref count, so we ensure that it's alive as long as we use it here
 - waitObject has been closed: a ObjectDisposedException is thrown, we catch it and keep on without trying to wait on the handle

8 years agoMerge pull request #2627 from kasthack/sysweb-import
Marek Safar [Wed, 17 Feb 2016 09:33:21 +0000 (10:33 +0100)]
Merge pull request #2627 from kasthack/sysweb-import

[System.Web] Reference source import

8 years agoMerge pull request #2629 from gofman/fixtimezoneinfo
Marek Safar [Wed, 17 Feb 2016 09:31:11 +0000 (10:31 +0100)]
Merge pull request #2629 from gofman/fixtimezoneinfo

[System.TimeZoneInfo] Fix finding system time zone when /etc/localtim…

8 years ago[System.TimeZoneInfo] Fix finding system time zone when /etc/localtime has a relative...
Paul Gofman [Wed, 17 Feb 2016 08:46:09 +0000 (11:46 +0300)]
[System.TimeZoneInfo] Fix finding system time zone when /etc/localtime has a relative path.

8 years ago[jit] Use mono_resolve_patch_target_checked () in more places.
Zoltan Varga [Wed, 17 Feb 2016 04:57:55 +0000 (23:57 -0500)]
[jit] Use mono_resolve_patch_target_checked () in more places.

8 years ago[jit] Use mono_resolve_patch_target_checked () in more places.
Zoltan Varga [Wed, 17 Feb 2016 04:20:02 +0000 (23:20 -0500)]
[jit] Use mono_resolve_patch_target_checked () in more places.

8 years ago[System.Web] Reference source import: System.Web.Util internal classes
kasthack [Wed, 17 Feb 2016 04:08:56 +0000 (07:08 +0300)]
[System.Web] Reference source import: System.Web.Util internal classes

8 years ago[System.Web] Reference source import: System.Web.Routing internal classes
kasthack [Wed, 17 Feb 2016 03:35:31 +0000 (06:35 +0300)]
[System.Web] Reference source import: System.Web.Routing internal classes

8 years ago[System.Web] Reference source import
kasthack [Wed, 17 Feb 2016 03:15:30 +0000 (06:15 +0300)]
[System.Web] Reference source import

8 years agoFix the build.
Zoltan Varga [Wed, 17 Feb 2016 02:56:23 +0000 (21:56 -0500)]
Fix the build.

8 years ago[llvm] Remove some unfinished code committed by mistake.
Zoltan Varga [Wed, 17 Feb 2016 02:56:03 +0000 (21:56 -0500)]
[llvm] Remove some unfinished code committed by mistake.

8 years agoMerge pull request #2625 from xmcclure/tinymemoryleak
monojenkins [Wed, 17 Feb 2016 02:45:17 +0000 (02:45 +0000)]
Merge pull request #2625 from xmcclure/tinymemoryleak

Fix memory leak in mono_aot_plt_resolve when exiting with exception

We were not cleaning up our allocated memory on all code paths.

8 years ago[mono-error] Replace mono_metadata_parse_type_full with mono_metadata_parse_type_checked.
Rodrigo Kumpera [Wed, 27 Jan 2016 23:10:12 +0000 (18:10 -0500)]
[mono-error] Replace mono_metadata_parse_type_full with mono_metadata_parse_type_checked.

8 years ago[metadata] Introduce MonoError into mono_metadata_parse_type_internal.
Rodrigo Kumpera [Wed, 27 Jan 2016 21:39:30 +0000 (16:39 -0500)]
[metadata] Introduce MonoError into mono_metadata_parse_type_internal.

8 years ago[metadata] Remove mono_metadata_parse_array_full, nothing uses it.
Rodrigo Kumpera [Wed, 27 Jan 2016 21:12:33 +0000 (16:12 -0500)]
[metadata] Remove mono_metadata_parse_array_full, nothing uses it.

8 years ago[llvm] Fix a crash when a simd argument is returned from a method by reference.
Zoltan Varga [Wed, 17 Feb 2016 01:09:41 +0000 (20:09 -0500)]
[llvm] Fix a crash when a simd argument is returned from a method by reference.

8 years ago[runtime] Fix the build.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Fix the build.

8 years ago[System.Web] Reference source import
kasthack [Wed, 17 Feb 2016 01:08:57 +0000 (04:08 +0300)]
[System.Web] Reference source import

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in method-to-ir.c and mini-exceptions.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in threads.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in verify.c and remoting.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in security-core-clr.c and security-manager.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in reflection.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in object.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in marshal.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in locale.c.

The macro generates the right form of corlib type lookup & caching.

8 years ago[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACH...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Replace hand-written type look up/caching with GENERATE_GET_CLASS_WITH_CACHE in icall.c.

The macro generates the right form of corlib type lookup & caching. Plus it's shorter.

8 years agoImport System.Diagnostics.Process changes to mobile profile
Andi McClure [Tue, 16 Feb 2016 23:04:18 +0000 (18:04 -0500)]
Import System.Diagnostics.Process changes to mobile profile

Changes modeled on ludovic-henry commit 00b5517dd3. Fixes build.

8 years agoFix memory leak in mono_aot_plt_resolve when exiting with exception
Andi McClure [Tue, 16 Feb 2016 21:45:53 +0000 (16:45 -0500)]
Fix memory leak in mono_aot_plt_resolve when exiting with exception

8 years ago[linker] do not set scope of non-marked typerefs
Radek Doulik [Tue, 16 Feb 2016 21:21:58 +0000 (22:21 +0100)]
[linker] do not set scope of non-marked typerefs

 - fixes #38818

 - setting the *unchanged* scope to non-marked types is harmful,
   because in case the type has declaring type, the scope of declaring
   type is set as well. see
   https://github.com/mono/cecil/blob/master/Mono.Cecil/TypeReference.cs#L132

   public virtual IMetadataScope Scope {
      get ...
      set {
          var declaring_type = this.DeclaringType;
          if (declaring_type != null) {
              declaring_type.Scope = value;
              return;
          }
          scope = value;
      }
   }

   so in our case, we first set correctly scope of
   System.Collections.Generic.Dictionary`2 to mscorlib, then (re)set
   scope of System.Collections.Generic.Dictionary`2/ValueCollection
   and
   System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator
   to System.Collection (note that these types are not marked and are
   swept away by linker), which sets scope of its declaring type
   System.Collections.Generic.Dictionary`2 back to System.Collection

   and because the System.Collection is linked-out, the typeref is
   incorrectly written with the scope set to System later

8 years ago[runtime] Bump corlib version
Ludovic Henry [Tue, 16 Feb 2016 20:42:57 +0000 (20:42 +0000)]
[runtime] Bump corlib version

8 years ago[Process] Add stress tests
Ludovic Henry [Thu, 11 Feb 2016 15:55:21 +0000 (15:55 +0000)]
[Process] Add stress tests

That's to ensure we do not have regression in the Process implementation.

8 years ago[System] Import System.Diagnostics.Process
Ludovic Henry [Mon, 8 Feb 2016 18:56:29 +0000 (18:56 +0000)]
[System] Import System.Diagnostics.Process

8 years ago[corlib] Fix race condition between RegisteredWaitHandle Wait and Unregister methods
Ludovic Henry [Tue, 16 Feb 2016 17:03:45 +0000 (17:03 +0000)]
[corlib] Fix race condition between RegisteredWaitHandle Wait and Unregister methods

In the following case we would have a race between Wait and Unregister methods:
 - T1 calls ThreadPool.RegisterWaitForSingleObject to wait on waitHandle
 - registeredWaitHandle is constructed to wait on waitHandle
 - registeredWaitHandle.Wait method is enqueued on the ThreadPool
 - T1 calls registeredWaitHandle.Unregister
 - T1 calls waitHandle.Close (happens in Process.StopWatchingForExit)
 - TTP (the threadpool thread) calls registeredWaitHandle.Wait
  - TTP calls WaitHandle.WaitAny (waitHandle, ...)

The last step try to access the waitHandle that has been previously closed, leading to a _wapi_handle_ref / _wapi_handle_unref_full error message.

The fix is to ensure that the RegisteredWaitHandle keeps the WaitHandle alive. To achieve this, we simply use the SafeWaitHandle inside the WaitHandle by: increasing its ref count when constructing the RegisteredWaitHandle, and decrementing it when unregistering it.
We also increase the count when using it in Wait, so if we execute Unregister and Wait concurrently, we guarantee that the WaitHandle is still valid in Wait, or get an exception if not.

8 years ago[mcs] Add more known sdk paths redirections
Marek Safar [Tue, 16 Feb 2016 16:39:00 +0000 (17:39 +0100)]
[mcs] Add more known sdk paths redirections

8 years agoMerge pull request #2603 from kumpera/fix_set_pending_exception
Rodrigo Kumpera [Tue, 16 Feb 2016 16:02:23 +0000 (08:02 -0800)]
Merge pull request #2603 from kumpera/fix_set_pending_exception

[runtime] Move pending_exception from InternalThread to Thread to avoid crashing on domain unload.

8 years agoMerge pull request #2548 from esdrubal/discovery
Marcos Henrich [Tue, 16 Feb 2016 15:54:54 +0000 (15:54 +0000)]
Merge pull request #2548 from esdrubal/discovery

[System.Web.Services] Fix DiscoveryClientProtocol

8 years agoMerge pull request #2623 from esdrubal/fileinfo_moveto
Marcos Henrich [Tue, 16 Feb 2016 13:57:08 +0000 (13:57 +0000)]
Merge pull request #2623 from esdrubal/fileinfo_moveto

[corlib] Fix FileInfo.MoveTo with same name.

8 years agoMerge pull request #2615 from akoeplinger/fix-perfcounter-free-mem-calculation
Alexander Köplinger [Tue, 16 Feb 2016 12:08:55 +0000 (13:08 +0100)]
Merge pull request #2615 from akoeplinger/fix-perfcounter-free-mem-calculation

[perfcounters] Fix calculation of free memory in mono_determine_physical_ram_available_size ()

8 years ago[System.Web.Services] Test DiscoveryClientProtocol
Marcos Henrich [Sat, 30 Jan 2016 11:58:12 +0000 (11:58 +0000)]
[System.Web.Services] Test DiscoveryClientProtocol

Covers #36116

8 years ago[corlib] Fix FileInfo.MoveTo with same name.
Marcos Henrich [Tue, 16 Feb 2016 11:17:19 +0000 (11:17 +0000)]
[corlib] Fix FileInfo.MoveTo with same name.

FileInfo.MoveTo was not moving a file from one directory to another when
the file name did not change.

Fixes #18361.

An ArgumentException when destFileName is an empty array was added,
otherwise FileInfoTest.MoveTo_DestFileName_Empty would fail. Both
Path.GetFullPath and File.Move throw similar exceptions but
MoveTo_DestFileName_Empty expects the one from File.Move so it was added
to this method.

8 years ago[corlib] Test FileInfo.MoveTo with files with same name
Marcos Henrich [Tue, 16 Feb 2016 10:34:08 +0000 (10:34 +0000)]
[corlib] Test FileInfo.MoveTo with files with same name

Covers #18361

8 years agoBump reference source to fix the build
Marek Safar [Mon, 15 Feb 2016 19:29:05 +0000 (20:29 +0100)]
Bump reference source to fix the build

8 years agoMerge pull request #2562 from BrzVlad/fix-drainstack-stats
Vlad Brezae [Mon, 15 Feb 2016 19:04:55 +0000 (02:04 +0700)]
Merge pull request #2562 from BrzVlad/fix-drainstack-stats

[sgen] Drain the gray stack only in finish gray stack

8 years ago[corlib] MethodInfo from reference source
Marek Safar [Mon, 15 Feb 2016 17:15:34 +0000 (18:15 +0100)]
[corlib] MethodInfo from reference source

8 years ago[mcs] Update expression tree generator to use .net 4.5 api when available. Fixes...
Marek Safar [Mon, 15 Feb 2016 15:56:29 +0000 (16:56 +0100)]
[mcs] Update expression tree generator to use .net 4.5 api when available. Fixes #38703

8 years ago[io-layer] Add Get/SetThreadPriority to wapi-remap.h
Alexander Köplinger [Mon, 15 Feb 2016 14:18:40 +0000 (15:18 +0100)]
[io-layer] Add Get/SetThreadPriority to wapi-remap.h

The new functions were added in d5768a7f141e2a579cbca26f76c791c215f4aabf but not remapped.

8 years agoMerge pull request #2619 from directhex/dont_remap_npgsql
Marek Safar [Mon, 15 Feb 2016 14:20:59 +0000 (15:20 +0100)]
Merge pull request #2619 from directhex/dont_remap_npgsql

Don't remap all versions of Npgsql to 4.0.0.0

8 years agoDon't remap all versions of Npgsql to 4.0.0.0
Jo Shields [Mon, 15 Feb 2016 14:12:52 +0000 (14:12 +0000)]
Don't remap all versions of Npgsql to 4.0.0.0

Mono has a list of assemblies considered "internal", whose versions are automatically remapped to the distro default version.

Since we no longer bundle Npgsql, it is up to individual distributions to package their own Npgsql - but Mono cannot load any version other than 4.0.0.0 from the GAC, due to this remapping:

Mono: Assembly Ref addref npghello[0x17e2fd0] -> mscorlib[0x1789c00]: 2
Mono: The request to load the assembly Npgsql v2.2.7.0 was remapped to v4.0.0.0
Mono: Assembly Loader probing location: '/usr/lib/mono/gac/Npgsql/4.0.0.0__5d8b90d52f46fda7/Npgsql.dll'.

Npgsql, Version=2.2.7.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7

8 years ago[msvc] Update order.xml and csproj files
Alexander Köplinger [Mon, 15 Feb 2016 14:03:37 +0000 (15:03 +0100)]
[msvc] Update order.xml and csproj files

8 years ago[genproj] Fix bashism in library.make
Alexander Köplinger [Mon, 15 Feb 2016 14:02:13 +0000 (15:02 +0100)]
[genproj] Fix bashism in library.make

This was added in 2687866e99a0bb6669dc61b84393bc3ec5de3fc6, but on systems where /bin/sh (which make uses by default) isn't bash this doesn't work.

Fix is to use a standard switch-case which works in all shells.

8 years ago[msvc] Update .def files
Alexander Köplinger [Mon, 15 Feb 2016 13:25:03 +0000 (14:25 +0100)]
[msvc] Update .def files

8 years agoMerge pull request #2400 from esdrubal/extrahead
Marcos Henrich [Mon, 15 Feb 2016 12:21:29 +0000 (12:21 +0000)]
Merge pull request #2400 from esdrubal/extrahead

[System] Fix extra head in config bug.

8 years agoMerge pull request #2323 from esdrubal/servicemodel
Marcos Henrich [Mon, 15 Feb 2016 12:08:21 +0000 (12:08 +0000)]
Merge pull request #2323 from esdrubal/servicemodel

[System.ServiceModel] Fixes missing xsi xsd attributes

8 years agoMerge pull request #2613 from knocte/crypto-refsource
Marek Safar [Mon, 15 Feb 2016 11:39:28 +0000 (12:39 +0100)]
Merge pull request #2613 from knocte/crypto-refsource

[Crypto] Include CngKeyBlobFormat from reference sources (rm old)

8 years ago[mcs] Populate ProductVersion from all valid sources. Fixes #38553
Marek Safar [Mon, 15 Feb 2016 11:31:59 +0000 (12:31 +0100)]
[mcs] Populate ProductVersion from all valid sources. Fixes #38553

8 years ago[corlib] Add missing semicolon in StringTest
Alexander Köplinger [Sat, 13 Feb 2016 23:33:34 +0000 (00:33 +0100)]
[corlib] Add missing semicolon in StringTest

8 years agoMerge pull request #2608 from ludovic-henry/monoerror-icall
monojenkins [Sat, 13 Feb 2016 11:50:17 +0000 (11:50 +0000)]
Merge pull request #2608 from ludovic-henry/monoerror-icall

[runtime] Use MonoError for icall.c functions

8 years agoMerge pull request #2611 from akoeplinger/cleanup
Alexander Köplinger [Sat, 13 Feb 2016 11:45:56 +0000 (12:45 +0100)]
Merge pull request #2611 from akoeplinger/cleanup

[corlib] Remove FIXME_CORLIB_CMP section from Makefile

8 years agoMerge pull request #2612 from xmcclure/largestring
monojenkins [Sat, 13 Feb 2016 06:05:32 +0000 (06:05 +0000)]
Merge pull request #2612 from xmcclure/largestring

Do not run 4GB string tests on low memory systems (fixes #38392)

"Low memory" here is defined as 32-bit, less than 6GB of physical RAM, or mobile (since mobile lacks the class for querying physical RAM).

Without this patch, one of the corlib tests allocates 4 GB of RAM, which causes OOM crashes on low-memory Jenkins instances and also mobile phones.

8 years agoMerge pull request #2442 from schani/fix-larger-tlab-size
monojenkins [Sat, 13 Feb 2016 01:06:05 +0000 (01:06 +0000)]
Merge pull request #2442 from schani/fix-larger-tlab-size

[automerge] Fix larger tlab size

8 years ago[jit] Add a checked version to mono_resolve_patch_target () so exceptions are thrown...
Zoltan Varga [Sat, 13 Feb 2016 00:58:41 +0000 (19:58 -0500)]
[jit] Add a checked version to mono_resolve_patch_target () so exceptions are thrown in upper level code.

8 years agoRevert "[Process] Add stress tests"
Alexander Köplinger [Sat, 13 Feb 2016 00:15:55 +0000 (01:15 +0100)]
Revert "[Process] Add stress tests"

This reverts commit a7955a93f5d063feadb4198d8a6f142d81373b79.

The Process import commit was reverted in f74f7037195fe81396edde11c57cea3ec16f03fd,
this reverts the added tests as well since they fail on Jenkins now.

8 years agoMerge pull request #2573 from BrzVlad/fix-conc-memusage
Mark Probst [Fri, 12 Feb 2016 21:09:38 +0000 (15:09 -0600)]
Merge pull request #2573 from BrzVlad/fix-conc-memusage

[sgen] Improve memory usage with the concurrent collector

8 years agoMerge pull request #2589 from gofman/master
monojenkins [Fri, 12 Feb 2016 20:25:20 +0000 (20:25 +0000)]
Merge pull request #2589 from gofman/master

sgen: fix bit counting in mword

Fixes GC crashe for 64-bit architecture when using libmono.
http://lists.ximian.com/pipermail/mono-devel-list/2016-February/043507.html

8 years ago[perfcounters] Fix calculation of free memory in mono_determine_physical_ram_availabl...
Alexander Köplinger [Fri, 12 Feb 2016 19:53:23 +0000 (20:53 +0100)]
[perfcounters] Fix calculation of free memory in mono_determine_physical_ram_available_size ()

The implementation added in b5d0ffe7ddba53a6b17587fc43750bf5c0ec2f81 forgot to multiply vmstat.free_count (== number of free pages)
by the page size in the __APPLE__ case, making the reported number much smaller than the reality.

8 years agoMerge pull request #2585 from lambdageek/dev/bug-38222
monojenkins [Fri, 12 Feb 2016 19:46:20 +0000 (19:46 +0000)]
Merge pull request #2585 from lambdageek/dev/bug-38222

[reflection] Signal pending loader error in mono_reflection_get_custom_attrs_data

Fixes [Bugzilla 38222](https://bugzilla.xamarin.com/show_bug.cgi?id=38222)

While we're at it, convert `mono_reflection_get_custom_attrs_data` to use
`MonoError` and mark it external only.  Runtime should use
`mono_reflection_get_custom_attrs_data_checked`

8 years agoUse Assert.Ignore for insufficient-memory test skips
Andi McClure [Fri, 12 Feb 2016 19:26:50 +0000 (14:26 -0500)]
Use Assert.Ignore for insufficient-memory test skips

8 years ago[Crypto] Include CngKeyBlobFormat from reference sources (rm old)
Andrés G. Aragoneses [Fri, 12 Feb 2016 19:11:16 +0000 (03:11 +0800)]
[Crypto] Include CngKeyBlobFormat from reference sources (rm old)

CngKeyBlobFormat was never included in the build, but anyway
we can include the one from referencesource now.

Detected by a user of Npgsql 3.0.5 which reported the problem
in stackoverflow:
http://stackoverflow.com/questions/35016066/failure-to-resolve-system-security-cryptography-cngkeyblobformat-when-using-npgs

8 years agoDo not run 4GB string tests on low memory systems (fixes #38392)
Andi McClure [Fri, 12 Feb 2016 18:56:20 +0000 (13:56 -0500)]
Do not run 4GB string tests on low memory systems (fixes #38392)

"Low memory" here is defined as 32-bit, less than 6GB of physical RAM,
or mobile (since mobile lacks the class for querying physical RAM).

8 years ago[corlib] Remove FIXME_CORLIB_CMP section from Makefile
Alexander Köplinger [Fri, 12 Feb 2016 18:34:54 +0000 (19:34 +0100)]
[corlib] Remove FIXME_CORLIB_CMP section from Makefile

Looks like this isn't needed anymore.

8 years agoMerge pull request #2605 from lambdageek/dev/bug-38408
Aleksey Kliger (λgeek) [Fri, 12 Feb 2016 18:16:44 +0000 (13:16 -0500)]
Merge pull request #2605 from lambdageek/dev/bug-38408

[io] Release Pipe and Console shared handles

8 years agoRevert "[System] Import System.Diagnostics.Process"
Ludovic Henry [Fri, 12 Feb 2016 18:14:02 +0000 (18:14 +0000)]
Revert "[System] Import System.Diagnostics.Process"

This reverts commit d30e99d172ec5074ce6deb44bc37f9a9ecaef7fe.

8 years ago[sgen] Allow TLABs larger than MAX_SMALL_OBJ_SIZE.
Mark Probst [Fri, 15 Jan 2016 02:05:14 +0000 (18:05 -0800)]
[sgen] Allow TLABs larger than MAX_SMALL_OBJ_SIZE.

`sgen_ensure_free_space()` assumed that if `size` was larger than
`SGEN_MAX_SMALL_OBJ_SIZE`, it should find free space on the major
heap, so it wouldn't consider triggering a nursery allocation.  Making
TLABs larger than that would thus never trigger nursery collections
anymore.

Now we pass in the generation that says where we want space.

8 years ago[sgen] Add necessary type cast.
Mark Probst [Fri, 15 Jan 2016 01:52:41 +0000 (17:52 -0800)]
[sgen] Add necessary type cast.

8 years ago[runtime] Use MonoError for mono_module_get_types
Ludovic Henry [Fri, 12 Feb 2016 15:49:51 +0000 (15:49 +0000)]
[runtime] Use MonoError for mono_module_get_types

8 years ago[runtime] Use MonoError for fill_reflection_assembly_name
Ludovic Henry [Fri, 12 Feb 2016 15:31:32 +0000 (15:31 +0000)]
[runtime] Use MonoError for fill_reflection_assembly_name

8 years ago[runtime] Use MonoError for create_version
Ludovic Henry [Fri, 12 Feb 2016 15:22:59 +0000 (15:22 +0000)]
[runtime] Use MonoError for create_version

8 years ago[runtime] Use MonoError for type_from_parsed_name
Ludovic Henry [Fri, 12 Feb 2016 15:15:46 +0000 (15:15 +0000)]
[runtime] Use MonoError for type_from_parsed_name

8 years agoMerge pull request #2576 from ludovic-henry/referencesource-process
monojenkins [Fri, 12 Feb 2016 16:20:44 +0000 (16:20 +0000)]
Merge pull request #2576 from ludovic-henry/referencesource-process

[System] Import System.Diagnostics.Process

8 years agoUse X509 serial number in Mono cert store filename
Jo Shields [Fri, 12 Feb 2016 16:03:46 +0000 (16:03 +0000)]
Use X509 serial number in Mono cert store filename

The Mono cert store traditionally uses the SKI for the filename of a certificate, but this does not handle cases where a cert has been reissued with the same SKI but different serial (seen in the wild with StartCom certs). This patch appends the serial to all new imported certs, and attempts to interoperate cleanly with existing serial-less certificate stores to avoid duplication.

Closes: #30902

8 years agoMerge pull request #2604 from mattleibow/pcl-mono.dataconverter
Alexander Köplinger [Fri, 12 Feb 2016 15:38:32 +0000 (16:38 +0100)]
Merge pull request #2604 from mattleibow/pcl-mono.dataconverter

[corlib] Ensure PCL compatibility with Mono.DataConverter

8 years ago[io] Don't leak Pipe filename
Aleksey Kliger [Thu, 11 Feb 2016 22:56:53 +0000 (17:56 -0500)]
[io] Don't leak Pipe filename

Named FIFOs do indeed have names, but pipe_close doesn't free
it.  (Because CreatePipe doesn't set a filename).

8 years ago[io] Release Pipe and Console shared handles
Aleksey Kliger [Thu, 11 Feb 2016 22:55:24 +0000 (17:55 -0500)]
[io] Release Pipe and Console shared handles

Allows opening a character device or named fifo more than once with code like:

  using (var f = new FileStream ("/dev/zero", FileMode.Open))
  {
    ...
  }
  using (var f = new FileStream ("/dev/zero", FileMode.Open))
  {
    ...
  }

8 years ago[io] Test repeatedly opening a character device
Aleksey Kliger [Thu, 11 Feb 2016 23:11:16 +0000 (18:11 -0500)]
[io] Test repeatedly opening a character device

Regression test for https://bugzilla.xamarin.com/show_bug.cgi?id=38408

8 years agoMerge pull request #2606 from akoeplinger/fix-hardcoded-testports
monojenkins [Fri, 12 Feb 2016 15:10:24 +0000 (15:10 +0000)]
Merge pull request #2606 from akoeplinger/fix-hardcoded-testports

[System] Fix a few more hardcoded ports in tests

They'd cause "address already in use" errors when two builds are running concurrently on the same machine on Jenkins.

@monojenkins merge

8 years agoAdd link to the updated location for the utf8 test file
Miguel de Icaza [Fri, 12 Feb 2016 14:31:11 +0000 (09:31 -0500)]
Add link to the updated location for the utf8 test file

8 years ago[Process] Add stress tests
Ludovic Henry [Thu, 11 Feb 2016 15:55:21 +0000 (15:55 +0000)]
[Process] Add stress tests

That's to ensure we do not have regression in the Process implementation.

8 years ago[System] Import System.Diagnostics.Process
Ludovic Henry [Mon, 8 Feb 2016 18:56:29 +0000 (18:56 +0000)]
[System] Import System.Diagnostics.Process

8 years ago[System] Fix a few more hardcoded ports in tests
Alexander Köplinger [Fri, 12 Feb 2016 13:33:57 +0000 (14:33 +0100)]
[System] Fix a few more hardcoded ports in tests

They'd cause "address already in use" errors when two builds are running concurrently on the same machine on Jenkins.

8 years ago[jit] Fix the bblock linking in c5512c0d3e2b102ed16158ce8c599c8203ccd510.
Zoltan Varga [Fri, 12 Feb 2016 04:05:21 +0000 (23:05 -0500)]
[jit] Fix the bblock linking in c5512c0d3e2b102ed16158ce8c599c8203ccd510.

8 years ago[Mono.Security]: Make 'Mono.Security.Protocol.Ntlm' public and include in System...
Martin Baulig [Thu, 11 Feb 2016 22:50:31 +0000 (17:50 -0500)]
[Mono.Security]: Make 'Mono.Security.Protocol.Ntlm' public and include in System.dll on mobile.

(cherry picked from commit 2026a0b408d122cf3eb2f25cb7355215aa100291)

8 years agoRemove old, unused code
Miguel de Icaza [Thu, 11 Feb 2016 21:15:22 +0000 (16:15 -0500)]
Remove old, unused code

8 years ago[corlib] Ensure PCL compatibility with Mono.DataConverter
Matthew Leibowitz [Thu, 11 Feb 2016 20:55:02 +0000 (22:55 +0200)]
[corlib] Ensure PCL compatibility with Mono.DataConverter

8 years ago[runtime] Move pending_exception from InternalThread to Thread to avoid crashing...
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Move pending_exception from InternalThread to Thread to avoid crashing on domain unload.

InternalThread is a fundamentally different type WRT to appdomain. All instances of Thread bound to the same
os thread have a reference to a shared InternalThread.

InternalThread is always allocated in the root domain, so it MUST NOT have references to other domains as
it will lead to crashes on unload.

This was the case with pending_exception. It could point to an exception meant to the domain unloading.

This bug became more and more frequent as we move to use mono_set_pending_exception in more places. I could
reproduce it in 10 minutes of looping appdomain-unload.exe.

8 years agoMerge pull request #2560 from ludovic-henry/coop-threads-cleanup
Ludovic Henry [Thu, 11 Feb 2016 18:47:49 +0000 (18:47 +0000)]
Merge pull request #2560 from ludovic-henry/coop-threads-cleanup

[threads] Split abort/suspend into self and async cases

8 years agoMerge pull request #2587 from lambdageek/monoerror-api-cleanup-mistakes
Aleksey Kliger (λgeek) [Thu, 11 Feb 2016 17:29:59 +0000 (12:29 -0500)]
Merge pull request #2587 from lambdageek/monoerror-api-cleanup-mistakes

[runtime] Better error handling in mono_{assembly,module_file}_get_object

8 years agoMerge pull request #2590 from esdrubal/wcf_req
Marcos Henrich [Thu, 11 Feb 2016 17:19:25 +0000 (17:19 +0000)]
Merge pull request #2590 from esdrubal/wcf_req

BCL changes required by dotnet/wcf

8 years agoMerge pull request #2595 from ludovic-henry/tests-sgen
Ludovic Henry [Thu, 11 Feb 2016 16:20:45 +0000 (16:20 +0000)]
Merge pull request #2595 from ludovic-henry/tests-sgen

[tests] Remove manual for loop to run sgen tests and use different make targets

8 years ago[reflection] Better error behavior for API functions
Aleksey Kliger [Wed, 10 Feb 2016 00:35:11 +0000 (19:35 -0500)]
[reflection] Better error behavior for API functions

mono_assembly_get_object and mono_module_file_get_object should return
NULL on failure without raising an exception.