minio/internal/config
Harshavardhana 91d8bddbd1
use sendfile/splice implementation to perform DMA (#18411)
sendfile implementation to perform DMA on all platforms

Go stdlib already supports sendfile/splice implementations
for

- Linux
- Windows
- *BSD
- Solaris

Along with this change however O_DIRECT for reads() must be
removed as well since we need to use sendfile() implementation

The main reason to add O_DIRECT for reads was to reduce the
chances of page-cache causing OOMs for MinIO, however it would
seem that avoiding buffer copies from user-space to kernel space
this issue is not a problem anymore.

There is no Go based memory allocation required, and neither
the page-cache is referenced back to MinIO. This page-
cache reference is fully owned by kernel at this point, this
essentially should solve the problem of page-cache build up.

With this now we also support SG - when NIC supports Scatter/Gather
https://en.wikipedia.org/wiki/Gather/scatter_(vector_addressing)
2023-11-10 10:10:14 -08:00
..
api use sendfile/splice implementation to perform DMA (#18411) 2023-11-10 10:10:14 -08:00
callhome Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
compress Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
dns cleanup ignored static analysis (#16767) 2023-03-06 08:56:10 -08:00
etcd Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
heal heal: calculate the number of workers based on NRRequests (#17945) 2023-09-11 14:48:54 -07:00
identity fix: expiration time for share link when using OpenID (#18297) 2023-10-30 10:21:34 -07:00
lambda replace io.Discard usage to fix some NUMA copy() latencies (#18394) 2023-11-06 14:26:08 -08:00
notify Send kafka notification messages in batches when queue_dir is enabled (#18164) 2023-10-07 08:07:38 -07:00
policy Fix policy package import name (#18031) 2023-09-14 14:50:16 -07:00
scanner apply healing per object at 1024 cycles (#18050) 2023-09-19 09:24:22 -07:00
storageclass Fix BackendInfo() race (#18305) 2023-10-24 08:15:41 -07:00
subnet Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
bool-flag_test.go rename all remaining packages to internal/ (#12418) 2021-06-01 14:59:40 -07:00
bool-flag.go heal: Enable periodic bitrot scan configuration (#14464) 2022-04-07 08:10:40 -07:00
certs_test.go Remove deprecated io/ioutil (#15707) 2022-09-19 11:05:16 -07:00
certs.go Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
certsinfo.go add gocritic/ruleguard checks back again, cleanup code. (#13665) 2021-11-16 09:28:29 -08:00
config_test.go fix: cleanup config KV parsing using madmin helpers (#15552) 2022-08-18 15:55:17 -07:00
config.go fix: parse the subsys env error (#18319) 2023-10-26 08:12:57 -07:00
constants.go fix: expiration time for share link when using OpenID (#18297) 2023-10-30 10:21:34 -07:00
crypto_test.go Remove deprecated io/ioutil (#15707) 2022-09-19 11:05:16 -07:00
crypto.go cleanup ignored static analysis (#16767) 2023-03-06 08:56:10 -08:00
errors-utils.go cleanup ignored static analysis (#16767) 2023-03-06 08:56:10 -08:00
errors.go completely remove drive caching layer from gateway days (#18217) 2023-10-11 21:18:17 -07:00
help.go Redact all secrets from config viewing APIs (#17380) 2023-06-23 07:45:27 -07:00
legacy.go Do not save credentials in config.json (#16275) 2022-12-19 12:27:06 -08:00