Lines Matching refs:start
78 static bool assert_one_hole(const struct drm_mm *mm, u64 start, u64 end)
85 if (end <= start)
90 if (start != hole_start || end != hole_end) {
94 start, end);
119 if (node->start != addr) {
121 n, addr, node->start);
139 pr_err("lookup return wrong node, expected start %llx, found %llx\n",
140 node->start, check->start);
165 div64_u64_rem(node->start, alignment, &rem);
186 pr_err("node is misaligned, start %llx rem %llu, expected alignment %llu\n",
187 node->start, misalignment(node, alignment), alignment);
237 tmp.start = 0;
278 nodes[0].start = 512;
282 pr_err("failed to reserve node[0] {start=%lld, size=%lld)\n",
283 nodes[0].start, nodes[0].size);
288 nodes[1].start = 4096 - 512 - nodes[1].size;
291 pr_err("failed to reserve node[1] {start=%lld, size=%lld)\n",
292 nodes[1].start, nodes[1].size);
301 u64 start, u64 size)
303 node->start = start;
318 node->start, node->size);
322 err, -ENOSPC, node->start, node->size);
332 u64 start, size;
361 boundaries[n].start,
405 nodes[n].start = order[n] * size;
410 pr_err("reserve failed, step %d, start %llu\n",
411 n, nodes[n].start);
417 pr_err("reserved node not allocated! step %d, start %llu\n",
418 n, nodes[n].start);
441 pr_err("reserve failed, step %d, start %llu\n",
442 n, nodes[n].start);
475 pr_err("reserve failed, step %d/%d, start %llu\n",
476 m, n, node->start);
560 tmp.start, tmp.size);
621 if (tmp.start != nodes[n].start) {
623 tmp.start, size,
624 nodes[n].start, nodes[n].size);
640 u64 addr = nodes[n].start;
649 if (nodes[n].start != addr) {
651 mode->name, n, addr, nodes[n].start);
806 tmp.start, tmp.size, range_start, range_end);
818 u64 start,
824 if (!expect_insert_in_range_fail(mm, size, start, end))
827 n = div64_u64(start + size - 1, size);
829 if (node->start < start || node->start + node->size > end) {
831 n, node->start, node->start + node->size, start, end);
835 if (node->start != n * size) {
836 pr_err("node %d out of order, expected start %llx, found %llx\n",
837 n, n * size, node->start);
856 if (start > 0) {
857 node = __drm_mm_interval_first(mm, 0, start - 1);
859 pr_err("node before start: node=%llx+%llu, start=%llx\n",
860 node->start, node->size, start);
869 node->start, node->size, end);
877 static int __igt_insert_range(unsigned int count, u64 size, u64 start, u64 end)
887 DRM_MM_BUG_ON(end <= start);
901 start_n = div64_u64(start + size - 1, size);
908 start, end, mode)) {
912 start, end);
917 if (!assert_contiguous_in_range(&mm, size, start, end)) {
919 mode->name, start, end, size);
925 u64 addr = nodes[n].start;
930 start, end, mode)) {
935 if (nodes[n].start != addr) {
937 mode->name, n, addr, nodes[n].start);
942 if (!assert_contiguous_in_range(&mm, size, start, end)) {
944 mode->name, start, end, size);
968 const unsigned int start = 1024;
970 const unsigned int size = end - start;
972 drm_mm_init(&mm, start, size);
974 if (!expect_insert_in_range_fail(&mm, 1, 0, start))
978 start - size/2, start + (size+1)/2))
1069 ktime_t start;
1072 start = ktime_get();
1080 return ktime_to_ns(ktime_sub(ktime_get(), start));
1279 hole->start, hole->size, hole->color);
1284 next->start, next->size, next->color);
1421 e->node.start);
1438 pr_err("Failed to reinsert node after eviction: start=%llx\n",
1439 e->node.start);
1482 if (tmp.start < range_start || tmp.start + tmp.size > range_end) {
1484 tmp.start, tmp.size, range_start, range_end);
1490 pr_err("Inserted did not fill the eviction hole: size=%lld [%d], align=%d [rem=%lld], start=%llx, hole-follows?=%d\n",
1493 tmp.start, drm_mm_hole_follows(&tmp));
1504 pr_err("Failed to reinsert node after eviction: start=%llx\n",
1505 e->node.start);
1727 return div64_u64(node->start, node->size);
1772 pr_err("hole after topdown insert %d, start=%llx\n, size=%u",
1773 n, nodes[n].start, size);
1804 pr_err("hole after topdown insert %d/%d, start=%llx\n",
1805 m, n, node->start);
1953 rsvd_lo.start = 1;
1962 rsvd_hi.start = 5;
2006 u64 *start,
2010 ++*start;
2022 node->color, node->start, node->size,
2024 list_next_entry(node, node_list)->start,
2078 /* Now, let's start experimenting with applying a color callback */
2099 last = node->start + node->size;
2110 node->start = last;
2121 node->start += n + 1;
2123 node->start += n + count - rem;
2132 last = node->start + node->size;
2165 div64_u64_rem(node->start, node->size, &rem);
2167 pr_err("%s colored node misaligned, start=%llx expected alignment=%lld [rem=%lld]\n",
2168 mode->name, node->start, node->size, rem);
2225 if (tmp.start < range_start || tmp.start + tmp.size > range_end) {
2227 tmp.start, tmp.size, range_start, range_end);
2235 pr_err("Inserted did not fit the eviction hole: size=%lld [%d], align=%d [rem=%lld], start=%llx\n",
2237 alignment, misalignment(&tmp, alignment), tmp.start);
2248 pr_err("Failed to reinsert node after eviction: start=%llx\n",
2249 e->node.start);