I would like to add some internal tracing (dump to a buffer) while writing storport miniport. I’ve noticed that I am unable to use RtlStringCchVPrintfW in my variadic function due to restriction of PASSIVE_LEVEL irql.
What would you suggest to use to be able to use my own variadic function?
Is there any other printf-like function I can you in kernel?
va_list args;
va_start(args, fmt);
…
va_end(args);
And as Max knows, this is only relevant to x86 ? on x64 the calling conventions have been standardized and vararg functions are supported without any special support
The better question is why you think you need a vararg function in KM besides a trace ? and if a trace then why not use a pre-built trace facility
From: Maxim S. Shatskihmailto:xxxxx Sent: March 28, 2016 4:40 AM To: Windows System Software Devs Interest Listmailto:xxxxx Subject: Re:[ntdev] Using variadic function in miniport?
> What would you suggest to use to be able to use my own variadic function?