HNHacker News
TopNewBestAskShowJobs

dzeban

49 karma · joined November 25, 2014

submissionscomments
dzeban··on When memory is not enough
I guess, you're right - for naive implementation it should fall with error, not a segfault. Maybe I just add a check for realloc result.

As for qsort implementation - I was confused by glibc sources ;-) What I've found was a slow but in-place implementation, and what you've shown me is an actual implementation that invokes an in-place variant when allocation was failed:

  tmp = malloc (size);
  __set_errno (save);
  if (tmp == NULL)
    {
      /* Couldn't get space, so use the slower algorithm
         that doesn't need a temporary array.  */
      _quicksort (b, n, s, cmp, arg);
      return;
    }
Thanks for feedback!
dzeban··on Restricting program memory
1M is too small for what? For sorting? Dunno, will see next time when try to implement external merge sort :-). Too small for the whole program? Of course, it won't load runtime - I've shown it in container and qemu parts.