Comment 1 for bug 1095249

There is also one here:

stream_one_file(File file, xb_wstream_file_t *xbfile)
 size_t bytes;

 posix_fadvise(file, 0, 0, POSIX_FADV_SEQUENTIAL);

 while ((bytes = my_read(file, buf, XBSTREAM_BUFFER_SIZE,
    MYF(MY_WME))) > 0) {
  if (xb_stream_write_data(xbfile, buf, bytes)) {
   msg("%s: xb_stream_write_data() failed.\n",
   return 1;
  posix_fadvise(file, 0, 0, POSIX_FADV_DONTNEED);


here, it is doing fadvise POSIX_FADV_SEQ which doubles the
readahead but in the loop it discards it everytime. It should
either do POSIX_FADV_DONTNEED at the end (outside the loop) or
use ranges with POSIX_FADV_DONTNEED in the loop.