Rev 5060 | Rev 6084 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5060 | Rev 5271 | ||
---|---|---|---|
Line 31... | Line 31... | ||
31 | #include |
31 | #include |
32 | #include |
32 | #include |
33 | #include |
33 | #include |
34 | #include |
34 | #include |
Line 35... | Line -... | ||
35 | - | ||
36 | struct va_format { |
- | |
37 | const char *fmt; |
- | |
38 | va_list *va; |
- | |
39 | }; |
- | |
40 | 35 | ||
41 | unsigned int drm_debug = 0; /* 1 to enable debug output */ |
36 | unsigned int drm_debug = 0; /* 1 to enable debug output */ |
Line 42... | Line 37... | ||
42 | EXPORT_SYMBOL(drm_debug); |
37 | EXPORT_SYMBOL(drm_debug); |
43 | 38 | ||
Line 59... | Line 54... | ||
59 | * complete events. |
54 | * complete events. |
60 | */ |
55 | */ |
61 | unsigned int drm_timestamp_monotonic = 1; |
56 | unsigned int drm_timestamp_monotonic = 1; |
Line 62... | Line 57... | ||
62 | 57 | ||
- | 58 | struct idr drm_minors_idr; |
|
63 | struct idr drm_minors_idr; |
59 | |
64 | int drm_err(const char *func, const char *format, ...) |
60 | void drm_err(const char *format, ...) |
65 | { |
61 | { |
66 | struct va_format vaf; |
62 | struct va_format vaf; |
67 | va_list args; |
- | |
Line 68... | Line 63... | ||
68 | int r; |
63 | va_list args; |
Line 69... | Line 64... | ||
69 | 64 | ||
70 | va_start(args, format); |
65 | va_start(args, format); |
Line 71... | Line 66... | ||
71 | 66 | ||
- | 67 | vaf.fmt = format; |
|
Line 72... | Line 68... | ||
72 | vaf.fmt = format; |
68 | vaf.va = &args; |
73 | vaf.va = &args; |
- | |
74 | - | ||
75 | r = printk(KERN_ERR "[" DRM_NAME ":%s] *ERROR* %pV", func, &vaf); |
69 | |
76 | 70 | printk(KERN_ERR "[" DRM_NAME ":%pf] *ERROR* %pV", |
|
Line 77... | Line 71... | ||
77 | va_end(args); |
71 | __builtin_return_address(0), &vaf); |
78 | 72 | ||
Line 559... | Line 553... | ||
559 | return order; |
553 | return order; |
560 | } |
554 | } |
Line 561... | Line 555... | ||
561 | 555 | ||
Line 562... | Line -... | ||
562 | extern int x86_clflush_size; |
- | |
563 | - | ||
564 | static inline void clflush(volatile void *__p) |
- | |
565 | { |
- | |
Line 566... | Line 556... | ||
566 | asm volatile("clflush %0" : "+m" (*(volatile char*)__p)); |
556 | extern int x86_clflush_size; |
567 | } |
557 | |
568 | 558 | ||
569 | void drm_clflush_virt_range(void *addr, unsigned long length) |
559 | void drm_clflush_virt_range(void *addr, unsigned long length) |