summaryrefslogtreecommitdiffstats
path: root/tapset/cache_detail.stp
blob: 2a34c4689b0608d24b2901aba72d7096d7f02018 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function cache_head_dump:string(_detail:long, _h:long)
%{
	struct cache_detail *detail = (struct cache_detail *)(long) kread(&(THIS->_detail));
	struct cache_head *h = (struct cache_head *)(long) kread(&(THIS->_h));
	char buf[MAXSTRINGLEN];
	int cc=0;

	sprintf(buf+cc, "h %p valid %d neg %d pending %d flushing %d ", 
		h, test_bit(0, &h->flags),  test_bit(1, &h->flags),  
			test_bit(2, &h->flags), (detail->flush_time > h->last_refresh));
	cc = strlen(buf);

	snprintf(THIS->__retvalue, MAXSTRINGLEN, "%s", buf); 

	CATCH_DEREF_FAULT();
%}