Hi All,
During mm performance testing sometimes we observed below kernel messages
shrink_slab: ashmem_shrink+0x0/0x114 negative objects to delete nr=-2133936901
shrink_slab: ashmem_shrink+0x0/0x114 negative objects to delete nr=-2139256767
shrink_slab: ashmem_shrink+0x0/0x114 negative objects to delete nr=-2079333971
shrink_slab: ashmem_shrink+0x0/0x114 negative objects to delete nr=-2096156269
shrink_slab: ashmem_shrink+0x0/0x114 negative objects to delete nr=-20658392
After debugging is we fount below patch mm/vmscan
Since patch fix critical issue and same is not integrated with long term stable kernel (3.0.36)
and we are using below patch with long term stable kernel (3.0.36) is there any side effects ?
@@ -248,10 +248,12 @@ unsigned long shrink_slab(struct shrink_control *shrink,
list_for_each_entry(shrinker, &shrinker_list, list) {
unsigned long long delta;
- unsigned long total_scan;
- unsigned long max_pass;
+ long total_scan;
+ long max_pass;
max_pass = do_shrinker_shrink(shrinker, shrink, 0);
+ if (max_pass <= 0)
+ continue;
delta = (4 * nr_pages_scanned) / shrinker->seeks;
delta *= max_pass;
do_div(delta, lru_pages + 1);
--
list_for_each_entry(shrinker, &shrinker_list, list) {
unsigned long long delta;
- unsigned long total_scan;
- unsigned long max_pass;
+ long total_scan;
+ long max_pass;
max_pass = do_shrinker_shrink(shrinker, shrink, 0);
+ if (max_pass <= 0)
+ continue;
delta = (4 * nr_pages_scanned) / shrinker->seeks;
delta *= max_pass;
do_div(delta, lru_pages + 1);
--
Please review and share ur comments.
Thanks,
Akhilesh