dma_buf_put(ref->handle->dmabuf);
rb_erase(&ref->node, &client->handle_refs);
+ atomic_dec(&ref->handle->share_count);
dupes = atomic_read(&ref->dupes);
while (dupes--)
phys_addr_t base = iovmm ? 0 :
(handle->carveout->base);
seq_printf(s,
- "%-18s %-18s %8llx %10zuK %8x %6u %6u %6u %6u %6u %8p\n",
+ "%-18s %-18s %8llx %10zuK %8x %6u %6u %6u %6u %6u %6u %8p\n",
"", "",
(unsigned long long)base, K(handle->size),
handle->userflags,
atomic_read(&ref->pin),
atomic_read(&handle->kmap_count),
atomic_read(&handle->umap_count),
+ atomic_read(&handle->share_count),
handle);
}
}
spin_lock(&node->clients_lock);
seq_printf(s, "%-18s %18s %8s %11s\n",
"CLIENT", "PROCESS", "PID", "SIZE");
- seq_printf(s, "%-18s %18s %8s %11s %8s %6s %6s %6s %6s %6s %8s\n",
+ seq_printf(s, "%-18s %18s %8s %11s %8s %6s %6s %6s %6s %6s %6s %8s\n",
"", "", "BASE", "SIZE", "FLAGS", "REFS",
- "DUPES", "PINS", "KMAPS", "UMAPS", "UID");
+ "DUPES", "PINS", "KMAPS", "UMAPS", "SHARE", "UID");
list_for_each_entry(commit, &node->clients, list) {
struct nvmap_client *client =
get_client_from_carveout_commit(node, commit);
spin_lock(&dev->clients_lock);
seq_printf(s, "%-18s %18s %8s %11s\n",
"CLIENT", "PROCESS", "PID", "SIZE");
- seq_printf(s, "%-18s %18s %8s %11s %8s %6s %6s %6s %6s %6s %8s\n",
+ seq_printf(s, "%-18s %18s %8s %11s %8s %6s %6s %6s %6s %6s %6s %8s\n",
"", "", "BASE", "SIZE", "FLAGS", "REFS",
- "DUPES", "PINS", "KMAPS", "UMAPS", "UID");
+ "DUPES", "PINS", "KMAPS", "UMAPS", "SHARE", "UID");
list_for_each_entry(client, &dev->clients, list) {
int iovm_commit = atomic_read(&client->iovm_commit);
client_stringify(client, s);