|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] blktap2: use abort() instead of custom crash
On 26/04/16 14:04, Doug Goldstein wrote:
> Instead of trying to write a snippet of code that crashes the process
> just use abort() directly. This is to fix the build on clang which
> detects that the snippet of code will crash and fails to compile. At
> the same time removed extraneous whitespace in the macro.
>
> Signed-off-by: Doug Goldstein <cardoe@xxxxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
I definitely remember encountering this issue when trying to do clang
builds in the past. I wonder where the patch went...
> ---
> Honestly this whole macro could get replaced with assert(3) but I wanted
> to make the smallest change possible. If that's preferrable I'll do that.
> The man page claims that assert(3) will print the following to stderr:
>
> "assertion \"%s\" failed: file \"%s\", line %d\n", \
> "expression", __FILE__, __LINE__);
> ---
> tools/blktap2/drivers/tapdisk-vbd.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tools/blktap2/drivers/tapdisk-vbd.c
> b/tools/blktap2/drivers/tapdisk-vbd.c
> index 31bc2fe..e2e9cd5 100644
> --- a/tools/blktap2/drivers/tapdisk-vbd.c
> +++ b/tools/blktap2/drivers/tapdisk-vbd.c
> @@ -49,18 +49,18 @@
> #define DBG(_level, _f, _a...) tlog_write(_level, _f, ##_a)
> #define ERR(_err, _f, _a...) tlog_error(_err, _f, ##_a)
>
> -#if 1
> +#if 1
> #define ASSERT(p) \
> do { \
> if (!(p)) { \
> DPRINTF("Assertion '%s' failed, line %d, " \
> "file %s", #p, __LINE__, __FILE__); \
> - *(int*)0 = 0; \
> + abort(); \
> } \
> } while (0)
> #else
> #define ASSERT(p) ((void)0)
> -#endif
> +#endif
>
>
> #define TD_VBD_EIO_RETRIES 10
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |