FreeBSD Bugzilla – Attachment 208104 Details for
Bug 241048
After r349840, OOM reported when swap space is available.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
proposed patch for head
reclaim_head.diff (text/plain), 1.85 KB, created by
Mark Johnston
on 2019-10-04 20:16:21 UTC
(
hide
)
Description:
proposed patch for head
Filename:
MIME Type:
Creator:
Mark Johnston
Created:
2019-10-04 20:16:21 UTC
Size:
1.85 KB
patch
obsolete
>diff --git a/sys/dev/nvdimm/nvdimm_e820.c b/sys/dev/nvdimm/nvdimm_e820.c >index f216143893e7..420c597b89bf 100644 >--- a/sys/dev/nvdimm/nvdimm_e820.c >+++ b/sys/dev/nvdimm/nvdimm_e820.c >@@ -121,7 +121,7 @@ nvdimm_e820_create_spas(device_t dev) > > sc = device_get_softc(dev); > error = 0; >- nfit_sa = (ACPI_NFIT_SYSTEM_ADDRESS) { 0 }; >+ nfit_sa = (ACPI_NFIT_SYSTEM_ADDRESS) { {0} }; > > if (bootverbose) > nvdimm_e820_dump_prams(dev, __func__, -1); >diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c >index 92b438e4ee1d..460bc3bd7a8a 100644 >--- a/sys/vm/uma_core.c >+++ b/sys/vm/uma_core.c >@@ -585,6 +585,9 @@ zone_timeout(uma_zone_t zone) > uma_keg_t keg = zone->uz_keg; > u_int slabs; > >+ if ((zone->uz_flags & UMA_ZFLAG_CACHE) != 0) >+ return; >+ > KEG_LOCK(keg); > /* > * Expand the keg hash table. >@@ -1081,7 +1084,8 @@ zone_reclaim(uma_zone_t zone, int waitok, bool drain) > * we're running. Normally the uma_rwlock would protect us but we > * must be able to release and acquire the right lock for each keg. > */ >- keg_drain(zone->uz_keg); >+ if ((zone->uz_flags & UMA_ZFLAG_CACHE) == 0) >+ keg_drain(zone->uz_keg); > ZONE_LOCK(zone); > zone->uz_flags &= ~UMA_ZFLAG_RECLAIMING; > wakeup(zone); >@@ -2027,6 +2031,8 @@ zone_foreach(void (*zfunc)(uma_zone_t)) > LIST_FOREACH(zone, &keg->uk_zones, uz_link) > zfunc(zone); > } >+ LIST_FOREACH(zone, &uma_cachezones, uz_link) >+ zfunc(zone); > if (__predict_true(booted == BOOT_RUNNING)) > rw_runlock(&uma_rwlock); > } >@@ -3969,7 +3975,8 @@ uma_print_zone(uma_zone_t zone) > printf("zone: %s(%p) size %d maxitems %ju flags %#x\n", > zone->uz_name, zone, zone->uz_size, (uintmax_t)zone->uz_max_items, > zone->uz_flags); >- if (zone->uz_lockptr != &zone->uz_lock) >+ if (zone->uz_lockptr != &zone->uz_lock && >+ (zone->uz_flags & UMA_ZFLAG_CACHE) == 0) > uma_print_keg(zone->uz_keg); > CPU_FOREACH(i) { > cache = &zone->uz_cpu[i];
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 241048
:
208104
|
208105
|
208118
|
208237
|
208276
|
208284