Klaus Post
974073a2e5
directio: Check if buffers are set. (#13440)
Check if directio buffers have actually been fetched and prevent errors on double Close. Return error on Read after Close.
Fixes
```
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xf8582f]
goroutine 210 [running]:
github.com/minio/minio/internal/ioutil.(*ODirectReader).Read(0xc0054f8320, {0xc0014560b0, 0xa8, 0x44d012})
github.com/minio/minio/internal/ioutil/odirect_reader.go:88 +0x10f
io.ReadAtLeast({0x428c5c0, 0xc0054f8320}, {0xc0014560b0, 0xa8, 0xa8}, 0xa8)
io/io.go:328 +0x9a
io.ReadFull(...)
io/io.go:347
github.com/minio/minio/internal/ioutil.ReadFile({0xc001bf60e0, 0x6})
github.com/minio/minio/internal/ioutil/read_file.go:48 +0x19b
github.com/minio/minio/cmd.(*FSObjects).scanBucket.func1({{0xc00444e1e0, 0x4d}, 0x0, {0xc0040cf240, 0xe}, {0xc0040cf24f, 0x18}, {0xc0040cf268, 0x18}, 0x0, ...})
github.com/minio/minio/cmd/fs-v1.go:366 +0x1ea
github.com/minio/minio/cmd.(*folderScanner).scanFolder.func1({0xc00474a6a8, 0xc0065d6793}, 0x0)
github.com/minio/minio/cmd/data-scanner.go:494 +0xb15
github.com/minio/minio/cmd.readDirFn({0xc002803e80, 0x34}, 0xc000670270)
github.com/minio/minio/cmd/os-readdir_unix.go:172 +0x638
github.com/minio/minio/cmd.(*folderScanner).scanFolder(0xc002deeb40, {0x42dc9d0, 0xc00068cbc0}, {{0xc001c6e2d0, 0x27}, 0xc0023db8e0, 0x1}, 0xc0001c7ab0)
github.com/minio/minio/cmd/data-scanner.go:427 +0xa8f
github.com/minio/minio/cmd.(*folderScanner).scanFolder.func2({{0xc001c6e2d0, 0x27}, 0xc0023db8e0, 0x27})
github.com/minio/minio/cmd/data-scanner.go:549 +0xd0
github.com/minio/minio/cmd.(*folderScanner).scanFolder(0xc002deeb40, {0x42dc9d0, 0xc00068cbc0}, {{0xc0013fa9e0, 0xe}, 0x0, 0x1}, 0xc000670dd8)
github.com/minio/minio/cmd/data-scanner.go:623 +0x205d
github.com/minio/minio/cmd.scanDataFolder({_, _}, {_, _}, {{{0xc0013fa9e0, 0xe}, 0x802, {0x210f15d2, 0xed8f903b8, 0x5bc0e80}, ...}, ...}, ...)
github.com/minio/minio/cmd/data-scanner.go:333 +0xc51
github.com/minio/minio/cmd.(*FSObjects).scanBucket(_, {_, _}, {_, _}, {{{0xc0013fa9e0, 0xe}, 0x802, {0x210f15d2, 0xed8f903b8, ...}, ...}, ...})
github.com/minio/minio/cmd/fs-v1.go:364 +0x305
github.com/minio/minio/cmd.(*FSObjects).NSScanner(0x42dc9d0, {0x42dc9d0, 0xc00068cbc0}, 0x0, 0xc003bcfda0, 0x802)
github.com/minio/minio/cmd/fs-v1.go:307 +0xa16
github.com/minio/minio/cmd.runDataScanner({0x42dc9d0, 0xc00068cbc0}, {0x436a6c0, 0xc000bfcf50})
github.com/minio/minio/cmd/data-scanner.go:150 +0x749
created by github.com/minio/minio/cmd.initDataScanner
github.com/minio/minio/cmd/data-scanner.go:73 +0xb0
```
2021-10-14 10:19:17 -07:00
..
2021-10-07 15:34:01 -07:00
2021-01-11 02:27:04 -08:00
2021-06-17 20:27:04 -07:00
2021-08-09 18:14:38 -07:00
2021-08-09 18:14:38 -07:00
2021-08-03 13:26:57 -07:00
2021-09-07 19:03:48 -07:00
2021-10-06 16:36:31 -07:00
2021-10-06 16:36:31 -07:00
2021-10-06 10:24:40 -07:00
2021-09-02 20:56:13 -07:00
2021-10-06 16:36:31 -07:00
2021-06-01 14:59:40 -07:00
2021-09-18 13:31:35 -07:00
2021-06-01 14:59:40 -07:00
2021-10-06 16:36:31 -07:00
2021-05-24 09:28:19 -07:00
2021-08-17 07:50:00 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-09-17 15:02:21 -07:00
2021-08-24 07:14:34 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-10-06 16:36:31 -07:00
2021-08-07 22:43:01 -07:00
2021-09-14 13:55:24 -07:00
2021-08-26 20:32:58 -07:00
2021-04-23 11:58:53 -07:00
2021-07-15 22:32:06 -07:00
2021-08-26 20:32:58 -07:00
2021-05-24 09:28:19 -07:00
2021-05-17 08:32:28 -07:00
2021-08-27 09:16:36 -07:00
2021-06-01 14:59:40 -07:00
2021-09-29 16:40:28 -07:00
2021-09-01 16:02:35 -07:00
2021-05-14 00:59:05 -07:00
2021-10-06 16:36:31 -07:00
2021-09-21 09:02:15 -07:00
2021-06-01 14:59:40 -07:00
2021-10-06 16:36:31 -07:00
2021-07-21 19:12:44 -07:00
2021-06-01 14:59:40 -07:00
2021-07-21 19:12:44 -07:00
2021-10-01 11:58:17 -07:00
2021-08-31 17:18:13 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-09-20 17:41:01 -07:00
2021-09-22 20:06:25 -07:00
2021-06-17 20:27:04 -07:00
2021-09-17 15:21:24 -07:00
2021-08-19 13:21:02 -07:00
2021-10-06 16:36:31 -07:00
2021-08-07 22:43:01 -07:00
2021-10-11 11:03:54 -07:00
2021-09-18 13:31:35 -07:00
2021-09-18 13:31:35 -07:00
2021-09-18 13:31:35 -07:00
2021-09-18 13:31:35 -07:00
2021-09-18 13:31:35 -07:00
2021-10-05 15:05:30 -07:00
2021-09-28 10:26:12 -07:00
2021-09-18 13:31:35 -07:00
2021-09-18 13:31:35 -07:00
2021-09-22 10:48:45 -07:00
2021-09-20 17:41:01 -07:00
2021-06-17 20:27:04 -07:00
2021-06-01 14:59:40 -07:00
2021-04-23 11:58:53 -07:00
2021-10-05 10:13:04 -07:00
2021-09-17 19:34:48 -07:00
2021-06-01 14:59:40 -07:00
2021-10-11 14:23:51 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-06-24 16:24:12 -07:00
2021-06-01 14:59:40 -07:00
2021-07-13 09:39:13 -07:00
2021-06-01 14:59:40 -07:00
2021-09-17 19:34:48 -07:00
2021-07-13 09:39:13 -07:00
2021-04-23 11:58:53 -07:00
2021-06-17 20:27:04 -07:00
2021-08-07 22:43:01 -07:00
2021-04-23 11:58:53 -07:00
2021-10-02 09:31:05 -07:00
2021-07-13 09:39:13 -07:00
2021-08-25 08:25:26 -07:00
2021-09-18 13:31:35 -07:00
2021-09-21 09:01:51 -07:00
2021-09-21 09:01:51 -07:00
2021-09-22 10:48:45 -07:00
2021-09-18 13:31:35 -07:00
2021-09-18 13:31:35 -07:00
2021-04-23 11:58:53 -07:00
2021-10-01 11:01:42 -07:00
2021-08-18 18:35:22 -07:00
2021-08-18 18:35:22 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-06-01 14:59:40 -07:00
2021-04-23 11:58:53 -07:00
2021-06-17 20:27:04 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-09-09 07:52:49 -07:00
2021-04-30 08:50:39 -07:00
2021-04-30 08:50:39 -07:00
2021-05-28 15:17:01 -07:00
2021-06-01 14:59:40 -07:00
2021-08-04 15:23:18 -07:00
2021-04-23 11:58:53 -07:00
2021-10-06 10:24:40 -07:00
2021-06-01 14:59:40 -07:00
2021-09-29 11:36:19 -07:00
2021-05-17 08:32:28 -07:00
2021-06-29 08:47:15 -07:00
2021-05-17 08:32:28 -07:00
2021-06-01 14:59:40 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-10-04 08:53:38 -07:00
2021-10-04 08:53:38 -07:00
2021-10-04 08:53:38 -07:00
2021-10-04 08:53:38 -07:00
2021-06-01 14:59:40 -07:00
2021-08-23 13:14:55 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-10-04 08:53:38 -07:00
2021-09-22 19:17:09 -07:00
2021-06-01 14:59:40 -07:00
2021-10-13 19:49:14 -07:00
2021-10-12 09:53:17 -07:00
2021-04-23 11:58:53 -07:00
2021-10-08 11:38:30 -07:00
2021-06-01 14:59:40 -07:00
2021-09-29 11:36:19 -07:00
2021-05-28 10:31:42 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-04-23 11:58:53 -07:00
2021-08-24 07:40:56 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-10-06 10:24:40 -07:00
2021-06-01 14:59:40 -07:00
2021-06-01 14:59:40 -07:00
2021-08-25 09:43:01 -07:00
2021-04-23 11:58:53 -07:00
2021-09-08 22:25:23 -07:00
2021-10-08 12:40:34 -07:00
2021-10-04 10:52:28 -07:00
2021-06-01 14:59:40 -07:00
2021-06-01 14:59:40 -07:00
2021-10-06 10:24:40 -07:00
2021-04-23 11:58:53 -07:00
2021-09-04 09:07:24 -07:00
2021-04-23 11:58:53 -07:00
2021-06-14 12:53:49 -07:00
2021-04-23 11:58:53 -07:00
2021-10-08 16:58:24 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-06-20 23:04:47 -07:00
2021-09-18 13:31:35 -07:00
2021-04-30 08:50:39 -07:00
2021-06-17 20:27:04 -07:00
2021-08-07 22:43:01 -07:00
2021-09-02 20:56:13 -07:00
2021-10-06 16:36:31 -07:00
2021-10-04 10:52:28 -07:00
2021-06-01 14:59:40 -07:00
2021-08-20 11:32:01 -07:00
2021-04-23 11:58:53 -07:00
2021-10-07 15:34:01 -07:00
2021-04-23 22:47:39 -07:00
2021-07-12 10:16:10 -07:00
2021-08-13 07:30:03 -07:00
2021-04-23 11:58:53 -07:00
2021-10-07 19:03:46 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-07-10 08:32:52 -07:00
2021-04-23 11:58:53 -07:00
2021-07-09 11:17:21 -07:00
2021-07-09 11:17:21 -07:00
2021-10-11 13:40:13 -07:00
2021-06-24 08:41:04 -07:00
2021-08-20 11:32:01 -07:00
2021-04-23 11:58:53 -07:00
2021-08-07 22:43:01 -07:00
2021-08-27 13:07:55 -07:00
2021-06-01 14:59:40 -07:00
2021-09-30 11:53:01 -07:00
2021-09-30 11:53:01 -07:00
2021-06-01 14:59:40 -07:00
2021-09-30 11:53:01 -07:00
2021-09-30 11:53:01 -07:00
2021-05-28 15:17:01 -07:00
2021-04-23 11:58:53 -07:00
2021-07-05 15:34:41 -07:00
2021-09-08 11:06:45 -07:00
2021-07-05 15:34:41 -07:00
2021-09-08 11:06:45 -07:00
2021-07-05 15:34:41 -07:00
2021-09-02 17:45:30 -07:00
2021-09-08 11:06:45 -07:00
2021-07-05 15:34:41 -07:00
2021-09-23 17:24:24 -07:00
2021-10-06 09:20:25 -07:00
2021-05-20 09:00:11 -07:00
2021-08-23 11:17:27 -07:00
2021-09-17 14:11:01 -07:00
2021-09-08 11:06:45 -07:00
2021-06-30 16:08:20 -07:00
2021-10-02 09:31:05 -07:00
2021-09-22 10:48:45 -07:00
2021-09-02 20:56:13 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-10-01 11:50:00 -07:00
2021-06-20 23:04:47 -07:00
2021-08-09 06:57:54 -07:00
2021-05-06 08:52:02 -07:00
2021-10-06 16:36:31 -07:00
2021-06-01 14:59:40 -07:00
2021-09-08 08:15:42 -07:00
2021-09-18 13:31:35 -07:00
2021-04-23 11:58:53 -07:00
2021-09-21 13:03:20 -07:00
2021-04-23 11:58:53 -07:00
2021-06-01 14:59:40 -07:00
2021-10-06 10:24:40 -07:00
2021-10-08 11:38:30 -07:00
2021-06-01 14:59:40 -07:00
2021-09-18 13:31:35 -07:00
2021-06-01 14:59:40 -07:00
2021-06-01 14:59:40 -07:00
2021-09-18 13:31:35 -07:00
2021-09-09 14:37:07 -07:00
2021-04-23 11:58:53 -07:00
2021-07-20 17:36:55 -07:00
2021-10-12 09:24:19 -07:00
2021-08-18 18:35:22 -07:00
2021-08-18 18:35:22 -07:00
2021-08-18 18:35:22 -07:00
2021-08-18 18:35:22 -07:00
2021-06-01 14:59:40 -07:00
2021-08-30 08:40:16 -07:00
2021-04-23 11:58:53 -07:00
2021-09-29 16:40:28 -07:00
2021-08-18 18:35:22 -07:00
2021-07-09 16:20:51 -07:00
2021-04-23 11:58:53 -07:00
2021-05-15 12:57:18 -07:00
2021-04-23 11:58:53 -07:00
2021-10-06 16:36:31 -07:00
2021-10-06 16:36:31 -07:00
2021-10-06 16:36:31 -07:00
2021-05-29 21:16:42 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-07-13 13:33:03 -07:00
2021-08-23 01:13:47 -07:00
2021-07-10 08:32:52 -07:00
2021-08-07 22:43:01 -07:00
2021-09-28 07:27:03 -07:00
2021-04-23 11:58:53 -07:00
2021-10-08 16:58:24 -07:00
2021-09-08 13:31:51 -07:00
2021-08-05 15:01:19 -07:00
2021-08-05 15:01:19 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-08-31 18:52:48 -07:00
2021-04-23 11:58:53 -07:00
2021-08-12 18:07:08 -07:00
2021-08-07 22:43:01 -07:00
2021-04-23 11:58:53 -07:00
2021-08-12 18:07:08 -07:00
2021-10-12 13:18:02 -07:00
2021-10-12 13:18:02 -07:00
2021-08-12 18:07:08 -07:00
2021-10-06 16:36:31 -07:00
2021-04-23 11:58:53 -07:00
2021-09-18 13:31:35 -07:00
2021-04-23 11:58:53 -07:00
2021-09-18 13:31:35 -07:00
2021-10-04 09:01:52 -07:00
2021-10-01 11:50:00 -07:00
2021-10-01 11:50:00 -07:00
2021-10-01 11:50:00 -07:00
2021-10-01 11:50:00 -07:00
2021-10-01 11:50:00 -07:00
2021-08-03 13:26:57 -07:00
2021-04-23 11:58:53 -07:00
2021-09-09 14:37:07 -07:00
2021-09-07 19:03:48 -07:00
2021-09-07 19:03:48 -07:00
2021-10-09 22:00:23 -07:00
2021-09-07 19:03:48 -07:00
2021-10-05 10:13:04 -07:00
2021-04-23 11:58:53 -07:00
2021-05-06 08:52:02 -07:00
2021-08-09 18:14:38 -07:00
2021-06-03 14:26:51 -07:00
2021-06-03 14:26:51 -07:00
2021-06-03 14:26:51 -07:00
2021-07-06 12:54:16 -07:00
2021-06-30 19:32:07 -07:00
2021-08-17 07:50:00 -07:00
2021-09-23 02:34:31 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-08-26 21:57:30 -07:00
2021-04-23 11:58:53 -07:00
2021-08-18 18:35:22 -07:00
2021-08-18 18:35:22 -07:00
2021-09-01 18:48:26 -07:00
2021-06-01 14:59:40 -07:00
2021-06-01 14:59:40 -07:00
2021-09-23 12:57:21 -07:00
2021-08-07 22:43:01 -07:00
2021-04-23 11:58:53 -07:00
2021-10-14 10:19:17 -07:00
2021-04-23 11:58:53 -07:00
2021-09-21 15:47:30 -07:00
2021-06-03 14:26:51 -07:00
2021-07-05 18:44:04 -07:00
2021-06-03 14:26:51 -07:00
2021-08-18 18:35:22 -07:00
2021-08-18 18:35:22 -07:00
2021-10-11 19:48:42 -07:00
2021-10-01 11:50:00 -07:00
2021-08-18 18:35:22 -07:00
2021-10-01 11:50:00 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-06-30 19:32:07 -07:00
2021-04-23 11:58:53 -07:00
2021-10-01 11:50:00 -07:00
2021-10-01 11:50:00 -07:00
2021-04-23 11:58:53 -07:00
2021-04-23 11:58:53 -07:00
2021-09-18 13:31:35 -07:00
2021-09-22 21:46:24 -07:00
2021-09-18 13:31:35 -07:00
2021-06-30 19:32:07 -07:00
2021-10-13 19:49:14 -07:00